:root{--primary:#004aab;--secondary:#00256e;--cta:#32a019;--ink:#101828;--muted:#5d6675;--surface:#fff;--alt:#f2f6fa;--line:#dbe3ec;--dark:#071a38;--font-body:'Manrope',sans-serif;--font-display:'Sora',sans-serif;--radius:6px;--shadow:0 18px 50px rgba(8,31,67,.12);--wrap:min(1180px,calc(100% - 40px));--section:clamp(64px,7vw,96px)}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;color:var(--ink);background:var(--surface);font-family:var(--font-body);line-height:1.7;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);line-height:1.12;letter-spacing:0}h1{font-size:clamp(2.5rem,5vw,5.7rem)}h2{font-size:clamp(2rem,3.3vw,3.55rem)}h3{font-size:1.28rem}.wrap{width:var(--wrap);margin-inline:auto}.skip-link{position:fixed;z-index:9999;top:8px;left:8px;transform:translateY(-150%);background:var(--surface);padding:8px 14px}.skip-link:focus{transform:none}.utility{height:38px;background:var(--secondary);color:#fff;font-size:.78rem}.utility-inner,.utility-contact,.social{display:flex;align-items:center}.utility-inner{height:100%;justify-content:space-between}.utility-contact{gap:24px}.utility-contact a{display:flex;gap:7px;align-items:center}.social{gap:8px}.social a,.footer-social a{display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-weight:800}.site-header{height:78px;position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap{display:flex;height:100%;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;line-height:1}.brand-mark{display:grid;place-items:center;width:39px;height:39px;background:var(--primary);color:#fff;font:bold 1.55rem var(--font-display);clip-path:polygon(0 0,100% 0,100% 75%,75% 100%,0 100%)}.brand strong,.brand small{display:block}.brand strong{font:800 1.1rem var(--font-display);color:var(--secondary)}.brand small{font-size:.57rem;letter-spacing:.28em;margin-top:5px;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:24px;font-size:.83rem;font-weight:700}.main-nav>a:not(.nav-cta),.has-sub>a{padding:26px 0;position:relative}.main-nav .active:after,.main-nav>a:not(.nav-cta):hover:after{content:'';position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--primary)}.nav-cta{background:var(--cta);color:#fff!important;padding:11px 18px;border-radius:var(--radius);transition:.25s}.nav-cta:hover{background:var(--secondary);color:#fff}.has-sub{position:relative}.sub-menu{position:absolute;top:64px;right:0;width:290px;padding:10px;background:var(--surface);box-shadow:var(--shadow);border-top:3px solid var(--primary);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}.has-sub.expanded .sub-menu{opacity:1;visibility:visible;transform:none}.sub-menu a{display:block;padding:11px 12px;border-bottom:1px solid var(--line)}.sub-menu a:hover{background:var(--alt);color:var(--primary)}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--secondary);margin:5px auto}.hero-slider{height:calc(100svh - 116px);min-height:620px;max-height:820px;position:relative;background:var(--dark)}.hero-slide,.inner-hero{background-image:linear-gradient(90deg,rgba(3,19,51,.9),rgba(3,19,51,.4),rgba(3,19,51,.08)),var(--hero);background-size:cover;background-position:center}.hero-slide{position:absolute;inset:0;display:grid;align-items:center;color:#fff;opacity:0;visibility:hidden;transform:scale(1.035);transition:opacity .8s,transform 1.4s}.hero-slide.active{opacity:1;visibility:visible;transform:scale(1)}.hero-copy{padding-bottom:30px}.hero-copy>*{max-width:760px}.hero-copy h1,.hero-copy h2{margin:.45rem 0 1rem;color:#fff}.hero-copy p:not(.eyebrow){max-width:650px;font-size:1.05rem;color:rgba(255,255,255,.82)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.72rem;color:#a9d8ff;margin-bottom:12px}.eyebrow.blue{color:var(--primary)}.btn{display:inline-flex;align-items:center;gap:14px;justify-content:center;border:0;border-radius:var(--radius);padding:13px 20px;font-weight:800;font-size:.87rem;transition:transform .25s,background .25s,box-shadow .25s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.18)}.btn-green{background:var(--cta);color:#fff}.btn-green:hover{background:#287f14}.btn-blue{background:var(--primary);color:#fff}.btn-blue:hover{background:var(--secondary)}.slider-controls{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;color:#fff}.slider-controls>button,.quote-controls button{border:1px solid rgba(255,255,255,.5);background:transparent;color:inherit;width:42px;height:42px;border-radius:50%}.slider-dots{display:flex;gap:8px}.slider-dots button{border:0;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);padding:0}.slider-dots button.active{width:28px;border-radius:6px;background:#fff}.trust-strip{background:var(--secondary);color:#fff}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat-grid>div{padding:23px 26px;border-right:1px solid rgba(255,255,255,.16)}.stat-grid strong,.stat-grid span{display:block}.stat-grid strong{font:700 1.7rem var(--font-display)}.stat-grid span{font-size:.72rem;color:rgba(255,255,255,.67)}.section{padding:var(--section) 0}.section.alt{background:var(--alt)}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}.display{max-width:580px}.lead{font-size:1.12rem;color:#384456}.text-link{display:inline-flex;gap:12px;align-items:center;color:var(--primary);font-weight:800;font-size:.86rem}.text-link span{transition:.2s}.text-link:hover span{transform:translateX(5px)}.feature-row{display:grid;grid-template-columns:48px 1fr auto;gap:22px;padding:26px 0;border-bottom:1px solid var(--line);transition:.25s}.feature-row:first-child{border-top:1px solid var(--line)}.feature-row>span{font:600 .76rem var(--font-display);color:var(--primary)}.feature-row h3{margin-bottom:6px}.feature-row p{margin:0;color:var(--muted);font-size:.91rem}.feature-row:hover{padding-left:15px;color:var(--primary)}.dark-cta{background:var(--dark);color:#fff;position:relative;overflow:hidden}.dark-cta:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 60%,rgba(50,160,25,.18));pointer-events:none}.dark-cta-inner{min-height:300px;display:flex;align-items:center;justify-content:space-between;gap:50px;position:relative;z-index:1}.dark-cta h2{max-width:700px;margin-bottom:10px}.dark-cta p:not(.eyebrow){max-width:650px;color:#b9c5d7}.section-head,.gallery-intro,.services-intro,.career-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px}.section-head h2,.gallery-intro h2,.services-intro h2,.career-intro h2{margin:0;max-width:750px}.gallery-intro>p,.services-intro>p,.career-intro>p{max-width:520px;color:var(--muted)}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:var(--surface);border:1px solid var(--line);overflow:hidden}.service-image{display:block;height:205px;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;transition:.6s}.service-card:hover img{transform:scale(1.07)}.service-card>div{padding:24px}.service-card p{color:var(--muted);font-size:.91rem}.gallery-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}.gallery-grid.four{grid-template-columns:repeat(4,1fr)}.gallery-item{border:0;padding:0;position:relative;overflow:hidden;height:330px;background:var(--dark);color:#fff}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.7s}.gallery-item:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(2,15,38,.85))}.gallery-item span{position:absolute;z-index:2;bottom:20px;left:20px;font-weight:800}.gallery-item:hover img{transform:scale(1.06)}.breadcrumbs{background:var(--alt);font-size:.76rem}.breadcrumbs .wrap{height:42px;display:flex;align-items:center;gap:9px;color:var(--muted)}.breadcrumbs a{color:var(--primary)}.inner-hero{min-height:440px;color:#fff;display:flex;align-items:end;padding:100px 0 65px}.inner-hero .wrap>*{max-width:850px}.inner-hero h1{font-size:clamp(2.6rem,5vw,5rem);margin:.4rem 0 1rem}.inner-hero p:not(.eyebrow){max-width:650px;color:rgba(255,255,255,.8);font-size:1.05rem}.hero-center{text-align:center;align-items:center}.hero-center .wrap>*{margin-inline:auto}.hero-careers{background-position:center 40%}.about-story{display:grid;grid-template-columns:320px 1fr;gap:8vw;align-items:center}.year-block{background:var(--primary);color:#fff;min-height:320px;padding:45px;display:flex;flex-direction:column;justify-content:flex-end}.year-block strong{font:700 4.6rem var(--font-display)}.year-block p{margin:0}.story-copy{max-width:720px}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.values-grid article{padding:32px;background:var(--surface);min-height:260px}.values-grid b,.process-grid b{color:var(--primary);font:600 .75rem var(--font-display)}.values-grid h3{margin-top:46px}.values-grid p{font-size:.9rem;color:var(--muted)}.mission-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px}.mission{padding:50px;background:var(--alt)}.vision{position:relative;min-height:410px;color:#fff;overflow:hidden}.vision img{width:100%;height:100%;object-fit:cover}.vision:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,rgba(3,18,45,.9))}.vision div{position:absolute;z-index:2;bottom:35px;left:35px;right:35px}.vision h2{font-size:1.9rem}.service-pillars{display:grid;grid-template-columns:1fr 1fr;gap:25px}.pillar{background:var(--surface);border:1px solid var(--line);overflow:hidden}.pillar>img{width:100%;height:280px;object-fit:cover}.pillar>div{padding:34px}.pillar span{font-size:.72rem;color:var(--primary);font-weight:800}.pillar h2{font-size:2rem;margin:.5rem 0 1rem}.pillar p,.pillar li{color:var(--muted)}.pillar ul{padding-left:20px;margin-bottom:25px}.process-grid,.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.process-grid article,.perks article{border-top:3px solid var(--primary);padding:28px;background:var(--surface)}.intro-offset{display:grid;grid-template-columns:.45fr 1.2fr;gap:8vw}.intro-offset aside{border-left:3px solid var(--cta);padding-left:25px}.capability-list{display:grid;gap:16px}.capability{display:grid;grid-template-columns:280px 1fr;background:var(--surface);min-height:240px;overflow:hidden}.capability:nth-child(even){grid-template-columns:1fr 280px}.capability:nth-child(even) img{order:2}.capability img{width:100%;height:100%;object-fit:cover}.capability>div{padding:32px 38px}.capability span,.test-card span{color:var(--primary);font:700 .72rem var(--font-display)}.capability h2{font-size:1.8rem;margin:.5rem 0}.capability p{color:var(--muted)}.capability small{font-weight:700;color:#39465b}.timeline{display:grid;grid-template-columns:repeat(4,1fr);padding:0;list-style:none;counter-reset:item}.timeline li{border-top:2px solid var(--line);padding:25px 25px 0 0;position:relative}.timeline li:before{content:'';width:12px;height:12px;background:var(--primary);border-radius:50%;position:absolute;top:-7px;left:0}.timeline b{color:var(--primary);font-size:.7rem}.timeline h3{margin:.5rem 0}.timeline p{font-size:.88rem;color:var(--muted)}.quality-copy{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;align-items:end}.quality-metrics{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.quality-metrics div{padding:24px;border-right:1px solid var(--line)}.quality-metrics strong,.quality-metrics span{display:block}.quality-metrics strong{color:var(--primary);font:700 1.3rem var(--font-display)}.quality-metrics span{font-size:.75rem;color:var(--muted)}.test-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.test-card{background:var(--surface);overflow:hidden}.test-card img{width:100%;height:165px;object-fit:cover}.test-card>div{padding:22px}.test-card h3{margin:.45rem 0}.test-card p{font-size:.87rem;color:var(--muted)}.qa-flow{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.qa-steps{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.qa-steps article{background:var(--surface);padding:25px}.qa-steps b{font:700 1.1rem var(--font-display);color:var(--primary)}.qa-steps p{font-size:.86rem;color:var(--muted);margin:8px 0 0}.testimonials{background:var(--surface)}.quote-slider{position:relative;background:var(--secondary);color:#fff;padding:55px 70px;min-height:360px}.quote{display:none}.quote.active{display:block;animation:fade .5s}.quote blockquote{font:500 clamp(1.5rem,2.5vw,2.35rem)/1.45 var(--font-display);margin:0 0 35px;max-width:900px}.quote strong,.quote span{display:block}.quote span{color:#a9b6cc;font-size:.84rem}.quote-controls{display:flex;gap:8px;position:absolute;right:40px;bottom:35px;color:#fff}.source-note{font-size:.72rem;color:var(--muted);margin:12px 0 0}.center{text-align:center}.logo-marquee{overflow:hidden;margin-top:40px;border-block:1px solid var(--line);background:var(--surface)}.logo-track{display:flex;width:max-content;animation:marquee 28s linear infinite}.logo-track span{width:210px;height:110px;display:grid;place-items:center;font:800 1.05rem var(--font-display);color:#657286;border-right:1px solid var(--line)}.logo-marquee:hover .logo-track{animation-play-state:paused}.career-intro{align-items:start}.perks{margin-top:45px}.perks article{background:var(--alt)}.perks b{font:700 2rem var(--font-display);color:#a9bad0}.jobs-layout,.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:start}.job-types{display:flex;flex-wrap:wrap;padding:0;gap:8px;list-style:none}.job-types li{border:1px solid var(--line);padding:7px 12px;background:var(--surface);font-size:.8rem}.form-card{background:var(--surface);padding:38px;box-shadow:var(--shadow);border-top:4px solid var(--primary)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.form-grid label{font-size:.78rem;font-weight:800;color:#354156}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #cbd5e1;background:#fff;border-radius:3px;color:var(--ink);outline:none}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,74,171,.11)}.check{display:flex;gap:9px;align-items:start;font-weight:500!important}.check input{width:auto;margin-top:5px}.honeypot{position:absolute;left:-9999px}.form-status{font-size:.8rem;margin:12px 0 0}.contact-info h2{font-size:2.6rem}.contact-method{border-top:1px solid var(--line);padding:20px 0}.contact-method span,.contact-method a{display:block}.contact-method span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:800}.contact-method a{font:600 1.03rem var(--font-display);color:var(--primary);margin-top:4px}.contact-method address{font-style:normal;color:#3d4b60}.map-panel{display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:70px}.map-art{height:340px;background-color:#dfe8ef;background-image:linear-gradient(32deg,transparent 48%,#fff 49%,#fff 51%,transparent 52%),linear-gradient(128deg,transparent 48%,#fff 49%,#fff 51%,transparent 52%);background-size:80px 80px;display:grid;place-items:center;align-content:center;color:var(--secondary)}.map-pin{font-size:2.5rem;color:var(--cta)}.map-art b,.map-art small{display:block}.thankyou{min-height:calc(100svh - 116px);display:grid;place-items:center;background:var(--alt);padding:60px 20px}.thankyou-panel{max-width:760px;text-align:center;background:var(--surface);padding:60px;box-shadow:var(--shadow)}.success-mark{display:grid;place-items:center;width:64px;height:64px;background:var(--cta);color:#fff;border-radius:50%;font-size:2rem;margin:0 auto 20px}.thankyou h1{font-size:2.8rem}.footer{background:#04142f;color:#c5cede;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr 1fr 1.2fr;gap:55px}.brand-light strong,.brand-light small{color:#fff}.footer-grid>div>p{font-size:.85rem;max-width:330px;color:#96a4bb}.footer h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin-bottom:18px}.footer-grid>div>a:not(.brand){display:block;font-size:.83rem;margin:9px 0}.footer-grid>div>a:hover{color:#fff}.footer-social{display:flex;gap:8px;margin-top:20px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);padding:22px 0;margin-top:50px;font-size:.72rem}.float-actions{position:fixed;z-index:90;right:18px;bottom:20px;display:flex;flex-direction:column;gap:9px}.float-actions a{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;color:#fff;box-shadow:0 6px 20px rgba(0,0,0,.25);font-weight:800}.float-call{background:var(--primary)}.float-wa{background:var(--cta)}.lightbox{position:fixed;z-index:1000;inset:0;background:rgba(2,10,27,.94);display:none;place-items:center;padding:50px}.lightbox.open{display:grid}.lightbox img{max-height:85vh;max-width:90vw;transition:transform .25s;cursor:zoom-in}.lightbox img.zoomed{transform:scale(1.35);cursor:zoom-out}.lightbox-close,.lightbox-zoom{position:absolute;top:18px;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.35);color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.5rem}.lightbox-close{right:18px}.lightbox-zoom{right:72px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@keyframes fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:1000px){.main-nav{gap:14px;font-size:.75rem}.test-grid{grid-template-columns:repeat(2,1fr)}.cards-3,.gallery-grid.four{grid-template-columns:repeat(2,1fr)}.values-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item.wide{grid-column:1/-1}.stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){:root{--wrap:min(100% - 28px,680px);--section:58px}.utility{height:42px}.social{display:none}.utility-inner{justify-content:center}.utility-contact{gap:13px;font-size:.68rem}.site-header{height:68px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:18px 20px 24px;box-shadow:var(--shadow);align-items:stretch;flex-direction:column;gap:0;max-height:calc(100vh - 110px);overflow:auto}.main-nav.open{display:flex}.main-nav>a:not(.nav-cta),.has-sub>a{padding:13px 4px;border-bottom:1px solid var(--line);display:block}.main-nav .active:after,.main-nav>a:not(.nav-cta):hover:after{display:none}.nav-cta{text-align:center;margin-top:12px}.sub-menu{position:static;opacity:1;visibility:visible;transform:none;width:100%;box-shadow:none;border:0;padding:0 0 0 14px}.sub-menu a{font-size:.72rem}.hero-slider{height:670px;min-height:0}.hero-slide{background-image:linear-gradient(90deg,rgba(3,19,51,.92),rgba(3,19,51,.62)),var(--hero);background-position:62% center}.hero-copy{padding-bottom:55px}.hero-copy h1,.hero-copy h2{font-size:clamp(2.35rem,10vw,3.5rem)}.slider-controls{bottom:24px}.stat-grid{grid-template-columns:1fr 1fr}.stat-grid>div{padding:17px}.split,.about-story,.mission-grid,.service-pillars,.intro-offset,.quality-copy,.qa-flow,.jobs-layout,.contact-grid,.map-panel{grid-template-columns:1fr;gap:36px}.section-head,.gallery-intro,.services-intro,.career-intro,.dark-cta-inner{align-items:start;flex-direction:column}.dark-cta-inner{padding:55px 0;min-height:0}.cards-3{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-item.wide{grid-column:auto}.gallery-item{height:280px}.inner-hero{min-height:410px;padding:75px 0 50px}.year-block{min-height:250px}.process-grid,.perks{grid-template-columns:1fr}.capability,.capability:nth-child(even){grid-template-columns:1fr}.capability:nth-child(even) img{order:0}.capability img{height:230px}.timeline{grid-template-columns:1fr 1fr;row-gap:32px}.quality-metrics{grid-template-columns:1fr}.quality-metrics div{border-right:0;border-bottom:1px solid var(--line)}.test-grid{grid-template-columns:1fr 1fr}.quote-slider{padding:40px 28px 90px}.quote-controls{right:26px}.gallery-grid.four{grid-template-columns:1fr 1fr}.form-card{padding:25px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}}
@media(max-width:520px){.utility-contact a span{font-size:.64rem}.brand strong{font-size:1rem}.hero-slider{height:620px}.stat-grid{grid-template-columns:1fr 1fr}.stat-grid strong{font-size:1.3rem}.stat-grid span{font-size:.62rem}.values-grid,.test-grid,.qa-steps,.gallery-grid.four,.form-grid,.timeline{grid-template-columns:1fr}.capability>div{padding:25px}.quality-metrics{grid-template-columns:1fr}.quote-slider{min-height:440px}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:auto!important}.footer-bottom{flex-direction:column;gap:8px}.float-actions a{width:44px;height:44px}.lightbox{padding:15px}.lightbox img.zoomed{transform:scale(1.1)}.thankyou-panel{padding:38px 22px}.thankyou h1{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Extended service area pages */
.menu-divider{display:block;border-top:1px solid var(--line);margin:8px 0}.intro-offset{display:grid;grid-template-columns:.45fr 1.2fr;gap:8vw;margin-bottom:40px}.intro-offset aside{border-left:3px solid var(--cta);padding-left:25px}.capability-list{display:grid;gap:16px}.capability{display:grid;grid-template-columns:280px 1fr;background:var(--surface);min-height:240px;overflow:hidden}.capability:nth-child(even){grid-template-columns:1fr 280px}.capability:nth-child(even) img{order:2}.capability img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.capability:hover img{transform:scale(1.06)}.capability>div{padding:32px 38px}.capability span{color:var(--primary);font:700 .72rem var(--font-display)}.capability h2{font-size:1.8rem;margin:.5rem 0}.capability p{color:var(--muted);max-width:690px}.related-links{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related-links a{border-top:3px solid var(--primary);padding:24px;background:var(--alt);transition:transform .25s,background .25s}.related-links a:hover{transform:translateY(-5px);background:var(--surface)}.related-links strong,.related-links span{display:block}.related-links strong{font-family:var(--font-display);font-size:1rem}.related-links span{color:var(--muted);font-size:.84rem;margin-top:10px}@media(max-width:800px){.capability,.capability:nth-child(even){grid-template-columns:1fr}.capability:nth-child(even) img{order:0}.capability img{height:230px}.related-links{grid-template-columns:1fr}.intro-offset{grid-template-columns:1fr;gap:36px}}

.service-area-links{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-area-links a{background:var(--surface);border:1px solid var(--line);padding:23px 20px;min-height:150px;transition:transform .25s,box-shadow .25s}.service-area-links a:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-area-links span,.service-area-links strong,.service-area-links small{display:block}.service-area-links span{color:var(--primary);font:700 .72rem var(--font-display)}.service-area-links strong{font:1rem var(--font-display);margin:16px 0 7px}.service-area-links small{color:var(--muted);font-size:.76rem}@media(max-width:1000px){.service-area-links{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.service-area-links{grid-template-columns:1fr}}

/* Services and Training source pages */
:root{--nav-panel-shadow:0 12px 35px rgba(0,37,110,.15)}
.main-nav{gap:8px}.main-nav>a,.has-sub>a{padding:10px 8px;font-size:.95rem;letter-spacing:0}
.has-sub{display:flex;align-items:center}.sub-toggle{border:0;background:transparent;color:var(--secondary);width:22px;height:36px;cursor:pointer}.has-sub>a{padding-right:1px}.has-sub.expanded .sub-menu{opacity:1;visibility:visible;transform:none}
.sub-menu{max-height:70vh;overflow-y:auto;box-shadow:var(--nav-panel-shadow)}.sub-menu a{font-size:.9rem;line-height:1.5}.sub-toggle{font-size:1.1rem;flex-shrink:0}.sub-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sub-toggle[aria-expanded="true"]{transform:rotate(180deg)}
.source-hero{min-height:300px;padding-block:70px}.source-hero h1{font-size:2.8rem;max-width:1000px;letter-spacing:0}
.source-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:65px;align-items:start}
.source-sidebar{border-top:3px solid var(--primary);padding-top:20px;position:sticky;top:110px}.source-sidebar h2{font-size:1.2rem}.source-sidebar a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:.85rem}.source-sidebar a[aria-current=page]{color:var(--primary);font-weight:800}
.source-copy{min-width:0}.source-copy h2{font-size:1.7rem;margin:30px 0 17px;letter-spacing:0;line-height:1.4}.source-copy h2:first-child{margin-top:0}.source-copy h3{font-size:1.3rem;letter-spacing:0}.source-copy p,.source-copy li,.source-text{color:var(--ink);line-height:1.85;overflow-wrap:anywhere}.source-copy p{margin:0 0 20px}.source-copy ul,.source-copy ol{padding-left:24px;margin:18px 0}.source-copy li{margin-bottom:10px}.source-copy a{color:var(--primary);text-decoration:underline}.source-continuation{max-width:950px}
.source-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.source-topic{background:var(--surface);border-bottom:3px solid var(--primary);overflow:hidden}.source-topic img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .3s}.source-topic:hover img{transform:scale(1.03)}.source-topic>div{padding:20px}.source-topic h2{font-size:1.2rem;line-height:1.5;margin:9px 0}.source-topic span{color:var(--primary);font-weight:700}.source-related{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:25px}.source-related a{border-bottom:1px solid var(--primary);padding:7px 0;color:var(--primary)}.footer-grid{grid-template-columns:1.3fr .7fr 1fr 1.2fr 1.1fr;gap:28px}.footer-grid>div>a{overflow-wrap:anywhere}
@media(max-width:1100px){.nav-wrap{gap:12px}.source-layout{gap:35px}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.main-nav>a,.has-sub>a{font-size:.95rem;padding:12px}.main-nav .has-sub{display:grid;grid-template-columns:1fr 40px;align-items:center}.main-nav .sub-menu{display:none;grid-column:1/-1;max-height:none}.main-nav .has-sub.expanded .sub-menu{display:flex;flex-direction:column}.sub-toggle{width:40px;height:40px}.source-layout{grid-template-columns:minmax(0,1fr)}.source-sidebar{position:static;display:none}.source-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.source-hero h1{font-size:2.1rem}.source-copy h2{font-size:1.4rem}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{max-height:calc(100dvh - 80px);overflow-y:auto}}
@media(max-width:520px){.source-directory{grid-template-columns:minmax(0,1fr)}.source-hero{min-height:260px;padding-block:55px}.footer-grid{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.source-topic img{transition:none}}

@media(min-width:1101px){.sub-menu{left:0;right:auto;top:100%;z-index:20}.has-sub:last-of-type .sub-menu{left:auto;right:0}.has-sub.expanded{z-index:21}}

@media(min-width:1101px){.main-nav{gap:5px}.main-nav>a,.has-sub>a{font-size:.95rem;padding-inline:7px}.brand{flex-shrink:0}}
@media(max-width:1100px){
  .menu-toggle{display:block;flex-shrink:0}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);padding:16px 20px 24px;box-shadow:var(--nav-panel-shadow);align-items:stretch;flex-direction:column;gap:0;max-height:calc(100dvh - 100px);overflow-y:auto}
  .main-nav.open{display:flex}
  .main-nav>a:not(.nav-cta),.has-sub>a{font-size:1rem;padding:13px 8px;display:block;border-bottom:1px solid var(--line)}
  .main-nav .has-sub{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center}
  .main-nav .sub-menu{display:none;position:static;grid-column:1/-1;opacity:1;visibility:visible;transform:none;width:100%;max-height:none;box-shadow:none;border:0;padding:0 0 0 12px}
  .main-nav .has-sub.expanded .sub-menu{display:flex;flex-direction:column}
  .sub-menu a{font-size:.95rem;padding:12px 10px}
  .sub-toggle{width:44px;height:44px}
  .nav-cta{text-align:center;margin-top:14px;font-size:1rem}
  .main-nav .active:after,.main-nav>a:not(.nav-cta):hover:after{display:none}
}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Shared header URLs resolve from this stylesheet, including nested pages. */
.brand-logo{width:140px;height:66px;object-fit:contain}.brand-light{width:170px;padding:8px}.brand-light .brand-logo{width:154px;height:106px}.site-header .brand{flex-shrink:0}@media(min-width:1101px){.main-nav{gap:5px}}@media(max-width:800px){.brand-logo{width:110px;height:60px}}

/* Content tracks must shrink without crowding neighboring columns. */
.wrap>*{min-width:0}
.dark-cta-inner>.btn,.section-head>.text-link{flex-shrink:0}
.dark-cta-inner{padding-block:42px}
.breadcrumbs .wrap{height:auto;min-height:42px;flex-wrap:wrap;padding-block:8px}
.source-copy h2,.source-copy h3,.source-hero h1,.capability h2,.related-links strong,.service-area-links strong{overflow-wrap:anywhere}
.source-topic,.source-directory>*,.footer-grid>*,.form-grid>*,.capability>div{min-width:0}
.contact-method a{overflow-wrap:anywhere}
@media(min-width:801px) and (max-width:1100px){
 .split,.quality-copy,.qa-flow,.jobs-layout,.contact-grid,.map-panel{gap:32px}
 .test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .related-links{grid-template-columns:repeat(2,minmax(0,1fr))}
 .section-head,.gallery-intro,.services-intro,.career-intro{align-items:start;flex-direction:column;gap:18px}
 .dark-cta-inner{align-items:start;flex-direction:column;gap:20px}
}
@media(max-width:800px){.dark-cta-inner{padding-block:45px;gap:22px}.section-head,.gallery-intro,.services-intro,.career-intro{gap:18px}}


/* Clearer, more spacious navigation and About page profile layouts. */
@media(min-width:1101px){.main-nav{gap:12px}.main-nav>a:not(.nav-cta),.has-sub>a{padding-inline:5px}.has-sub{gap:3px}.sub-menu{top:calc(100% + 10px);width:310px;padding:12px;border-radius:0 0 var(--radius) var(--radius)}.sub-menu a{padding:12px 14px;border-bottom:0;border-radius:3px;transition:background .18s,color .18s,padding .18s}.sub-menu a:hover{padding-left:18px}.has-sub:has(.sub-menu:hover) .sub-menu{visibility:visible}}
@media(min-width:801px) and (max-width:1200px){.main-nav{gap:7px}.main-nav>a,.has-sub>a{font-size:.88rem;padding-inline:4px}}
.philosophy-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}.philosophy-layout h2{font-size:2.5rem}.philosophy-layout>div:last-child p:last-child{margin-bottom:0;color:var(--muted)}.director-grid{display:grid;gap:34px}.director-profile{display:grid;grid-template-columns:minmax(220px, .36fr) minmax(0,1fr);gap:38px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:34px}.director-profile:last-child{border-bottom:0;padding-bottom:0}.director-profile img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 25%}.director-profile h3{font-size:1.8rem;margin-bottom:18px}.director-profile p:not(.eyebrow){color:var(--muted)}.about-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.about-quote-grid blockquote{margin:0;padding:26px;background:var(--surface);border-top:3px solid var(--primary);font:500 1.05rem/1.65 var(--font-display)}.about-quote-grid cite{display:block;margin-top:20px;color:var(--muted);font:700 .78rem/1.6 var(--font-body);font-style:normal}.language-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.language-grid article{min-height:150px;padding:22px;background:var(--surface);border-bottom:3px solid var(--primary)}.language-grid span{font:700 .75rem var(--font-display);color:var(--primary)}.language-grid h3{margin:24px 0 14px}.language-grid p{margin:0;color:var(--muted);font-size:.91rem;line-height:1.7}@media(max-width:800px){.philosophy-layout,.director-profile{grid-template-columns:1fr;gap:24px}.director-profile img{max-width:360px;aspect-ratio:4/3}.about-quote-grid{grid-template-columns:1fr}.language-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.language-grid{grid-template-columns:1fr}}

