/* ==========================================================================
   EVERKLIN - Final Light Theme

   This is the last global layer in the cascade. It keeps the existing page
   data, imagery, routes, and layouts intact while giving every page family
   one olive, cream, pale-green, and white visual language. The selectors
   below deliberately target known legacy dark bands instead of applying a
   blanket rule to every section.
   ========================================================================== */

:root {
    --ek-white: #ffffff;
    --ek-cream: #faf9f4;
    --ek-soft-cream: #ffffff;
    --ek-mist: #e7f0c8;
    --ek-pale-green: #f1f4e7;
    --ek-pale-green-strong: #e1eec2;
    --ek-line: #d8e0cb;
    --ek-border: var(--ek-line);
    --ek-olive: #8aa63a;
    --ek-olive-dark: #718b31;
    --ek-olive-deep: var(--ek-olive-dark);
    --ek-olive-light: #e7f0c8;
    --ek-olive-cream: var(--ek-pale-green);
    --ek-olive-cream-light: #eaf1cf;
    --ek-ink: #273329;
    --ek-forest: var(--ek-ink);
    --ek-dark: var(--ek-ink);
    --ek-deep: var(--ek-ink);
    --ek-text: #5e6a60;
    --ek-body: var(--ek-text);
    --ek-muted: #6a785b;
    --ek-dark-copy: var(--ek-text);
    --ek-focus-ring: rgba(138, 166, 58, .3);

    /* Exact tokens from the supplied homepage backup. */
    --ch-olive: var(--ek-olive);
    --ch-olive-deep: var(--ek-olive-dark);
    --ch-olive-soft: var(--ek-mist);
    --ch-ink: var(--ek-ink);
    --ch-muted: var(--ek-text);
    --ch-cream: var(--ek-cream);
    --ch-slate: #506979;
    --ch-warm: #b3875e;
    --ch-line: var(--ek-line);

    /* Compatibility values used by the older page-family stylesheets. */
    --everklin-bg-white: var(--ek-white);
    --everklin-bg-cream: var(--ek-cream);
    --everklin-bg-light-green-1: var(--ek-mist);
    --everklin-bg-light-green-2: var(--ek-pale-green);
    --everklin-bg-olive: var(--ek-olive);
    --everklin-bg-forest: var(--ek-pale-green);
    --everklin-cream: var(--ek-cream);
    --everklin-sage: var(--ek-mist);
    --everklin-light-olive: var(--ek-pale-green);
    --everklin-olive: var(--ek-olive);
    --everklin-brown: var(--ek-olive-dark);
    --everklin-ink: var(--ek-ink);
    --dark-green: var(--ek-ink);
    --deep-green: var(--ek-ink);
    --emerald: var(--ek-ink);
    --green-950: var(--ek-ink);
    --green-900: var(--ek-ink);
    --green-800: var(--ek-ink);
    --green-700: var(--ek-olive-dark);
    --green-500: var(--ek-olive);
    --theme-cream: var(--ek-cream);
    --theme-sage: var(--ek-mist);
    --theme-olive: var(--ek-olive);
    --theme-olive-dark: var(--ek-olive-dark);
    --theme-brown: var(--ek-olive-dark);
    --theme-brown-dark: var(--ek-ink);
    --theme-ink: var(--ek-ink);
}

html,
body {
    background: var(--ek-cream);
    color: var(--ek-text);
}

