/* ACCSS concept redesign | Replaceable assets, zero build tools | Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');
:root{--navy:#003B64;--navy-deep:#002943;--navy-dark:#001F35;--gold:#A8851B;--gold-bright:#C9A33A;--ink:#1B2C36;--muted:#65717A;--line:#E3E9EB;--paper:#F5F7F7;--white:#FFF;--container:1280px;--shadow:0 20px 65px rgba(0,31,53,.12);--ease:cubic-bezier(.2,.8,.2,1)}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;font-family:Poppins,Arial,sans-serif;background:white;color:var(--ink);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}::selection{background:var(--gold);color:#fff}img,svg{max-width:100%}img{display:block}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold-bright);outline-offset:4px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{letter-spacing:-.045em;line-height:1.18}p{line-height:1.85}ul{padding-left:20px}section{position:relative}.container{width:min(calc(100% - 80px),var(--container));margin-inline:auto}.small-container{max-width:850px;margin-inline:auto}.eyebrow{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px;margin-bottom:24px}.eyebrow::before{content:"";width:30px;height:2px;background:currentColor}.eyebrow-light{color:#D4BA67}.section{padding:112px 0}.section-tight{padding:76px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:47px}.section-head .section-intro{max-width:390px;margin-bottom:5px}.section-title{font-size:clamp(35px,3.5vw,57px);font-weight:650;letter-spacing:-.058em;line-height:1.16;margin-bottom:24px}.section-lede{color:var(--muted);font-size:15px;line-height:1.9;max-width:650px}.text-white{color:white}.text-muted{color:var(--muted)}.section-head .section-title{margin-bottom:0}.divider{height:1px;background:var(--line)}.overline{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:34px;min-height:54px;padding:14px 24px;font-size:12px;font-weight:700;letter-spacing:.035em;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease);border:1px solid transparent;border-radius:2px;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:white}.btn-primary:hover{background:#8F7016}.btn-navy{background:var(--navy);color:white}.btn-navy:hover{background:var(--navy-deep)}.btn-outline-light{border-color:rgba(255,255,255,.65);color:white;background:transparent}.btn-outline-light:hover{background:white;color:var(--navy)}.btn-outline-dark{border-color:var(--navy);color:var(--navy);background:white}.btn-outline-dark:hover{background:var(--navy);color:white}.btn .arrow,.text-link .arrow{font-size:19px;line-height:1;font-weight:400;transition:transform .25s}.btn:hover .arrow,.text-link:hover .arrow{transform:translateX(4px)}.text-link{display:inline-flex;align-items:center;gap:18px;text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:700;color:var(--navy);padding-bottom:9px;border-bottom:1px solid var(--gold);transition:gap .25s}.text-link:hover{gap:25px}.text-link-light{color:white}.pill{display:inline-flex;padding:7px 11px;background:#F2F6F6;color:var(--navy);font-size:10px;letter-spacing:.07em;text-transform:uppercase;font-weight:700}.card-image{width:100%;height:100%;object-fit:cover}.img-wrap{position:relative;overflow:hidden;background:#B7CBD0}.img-wrap>img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}a:hover .img-wrap>img,.hover-photo:hover .img-wrap>img{transform:scale(1.045)}.grain{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(0,25,44,.07));z-index:1}.skip-link{position:absolute;top:-80px;left:10px;background:white;color:var(--navy);padding:12px;z-index:900}.skip-link:focus{top:10px}
/* Header */
.utility-bar{height:33px;background:var(--navy-deep);color:#d6e3e9;font-size:10px;font-weight:500;letter-spacing:.035em}.utility-bar .container{height:100%;display:flex;justify-content:space-between;align-items:center;gap:20px}.utility-links{display:flex;align-items:center;gap:28px}.utility-links a:hover{color:white}.nav-shell{position:sticky;top:0;background:#fff;z-index:100;border-bottom:1px solid rgba(0,59,100,.08);transition:box-shadow .25s}.nav-shell.scrolled{box-shadow:0 8px 25px rgba(0,32,54,.095)}.nav-inner{min-height:81px;display:flex;align-items:center;gap:24px;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-mark{width:43px;height:43px}.brand-main{display:block;font-size:23px;line-height:1;letter-spacing:-.07em;color:var(--navy);font-weight:800}.brand-tag{font-size:8px;letter-spacing:.065em;line-height:1.4;font-weight:600;color:#4C6270;text-transform:uppercase;display:block;margin-top:4px}.desktop-nav{display:flex;align-items:center;gap:31px;height:81px;margin-left:auto}.nav-item{position:relative;height:100%;display:flex;align-items:center}.nav-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#283E49;transition:color .25s;height:100%;border:0;background:none;padding:0}.nav-link:hover,.nav-link.active,.nav-item:hover>.nav-link{color:var(--gold)}.nav-link.has-dropdown:after{content:"";width:6px;height:6px;border-bottom:1.7px solid currentColor;border-right:1.7px solid currentColor;transform:rotate(45deg);margin-top:-3px}.nav-dropdown{position:absolute;top:100%;left:-20px;min-width:250px;padding:14px;background:white;box-shadow:0 18px 40px rgba(0,31,53,.15);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;border-top:2px solid var(--gold)}.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown a{display:block;padding:13px 12px;color:var(--ink);font-size:12px;transition:background .2s,color .2s}.nav-dropdown a:hover,.nav-dropdown a:focus-visible{color:var(--navy);background:#F4F7F7}.header-cta{min-height:43px;padding:10px 18px;gap:13px;font-size:11px}.menu-toggle{display:none;border:0;background:none;padding:12px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0;transition:transform .2s}.mobile-panel{display:none}
/* Hero */
.hero{background:var(--navy-dark);min-height:min(760px,calc(100svh - 114px));height:690px;color:white;overflow:hidden;position:relative}.hero .hero-media{position:absolute;inset:0}.hero .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 57%;filter:saturate(.8)}.hero .hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,25,42,.93) 0%,rgba(0,32,50,.77) 40%,rgba(0,30,48,.24) 78%,rgba(0,25,40,.15) 100%),linear-gradient(0deg,rgba(0,20,35,.4),transparent 42%)}.hero .container{height:100%;position:relative;z-index:2}.hero-content{display:flex;flex-direction:column;justify-content:center;max-width:780px;height:calc(100% - 78px);padding-bottom:10px}.hero h1{font-weight:650;font-size:clamp(48px,5.1vw,78px);line-height:1.13;letter-spacing:-.062em;margin-bottom:24px}.hero h1 em{font-style:normal;color:#D3B35C}.hero-description{max-width:585px;color:#DAE2E6;font-size:15px;line-height:1.9;margin-bottom:32px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-bottom{position:absolute;bottom:0;left:0;right:0;height:78px;border-top:1px solid rgba(255,255,255,.22);display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.hero-bottom a{display:flex;align-items:center;gap:18px;color:#E1E8EB;text-transform:uppercase;font-size:10px;letter-spacing:.08em;font-weight:700;padding:0 25px;border-right:1px solid rgba(255,255,255,.2);height:38px}.hero-bottom a:first-child{padding-left:0}.hero-bottom a:last-child{border-right:0}.hero-bottom a:hover{color:var(--gold-bright)}.hero-bottom .num{color:var(--gold-bright);font-size:10px}.scroll-note{position:absolute;right:0;bottom:115px;color:#FFFFFFC0;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.16em;font-size:9px;display:flex;gap:16px;align-items:center}.scroll-note:after{content:"";height:53px;width:1px;background:rgba(255,255,255,.6)}
/* Introduction */
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.intro-copy .section-title{max-width:630px}.intro-copy p{font-size:14px;color:var(--muted);max-width:540px}.intro-copy .text-link{margin-top:16px}.intro-visual{height:510px;position:relative;padding:0 48px 45px 0}.intro-visual .img-wrap{height:100%}.intro-caption{position:absolute;right:0;bottom:0;width:195px;background:var(--navy);color:white;padding:24px 27px;box-shadow:var(--shadow)}.intro-caption strong{display:block;font-size:43px;line-height:1.1;letter-spacing:-.05em;font-weight:600}.intro-caption span{font-size:10px;line-height:1.7;letter-spacing:.07em;color:#DAE7EF;text-transform:uppercase}.intro-caption .accent-line{width:25px;height:2px;background:var(--gold);margin-bottom:15px}.logo-line{padding:27px 0;background:#F8F9F9;border-block:1px solid var(--line)}.logo-line-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.logo-line p{font-size:11px;letter-spacing:.1em;color:#63727C;text-transform:uppercase;font-weight:600;margin:0}.logo-line-list{display:flex;gap:32px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.logo-line-list span{font-weight:650;color:#86979F;letter-spacing:-.03em;font-size:14px}
/* Services */
.services-overview{background:#fff}.service-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.service-feature{position:relative;display:block;min-height:465px;overflow:hidden;background:var(--navy)}.service-feature .img-wrap{position:absolute;inset:0}.service-feature .img-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,30,49,.92) 0%,rgba(0,30,49,.08) 80%)}.service-feature-content{position:absolute;z-index:2;bottom:39px;left:43px;right:43px;color:white}.service-feature-content .eyebrow{margin-bottom:12px}.service-feature-content h3{font-size:clamp(26px,2.45vw,36px);font-weight:600;margin-bottom:9px}.service-feature-content p{font-size:12px;color:#DEE8EB;max-width:420px;margin-bottom:19px}.round-arrow{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;border:1px solid rgba(255,255,255,.6);font-size:22px;transition:background .25s,color .25s}.service-feature:hover .round-arrow{background:white;color:var(--navy)}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);margin-top:48px}.capability{padding:28px 29px 8px 0;border-right:1px solid var(--line);margin-right:29px}.capability:last-child{border-right:0}.capability .index{font-size:10px;color:var(--gold);font-weight:700;letter-spacing:.1em}.capability h4{font-size:16px;letter-spacing:-.025em;margin:10px 0}.capability p{font-size:12px;color:var(--muted);margin:0}
/* Industries */
.industries{background:var(--navy-deep);color:white;overflow:hidden}.industries .section-title{max-width:660px}.industries .section-lede{color:#C1D1D9}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.industry-card{display:block;position:relative;height:380px;overflow:hidden;background:#2b4e5b}.industry-card .img-wrap{position:absolute;inset:0}.industry-card .img-wrap img{filter:saturate(.8)}.industry-card .img-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,31,49,.9),rgba(0,37,54,.1) 70%)}.industry-card-content{position:absolute;inset:auto 22px 26px;z-index:3}.industry-card-content span{color:#E1C571;font-size:10px;letter-spacing:.09em}.industry-card-content h3{font-size:18px;font-weight:600;letter-spacing:-.035em;margin:12px 0 8px}.industry-card-content .arrow{font-size:21px}.industry-card:hover .industry-card-content .arrow{color:var(--gold-bright)}
/* Capabilities */
.solutions-band{background:var(--paper);overflow:hidden}.solutions-band:before{content:"";position:absolute;inset:0;background:url('../images/topo-pattern.svg') repeat;opacity:.5;pointer-events:none}.solutions-layout{display:grid;grid-template-columns:1fr 1.02fr;align-items:center;gap:70px;position:relative}.solutions-layout .img-wrap{height:515px}.solutions-layout p{font-size:13px;color:var(--muted)}.feature-list{display:grid;gap:0;margin-top:31px}.feature-row{display:flex;gap:24px;padding:19px 0;border-bottom:1px solid #DCE3E4;align-items:start}.feature-row .feature-index{font-size:10px;color:var(--gold);padding-top:6px;font-weight:700}.feature-row h4{margin:0 0 4px;font-weight:600;font-size:14px;letter-spacing:-.01em}.feature-row p{font-size:12px;line-height:1.65;margin:0}
/* Projects */
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project-card{display:block;min-width:0}.project-image{height:285px;overflow:hidden}.project-info{padding:26px 0 7px}.project-meta{font-size:10px;text-transform:uppercase;color:var(--gold);font-weight:700;letter-spacing:.14em;margin-bottom:13px}.project-info h3{font-weight:600;font-size:19px;line-height:1.5;letter-spacing:-.035em;margin-bottom:11px}.project-info p{color:var(--muted);font-size:12px;margin-bottom:17px}.project-info .text-link{font-size:10px}.project-archive-tools{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:0 0 35px;flex-wrap:wrap}.filter-bar{display:flex;flex-wrap:wrap;gap:8px}.filter-btn{border:1px solid #DDE4E8;background:#fff;color:var(--muted);padding:11px 18px;font-size:11px;font-weight:600;transition:all .2s}.filter-btn[aria-pressed="true"],.filter-btn:hover{background:var(--navy);color:white;border-color:var(--navy)}.search-wrap{position:relative}.search-wrap input{min-width:240px;padding:12px 16px;border:1px solid var(--line);font-size:12px;width:100%}.no-results{padding:32px;background:var(--paper);display:none;color:var(--muted)}.project-card[hidden]{display:none!important}
/* Statistics / process */
.stats-band{background:var(--navy);color:white;padding:48px 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:0 38px;border-right:1px solid rgba(255,255,255,.21)}.stat:first-child{padding-left:0}.stat:last-child{border-right:0}.stat strong{font-size:33px;font-weight:600;letter-spacing:-.04em;display:block;line-height:1.2}.stat p{font-size:11px;color:#C8D6DF;text-transform:uppercase;letter-spacing:.08em;margin:7px 0 0}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;border-top:1px solid var(--line);margin-top:42px}.process-card{padding-top:23px}.process-card .step{color:var(--gold);font-size:13px;font-weight:600;letter-spacing:.12em}.process-card h3{font-size:17px;margin:25px 0 12px}.process-card p{font-size:12px;color:var(--muted)}
/* CTA / Footer */
.cta-section{background:var(--navy);color:white;overflow:hidden}.cta-section .cta-backdrop{position:absolute;inset:0;opacity:.2}.cta-section .cta-backdrop img{width:100%;height:100%;object-fit:cover}.cta-section:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#003B64 0%,rgba(0,59,100,.94) 49%,rgba(0,59,100,.65))}.cta-content{position:relative;z-index:1;display:flex;justify-content:space-between;gap:35px;align-items:center;padding:88px 0}.cta-content h2{font-size:clamp(31px,3.6vw,53px);font-weight:600;max-width:700px;margin-bottom:15px}.cta-content p{font-size:13px;color:#D5E0E7;margin-bottom:0}.footer{background:var(--navy-dark);color:white;padding-top:78px}.footer-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr 1.25fr;gap:65px}.footer .brand-main{color:white}.footer .brand-tag{color:#B4C8D0}.footer .brand-mark{background:#fff;border-radius:4px}.footer-brand p{font-size:12px;color:#B6C7D0;line-height:1.9;max-width:300px;margin-top:22px}.footer h4{font-size:12px;letter-spacing:.05em;margin-bottom:23px;font-weight:600}.footer-links{display:flex;flex-direction:column;gap:13px}.footer a:not(.brand){font-size:11px;color:#C8D5DA;transition:color .2s}.footer a:not(.brand):hover{color:#DABC60}.footer-contact p{font-size:11px;color:#C8D5DA;line-height:1.9;margin:0 0 15px}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:65px;padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#9CB4C0}
/* Inner hero */
.page-hero{background:#003B64;position:relative;color:white;min-height:380px;display:flex;align-items:center;overflow:hidden}.page-hero-media{position:absolute;inset:0}.page-hero-media img{width:100%;height:100%;object-fit:cover}.page-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,33,53,.96),rgba(0,43,65,.76) 60%,rgba(0,43,65,.25))}.page-hero-content{position:relative;z-index:2;padding:78px 0}.page-hero h1{font-size:clamp(41px,4.7vw,68px);font-weight:600;margin-bottom:16px}.page-hero p{font-size:14px;color:#D6E1E7;max-width:670px;line-height:1.85;margin-bottom:0}.breadcrumb{font-size:10px;letter-spacing:.11em;color:#D3E2E9;display:flex;align-items:center;gap:13px;margin-bottom:35px;text-transform:uppercase}.breadcrumb a:hover{color:#E0B754}.breadcrumb span{color:#D2AE53}.content-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.content-split.reverse .split-photo{order:1}.content-split.reverse .split-copy{order:2}.split-photo{height:480px}.split-copy p{font-size:13px;color:var(--muted)}.split-copy .text-link{margin-top:10px}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-tile{border:1px solid var(--line);background:white;padding:32px 27px;min-height:250px;transition:box-shadow .25s,transform .25s}.service-tile:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.service-tile .tile-icon{width:48px;height:48px;background:#F0F5F6;display:grid;place-items:center;color:var(--navy);margin-bottom:25px}.service-tile svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service-tile h3{font-size:16px;line-height:1.5;letter-spacing:-.03em;margin-bottom:11px}.service-tile p{font-size:12px;color:var(--muted);line-height:1.85;margin:0}.service-details{display:grid;grid-template-columns:260px 1fr;gap:70px}.sticky-aside{position:sticky;top:116px;align-self:start}.sticky-aside h3{font-size:15px}.anchor-links{display:flex;flex-direction:column;gap:3px;border-left:2px solid var(--line)}.anchor-links a{font-size:12px;color:var(--muted);padding:11px 18px;transition:color .2s,border-color .2s;border-left:2px solid transparent;margin-left:-2px}.anchor-links a:hover,.anchor-links a.is-current{border-color:var(--gold);color:var(--navy)}.detail-block{padding-bottom:39px;margin-bottom:39px;border-bottom:1px solid var(--line);scroll-margin-top:125px}.detail-block:last-child{border-bottom:0}.detail-block .detail-index{color:var(--gold);font-weight:700;font-size:10px;letter-spacing:.13em}.detail-block h3{font-size:25px;font-weight:600;margin:12px 0}.detail-block p{font-size:13px;color:var(--muted);max-width:760px;margin-bottom:12px}.detail-list{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.detail-list span{padding:7px 13px;font-size:10px;color:var(--navy);background:#F2F5F6}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.value-card{padding:26px 24px;background:var(--paper);min-height:225px;border-top:2px solid var(--gold)}.value-card .value-num{font-size:12px;color:var(--gold);font-weight:700}.value-card h3{font-size:17px;margin:34px 0 12px}.value-card p{font-size:11px;color:var(--muted);margin:0}.statement-band{padding:62px 0;background:var(--navy);color:white}.statement-band blockquote{font-size:clamp(24px,3vw,43px);line-height:1.4;letter-spacing:-.045em;font-weight:500;max-width:960px;margin:0}.statement-band strong{color:#D7B65B;font-weight:500}
/* Details */
.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.detail-hero .img-wrap{height:480px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:32px 0}.fact small{display:block;color:var(--gold);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:9px}.fact strong{font-size:13px;line-height:1.5}.detail-quote{background:var(--paper);padding:35px;margin:36px 0}.detail-quote p{font-size:12px;margin:0;color:var(--muted)}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.mini-card{background:var(--paper);padding:28px}.mini-card h3{font-size:17px}.mini-card p{font-size:12px;color:var(--muted);margin:0}
/* Resources and contact */
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.resource-card{border:1px solid var(--line)}.resource-card .img-wrap{height:240px}.resource-body{padding:27px 24px}.resource-body h3{font-size:20px;line-height:1.4;margin:9px 0 11px}.resource-body p{font-size:12px;color:var(--muted)}.resource-body a{font-size:11px;color:var(--navy);font-weight:700}.resource-tag{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-weight:700}.resource-section{scroll-margin-top:130px}.faq-list{max-width:850px;margin:auto;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{padding:22px 4px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;font-weight:600;font-size:13px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';font-size:25px;font-weight:300;color:var(--gold)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 30px 19px 4px;font-size:12px;color:var(--muted);margin:0}.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px}.contact-copy .section-title{font-size:clamp(32px,3vw,46px)}.contact-copy>p{color:var(--muted);font-size:13px}.contact-info{margin-top:42px}.contact-info-item{display:flex;gap:18px;border-top:1px solid var(--line);padding:22px 0}.contact-info-item .symbol{width:39px;height:39px;background:#EAF0F2;color:var(--navy);display:grid;place-items:center;flex:0 0 auto;font-size:18px}.contact-info-item h3{font-size:12px;margin-bottom:6px}.contact-info-item p,.contact-info-item a{font-size:12px;color:var(--muted);line-height:1.75;margin:0}.form-panel{background:#F6F8F8;padding:42px}.form-panel h2{font-size:23px;margin-bottom:11px}.form-panel>p{font-size:12px;color:var(--muted);margin-bottom:27px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:600;color:#354752}.field input,.field select,.field textarea{border:1px solid #D4DEE1;background:white;color:var(--ink);padding:14px 16px;font-size:12px;width:100%;border-radius:0;outline-offset:2px;transition:border .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy)}.field textarea{min-height:144px;resize:vertical}.form-note{font-size:10px!important;color:#647782!important;line-height:1.8!important;margin:18px 0}.form-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.form-status{font-size:12px;margin-top:18px;line-height:1.7}.form-status:not(:empty){padding:13px 16px;border-left:3px solid var(--gold);background:#fff}.map-panel{position:relative;background:#D5E1E1;min-height:335px;overflow:hidden;display:grid;place-items:center}.map-panel:before{content:"";position:absolute;inset:0;background:url('../images/topo-pattern.svg') repeat;opacity:.8}.map-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 52% 50%,rgba(0,59,100,.13),transparent 40%)}.map-location{position:relative;z-index:2;background:white;padding:30px 36px;box-shadow:0 25px 50px rgba(0,45,75,.1);max-width:300px}.map-location strong{font-size:17px;color:var(--navy)}.map-location p{font-size:11px;color:var(--muted);line-height:1.7;margin:7px 0 14px}.map-location a{color:var(--navy);font-weight:700;font-size:11px}.site-note{background:#EEF3F4;padding:13px 19px;font-size:11px;color:#4F6674;line-height:1.7;border-left:3px solid var(--gold)}
/* Responsive */
@media(max-width:1100px){.desktop-nav{gap:19px}.header-cta{display:none}.intro-grid,.solutions-layout{gap:45px}.section{padding:85px 0}.industry-card{height:325px}.footer-grid{gap:35px}.contact-layout{gap:45px}}
@media(max-width:900px){.container{width:min(calc(100% - 48px),var(--container))}.utility-bar{display:none}.nav-inner{min-height:72px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.mobile-panel{display:block;position:fixed;top:72px;left:0;right:0;bottom:0;background:white;padding:23px 25px 70px;overflow:auto;z-index:101;transform:translateX(100%);opacity:0;visibility:hidden;transition:transform .32s var(--ease),opacity .25s,visibility .25s}.mobile-panel.open{transform:translateX(0);opacity:1;visibility:visible}.mobile-panel>a,.mobile-panel .mobile-group>a{display:block;padding:18px 0;border-bottom:1px solid var(--line);font-size:15px;font-weight:600}.mobile-group small{display:block;color:var(--gold);text-transform:uppercase;font-size:10px;letter-spacing:.14em;margin-top:15px}.mobile-sub{padding-left:17px}.mobile-sub a{display:block;padding:11px 0;font-size:13px;color:var(--muted)}.mobile-panel .btn{margin-top:26px}.hero{height:650px}.hero h1{font-size:clamp(43px,6.5vw,64px)}.hero-bottom a{font-size:9px;padding:0 12px}.intro-grid,.content-split,.solutions-layout,.contact-layout,.detail-hero{grid-template-columns:1fr;gap:38px}.intro-visual{max-width:660px}.service-details{grid-template-columns:1fr;gap:25px}.sticky-aside{position:static}.anchor-links{flex-direction:row;flex-wrap:wrap;border:0}.anchor-links a{margin:0;border:1px solid var(--line)}.industry-grid{grid-template-columns:repeat(2,1fr)}.industry-card{height:310px}.process-grid,.stats-grid,.values-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr);gap:50px}.project-grid,.service-list,.resource-grid{grid-template-columns:repeat(2,1fr)}.section-head{align-items:start;flex-direction:column;gap:17px}.content-split.reverse .split-photo{order:0}.content-split.reverse .split-copy{order:0}}
@media(max-width:620px){.container{width:min(calc(100% - 36px),var(--container))}.section{padding:67px 0}.section-tight{padding:52px 0}.section-title{font-size:35px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:18px}.utility-bar{display:none}.brand-mark{width:40px;height:40px}.brand-main{font-size:20px}.brand-tag{font-size:7px}.hero{min-height:670px;height:calc(100svh - 72px);max-height:820px}.hero .hero-media img{object-position:62% center}.hero .hero-media:after{background:linear-gradient(90deg,rgba(0,27,45,.89),rgba(0,28,44,.58)),linear-gradient(0deg,rgba(0,25,43,.5),transparent)}.hero-content{height:calc(100% - 86px)}.hero h1{font-size:clamp(38px,9.4vw,57px);line-height:1.17}.hero-description{font-size:12px;line-height:1.85}.hero-actions .btn{width:100%}.hero-bottom{height:86px;grid-template-columns:1fr 1fr}.hero-bottom a{padding:0 8px;font-size:8px;line-height:1.7;gap:8px;height:55px}.hero-bottom a:nth-child(3){display:none}.scroll-note{display:none}.intro-visual{height:380px;padding:0 29px 35px 0}.intro-caption{width:145px;padding:17px 18px}.intro-caption strong{font-size:31px}.intro-caption span{font-size:8px}.logo-line-inner{display:block}.logo-line-list{justify-content:start;gap:12px;margin-top:12px}.logo-line-list span{font-size:12px}.service-showcase{grid-template-columns:1fr;gap:15px}.service-feature{min-height:335px}.service-feature-content{left:25px;right:25px;bottom:25px}.service-feature-content h3{font-size:27px}.capability-grid{grid-template-columns:1fr;margin-top:30px}.capability{margin:0;border-right:0;border-bottom:1px solid var(--line);padding:20px 0}.industry-grid{gap:10px}.industry-card{height:270px}.industry-card-content{left:14px;right:12px;bottom:17px}.industry-card-content h3{font-size:14px}.solutions-layout .img-wrap,.split-photo,.detail-hero .img-wrap{height:320px}.project-grid,.resource-grid,.service-list,.values-grid,.mini-grid{grid-template-columns:1fr}.project-image{height:255px}.stats-grid{gap:20px}.stat{padding:15px!important;border:0;border-bottom:1px solid rgba(255,255,255,.2)}.stat strong{font-size:28px}.process-grid{grid-template-columns:1fr;gap:7px}.process-card h3{margin-top:11px}.cta-content{padding:65px 0;display:block}.cta-content h2{font-size:33px}.cta-content .btn{margin-top:25px}.footer{padding-top:55px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 16px}.footer-brand,.footer-contact{grid-column:1/-1}.footer-bottom{display:block;line-height:1.9}.page-hero{min-height:365px}.page-hero h1{font-size:39px}.page-hero-content{padding:62px 0}.breadcrumb{font-size:9px;flex-wrap:wrap}.facts{grid-template-columns:1fr;gap:17px}.fact{padding-bottom:12px;border-bottom:1px solid var(--line)}.form-panel{padding:25px 20px}.form-grid{grid-template-columns:1fr}.contact-info-item{padding:17px 0}.filter-bar{gap:6px}.filter-btn{font-size:10px;padding:8px 10px}.search-wrap{width:100%}.search-wrap input{width:100%}.feature-row{gap:15px}.statement-band blockquote{font-size:25px}}
@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s var(--ease)}.reveal.is-visible{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
