
/* AVIX Water global responsive optimisation — v43. Loaded last on every page. */
:root{
  --avix-max:1280px;
  --avix-gutter:clamp(16px,3.35vw,48px);
  --avix-mobile-section:clamp(60px,10vw,82px);
}
html{width:100%;max-width:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{width:100%;max-width:100%;overflow-x:clip}
*,*::before,*::after{box-sizing:border-box}
img,svg,video,canvas,picture{max-width:100%}
img,video,svg{height:auto}
button,input,select,textarea{font:inherit}
:is(a,button,input,select,textarea):focus-visible{outline:3px solid currentColor;outline-offset:3px}
:is(.av5-container,.container,.wrap,.avix-footer-shell,.tb-footer-shell){max-width:var(--avix-max)}
:is(p,li,dd,address,figcaption,.avix-footer-contact-block,.avix-footer-office){overflow-wrap:anywhere}
:is(.av5-button,.btn,.avix-utility-btn,.av5-menu,.menu-toggle,button,input,select){min-height:44px}

@media(min-width:1441px){
  :is(.av5-container,.container,.wrap,.avix-footer-shell,.tb-footer-shell){
    width:min(var(--avix-max),calc(100% - 96px))!important;margin-inline:auto!important
  }
}

@media(min-width:861px) and (max-width:1180px){
  :is(.av5-container,.container,.wrap,.avix-footer-shell,.tb-footer-shell){
    width:min(calc(100% - 56px),var(--avix-max))!important
  }
  .avix-principal-hero h1{font-size:clamp(50px,5.7vw,64px)!important}
  :is(.s12-hero-grid,.p3-hero-grid,.co18-hero-grid,.tc-hero-grid,.fp-hero-grid){
    column-gap:clamp(28px,4vw,50px)!important
  }
  .av5-nav{gap:clamp(8px,1.1vw,14px)!important}
  .av5-nav>a:not(.av5-button){font-size:clamp(11px,1vw,13px)!important}
  .av5-nav .av5-button{padding-inline:14px!important}
}

@media(max-width:860px){
  :root{--avix-gutter:clamp(18px,5vw,32px)}
  :is(.av5-container,.container,.wrap,.avix-footer-shell,.tb-footer-shell){
    width:min(calc(100% - (2 * var(--avix-gutter))),var(--avix-max))!important;margin-inline:auto!important
  }

  .av5-topline{
    padding-left:max(8px,env(safe-area-inset-left))!important;
    padding-right:max(8px,env(safe-area-inset-right))!important
  }
  .av5-header{
    padding-left:env(safe-area-inset-left)!important;
    padding-right:env(safe-area-inset-right)!important
  }
  .av5-menu{min-width:46px!important;min-height:46px!important}
  .av5-nav{
    width:min(88vw,420px)!important;max-width:420px!important;
    max-height:100dvh!important;overflow-y:auto!important;overscroll-behavior:contain!important;
    padding-left:max(24px,env(safe-area-inset-left))!important;
    padding-right:max(24px,env(safe-area-inset-right))!important;
    padding-bottom:max(30px,env(safe-area-inset-bottom))!important
  }
  .av5-nav>a{min-height:48px!important}

  /* Principal heroes: desktop remains 600px above this breakpoint. */
  .avix-principal-hero{height:auto!important;min-height:0!important;max-height:none!important}
  :is(.s12-hero-grid,.p3-hero-grid,.co18-hero-grid,.tc-hero-grid,.fp-hero-grid){
    display:grid!important;grid-template-columns:1fr!important;
    height:auto!important;min-height:0!important;max-height:none!important;
    gap:0!important;align-items:start!important
  }
  .avix-principal-hero :is(.s12-hero-copy,.p3-hero-copy,.co18-hero-copy,.tc-hero-copy,.fp-hero-copy){
    width:100%!important;max-width:720px!important;
    padding:clamp(44px,8vw,66px) 0 20px!important;margin:0!important
  }
  .avix-principal-hero h1{
    display:grid!important;gap:.10em!important;width:100%!important;max-width:760px!important;
    margin:0!important;font-size:clamp(44px,8.4vw,58px)!important;
    line-height:.98!important;letter-spacing:-.045em!important
  }
  .avix-principal-hero h1>span{display:block!important;white-space:normal!important}
  .avix-principal-hero h1 .hero-teal{display:inline!important;white-space:normal!important}
  .avix-principal-hero :is(.s12-hero-copy,.p3-hero-copy,.co18-hero-copy,.tc-hero-copy,.fp-hero-copy)>p:not(.av5-eyebrow){
    max-width:680px!important;margin-top:22px!important;font-size:17px!important;line-height:1.58!important
  }
  .avix-principal-hero .hero-lines-3{display:block!important}
  .avix-principal-hero .hero-lines-3>span{display:inline!important;white-space:normal!important}
  .tc-contact-page .contact-with-line,
  .tc-contact-page .contact-with-line .hero-teal{white-space:normal!important}

  .avix-principal-hero :is(.s12-hero-visual,.p3-hero-products,.co18-hero-visual,.team9-hero-art,.avix-utility-visual,.fp-hero-visual){
    width:min(100%,620px)!important;height:auto!important;min-height:0!important;max-height:none!important;
    margin:6px auto 38px!important;padding:0!important;transform:none!important;
    align-self:auto!important;justify-self:center!important;overflow:visible!important
  }
  .science-v12 .s12-hero-visual .s12-science-system-svg{width:min(100%,500px)!important;max-height:none!important}
  .products-v3 .p3-hero-products img{width:min(100%,570px)!important;max-height:none!important}
  .products-v3 .p3-hero-halo{width:min(68vw,390px)!important;height:min(68vw,390px)!important}
  .co18-page .co18-investment-bridge{width:min(100%,570px)!important;max-width:570px!important;transform:none!important}
  .tc-team-page .team9-hero-art img{width:min(100%,470px)!important;max-height:none!important}
  .fp-page .fp-science-map{width:min(100%,520px)!important;max-width:520px!important}
  .tc-contact-page .avix-utility-visual{width:min(100%,500px)!important;height:auto!important;min-height:0!important}
  .tc-contact-page .avix-utility-visual img{width:100%!important;height:auto!important;object-fit:contain!important}

  /* Homepage natural-height mobile/tablet system. */
  .avix-home-hero{height:auto!important;min-height:0!important;max-height:none!important}
  .avix-home-hero>.av5-container:first-child,
  .avix-home-hero .av5-hero-grid{height:auto!important;min-height:0!important;max-height:none!important}
  .avix-home-hero .av5-hero-grid{grid-template-columns:1fr!important;gap:0!important}
  .avix-home-hero .av5-hero-copy{
    width:100%!important;max-width:760px!important;padding:clamp(50px,9vw,72px) 0 20px!important
  }
  .avix-home-hero h1{font-size:clamp(50px,9.2vw,68px)!important;line-height:.95!important;letter-spacing:-.05em!important}
  .avix-home-hero h1>span{white-space:normal!important}
  .avix-home-hero .av5-hero-lead{max-width:680px!important;margin-top:24px!important;font-size:17px!important;line-height:1.58!important}
  .avix-home-hero .av5-hero-bottle{
    width:min(100%,520px)!important;height:auto!important;min-height:0!important;
    margin:8px auto 28px!important;transform:none!important;justify-self:center!important
  }
  .avix-home-hero .av5-hero-bottle img{
    position:relative!important;inset:auto!important;display:block!important;
    width:min(48vw,270px)!important;max-width:270px!important;max-height:none!important;
    margin:0 auto!important;transform:none!important
  }
  .avix-home-hero .sr-hero-proof{
    position:relative!important;inset:auto!important;width:100%!important;
    height:auto!important;min-height:0!important;margin:0!important
  }
  .avix-home-hero .sr-hero-proof-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;height:auto!important;min-height:0!important
  }
  .avix-home-hero .sr-hero-proof-grid article{min-height:112px!important;padding:20px!important}

  /* Section rhythm and responsive cards. */
  :is(.av5-section,.co18-section,.tc-contact-path,.tc-contact-main,.team9-founder-section,.team9-avix-team,.team9-build,.fp2-profile,.fp2-water,.fp-ventures,.fp-career-strip){
    padding-top:var(--avix-mobile-section)!important;padding-bottom:var(--avix-mobile-section)!important
  }
  :is(.av5-section-head,.s12-section-head,.p3-section-head,.co18-heading,.contact-heading-v210){gap:22px!important}
  :is(.av5-section h2,.s12-section-head h2,.p3-section-head h2,.co18-heading h2,.tc-contact-main h2,.fp-page .av5-section h2){
    font-size:clamp(38px,7vw,50px)!important;line-height:1.02!important;
    letter-spacing:-.04em!important;text-wrap:balance
  }

  :is(
    .av5-evidence-grid,.sr-standard-grid,.av5-products-grid,.sr-readiness-track,
    .sr-protect-grid,.sr-product-grid,.inv5-packaging-grid,.sr-value-grid,
    .co18-proof-grid,.co18-build-grid,.co18-market-grid,.co18-partner-grid,
    .team9-team-grid,.team9-build-grid,.fp-proof-grid,.fp2-water-grid,.fp-venture-grid
  ){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}

  :is(.sr-split,.sr-split--balanced,.av5-cta-grid,.co18-prefooter-grid,.tc-prefooter-grid,.fp-cta-grid){
    grid-template-columns:1fr!important;gap:28px!important
  }

  .tc-contact-main .tc-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
  .tc-contact-main :is(input,select,textarea){width:100%!important;font-size:16px!important}

  /* Footer tablet behaviour. */
  .avix-footer-shell{
    padding-left:max(0px,env(safe-area-inset-left))!important;
    padding-right:max(0px,env(safe-area-inset-right))!important;
    padding-bottom:max(18px,env(safe-area-inset-bottom))!important
  }
  .avix-footer-top{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px 28px!important}
  .avix-footer-brand{grid-column:1/-1!important}
  .avix-footer-brand>p{max-width:560px!important}
  .avix-footer-contact{grid-column:1/-1!important}
  .avix-footer-bottom{gap:14px!important}

  /* Utility pages: 390px desktop system preserved above 860px. */
  .avix-utility-v40 .avix-utility-hero{height:auto!important;min-height:0!important}
  .avix-utility-v40 .avix-utility-hero-grid{
    height:auto!important;min-height:0!important;padding:clamp(42px,8vw,64px) 0!important
  }
  .avix-utility-v40 .avix-utility-hero h1{font-size:clamp(38px,7.5vw,48px)!important}
  .avix-utility-v40 .avix-utility-body{padding:var(--avix-mobile-section) 0!important}
  .avix-utility-prose{max-width:100%!important}
  .avix-utility-prose h2{font-size:clamp(30px,6vw,39px)!important}
  .avix-utility-cta{grid-template-columns:1fr!important;gap:24px!important}
}

