/* final-whiteversion: calm white/grey homepage with block-specific colour coding */
:root{
  --white:#fff;
  --quiet:whitesmoke;
  --quiet-2:#e8e8e5;
  --copy:#071321;
  --muted:#071321;
  --brand:#4f46e5;
  --action:#F7FF89;
  --b1:#F6D65D;
  --b2:#ef9f5e;
  --b3:#e35d54;
  --b4:#c9a0f0;
  --b5:#9a8ff2;
  --b6:#a9d5f5;
  --b7:#5f9dd6;
  --b8:#909090;
}

html{background:var(--white)}
body.home-page{
  background:var(--white)!important;
  background-image:none!important;
  color:var(--copy);
}
.home-page .wrap{max-width:1580px}

/* Quiet MAAT-like navigation: white field, thin rule, compact controls. */
.home-page .oh-header{
  background:var(--brand)!important;
  color:#fff!important;
  border-bottom:1px solid var(--brand)!important;
  backdrop-filter:blur(14px);
}
.home-page .oh-logo,.home-page .oh-logo .acb-logo-mount,
.home-page .oh-header .acb-logo-mount{color:#fff!important}
.home-page .oh-nav .navbutton,.home-page .oh-social a{color:#fff!important}
.home-page .oh-nav .navitem:hover .navbutton,.home-page .oh-social a:hover{color:var(--action)!important}
.home-page .oh-nav .navitem.is-active>.navbutton{color:var(--brand)!important}
.home-page .oh-sub{background:var(--white)!important;color:var(--copy)!important;border:1px solid var(--quiet-2)!important;box-shadow:0 12px 36px rgba(0,0,0,.06)}
.home-page .oh-sub a:hover{color:var(--brand)!important}
.home-page .mobile-menu-toggle{color:#fff!important;border-color:#fff!important}
.home-page .oh-utility-pill{background:var(--action)!important;color:var(--brand)!important;border-color:var(--action)!important}
.home-page .oh-utility-pill:hover{background:#fff!important;color:var(--brand)!important;border-color:#fff!important}
.home-page .oh-logo .acb-logo-mount{height:48px!important}

/* Hero: almost entirely neutral, with blue reserved for action. */
.home-page .hv-hero{background:var(--white)!important}
.home-page .hv-hero-grid{min-height:clamp(500px,72vh,690px)}
.home-page .hv-hero-copy{background:var(--white)}
.home-page .hv-hero h1{color:var(--copy);max-width:15ch}
.home-page .hv-hero .sub{color:var(--muted)}
.home-page .hv-hero-img{margin:0;min-height:100%;background:var(--quiet)}
.home-page .hv-hero>.wrap{max-width:none!important;padding-right:0!important}
.home-page .hv-hero-img img{filter:none!important}
.home-page .pill,.home-page .hv-hero .pill.alt,.home-page .hv-cta .pill.alt{background:var(--action)!important;color:var(--brand)!important;border-color:var(--action)!important}
.home-page .pill:hover,.home-page .hv-hero .pill.alt:hover,.home-page .hv-cta .pill.alt:hover{background:#fff!important;color:var(--brand)!important;border-color:var(--brand)!important}
.home-page .pill:not(:empty)::after{content:" ↗";font-size:1em;transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.home-page .pill:hover::after{transform:translate(2px,-2px)}

/* Buttons keep their colour; hover motion belongs to the arrow only. */
.home-page :is(.pill,.oh-utility-pill,.caro-nav):hover{
  background:var(--action)!important;color:var(--brand)!important;border-color:var(--action)!important;
}

/* Every phrase in the moving block symptom line inherits its block colour. */
.home-page .hv-marq{background:var(--quiet)!important;color:var(--copy)!important;border-top:1px solid var(--quiet-2);border-bottom:1px solid var(--quiet-2);padding:clamp(14px,1.5vw,22px) 0}
.home-page .hv-marq .track{font-size:clamp(15px,1.65vw,24px)}
.home-page .hv-marq .track em{color:#b7b7b4}
.home-page .hv-marq .track span:nth-of-type(8n+1){color:#a47a00}
.home-page .hv-marq .track span:nth-of-type(8n+2){color:#bd6530}
.home-page .hv-marq .track span:nth-of-type(8n+3){color:#b13e39}
.home-page .hv-marq .track span:nth-of-type(8n+4){color:#8259ac}
.home-page .hv-marq .track span:nth-of-type(8n+5){color:#6257c4}
.home-page .hv-marq .track span:nth-of-type(8n+6){color:#347eac}
.home-page .hv-marq .track span:nth-of-type(8n+7){color:#3674ae}
.home-page .hv-marq .track span:nth-of-type(8n){color:#909090}

/* Editorial white/grey section rhythm. */
.home-page .hv-say,.home-page .oh-proof,.home-page .hv-carousel,.home-page .hv-faq{background:var(--white)!important;background-image:none!important}
.home-page .hv-say{border-bottom:1px solid var(--quiet-2)}
.home-page .hv-say p{color:var(--copy)}
.home-page .hv-say p{max-width:42ch!important;line-height:1.2!important}
.home-page .hv-say .cln{display:inline!important;margin:0!important}
.home-page .hv-say p .hl{color:var(--brand)}
.home-page .hv-eyebrow,.home-page .mono,.home-page .eyebrow{
  display:inline-block;width:max-content;background:var(--brand);color:#fff!important;
  padding:7px 11px;margin:0 0 clamp(16px,2vw,24px);font-size:12px;font-weight:600;line-height:1;letter-spacing:.08em;
}
.home-page .oh-proof-copy{background:var(--quiet)!important;background-image:none!important}
.home-page .oh-proof-image{background:var(--quiet);overflow:hidden}
.home-page .oh-proof-image img{width:100%;height:100%;object-fit:cover;filter:none!important}
.home-page .hv-look{background:var(--quiet)!important;background-image:none!important;color:var(--copy)!important;border-top:1px solid var(--quiet-2);border-bottom:1px solid var(--quiet-2)}
.home-page .hv-look h2{color:var(--copy)!important}
.home-page .hv-look p{color:var(--muted)!important}
.home-page .hv-look .pill.alt{background:var(--action)!important;color:var(--brand)!important;border-color:var(--action)!important}

/* 7+1: colour belongs to the block, never to unrelated panels. */
.home-page .caro-nav{background:var(--white);color:var(--copy);border:1px solid var(--quiet-2)}
.home-page .caro-nav:hover{background:var(--brand);color:#fff;border-color:var(--brand)}
.home-page .ccard{background:var(--white);border:1px solid var(--quiet-2);transition:none}
.home-page .ccard .clabel{align-self:flex-start;padding:5px 9px;background:var(--c);color:#111;font-size:10px;font-weight:600;line-height:1;letter-spacing:.08em;text-transform:uppercase}

/* Services: calm neutrals; brand blue only marks links and actions. */
.home-page main>.hv:not(.hv-hero):has(.hv-offer){background:var(--quiet)!important;background-image:none!important}
.home-page .hv-offer{gap:16px}
.home-page .hv-offer .hv-panel{background:var(--white)!important;color:var(--copy)!important;border:1px solid var(--quiet-2);padding:clamp(26px,3vw,44px)}
.home-page .hv-offer .hv-panel .pe{color:var(--brand)!important}
.home-page .hv-offer .hv-panel .pbody{color:var(--muted)!important}
.home-page .hv-offer .hv-panel .plist li{border-color:var(--quiet-2)!important}
.home-page .hv-offer .hv-panel .plist li strong,.home-page .hv-offer .hv-panel .plist li span{display:block}
.home-page .hv-offer .hv-panel .plist li span{margin-top:5px;color:var(--muted);font-size:.78em;line-height:1.35}
.home-page .hv-offer .hv-panel .pill{background:var(--action)!important;color:var(--brand)!important}

/* FAQ and closing. */
.home-page .hv-faq{border-top:1px solid var(--quiet-2)}
.home-page .hv-faq .faq-list,.home-page .hv-faq .faq-item{border-color:var(--quiet-2)}
.home-page .hv-faq .faq-item .faq-q::after{color:var(--brand)}
html body.home-page .oh-close{background:#F7FF89!important;background-color:#F7FF89!important;background-image:none!important;border-top:0!important;color:var(--copy)!important}
.home-page .oh-close>.wrap{gap:12px!important}
.home-page .oh-close .note{margin:0 0 12px!important}
.home-page .oh-close .pill,.home-page .oh-close .is-outline{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}
.home-page .oh-close .pill:hover,.home-page .oh-close .is-outline:hover{background:#fff!important;color:var(--brand)!important;border-color:var(--brand)!important}

/* Dark footer, matching final-v3. */
.home-page .oh-footer{background:#071321!important;color:#fff!important;border-top:0}
.home-page .oh-footer .acb-logo-mount{color:#fff!important}
.home-page .oh-footer .top,.home-page .oh-footer .bottom{border-color:rgba(255,255,255,.25)!important}
.home-page .oh-footer b,.home-page .oh-footer .col a,.home-page .oh-footer .news p,.home-page .oh-footer .bottom{color:#fff!important}
.home-page .oh-footer .col a:hover{color:var(--b1)!important}
.home-page .oh-newsletter{border-color:rgba(255,255,255,.45)!important}
.home-page .oh-newsletter input,.home-page .oh-newsletter button{color:#fff!important}
.home-page .oh-newsletter button:hover{color:var(--b1)!important}

/* V48 footer structure: message/newsletter first, sitemap second, legal last. */
.acb-footer{padding:clamp(54px,6vw,88px) 0 30px!important}
.acb-footer .foot-lead{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,5vw,78px);padding-bottom:clamp(38px,5vw,68px);border-bottom:1px solid rgba(255,255,255,.25)}
.acb-footer .mark{display:block!important;padding:0!important}
.acb-footer .mark .acb-logo-mount{height:58px!important}
.acb-footer .ack{max-width:29ch;margin:24px 0 0;font-size:clamp(18px,1.55vw,25px);line-height:1.18;color:#fff}
.acb-footer .oh-footer-news{display:block!important;padding:0!important;border:0!important}
.acb-footer .oh-footer-news h3{font-family:var(--sans)!important;font-size:clamp(22px,2vw,30px)!important;font-weight:400;white-space:normal!important}
.acb-footer .oh-footer-news p{font-size:clamp(14px,1vw,17px)!important;max-width:44ch!important;margin:12px 0 18px!important;line-height:1.4!important}
.acb-footer .oh-newsletter{display:flex!important;margin:0!important;max-width:520px}
.acb-footer .top.oh-footer-links{padding-top:clamp(30px,4vw,56px)!important}
.acb-footer .bottom a{color:inherit}
.home-page main>section,.home-page .oh-header,.home-page .oh-footer{background-image:none!important}
.home-page .hv-hero-img,.home-page figure,.home-page img{background-image:none!important}
@media(max-width:700px){.acb-footer .foot-lead{grid-template-columns:1fr}.acb-footer .mark .acb-logo-mount{height:50px!important}}

@media(max-width:860px){
  .home-page .hv-hero-img{margin:0;min-height:0}
  .home-page .oh-header.oh-menu-open{background:var(--brand)!important;color:#fff!important}
  .home-page .oh-header.oh-menu-open .oh-head-right{
    position:fixed!important;inset:0!important;z-index:61!important;
    min-height:100dvh!important;width:100%!important;
    display:flex!important;flex-direction:column!important;
    padding:92px 22px 30px!important;
    background:var(--brand)!important;color:#fff!important;
    overflow-y:auto!important;
  }
  .home-page .oh-header.oh-menu-open .oh-nav{display:flex!important;background:var(--brand)!important;color:#fff!important}
  .home-page .oh-header.oh-menu-open .navitem{border-color:rgba(255,255,255,.25)!important}
  .home-page .oh-header.oh-menu-open .oh-actions{border-color:rgba(255,255,255,.25)!important}
  .home-page .oh-header.oh-menu-open .oh-sub{box-shadow:none!important}
  .home-page .oh-header.oh-menu-open .oh-head-right{animation:menuCalmIn .42s cubic-bezier(.16,1,.3,1)}
  .home-page .oh-header.oh-menu-open .oh-sub{background:transparent!important;border:0!important;color:#fff!important}
  .home-page .oh-header.oh-menu-open .oh-sub a{color:#fff!important}
}
@keyframes menuCalmIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
