/* Motion tuning: reveal and card effects use 700–850ms with a soft cubic-bezier. */
:root{--motion-soft:cubic-bezier(.2,.8,.2,1);--motion-reveal:760ms;--motion-stagger:90ms}

/* HERO: slow 9s carousel progress, word polish, direct contact links. */
.hero-slide-progress{position:relative;width:62px;height:2px;overflow:hidden;border-radius:2px;background:color-mix(in srgb,var(--muted) 22%,transparent)}
.hero-slide-progress i{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:var(--teal);transition:transform 9s linear}
.hero-slide-progress i.is-running{transition:transform 9s linear}
.hero-direct-contact{display:flex;gap:18px;flex-wrap:wrap;margin-top:15px;font-size:11px}
.hero-direct-contact a{color:var(--muted);text-decoration-color:rgba(20,160,137,.4);text-underline-offset:4px}
.hero-direct-contact a:hover{color:var(--teal)}
.hero-slide h1 em{background:linear-gradient(105deg,currentColor 0%,#65d8bd 40%,currentColor 76%);background-size:220% 100%;background-clip:text;-webkit-background-clip:text;animation:hero-accent-sweep 8s ease-in-out infinite;color:transparent}
@keyframes hero-accent-sweep{0%,72%,100%{background-position:100% 0}84%{background-position:0 0}}

/* SERVICES: connector draws behind numbered cards; bullets arrive in a short stagger. */
.consulting-grid,.service-grid{position:relative}
.consulting-grid::before,.service-grid::before{position:absolute;z-index:0;top:24px;left:13%;width:74%;height:1px;content:"";transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,rgba(19,142,121,.05),rgba(19,142,121,.4),rgba(19,142,121,.05));transition:transform 850ms var(--motion-soft)}
.consulting-grid:has(.shown)::before,.service-grid:has(.shown)::before{transform:scaleX(1)}
.consulting-card,.service-card{position:relative;z-index:1}
.consulting-card ul li{opacity:0;transform:translateY(7px);transition:opacity 550ms var(--motion-soft),transform 650ms var(--motion-soft)}
.consulting-card.shown ul li{opacity:1;transform:none}
.consulting-card.shown ul li:nth-child(1){transition-delay:100ms}.consulting-card.shown ul li:nth-child(2){transition-delay:180ms}.consulting-card.shown ul li:nth-child(3){transition-delay:260ms}

/* WORK: percentage bars draw when their once-only reveal is observed. */
.work-skill-track span{transform:scaleX(0);transform-origin:left center;transition:transform 850ms var(--motion-soft)}
.work-skill.shown .work-skill-track span{transform:scaleX(1)}
.work-metric-note{margin:19px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.case-study-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}
.case-study-card{padding:22px;border:1px solid var(--glass-border);border-radius:14px;background:var(--glass);box-shadow:var(--shadow-soft);transition:transform 650ms var(--motion-soft),opacity 650ms var(--motion-soft),border-color 220ms ease}
.case-study-card:hover{transform:translateY(-4px);border-color:rgba(19,142,121,.35)}
.case-study-card>span,.testimonial-placeholder-grid article>span{color:var(--teal);font-size:9px;font-weight:800;letter-spacing:1.4px}
.case-study-card h3{margin:12px 0;color:var(--ink);font-size:17px}
.case-study-card p{margin:8px 0;color:var(--muted);font-size:12px;line-height:1.6}

/* APPROACH: timeline draws once; each number lights as its card is revealed. */
.trust-grid{position:relative}
.trust-grid::before{position:absolute;z-index:0;top:22px;left:8%;width:84%;height:1px;content:"";transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,transparent,rgba(96,220,188,.78),transparent);transition:transform 900ms var(--motion-soft)}
.trust-grid.is-visible::before{transform:scaleX(1)}
.trust-card{position:relative;z-index:1}
.trust-card>span{transition:background 650ms var(--motion-soft),box-shadow 650ms var(--motion-soft),transform 650ms var(--motion-soft)}
.trust-card.shown>span{transform:scale(1.04);box-shadow:0 0 0 6px rgba(96,220,188,.09)}
.client-strip{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;margin-top:60px;padding:20px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.client-strip>span,.client-strip small{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:1.3px}
.client-strip>div{display:flex;justify-content:space-around;gap:12px}
.client-strip b{display:grid;min-width:86px;height:42px;place-items:center;border:1px dashed rgba(255,255,255,.24);border-radius:8px;color:rgba(255,255,255,.55);font-size:10px;font-weight:600}
.testimonial-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:45px 0 16px}
.testimonial-heading h3{margin:0;color:var(--ink);font-size:22px}
.testimonial-placeholder-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.testimonial-placeholder-grid::-webkit-scrollbar{display:none}
.testimonial-placeholder-grid .testimonial-card{flex:0 0 100%;margin:0;padding:21px;background:var(--glass);scroll-snap-align:start}
.testimonial-controls{display:flex;gap:8px}
.testimonial-controls button{width:36px;height:36px;border:1px solid var(--glass-border);border-radius:50%;background:var(--glass);color:var(--ink);font-size:16px;cursor:pointer;transition:transform 200ms ease,border-color 200ms ease}
.testimonial-controls button:hover{transform:translateY(-2px);border-color:var(--teal)}
.testimonial-placeholder-grid blockquote{margin:13px 0;color:var(--ink);font-size:15px;line-height:1.5}
.testimonial-placeholder-grid p{margin:0;color:var(--muted);font-size:11px}