@media(max-width:620px){
  :root{--avix-gutter:clamp(15px,4.5vw,22px);--avix-mobile-section:clamp(54px,13vw,72px)}
  :is(.av5-container,.container,.wrap,.avix-footer-shell,.tb-footer-shell){
    width:min(calc(100% - (2 * var(--avix-gutter))),var(--avix-max))!important
  }
  .av5-topline-centre{
    width:100%!important;max-width:100%!important;gap:clamp(3px,1.5vw,7px)!important;
    justify-content:center!important;white-space:nowrap!important
  }
  .av5-topline-centre span{font-size:clamp(6.8px,2.05vw,8.4px)!important;letter-spacing:.04em!important}
  .av5-topline-centre i{margin-inline:clamp(3px,1.1vw,6px)!important}
  .av5-brand img{max-width:min(44vw,170px)!important;height:auto!important}

  .avix-home-hero .av5-hero-copy{padding-top:44px!important}
  .avix-home-hero h1{font-size:clamp(43px,12.4vw,58px)!important;gap:.035em!important}
  .avix-home-hero .av5-hero-lead{font-size:16px!important;line-height:1.56!important}
  .avix-home-hero .av5-actions,
  .avix-principal-hero .av5-actions{
    display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:10px!important
  }
  .avix-home-hero .av5-button,
  .avix-principal-hero .av5-button{width:100%!important;min-height:52px!important}
  .avix-home-hero .av5-hero-bottle img{width:min(54vw,230px)!important;max-width:230px!important}
  .avix-home-hero .sr-hero-proof-grid{grid-template-columns:1fr!important}
  .avix-home-hero .sr-hero-proof-grid article{min-height:0!important;padding:18px 20px!important}

  .avix-principal-hero :is(.s12-hero-copy,.p3-hero-copy,.co18-hero-copy,.tc-hero-copy,.fp-hero-copy){padding-top:42px!important}
  .avix-principal-hero h1{font-size:clamp(40px,11vw,52px)!important;gap:.09em!important}
  .avix-principal-hero :is(.s12-hero-copy,.p3-hero-copy,.co18-hero-copy,.tc-hero-copy,.fp-hero-copy)>p:not(.av5-eyebrow){
    font-size:16px!important;line-height:1.56!important
  }

  .science-v12 .s12-hero-visual .s12-science-system-svg{width:min(100%,430px)!important}
  .products-v3 .p3-hero-products img{width:min(100%,500px)!important}
  .co18-page .co18-investment-bridge{width:min(100%,500px)!important}
  .tc-team-page .team9-hero-art img{width:min(100%,400px)!important}
  .tc-contact-page .avix-utility-visual{width:min(100%,430px)!important}

  :is(
    .av5-evidence-grid,.sr-standard-grid,.av5-products-grid,.sr-readiness-track,
    .sr-protect-grid,.sr-product-grid,.inv5-packaging-grid,.sr-value-grid,
    .co18-proof-grid,.co18-build-grid,.co18-market-grid,.co18-partner-grid,
    .team9-team-grid,.team9-build-grid,.fp-proof-grid,.fp2-water-grid,.fp-venture-grid,
    .tc-contact-main .tc-form-grid
  ){grid-template-columns:1fr!important}

  :is(
    .sr-standard-grid article,.sr-readiness-track article,.sr-protect-grid article,
    .sr-product-grid article,.sr-value-grid article,.co18-proof-grid article,
    .co18-build-grid article,.co18-market-grid article,.co18-partner-grid article,
    .team9-build-card,.fp-venture-grid article
  ){min-height:0!important;height:auto!important}

  .fp-page .fp-science-map-grid{grid-template-columns:1fr!important;gap:10px!important}
  .fp-page .fp-science-step{min-height:0!important}

  .avix-footer-shell{width:min(calc(100% - 32px),var(--avix-max))!important;padding-top:40px!important}
  .avix-footer-top{grid-template-columns:1fr!important;gap:28px!important}
  .avix-footer-brand,.avix-footer-contact{grid-column:auto!important}
  .avix-footer-contact{grid-template-columns:1fr!important;gap:20px!important}
  .avix-footer-proof{grid-template-columns:1fr!important}
  .avix-footer-proof li{white-space:normal!important}
  .avix-footer-offices{grid-template-columns:1fr!important}
  .avix-footer-bottom{flex-direction:column!important;align-items:flex-start!important}
  .avix-footer-bottom nav{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,max-content))!important;
    justify-content:start!important;gap:9px 18px!important
  }

  .avix-utility-actions{display:grid!important;grid-template-columns:1fr!important}
  .avix-utility-btn{width:100%!important}
}

