/* ZONA Case Study System v1 */
:root {
    --zona-ink: #111517;
    --zona-muted: #667074;
    --zona-line: rgba(17,21,23,.14);
    --zona-paper: #f5f3ee;
    --zona-white: #fff;
    --zona-accent: #9ec5b9;
    --zona-shell: 1360px;
}
html { scroll-behavior: smooth; }
.zona-cs, .zona-premium-footer, .zona-footer-cta { color: var(--zona-ink); font-family: inherit; }
.zona-cs *, .zona-premium-footer *, .zona-footer-cta * { box-sizing: border-box; }
.zona-cs-shell { width: min(calc(100% - 48px), var(--zona-shell)); margin-inline: auto; }
.zona-kicker { margin: 0 0 18px; font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.zona-kicker--dark { color: #697376; }
.zona-section { padding: clamp(80px, 10vw, 150px) 0; }
.zona-button { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 28px; border: 1px solid transparent; text-decoration: none; font-weight: 700; transition: .25s ease; }
.zona-button--light { color: #111517; background: #fff; }
.zona-button--light:hover { color: #fff; background: transparent; border-color: rgba(255,255,255,.6); }
.zona-button--dark { color: #fff; background: #111517; }
.zona-button--dark:hover { color: #111517; background: transparent; border-color: #111517; }
.zona-entry-copy { font-size: 18px; line-height: 1.8; color: #4e585b; }
.zona-entry-copy > *:first-child { margin-top: 0; }

.zona-cs-hero { min-height: 88vh; position: relative; display: grid; align-items: end; color: #fff; background: linear-gradient(135deg,#263034,#0d1113); overflow: hidden; }
.zona-cs-hero::before { content:""; position:absolute; inset:0; background-image: var(--zona-hero-image); background-position:center; background-size:cover; transform:scale(1.02); }
.zona-cs-hero__veil { position:absolute; inset:0; background: linear-gradient(90deg,rgba(5,10,12,.86),rgba(5,10,12,.25) 64%,rgba(5,10,12,.3)),linear-gradient(0deg,rgba(5,10,12,.7),transparent 55%); }
.zona-cs-hero__inner { position:relative; z-index:2; padding-bottom: clamp(90px, 11vw, 150px); }
.zona-cs-hero h1 { max-width: 950px; margin:0; font-size:clamp(54px,8vw,124px); line-height:.92; letter-spacing:-.055em; }
.zona-cs-hero__subtitle { max-width:720px; margin:34px 0 0; font-size:clamp(18px,2vw,27px); line-height:1.5; color:rgba(255,255,255,.78); }
.zona-cs-hero__meta { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:36px; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.zona-cs-hero__meta span:not(:last-child)::after { content:""; display:inline-block; width:4px; height:4px; margin-left:28px; border-radius:50%; background:var(--zona-accent); vertical-align:middle; }
.zona-scroll-cue { position:absolute; right:4vw; bottom:38px; z-index:3; color:#fff; text-decoration:none; font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
.zona-scroll-cue i { display:inline-block; width:52px; height:1px; margin-left:14px; background:#fff; vertical-align:middle; transform-origin:left; animation:zonaPulse 1.8s infinite; }
@keyframes zonaPulse { 50% { transform:scaleX(.45); opacity:.45; } }

.zona-project-nav { position:sticky; top:0; z-index:50; border-bottom:1px solid var(--zona-line); background:rgba(255,255,255,.92); backdrop-filter:blur(16px); }
.zona-project-nav .zona-cs-shell { display:flex; gap:32px; overflow:auto; }
.zona-project-nav a { padding:20px 0; color:#596366; text-decoration:none; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; white-space:nowrap; }

.zona-overview { background:#fff; }
.zona-overview__grid { display:grid; grid-template-columns:minmax(280px,.72fr) minmax(0,1.4fr); gap:clamp(60px,10vw,160px); align-items:start; }
.zona-project-card { position:sticky; top:100px; padding:34px; border:1px solid var(--zona-line); background:#faf9f6; }
.zona-project-card dl { margin:0; }
.zona-project-card dl div { display:grid; grid-template-columns:100px 1fr; gap:18px; padding:17px 0; border-top:1px solid var(--zona-line); }
.zona-project-card dt { color:#7b8588; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.zona-project-card dd { margin:0; font-weight:600; }
.zona-overview__intro h2, .zona-section-heading h2 { margin:0 0 28px; font-size:clamp(40px,5vw,76px); line-height:1.02; letter-spacing:-.045em; }

.zona-metrics { padding:70px 0; color:#fff; background:#111517; }
.zona-metrics__grid { display:grid; grid-template-columns:repeat(4,1fr); }
.zona-metric { padding:18px 34px; border-left:1px solid rgba(255,255,255,.18); }
.zona-metric:last-child { border-right:1px solid rgba(255,255,255,.18); }
.zona-metric strong { display:block; font-size:clamp(44px,6vw,84px); line-height:1; letter-spacing:-.05em; }
.zona-metric span { display:block; margin-top:14px; color:rgba(255,255,255,.62); font-size:12px; letter-spacing:.14em; text-transform:uppercase; }

.zona-story { background:var(--zona-paper); }
.zona-story__row { display:grid; grid-template-columns:70px minmax(260px,.9fr) minmax(280px,1.1fr); gap:clamp(28px,5vw,80px); padding:70px 0; border-top:1px solid var(--zona-line); }
.zona-story__number { font-size:14px; color:#7d8789; }
.zona-story__row h2 { margin:0; font-size:clamp(34px,4vw,58px); line-height:1.08; letter-spacing:-.04em; }
.zona-story__row > p { margin:34px 0 0; font-size:18px; line-height:1.8; color:#536063; }

.zona-quote-band { padding:clamp(100px,13vw,190px) 0; color:#fff; background:#263235; text-align:center; }
.zona-quote-band blockquote { max-width:1100px; margin:0 auto; font-size:clamp(38px,5.5vw,76px); line-height:1.16; letter-spacing:-.04em; }
.zona-quote-band cite { display:block; margin-top:34px; font-style:normal; color:rgba(255,255,255,.58); text-transform:uppercase; letter-spacing:.15em; font-size:12px; }

.zona-section-heading { display:flex; justify-content:space-between; gap:50px; align-items:end; margin-bottom:64px; }
.zona-section-heading > p { max-width:470px; color:#687376; line-height:1.7; }
.zona-gallery { display:grid; grid-template-columns:repeat(12,1fr); grid-auto-rows:minmax(180px,12vw); gap:18px; }
.zona-gallery__item { overflow:hidden; background:#dfe3e1; }
.zona-gallery__item img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.zona-gallery__item:hover img { transform:scale(1.035); }
.zona-gallery__item--1 { grid-column:span 8; grid-row:span 3; }
.zona-gallery__item--2 { grid-column:span 4; grid-row:span 2; }
.zona-gallery__item--3 { grid-column:span 4; grid-row:span 2; }
.zona-gallery__item--4 { grid-column:span 5; grid-row:span 2; }
.zona-gallery__item--5 { grid-column:span 7; grid-row:span 2; }
.zona-gallery__placeholder { display:grid; place-items:center; min-height:240px; color:#697477; text-transform:uppercase; letter-spacing:.12em; font-size:11px; background:linear-gradient(135deg,#e2e5e3,#bec8c5); }

.zona-details { background:#faf9f6; }
.zona-detail-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.zona-detail-card { min-height:300px; padding:34px; border:1px solid var(--zona-line); background:#fff; display:flex; flex-direction:column; }
.zona-detail-card > span { color:#84908d; }
.zona-detail-card h3 { margin:auto 0 14px; font-size:14px; text-transform:uppercase; letter-spacing:.12em; }
.zona-detail-card p { margin:0; font-size:28px; line-height:1.2; }

.zona-next-project { padding:clamp(100px,12vw,170px) 0; color:#fff; background:#0f1315; text-align:center; }
.zona-next-project h2 { max-width:980px; margin:0 auto 24px; font-size:clamp(44px,6vw,84px); line-height:1; letter-spacing:-.05em; }
.zona-next-project p:not(.zona-kicker) { max-width:650px; margin:0 auto 34px; color:rgba(255,255,255,.66); font-size:18px; }
.zona-next-project--light { color:#111517; background:#f2f0ea; }
.zona-next-project--light p:not(.zona-kicker) { color:#596366; }

/* Immersive template */
.zona-progress { position:fixed; top:0; left:0; z-index:9999; width:100%; height:3px; background:transparent; }
.zona-progress span { display:block; width:0; height:100%; background:var(--zona-accent); }
.zona-immersive-hero { min-height:calc(100vh - 1px); display:grid; grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr); background:#f4f2ed; }
.zona-immersive-hero__copy { padding:clamp(110px,12vw,190px) clamp(34px,7vw,110px); display:flex; flex-direction:column; justify-content:center; }
.zona-immersive-hero h1 { margin:0; font-size:clamp(58px,7vw,112px); line-height:.92; letter-spacing:-.055em; }
.zona-immersive-hero__copy > p:not(.zona-kicker) { max-width:620px; margin:32px 0; color:#566164; font-size:19px; line-height:1.7; }
.zona-immersive-hero__meta { display:grid; gap:9px; padding-top:26px; border-top:1px solid var(--zona-line); font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.zona-text-link { margin-top:48px; color:#111517; font-weight:700; text-decoration:none; }
.zona-text-link span { display:inline-block; margin-left:14px; transition:transform .25s ease; }
.zona-text-link:hover span { transform:translate(5px,5px); }
.zona-immersive-hero__visual { position:relative; min-height:700px; background:linear-gradient(135deg,#ced7d3,#55625f); background-image:var(--zona-story-image); background-position:center; background-size:cover; }
.zona-image-label { position:absolute; right:28px; bottom:28px; padding:14px 18px; color:#fff; background:rgba(10,15,16,.62); backdrop-filter:blur(12px); font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.zona-image-label span { margin-right:18px; color:var(--zona-accent); }

.zona-immersive-story { display:grid; grid-template-columns:250px minmax(0,1fr); background:#fff; }
.zona-story-index { position:sticky; top:0; align-self:start; height:100vh; padding:110px 40px; border-right:1px solid var(--zona-line); display:flex; flex-direction:column; gap:18px; }
.zona-story-index p { margin:0 0 26px; font-size:11px; text-transform:uppercase; letter-spacing:.14em; color:#778184; }
.zona-story-index a { color:#9aa2a4; text-decoration:none; font-size:14px; }
.zona-story-index a.is-active, .zona-story-index a:hover { color:#111517; font-weight:700; }
.zona-story-canvas { min-width:0; }
.zona-story-chapter { min-height:100vh; display:grid; grid-template-columns:minmax(330px,.8fr) minmax(0,1.2fr); border-bottom:1px solid var(--zona-line); }
.zona-story-chapter--reverse .zona-story-chapter__copy { order:2; }
.zona-story-chapter__copy { padding:clamp(90px,10vw,150px); display:flex; flex-direction:column; justify-content:center; }
.zona-chapter-number { margin-bottom:auto; color:#8a9496; font-size:14px; }
.zona-story-chapter h2 { margin:0 0 30px; font-size:clamp(40px,5vw,76px); line-height:1.03; letter-spacing:-.045em; }
.zona-story-chapter__copy > p:not(.zona-kicker) { color:#596568; font-size:18px; line-height:1.8; }
.zona-story-chapter__image { min-height:620px; background:linear-gradient(135deg,#dce1de,#87938f); background-image:var(--zona-chapter-image); background-position:center; background-size:cover; }
.zona-story-chapter--statement { min-height:auto; display:block; padding:clamp(110px,14vw,220px) clamp(50px,12vw,180px); color:#fff; background:#172022; }
.zona-story-chapter--statement h2 { max-width:1200px; margin-top:80px; font-size:clamp(48px,7vw,104px); }
.zona-floating-specs { display:grid; grid-template-columns:repeat(2,1fr); background:#f2f0ea; }
.zona-floating-spec { min-height:320px; padding:46px; border-right:1px solid var(--zona-line); border-bottom:1px solid var(--zona-line); display:flex; flex-direction:column; justify-content:space-between; }
.zona-floating-spec strong { font-size:clamp(36px,5vw,72px); line-height:1; letter-spacing:-.045em; }
.zona-floating-spec:last-child strong { font-size:clamp(24px,3vw,46px); }
.zona-floating-spec span { color:#657174; text-transform:uppercase; letter-spacing:.12em; font-size:12px; }

.zona-process { padding:clamp(100px,12vw,170px) 0; color:#fff; background:#111517; }
.zona-process__line { display:grid; grid-template-columns:repeat(4,1fr); margin:80px 0 0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.22); }
.zona-process__line li { position:relative; padding:42px 34px; border-right:1px solid rgba(255,255,255,.16); }
.zona-process__line li::before { content:""; position:absolute; top:-6px; left:34px; width:11px; height:11px; border-radius:50%; background:var(--zona-accent); }
.zona-process__line span { color:rgba(255,255,255,.45); font-size:12px; }
.zona-process__line h3 { margin:56px 0 14px; font-size:25px; }
.zona-process__line p { margin:0; color:rgba(255,255,255,.58); line-height:1.7; }

/* Footer */
.zona-footer-cta { padding:90px 0; color:#fff; background:#243033; }
.zona-footer-cta__grid { display:grid; grid-template-columns:1fr auto; gap:50px; align-items:end; }
.zona-footer-cta h2 { max-width:900px; margin:0; font-size:clamp(38px,5vw,70px); line-height:1.02; letter-spacing:-.045em; }
.zona-premium-footer { padding:90px 0 26px; color:#d8dddd; background:#0b0f10; }
.zona-premium-footer a { color:inherit; text-decoration:none; }
.zona-premium-footer__top { display:grid; grid-template-columns:minmax(280px,1.65fr) repeat(3,1fr); gap:clamp(40px,7vw,100px); }
.zona-premium-footer__brand .custom-logo { max-width:180px; height:auto; filter:brightness(0) invert(1); }
.zona-footer-wordmark { font-size:34px; font-weight:800; letter-spacing:.06em; }
.zona-premium-footer__brand > p { max-width:470px; margin:30px 0; color:#8f999b; line-height:1.75; }
.zona-footer-contact { display:flex; flex-wrap:wrap; gap:16px 28px; font-weight:700; }
.zona-footer-column { display:flex; flex-direction:column; gap:14px; }
.zona-footer-column h3 { margin:0 0 14px; color:#707a7c; font-size:11px; text-transform:uppercase; letter-spacing:.14em; }
.zona-footer-column a { color:#c7cdce; font-size:14px; }
.zona-footer-column a:hover, .zona-footer-contact a:hover { color:#fff; }
.zona-premium-footer__bottom { display:flex; justify-content:space-between; gap:30px; margin-top:80px; padding-top:26px; border-top:1px solid rgba(255,255,255,.12); color:#727c7e; font-size:12px; }
.zona-premium-footer__bottom div { display:flex; flex-wrap:wrap; gap:24px; }

/* Reveal */
.zona-reveal { opacity:0; transform:translateY(24px); transition:opacity .75s ease, transform .75s ease; }
.zona-reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 1050px) {
    .zona-overview__grid, .zona-story-chapter { grid-template-columns:1fr; }
    .zona-project-card { position:relative; top:auto; }
    .zona-story-chapter--reverse .zona-story-chapter__copy { order:0; }
    .zona-immersive-hero { grid-template-columns:1fr; }
    .zona-immersive-hero__visual { min-height:62vh; }
    .zona-immersive-story { grid-template-columns:1fr; }
    .zona-story-index { display:none; }
    .zona-premium-footer__top { grid-template-columns:1.5fr 1fr 1fr; }
    .zona-premium-footer__brand { grid-column:1 / -1; }
}
@media (max-width: 780px) {
    .zona-cs-shell { width:min(calc(100% - 32px),var(--zona-shell)); }
    .zona-cs-hero { min-height:760px; }
    .zona-cs-hero h1 { font-size:clamp(48px,16vw,78px); }
    .zona-scroll-cue { left:16px; right:auto; }
    .zona-metrics__grid, .zona-detail-cards, .zona-process__line, .zona-floating-specs { grid-template-columns:1fr 1fr; }
    .zona-story__row { grid-template-columns:1fr; gap:20px; }
    .zona-story__number { margin-bottom:18px; }
    .zona-gallery { display:grid; grid-template-columns:1fr; grid-auto-rows:auto; }
    .zona-gallery__item { grid-column:auto !important; grid-row:auto !important; min-height:300px; }
    .zona-section-heading, .zona-footer-cta__grid { display:block; }
    .zona-footer-cta .zona-button { margin-top:34px; }
    .zona-story-chapter__copy { padding:80px 28px; }
    .zona-story-chapter__image { min-height:68vw; }
    .zona-process__line li { min-height:260px; }
    .zona-premium-footer__top { grid-template-columns:1fr 1fr; }
}
@media (max-width: 520px) {
    .zona-metrics__grid, .zona-detail-cards, .zona-process__line, .zona-floating-specs, .zona-premium-footer__top { grid-template-columns:1fr; }
    .zona-metric, .zona-metric:last-child { border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }
    .zona-cs-hero__meta span::after { display:none !important; }
    .zona-project-card dl div { grid-template-columns:1fr; gap:7px; }
    .zona-premium-footer__bottom { flex-direction:column; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    .zona-reveal { opacity:1; transform:none; transition:none; }
    .zona-scroll-cue i { animation:none; }
}


/* v2: protect the design system from legacy theme heading and link colors */
body .zona-cs h1,
body .zona-cs h2,
body .zona-cs h3,
body .zona-cs h4,
body .zona-cs h5,
body .zona-cs h6 {
    color: var(--zona-ink) !important;
    text-shadow: none !important;
}

body .zona-cs-hero h1,
body .zona-quote-band h2,
body .zona-next-project:not(.zona-next-project--light) h2,
body .zona-story-chapter--statement h2,
body .zona-process h2,
body .zona-process h3,
body .zona-footer-cta h2 {
    color: #fff !important;
}

body .zona-cs a {
    text-shadow: none;
}

.zona-admin-notice {
    position: fixed;
    left: 18px;
    bottom: 18px;
    z-index: 10000;
    max-width: 390px;
    padding: 14px 18px;
    color: #fff;
    background: #a13a2a;
    box-shadow: 0 10px 30px rgba(0,0,0,.2);
    font-size: 13px;
    line-height: 1.5;
}

.zona-image-feature {
    position: relative;
    min-height: min(78vh, 900px);
    display: flex;
    align-items: end;
    overflow: hidden;
    color: #fff;
    background: #1b2325;
}
.zona-image-feature::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--zona-feature-image);
    background-size: cover;
    background-position: center;
    transform: scale(1.015);
}
.zona-image-feature__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(7,12,13,.82), rgba(7,12,13,.05) 65%);
}
.zona-image-feature__content {
    position: relative;
    z-index: 2;
    padding-bottom: clamp(60px, 8vw, 110px);
}
body .zona-image-feature h2 {
    max-width: 950px;
    margin: 0;
    color: #fff !important;
    font-size: clamp(42px, 6vw, 86px);
    line-height: 1;
    letter-spacing: -.05em;
}

/* richer empty image states */
.zona-immersive-hero__visual:not(.has-image),
.zona-story-chapter__image:not(.has-image) {
    position: relative;
    background:
        linear-gradient(135deg, rgba(255,255,255,.08), transparent 45%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 80px),
        linear-gradient(135deg, #76827e, #283234);
}
.zona-immersive-hero__visual:not(.has-image)::after,
.zona-story-chapter__image:not(.has-image)::after {
    content: "Add project photography";
    position: absolute;
    left: 28px;
    bottom: 28px;
    color: rgba(255,255,255,.7);
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

/* brighten muted copy without washing it out */
body .zona-cs .zona-story__row h2,
body .zona-cs .zona-overview__intro h2,
body .zona-cs .zona-section-heading h2,
body .zona-cs .zona-story-chapter h2,
body .zona-cs--immersive .zona-immersive-hero h1 {
    color: #15191b !important;
}

body .zona-cs p,
body .zona-cs dd,
body .zona-cs li {
    text-rendering: optimizeLegibility;
}

@media (max-width: 780px) {
    .zona-admin-notice {
        right: 14px;
        left: 14px;
        bottom: 14px;
        max-width: none;
    }
}


/* =========================================================
   v3 FINAL CONTRAST LAYER
   These rules intentionally come last so the legacy theme
   cannot override section-specific foreground/backgrounds.
   ========================================================= */

/* Editorial gallery: always a light architectural canvas */
body .zona-cs--editorial .zona-gallery-section {
    color: #111517 !important;
    background: #f7f5f0 !important;
}

body .zona-cs--editorial .zona-gallery-section .zona-kicker,
body .zona-cs--editorial .zona-gallery-section p {
    color: #687376 !important;
}

body .zona-cs--editorial .zona-gallery-section h2 {
    color: #111517 !important;
}

/* Immersive result statement: dark canvas, white editorial type */
body .zona-cs--immersive .zona-story-chapter--statement {
    color: #ffffff !important;
    background: #172022 !important;
}

body .zona-cs--immersive .zona-story-chapter--statement .zona-kicker,
body .zona-cs--immersive .zona-story-chapter--statement .zona-chapter-number {
    color: rgba(255,255,255,.78) !important;
}

body .zona-cs--immersive .zona-story-chapter--statement h2 {
    color: #ffffff !important;
}

/* Process timeline: every title and supporting line remains readable */
body .zona-cs--immersive .zona-process {
    color: #ffffff !important;
    background: #111517 !important;
}

body .zona-cs--immersive .zona-process .zona-kicker {
    color: rgba(255,255,255,.82) !important;
}

body .zona-cs--immersive .zona-process h2,
body .zona-cs--immersive .zona-process h3 {
    color: #ffffff !important;
}

body .zona-cs--immersive .zona-process p {
    color: rgba(255,255,255,.62) !important;
}

body .zona-cs--immersive .zona-process__line span {
    color: rgba(255,255,255,.48) !important;
}

/* Keep ordinary immersive chapters dark on light backgrounds */
body .zona-cs--immersive .zona-story-chapter:not(.zona-story-chapter--statement) {
    color: #111517 !important;
    background: #ffffff !important;
}

body .zona-cs--immersive .zona-story-chapter:not(.zona-story-chapter--statement) h2 {
    color: #111517 !important;
}

body .zona-cs--immersive .zona-story-chapter:not(.zona-story-chapter--statement) p {
    color: #596568 !important;
}

/* Footer CTA remains intentionally dark */
body .zona-footer-cta,
body .zona-footer-cta h2,
body .zona-footer-cta .zona-kicker {
    color: #ffffff !important;
}

/* Protect dark editorial bands */
body .zona-cs--editorial .zona-quote-band,
body .zona-cs--editorial .zona-quote-band blockquote,
body .zona-cs--editorial .zona-next-project:not(.zona-next-project--light),
body .zona-cs--editorial .zona-next-project:not(.zona-next-project--light) h2 {
    color: #ffffff !important;
}

/* Slight visual refinement for gallery description */
body .zona-cs--editorial .zona-gallery-section .zona-section-heading > p {
    max-width: 430px;
    padding-left: 24px;
    border-left: 1px solid rgba(17,21,23,.18);
}

/* WordPress admin bar offset for sticky project navigation */
body.admin-bar .zona-project-nav {
    top: 32px;
}

@media screen and (max-width: 782px) {
    body.admin-bar .zona-project-nav {
        top: 46px;
    }
}


/* Case Study A — Closer Look positioning refinement */

body .zona-cs--editorial .zona-image-feature {
    min-height: min(82vh, 920px);
    align-items: flex-end;
}

body .zona-cs--editorial .zona-image-feature__overlay {
    background:
        linear-gradient(
            0deg,
            rgba(7, 12, 13, 0.88) 0%,
            rgba(7, 12, 13, 0.5) 34%,
            rgba(7, 12, 13, 0.08) 70%
        );
}

body .zona-cs--editorial .zona-image-feature__content {
    padding-top: 100px;
    padding-bottom: clamp(65px, 8vw, 115px);
}

body .zona-cs--editorial .zona-image-feature__content h2 {
    max-width: 820px;
    font-size: clamp(42px, 5.25vw, 78px);
    line-height: 1.02;
}

body .zona-cs--editorial .zona-image-feature__content .zona-kicker {
    margin-bottom: 20px;
}

@media (max-width: 780px) {
    body .zona-cs--editorial .zona-image-feature {
        min-height: 680px;
    }

    body .zona-cs--editorial .zona-image-feature__content {
        padding-top: 80px;
        padding-bottom: 52px;
    }

    body .zona-cs--editorial .zona-image-feature__content h2 {
        max-width: 100%;
        font-size: clamp(38px, 11vw, 58px);
    }
}

/* ZONA Premium Footer v2 */
.zona-proof-strip{padding:72px 0;background:#f6f4ef;border-top:1px solid rgba(17,21,23,.1)}
.zona-proof-strip__inner{display:grid;grid-template-columns:1fr auto;gap:56px;align-items:center}
.zona-proof-strip__headline h2{margin:0;color:#111517!important;font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.04em}
.zona-proof-strip__marks{display:flex;align-items:center;gap:28px}
.zona-proof-strip__marks img{width:145px;max-height:82px;object-fit:contain}
body .zona-footer-cta{padding:clamp(82px,9vw,125px) 0;color:#fff!important;background:radial-gradient(circle at 85% 10%,rgba(158,197,185,.14),transparent 34%),#243033!important}
.zona-footer-cta__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:70px;align-items:end}
body .zona-footer-cta h2{max-width:920px;margin:0;color:#fff!important;font-size:clamp(42px,6vw,82px);line-height:.98;letter-spacing:-.05em}
.zona-footer-cta__actions{min-width:230px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.zona-footer-cta__link{color:rgba(255,255,255,.78)!important;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
body .zona-premium-footer{padding:96px 0 28px;color:#dce1e2!important;background:#0b0f10!important}
.zona-premium-footer__top{display:grid;grid-template-columns:minmax(300px,1.45fr) .72fr .86fr minmax(280px,1.15fr);gap:clamp(42px,6vw,90px);align-items:start}
.zona-footer-logo{display:inline-flex}
.zona-footer-logo img{width:116px;height:auto;filter:brightness(0) invert(1)}
.zona-footer-brand-copy{max-width:460px;margin:28px 0;color:#929c9e!important;font-size:15px;line-height:1.75}
.zona-footer-address{display:grid;gap:9px}
.zona-footer-address p{margin:0 0 12px;color:#b3bbbd!important;font-size:14px;line-height:1.65}
.zona-footer-address a{color:#fff!important;text-decoration:none;font-size:14px;font-weight:650}
.zona-footer-column{display:flex;flex-direction:column;gap:14px}
body .zona-premium-footer h3{margin:0 0 18px;color:#6f7a7c!important;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.zona-footer-column a{color:#cbd1d2!important;text-decoration:none;font-size:14px;transition:color .2s ease,transform .2s ease}
.zona-footer-column a:hover{color:#fff!important;transform:translateX(3px)}
.zona-footer-newsletter>p{margin:0 0 24px;color:#929c9e!important;font-size:14px;line-height:1.7}
.zona-footer-newsletter__form input[type=email],.zona-footer-newsletter__form input[type=text]{width:100%;min-height:50px;padding:0 15px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:0}
.zona-footer-newsletter__form input[type=submit],.zona-footer-newsletter__form button{min-height:48px;padding:0 20px;color:#111517;background:#fff;border:1px solid #fff;font-weight:700;cursor:pointer}
.zona-footer-socials{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.zona-footer-socials a{width:38px;height:38px;display:grid;place-items:center;color:#d7dcdd!important;border:1px solid rgba(255,255,255,.14);text-decoration:none;font-size:13px;font-weight:700;transition:.2s ease}
.zona-footer-socials a:hover{color:#111517!important;background:#fff;border-color:#fff;transform:translateY(-2px)}
.zona-premium-footer__bottom{display:flex;justify-content:space-between;gap:30px;margin-top:82px;padding-top:26px;border-top:1px solid rgba(255,255,255,.12)}
.zona-premium-footer__bottom p{margin:0;color:#737e80!important;font-size:11px;letter-spacing:.05em;text-transform:uppercase}
.zona-premium-footer__bottom-links{display:flex;flex-wrap:wrap;gap:22px}
.zona-premium-footer__bottom-links a{color:#8f999b!important;text-decoration:none;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.zona-premium-footer__bottom-links a:hover{color:#fff!important}
@media(max-width:1100px){.zona-premium-footer__top{grid-template-columns:1.25fr 1fr 1fr}.zona-footer-newsletter{grid-column:1/-1;max-width:650px}}
@media(max-width:780px){.zona-proof-strip__inner,.zona-footer-cta__grid{grid-template-columns:1fr}.zona-proof-strip__marks{justify-content:flex-start}.zona-premium-footer__top{grid-template-columns:1fr 1fr}.zona-premium-footer__brand,.zona-footer-newsletter{grid-column:1/-1}.zona-premium-footer__bottom{flex-direction:column}}
@media(max-width:520px){.zona-proof-strip__marks{gap:18px}.zona-proof-strip__marks img{width:125px}.zona-premium-footer__top{grid-template-columns:1fr}.zona-premium-footer__brand,.zona-footer-newsletter{grid-column:auto}}