body,
input,
select,
textarea,
button {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* The global shell takes the same quiet cream-to-pale-green treatment as home. */
body.everklin-transformed .site-header,
body.everklin-transformed .site-header.is-scrolled,
body.everklin-transformed .site-header.is-menu-open,
body:has(main) .site-header,
body:has(main) .site-header.is-scrolled,
body:has(main) .site-header.is-menu-open {
    color: var(--ek-ink) !important;
    border-color: var(--ek-line) !important;
    background: linear-gradient(135deg, #f7f5ef 0%, #eef2e3 100%) !important;
}

.site-header .header-technical-cta {
    color: var(--ek-white) !important;
    border-color: var(--ek-olive) !important;
    background: var(--ek-olive) !important;
}

/* Keep existing hero structures and imagery, but make copy treatment common. */
:where(
    .corp-hero,
    .solutions-hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .contact-hero,
    .brewery-hero,
    .wip-hero
) {
    color: var(--ek-ink);
}

:where(
    .corp-hero,
    .solutions-hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .contact-hero,
    .brewery-hero,
    .wip-hero
) :where(h1, h2, h3, strong) {
    color: var(--ek-ink) !important;
}

:where(
    .corp-hero,
    .solutions-hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .contact-hero,
    .brewery-hero,
    .wip-hero
) :where(p, small, .breadcrumb, .breadcrumb a) {
    color: var(--ek-text) !important;
}

/* The homepage commitment remains a clear distinct olive band, never forest. */
.everklin-transformed .corp-home > .corp-commitment,
.corp-home > .corp-commitment {
    background: linear-gradient(135deg, #8fa948, #718b31) !important;
    color: var(--ek-white) !important;
}

.everklin-transformed .corp-home > .corp-commitment :where(h1, h2, h3, h4, strong),
.corp-home > .corp-commitment :where(.corp-section-head--light h2, .corp-section-head--light h2 em) {
    color: var(--ek-white) !important;
}

.everklin-transformed .corp-home > .corp-commitment :where(p, li),
.corp-home > .corp-commitment :where(.corp-section-head--light p) {
    color: rgba(255, 255, 255, .88) !important;
}

.everklin-transformed .corp-home > .corp-commitment :where(.corp-kicker, .corp-commitment__grid > article > span),
.corp-home > .corp-commitment .corp-section-head--light .corp-kicker {
    color: #f1f6d7 !important;
}

.everklin-transformed .corp-home > .corp-commitment .corp-commitment__grid,
.everklin-transformed .corp-home > .corp-commitment .corp-commitment__grid > article {
    border-color: rgba(255, 255, 255, .48) !important;
}

/* Existing closing, process, and conversion bands share the same light wash. */
:where(
    .site-footer,
    .footer-cta,
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal,
    .solutions-selection,
    .solutions-review
) {
    background: var(--ek-pale-green) !important;
    color: var(--ek-ink) !important;
    border-color: var(--ek-line) !important;
}

:where(
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal,
    .solutions-selection,
    .solutions-review
) :where(h1, h2, h3, h4, h5, h6, strong, dt) {
    color: var(--ek-ink) !important;
}

:where(
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal,
    .solutions-selection,
    .solutions-review
) :where(p, li, small, dd) {
    color: var(--ek-text) !important;
}

:where(
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal,
    .solutions-selection,
    .solutions-review
) :where(.corp-kicker, .section-kicker, .inner-kicker, .sn-kicker, .iic-kicker, .eyebrow, .kicker) {
    color: var(--ek-olive-dark) !important;
}

/* The homepage close follows the exact backup's olive CTA tone. */
.corp-home .corp-final {
    background: linear-gradient(135deg, #91a94a, #738c32) !important;
    color: var(--ek-white) !important;
}

.corp-home .corp-final :where(h1, h2, h3, p, .corp-kicker, .corp-btn--outline) {
    color: var(--ek-white) !important;
}

.corp-home .corp-final :where(.corp-kicker, h2 em) {
    color: #f4f8dc !important;
}

.corp-home .corp-final .corp-btn--olive {
    color: var(--ek-white) !important;
    border-color: #698229 !important;
    background: #698229 !important;
}

/* Preserve the supplied homepage's image-card contrast treatment. */
.corp-home .corp-business {
    color: var(--ek-white) !important;
}

.corp-home .corp-business::after {
    background: linear-gradient(0deg, rgba(57, 77, 36, .84), rgba(109, 132, 46, .1) 70%) !important;
}

.corp-home .corp-business:hover::after {
    background: linear-gradient(0deg, rgba(113, 139, 48, .94), rgba(109, 132, 46, .1) 72%) !important;
}

.corp-home .corp-business :where(span, h3, p, b) {
    color: var(--ek-white) !important;
}

.corp-home .corp-business > div > span,
.corp-home .corp-business i {
    color: #edf5d2 !important;
}

.corp-home .corp-impact__tiles a::after {
    background: linear-gradient(0deg, rgba(72, 91, 42, .78), transparent 68%) !important;
}

.corp-home .corp-impact__tiles span {
    color: var(--ek-white) !important;
}

.corp-home .corp-business__metrics {
    border-top-color: var(--ek-line) !important;
    background: rgba(241, 244, 231, .94) !important;
}

.corp-home .corp-business__metrics div {
    border-color: var(--ek-line) !important;
}

.corp-home .corp-business__metrics dt {
    color: var(--ek-ink) !important;
}

.corp-home .corp-business__metrics dd {
    color: var(--ek-text) !important;
}

/* Water information pages: the risk diagnostic is a pale-green section. */
.wip-page {
    --wip-ink: var(--ek-ink);
    --wip-body: var(--ek-text);
    --wip-olive: var(--ek-olive);
    --wip-olive-dark: var(--ek-olive-dark);
    --wip-mist: var(--ek-mist);
    --wip-line: var(--ek-line);
    background: var(--ek-soft-cream);
}

.wip-risks {
    background: var(--ek-pale-green) !important;
}

.wip-risks .wsp-section-head h2,
.wip-risks .wsp-section-head p,
.wip-risks .wsp-section-head .wsp-eyebrow,
.wip-risk-line h3,
.wip-risk-line p,
.wip-risk-line span {
    color: var(--ek-ink) !important;
}

.wip-risk-line,
.wip-risk-line article {
    border-color: var(--ek-line) !important;
}

/* Room Care product hubs retain their content blocks but use the shared wash. */
.room-hub {
    --room-olive: var(--ek-olive);
    --room-olive-soft: var(--ek-mist);
    --room-cream: var(--ek-cream);
    --room-warm: var(--ek-pale-green);
    --room-line: var(--ek-line);
    --room-ink: var(--ek-ink);
    --room-muted: var(--ek-text);
}

.room-product-facts,
.room-product-documents {
    background: var(--ek-pale-green) !important;
    color: var(--ek-ink) !important;
}

.room-product-facts .container > div,
.room-product-documents__grid,
.room-product-documents__grid a {
    border-color: var(--ek-line) !important;
}

.room-product-facts span,
.room-product-documents .iic-kicker,
.room-product-documents__grid span,
.room-product-documents__grid b {
    color: var(--ek-olive-dark) !important;
}

.room-product-facts strong,
.room-product-documents h2,
.room-product-documents__grid a,
.room-product-documents__grid strong {
    color: var(--ek-ink) !important;
}

.room-product-documents header > p:last-child,
.room-product-documents__grid small {
    color: var(--ek-text) !important;
}

.room-product-use thead th {
    color: var(--ek-ink) !important;
    background: var(--ek-pale-green-strong) !important;
}

/* Route-specific I&I hero keeps the photo but uses a soft cream overlay. */
.industrial-institutional-flagship .solution-system-hero {
    color: var(--ek-ink) !important;
    background:
        linear-gradient(90deg, rgba(251, 250, 246, .98) 0%, rgba(248, 247, 241, .92) 43%, rgba(238, 243, 223, .45) 72%, rgba(238, 243, 223, .16) 100%),
        url('/assets/images/hero-slides/institutional-hygiene.jpg') center / cover no-repeat !important;
}

.industrial-institutional-flagship .solution-system-hero :where(.breadcrumb, .breadcrumb a, .breadcrumb strong, p, h1, .solution-hero-tagline, .anchor-eyebrow) {
    color: var(--ek-ink) !important;
}

.industrial-institutional-flagship .solution-system-hero .anchor-eyebrow,
.industrial-institutional-flagship .solution-hero-icons span {
    border-color: var(--ek-line) !important;
    background: rgba(255, 255, 255, .72) !important;
}

.industrial-institutional-flagship .solution-hero-icons .line-svg {
    color: var(--ek-olive-dark) !important;
}

/* Legacy alternate home templates use the same non-dark hero treatment. */
.apex-hero,
.th-hero {
    color: var(--ek-ink) !important;
    background: var(--ek-pale-green) !important;
}

.apex-hero__veil,
.th-hero__shade {
    background: linear-gradient(90deg, rgba(250, 249, 245, .97), rgba(248, 247, 241, .78) 47%, rgba(238, 243, 223, .18) 82%) !important;
}

.apex-hero :where(h1, h2, h3, p, span, small, button),
.th-hero :where(h1, h2, h3, p, span, small, button) {
    color: var(--ek-ink) !important;
}

.apex-hero__control,
.th-hero__rail {
    border-color: var(--ek-line) !important;
    background: rgba(255, 255, 255, .78) !important;
}

/* Contrast pass: light washes always carry ink copy, while olive and image-led
   surfaces retain warm-white copy. This corrects higher-specificity legacy rules
   without altering section structure or content. */
body.everklin-transformed :is(
    .corp-hero,
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .contact-hero,
    .brewery-hero,
    .wip-hero
) :is(h1, h2, h3, h4, h5, h6, strong) {
    color: var(--ek-ink) !important;
}

body.everklin-transformed :is(
    .corp-hero,
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .contact-hero,
    .brewery-hero,
    .wip-hero
) :is(p, li, small, .breadcrumb, .breadcrumb a, .breadcrumb strong, .solutions-crumb, .solutions-crumb a, .solutions-crumb strong) {
    color: var(--ek-text) !important;
}

body.everklin-transformed :is(
    .corp-hero,
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .contact-hero,
    .brewery-hero,
    .wip-hero
) :is(.corp-kicker, .solutions-kicker, .section-kicker, .inner-kicker, .iic-kicker, .sn-kicker, .anchor-eyebrow, .eyebrow, .kicker, h1 em, h2 em) {
    color: var(--ek-olive-dark) !important;
}

/* The homepage hero uses a pale photographic wash, so its eyebrow needs the
   stronger olive token instead of the inherited muted copy colour. */
body.everklin-transformed .corp-home .corp-hero .corp-kicker {
    color: var(--ek-olive-dark) !important;
}

body.everklin-transformed .solutions-selection .solutions-kicker,
body.everklin-transformed .solutions-selection .solutions-selection__steps li > span,
body.everklin-transformed .solutions-review .solutions-kicker {
    color: var(--ek-olive-dark) !important;
}

body.everklin-transformed .solutions-selection :is(h1, h2, h3, h4, strong),
body.everklin-transformed .solutions-review :is(h1, h2, h3, h4, strong) {
    color: var(--ek-ink) !important;
}

body.everklin-transformed .solutions-selection :is(p, li),
body.everklin-transformed .solutions-review :is(p, li) {
    color: var(--ek-text) !important;
}

body.everklin-transformed :is(
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal
) :is(h1, h2, h3, h4, h5, h6, strong, dt) {
    color: var(--ek-ink) !important;
}

body.everklin-transformed :is(
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal
) :is(p, li, small, dd) {
    color: var(--ek-text) !important;
}

body.everklin-transformed :is(
    .corp-final,
    .iic-solution .iic-close,
    .anchor-final-card,
    .wsp-equation,
    .wsp-resources,
    .wsp-final,
    .ft-context,
    .ft-review,
    .brewery-process,
    .brewery-cip-cycle,
    .brewery-selection,
    .brewery-final,
    .sn-final,
    .th-performance,
    .th-final-cta,
    .th-signal
) :is(.corp-kicker, .section-kicker, .inner-kicker, .sn-kicker, .iic-kicker, .anchor-eyebrow, .eyebrow, .kicker) {
    color: var(--ek-olive-dark) !important;
}

/* The homepage closing panel remains an intentional olive exception. */
body.everklin-transformed .corp-home .corp-final :is(h1, h2, h3, h4, h5, h6, p, li, small, .corp-kicker, h2 em) {
    color: var(--ek-white) !important;
}

body.everklin-transformed .corp-home .corp-final :is(.corp-kicker, h2 em) {
    color: #f4f8dc !important;
}

/* Solid olive actions now use warm-white copy; secondary actions stay ink on light. */
body.everklin-transformed :is(
    .site-header .header-technical-cta,
    .corp-btn--olive,
    .footer-support__primary,
    .solutions-button--olive,
    .page-button:not(.page-button--secondary):not(.page-button--outline):not(.page-button--light),
    .brewery-button--primary,
    .wsp-hero .page-button--primary,
    .fpp-page .page-button--primary,
    .contact-button--primary,
    .iic-button:not(.iic-button--outline),
    .sn-button:not(.sn-button--quiet):not(.sn-button--light):not(.sn-button--line),
    .th-button--primary,
    .hero .btn-gold,
    .solutions-promo-card > a
) {
    color: var(--ek-white) !important;
    border-color: var(--ek-olive-dark) !important;
    background: var(--ek-olive-dark) !important;
}

body.everklin-transformed :is(
    .site-header .header-technical-cta,
    .corp-btn--olive,
    .footer-support__primary,
    .solutions-button--olive,
    .page-button:not(.page-button--secondary):not(.page-button--outline):not(.page-button--light),
    .brewery-button--primary,
    .wsp-hero .page-button--primary,
    .fpp-page .page-button--primary,
    .contact-button--primary,
    .iic-button:not(.iic-button--outline),
    .sn-button:not(.sn-button--quiet):not(.sn-button--light):not(.sn-button--line),
    .th-button--primary,
    .hero .btn-gold,
    .solutions-promo-card > a
):is(:hover, :focus-visible) {
    color: var(--ek-white) !important;
    border-color: #698229 !important;
    background: #698229 !important;
}

/* Footer panels are light surfaces, so their labels and navigation must not
   inherit the previous pale-on-pale footer treatment. */
body.everklin-transformed footer.site-footer .footer-support__eyebrow,
body.everklin-transformed footer.site-footer .footer-contact-list span,
body.everklin-transformed footer.site-footer .footer-column .footer-view-all {
    color: var(--ek-olive-dark) !important;
}

body.everklin-transformed footer.site-footer :is(
    .footer-support h2,
    .footer-support p:not(.footer-support__eyebrow),
    .footer-main .footer-grid .footer-column h2,
    .footer-main .footer-grid .footer-column > a,
    .footer-brand-statement,
    .footer-main .footer-contact-list a,
    .footer-main .footer-contact-list p,
    .footer-bottom p,
    .footer-bottom a
) {
    color: var(--ek-text) !important;
}

body.everklin-transformed footer.site-footer :is(
    .footer-support h2,
    .footer-main .footer-grid .footer-column h2
) {
    color: var(--ek-ink) !important;
}

body.everklin-transformed footer.site-footer .footer-support__secondary {
    color: var(--ek-ink) !important;
    border-color: var(--ek-ink) !important;
    background: transparent !important;
}

/* Image-led directories and sustainability statements retain light copy above
   their existing dark olive/photo overlays. */
body.everklin-transformed .iic-reference-page:not(.flagship-contact) .enterprise-directory-item :is(strong, b, p, span) {
    color: var(--ek-white) !important;
}

body.everklin-transformed .iic-reference-page:not(.flagship-contact) .enterprise-directory-item b {
    color: #edf5d2 !important;
}

body.everklin-transformed .sustainability-nova .sn-statements .sn-statement :is(h1, h2, h3, p, span) {
    color: var(--ek-white) !important;
}

body.everklin-transformed .sustainability-nova .sn-statements .sn-statement > .container > span {
    color: #e5f1b8 !important;
}

/* Small labels on the light contact and sustainability surfaces use the darker
   olive token rather than the low-contrast primary accent. */
body.everklin-transformed .contact-ultra {
    --contact-olive: var(--ek-olive-dark);
    --contact-olive-dark: var(--ek-ink);
}

body.everklin-transformed .sustainability-nova {
    --sn-olive: var(--ek-olive-dark);
    --sn-ink: var(--ek-ink);
}

@media (max-width: 720px) {
    .corp-home > .corp-commitment {
        padding-block: 52px !important;
    }
}

/* --------------------------------------------------------------------------
   Unified inner-page hero system

   The homepage remains the visual reference: a calm, left-aligned reading
   rail over a light cream-to-image transition.  These rules intentionally
   restyle the existing hero families instead of replacing their markup, so
   every page keeps its own content, imagery, controls and route structure.
   -------------------------------------------------------------------------- */
:root {
    --ek-hero-surface: #faf9f4;
    --ek-hero-surface-soft: #f2f5e6;
    --ek-hero-rail: rgba(250, 249, 244, 0.94);
    --ek-hero-line: rgba(104, 130, 41, 0.24);
    --ek-hero-copy: #4d5a4d;
}

body.everklin-transformed :is(
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .iic-product-hero,
    .mnc-category-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .brewery-hero,
    .wip-hero,
    .product-hero,
    .industry-page-hero,
    .inner-hero,
    .th-hero
) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: var(--ek-ink);
}

body.everklin-transformed :is(
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .brewery-hero,
    .wip-hero,
    .product-hero,
    .industry-page-hero,
    .inner-hero,
    .th-hero
) :is(h1, .hero-title) {
    max-width: 13ch;
    color: var(--ek-ink) !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
}

body.everklin-transformed :is(
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .brewery-hero,
    .wip-hero,
    .product-hero,
    .industry-page-hero,
    .inner-hero,
    .th-hero
) :is(h1, .hero-title) :is(em, strong) {
    color: var(--ek-olive-dark) !important;
    font-style: inherit;
}

body.everklin-transformed :is(
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .brewery-hero,
    .wip-hero,
    .product-hero,
    .industry-page-hero,
    .inner-hero,
    .th-hero
) :is(p, .hero-copy, .hero-description) {
    max-width: 61ch;
    color: var(--ek-hero-copy) !important;
}

body.everklin-transformed :is(
    .solutions-hero,
    .industries-hub__hero,
    .iic-hub-hero,
    .iic-hero,
    .wt-hero,
    .sfh-hero,
    .fpp-hero,
    .wsp-hero,
    .sp-hero,
    .anchor-hero,
    .sn-hero,
    .brewery-hero,
    .wip-hero,
    .product-hero,
    .industry-page-hero,
    .inner-hero,
    .th-hero
) :is(.eyebrow, .hero-eyebrow, .hero-kicker, .fpp-eyebrow, .wsp-hero__eyebrow, .sn-kicker, .anchor-kicker) {
    color: var(--ek-olive-dark) !important;
    letter-spacing: 0.12em !important;
}

/* Full-bleed hubs share the same gentle left-to-right image wash as Home. */
body.everklin-transformed :is(.solutions-hero, .industries-hub__hero)::after {
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    opacity: 1 !important;
    background: linear-gradient(90deg,
        rgba(250, 249, 244, 0.985) 0%,
        rgba(250, 249, 244, 0.955) 35%,
        rgba(242, 245, 230, 0.76) 52%,
        rgba(242, 245, 230, 0.22) 75%,
        rgba(242, 245, 230, 0.03) 100%) !important;
    filter: none !important;
}

body.everklin-transformed :is(.solutions-hero__inner, .industries-hub__hero-inner) {
    position: relative;
    z-index: 1;
}

body.everklin-transformed :is(.solutions-hero__copy, .industries-hub__hero-inner > div:first-child) {
    position: relative;
    z-index: 2;
    max-width: min(720px, 52vw);
}

body.everklin-transformed :is(.solutions-hero__note, .industries-hub__hero-note) {
    position: relative;
    z-index: 2;
    padding: 15px 17px;
    color: var(--ek-ink) !important;
    background: rgba(250, 249, 244, 0.84);
    border: 1px solid var(--ek-hero-line);
    box-shadow: 0 12px 30px rgba(33, 53, 28, 0.1);
    backdrop-filter: blur(8px);
}

/* Split heroes retain their image, but the copy always occupies a deliberate
   light left rail rather than floating in inconsistent coloured blocks. */
body.everklin-transformed :is(.fpp-hero, .brewery-hero, .wip-hero, .iic-product-hero, .mnc-category-hero, .product-hero, .industry-page-hero, .inner-hero, .th-hero) {
    background: linear-gradient(118deg, var(--ek-hero-surface) 0%, var(--ek-hero-surface) 52%, var(--ek-hero-surface-soft) 100%) !important;
}

body.everklin-transformed :is(.fpp-hero__media, .brewery-hero__media, .wip-hero__media, .iic-product-hero__media, .mnc-category-hero__media, .product-hero__media, .industry-page-hero__media, .inner-hero__media, .th-hero__media) {
    overflow: hidden;
    background: #e9f0d4;
    border: 1px solid var(--ek-hero-line);
    border-radius: 0 !important;
    box-shadow: 0 18px 42px rgba(33, 53, 28, 0.11);
}

body.everklin-transformed :is(.fpp-hero__media, .brewery-hero__media, .wip-hero__media, .iic-product-hero__media, .mnc-category-hero__media, .product-hero__media, .industry-page-hero__media, .inner-hero__media, .th-hero__media) :is(picture, img) {
    display: block;
    width: 100%;
    height: 100%;
}

body.everklin-transformed :is(.fpp-hero__media, .brewery-hero__media, .wip-hero__media, .iic-product-hero__media, .mnc-category-hero__media, .product-hero__media, .industry-page-hero__media, .inner-hero__media, .th-hero__media) img {
    object-fit: cover;
    filter: saturate(0.9) contrast(1.04);
}

body.everklin-transformed :is(.fpp-hero__copy, .brewery-hero__copy, .wip-hero__copy, .iic-product-hero__copy, .mnc-category-hero__copy, .product-hero__copy, .industry-page-hero__copy, .inner-hero__copy, .th-hero__copy) {
    position: relative;
    z-index: 1;
}

/* Existing image-backed inner heroes keep their actual image; the overlay is
   normalised so the left-side copy remains reliably legible. */
body.everklin-transformed :is(.wt-hero, .sfh-hero, .wsp-hero, .sp-hero, .anchor-hero, .sn-hero, .iic-hub-hero, .iic-hero) {
    background-color: var(--ek-hero-surface) !important;
    background-position: center !important;
    background-size: cover !important;
}

body.everklin-transformed :is(.wt-hero, .sfh-hero, .wsp-hero, .sp-hero, .anchor-hero, .sn-hero, .iic-hub-hero, .iic-hero)::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(90deg,
        rgba(250, 249, 244, 0.97) 0%,
        rgba(250, 249, 244, 0.91) 38%,
        rgba(244, 247, 234, 0.58) 57%,
        rgba(244, 247, 234, 0.06) 88%);
}

@media (min-width: 901px) {
    body.everklin-transformed :is(.solutions-hero, .industries-hub__hero, .iic-hub-hero, .iic-hero, .wt-hero, .sfh-hero, .wsp-hero, .sp-hero, .anchor-hero, .sn-hero, .brewery-hero, .wip-hero, .fpp-hero, .product-hero, .industry-page-hero, .inner-hero, .th-hero) {
        min-height: clamp(560px, calc(100svh - 82px), 720px);
    }

    body.everklin-transformed :is(.fpp-hero__grid, .brewery-hero__grid, .wip-hero__grid, .iic-product-hero__grid, .mnc-category-hero__grid, .product-hero__grid, .industry-page-hero__grid, .inner-hero__grid, .th-hero__grid) {
        min-height: clamp(560px, calc(100svh - 82px), 720px);
        align-items: stretch;
    }

    body.everklin-transformed :is(.fpp-hero__copy, .brewery-hero__copy, .wip-hero__copy, .iic-product-hero__copy, .mnc-category-hero__copy, .product-hero__copy, .industry-page-hero__copy, .inner-hero__copy, .th-hero__copy) {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-block: clamp(68px, 8vw, 118px);
    }

    body.everklin-transformed :is(.fpp-hero__media, .brewery-hero__media, .wip-hero__media, .iic-product-hero__media, .mnc-category-hero__media, .product-hero__media, .industry-page-hero__media, .inner-hero__media, .th-hero__media) {
        min-height: 100%;
    }
}

@media (max-width: 900px) {
    body.everklin-transformed :is(.solutions-hero, .industries-hub__hero, .iic-hub-hero, .iic-hero, .wt-hero, .sfh-hero, .fpp-hero, .wsp-hero, .sp-hero, .anchor-hero, .sn-hero, .brewery-hero, .wip-hero, .product-hero, .industry-page-hero, .inner-hero, .th-hero) {
        min-height: 0;
    }

    body.everklin-transformed :is(.solutions-hero__copy, .industries-hub__hero-inner > div:first-child) {
        max-width: 650px;
    }
}

@media (max-width: 620px) {
    body.everklin-transformed :is(.solutions-hero, .industries-hub__hero, .iic-hub-hero, .iic-hero, .wt-hero, .sfh-hero, .fpp-hero, .wsp-hero, .sp-hero, .anchor-hero, .sn-hero, .brewery-hero, .wip-hero, .product-hero, .industry-page-hero, .inner-hero, .th-hero) :is(h1, .hero-title) {
        max-width: 12ch;
        text-wrap: initial;
    }

    body.everklin-transformed :is(.solutions-hero__note, .industries-hub__hero-note) {
        margin-top: 24px;
        padding: 13px 14px;
        box-shadow: none;
    }

    body.everklin-transformed :is(.fpp-hero__media, .brewery-hero__media, .wip-hero__media, .iic-product-hero__media, .mnc-category-hero__media, .product-hero__media, .industry-page-hero__media, .inner-hero__media, .th-hero__media) {
        min-height: 280px;
        box-shadow: none;
    }
}