@media(max-width:390px){
  .avix-home-hero h1{font-size:clamp(40px,12vw,48px)!important}
  .avix-principal-hero h1{font-size:clamp(38px,10.7vw,46px)!important;letter-spacing:-.04em!important}
  :is(.av5-section h2,.s12-section-head h2,.p3-section-head h2,.co18-heading h2,.tc-contact-main h2,.fp-page .av5-section h2){
    font-size:clamp(34px,9.4vw,42px)!important
  }
  .av5-nav{width:92vw!important}
  .avix-footer-bottom nav{grid-template-columns:1fr!important}
}

@media(max-width:350px){
  .av5-topline-centre span:nth-of-type(n+2),.av5-topline-centre i{display:none!important}
  .avix-home-hero h1,.avix-principal-hero h1{
    overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important
  }
}

@media(orientation:landscape) and (max-height:600px) and (min-width:600px) and (max-width:960px){
  .av5-topline{display:none!important}
  .av5-header{top:0!important}
  .avix-home-hero,.avix-principal-hero{padding-top:74px!important}
  .avix-home-hero .av5-hero-grid,
  :is(.s12-hero-grid,.p3-hero-grid,.co18-hero-grid,.tc-hero-grid,.fp-hero-grid){
    grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr)!important;
    gap:26px!important;align-items:center!important
  }
  .avix-home-hero .av5-hero-copy,
  .avix-principal-hero :is(.s12-hero-copy,.p3-hero-copy,.co18-hero-copy,.tc-hero-copy,.fp-hero-copy){
    padding:30px 0 36px!important
  }
  .avix-home-hero h1{font-size:clamp(40px,6vw,52px)!important}
  .avix-principal-hero h1{font-size:clamp(38px,5.4vw,48px)!important}
  .avix-home-hero .av5-hero-bottle,
  .avix-principal-hero :is(.s12-hero-visual,.p3-hero-products,.co18-hero-visual,.team9-hero-art,.avix-utility-visual,.fp-hero-visual){
    margin:20px auto!important;max-height:360px!important
  }
  .avix-home-hero .av5-hero-bottle img{width:min(28vw,190px)!important}
  .science-v12 .s12-hero-visual .s12-science-system-svg,
  .tc-team-page .team9-hero-art img{max-height:320px!important;width:auto!important}
  .tc-contact-page .avix-utility-visual img{max-height:280px!important}
}