/* Page-specific image assignments, relative to this shared stylesheet. */
.page-image-001{--hero:url("../images/photo-001.jpg")}
.page-image-003{--hero:url("../images/photo-003.jpg")}
.page-image-005{--hero:url("../images/photo-005.jpg")}
.page-image-010{--hero:url("../images/photo-010.jpg")}
.page-image-012{--hero:url("../images/photo-012.jpg")}
.page-image-018{--hero:url("../images/photo-018.jpg")}
.page-image-024{--hero:url("../images/photo-024.jpg")}
.page-image-030{--hero:url("../images/photo-030.jpg")}
.page-image-038{--hero:url("../images/photo-038.jpg")}
.page-image-039{--hero:url("../images/photo-039.jpg")}
.page-image-040{--hero:url("../images/photo-040.jpg")}
.page-image-047{--hero:url("../images/photo-047.jpg")}
.page-image-076{--hero:url("../images/photo-076.jpg")}
.page-image-083{--hero:url("../images/photo-083.jpg")}
.page-image-086{--hero:url("../images/photo-086.jpg")}
.page-image-092{--hero:url("../images/photo-092.jpg")}
.page-image-099{--hero:url("../images/photo-099.jpg")}
.page-image-058{--hero:url("../images/photo-058.jpg")}
.page-image-120{--hero:url("../images/photo-120.jpg")}
.page-image-108{--hero:url("../images/photo-108.jpg")}
.page-image-110{--hero:url("../images/photo-110.jpg")}
.page-image-112{--hero:url("../images/photo-112.jpg")}
.page-image-118{--hero:url("../images/photo-118.jpg")}
.page-image-127{--hero:url("../images/photo-127.jpg")}
.page-image-129{--hero:url("../images/photo-129.jpg")}
.page-image-054{--hero:url("../images/photo-054.jpg")}
.page-image-056{--hero:url("../images/photo-056.jpg")}
.page-image-066{--hero:url("../images/photo-066.jpg")}
.page-image-068{--hero:url("../images/photo-068.jpg")}
.page-image-070{--hero:url("../images/photo-070.jpg")}
.page-image-072{--hero:url("../images/photo-072.jpg")}
.page-image-074{--hero:url("../images/photo-074.jpg")}
.subject-photo{width:100%;max-height:360px;object-fit:cover;margin-bottom:28px;aspect-ratio:16/9}.language-grid .subject-photo{height:150px;margin-bottom:20px}.language-grid article{padding:0 0 22px}.language-grid article>span,.language-grid article>h3,.language-grid article>p{margin-left:22px;margin-right:22px}
/* Scrolling testimonials */
.tm-marquee{overflow:hidden;margin-top:1.25rem;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.tm-track{display:flex;gap:1.25rem;width:max-content;animation:tm-scroll 45s linear infinite}
.tm-dup{display:flex;gap:1.25rem}
.tm-marquee:hover .tm-track{animation-play-state:paused}
.tm-card{flex:0 0 clamp(260px,30vw,360px);margin:0;padding:1.5rem;background:var(--surface,#f3f6fb);border-top:3px solid var(--primary,#004AAB);border-radius:12px;box-shadow:0 8px 24px rgba(0,37,110,.08);display:flex;flex-direction:column;justify-content:space-between;gap:1rem}
.tm-card blockquote{margin:0;font-size:1rem;line-height:1.6}
.tm-card figcaption strong{display:block;color:var(--secondary,#00256E)}
.tm-card figcaption span{font-size:.875rem;opacity:.75}
@keyframes tm-scroll{to{transform:translateX(calc(-50% - .625rem))}}
@media (prefers-reduced-motion:reduce){.tm-track{animation:none}.tm-marquee{overflow-x:auto}}
