/* v2.3.3 — brand integration, legibility and responsive navigation correction */
:root{--io-navy:#0b1d34;--io-gold:#c3a464;--io-cream:#f8f4ec;--io-paper:#fffdfa;--io-ink:#182536}

/* Header: use the supplied full lock-up and never show the hamburger on desktop. */
.public-body .site-header{height:88px!important;min-height:88px!important;padding-left:clamp(1.2rem,3.7vw,4rem)!important;padding-right:clamp(1.2rem,3.7vw,4rem)!important;gap:1.25rem!important}
.public-body .site-header.is-scrolled{height:78px!important;min-height:78px!important}
.public-body .site-header .brand{display:flex!important;align-items:center!important;flex:0 0 auto!important;width:clamp(230px,20.5vw,288px)!important;min-width:0!important;max-width:288px!important;overflow:visible!important}
.public-body .site-header .brand img{display:block!important;width:100%!important;height:auto!important;max-width:none!important;max-height:64px!important;object-fit:contain!important;object-position:left center!important}
.public-body .site-header.is-scrolled .brand img{max-height:56px!important}
.public-body .nav-toggle{display:none!important}
.public-body .site-nav{display:flex!important;position:static!important;align-items:center!important;gap:clamp(.65rem,1vw,1.05rem)!important;margin-left:auto!important}
.public-body .site-nav a{white-space:nowrap!important;color:#26384d!important;font-size:.61rem!important;letter-spacing:.09em!important}
.public-body .site-nav .nav-cta{color:#fff!important;background:var(--io-navy)!important;border-color:var(--io-navy)!important;padding:.8rem .95rem!important}

/* Suppress inherited generic footer styling inside content components. */
.article-footer,.testimonial-card footer,.proof-grid blockquote footer{background:transparent!important;color:inherit!important}
.testimonial-card footer,.proof-grid blockquote footer{display:grid!important;padding:0!important;justify-content:initial!important}

/* Insight article end-state: deliberately separate the light conversion card from navigation. */
.article-footer{display:block!important;width:min(1100px,90vw)!important;margin:0 auto!important;padding:0 0 clamp(4rem,7vw,6.5rem)!important}
.article-context-cta{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:1.75rem!important;padding:clamp(1.8rem,3.5vw,3rem)!important;margin:0 0 1.5rem!important;background:linear-gradient(135deg,#fbf8f2,#f3ebdf)!important;color:var(--io-navy)!important;border:1px solid rgba(11,29,52,.09)!important;border-left:4px solid var(--io-gold)!important;box-shadow:0 22px 55px rgba(11,29,52,.08)!important}
.article-context-cta .eyebrow{color:#8a681d!important}
.article-context-cta h2{grid-column:1/2!important;color:var(--io-navy)!important;font-size:clamp(2rem,3.1vw,3.15rem)!important;line-height:1.02!important;margin:.45rem 0 0!important;max-width:760px!important}
.article-context-cta .button{grid-column:2/3!important;grid-row:1/3!important;align-self:center!important;background:var(--io-navy)!important;color:#fff!important;border:1px solid var(--io-navy)!important;padding:1rem 1.25rem!important;text-decoration:none!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:.68rem!important;font-weight:800!important;white-space:nowrap!important}
.article-context-cta .button:hover{background:var(--io-gold)!important;border-color:var(--io-gold)!important;color:var(--io-navy)!important}
.article-footer>a{display:inline-block!important;margin:.25rem 0 1.5rem!important;color:#72571c!important}
.article-navigation{display:grid!important;grid-template-columns:1fr 1fr!important;margin-top:0!important;background:#fff!important;border:1px solid rgba(11,29,52,.12)!important;border-left:0!important;border-right:0!important}
.article-navigation a{padding:clamp(1.5rem,3vw,2.35rem)!important;color:var(--io-navy)!important;background:#fff!important}
.article-navigation a:hover{background:#f8f4ec!important}
.article-navigation small{color:#8a681d!important}
.article-navigation strong{color:var(--io-navy)!important}

/* Insights landing closing CTA: explicit contrast prevents dark-on-dark button text. */
.ideas-closing{color:#fff!important;background:linear-gradient(135deg,#091a2c,#123451)!important}
.ideas-closing .eyebrow{color:#e1c27d!important}
.ideas-closing h2{color:#fff!important}
.ideas-closing p{color:#d5dee7!important}
.ideas-closing .premium-ghost{color:#fff!important;border:1px solid rgba(255,255,255,.55)!important;background:transparent!important}
.ideas-closing .premium-ghost:hover{color:var(--io-navy)!important;background:#e4c27a!important;border-color:#e4c27a!important}

/* Home V2/V3: make all dark editorial sections explicitly legible. */
.section-ink,.section-ink .section-heading,.section-ink .section-heading.light{color:#fff!important}
.section-ink .section-heading h2{color:#fff!important}
.section-ink .section-heading .eyebrow{color:#e4c77f!important}
.section-ink .section-heading>p{color:#d0d9e2!important}
.section-ink .insight-card h3{color:#fff!important}
.section-ink .insight-card p{color:#d0d9e2!important}
.section-ink .insight-card a{color:#f0d799!important}
.final-cta{color:#fff!important}
.final-cta h2{color:#fff!important}
.final-cta .eyebrow{color:#e4c77f!important}
.final-cta p{color:#d3dce5!important}

/* V2 carousel copy remains readable regardless of per-slide image. */
.executive-motion-carousel .hero-content h1{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.18)!important}
.executive-motion-carousel .hero-kicker{color:#e6ca88!important}
.executive-motion-carousel .hero-lead{color:#eef3f7!important}
.executive-motion-carousel .hero-trust{color:#e3e9ef!important}

/* V3 hero: clean portrait, no book/image overlay competing with the subject. */
.conversion-hero--refined{min-height:660px!important;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)!important;background:linear-gradient(135deg,#fbf8f2 0%,#f5eee4 100%)!important}
.conversion-hero--refined:before{width:440px!important;height:440px!important;right:auto!important;left:-220px!important;top:-200px!important;background:rgba(195,164,100,.09)!important}
.conversion-hero--refined .conversion-hero__copy{padding:clamp(5.4rem,7vw,7.2rem) clamp(2.2rem,5vw,5.6rem)!important}
.conversion-hero--refined h1{font-size:clamp(3.25rem,4.65vw,5.15rem)!important;line-height:.94!important;max-width:790px!important;color:var(--io-navy)!important;letter-spacing:-.038em!important}
.conversion-hero--refined .conversion-hero__copy>p:not(.eyebrow){color:#536170!important;max-width:680px!important;font-size:1.02rem!important;line-height:1.75!important}
.conversion-hero--refined .conversion-hero__visual{padding:0!important;min-height:660px!important;background:var(--io-navy)!important;overflow:hidden!important;isolation:auto!important}
.conversion-hero--refined .conversion-hero__visual:before,.conversion-hero--refined .conversion-hero__visual:after{display:none!important}
.conversion-hero--refined .conversion-hero__portrait img{display:block!important;width:100%!important;height:100%!important;min-height:660px!important;object-fit:cover!important;object-position:var(--conversion-position,72% 14%)!important;filter:none!important}
.conversion-hero--refined .conversion-proof span{background:rgba(255,255,255,.72)!important;color:#344255!important;border-color:rgba(11,29,52,.12)!important}
.conversion-hero--refined .premium-ghost{color:var(--io-navy)!important;border-color:rgba(11,29,52,.45)!important;background:transparent!important}
.conversion-hero--refined .premium-ghost:hover{background:var(--io-navy)!important;color:#fff!important}

/* Footer: the supplied reverse logo and all text must remain visible. */
.public-body .premium-footer{color:#fff!important;background:linear-gradient(145deg,#06111f 0%,#0b233b 100%)!important}
.premium-footer .footer-brand img{display:block!important;width:min(360px,100%)!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:left center!important;margin-bottom:1.35rem!important}
.premium-footer h2{color:#e2c47e!important}
.premium-footer p,.premium-footer a,.premium-footer strong{opacity:1!important}
.premium-footer p{color:#dce5ec!important}
.premium-footer a{color:#f3f6f8!important}
.premium-footer .footer-email{color:#f0d394!important}
.premium-footer .footer-bottom,.premium-footer .footer-bottom span,.premium-footer .footer-bottom a,.premium-footer .footer-cookie-button{color:#c8d3dd!important}

@media(max-width:1180px) and (min-width:951px){
 .public-body .site-header .brand{width:235px!important}
 .public-body .site-nav{gap:.55rem!important}
 .public-body .site-nav a{font-size:.56rem!important;letter-spacing:.07em!important}
 .public-body .site-nav .nav-cta{padding:.72rem .72rem!important}
}

@media(max-width:950px){
 .public-body .site-header{height:76px!important;min-height:76px!important}
 .public-body .site-header.is-scrolled{height:72px!important;min-height:72px!important}
 .public-body .site-header .brand{width:min(255px,72vw)!important;max-width:255px!important}
 .public-body .site-header .brand img{max-height:52px!important}
 .public-body .nav-toggle{display:flex!important;appearance:none!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-width:42px!important;min-height:42px!important;padding:.5rem .25rem!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:5px!important}
 .public-body .nav-toggle span{display:block!important;width:27px!important;height:2px!important;background:var(--io-navy)!important;border-radius:2px!important;margin:0!important}
 .public-body .nav-toggle span:nth-child(2){width:27px!important}
 .public-body .site-header .site-nav{display:none!important;position:fixed!important;top:76px!important;left:0!important;right:0!important;margin:0!important;padding:1rem var(--safe-gutter) 1.5rem!important;flex-direction:column!important;align-items:stretch!important;background:rgba(255,253,250,.995)!important;box-shadow:0 24px 60px rgba(11,29,52,.14)!important}
 .public-body .site-header.is-scrolled .site-nav{top:72px!important}
 .public-body .site-header .site-nav.is-open{display:flex!important}
 .public-body .site-header .site-nav a{width:100%!important;padding:.92rem .15rem!important;border-bottom:1px solid rgba(11,29,52,.08)!important;font-size:.72rem!important;letter-spacing:.105em!important}
 .public-body .site-header .site-nav .nav-cta{margin-top:.7rem!important;text-align:center!important;border-bottom:0!important;color:#fff!important}
 .conversion-hero--refined{grid-template-columns:1fr!important;min-height:0!important}
 .conversion-hero--refined .conversion-hero__copy{padding:5.25rem var(--safe-gutter) 3rem!important}
 .conversion-hero--refined h1{font-size:clamp(2.7rem,8.4vw,3.9rem)!important;line-height:.97!important}
 .conversion-hero--refined .conversion-hero__visual{min-height:520px!important}
 .conversion-hero--refined .conversion-hero__portrait img{min-height:520px!important;object-position:var(--conversion-position,72% 14%)!important}
 .article-context-cta{grid-template-columns:1fr!important}
 .article-context-cta h2,.article-context-cta .button{grid-column:1!important;grid-row:auto!important}
 .article-context-cta .button{width:max-content!important;white-space:normal!important}
}

@media(max-width:650px){
 .public-body .site-header .brand{width:min(230px,72vw)!important}
 .public-body .site-header .brand img{max-height:47px!important}
 .conversion-hero--refined .conversion-hero__copy{padding:4.8rem var(--safe-gutter) 2.5rem!important}
 .conversion-hero--refined h1{font-size:clamp(2.35rem,10.2vw,3rem)!important}
 .conversion-hero--refined .conversion-hero__copy>p:not(.eyebrow){font-size:.91rem!important;line-height:1.62!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .conversion-hero--refined .conversion-proof{display:none!important}
 .conversion-hero--refined .premium-ghost{display:none!important}
 .conversion-hero--refined .conversion-hero__visual,.conversion-hero--refined .conversion-hero__portrait img{min-height:390px!important}
 .article-navigation{grid-template-columns:1fr!important}
 .article-navigation a+a{border-left:0!important;border-top:1px solid rgba(11,29,52,.1)!important}
 .article-navigation .next{text-align:left!important}
 .ideas-closing .premium-ghost{width:max-content!important}
}

/* Admin brand preview keeps the logo system understandable and replaceable. */
.brand-logo-preview-grid{display:grid;grid-template-columns:1.4fr 1.4fr .55fr;gap:1rem;margin:1rem 0 2rem}
.brand-logo-preview-grid>div{min-height:135px;padding:1rem;border:1px solid #ded8cc;background:#fff;display:flex;flex-direction:column;justify-content:center;gap:.75rem;overflow:hidden}
.brand-logo-preview-grid>div.dark{background:#071426}
.brand-logo-preview-grid>div span{font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6d7784}
.brand-logo-preview-grid>div.dark span{color:#d8c185}
.brand-logo-preview-grid img{display:block;max-width:100%;max-height:82px;width:auto;height:auto;object-fit:contain;object-position:left center}
.brand-logo-preview-grid .favicon img{max-width:72px;max-height:72px}
@media(max-width:760px){.brand-logo-preview-grid{grid-template-columns:1fr}.brand-logo-preview-grid>div{min-height:110px}}