@media(hover:none){
  :is(.av5-button,.btn,.avix-utility-btn,.avix-footer-socials a):hover{transform:none!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important
  }
}

@media(prefers-contrast:more){
  :is(.av5-button,.btn,.avix-utility-btn,input,select,textarea){border-width:2px!important}
}


/* ==========================================================================
   V44 MOBILE CASCADE HOTFIX
   The old desktop homepage rule has much higher specificity and was still
   forcing a 360px second hero column below 860px. On a ~421px phone this
   collapsed the copy column to 0px. These selectors deliberately outrank it.
   ========================================================================== */
@media(max-width:860px){
  .home-v8.avix-home-page .av5-hero.avix-home-hero > .av5-container:first-child{
    width:min(calc(100% - 36px),1280px)!important;
    max-width:1280px!important;
    height:auto!important;
    min-height:0!important;
    flex-basis:auto!important;
    margin-inline:auto!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero > .av5-container:first-child > .av5-hero-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    gap:0!important;
    align-items:start!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-hero-copy{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:clamp(48px,9vw,68px) 0 20px!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-eyebrow{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero h1{
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-hero-lead,
  .home-v8.avix-home-page .av5-hero.avix-home-hero .home-hero-lines-3{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .home-hero-lines-3{
    display:block!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .home-hero-lines-3 > span{
    display:inline!important;
    white-space:normal!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-hero-bottle{
    grid-column:1!important;
    width:100%!important;
    max-width:520px!important;
    height:auto!important;
    min-height:0!important;
    margin:12px auto 30px!important;
    transform:none!important;
    justify-self:center!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-hero-bottle img{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    bottom:auto!important;
    width:min(48vw,260px)!important;
    max-width:260px!important;
    max-height:none!important;
    margin:0 auto!important;
    transform:none!important;
    object-fit:contain!important;
  }

  /* Normal prose should never split ordinary words letter-by-letter. */
  :is(p,li,dd,address,figcaption){
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }

  a{
    overflow-wrap:break-word;
  }
}

@media(max-width:620px){
  .home-v8.avix-home-page .av5-hero.avix-home-hero > .av5-container:first-child{
    width:min(calc(100% - 28px),1280px)!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-hero-copy{
    padding-top:42px!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-eyebrow{
    font-size:clamp(10px,2.7vw,11px)!important;
    line-height:1.35!important;
    letter-spacing:.10em!important;
  }

  .home-v8.avix-home-page .av5-hero.avix-home-hero .av5-hero-bottle img{
    width:min(52vw,220px)!important;
    max-width:220px!important;
  }
}

@media(max-width:390px){
  .home-v8.avix-home-page .av5-hero.avix-home-hero > .av5-container:first-child{
    width:min(calc(100% - 24px),1280px)!important;
  }
}


/* ==========================================================================
   AVIX global footer refinement — v45
   Shorter brand line and quieter telephone hierarchy.
   ========================================================================== */
.avix-global-footer .avix-footer-tagline{
  max-width:520px!important;
}

.avix-global-footer .avix-footer-tagline>span{
  display:block!important;
  white-space:normal!important;
}

.avix-global-footer .avix-footer-phones a{
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:500!important;
  letter-spacing:.005em!important;
}

/* Keep the white LANDLINE / MOBILE labels clearly distinct. */
.avix-global-footer .avix-footer-phones b{
  font-size:10px!important;
  line-height:1.35!important;
}

@media(max-width:620px){
  /* Slightly larger on phones for touch/readability, while still secondary. */
  .avix-global-footer .avix-footer-phones a{
    font-size:11.5px!important;
  }
}


/* AVIX global footer tagline balance — v46 */
.avix-global-footer .avix-footer-tagline{
  max-width:560px!important;
}

.avix-global-footer .avix-footer-tagline-line{
  display:block!important;
  white-space:nowrap!important;
}

@media(max-width:620px){
  .avix-global-footer .avix-footer-tagline-line{
    white-space:normal!important;
  }
}


/* === Founder profile polish v48 === */
.home-v8.fp-page .fp-hero.avix-principal-hero #founder-hero-title{
  max-width:780px!important;
}
.home-v8.fp-page .fp-hero.avix-principal-hero #founder-hero-title span:last-child{
  color:var(--aqua)!important;
}
.home-v8.fp-page .fp-hero.avix-principal-hero .fp-hero-copy>.fp-hero-lead{
  max-width:620px!important;
  margin-top:22px!important;
}

.fp2-profile .av5-section-head{
  margin-bottom:46px!important;
}
.fp2-profile .av5-section-head>.fp2-section-intro{
  max-width:510px!important;
  color:#477d8b!important;
  font-size:.96rem!important;
  line-height:1.6!important;
}
.fp2-section-intro span{display:block;}

.fp2-profile-card{
  display:block!important;
  min-height:0!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(15,31,36,.095)!important;
}
.fp2-profile-head{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:22px!important;
  padding:29px 34px 26px!important;
  background:#152d34!important;
  color:#fff!important;
}
.fp2-profile-head h3{
  margin-top:8px!important;
  font-size:clamp(2.3rem,3.05vw,3.25rem)!important;
}
.fp2-profile-main{
  display:grid!important;
  grid-template-columns:252px minmax(0,1fr)!important;
  gap:38px!important;
  align-items:start!important;
  padding:34px 36px 36px!important;
}
.fp2-profile-side{
  position:relative!important;
  display:flex!important;
  justify-content:flex-start!important;
}
.fp2-profile-side::before{
  content:"";
  position:absolute;
  left:-36px;
  top:7px;
  width:3px;
  height:88px;
  border-radius:999px;
  background:var(--aqua);
  opacity:.72;
}
.fp2-profile-image-shell{
  display:grid!important;
  gap:14px!important;
  width:252px!important;
}
.fp2-profile-image{
  position:relative!important;
  height:auto!important;
  overflow:hidden!important;
  border:1px solid rgba(15,31,36,.11)!important;
  border-radius:20px!important;
  background:#eef1f2!important;
  box-shadow:0 14px 34px rgba(15,31,36,.10)!important;
}
.fp2-profile-image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  object-position:center!important;
}
.fp2-profile-image-note{
  position:static!important;
  inset:auto!important;
  padding:13px 14px!important;
  border:1px solid rgba(21,45,52,.08)!important;
  border-radius:14px!important;
  background:#0f2025!important;
  backdrop-filter:none!important;
  color:#fff!important;
}
.fp2-profile-image-note span{font-size:.61rem!important;}
.fp2-profile-image-note b{
  margin-top:5px!important;
  font-size:.73rem!important;
  line-height:1.38!important;
}
.fp2-profile-content{
  display:block!important;
  min-width:0!important;
}
.fp2-profile-body{
  display:grid!important;
  gap:18px!important;
  padding:0!important;
}
.fp2-profile-body>p{
  max-width:none!important;
  margin:0!important;
  color:#477d8b!important;
  font-size:1rem!important;
  line-height:1.68!important;
}
.fp2-profile-metrics div{
  padding-top:16px!important;
  padding-bottom:16px!important;
}
.fp2-tags--side{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  width:100%!important;
  margin-top:2px!important;
}
.fp2-tags--side span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:34px!important;
  padding:7px 7px!important;
  text-align:center!important;
  line-height:1.22!important;
  white-space:normal!important;
}
.fp2-tags--side span:last-child{
  grid-column:1 / -1!important;
}
.fp2-logo-marquee{padding:14px 0!important;}

@media(min-width:901px){
  .home-v8.fp-page .fp-hero.avix-principal-hero .fp-hero-copy{
    padding-top:76px!important;
  }
  .fp2-profile .av5-section-head>.fp2-section-intro{
    padding-top:35px!important;
  }
}
@media(max-width:1080px) and (min-width:901px){
  .fp2-profile-main{
    grid-template-columns:226px minmax(0,1fr)!important;
    gap:30px!important;
    padding:30px!important;
  }
  .fp2-profile-image-shell{width:226px!important;}
  .fp2-profile-side::before{left:-30px!important;}
  .fp2-profile-body>p{font-size:1rem!important;}
}
@media(max-width:900px){
  .home-v8.fp-page .fp-hero.avix-principal-hero .fp-hero-copy>.fp-hero-lead{
    max-width:680px!important;
  }
  .fp2-profile .av5-section-head{margin-bottom:34px!important;}
  .fp2-profile .av5-section-head>.fp2-section-intro{max-width:680px!important;}
  .fp2-section-intro span{display:inline;}
  .fp2-section-intro span+span::before{content:" ";}
  .fp2-profile-main{
    grid-template-columns:1fr!important;
    gap:24px!important;
    padding:26px 24px 30px!important;
  }
  .fp2-profile-side{justify-content:flex-start!important;}
  .fp2-profile-side::before{display:none!important;}
  .fp2-profile-image-shell{width:min(100%,300px)!important;}
}
@media(max-width:650px){
  .fp2-profile-head{padding:23px 20px 21px!important;}
  .fp2-profile-head h3{font-size:2.25rem!important;}
  .fp2-profile-main{padding:22px 20px 24px!important;}
  .fp2-profile-image-shell{width:min(100%,270px)!important;}
  .fp2-profile-body>p{font-size:1rem!important;}
}

/* v49 founder profile: capabilities live with the portrait, two per row where possible. */
@media(max-width:900px){
  .fp2-profile-side{display:block!important;}
  .fp2-profile-image-shell{width:min(100%,300px)!important;}
  .fp2-tags--side{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:650px){
  .fp2-profile-image-shell{width:min(100%,270px)!important;}
}
@media(max-width:420px){
  .fp2-tags--side{grid-template-columns:1fr!important;}
  .fp2-tags--side span:last-child{grid-column:auto!important;}
}


/* === v53 global section-intro geometry: stable right column + natural full-width flow === */
/* Desktop rule:
   - keep the original AVIX section-head balance (wide H2 column + independent copy column)
   - preserve a generous gap between H2 and explanatory copy
   - let right-side copy use the full width of its own column
   - no artificial left shift, narrow max-width, transform, or forced line breaking
   - line count is achieved by concise wording and natural wrapping, never by shrinking type */
@media(min-width:901px){
  body.home-v8.avix-home-page :is(.av5-section-head,.sr-need-head,.s12-section-head,.p3-section-head,.co18-section-head,.contact-heading-v210),
  body.home-v8.avix-principal-page :is(.av5-section-head,.sr-need-head,.s12-section-head,.p3-section-head,.co18-section-head,.contact-heading-v210){
    grid-template-columns:minmax(0,1.26fr) minmax(340px,.74fr)!important;
    column-gap:clamp(50px,7vw,92px)!important;
  }

  body.home-v8.avix-home-page :is(.av5-section-head,.sr-need-head,.s12-section-head,.p3-section-head,.co18-section-head,.contact-heading-v210)>p,
  body.home-v8.avix-home-page :is(.av5-section-head,.sr-need-head,.s12-section-head,.p3-section-head,.co18-section-head,.contact-heading-v210)>div:last-child,
  body.home-v8.avix-principal-page :is(.av5-section-head,.sr-need-head,.s12-section-head,.p3-section-head,.co18-section-head,.contact-heading-v210)>p,
  body.home-v8.avix-principal-page :is(.av5-section-head,.sr-need-head,.s12-section-head,.p3-section-head,.co18-section-head,.contact-heading-v210)>div:last-child{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    justify-self:stretch!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
    text-wrap:wrap!important;
  }

  /* Some team headings use a wrapper div on the right. Its paragraph should also fill that column naturally. */
  body.home-v8.avix-principal-page .team9-avix-team .av5-section-head>div:last-child>p{
    width:100%!important;
    max-width:none!important;
    text-wrap:wrap!important;
  }

  /* Commercial copy is plain prose: allow browser-native wrapping across the full right column. */
  .home-v8.co18-page .co18-section-head>.co22-section-copy,
  .home-v8.co18-page .co18-section-head>p{
    width:100%!important;
    max-width:none!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }
}

/* Our Team founder card now uses the same hierarchy as the dedicated Founder Profile card. */
.team9-founder-card{
  display:block!important;
  min-height:0!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(15,31,36,.095)!important;
}
.team9-founder-identity{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:22px!important;
  padding:29px 34px 26px!important;
  background:#152d34!important;
  color:#fff!important;
}
.team9-founder-identity h3{
  margin:0!important;
  font-size:clamp(2.3rem,3.05vw,3.25rem)!important;
}
.team9-founder-main{
  display:grid!important;
  grid-template-columns:252px minmax(0,1fr)!important;
  gap:38px!important;
  align-items:start!important;
  padding:34px 36px 36px!important;
}
.team9-founder-side{
  position:relative!important;
  display:flex!important;
  justify-content:flex-start!important;
}
.team9-founder-side::before{
  content:"";
  position:absolute;
  left:-36px;
  top:7px;
  width:3px;
  height:88px;
  border-radius:999px;
  background:var(--aqua);
  opacity:.72;
}
.team9-founder-photo-shell{
  display:grid!important;
  gap:14px!important;
  width:252px!important;
}
.team9-founder-photo{
  position:relative!important;
  height:auto!important;
  overflow:hidden!important;
  border:1px solid rgba(15,31,36,.11)!important;
  border-radius:20px!important;
  background:#eef1f2!important;
  box-shadow:0 14px 34px rgba(15,31,36,.10)!important;
}
.team9-founder-photo img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  object-position:center!important;
}
.team9-founder-photo-note{
  position:static!important;
  inset:auto!important;
  display:block!important;
  padding:13px 14px!important;
  border:1px solid rgba(21,45,52,.08)!important;
  border-radius:14px!important;
  background:#0f2025!important;
  backdrop-filter:none!important;
  color:#fff!important;
}
.team9-founder-photo-note span{
  display:block!important;
  color:var(--aqua)!important;
  font-size:.61rem!important;
  font-weight:850!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.team9-founder-photo-note b{
  display:block!important;
  margin-top:5px!important;
  color:#fff!important;
  font-size:.73rem!important;
  line-height:1.38!important;
  text-align:left!important;
}
.team9-founder-content{display:block!important;min-width:0!important;}
.team9-founder-body{
  display:grid!important;
  gap:18px!important;
  padding:0!important;
}
.team9-founder-summary{
  max-width:none!important;
  margin:0!important;
  color:#426f7b!important;
  font-size:1rem!important;
  line-height:1.68!important;
}
.team9-founder-tags--side{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  width:100%!important;
  margin-top:2px!important;
}
.team9-founder-tags--side span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:34px!important;
  padding:7px!important;
  text-align:center!important;
  line-height:1.22!important;
  white-space:normal!important;
}
.team9-logo-marquee{padding:14px 0!important;}
.team9-founder-actions{display:none!important;}

@media(max-width:1120px) and (min-width:901px){
  .team9-founder-main{
    grid-template-columns:226px minmax(0,1fr)!important;
    gap:30px!important;
    padding:30px!important;
  }
  .team9-founder-photo-shell{width:226px!important;}
  .team9-founder-side::before{left:-30px!important;}
}
@media(max-width:900px){
  .team9-founder-main{
    grid-template-columns:1fr!important;
    gap:24px!important;
    padding:26px 24px 30px!important;
  }
  .team9-founder-side{display:block!important;}
  .team9-founder-side::before{display:none!important;}
  .team9-founder-photo-shell{width:min(100%,300px)!important;}
  .team9-founder-tags--side{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:650px){
  .team9-founder-identity{padding:23px 20px 21px!important;}
  .team9-founder-identity h3{font-size:2.25rem!important;}
  .team9-founder-main{padding:22px 20px 24px!important;}
  .team9-founder-photo-shell{width:min(100%,270px)!important;}
  .team9-founder-summary{font-size:1rem!important;}
}
@media(max-width:420px){
  .team9-founder-tags--side{grid-template-columns:1fr!important;}
}

.fp2-tags--side span:last-child{grid-column:auto!important;}


/* === v55 GLOBAL OPTICAL SECTION-INTRO SYSTEM ===============================
   Desktop visual rule approved for AVIX:
   - left track is the natural width of the authored H2, not a preset fraction;
   - right copy begins 56px after the visible H2 stop;
   - first right-copy letters align with the top of the H2 letters;
   - right copy fills all remaining width and wraps naturally;
   - typography is never reduced to make the geometry fit.
   Tablet/mobile keep the existing stacked layouts. */
@media (min-width:901px){
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  ){
    display:grid!important;
    grid-template-columns:max-content minmax(0,1fr)!important;
    column-gap:56px!important;
    row-gap:0!important;
    align-items:start!important;
  }

  /* The authored left block is allowed to size itself from the H2 glyph run. */
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child{
    width:max-content!important;
    max-width:none!important;
    min-width:0!important;
  }

  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child>h2{
    width:max-content!important;
    max-width:none!important;
  }

  /* Direct right-side paragraph: 23px compensates for the eyebrow line and font
     ascender geometry so the visible paragraph letters align with the H2 top. */
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>p{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:23px 0 0!important;
    justify-self:stretch!important;
    align-self:start!important;
    transform:none!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }

  /* Team-style headings can use a wrapper on the right. Align the wrapper to
     H2 top, then let its paragraph and supporting content flow normally. */
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child+div{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding-top:23px!important;
    justify-self:stretch!important;
    align-self:start!important;
    transform:none!important;
  }

  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child+div>p:first-child{
    width:100%!important;
    max-width:none!important;
    margin-top:0!important;
    padding-top:0!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }
}

/* Safety valve for compact desktop/laptop widths. Preserve the optical idea
   without allowing a long authored H2 to starve the explanatory column. */
@media (min-width:901px) and (max-width:1180px){
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  ){
    grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)!important;
    column-gap:44px!important;
  }
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child,
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child>h2{
    width:auto!important;
    max-width:100%!important;
  }
}

/* === v56 FINAL GLOBAL SECTION-INTRO ALIGNMENT ==============================
   Approved AVIX rule for standard desktop section introductions:
   - one consistent right-column start across the site (not H2-dependent);
   - right-copy visible letter top aligns optically with H2 visible letter top;
   - right copy uses the full width of its assigned column and wraps naturally;
   - no font shrinking, negative offsets, transforms, or per-section measurement;
   - authored H2 lines remain on the left and mobile/tablet keep natural stacking. */
@media (min-width:901px){
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  ){
    display:grid!important;
    grid-template-columns:minmax(0,.46fr) minmax(0,.54fr)!important;
    column-gap:56px!important;
    row-gap:0!important;
    align-items:start!important;
  }

  /* Undo the v55 max-content / measured-H2 behaviour. */
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child,
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child>h2{
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
  }

  /* The right copy begins at one site-wide x-position. 36px matches the
     eyebrow + spacing geometry so the visible copy letters sit level with
     the visible top of the first H2 line. */
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>p{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:36px 0 0 100px!important;
    justify-self:stretch!important;
    align-self:start!important;
    transform:none!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }

  /* Some team-style section heads use a wrapper div for the right-side copy. */
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child+div{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:36px 0 0 100px!important;
    justify-self:stretch!important;
    align-self:start!important;
    transform:none!important;
  }

  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child+div>p:first-child{
    width:100%!important;
    max-width:none!important;
    margin-top:0!important;
    padding-top:0!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }

  .home-v8.co18-page .co18-section-head>.co22-section-copy,
  .home-v8.co18-page .co18-section-head>p{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    white-space:normal!important;
    text-wrap:wrap!important;
  }
}

/* Compact desktop/laptop: preserve the same visual system without allowing
   either side to become too narrow. */
@media (min-width:901px) and (max-width:1180px){
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  ){
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:40px!important;
  }
}


/* === v57 GLOBAL RIGHT-COPY +100PX CALIBRATION =============================
   Desktop refinement requested after v56: keep the v56 grid and H2 positions,
   but move the visible start of every standard right-side section intro 100px
   to the right. The text still uses the remainder of its column naturally. */
@media (min-width:901px){
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>p{
    padding-left:100px!important;
  }
  body.home-v8[class] :is(
    .av5-section-head,
    .sr-need-head,
    .s12-section-head,
    .p3-section-head,
    .co18-section-head,
    .contact-heading-v210
  )>div:first-child+div{
    padding-left:100px!important;
  }
}
