@font-face{font-family:Manrope;src:url('/assets/fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
:root{--font:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--ink:#18201f;--charcoal:#1c2a26;--cream:#f3f0e9;--paper:#faf8f3;--sage:#e9ece4;--line:#d8d9d0;--white:#fff;--font-text:var(--font);--font-display:var(--font);--card-font:var(--font)}
body,button,input,select,textarea,h1,h2,h3,h4,.carousel-card h3,.carousel-card p,.insight-card h3,.insight-card p{font-family:var(--font)!important}
button,a,input,select,textarea,summary{touch-action:manipulation}
:focus-visible{outline:3px solid #6e7866;outline-offset:4px}
img{max-width:100%}main{min-width:0}button{cursor:pointer}button:disabled{cursor:default}
.global-nav .nav-dropdown{max-width:min(360px,calc(100vw - 32px))}
.site-header .brand{flex-shrink:0}.global-nav .dropdown-toggle{min-width:30px;min-height:40px}

.retained-page{background:var(--paper);color:var(--ink)}
.retained-page h1{font-size:clamp(42px,4.4vw,64px);line-height:1.08;font-weight:500}
.retained-page h2{font-size:clamp(35px,3.55vw,52px);line-height:1.14;font-weight:600}
.retained-page h3{font-size:clamp(20px,1.55vw,23px);line-height:1.3;font-weight:650}
.retained-page main p,.retained-page main li{font-size:16px;line-height:1.66}
.retained-page .v1-section,.retained-page .contact-main{padding-block:80px}
.retained-page .detail-grid{grid-template-columns:1fr;gap:28px}
.retained-page .demo-band{background:var(--sage);color:var(--ink)}
.retained-page .demo-band h2,.retained-page .demo-band .eyebrow{color:var(--ink)}
.retained-page .demo-panel{background:var(--paper);color:var(--ink);border-color:var(--line);border-radius:15px}
.retained-page .demo-panel p{color:var(--ink)}
.retained-page .listing-card,.retained-page .solution-card{background:white;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 24px #18201f12}
.retained-page .contact-hero,.retained-page .article-hero,.retained-page .page-hero{background:var(--charcoal)}
.retained-page .contact-main .contact-intro h2{max-width:550px}
.retained-detail{font-size:13px!important;color:#4c5b52;border-top:1px solid var(--line);padding-top:12px;margin-top:14px}
.historical-preview-note{margin:0;padding:12px 24px;background:var(--sage);font-size:13px}
.forecast-demo{padding:38px;background:var(--paper);border:1px solid var(--line);border-radius:15px;margin-top:35px}
.forecast-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:25px}
.forecast-inputs label{display:flex;flex-direction:column;gap:10px;font-size:14px;font-weight:600}
.forecast-inputs input{width:100%;accent-color:#6e7866;min-height:30px}
.forecast-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.forecast-results div{padding:20px;background:var(--sage);border-radius:10px;min-width:0}.forecast-results small{display:block;font-size:12px}
.forecast-results output{display:block;font-size:clamp(22px,2.3vw,32px);font-weight:650;margin-top:10px}
.forecast-assumptions{font-size:13px!important;color:#4c5b52}
.form-notice,.review-status{padding:15px 20px;background:var(--sage);border:1px solid var(--line);border-radius:10px;font-size:14px!important;line-height:1.6}
@media(max-width:1100px){.site-header .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;min-width:44px;min-height:44px}.site-header .menu-toggle span{display:block;width:24px;height:2px;background:var(--ink)}.global-nav{display:none;position:absolute;inset:88px 0 auto;background:var(--cream);padding:22px 24px;max-height:calc(100dvh - 88px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:6px}.global-nav.is-open{display:flex}.global-nav>a{padding:13px 0}.global-nav .nav-group{flex-wrap:wrap;justify-content:space-between}.global-nav .nav-group>a{padding:13px 0}.global-nav .nav-dropdown{position:static;flex-basis:100%;width:100%;max-width:none;box-shadow:none;border:0;border-top:1px solid var(--line)}.global-nav .nav-contact{width:100%;margin-top:10px}.global-nav .nav-group:hover .nav-dropdown{display:none}.global-nav .nav-group.is-open .nav-dropdown{display:block}}
@media(max-width:700px){.site-header{height:72px;padding-inline:20px}.global-nav{top:72px;max-height:calc(100dvh - 72px)}.container{width:calc(100% - 40px)}.retained-page .detail-grid,.retained-page .contact-main,.retained-page .listing-grid,.retained-page .solution-grid{grid-template-columns:1fr}.retained-page .form-row{grid-template-columns:1fr;gap:0}.retained-page .v1-section{padding-block:65px}.forecast-inputs,.forecast-results{grid-template-columns:1fr}.forecast-demo{padding:22px}.global-footer-main{gap:35px}.retained-page h1,.retained-page h2{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* The shared header uses the Home rules at every route, including tablet menus. */
@media(max-width:1100px){body .site-header .menu-toggle{display:flex!important}body .site-header .global-nav{display:none!important;position:absolute!important;inset:88px 0 auto!important;flex-direction:column!important;align-items:stretch!important;padding:22px 24px!important;gap:6px!important;max-height:calc(100dvh - 88px)!important;overflow-y:auto!important}body .site-header .global-nav.is-open{display:flex!important}body .site-header .nav-group{flex-wrap:wrap!important;justify-content:space-between!important}body .site-header .nav-group>a,body .site-header .global-nav>a:not(.nav-contact){padding:13px 0!important;height:auto!important}body .site-header .nav-dropdown{position:static!important;flex-basis:100%!important;width:100%!important;max-width:none!important;box-shadow:none!important}body .site-header .nav-group:hover .nav-dropdown{display:none!important}body .site-header .nav-group.is-open .nav-dropdown{display:block!important}body .site-header .nav-contact{margin-top:10px!important}}
@media(max-width:700px){body .site-header .global-nav{inset:72px 0 auto!important;max-height:calc(100dvh - 72px)!important}}
/* Dropdown visibility follows the same explicit state as aria-expanded. */
body .site-header .global-nav .nav-group .nav-dropdown{display:none!important}
body .site-header .global-nav .nav-group.is-open .nav-dropdown{display:block!important}

/* Release accessibility corrections: preserve the approved palette, layout and type sizes. */
.value-grid>div>span,.service-description>.eyebrow,.vc-sage .eyebrow,.vc-mini,
.wa-section-head>.eyebrow,.wa-controls-layout .eyebrow,.wa-video-coming .eyebrow,
.wa-problem-number,.wa-shift>small,.wa-scenario-label,.wa-n,.wa-deliver-number,
.wa-control>span,.wa-handover-grid>div>span,.vc-board-cols small,.vc-model-output>span,
.ap-intake-num,.ap-kicker,.ap-artifact-foot,.direct-contact>span,
.article-sidebar,.article-sidebar a,.process-steps li>span{color:#4c5b52!important}
.vc-cta .eyebrow,.vc-cta p,.ap-intake-output strong,.ap-intake-output span,
.ap-stage-copy strong,.review-status{color:var(--ink)!important}
.site-cta>.container>div>p{color:#fff!important}


/* Keep dark CTA text light and use a readable approved charcoal on the muted green finish. */
#start-conversation>.ap-kicker{color:#c5d3cb!important}
.services-finish{background:#697968!important}
.finish-inner>div>p{color:#fff!important}
.solution-number{color:#4c5b52!important}
.skip-link{position:absolute;left:16px;top:-80px;z-index:1000;padding:12px 18px;background:var(--ink);color:white}
.skip-link:focus{top:12px}

/* Owner browser refinements, 20 October: preserve reference source and palette. */
body .site-header .global-nav .nav-contact{min-width:0!important;width:auto!important;gap:18px!important;padding-inline:16px!important;justify-content:center!important}
body .site-header .dropdown-toggle svg{display:none!important}
@media(min-width:1101px){body .site-header .dropdown-toggle{display:none!important}}
@media(max-width:1100px){body .site-header .dropdown-toggle{width:auto!important;min-width:52px!important;min-height:44px!important;font-size:12px!important;font-weight:600!important}body .site-header .global-nav .nav-contact{align-self:flex-start!important;padding-inline:16px!important}}
/* Stronger sage band gives Services a clear edge against the paper Why Vantage. */
body.inset-cards #services{background:var(--sage)!important;border-block:1px solid var(--line);box-shadow:0 0 0 100vmax var(--sage);clip-path:inset(0 -100vmax)}
body.process-service-page .vc-faq{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;border-top:1px solid #b4c0b4!important;padding:20px 0!important}
body.process-service-page .vc-faq:last-child{border-bottom:1px solid #b4c0b4!important}
body.process-service-page .vc-faq summary{background:transparent!important;padding:0!important}
body #industries .industry-preview:hover{transform:translateY(-2px)!important;box-shadow:0 12px 28px #14251a1e!important}
body #industries .industry-preview:hover .approved-industry-card-image{transform:scale(1.03)!important}
.industry-library .carousel-card{padding:10px;background:#fffdf9;border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 30px #213a3817}
.industry-library .carousel-card-body{padding:19px 14px 18px}
.industry-library .approved-industry-card-frame{border-radius:14px}
body .svc-card-image.approved-service-card-frame{height:auto!important;aspect-ratio:4/3;position:relative;overflow:hidden}
body .svc-card-image .card-index{position:absolute;bottom:14px;left:16px;z-index:1;text-shadow:0 1px 6px #000}
body .svc-card-image:has(.approved-service-card-image)::after{display:none}
body .svc-card:hover .approved-service-card-image,body .svc-card:focus-visible .approved-service-card-image{transform:scale(1.03)}
body .insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body .insights-grid .insight-card h3{font-size:clamp(20px,1.55vw,23px)!important;line-height:1.3!important;font-weight:650!important;letter-spacing:-.02em!important}
body .insights-grid .insight-card p{font-size:14px!important;line-height:1.66!important}
body .insights-grid .insight-card .card-action{margin-top:auto;padding-top:18px}
body #insight-library .insight-card{padding:10px;background:#fffdf9;border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 30px #213a3817}
body #insight-library .insight-media{border-radius:14px}
body #insight-library .insight-card>div{padding:19px 14px 18px}
body .about-principles li::before{content:none}
body .page-hero .about-positioning{font-size:11px!important;line-height:1.7;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#d7dfd4;max-width:900px;margin:22px 0}
body:has(.experience-map) .page-hero p:not(.eyebrow):not(.about-positioning){font-size:17px!important;line-height:1.66;max-width:850px}
.experience-intro{max-width:850px;margin-block:28px 45px}
.experience-map{margin:0;padding-top:28px;border-top:1px solid #b4c0b4}
.experience-map figcaption{font-size:clamp(20px,1.55vw,23px);font-weight:650;margin-bottom:35px}
.experience-path{list-style:none;margin:0;padding:0;position:relative}
.experience-path::before{content:"";position:absolute;top:22px;bottom:50px;left:23px;width:1px;background:#809184}
.experience-path li{display:grid;grid-template-columns:48px 1fr;gap:30px;position:relative;padding-bottom:32px}
.experience-path li:last-child{padding-bottom:0}
.experience-number{position:relative;display:grid;place-items:center;width:48px;height:48px;border:1px solid #809184;border-radius:50%;background:var(--sage);font-size:13px;font-weight:700}
.experience-path li>div{border-bottom:1px solid #b4c0b4;padding:6px 0 26px}
.experience-path h3{margin:0 0 12px}
.experience-path p{margin:0;max-width:850px}
@media(max-width:1000px){body .insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body .insights-grid{grid-template-columns:1fr}body .experience-path li{gap:18px}.about-purpose h2{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){body #industries .industry-preview:hover,body #industries .industry-preview:hover .approved-industry-card-image{transform:none!important}}

body #enquiry-form .privacy-consent input[type="checkbox"],body #enquiry-form input[type="checkbox"]{width:20px!important;height:20px!important;min-height:20px!important;flex:0 0 20px;padding:0!important;margin:0 10px 0 0;accent-color:var(--charcoal)}
body #enquiry-form label:has(input[type="checkbox"]){display:flex;align-items:flex-start;gap:10px;border:0!important;padding:0!important;font-size:12px;line-height:1.6}

body .insight-library-label{font-size:11px!important;line-height:1.5!important;letter-spacing:.13em!important;margin:0!important}
