/* Application layer: v04 visual language, editable CMS content and real forms. */
[hidden]{display:none!important}.page-intro{padding-top:36px;padding-bottom:54px}.page-intro h1{font-size:clamp(38px,5.4vw,76px);line-height:1.08;max-width:1100px;letter-spacing:-.045em;margin:20px 0 26px}.page-intro .lead{max-width:920px}.reading-width{max-width:1020px}.rich-text{font-size:18px;line-height:1.75;max-width:850px}.rich-text p{margin:0 0 22px}.rich-text h2,.rich-text h3{margin:38px 0 18px}.rich-text a{text-decoration:underline;text-underline-offset:4px}.rich-text ul,.rich-text ol{padding-left:24px;margin:18px 0 30px}.rich-text li{margin:10px 0}.meta{font-size:14px;color:var(--muted);margin:22px 0;line-height:1.6}.cms-button-row{margin-top:28px}.cms-wide-photo{margin-top:42px!important}.cms-points{padding-left:20px;line-height:1.8;margin:25px 0}.cms-points li{padding:7px 0}.hero-copy h1{white-space:normal}.hero-media{position:relative}.hero-media>img{width:100%;height:100%;object-fit:cover}.direction-strip .text-link,.direction-strip>a{padding-block:32px;font-weight:650;font-size:19px;display:flex;justify-content:space-between;align-items:center;gap:16px}.cms-scenario-panels{min-width:0}.task-layout>.cms-scenario-panels .task-panel{height:100%}.task-picture img{height:100%;min-height:320px;object-fit:cover}.content-children{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}.content-child{border-top:1px solid var(--line);padding:24px 0}.content-child h3{font-size:24px;display:flex;justify-content:space-between}.content-child p{margin-top:16px;line-height:1.6;color:var(--muted)}.source-note{margin-bottom:50px}.faq-list{margin-top:36px}.faq-list details{border-top:1px solid var(--line);padding:22px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;display:flex;justify-content:space-between;font-size:21px;line-height:1.4;gap:24px;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{line-height:1.75;color:var(--muted);padding:22px 45px 0 0}.faq-list details[open] summary span{transform:rotate(45deg)}.library-filter{display:grid;grid-template-columns:2fr 1.3fr 1.3fr auto;gap:16px;align-items:end;margin-bottom:30px}.library-filter label{display:block;font-size:13px;margin-bottom:9px}.library-filter input,.library-filter select{width:100%;height:54px;padding:12px;border:1px solid #a5aeb2;background:transparent;border-radius:0;font:inherit;color:var(--ink)}.library-cards article h2{font-size:28px}.library-cards article{min-width:0}.library-source{border-top:1px solid var(--line);padding:32px 0;margin-top:40px}.library-source h2{font-size:25px;margin-bottom:18px}.source-url{font-size:13px;overflow-wrap:anywhere;color:var(--muted);margin-top:15px}.document-meta{display:grid;grid-template-columns:1fr 2fr;gap:16px;padding:24px 0;border-top:1px solid var(--line)}.document-meta dt{color:var(--muted)}.library-status h2{font-size:24px}.empty-state{padding:35px;border:1px solid var(--line)}.empty-state p{margin:20px 0}.coordination-links h3{font-size:23px;line-height:1.25;display:flex;gap:15px;justify-content:space-between;margin:15px 0}.coordination-links h3 svg{flex-shrink:0}.form-shell{max-width:850px}.form-shell label{display:block;margin:24px 0 10px}.form-shell input,.form-shell textarea,.form-shell select{width:100%;font:inherit;background:transparent;border:1px solid #9ba6ac;padding:16px}.form-shell textarea{min-height:150px;resize:vertical}.form-shell input[type=checkbox]{width:auto;margin-right:10px}.form-shell .errorlist{color:#b1271d;margin:12px 0;list-style:none;padding:0}.form-shell .helptext{font-size:14px;color:var(--muted)}.form-shell button{margin-top:26px}.messages{padding:18px 24px;border-left:3px solid var(--accent);background:#fff;line-height:1.6;margin:22px 0}.data-table{width:100%;border-collapse:collapse;font-size:15px}.data-table th,.data-table td{text-align:left;padding:18px 14px;border-bottom:1px solid var(--line)}:focus-visible{outline:3px solid #d83227;outline-offset:5px}.service-card>div>p{overflow-wrap:anywhere}
@media(max-width:1050px){.library-filter{grid-template-columns:1fr 1fr}.content-children{grid-template-columns:repeat(2,minmax(0,1fr))}.direction-strip>a{font-size:17px}}@media(max-width:780px){.library-filter{grid-template-columns:1fr}.content-children{grid-template-columns:1fr}.task-panel{grid-template-columns:1fr}.task-picture img{max-height:360px;width:100%}.page-intro{padding-top:28px;padding-bottom:36px}.rich-text{font-size:17px}.document-meta{grid-template-columns:1fr}.direction-strip>a{padding-block:20px}.coordination-links h3{font-size:23px}.data-table{display:block;overflow-x:auto}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.staff-manage{position:fixed;bottom:18px;left:18px;z-index:100;background:#122632;color:white;padding:12px 18px;font-size:13px;border-radius:2px}.contact-cms>div:first-child{margin-bottom:44px}.contact-main-phone{display:block;font-size:clamp(30px,4.7vw,64px);letter-spacing:-.04em;margin:20px 0}.contact-cms>div:first-child>p{margin:16px 0;color:var(--muted);font-size:20px}
.app-form{max-width:720px;margin:32px 0}.app-form label{display:block;font-weight:600;margin:20px 0 8px}.app-form input:not([type=hidden]):not([type=checkbox]),.app-form textarea{display:block;width:100%;padding:14px;font:inherit;color:#142c39;background:white;border:1px solid #a9b4b9;box-sizing:border-box}.app-form input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin-right:8px}.app-form .helptext,.app-form ul{font-size:14px;color:#596c77}.app-form .errorlist{padding:12px 22px;background:#fff0ed;color:#a3221a;border-left:3px solid #bd2f25}.app-form button{margin-top:16px}.app-form input:focus-visible,.app-form textarea:focus-visible{outline:3px solid #de9d3a;outline-offset:3px}
.owner-setup-banner{background:#fff1d9;border-bottom:1px solid #e1c99e;padding:20px 0}.owner-setup-banner>.wrap{display:flex;gap:24px;align-items:center;justify-content:space-between}.owner-setup-banner p{margin:0;font-size:16px;line-height:1.6}.owner-setup-banner .btn{flex-shrink:0}.owner-setup-banner a:focus-visible{outline-color:#142c39}@media(max-width:780px){.owner-setup-banner>.wrap{align-items:flex-start;flex-direction:column;gap:14px}}
