:root{--navy:#082848;--navy-soft:#123b57;--teal:#70b0a8;--teal-dark:#0f6f68;--teal-light:#e6f4f3;--ink:var(--navy);--ink-soft:#244c65;--muted:#607783;--line:#cfe2e2;--paper:#f4fbfb;--paper-strong:#fff;--bronze:var(--teal);--bronze-dark:var(--teal-dark);--grey:#e7f3f3;--focus:var(--teal);--max:1180px;--radius:8px;--shadow:0 18px 60px #08284824}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.18em;text-decoration-color:#70b0a885}a:hover{text-decoration-color:currentColor}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{background:var(--bronze);color:#fff}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--ink);color:#fff;border-radius:6px;padding:.75rem 1rem;position:absolute;top:1rem;left:1rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.container{width:min(calc(100% - 32px), var(--max));margin-inline:auto}.site-header{z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4fbfbf0;border-bottom:1px solid #cfe2e2f2;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;width:min(100% - 24px,1280px);min-height:76px;margin-inline:auto;display:flex}.brand{align-items:center;gap:.75rem;min-width:max-content;text-decoration:none;display:inline-flex}.brand-logo-mark{object-fit:contain;flex:none;width:42px;height:46px}.brand strong{letter-spacing:.02em;font-size:1rem;display:block}.brand small{color:var(--muted);font-size:.76rem;display:block}.desktop-nav{align-items:center;gap:.25rem;display:none}.desktop-nav a,.nav-trigger{min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;padding:.55rem .75rem;font-size:.92rem;text-decoration:none;display:inline-flex}.desktop-nav a[aria-current=page],.desktop-nav a:hover,.nav-trigger:hover{color:var(--bronze-dark)}.nav-group{position:relative}.nav-panel{border:1px solid var(--line);background:var(--paper-strong);width:min(340px,90vw);box-shadow:var(--shadow);opacity:0;pointer-events:none;border-radius:8px;gap:.35rem;padding:.65rem;transition:opacity .16s,transform .16s;display:grid;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(6px)}.nav-group:hover .nav-panel,.nav-group:focus-within .nav-panel{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-panel a{border-radius:6px;justify-content:flex-start}.nav-panel a:hover{background:var(--grey)}.header-actions{align-items:center;gap:.6rem;display:flex}.button{border:1px solid var(--ink);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:.35rem;min-height:46px;padding:.78rem 1rem;font-weight:750;text-decoration:none;display:inline-flex}.button-small{min-height:42px;padding:.6rem .85rem;font-size:.9rem}.button-accent{border-color:var(--bronze-dark);background:var(--bronze-dark);color:#fff}.button-accent:hover{background:var(--ink);border-color:var(--ink)}.button-outline{color:var(--ink);background:0 0}.button-outline:hover{background:var(--ink);color:#fff}.button-invert{color:#fff;background:#ffffff14;border-color:#ffffffc7}.button-invert:hover{color:var(--ink);background:#fff}.menu-toggle{border:1px solid var(--ink);background:0 0;border-radius:6px;place-items:center;gap:4px;width:46px;height:46px;display:grid}.menu-toggle span:not(.sr-only){background:var(--ink);width:20px;height:2px}.mobile-nav{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;width:min(100% - 24px,1280px);margin:0 auto 1rem;padding:1rem;display:none}.mobile-nav.is-open{gap:.5rem;display:grid}.mobile-nav a{align-items:center;min-height:44px;text-decoration:none;display:flex}.mobile-nav-section{gap:.1rem;padding-block:.25rem;display:grid}.mobile-nav-section p{color:var(--muted);text-transform:uppercase;margin:.5rem 0 0;font-size:.78rem;font-weight:800}.mobile-cta-row{gap:.7rem;margin-top:.5rem;display:grid}.home-hero{background:var(--ink);align-items:end;min-height:min(760px,100svh - 76px);display:grid;position:relative;overflow:hidden}.home-hero-image,.home-hero-overlay{width:100%;height:100%;position:absolute;inset:0}.home-hero-image{object-fit:cover}.home-hero-overlay{background:linear-gradient(90deg,#082848e6,#08284894 46%,#0828482e),linear-gradient(#08284814 58%,#082848b8)}.home-hero-content{width:min(calc(100% - 32px), var(--max));color:#fff;margin:0 auto;padding:clamp(4rem,8vw,7rem) 0;position:relative}.home-hero h1,.page-hero h1{letter-spacing:0;max-width:920px;margin:0;font-size:clamp(2.35rem,7vw,5.35rem);line-height:.98}.home-hero p{max-width:680px;font-size:clamp(1.05rem,2vw,1.28rem)}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.5rem;display:flex}.hero-note{color:#ffffffe0;margin-top:1.25rem;font-weight:750}.eyebrow{color:var(--bronze-dark);text-transform:uppercase;margin:0 0 .8rem;font-size:.78rem;font-weight:850}.home-hero .eyebrow{color:#b9e4df}.trust-strip{border-block:1px solid var(--line);background:var(--paper-strong);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.trust-strip span{border-right:1px solid var(--line);min-height:74px;color:var(--ink-soft);text-align:center;justify-content:center;align-items:center;padding:1rem;font-weight:800;display:flex}.section{padding-block:clamp(3.5rem,7vw,6rem)}.section+.section{border-top:1px solid var(--line)}.section-heading{max-width:760px;margin-bottom:2rem}.section-heading h2,.content-block h2,.cta-section h2,.split-section h2,.empty-state h2,.reference-note h2{letter-spacing:0;margin:0 0 .8rem;font-size:clamp(1.75rem,4vw,3.2rem);line-height:1.03}.section-heading p,.split-section p,.content-block p,.cta-section p,.empty-state p{color:var(--ink-soft);font-size:1.04rem}.lifecycle{border:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.lifecycle li{border-right:1px solid var(--line);background:var(--paper-strong);align-content:space-between;min-height:140px;padding:1.1rem;display:grid}.lifecycle li:last-child{border-right:0}.lifecycle span,.process-grid span{color:var(--bronze-dark);font-size:.78rem;font-weight:900}.lifecycle strong{font-size:1.25rem}.pathway-grid,.article-grid,.link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.pathway-card,.article-card,.project-card,.empty-state{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;padding:clamp(1.1rem,3vw,1.5rem)}.pathway-card h3,.service-feature h3,.article-card h2,.article-card h3{margin:0 0 .75rem;font-size:1.35rem;line-height:1.12}.pathway-card p,.article-card p{color:var(--muted)}.pathway-card a,.service-feature a,.text-link{color:var(--bronze-dark);font-weight:800}.split-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(1.5rem,4vw,4rem);display:grid}.architectural-panel{border:1px solid var(--line);background:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px), var(--paper-strong);background-size:42px 42px;border-radius:8px;min-height:320px;padding:2rem;position:relative;overflow:hidden}.architectural-panel span{border:1px solid #70b0a8b3;position:absolute}.architectural-panel span:first-child{inset:2rem 18% 36% 12%}.architectural-panel span:nth-child(2){inset:44% 12% 2rem 34%}.architectural-panel span:nth-child(3){width:120px;height:120px;top:18%;right:18%}.architectural-panel p{border:1px solid var(--line);max-width:440px;color:var(--ink);background:#ffffffeb;border-radius:6px;margin:0;padding:1rem;font-weight:800;position:absolute;bottom:2rem;left:2rem;right:2rem}.no-small-job{background:linear-gradient(135deg, #70b0a829, transparent 42%), var(--ink);color:#fff;border:1px solid #70b0a894;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:2rem;margin-block:clamp(2rem,5vw,4rem);padding:clamp(2rem,5vw,4rem);display:grid}.no-small-job .eyebrow{color:#b9e4df}.no-small-job h2{margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1}.no-small-job p{color:#ffffffd1}.service-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.service-feature{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;grid-template-columns:minmax(160px,.82fr) minmax(0,1fr);align-items:stretch;gap:1.2rem;display:grid;overflow:hidden}.service-feature img{object-fit:cover;width:100%;height:100%;min-height:260px}.service-feature div{padding:1.25rem 1.25rem 1.25rem 0}.portfolio-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.portfolio-visual-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;overflow:hidden}.portfolio-visual-card img{aspect-ratio:16/10;object-fit:cover;width:100%}.portfolio-visual-card div{padding:1.15rem}.portfolio-visual-card h3{margin:0 0 .55rem;font-size:1.25rem;line-height:1.15}.portfolio-visual-card p:last-child{color:var(--muted)}.check-list{gap:.6rem;padding:0;list-style:none;display:grid}.check-list li{padding-left:1.4rem;position:relative}.check-list li:before{content:"";border:1px solid var(--bronze);width:.55rem;height:.55rem;position:absolute;top:.68em;left:0;transform:rotate(45deg)}.process-grid{border:1px solid var(--line);background:var(--paper-strong);grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.process-grid li{border-right:1px solid var(--line);align-content:space-between;gap:1rem;min-height:160px;padding:1rem;display:grid}.process-grid li:last-child{border-right:0}.process-grid p{margin:0;font-weight:750}.cta-section{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;margin-block:clamp(3rem,6vw,5rem);padding:clamp(1.5rem,4vw,2.5rem);display:grid}.cta-actions{flex-wrap:wrap;justify-content:flex-end;gap:.8rem;display:flex}.page-hero{padding-block:clamp(3rem,7vw,6rem)}.page-hero-with-image{grid-template-columns:minmax(0,.92fr) minmax(320px,.78fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);display:grid}.page-hero .lede{max-width:780px;color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.3rem)}.page-hero-media{border:1px solid var(--line);background:var(--grey);border-radius:8px;overflow:hidden}.page-hero-media img{aspect-ratio:4/3;object-fit:cover;width:100%}.breadcrumbs{color:var(--muted);padding-top:1.1rem;font-size:.88rem}.breadcrumbs ol{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:var(--line);margin-left:.4rem}.content-sections{gap:1rem;display:grid}.content-block{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:clamp(1rem,4vw,3rem);padding:clamp(1.3rem,4vw,2rem);display:grid}.faq-list{gap:.7rem;display:grid}.faq-list details{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px}.faq-list summary{cursor:pointer;align-items:center;min-height:56px;padding:1rem;font-weight:800;display:flex}.faq-list p{color:var(--ink-soft);margin:0;padding:0 1rem 1rem}.link-grid a{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;min-height:96px;padding:1rem;font-weight:800;text-decoration:none;display:flex}.link-grid a:hover{border-color:var(--bronze)}.form-section,.contact-layout{grid-template-columns:minmax(0,.78fr) minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,4rem);display:grid}.form-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;gap:1rem;padding:clamp(1.1rem,3vw,1.5rem);display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}label{gap:.35rem;font-weight:800;display:grid}input,select,textarea{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #a9c7c7;border-radius:6px;padding:.74rem .78rem}textarea{resize:vertical}.field-error{color:#8b1e18;font-size:.88rem;font-weight:700}.field-hint{color:var(--muted);font-size:.88rem;font-weight:500}.form-status{border-radius:6px;margin:0;padding:.85rem;font-weight:750}.form-status.success{color:#0f5c54;background:#e9f8f5}.form-status.error{color:#8b1e18;background:#faeded}.honeypot{position:absolute;left:-100vw}.contact-list{gap:.8rem;padding:0;list-style:none;display:grid}.article-layout .page-hero{padding-bottom:2rem}.article-body{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,4rem);display:grid}.toc{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;gap:.55rem;padding:1rem;display:grid;position:sticky;top:100px}.toc h2{margin:0 0 .25rem;font-size:1rem}.toc a{color:var(--ink-soft);font-size:.94rem}.article-sections{gap:2.5rem;display:grid}.article-sections section{scroll-margin-top:120px}.article-sections h2{margin:0 0 .75rem;font-size:clamp(1.55rem,3vw,2.4rem);line-height:1.1}.article-sections p{color:var(--ink-soft);font-size:1.05rem}.reference-note{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;padding:1rem}.content-model,.sitemap-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;padding:0;list-style:none;display:grid}.content-model li,.sitemap-list a{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;align-items:center;min-height:64px;padding:.9rem;display:flex}.table-wrap{border:1px solid var(--line);background:var(--paper-strong);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.9rem}tr:last-child td{border-bottom:0}.site-footer{border-top:1px solid var(--line);background:var(--ink);color:#fff;margin-top:clamp(3rem,6vw,5rem)}.footer-grid{width:min(calc(100% - 32px), var(--max));grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:2rem;margin-inline:auto;padding-block:3rem;display:grid}.brand-logo-tile{background:var(--paper-strong);border-radius:6px;flex:none;place-items:center;width:50px;height:52px;display:grid}.brand-footer .brand-logo-mark{width:38px;height:42px}.brand-footer small,.footer-brand p,.footer-list,.footer-bottom{color:#ffffffb8}.site-footer h2{text-transform:uppercase;margin:0 0 .85rem;font-size:.9rem}.footer-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.footer-list a{color:inherit}.footer-bottom{width:min(calc(100% - 32px), var(--max));border-top:1px solid #ffffff29;justify-content:space-between;gap:1rem;margin-inline:auto;padding:1rem 0 1.5rem;font-size:.88rem;display:flex}.not-found{padding-block:clamp(4rem,10vw,8rem)}@media (min-width:1080px){.desktop-nav{display:flex}.menu-toggle{display:none}}@media (max-width:1079px){.header-actions .button-small{display:none}}@media (max-width:900px){.home-hero h1,.page-hero h1{font-size:clamp(2.2rem,10vw,3.8rem)}.trust-strip,.lifecycle,.pathway-grid,.article-grid,.service-feature-grid,.portfolio-visual-grid,.process-grid,.footer-grid,.content-model,.sitemap-list{grid-template-columns:1fr}.trust-strip span,.lifecycle li,.process-grid li{border-right:0;border-bottom:1px solid var(--line)}.trust-strip span:last-child,.lifecycle li:last-child,.process-grid li:last-child{border-bottom:0}.split-section,.no-small-job,.content-block,.cta-section,.page-hero-with-image,.form-section,.contact-layout,.article-body,.service-feature{grid-template-columns:1fr}.service-feature div{padding:1rem}.toc{position:static}.cta-actions{justify-content:flex-start}.footer-bottom{flex-direction:column}}@media (max-width:560px){.container,.home-hero-content{width:min(calc(100% - 24px), var(--max))}.header-inner{min-height:68px}.brand small{display:none}.brand-logo-mark{width:38px;height:42px}.home-hero{min-height:calc(100svh - 68px)}.home-hero-overlay{background:linear-gradient(#0828487a,#082848e6),linear-gradient(90deg,#082848db,#08284857)}.hero-actions,.cta-actions{display:grid}.button{width:100%}.form-grid{grid-template-columns:1fr}.page-hero{padding-block:2.5rem}.content-block,.no-small-job,.cta-section{padding:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
