/* Zenith v1.8.0 — screenshot-driven finishing pass. Scoped to Zenith components so
   Gutenberg and Elementor-authored content keeps its native styling. */
.zenith-visual-page{--z-ink:var(--es-ink);--z-charcoal:#27282e;--z-paper:var(--es-paper);--z-purple:var(--es-purple);--z-gutter:clamp(16px,5vw,70px);background:var(--z-paper);color:var(--z-ink);overflow:hidden}
.zenith-visual-page .zenith-component{position:relative;isolation:isolate;box-sizing:border-box}
.zenith-visual-page .zenith-component-inner{width:min(calc(100% - 2*var(--z-gutter)),var(--zenith-section-max,1320px));margin-inline:auto}
.zenith-visual-page .zenith-component-title{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em;line-height:1.02;font-weight:700}
.zenith-visual-page .zenith-component-body{line-height:1.55}
.zenith-visual-page .zenith-component-media{position:relative;display:flex;align-items:center;min-height:var(--zenith-section-height,0);background-position:center;background-size:cover;overflow:hidden}
.zenith-visual-page .zenith-component-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.zenith-visual-page .zenith-component-media-shade{position:absolute;inset:0;pointer-events:none}
.zenith-visual-page .zenith-component-hero-copy{position:relative;z-index:2;width:min(calc(100% - 2*var(--z-gutter)),var(--zenith-section-max,1320px));margin-inline:auto}
.zenith-visual-page .zenith-component-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.zenith-visual-page .es-button{font:600 10px/1.2 Inter,Arial,sans-serif;letter-spacing:.01em;text-transform:uppercase;padding:11px 18px;background:var(--z-purple);color:#fff!important;border:1px solid var(--z-purple);text-decoration:none}
.zenith-visual-page .es-button:hover{filter:brightness(1.08)}
.zenith-visual-page .zenith-component[style*="--zenith-section-height"] .zenith-component-media{min-height:var(--zenith-section-height)}
.zenith-visual-page .zenith-component[style*="--zenith-section-gap"] .zenith-gallery-grid,.zenith-visual-page .zenith-component[style*="--zenith-section-gap"] .zenith-card-grid{gap:var(--zenith-section-gap)}
.zenith-visual-page .zenith-component[style*="--zenith-card-radius"] .zenith-gallery-item,.zenith-visual-page .zenith-component[style*="--zenith-card-radius"] .zenith-content-card,.zenith-visual-page .zenith-component[style*="--zenith-card-radius"] .zenith-stat-card{border-radius:var(--zenith-card-radius);overflow:hidden}
.zenith-visual-page .has-hover-zoom .zenith-gallery-item img,.zenith-visual-page .has-hover-zoom .zenith-content-card img{transition:transform .5s ease}
.zenith-visual-page .has-hover-zoom .zenith-gallery-item:hover img,.zenith-visual-page .has-hover-zoom .zenith-content-card:hover img{transform:scale(1.045)}
.zenith-visual-page .has-hover-lift .zenith-content-card{transition:transform .25s ease;}
.zenith-visual-page .has-hover-lift .zenith-content-card:hover{transform:translateY(-5px)}
.zenith-visual-page .has-hover-fade .zenith-gallery-item img,.zenith-visual-page .has-hover-fade .zenith-content-card img{transition:opacity .25s ease}
.zenith-visual-page .has-hover-fade .zenith-gallery-item:hover img,.zenith-visual-page .has-hover-fade .zenith-content-card:hover img{opacity:.78}

/* Screenshot: homepage cinematic hero and asymmetric mosaic */
.zenith-visual-page-home{background:var(--es-ink);color:#fff}
.zenith-visual-page-home .zenith-component-hero .zenith-component-media{min-height:min(850px,calc(100svh - 42px));align-items:flex-end}
.zenith-visual-page-home .zenith-component-hero .zenith-component-media-shade{background:linear-gradient(180deg,rgba(8,8,12,.02),rgba(8,8,12,.12) 45%,rgba(8,8,12,.7))}
.zenith-visual-page-home .zenith-component-hero .zenith-component-inner{padding:clamp(150px,22vh,250px) 0 clamp(48px,7vw,92px)}
.zenith-visual-page-home .zenith-component-hero .zenith-component-title{font-size:clamp(3rem,7.5vw,7.4rem);max-width:760px;line-height:.9;margin:0;color:#fff}
.zenith-visual-page-home .zenith-component-intro .zenith-component-inner{max-width:760px;text-align:center}
.zenith-visual-page-home .zenith-component-intro .zenith-component-title{font-size:clamp(1.65rem,3.3vw,3.2rem)}
.zenith-visual-page-home .zenith-component-logo-wall .zenith-logo-wall{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px 30px}
.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-auto-rows:clamp(34px,4.7vw,70px);grid-auto-flow:dense;gap:clamp(5px,.8vw,12px)}
.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item{grid-column:span 2;grid-row:span 3;min-height:0;border-radius:0}
.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(8n+1),.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(8n+4){grid-column:span 2;grid-row:span 4}
.zenith-visual-page-home .zenith-component-gallery img{width:100%;height:100%;object-fit:cover}
.zenith-visual-page-home .zenith-component-full-image .zenith-full-image{min-height:clamp(340px,54vw,650px)}

/* Screenshot: About — facts, values, long masonry gallery */
.zenith-visual-page-about .zenith-component-hero .zenith-component-media{min-height:clamp(360px,56vw,660px)}
.zenith-visual-page-about .zenith-component-intro .zenith-component-body{max-width:480px;margin-inline:auto;text-align:center}
.zenith-visual-page-about .zenith-stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.zenith-visual-page-about .zenith-stat-card{grid-column:span 2;min-height:120px;padding:clamp(17px,2vw,30px);background:#fff;color:var(--es-ink);border-radius:10px;box-shadow:0 4px 7px #0002}
.zenith-visual-page-about .zenith-stat-card:nth-child(4){grid-column:span 1}
.zenith-visual-page-about .zenith-stat-card:nth-child(5){grid-column:span 2}.zenith-visual-page-about .zenith-stat-card:nth-child(6){grid-column:span 3}
.zenith-visual-page-about .zenith-stat-card strong{font:700 clamp(1.7rem,3vw,3.2rem)/1 Georgia,serif}
.zenith-visual-page-about .zenith-component-values{background:#27282e;color:#fff}
.zenith-visual-page-about .zenith-values-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,7vw,100px)}
.zenith-visual-page-about .zenith-values-list p{font:700 clamp(1.1rem,1.6vw,1.7rem)/1.35 Georgia,serif;margin:0 0 12px}
.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-auto-rows:clamp(32px,4.6vw,66px);grid-auto-flow:dense;gap:6px}
.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-item{grid-column:span 1;grid-row:span 4;min-height:0;border-radius:0}
.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(7n+3),.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(7n+6){grid-row:span 5}
.zenith-visual-page-about .zenith-component-gallery img{width:100%;height:100%;object-fit:cover}

/* Screenshot: process photo strip, rounded client wall and inset capability panel */
.zenith-visual-page-process .zenith-component-hero .zenith-component-inner{max-width:900px;text-align:center}
.zenith-visual-page-process .zenith-component-gallery.is-layout-strip .zenith-gallery-grid{display:flex;justify-content:center;align-items:center;gap:clamp(10px,2vw,28px);overflow-x:auto;scrollbar-width:none}
.zenith-visual-page-process .zenith-component-gallery.is-layout-strip .zenith-gallery-item{flex:0 0 clamp(82px,12vw,160px);aspect-ratio:3/4;border-radius:6px;box-shadow:0 8px 18px #0005}
.zenith-visual-page-process .zenith-component-gallery.is-layout-strip img{width:100%;height:100%;object-fit:cover}
.zenith-visual-page-process .zenith-component-logo-wall{border-radius:36px 36px 0 0;background:var(--z-purple);color:#fff}
.zenith-visual-page-process .zenith-component-logo-wall .zenith-logo-wall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(18px,2.5vw,32px);align-items:center}
.zenith-visual-page-process .zenith-component-capability-panel{background:var(--z-purple)!important;color:#fff;padding-top:0!important}
.zenith-visual-page-process .zenith-component-capability-panel .zenith-component-inner{background:#27282e;border-radius:24px;padding:clamp(30px,5vw,70px);box-shadow:0 0 0 14px var(--z-purple)}
.zenith-visual-page-process .zenith-capability-group{text-align:center;margin:0 0 30px}
.zenith-visual-page-process .zenith-capability-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:3px}
.zenith-visual-page-process .zenith-capability-tags span{background:#44454a;color:#fff;padding:7px 12px;font-size:9px;line-height:1.2;text-transform:uppercase}

/* Screenshot: work and insight archives */
.zenith-visual-page-work .zenith-component-project-grid .zenith-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2vw,32px) clamp(12px,1.3vw,20px)}
.zenith-visual-page-work .zenith-content-card,.zenith-visual-page-insights .zenith-content-card{background:transparent;border-radius:0;box-shadow:none}
.zenith-visual-page-work .zenith-content-card img,.zenith-visual-page-insights .zenith-content-card img{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:9px}
.zenith-visual-page-work .zenith-content-card-copy,.zenith-visual-page-insights .zenith-content-card-copy{padding:8px 0 0}
.zenith-visual-page-work .zenith-content-card-copy h3,.zenith-visual-page-insights .zenith-content-card-copy h3{font:700 clamp(1rem,1.25vw,1.3rem)/1.12 Georgia,serif;letter-spacing:-.02em}
.zenith-visual-page-insights .zenith-component-insights-grid .zenith-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,2.2vw,38px) clamp(12px,1.4vw,20px)}
.zenith-visual-page-insights .zenith-component-featured-insight{padding:0}
.zenith-visual-page-insights .zenith-featured-insight{min-height:clamp(400px,56vw,660px);display:flex;align-items:flex-end;background-position:center;background-size:cover;padding:clamp(24px,3vw,48px)}
.zenith-visual-page-insights .zenith-featured-copy{max-width:560px}

/* Screenshot: contact split composition */
.zenith-visual-page-contact{background:var(--es-paper);color:var(--es-ink)}
.zenith-visual-page-contact .zenith-component-contact{padding-top:clamp(35px,3.5vw,55px)!important;padding-bottom:clamp(60px,7vw,110px)!important}
.zenith-visual-page-contact .zenith-contact-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(35px,7vw,100px);align-items:start}
.zenith-visual-page-contact .zenith-contact-copy h1{font:700 clamp(2.7rem,4.4vw,4.6rem)/.98 Georgia,serif;letter-spacing:-.05em;margin:0 0 clamp(60px,7vw,105px)}
.zenith-visual-page-contact .zenith-contact-form{max-width:100%}
.zenith-visual-page-contact .zenith-contact-form input,.zenith-visual-page-contact .zenith-contact-form textarea{border:1px solid #cbd5e1;border-radius:14px;background:#f7f8fa;min-height:42px;padding:11px 14px;box-shadow:none}
.zenith-visual-page-contact .zenith-contact-form textarea{min-height:86px}
.zenith-visual-page-contact .zenith-contact-form button,.zenith-visual-page-contact .zenith-contact-form input[type=submit]{background:var(--es-ink);color:#fff;border-radius:18px;padding:13px 24px}

/* Individual project detail: white filter/subnav, large visual, overview + irregular gallery */
.zenith-visual-page-project .zenith-project-subnav{display:flex;align-items:center;gap:24px;min-height:42px;padding:0 var(--z-gutter);background:#fff;color:var(--es-ink);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.zenith-visual-page-project .zenith-project-subnav a{color:inherit;text-decoration:none}
.zenith-visual-page-project .zenith-project-subnav span{font-weight:700}
.zenith-visual-page-project .zenith-component-project-hero .zenith-component-media{min-height:clamp(380px,49vw,690px)}
.zenith-visual-page-project .zenith-project-details{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,90px)}
.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:clamp(32px,4.2vw,62px);gap:8px}
.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-item{grid-column:span 6;grid-row:span 5;min-height:0}
.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(4n+2),.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(4n+3){grid-row:span 4}
.zenith-visual-page-project .zenith-gallery-item img{width:100%;height:100%;object-fit:cover}

/* Shared dark footer / closing CTA proportions */
.zenith-visual-page .zenith-component-cta.is-bg-gradient{background:radial-gradient(ellipse at 50% 115%,var(--es-purple) 0%,#252039 48%,var(--es-ink) 78%);color:#fff}
.zenith-visual-page .zenith-component-cta.has-glow-cta{background:radial-gradient(ellipse at 50% 120%,#5141d9 0%,var(--es-ink) 67%);color:#fff}

@media(max-width:1050px){.zenith-visual-page-work .zenith-component-project-grid .zenith-card-grid,.zenith-visual-page-insights .zenith-component-insights-grid .zenith-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.zenith-visual-page-about .zenith-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.zenith-visual-page-about .zenith-stat-card:nth-child(n){grid-column:span 1}}
@media(max-width:760px){.zenith-visual-page-home .zenith-component-hero .zenith-component-media{min-height:clamp(500px,82svh,740px)}.zenith-visual-page-home .zenith-component-hero .zenith-component-title{font-size:clamp(2.7rem,12vw,4.6rem)}.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-grid,.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(48px,15vw,90px);gap:5px}.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item,.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(n){grid-column:span 1;grid-row:span 3}.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(5n+1),.zenith-visual-page-home .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(5n+4){grid-column:span 2}.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-item,.zenith-visual-page-about .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(n){grid-column:span 1;grid-row:span 3}.zenith-visual-page-about .zenith-values-layout{grid-template-columns:1fr;gap:20px}.zenith-visual-page-process .zenith-component-logo-wall .zenith-logo-wall{grid-template-columns:repeat(3,minmax(0,1fr))}.zenith-visual-page-process .zenith-component-capability-panel .zenith-component-inner{padding:26px 17px;box-shadow:0 0 0 8px var(--z-purple)}.zenith-visual-page-work .zenith-component-project-grid .zenith-card-grid,.zenith-visual-page-insights .zenith-component-insights-grid .zenith-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zenith-visual-page-contact .zenith-contact-layout{grid-template-columns:1fr;gap:28px}.zenith-visual-page-contact .zenith-contact-copy h1{margin-bottom:35px}.zenith-visual-page-project .zenith-project-details{grid-template-columns:1fr}.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(70px,25vw,130px)}.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-item,.zenith-visual-page-project .zenith-component-gallery.is-layout-masonry .zenith-gallery-item:nth-child(n){grid-column:span 1;grid-row:span 2}}
@media(max-width:440px){.zenith-visual-page-work .zenith-component-project-grid .zenith-card-grid,.zenith-visual-page-insights .zenith-component-insights-grid .zenith-card-grid{grid-template-columns:1fr}.zenith-visual-page-process .zenith-component-logo-wall .zenith-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.zenith-visual-page-project .zenith-project-subnav{gap:12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.zenith-visual-page *{animation:none!important;transition:none!important}}