/* CONTACT, FAQ, shared micro-interactions. */
.home-contact-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.home-contact-card.project-link::after{position:absolute;z-index:-1;inset:-8px;border-radius:24px;content:"";background:radial-gradient(ellipse,rgba(25,176,145,.13),transparent 70%);opacity:0;animation:contact-halo 4s ease-in-out infinite}
.home-contact-card.project-link:hover::after{opacity:1}
.home-contact-card>b span{display:inline-block;transition:transform 250ms var(--motion-soft)}
.home-contact-card:hover>b span{transform:translate(3px,-3px)}
.faq-list{max-width:850px;margin-inline:auto}
.faq-item{padding:18px 0;border-bottom:1px solid var(--glass-border)}
.faq-item summary{position:relative;padding-right:32px;color:var(--ink);font-size:16px;font-weight:700;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{position:absolute;right:2px;content:"+";color:var(--teal);font-size:21px;transition:transform 220ms ease}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item p{max-width:690px;margin:13px 0 0;color:var(--muted);font-size:14px;line-height:1.7}
.profile-bio-placeholder{max-width:440px;padding:12px;border-left:2px solid var(--teal);background:rgba(19,142,121,.06);font-size:12px!important}
.people-profile>a{color:var(--teal);font-size:12px;font-weight:700}
.site-header .brand-logo{animation:brand-intro 850ms var(--motion-soft) both}
.assistant-toggle{animation:assistant-breathe 4.5s ease-in-out infinite}
.back-top{scroll-behavior:smooth}
.cloud-flow-dot{fill:#74e5c3!important;filter:drop-shadow(0 0 5px rgba(70,224,185,.85))}
.cloud-flow-dot-two{opacity:.72}
@keyframes brand-intro{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes assistant-breathe{0%,100%{box-shadow:0 9px 24px rgba(15,23,42,.18)}50%{box-shadow:0 9px 28px rgba(15,23,42,.2),0 0 0 5px rgba(98,217,186,.08)}}
@keyframes contact-halo{0%,100%{transform:scale(.97);opacity:.35}50%{transform:scale(1.025);opacity:.8}}

/* Colour mode transition; browser fallback switches immediately. */
::view-transition-old(root){animation:none}
::view-transition-new(root){animation:theme-circle-wipe 720ms var(--motion-soft) both}
@keyframes theme-circle-wipe{from{clip-path:circle(0 at var(--theme-wipe-x,50%) var(--theme-wipe-y,20%))}to{clip-path:circle(150vmax at var(--theme-wipe-x,50%) var(--theme-wipe-y,20%))}}

@media(max-width:800px){.case-study-grid{grid-template-columns:1fr 1fr}.client-strip{grid-template-columns:1fr;gap:12px}.client-strip>div{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:600px){.case-study-grid{grid-template-columns:1fr}.consulting-grid::before,.service-grid::before,.trust-grid::before{display:none}.hero-direct-contact{gap:9px 16px;font-size:10px}.hero-slide-progress{width:38px}.testimonial-heading{align-items:flex-start;flex-direction:column;gap:8px}.client-strip b{min-width:68px}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body::after{position:fixed;z-index:2;inset:0;pointer-events:none;content:"";background:radial-gradient(360px circle at var(--cursor-glow-x,-1000px) var(--cursor-glow-y,-1000px),rgba(66,190,164,.045),transparent 72%)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}.hero-slide h1 em{animation:none;background:none;color:var(--teal)}.hero-slide-progress{display:none}.consulting-grid::before,.service-grid::before,.trust-grid::before{transform:none}.consulting-card ul li{opacity:1;transform:none}.work-skill-track span{transform:scaleX(1)}.assistant-toggle,.site-header .brand-logo,.home-contact-card.project-link::after{animation:none}}

/* Palette: pale green surfaces, near-black structure, and clear green accents. */
:root{--navy:#080b08;--navy2:#121812;--ink:#090d09;--muted:#465348;--teal:#b1edba;--teal-dark:#347746;--pale:#e0f3e3;--line:rgba(13,31,16,.14);--paper:rgba(255,255,255,.82);--soft:#edf7ee;--glass:rgba(248,253,248,.88);--glass-raised:#f8fdf8;--glass-border:rgba(19,48,25,.14);--glass-highlight:rgba(225,245,228,.85);--shadow-soft:0 16px 42px rgba(18,45,22,.09);--shadow-raised:0 22px 54px rgba(18,45,22,.15);--success:#4d995d}
html[data-theme="light"]{--navy:#080b08;--navy2:#121812;--ink:#090d09;--muted:#465348;--teal:#b1edba;--teal-dark:#347746;--pale:#e0f3e3;--line:rgba(13,31,16,.14);--soft:#edf7ee;--glass:rgba(248,253,248,.88);--glass-raised:#f8fdf8;--glass-border:rgba(19,48,25,.14);--glass-highlight:rgba(225,245,228,.85)}
html[data-theme="dark"]{--navy:#050705;--navy2:#0c110d;--ink:#eef7ef;--muted:#b0c1b1;--teal:#b1edba;--teal-dark:#9bdca7;--pale:#17251a;--line:rgba(221,242,223,.16);--paper:rgba(255,255,255,.055);--soft:#0a0e0a;--glass:rgba(20,27,20,.92);--glass-raised:#1b241b;--glass-border:rgba(221,242,223,.14);--glass-highlight:rgba(197,231,201,.1);--shadow-soft:0 18px 48px rgba(0,0,0,.3);--shadow-raised:0 24px 60px rgba(0,0,0,.42)}
html body{background:#edf7ee;color:#090d09}
html body::before{background:radial-gradient(ellipse at 12% 3%,rgba(155,222,166,.25),transparent 36%),radial-gradient(ellipse at 88% 22%,rgba(203,239,207,.28),transparent 40%),linear-gradient(145deg,#f6fbf6,#e8f4e9 58%,#f2f9f2)}
html body .site-header{background:rgba(5,9,6,.94)!important;border-color:rgba(190,231,195,.16);box-shadow:0 8px 30px rgba(9,24,11,.12)}
html body .primary-nav,html body .primary-nav a:not(.nav-cta),html body .utility-toggle,html body .menu-toggle{color:#eff8ef}
html body .utility-toggle,html body .menu-toggle{border-color:rgba(190,231,195,.22)}
html body .primary-nav a:not(.nav-cta):hover,html body .primary-nav a.is-active{color:#b1edba}
html body .primary-nav .nav-cta,html body .button-primary{background:#b1edba!important;border-color:#b1edba!important;color:#080d08!important;box-shadow:0 8px 24px rgba(91,163,105,.18)}
html body .primary-nav .nav-cta:hover,html body .button-primary:hover{background:#9bddaa!important;border-color:#9bddaa!important}
html body .section-dark,html body .stats-band,html body .hero.section-dark,html body .why-section,html body .testimonial-section{background:#070a07!important;color:#eff8ef}
html body .hero h1,html body .why-intro h2,html body .testimonial-section h2{color:#f3faf3}
html body .hero h1 em,html body .why-intro h2 em,html body .testimonial-section h2 em{color:#b1edba}
html body .hero .eyebrow,html body .hero-bottom,html body .hero-copy>p,html body .why-intro>p{color:#bfd0c0}
html body .section-soft,html body .people-section,html body .technology-section,html body .consulting-challenges,html body .consulting-services,html body .services-section,html body .projects-section,html body .process-section,html body .home-contact-section,html body .project-page,html body .location-page,html body .faq-section{background:#edf7ee!important;color:#090d09}
html body .about-section{background:#f6fbf6!important;color:#090d09}
html body .section-heading h2,html body .about-copy h2,html body .tech-copy h2,html body .contact-copy h2,html body .people-copy h2,html body .faq-section h2{color:#090d09}
html body .section-heading h2 em,html body .about-copy h2 em,html body .tech-copy h2 em,html body .contact-copy h2 em,html body .people-copy h2 em,html body .faq-section h2 em{color:#347746}
html body .eyebrow-light{color:#405844}
html body .lead{color:#354639!important}
html body .service-card,html body .challenge-card,html body .consulting-card,html body .work-skill,html body .testimonial-card,html body .trust-card,html body .home-contact-card,html body .tech-board,html body .visual-badge,html body .case-study-card,html body .faq-item{background:#f8fdf8;border-color:rgba(19,48,25,.14);color:#090d09}
html body .service-card h3,html body .challenge-card h3,html body .consulting-card h3,html body .work-skill h3,html body .home-contact-card h3,html body .trust-card h3,html body .case-study-card h3,html body .faq-item summary{color:#090d09}
html body .service-card p,html body .challenge-card p,html body .consulting-card p,html body .work-skill p,html body .home-contact-card p,html body .trust-card p,html body .case-study-card p,html body .faq-item p,html body .people-copy>p{color:#465348}
html body .site-footer,html body .site-footer .footer-main{background:#070a07!important;border-color:rgba(190,231,195,.16);color:#eff8ef}
html body .footer-col a,html body .footer-bottom{color:#c0d0c1}
html body .footer-col a:hover,html body .footer-bottom a:hover{color:#b1edba}
html body .about-copy .text-link,html body .people-profile>a,html body .home-contact-direct a{color:#286b39}
html body .home-contact-icon{background:#ddf1e0;color:#286b39}
html body .home-contact-card.project-link{background:linear-gradient(145deg,#fafffa,#e1f3e4)}
html body .home-contact-card.location-link{background:linear-gradient(145deg,#fbfefb,#e8f5e9)}
html body .location-details{background:#090d09;color:#f1f8f1}
html body .location-details h2,html body .location-details .location-detail-link b{color:#f1f8f1}
html body .location-details .button{background:#b1edba!important;color:#080d08!important}
html[data-theme="dark"] body{background:#050705;color:#eef7ef}
html[data-theme="dark"] body::before{background:radial-gradient(ellipse at 12% 4%,rgba(117,185,126,.13),transparent 35%),radial-gradient(ellipse at 88% 24%,rgba(99,148,105,.1),transparent 38%),linear-gradient(145deg,#050705,#0c110c 58%,#050705)}
html[data-theme="dark"] body .section-soft,html[data-theme="dark"] body .people-section,html[data-theme="dark"] body .technology-section,html[data-theme="dark"] body .consulting-challenges,html[data-theme="dark"] body .consulting-services,html[data-theme="dark"] body .services-section,html[data-theme="dark"] body .projects-section,html[data-theme="dark"] body .process-section,html[data-theme="dark"] body .home-contact-section,html[data-theme="dark"] body .project-page,html[data-theme="dark"] body .location-page,html[data-theme="dark"] body .faq-section,html[data-theme="dark"] body .about-section{background:#0a0e0a!important;color:#eef7ef}
html[data-theme="dark"] body .section-heading h2,html[data-theme="dark"] body .about-copy h2,html[data-theme="dark"] body .tech-copy h2,html[data-theme="dark"] body .contact-copy h2,html[data-theme="dark"] body .people-copy h2,html[data-theme="dark"] body .faq-section h2{color:#eef7ef}
html[data-theme="dark"] body .section-heading h2 em,html[data-theme="dark"] body .about-copy h2 em,html[data-theme="dark"] body .tech-copy h2 em,html[data-theme="dark"] body .contact-copy h2 em,html[data-theme="dark"] body .people-copy h2 em,html[data-theme="dark"] body .faq-section h2 em{color:#b1edba}
html[data-theme="dark"] body .eyebrow-light,html[data-theme="dark"] body .lead{color:#b0c1b1!important}
html[data-theme="dark"] body .service-card,html[data-theme="dark"] body .challenge-card,html[data-theme="dark"] body .consulting-card,html[data-theme="dark"] body .work-skill,html[data-theme="dark"] body .testimonial-card,html[data-theme="dark"] body .trust-card,html[data-theme="dark"] body .home-contact-card,html[data-theme="dark"] body .tech-board,html[data-theme="dark"] body .visual-badge,html[data-theme="dark"] body .case-study-card,html[data-theme="dark"] body .faq-item{background:#141b14;border-color:rgba(221,242,223,.14);color:#eef7ef}
html[data-theme="dark"] body .service-card h3,html[data-theme="dark"] body .challenge-card h3,html[data-theme="dark"] body .consulting-card h3,html[data-theme="dark"] body .work-skill h3,html[data-theme="dark"] body .home-contact-card h3,html[data-theme="dark"] body .trust-card h3,html[data-theme="dark"] body .case-study-card h3,html[data-theme="dark"] body .faq-item summary{color:#eef7ef}
html[data-theme="dark"] body .service-card p,html[data-theme="dark"] body .challenge-card p,html[data-theme="dark"] body .consulting-card p,html[data-theme="dark"] body .work-skill p,html[data-theme="dark"] body .home-contact-card p,html[data-theme="dark"] body .trust-card p,html[data-theme="dark"] body .case-study-card p,html[data-theme="dark"] body .faq-item p,html[data-theme="dark"] body .people-copy>p{color:#b0c1b1}
html[data-theme="dark"] body .home-contact-card.project-link,html[data-theme="dark"] body .home-contact-card.location-link{background:#141b14}
html[data-theme="dark"] body .home-contact-icon{background:#1d2d1e;color:#b1edba}
html[data-theme="dark"] body .site-footer,html[data-theme="dark"] body .site-footer .footer-main{background:#050705!important}
html[data-theme="dark"] body .location-details{background:#050705}
html[data-theme="dark"] body .about-copy .text-link,html[data-theme="dark"] body .people-profile>a,html[data-theme="dark"] body .home-contact-direct a{color:#b1edba}
@media(max-width:700px){html body .primary-nav{background:rgba(6,10,7,.98);border-color:rgba(190,231,195,.16)}}
html[data-theme="light"] body .site-header{background:rgba(5,9,6,.94)!important;border-color:rgba(190,231,195,.16)}
html[data-theme="light"] body .section-dark,html[data-theme="light"] body .stats-band,html[data-theme="light"] body .hero.section-dark,html[data-theme="light"] body .why-section,html[data-theme="light"] body .testimonial-section{background:#070a07!important;color:#eff8ef}
html[data-theme="light"] body .section-soft,html[data-theme="light"] body .people-section,html[data-theme="light"] body .technology-section,html[data-theme="light"] body .consulting-challenges,html[data-theme="light"] body .consulting-services,html[data-theme="light"] body .services-section,html[data-theme="light"] body .projects-section,html[data-theme="light"] body .process-section,html[data-theme="light"] body .home-contact-section,html[data-theme="light"] body .project-page,html[data-theme="light"] body .location-page,html[data-theme="light"] body .faq-section{background:#edf7ee!important;color:#090d09}
html[data-theme="light"] body .about-section{background:#f6fbf6!important;color:#090d09}
html[data-theme="light"] body .site-footer,html[data-theme="light"] body .site-footer .footer-main{background:#070a07!important;color:#eff8ef}
html[data-theme="dark"] body .section-dark,html[data-theme="dark"] body .stats-band,html[data-theme="dark"] body .hero.section-dark,html[data-theme="dark"] body .why-section,html[data-theme="dark"] body .testimonial-section{background:#070a07!important;color:#eff8ef}
html[data-theme="dark"] body .site-header{background:rgba(5,9,6,.94)!important}
html[data-theme="light"] body .footer-col a,html[data-theme="light"] body .footer-bottom{color:#c0d0c1}
html[data-theme="light"] body .footer-col a:hover,html[data-theme="light"] body .footer-bottom a:hover{color:#b1edba}

/* Dark theme: true black backgrounds with soft green accents. */
html[data-theme="dark"]{--navy:#000;--navy2:#080808;--soft:#000;--glass:#0b0b0b;--glass-raised:#111;--glass-border:rgba(225,245,226,.14);--glass-highlight:rgba(180,236,187,.1)}
html[data-theme="dark"] body,html[data-theme="dark"] body::before{background:#000!important}
html[data-theme="dark"] body .section-dark,html[data-theme="dark"] body .stats-band,html[data-theme="dark"] body .hero.section-dark,html[data-theme="dark"] body .why-section,html[data-theme="dark"] body .testimonial-section,html[data-theme="dark"] body .site-footer,html[data-theme="dark"] body .site-footer .footer-main,html[data-theme="dark"] body .site-header,html[data-theme="dark"] body .location-details{background:#000!important}
html[data-theme="dark"] body .section-soft,html[data-theme="dark"] body .people-section,html[data-theme="dark"] body .technology-section,html[data-theme="dark"] body .consulting-challenges,html[data-theme="dark"] body .consulting-services,html[data-theme="dark"] body .services-section,html[data-theme="dark"] body .projects-section,html[data-theme="dark"] body .process-section,html[data-theme="dark"] body .home-contact-section,html[data-theme="dark"] body .project-page,html[data-theme="dark"] body .location-page,html[data-theme="dark"] body .faq-section,html[data-theme="dark"] body .about-section{background:#000!important}
html[data-theme="dark"] body .service-card,html[data-theme="dark"] body .challenge-card,html[data-theme="dark"] body .consulting-card,html[data-theme="dark"] body .work-skill,html[data-theme="dark"] body .testimonial-card,html[data-theme="dark"] body .trust-card,html[data-theme="dark"] body .home-contact-card,html[data-theme="dark"] body .tech-board,html[data-theme="dark"] body .visual-badge,html[data-theme="dark"] body .case-study-card,html[data-theme="dark"] body .faq-item,html[data-theme="dark"] body .contact-form,html[data-theme="dark"] body .project-form,html[data-theme="dark"] body .location-map-card,html[data-theme="dark"] body .site-search,html[data-theme="dark"] body .assistant-panel{background:#0b0b0b!important;border-color:rgba(225,245,226,.14);color:#eef7ef}
html[data-theme="dark"] body .solution-map,html[data-theme="dark"] body .solution-map-origin,html[data-theme="dark"] body .solution-map-card,html[data-theme="dark"] body .solution-map-support,html[data-theme="dark"] body .art-node,html[data-theme="dark"] body .art-core{background:#080808!important;color:#eef7ef}
html[data-theme="dark"] body .hero h1,html[data-theme="dark"] body .section-heading h2,html[data-theme="dark"] body .about-copy h2,html[data-theme="dark"] body .tech-copy h2,html[data-theme="dark"] body .contact-copy h2,html[data-theme="dark"] body .people-copy h2,html[data-theme="dark"] body .faq-section h2{color:#eef7ef}
html[data-theme="dark"] body .hero h1 em,html[data-theme="dark"] body h2 em,html[data-theme="dark"] body .stats-grid strong{color:#b1edba}

/* Full-screen photo hero based on the supplied reference layout. */
.hero-photo-page .site-header{position:absolute;inset:0 0 auto;background:rgba(0,0,0,.28)!important;border-color:rgba(255,255,255,.14);box-shadow:none}
.hero-template{position:relative;display:grid;min-height:100svh;place-items:center;overflow:hidden;background:#000!important;color:#fff}
.hero-template .hero-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 53%;filter:brightness(.78);transform:scale(1.015);animation:hero-image-arrive 1.2s ease-out both}
.hero-template::before{position:absolute;z-index:1;inset:0;content:"";background:linear-gradient(90deg,rgba(0,0,0,.63),rgba(0,0,0,.52) 50%,rgba(0,0,0,.56)),linear-gradient(0deg,rgba(0,0,0,.45),transparent 34%,rgba(0,0,0,.2))}
.hero-template-content{position:relative;z-index:2;display:grid;width:min(1500px,calc(100% - 80px));min-height:100svh;place-items:center;padding:120px 0 90px;text-align:center}
.hero-template-copy{max-width:1450px;margin:auto}
.hero-template-copy>.eyebrow{justify-content:center;color:rgba(255,255,255,.84);font-size:11px;letter-spacing:2.6px}
.hero-template-copy>.eyebrow i{background:#b1edba;box-shadow:0 0 0 5px rgba(177,237,186,.2)}
.hero-template-copy h1{margin:26px auto 17px;color:#fff!important;font-size:clamp(40px,5.15vw,82px);font-weight:500;line-height:1.12;letter-spacing:-.045em;text-wrap:balance;animation:hero-title-arrive 950ms .12s var(--motion-soft) both}
.hero-title-break{display:none}
.hero-template-copy>p{max-width:720px;margin:0 auto 27px;color:rgba(255,255,255,.82);font-size:clamp(14px,1.25vw,18px);line-height:1.75;animation:hero-title-arrive 850ms .28s var(--motion-soft) both}
.hero-template-copy>.button{animation:hero-title-arrive 850ms .38s var(--motion-soft) both}
.hero-template-scroll{position:absolute;bottom:34px;left:50%;display:flex;align-items:center;gap:10px;transform:translateX(-50%);color:rgba(255,255,255,.75);font-size:9px;font-weight:700;letter-spacing:1.8px}
.hero-template-scroll span{color:#b1edba;font-size:16px;transition:transform 220ms ease}
.hero-template-scroll:hover span{transform:translateY(4px)}
@keyframes hero-image-arrive{from{opacity:.4;transform:scale(1.055)}to{opacity:1;transform:scale(1.015)}}
@keyframes hero-title-arrive{from{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@media(max-width:700px){.hero-photo-page .site-header{height:68px}.hero-template{min-height:100svh}.hero-template-content{width:calc(100% - 34px);min-height:100svh;padding:108px 0 82px}.hero-template-copy h1{max-width:620px;font-size:clamp(40px,10vw,60px);line-height:1.1}.hero-title-break{display:block}.hero-template-copy>p{max-width:470px;font-size:14px}.hero-template-copy>.eyebrow{font-size:9px;letter-spacing:1.8px}.hero-template-scroll{bottom:24px;font-size:8px}.hero-template .hero-background{object-position:54% center}}
@media(prefers-reduced-motion:reduce){.hero-template .hero-background,.hero-template-copy h1,.hero-template-copy>p,.hero-template-copy>.button{animation:none;transform:none;filter:none;opacity:1}.hero-template-scroll span{transition:none}}

/* Primary actions: black fill with light-green text, then invert on hover. */
html body .button-primary,html body .primary-nav .nav-cta,html body .assistant-toggle,html body .back-top,html body .admin-table button{background:#050705!important;border:1px solid #b1edba!important;color:#b1edba!important;box-shadow:0 8px 24px rgba(10,30,13,.16)}
html body .button-primary:hover,html body .primary-nav .nav-cta:hover,html body .assistant-toggle:hover,html body .back-top:hover,html body .admin-table button:hover{background:#b1edba!important;border-color:#b1edba!important;color:#050705!important}
html body .button-primary:focus-visible,html body .primary-nav .nav-cta:focus-visible,html body .assistant-toggle:focus-visible,html body .back-top:focus-visible{outline:3px solid #6fbd7d;outline-offset:3px}
html body .hero-slide-arrow,html body .testimonial-controls button{background:#050705;border-color:rgba(177,237,186,.55);color:#b1edba}
html body .hero-slide-arrow:hover,html body .testimonial-controls button:hover{background:#b1edba;border-color:#b1edba;color:#050705}

/* Light palette refinement: carry the airy surfaces through every section. */
html[data-theme="light"] body .site-header{background:rgba(246,251,246,.9)!important;border-color:rgba(19,48,25,.12);box-shadow:0 8px 30px rgba(18,45,22,.08)}
html[data-theme="light"] body.hero-photo-page .site-header{background:rgba(246,251,246,.88)!important;border-color:rgba(19,48,25,.12);box-shadow:0 8px 30px rgba(18,45,22,.08)}
html[data-theme="light"] body .primary-nav,html[data-theme="light"] body .primary-nav a:not(.nav-cta),html[data-theme="light"] body .utility-toggle,html[data-theme="light"] body .menu-toggle{color:#142018}
html[data-theme="light"] body .utility-toggle,html[data-theme="light"] body .menu-toggle{border-color:rgba(19,48,25,.2)}
html[data-theme="light"] body .primary-nav a:not(.nav-cta):hover,html[data-theme="light"] body .primary-nav a.is-active{color:#347746}
html[data-theme="light"] body .section-dark,html[data-theme="light"] body .stats-band,html[data-theme="light"] body .why-section,html[data-theme="light"] body .testimonial-section{background:#eaf5eb!important;color:#101710}
html[data-theme="light"] body .hero.section-dark,html[data-theme="light"] body .hero-template{background:#000!important;color:#fff}
html[data-theme="light"] body .hero-template-copy h1{color:#fff!important}
html[data-theme="light"] body .why-intro h2,html[data-theme="light"] body .testimonial-section h2{color:#101710}
html[data-theme="light"] body .why-intro h2 em,html[data-theme="light"] body .testimonial-section h2 em{color:#347746}
html[data-theme="light"] body .why-intro>p,html[data-theme="light"] body .why-item p{color:#465348}
html[data-theme="light"] body .why-item{border-color:rgba(19,48,25,.16)}
html[data-theme="light"] body .site-footer,html[data-theme="light"] body .site-footer .footer-main{background:#e3f0e4!important;border-color:rgba(19,48,25,.14);color:#101710}
html[data-theme="light"] body .footer-col a,html[data-theme="light"] body .footer-bottom{color:#405844}
html[data-theme="light"] body .footer-col a:hover,html[data-theme="light"] body .footer-bottom a:hover{color:#286b39}
html[data-theme="light"] body .button-primary,html[data-theme="light"] body .primary-nav .nav-cta{background:#347746!important;border-color:#347746!important;color:#fff!important;box-shadow:0 8px 24px rgba(52,119,70,.18)}
html[data-theme="light"] body .button-primary:hover,html[data-theme="light"] body .primary-nav .nav-cta:hover{background:#286b39!important;border-color:#286b39!important;color:#fff!important}
html[data-theme="light"] body .location-details{background:#e0f0e2;color:#101710}
html[data-theme="light"] body .location-details h2,html[data-theme="light"] body .location-details .location-detail-link b{color:#101710}
html[data-theme="light"] body .location-details .button{background:#347746!important;color:#fff!important}
@media(max-width:700px){html[data-theme="light"] body .primary-nav{background:rgba(246,251,246,.98);border-color:rgba(19,48,25,.12)}}

/* The original two-column homepage hero, restored with the light green palette. */
html[data-theme="light"] body .hero.section-dark{background:linear-gradient(145deg,#f6fbf6,#eaf5eb 62%,#e3f1e5)!important;color:#101710}
html[data-theme="light"] body .hero.section-dark h1{color:#101710!important}
html[data-theme="light"] body .hero.section-dark h1 em{color:#347746}
html[data-theme="light"] body .hero.section-dark .eyebrow,html[data-theme="light"] body .hero.section-dark .hero-bottom{color:#405844}
html[data-theme="light"] body .hero.section-dark .hero-copy>p,html[data-theme="light"] body .hero.section-dark .hero-note{color:#465348}
html[data-theme="light"] body .hero.section-dark .button-ghost{border-color:rgba(19,48,25,.3);color:#142018}
html[data-theme="light"] body .hero.section-dark .hero-grid{background-image:linear-gradient(rgba(52,119,70,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(52,119,70,.055) 1px,transparent 1px)}
