/* Zahov Final Editorial System v4.0.0
   Architectural, image-led, light, restrained. No decorative card language. */
:root{--ze-ink:#171817;--ze-muted:#656965;--ze-line:#dedfd9;--ze-paper:#fff;--ze-soft:#f3f2ee;--ze-soft-2:#ebeae5;--ze-accent:#2a7287;--ze-accent-deep:#225e70;--ze-shell:min(1360px,calc(100vw - 80px));--ze-narrow:min(900px,calc(100vw - 80px));--ze-font:Manrope,Inter,"Helvetica Neue",Arial,sans-serif}
.ze-page,.ze-page *{box-sizing:border-box}.ze-page{position:relative;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;background:var(--ze-paper);color:var(--ze-ink);font-family:var(--ze-font);line-height:1.6}.ze-page img{display:block;max-width:100%;height:auto}.ze-page h1,.ze-page h2,.ze-page h3,.ze-page p,.ze-page figure,.ze-page blockquote{margin:0}.ze-page a{color:inherit}.ze-shell{width:var(--ze-shell);margin-inline:auto}.ze-section{padding:118px 0}.ze-section--soft{background:var(--ze-soft)}.ze-eyebrow{display:block;margin-bottom:18px;color:var(--ze-accent);font-size:11px;font-weight:700;letter-spacing:.17em;line-height:1.2;text-transform:uppercase}.ze-page h1{max-width:1030px;font-size:clamp(48px,5.6vw,82px);font-weight:480;letter-spacing:-.045em;line-height:1.02}.ze-page h2{font-size:clamp(34px,4vw,56px);font-weight:480;letter-spacing:-.035em;line-height:1.08}.ze-page h3{font-size:clamp(21px,2vw,29px);font-weight:560;letter-spacing:-.02em;line-height:1.2}.ze-page p{color:var(--ze-muted);font-size:17px;line-height:1.72}.ze-copy{max-width:670px}.ze-copy p{margin-top:20px}.ze-copy p+p{margin-top:14px}.ze-button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:0 22px;border:1px solid var(--ze-accent);background:var(--ze-accent);color:#fff!important;font-size:11px;font-weight:700;letter-spacing:.1em;text-decoration:none!important;text-transform:uppercase;transition:background .2s ease,border-color .2s ease,color .2s ease}.ze-button:hover,.ze-button:focus-visible{background:var(--ze-accent-deep);border-color:var(--ze-accent-deep);color:#fff!important}.ze-button--light{border-color:#fff;background:#fff;color:var(--ze-ink)!important}.ze-button--light:hover{background:transparent;color:#fff!important}.ze-link{display:inline-flex;align-items:center;gap:10px;margin-top:26px;padding-bottom:3px;border-bottom:1px solid currentColor;color:var(--ze-ink)!important;font-size:12px;font-weight:700;letter-spacing:.05em;text-decoration:none!important}.ze-link--light{color:#fff!important}.ze-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:36px}.ze-back{display:inline-block;margin-bottom:34px;color:var(--ze-muted)!important;font-size:12px;font-weight:650;text-decoration:none!important}.ze-back--light{color:rgba(255,255,255,.85)!important}.ze-heading{max-width:910px;margin-bottom:54px}.ze-heading p{max-width:700px;margin-top:18px}.ze-heading--row{display:flex;max-width:none;align-items:end;justify-content:space-between;gap:44px}.ze-heading--row>div{max-width:850px}.ze-heading--row .ze-link{flex:none;margin:0 0 8px}.ze-heading--wide{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);gap:80px;max-width:none;align-items:start}.ze-heading--wide .ze-eyebrow{margin-top:9px}.ze-centered-action{text-align:center;margin-top:46px}

/* Hero */
.ze-hero{position:relative;min-height:min(900px,94vh);display:flex;align-items:flex-end;background:#d9d9d5;color:#fff}.ze-hero__media,.ze-hero__overlay{position:absolute;inset:0}.ze-hero__media img{width:100%;height:100%;object-fit:cover}.ze-hero__overlay{background:rgba(34,94,112,.34)}.ze-hero__content{position:relative;z-index:2;padding-bottom:78px}.ze-hero__content .ze-eyebrow{color:rgba(255,255,255,.82)}.ze-hero__content h1{max-width:1060px}.ze-hero__content p{max-width:720px;margin-top:24px;color:rgba(255,255,255,.88);font-size:19px}.ze-inner-hero{padding:112px 0 88px;background:var(--ze-soft)}.ze-inner-hero__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:86px;align-items:end}.ze-inner-hero__grid>div{padding:36px 0}.ze-inner-hero__grid p{max-width:670px;margin-top:24px;font-size:18px}.ze-inner-hero__media{aspect-ratio:16/11;overflow:hidden;background:#ddd}.ze-inner-hero__media img{width:100%;height:100%;object-fit:cover}.ze-category-hero,.ze-project-hero{position:relative;min-height:min(790px,82vh);display:flex;align-items:flex-end;background:#d6d7d3;color:#fff}.ze-category-hero__media,.ze-category-hero__overlay,.ze-project-hero__media,.ze-project-hero__overlay{position:absolute;inset:0}.ze-category-hero__media img,.ze-project-hero__media img{width:100%;height:100%;object-fit:cover}.ze-category-hero__overlay,.ze-project-hero__overlay{background:rgba(34,94,112,.36)}.ze-category-hero__copy,.ze-project-hero__copy{position:relative;z-index:2;padding-bottom:70px}.ze-category-hero__copy .ze-eyebrow,.ze-project-hero__copy .ze-eyebrow{color:rgba(255,255,255,.84)}.ze-category-hero__copy p,.ze-project-hero__copy p{max-width:720px;margin-top:20px;color:rgba(255,255,255,.88);font-size:18px}

/* Editorial blocks */
.ze-editorial-split{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:92px;align-items:center}.ze-editorial-split--reverse{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.ze-story-grid{display:grid;grid-template-columns:1.08fr .92fr;grid-template-rows:1fr 1fr;gap:12px;min-height:620px}.ze-story-grid figure{overflow:hidden;background:#e5e5e1}.ze-story-grid img{width:100%;height:100%;object-fit:cover}.ze-story-grid__item--1{grid-row:1/-1}.ze-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ze-pair figure{aspect-ratio:4/5;overflow:hidden}.ze-pair figure:first-child{margin-top:58px}.ze-pair img{width:100%;height:100%;object-fit:cover}.ze-wide-media{aspect-ratio:4/3;overflow:hidden}.ze-wide-media img{width:100%;height:100%;object-fit:cover}

/* Categories */
.ze-category-list{border-top:1px solid var(--ze-line)}.ze-category-row{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1.38fr);gap:56px;align-items:stretch;padding:28px 0;border-bottom:1px solid var(--ze-line);text-decoration:none!important}.ze-category-row figure{aspect-ratio:16/10;overflow:hidden;background:#deded9}.ze-category-row img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.ze-category-row__copy{display:grid;grid-template-columns:70px minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:30px;align-content:center;padding:28px 0}.ze-category-row__copy>span{grid-row:1/-1;color:var(--ze-accent);font-size:11px;font-weight:700;letter-spacing:.14em}.ze-category-row__copy h3{font-size:clamp(28px,3vw,44px)}.ze-category-row__copy p{max-width:690px;margin-top:14px}.ze-category-row__copy em{align-self:end;margin-top:30px;color:var(--ze-ink);font-size:11px;font-style:normal;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ze-category-row:hover img{transform:scale(1.018)}

/* Ideas mosaic */
.ze-ideas-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:120px;gap:12px}.ze-idea{position:relative;display:block;overflow:hidden;text-decoration:none!important;background:#ddd}.ze-idea figure,.ze-idea img{width:100%;height:100%}.ze-idea img{object-fit:cover;transition:transform .55s ease}.ze-idea>div{position:absolute;left:0;right:0;bottom:0;padding:42px 18px 15px;background:rgba(34,94,112,.58);color:#fff}.ze-idea small{display:block;font-size:9px;letter-spacing:.13em}.ze-idea strong{display:block;margin-top:4px;font-size:15px;font-weight:600}.ze-idea--1{grid-column:span 7;grid-row:span 4}.ze-idea--2{grid-column:span 5;grid-row:span 3}.ze-idea--3{grid-column:span 5;grid-row:span 3}.ze-idea--4{grid-column:span 4;grid-row:span 3}.ze-idea--5{grid-column:span 4;grid-row:span 3}.ze-idea--6{grid-column:span 4;grid-row:span 3}.ze-idea:hover img{transform:scale(1.02)}

/* Process / capabilities */
.ze-process{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line)}.ze-process--four{grid-template-columns:repeat(4,minmax(0,1fr))}.ze-process article{min-height:270px;padding:30px 28px 38px;border-right:1px solid var(--ze-line)}.ze-process article:last-child{border-right:0}.ze-process article>span,.ze-capabilities article>span{color:var(--ze-accent);font-size:11px;font-weight:700;letter-spacing:.1em}.ze-process h3{margin-top:60px}.ze-process p{margin-top:12px;font-size:14px}.ze-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ze-line);border-left:1px solid var(--ze-line)}.ze-capabilities article{min-height:260px;padding:34px 38px;border-right:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line);background:#fff}.ze-capabilities h3{margin-top:46px}.ze-capabilities p{max-width:510px;margin-top:14px;font-size:15px}.ze-fact-list{border-top:1px solid var(--ze-line)}.ze-fact-list article{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--ze-line)}.ze-fact-list span{color:var(--ze-accent);font-size:11px;font-weight:700}.ze-fact-list strong{font-size:18px;font-weight:560}

/* Projects */
.ze-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px}.ze-project-card{text-decoration:none!important}.ze-project-card figure{aspect-ratio:16/10;overflow:hidden;background:#ddd}.ze-project-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.ze-project-card__meta{padding-top:18px}.ze-project-card__meta span{color:var(--ze-accent);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.ze-project-card__meta h3{margin-top:6px}.ze-project-card__meta small{display:block;margin-top:6px;color:var(--ze-muted);font-size:12px}.ze-project-card:hover img{transform:scale(1.018)}.ze-projects-archive-note{align-self:end;max-width:430px;padding:24px 0;border-top:1px solid var(--ze-line)}.ze-projects-archive-note span{color:var(--ze-accent);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.ze-projects-archive-note p{margin-top:8px;font-size:14px}.ze-project-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);gap:110px;align-items:start}.ze-project-lead{margin-top:22px!important;color:var(--ze-ink)!important;font-size:21px!important}.ze-richtext{margin-top:30px;color:var(--ze-muted);font-size:17px;line-height:1.8}.ze-richtext>*+*{margin-top:18px}.ze-project-facts{border-top:1px solid var(--ze-line)}.ze-project-facts>div{padding:20px 0;border-bottom:1px solid var(--ze-line)}.ze-project-facts small{display:block;color:var(--ze-muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.ze-project-facts strong{display:block;margin-top:5px;font-size:17px;font-weight:560}.ze-project-facts p{margin-top:7px;font-size:14px}.ze-project-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:100px;gap:10px}.ze-project-gallery__item{position:relative;grid-column:span 4;grid-row:span 4;padding:0;border:0;background:#ddd;overflow:hidden;cursor:pointer}.ze-project-gallery__item:nth-child(8n+1),.ze-project-gallery__item:nth-child(8n+6){grid-column:span 8;grid-row:span 5}.ze-project-gallery__item:nth-child(8n+2),.ze-project-gallery__item:nth-child(8n+7){grid-column:span 4;grid-row:span 5}.ze-project-gallery__item span,.ze-project-gallery__item img{display:block;width:100%;height:100%}.ze-project-gallery__item img{object-fit:cover;transition:transform .45s ease}.ze-project-gallery__item em{position:absolute;right:12px;bottom:10px;padding:4px 7px;background:rgba(255,255,255,.9);color:var(--ze-ink);font-size:9px;font-style:normal;font-weight:700;letter-spacing:.08em}.ze-project-gallery__item:hover img{transform:scale(1.018)}.ze-quote{max-width:970px}.ze-quote blockquote{font-size:clamp(27px,3vw,43px);font-weight:430;letter-spacing:-.025em;line-height:1.35}

/* Production */
.ze-production-band{border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line)}.ze-production-collage{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:1fr 1fr;gap:10px;min-height:620px}.ze-production-collage figure{overflow:hidden;background:#ddd}.ze-production-collage__item--1{grid-row:1/-1}.ze-production-collage img{width:100%;height:100%;object-fit:cover}.ze-production-gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:110px;gap:10px}.ze-production-gallery figure{overflow:hidden;background:#ddd}.ze-production-gallery img{width:100%;height:100%;object-fit:cover}.ze-production-gallery__1{grid-column:span 7;grid-row:span 5}.ze-production-gallery__2{grid-column:span 5;grid-row:span 4}.ze-production-gallery__3{grid-column:span 5;grid-row:span 4}.ze-production-gallery__4{grid-column:span 7;grid-row:span 3}.ze-production-long-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:100px;gap:10px}.ze-production-long-grid figure{grid-column:span 4;grid-row:span 4;overflow:hidden}.ze-production-long-grid figure:nth-child(8n+1),.ze-production-long-grid figure:nth-child(8n+5){grid-column:span 8;grid-row:span 5}.ze-production-long-grid img{width:100%;height:100%;object-fit:cover}

/* About gallery */
.ze-about-gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:105px;gap:10px}.ze-about-gallery figure{overflow:hidden}.ze-about-gallery img{width:100%;height:100%;object-fit:cover}.ze-about-gallery__1{grid-column:span 7;grid-row:span 5}.ze-about-gallery__2{grid-column:span 5;grid-row:span 4}.ze-about-gallery__3{grid-column:span 5;grid-row:span 4}.ze-about-gallery__4{grid-column:span 4;grid-row:span 4}.ze-about-gallery__5{grid-column:span 4;grid-row:span 4}.ze-about-gallery__6{grid-column:span 4;grid-row:span 4}

/* Contact */
.ze-contact-paths{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line)}.ze-contact-paths article{padding:28px 28px 32px;border-right:1px solid var(--ze-line)}.ze-contact-paths article:last-child{border-right:0}.ze-contact-paths span{color:var(--ze-accent);font-size:11px;font-weight:700}.ze-contact-paths h3{margin-top:32px;font-size:22px}.ze-contact-paths p{margin-top:11px;font-size:14px}.ze-contact-layout{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);gap:100px;align-items:start}.ze-contact-info h2{max-width:520px}.ze-contact-links{margin-top:34px;border-top:1px solid var(--ze-line)}.ze-contact-links a{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--ze-line);text-decoration:none!important}.ze-contact-links small{color:var(--ze-muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.ze-contact-links strong{font-size:16px;font-weight:560}.ze-ref{margin-top:28px;padding:13px 0;border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line);font-size:13px}.ze-appointment{margin-top:24px!important;color:var(--ze-ink)!important;font-size:14px!important;font-weight:650}.ze-contact-form{display:grid;gap:20px}.ze-contact-form label{display:grid;gap:8px}.ze-contact-form label>span{font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.ze-contact-form input,.ze-contact-form select,.ze-contact-form textarea{width:100%;min-height:50px;padding:10px 0;border:0;border-bottom:1px solid #bfc2bd;border-radius:0;background:transparent;color:var(--ze-ink);font:inherit}.ze-contact-form textarea{min-height:150px;resize:vertical}.ze-contact-form input:focus,.ze-contact-form select:focus,.ze-contact-form textarea:focus{outline:0;border-bottom-color:var(--ze-accent)}.ze-field-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.ze-form-bottom{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:10px}.ze-form-bottom p{font-size:13px}.ze-form-bottom .is-success{color:#236646}.ze-form-bottom .is-error{color:#9a3933}.ze-hp{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}.ze-map-layout{display:grid;grid-template-columns:minmax(300px,.58fr) minmax(0,1.42fr);gap:82px;align-items:center}.ze-address{margin:22px 0 30px!important;color:var(--ze-ink)!important;font-size:20px!important}.ze-map{min-height:480px;border:1px solid var(--ze-line)}.ze-map iframe{display:block;width:100%;height:480px;border:0}

/* News */
.ze-news-hero{padding:116px 0 84px;background:var(--ze-soft)}.ze-news-hero__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.55fr);gap:90px;align-items:end}.ze-news-hero h1{max-width:900px}.ze-news-hero p{max-width:650px;margin-top:22px}.ze-news-hero figure{aspect-ratio:4/3;overflow:hidden}.ze-news-hero figure img{width:100%;height:100%;object-fit:cover}.ze-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px 24px}.ze-news-card a{display:block;text-decoration:none!important}.ze-news-card figure{aspect-ratio:16/10;overflow:hidden;background:var(--ze-soft-2)}.ze-news-card figure img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.ze-news-card__placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:var(--ze-accent);font-size:16px;font-weight:700;letter-spacing:.18em}.ze-news-card> a>div{padding-top:18px}.ze-news-card small{color:var(--ze-accent);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.ze-news-card h3{margin-top:8px}.ze-news-card p{margin-top:12px;font-size:14px}.ze-news-card em{display:inline-block;margin-top:17px;border-bottom:1px solid var(--ze-ink);font-size:11px;font-style:normal;font-weight:700;letter-spacing:.05em}.ze-news-card:hover figure img{transform:scale(1.018)}.ze-news-grid--archive{grid-template-columns:repeat(3,1fr)}.ze-news-grid--archive .ze-news-card--lead{grid-column:span 2;grid-row:span 2}.ze-news-grid--archive .ze-news-card--lead figure{aspect-ratio:16/9}.ze-news-grid--archive .ze-news-card--lead h3{font-size:clamp(28px,3vw,42px)}.ze-news-single__head{padding:100px 0 66px;background:var(--ze-soft)}.ze-news-single__head .ze-shell{width:var(--ze-narrow)}.ze-news-single__meta{display:flex;gap:18px;margin-bottom:22px;color:var(--ze-accent);font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.ze-news-single__head h1{max-width:900px;font-size:clamp(44px,5vw,70px)}.ze-news-single__head p{margin-top:22px;font-size:19px}.ze-news-single__hero{width:var(--ze-shell);margin:0 auto;max-height:760px;overflow:hidden}.ze-news-single__hero img{width:100%;height:min(70vh,760px);object-fit:cover}.ze-news-single__body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:100px;align-items:start;width:var(--ze-narrow)}.ze-news-single__body aside{padding-top:8px;border-top:1px solid var(--ze-line)}.ze-news-single__body aside p{font-size:14px}.ze-empty{max-width:700px;padding:40px 0;border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line)}.ze-empty p{margin-top:12px}

/* CTA */
.ze-cta{padding:90px 0;background:#edf0ed;border-top:1px solid var(--ze-line)}.ze-cta__inner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(230px,.4fr);gap:70px;align-items:end}.ze-cta h2{max-width:900px}.ze-cta p{max-width:720px;margin-top:18px}.ze-cta__actions{display:flex;flex-direction:column;align-items:flex-start}.ze-cta__actions .ze-link{margin-top:18px}

/* Motion */
.ze-reveal{opacity:0;transform:translateY(16px);transition:opacity .58s ease,transform .58s cubic-bezier(.2,.7,.2,1)}.ze-reveal.is-visible{opacity:1;transform:none}

/* Product module: strip template/card feel and align with editorial site. */
.ze-products-system .zahov-products,.ze-category-showcase .zahov-products{--zp-cream:#fff;--zp-soft:var(--ze-soft);--zp-text:var(--ze-ink);--zp-text-soft:var(--ze-muted);--zp-teal:var(--ze-accent);--zp-teal-dark:var(--ze-accent-deep);font-family:var(--ze-font)}.ze-products-system .zahov-products-landing,.ze-category-showcase .zahov-products__collections{max-width:none!important;padding-left:0!important;padding-right:0!important}.ze-products-system .zahov-products-landing__intro{display:none}.ze-products-system .zahov-products-ref-search,.ze-category-showcase .zahov-products-ref-search{margin:0 0 54px!important;padding:24px 0!important;border:0!important;border-top:1px solid var(--ze-line)!important;border-bottom:1px solid var(--ze-line)!important;background:transparent!important}.zahov-products-ref-search__control input{border-radius:0!important;background:#fff!important}.ze-products-system .zahov-products-landing__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.ze-products-system .zahov-product-category,.ze-products-system .zahov-product-category:nth-child(n){grid-column:auto!important;aspect-ratio:16/10!important;border-radius:0!important}.ze-products-system .zahov-product-category__overlay{background:rgba(19,20,19,.34)!important}.ze-products-system .zahov-product-category__copy{left:26px!important;right:26px!important;bottom:24px!important}.ze-products-system .zahov-product-category__copy strong{font-size:clamp(28px,3vw,44px)!important;font-weight:500!important}.ze-products-system .zahov-product-category__copy em{border-bottom:1px solid rgba(255,255,255,.78)!important}.ze-category-showcase .zahov-products__back,.ze-category-showcase .zahov-products__intro--category{display:none!important}.ze-category-showcase .zahov-products__section-nav{margin-bottom:28px!important;border-bottom:1px solid var(--ze-line)!important}.ze-category-showcase .zahov-products__section-nav a{color:var(--ze-muted)!important}.ze-category-showcase .zahov-products-section{padding:56px 0 68px!important;border-bottom:1px solid var(--ze-line)!important}.ze-category-showcase .zahov-products-section__header{grid-template-columns:minmax(0,.75fr) minmax(300px,.55fr)!important;gap:70px!important;margin-bottom:30px!important}.ze-category-showcase .zahov-products-section__index{color:var(--ze-accent)!important}.ze-category-showcase .zahov-products-section h3{font-size:clamp(30px,3vw,44px)!important;font-weight:500!important}.ze-category-showcase .zahov-products-section__description{color:var(--ze-muted)!important}.ze-category-showcase .zahov-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.ze-category-showcase .zahov-product-idea{aspect-ratio:4/3!important;border-radius:0!important}.ze-category-showcase .zahov-product-idea__shade{background:rgba(18,19,18,.16)!important}.ze-category-showcase .zahov-product-idea__meta{padding:0!important;background:transparent!important}.ze-category-showcase .zahov-products-section__more{border:0!important;border-bottom:1px solid var(--ze-ink)!important;border-radius:0!important;background:transparent!important;color:var(--ze-ink)!important}.ze-category-showcase .zahov-products-section__furniture{border:0!important;border-top:1px solid var(--ze-line)!important;border-bottom:1px solid var(--ze-line)!important;background:transparent!important}.ze-category-showcase .zahov-products__cta{border:0!important;border-top:1px solid var(--ze-line)!important;border-bottom:1px solid var(--ze-line)!important;background:transparent!important;border-radius:0!important}

/* Project module archive: static architectural grid, no hidden hover wall. */
.ze-projects-archive-content .zahov-projects{--zp-text:var(--ze-ink);--zp-text-soft:var(--ze-muted);--zp-teal:var(--ze-accent);font-family:var(--ze-font)}.ze-projects-archive-content .zahov-projects__filters{margin-bottom:44px!important;gap:28px!important}.ze-projects-archive-content .zahov-projects__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:48px 20px!important}.ze-projects-archive-content .zahov-project-card__media{aspect-ratio:4/3!important;border-radius:0!important}.ze-projects-archive-content .zahov-project-card__overlay{background:rgba(18,19,18,.20)!important;opacity:1!important}.ze-projects-archive-content .zahov-project-card__info{padding:18px!important;transform:none!important}.ze-projects-archive-content .zahov-project-card__category{margin-bottom:4px!important}.ze-projects-archive-content .zahov-project-card__title{font-size:20px!important;font-weight:560!important}.ze-projects-archive-content .zahov-project-card__description,.ze-projects-archive-content .zahov-project-card__hint{display:none!important}.ze-projects-archive-content .zahov-project-card__open:hover .zahov-project-card__media img{transform:scale(1.018)!important;filter:none!important}

/* Existing lightboxes remain functional but visually restrained. */
.zahov-products-lightbox__dialog,.zahov-projects-lightbox__dialog{border-radius:0!important;box-shadow:0 22px 70px rgba(34,94,112,.18)!important}.zahov-products-lightbox__backdrop,.zahov-projects-lightbox__backdrop,.zahov-project-single-lightbox__backdrop{background:rgba(34,94,112,.88)!important}.zahov-products-lightbox__close,.zahov-projects-lightbox__close,.zahov-project-single-lightbox__close{border-radius:0!important}.zahov-project-single-lightbox[hidden]{display:none!important}.zahov-project-single-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px}.zahov-project-single-lightbox__backdrop{position:absolute;inset:0}.zahov-project-single-lightbox__dialog{position:relative;z-index:1;width:min(1380px,95vw);height:min(860px,91vh);background:#225e70;display:flex;align-items:center;justify-content:center}.zahov-project-single-lightbox__stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.zahov-project-single-lightbox__stage img{max-width:100%;max-height:100%;object-fit:contain}.zahov-project-single-lightbox__close{position:absolute;right:15px;top:15px;z-index:3;width:44px;height:44px;border:1px solid rgba(255,255,255,.5);background:rgba(42,114,135,.92);color:#fff;font-size:28px}.zahov-project-single-lightbox__nav{position:absolute;top:50%;z-index:3;width:48px;height:60px;transform:translateY(-50%);border:0;background:rgba(42,114,135,.92);color:#fff;font-size:32px}.zahov-project-single-lightbox__nav--prev{left:12px}.zahov-project-single-lightbox__nav--next{right:12px}.zahov-project-single-lightbox__meta{position:absolute;left:16px;bottom:14px;display:flex;gap:16px;color:#fff;font-size:12px}

@media(max-width:1100px){:root{--ze-shell:min(100% - 48px,1080px);--ze-narrow:min(100% - 48px,860px)}.ze-section{padding:92px 0}.ze-inner-hero__grid{grid-template-columns:1fr 1fr;gap:48px}.ze-editorial-split,.ze-editorial-split--reverse{gap:58px}.ze-heading--wide{gap:50px}.ze-process{grid-template-columns:repeat(3,1fr)}.ze-process--four{grid-template-columns:repeat(2,1fr)}.ze-process article{border-bottom:1px solid var(--ze-line)}.ze-contact-paths{grid-template-columns:repeat(2,1fr)}.ze-contact-paths article{border-bottom:1px solid var(--ze-line)}.ze-contact-layout{gap:58px}.ze-project-intro{gap:60px}.ze-news-single__body{gap:60px}.ze-projects-archive-content .zahov-projects__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ze-category-showcase .zahov-products-section__header{gap:42px!important}}

@media(max-width:760px){:root{--ze-shell:calc(100% - 30px);--ze-narrow:calc(100% - 30px)}.ze-section{padding:68px 0}.ze-eyebrow{margin-bottom:13px;font-size:10px}.ze-page h1{font-size:clamp(39px,12vw,57px)}.ze-page h2{font-size:clamp(30px,9.2vw,42px)}.ze-page p{font-size:15px}.ze-hero{min-height:78svh}.ze-hero__content{padding-bottom:44px}.ze-hero__content p{font-size:15px}.ze-actions{gap:18px;margin-top:28px}.ze-inner-hero{padding:60px 0 56px}.ze-inner-hero__grid{grid-template-columns:1fr;gap:32px}.ze-inner-hero__grid>div{padding:0}.ze-inner-hero__media{aspect-ratio:4/3}.ze-category-hero,.ze-project-hero{min-height:72svh}.ze-category-hero__copy,.ze-project-hero__copy{padding-bottom:42px}.ze-category-hero__copy p,.ze-project-hero__copy p{font-size:15px}.ze-editorial-split,.ze-editorial-split--reverse,.ze-project-intro,.ze-contact-layout,.ze-map-layout,.ze-news-single__body{grid-template-columns:1fr;gap:42px}.ze-story-grid{min-height:480px;gap:7px}.ze-pair{gap:7px}.ze-pair figure:first-child{margin-top:28px}.ze-heading{margin-bottom:34px}.ze-heading--row{display:block}.ze-heading--row .ze-link{margin-top:22px}.ze-heading--wide{display:block}.ze-heading--wide .ze-eyebrow{margin-top:0}.ze-category-row{grid-template-columns:1fr;gap:0;padding:20px 0}.ze-category-row figure{aspect-ratio:16/10}.ze-category-row__copy{grid-template-columns:44px 1fr;padding:22px 0 10px}.ze-category-row__copy p{font-size:14px}.ze-ideas-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:7px}.ze-idea,.ze-idea[class*="ze-idea--"]{grid-column:auto;grid-row:auto;aspect-ratio:1/1}.ze-idea>div{padding:32px 10px 10px}.ze-idea strong{font-size:12px}.ze-process,.ze-process--four,.ze-capabilities{grid-template-columns:1fr}.ze-process article,.ze-capabilities article{min-height:0;border-right:0}.ze-process h3,.ze-capabilities h3{margin-top:28px}.ze-project-grid{grid-template-columns:1fr;gap:36px}.ze-production-collage{min-height:470px;gap:7px}.ze-production-gallery,.ze-about-gallery,.ze-production-long-grid,.ze-project-gallery{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:7px}.ze-production-gallery figure,.ze-about-gallery figure,.ze-production-long-grid figure,.ze-project-gallery__item,.ze-project-gallery__item:nth-child(n){grid-column:auto!important;grid-row:auto!important;aspect-ratio:1/1}.ze-contact-paths{grid-template-columns:1fr}.ze-contact-paths article{border-right:0}.ze-field-row{grid-template-columns:1fr;gap:20px}.ze-map,.ze-map iframe{height:360px;min-height:360px}.ze-news-hero{padding:66px 0 54px}.ze-news-hero__inner{grid-template-columns:1fr;gap:34px}.ze-news-hero figure{aspect-ratio:16/10}.ze-news-grid,.ze-news-grid--archive{grid-template-columns:1fr;gap:38px}.ze-news-grid--archive .ze-news-card--lead{grid-column:auto;grid-row:auto}.ze-news-single__head{padding:62px 0 48px}.ze-news-single__hero{width:100%;max-height:none}.ze-news-single__hero img{height:auto;aspect-ratio:16/10}.ze-cta{padding:64px 0}.ze-cta__inner{grid-template-columns:1fr;gap:34px}.ze-products-system .zahov-products-landing__grid{grid-template-columns:1fr!important;gap:8px!important}.ze-category-showcase .zahov-products-section__header{grid-template-columns:1fr!important;gap:18px!important}.ze-category-showcase .zahov-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.ze-projects-archive-content .zahov-projects__grid{grid-template-columns:1fr!important;gap:36px!important}}

@media(max-width:480px){:root{--ze-shell:calc(100% - 24px);--ze-narrow:calc(100% - 24px)}.ze-section{padding:58px 0}.ze-button{width:100%}.ze-actions{display:grid}.ze-story-grid{min-height:390px}.ze-production-collage{min-height:400px}.ze-category-row__copy{grid-template-columns:34px 1fr}.ze-category-showcase .zahov-products-grid{grid-template-columns:1fr!important}.ze-category-showcase .zahov-product-idea{aspect-ratio:4/3!important}.ze-projects-archive-content .zahov-projects__filters{gap:14px!important;overflow-x:auto;flex-wrap:nowrap!important;white-space:nowrap;padding-bottom:8px}.ze-form-bottom .ze-button{width:auto}.ze-contact-links a{display:grid;gap:4px}}

@media(prefers-reduced-motion:reduce){.ze-reveal{opacity:1!important;transform:none!important;transition:none!important}.ze-page *{scroll-behavior:auto!important}.ze-page img{transition:none!important}}

/* ========================================================================
   Zahov Editorial Refinement v4.0.0
   Calmer architectural rhythm: photography first, less landing-page UI.
   ======================================================================== */
:root{
  --ze-ink:#1b1c1a;
  --ze-muted:#686a65;
  --ze-line:#deded8;
  --ze-paper:#fefefc;
  --ze-soft:#f5f4f0;
  --ze-soft-2:#ecebe6;
  --ze-accent:#287187;
  --ze-accent-deep:#205e70;
  --ze-shell:min(1380px,calc(100vw - 96px));
  --ze-narrow:min(880px,calc(100vw - 96px));
  --ze-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
.ze-page{letter-spacing:-.004em}
.ze-section{padding:96px 0}
.ze-page h1{max-width:980px;font-size:clamp(46px,4.65vw,68px);font-weight:460;letter-spacing:-.038em;line-height:1.055}
.ze-page h2{font-size:clamp(31px,3.15vw,44px);font-weight:470;letter-spacing:-.03em;line-height:1.1}
.ze-page h3{font-size:clamp(20px,1.7vw,27px);font-weight:560}
.ze-page p{font-size:16.5px;line-height:1.74}
.ze-eyebrow{margin-bottom:15px;font-size:10px;letter-spacing:.13em}
.ze-heading{max-width:850px;margin-bottom:46px}
.ze-heading p{margin-top:16px}
.ze-heading--wide{grid-template-columns:minmax(150px,.28fr) minmax(0,1fr);gap:70px}
.ze-actions{margin-top:30px}
.ze-button{min-height:47px;padding:0 20px;letter-spacing:.085em}

/* Heroes are immersive without swallowing the entire first screen. */
.ze-hero{min-height:min(800px,82vh)}
.ze-hero__overlay{background:linear-gradient(90deg,rgba(34,94,112,.48) 0%,rgba(34,94,112,.24) 52%,rgba(34,94,112,.10) 100%)}
.ze-hero__content{padding-bottom:62px}
.ze-hero__content p{max-width:680px;margin-top:20px;font-size:17px}
.ze-inner-hero{padding:92px 0 76px}
.ze-inner-hero__grid{grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr);gap:76px}
.ze-inner-hero__grid>div{padding:22px 0}
.ze-inner-hero__grid p{margin-top:20px;font-size:17px}
.ze-inner-hero__media{aspect-ratio:1.5/1}
.ze-category-hero,.ze-project-hero{min-height:min(690px,72vh)}
.ze-category-hero__overlay,.ze-project-hero__overlay{background:linear-gradient(90deg,rgba(34,94,112,.50) 0%,rgba(34,94,112,.25) 55%,rgba(34,94,112,.09) 100%)}
.ze-category-hero__copy,.ze-project-hero__copy{padding-bottom:58px}
.ze-category-hero__copy p,.ze-project-hero__copy p{font-size:16.5px}

/* Give editorial blocks more unequal, magazine-like proportions. */
.ze-editorial-split{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:104px}
.ze-editorial-split--reverse{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.ze-story-grid{gap:10px;min-height:590px}
.ze-pair{gap:10px}
.ze-pair figure:first-child{margin-top:74px}
.ze-wide-media{aspect-ratio:3/2}

/* Product directions read as architecture rather than UI cards. */
.ze-category-row{grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr);gap:66px;padding:24px 0}
.ze-category-row figure{aspect-ratio:3/2}
.ze-category-row__copy{grid-template-columns:58px minmax(0,1fr);column-gap:28px;padding:20px 0}
.ze-category-row__copy h3{font-size:clamp(27px,2.6vw,39px)}
.ze-category-row__copy em{margin-top:24px}

/* Process is a quiet timeline, not a row of feature cards. */
.ze-process{gap:0;background:transparent}
.ze-process article{min-height:235px;padding:25px 25px 32px;background:transparent}
.ze-process article>span,.ze-capabilities article>span{font-size:9.5px;letter-spacing:.12em}
.ze-process h3{margin-top:50px;font-size:21px}
.ze-process p{max-width:210px;margin-top:10px;font-size:13.5px;line-height:1.65}
.ze-capabilities{border-left:0}
.ze-capabilities article{min-height:225px;padding:32px 0 34px;background:transparent;border-right:0}
.ze-capabilities article:nth-child(odd){padding-right:48px;border-right:1px solid var(--ze-line)}
.ze-capabilities article:nth-child(even){padding-left:48px}
.ze-capabilities h3{margin-top:36px}

/* Portfolio gets more breathing room and larger images. */
.ze-project-grid{gap:56px 30px}
.ze-project-card figure{aspect-ratio:3/2}
.ze-project-card__meta{padding-top:15px}
.ze-project-card__meta h3{font-size:23px}

/* Contact scenarios are editorial rows instead of boxed features. */
.ze-contact-paths{border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line)}
.ze-contact-paths article{min-height:0;padding:28px 26px 32px;background:transparent}
.ze-contact-paths h3{margin-top:32px;font-size:20px}
.ze-contact-paths p{font-size:13.5px}

/* Product module: preserve the exact MASTER hierarchy visually and calmly. */
.ze-products-system .zahov-products-ref-search,
.ze-category-showcase .zahov-products-ref-search{border-radius:0!important;box-shadow:none!important}
.ze-products-system .zahov-product-category,
.ze-category-showcase .zahov-product-idea{border-radius:0!important;box-shadow:none!important}
.ze-category-showcase .zahov-products__section-nav{position:sticky;top:72px;z-index:4;background:rgba(254,254,252,.96);backdrop-filter:blur(10px);border-top:1px solid var(--ze-line);border-bottom:1px solid var(--ze-line)}
.ze-category-showcase .zahov-products-section{scroll-margin-top:130px}
.ze-category-showcase .zahov-products-section__header{padding-top:58px}
.ze-category-showcase .zahov-products-section__index{font-size:10px!important;letter-spacing:.12em!important}
.ze-category-showcase .zahov-products-section__header h3{font-size:clamp(27px,2.7vw,40px)!important;font-weight:480!important;letter-spacing:-.025em!important}
.ze-category-showcase .zahov-products-grid{gap:8px!important}
.ze-category-showcase .zahov-product-idea{aspect-ratio:4/3!important}

/* Reduce decorative motion. */
.ze-reveal{transform:translateY(12px)}
.ze-page img{transition-duration:.38s!important}

@media(max-width:1100px){
  :root{--ze-shell:min(100% - 56px,1380px);--ze-narrow:min(100% - 56px,880px)}
  .ze-section{padding:82px 0}
  .ze-inner-hero__grid{gap:48px;grid-template-columns:minmax(0,.95fr) minmax(380px,1.05fr)}
  .ze-editorial-split,.ze-editorial-split--reverse{gap:64px}
  .ze-process article{padding-inline:20px}
}
@media(max-width:780px){
  :root{--ze-shell:calc(100% - 32px);--ze-narrow:calc(100% - 32px)}
  .ze-section{padding:68px 0}
  .ze-page h1{font-size:clamp(38px,11vw,50px)}
  .ze-page h2{font-size:clamp(29px,8.5vw,38px)}
  .ze-hero{min-height:76svh}
  .ze-hero__content{padding-bottom:42px}
  .ze-inner-hero{padding:62px 0 54px}
  .ze-inner-hero__grid{grid-template-columns:1fr;gap:30px}
  .ze-inner-hero__grid>div{padding:0}
  .ze-inner-hero__media{aspect-ratio:4/3}
  .ze-category-hero,.ze-project-hero{min-height:66svh}
  .ze-editorial-split,.ze-editorial-split--reverse{grid-template-columns:1fr;gap:38px}
  .ze-pair figure:first-child{margin-top:26px}
  .ze-heading{margin-bottom:32px}
  .ze-category-row{grid-template-columns:1fr;gap:0}
  .ze-process,.ze-process--four{grid-template-columns:1fr}
  .ze-process article{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;min-height:0;padding:22px 0;border-right:0;border-bottom:1px solid var(--ze-line)}
  .ze-process article:last-child{border-bottom:0}
  .ze-process h3{margin-top:0}
  .ze-process p{grid-column:2;max-width:none}
  .ze-capabilities article,.ze-capabilities article:nth-child(odd),.ze-capabilities article:nth-child(even){padding:28px 0;border-right:0}
  .ze-category-showcase .zahov-products__section-nav{top:58px;overflow-x:auto;white-space:nowrap;flex-wrap:nowrap!important}
}
@media(max-width:480px){
  :root{--ze-shell:calc(100% - 24px);--ze-narrow:calc(100% - 24px)}
  .ze-section{padding:56px 0}
  .ze-page h1{font-size:clamp(36px,10.7vw,46px)}
  .ze-page p{font-size:15px}
  .ze-category-showcase .zahov-products-grid{grid-template-columns:1fr!important}
  .ze-category-showcase .zahov-product-idea{aspect-ratio:4/3!important}
}

/* ========================================================================
   Zahov Reliability + Editorial Polish v4.2.0
   Theme title suppression, deterministic full-bleed heroes, cleaner rhythm.
   ======================================================================== */
body.zahov-plugin-page .entry-header,
body.zahov-plugin-page .page-header,
body.zahov-plugin-page .page-title,
body.zahov-plugin-page .elementor-page-title,
body.zahov-plugin-page .ct-page-title,
body.zahov-plugin-page .hero-section:not(.ze-hero):not(.ze-category-hero):not(.ze-project-hero),
body.zahov-plugin-page main#primary > header,
body.zahov-plugin-page .site-main > header.entry-header{display:none!important}
body.zahov-plugin-page main#primary,
body.zahov-plugin-page .site-main,
body.zahov-plugin-page .content-area{margin-top:0!important;padding-top:0!important}

/* Images are rendered from their original optimized upload, not fragile WP sub-sizes. */
.zahov-plugin-page img.ze-img{display:block;width:100%;height:100%;object-fit:cover}
.zahov-plugin-page figure{background:#e7e6e1}

/* Strong, calm first impression on every managed page. */
.ze-hero,.ze-category-hero,.ze-project-hero{isolation:isolate;overflow:hidden}
.ze-hero__media,.ze-category-hero__media,.ze-project-hero__media{z-index:-2;background:#d8d7d1}
.ze-hero__overlay,.ze-category-hero__overlay,.ze-project-hero__overlay{z-index:-1}
.ze-hero{min-height:min(820px,84vh)}
.ze-category-hero,.ze-project-hero{min-height:min(720px,74vh)}
.ze-category-hero__media img,.ze-hero__media img,.ze-project-hero__media img{transform:scale(1.001)}
.ze-category-hero__overlay,.ze-project-hero__overlay{background:linear-gradient(90deg,rgba(34,94,112,.62) 0%,rgba(34,94,112,.38) 48%,rgba(34,94,112,.16) 78%,rgba(34,94,112,.06) 100%)}
.ze-hero__overlay{background:linear-gradient(90deg,rgba(34,94,112,.60) 0%,rgba(34,94,112,.36) 52%,rgba(34,94,112,.10) 82%)}
.ze-category-hero__copy,.ze-project-hero__copy,.ze-hero__content{max-width:1380px}
.ze-category-hero__copy h1,.ze-project-hero__copy h1{max-width:900px}
.ze-category-hero__copy p,.ze-project-hero__copy p{max-width:650px}

/* Four main directions: no numbered UI, no card feel. */
.ze-category-row__copy{display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:32px 0!important}
.ze-category-row__copy>span{display:none!important}
.ze-category-row__copy h3{margin:0!important}
.ze-category-row__copy p{margin-top:16px!important}
.ze-category-row__copy em{margin-top:30px!important;align-self:auto!important}

/* MASTER subfolders keep their order, while the numeric prefix stays internal. */
.ze-category-showcase .zahov-products-section__index{display:none!important}
.ze-category-showcase .zahov-products-section__title{display:block!important}
.ze-category-showcase .zahov-products-section__header{border-top:1px solid var(--ze-line);padding-top:64px!important}
.ze-category-showcase .zahov-products-section:first-child .zahov-products-section__header{border-top:0}
.ze-category-showcase .zahov-products-section__header h3{margin-top:0!important}

/* Less "component demo", more editorial space. */
.ze-section{padding:104px 0}
.ze-section--soft{background:#f6f5f1}
.ze-heading--wide{grid-template-columns:180px minmax(0,1fr);gap:88px}
.ze-project-grid{gap:64px 32px}
.ze-contact-paths article{padding-top:34px;padding-bottom:38px}

@media(max-width:780px){
  body.zahov-plugin-page main#primary,body.zahov-plugin-page .site-main{padding-top:0!important}
  .ze-hero{min-height:72svh}
  .ze-category-hero,.ze-project-hero{min-height:62svh}
  .ze-hero__overlay,.ze-category-hero__overlay,.ze-project-hero__overlay{background:linear-gradient(180deg,rgba(34,94,112,.10) 0%,rgba(34,94,112,.28) 48%,rgba(34,94,112,.72) 100%)}
  .ze-category-hero__copy,.ze-project-hero__copy,.ze-hero__content{padding-bottom:38px}
  .ze-section{padding:68px 0}
  .ze-heading--wide{display:block}
  .ze-category-row__copy{padding:24px 0 12px!important}
}


/* ========================================================================
   Zahov v4.2.0 critical media/rendering fix
   v4.1 used negative z-index on hero media inside an isolated element. The
   section background then painted over the image, producing the grey hero.
   Keep all hero layers in the same positive stacking context.
   ======================================================================== */
.zahov-plugin-page .ze-hero__media,
.zahov-plugin-page .ze-category-hero__media,
.zahov-plugin-page .ze-project-hero__media{
  z-index:0!important;
  opacity:1!important;
  visibility:visible!important;
}
.zahov-plugin-page .ze-hero__overlay,
.zahov-plugin-page .ze-category-hero__overlay,
.zahov-plugin-page .ze-project-hero__overlay{
  z-index:1!important;
}
.zahov-plugin-page .ze-hero__content,
.zahov-plugin-page .ze-category-hero__copy,
.zahov-plugin-page .ze-project-hero__copy{
  z-index:2!important;
}
.zahov-plugin-page .ze-hero__media img,
.zahov-plugin-page .ze-category-hero__media img,
.zahov-plugin-page .ze-project-hero__media img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  opacity:1!important;
  visibility:visible!important;
}
.zahov-plugin-page figure > img.ze-img{
  min-width:100%;
  min-height:100%;
  opacity:1!important;
  visibility:visible!important;
}
.zahov-plugin-page .ze-story-grid figure,
.zahov-plugin-page .ze-category-row figure,
.zahov-plugin-page .ze-wide-media,
.zahov-plugin-page .ze-idea figure,
.zahov-plugin-page .ze-project-card figure{
  position:relative;
  background:#ecebe6;
}
.zahov-plugin-page .ze-story-grid figure > img,
.zahov-plugin-page .ze-category-row figure > img,
.zahov-plugin-page .ze-wide-media > img,
.zahov-plugin-page .ze-idea figure > img,
.zahov-plugin-page .ze-project-card figure > img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Hero crop positions selected for the bundled Zahov fallback photography. */
.zahov-plugin-page--home .ze-hero__media img{object-position:center 52%!important}
.zahov-plugin-page--products .ze-category-hero__media img{object-position:center 45%!important}
@media(max-width:780px){
  .zahov-plugin-page--home .ze-hero__media img{object-position:58% center!important}
}


/* ========================================================================
   Zahov v5.1.0 — STRICT SYMMETRY RULE
   Permanent design rule: no masonry, no staggered cards, no image spanning.
   Every multi-image composition uses equal cells and consistent crops.
   ======================================================================== */

/* Home story: exactly two equal images next to the text. */
.zahov-plugin-page .ze-story-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
    min-height:0!important;
    align-items:stretch!important;
}
.zahov-plugin-page .ze-story-grid figure,
.zahov-plugin-page .ze-story-grid figure:nth-child(n){
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    margin:0!important;
    overflow:hidden!important;
}

/* Two-image editorial pair: no stagger / offset. */
.zahov-plugin-page .ze-pair{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    align-items:stretch!important;
}
.zahov-plugin-page .ze-pair figure,
.zahov-plugin-page .ze-pair figure:first-child{
    width:100%!important;
    aspect-ratio:4/3!important;
    margin:0!important;
    overflow:hidden!important;
}

/* Home selected ideas: strict 3 x N matrix. */
.zahov-plugin-page .ze-ideas-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
}
.zahov-plugin-page .ze-idea,
.zahov-plugin-page .ze-idea[class*="ze-idea--"]{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
}

/* Home production media: two equal images, never one large + two small. */
.zahov-plugin-page .ze-production-collage{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
    min-height:0!important;
}
.zahov-plugin-page .ze-production-collage figure,
.zahov-plugin-page .ze-production-collage figure:nth-child(n){
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    margin:0!important;
}

/* Project single galleries: uniform cards only. */
.zahov-plugin-page .ze-project-gallery{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
}
.zahov-plugin-page .ze-project-gallery__item,
.zahov-plugin-page .ze-project-gallery__item:nth-child(n){
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
}

/* About and Production galleries: identical geometry. */
.zahov-plugin-page .ze-production-gallery,
.zahov-plugin-page .ze-about-gallery,
.zahov-plugin-page .ze-production-long-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
}
.zahov-plugin-page .ze-production-gallery figure,
.zahov-plugin-page .ze-production-gallery figure:nth-child(n),
.zahov-plugin-page .ze-about-gallery figure,
.zahov-plugin-page .ze-about-gallery figure:nth-child(n),
.zahov-plugin-page .ze-production-long-grid figure,
.zahov-plugin-page .ze-production-long-grid figure:nth-child(n){
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    margin:0!important;
    min-height:0!important;
}

/* News archive: no oversized lead card. */
.zahov-plugin-page .ze-news-grid,
.zahov-plugin-page .ze-news-grid--archive{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:46px 24px!important;
}
.zahov-plugin-page .ze-news-grid--archive .ze-news-card,
.zahov-plugin-page .ze-news-grid--archive .ze-news-card--lead{
    grid-column:auto!important;
    grid-row:auto!important;
}
.zahov-plugin-page .ze-news-card figure,
.zahov-plugin-page .ze-news-grid--archive .ze-news-card--lead figure{
    aspect-ratio:4/3!important;
}
.zahov-plugin-page .ze-news-grid--archive .ze-news-card--lead h3{
    font-size:inherit!important;
}

/* Existing project overview remains a strict equal two-column matrix. */
.zahov-plugin-page .ze-project-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:start!important;
}
.zahov-plugin-page .ze-project-card figure{
    width:100%!important;
    aspect-ratio:4/3!important;
}

/* Product pages: lock every photo to the same geometry, including legacy rules. */
.zahov-plugin-page .ze-category-showcase .zahov-products-grid,
.zahov-plugin-page .zahov-products--category .zahov-products-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
    align-items:stretch!important;
}
.zahov-plugin-page .ze-category-showcase .zahov-product-idea,
.zahov-plugin-page .ze-category-showcase .zahov-product-idea:nth-child(n),
.zahov-plugin-page .zahov-products--category .zahov-product-idea,
.zahov-plugin-page .zahov-products--category .zahov-product-idea:nth-child(n){
    display:block!important;
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
    margin:0!important;
}
.zahov-plugin-page .zahov-product-idea__media,
.zahov-plugin-page .zahov-product-idea__media img,
.zahov-plugin-page .ze-idea figure,
.zahov-plugin-page .ze-idea img,
.zahov-plugin-page .ze-story-grid img,
.zahov-plugin-page .ze-pair img,
.zahov-plugin-page .ze-production-collage img,
.zahov-plugin-page .ze-project-gallery__item img,
.zahov-plugin-page .ze-production-gallery img,
.zahov-plugin-page .ze-about-gallery img,
.zahov-plugin-page .ze-production-long-grid img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}

@media(max-width:1000px){
    .zahov-plugin-page .ze-ideas-grid,
    .zahov-plugin-page .ze-project-gallery,
    .zahov-plugin-page .ze-production-gallery,
    .zahov-plugin-page .ze-about-gallery,
    .zahov-plugin-page .ze-production-long-grid,
    .zahov-plugin-page .ze-news-grid,
    .zahov-plugin-page .ze-news-grid--archive,
    .zahov-plugin-page .ze-category-showcase .zahov-products-grid,
    .zahov-plugin-page .zahov-products--category .zahov-products-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:640px){
    .zahov-plugin-page .ze-story-grid,
    .zahov-plugin-page .ze-pair,
    .zahov-plugin-page .ze-production-collage,
    .zahov-plugin-page .ze-ideas-grid,
    .zahov-plugin-page .ze-project-gallery,
    .zahov-plugin-page .ze-production-gallery,
    .zahov-plugin-page .ze-about-gallery,
    .zahov-plugin-page .ze-production-long-grid,
    .zahov-plugin-page .ze-news-grid,
    .zahov-plugin-page .ze-news-grid--archive,
    .zahov-plugin-page .ze-project-grid,
    .zahov-plugin-page .ze-category-showcase .zahov-products-grid,
    .zahov-plugin-page .zahov-products--category .zahov-products-grid{
        grid-template-columns:minmax(0,1fr)!important;
        gap:10px!important;
    }
    .zahov-plugin-page .ze-story-grid figure,
    .zahov-plugin-page .ze-pair figure,
    .zahov-plugin-page .ze-production-collage figure,
    .zahov-plugin-page .ze-idea,
    .zahov-plugin-page .ze-project-gallery__item,
    .zahov-plugin-page .ze-production-gallery figure,
    .zahov-plugin-page .ze-about-gallery figure,
    .zahov-plugin-page .ze-production-long-grid figure,
    .zahov-plugin-page .ze-news-card figure,
    .zahov-plugin-page .zahov-product-idea{
        aspect-ratio:4/3!important;
    }
}


/* v6.1.2 — Global location footer. Intentionally not scoped to .zahov-plugin-page
   because it must also appear on pages restored to Elementor/theme templates. */
.ze-global-location-footer{
    --zgf-bg:#f3f2ee;
    --zgf-ink:#171816;
    --zgf-muted:#6f716c;
    --zgf-line:#d8d8d2;
    --zgf-accent:#2a7287;
    --zgf-accent-deep:#225e70;
    width:100%;
    margin:0;
    padding:0;
    background:var(--zgf-bg);
    color:var(--zgf-ink);
    border-top:1px solid var(--zgf-line);
    font-family:Manrope,Inter,Arial,sans-serif;
}
.ze-global-location-footer,.ze-global-location-footer *{box-sizing:border-box}
.ze-global-location-footer__inner{
    width:min(1440px,calc(100% - 64px));
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
    gap:72px;
    align-items:stretch;
    padding:64px 0;
}
.ze-global-location-footer__content{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:18px 0}
.ze-global-location-footer__eyebrow{display:block;margin:0 0 24px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--zgf-muted)}
.ze-global-location-footer h2{margin:0;font-size:clamp(32px,3vw,50px);line-height:1.06;font-weight:500;letter-spacing:-.035em;color:var(--zgf-ink)}
.ze-global-location-footer__address{margin:28px 0 0!important;font-size:18px!important;line-height:1.55!important;color:var(--zgf-ink)!important}
.ze-global-location-footer__appointment{margin:14px 0 0!important;max-width:520px;font-size:14px!important;line-height:1.55!important;font-weight:700!important;color:var(--zgf-ink)!important}
.ze-global-location-footer__actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}
.ze-global-location-footer__button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid var(--zgf-accent);background:var(--zgf-accent);color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;transition:background .2s ease,border-color .2s ease,color .2s ease}
.ze-global-location-footer__button:hover,.ze-global-location-footer__button:focus-visible{background:var(--zgf-accent-deep);border-color:var(--zgf-accent-deep);color:#fff!important}
.ze-global-location-footer__link{color:var(--zgf-ink)!important;text-decoration:none!important;font-size:13px;font-weight:650;border-bottom:1px solid var(--zgf-ink);padding-bottom:3px}
.ze-global-location-footer__map{position:relative;min-height:390px;border:1px solid var(--zgf-line);background:#e9e8e3;overflow:hidden}
.ze-global-location-footer__map iframe{display:block;width:100%;height:100%;min-height:390px;border:0}
@media(max-width:900px){
    .ze-global-location-footer__inner{width:min(100% - 40px,760px);grid-template-columns:1fr;gap:34px;padding:52px 0}
    .ze-global-location-footer__map,.ze-global-location-footer__map iframe{min-height:340px}
}
@media(max-width:560px){
    .ze-global-location-footer__inner{width:calc(100% - 32px);padding:42px 0;gap:28px}
    .ze-global-location-footer h2{font-size:34px}
    .ze-global-location-footer__address{font-size:16px!important}
    .ze-global-location-footer__actions{align-items:stretch;gap:18px}
    .ze-global-location-footer__button{width:100%}
    .ze-global-location-footer__map,.ze-global-location-footer__map iframe{min-height:300px}
}


/* v6.1.2 — Zahov brand-color rule.
   Black/dark ink is reserved for typography only. Filled interactive surfaces use logo teal. */
:root{--zahov-logo-color:#2a7287;--zahov-logo-color-dark:#225e70}
.ze-page .ze-button:not(.ze-button--light),
.ze-global-location-footer__button{background:var(--zahov-logo-color)!important;border-color:var(--zahov-logo-color)!important;color:#fff!important}
.ze-page .ze-button:not(.ze-button--light):hover,
.ze-page .ze-button:not(.ze-button--light):focus-visible,
.ze-global-location-footer__button:hover,
.ze-global-location-footer__button:focus-visible{background:var(--zahov-logo-color-dark)!important;border-color:var(--zahov-logo-color-dark)!important;color:#fff!important}
.ze-global-location-footer__link{border-bottom-color:var(--zahov-logo-color)!important}

/* ========================================================================
   Zahov v7.0.0 — FINAL HANDOFF SYSTEM
   About trust strip + furniture workflow + strict brand/background rules.
   Black/dark surfaces are not used; near-black remains typography only.
   ======================================================================== */

/* Brand-tinted hero shading only — never black overlays. */
.zahov-plugin-page .ze-hero__overlay,
.zahov-plugin-page .ze-category-hero__overlay,
.zahov-plugin-page .ze-project-hero__overlay{
  background:linear-gradient(90deg,rgba(34,94,112,.62) 0%,rgba(34,94,112,.38) 46%,rgba(34,94,112,.16) 76%,rgba(34,94,112,.06) 100%)!important;
}
.zahov-products-lightbox__dialog,.zahov-projects-lightbox__dialog{
  box-shadow:0 22px 70px rgba(34,94,112,.18)!important;
}

/* About: trust metrics inspired by the reference hierarchy, but fully Zahov. */
.ze-about-trust{
  position:relative;
  z-index:4;
  margin-top:-58px;
  margin-bottom:-12px;
  background:transparent;
}
.ze-about-trust__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  padding:0;
  background:#fff;
  border:1px solid var(--ze-line);
  box-shadow:0 18px 56px rgba(34,94,112,.10);
}
.ze-about-trust__grid article{
  min-width:0;
  min-height:158px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:30px 24px;
  text-align:center;
  border-right:1px solid var(--ze-line);
  background:#fff;
}
.ze-about-trust__grid article:last-child{border-right:0}
.ze-about-trust__grid strong{
  color:var(--ze-ink);
  font-size:clamp(30px,3vw,45px);
  font-weight:650;
  letter-spacing:-.035em;
  line-height:1;
}
.ze-about-trust__grid span{
  max-width:220px;
  color:var(--ze-muted);
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1.45;
  text-transform:uppercase;
}

/* About workflow: equal geometry, no staggered cards or decorative masonry. */
.ze-about-workflow .ze-heading--wide{margin-bottom:52px}
.ze-process--workflow{
  grid-template-columns:repeat(5,minmax(0,1fr));
  border-left:1px solid var(--ze-line);
  background:#fff;
}
.ze-process--workflow article{
  min-height:320px;
  background:#fff;
  border-bottom:0;
}
.ze-process--workflow h3{
  min-height:56px;
  margin-top:44px;
  font-size:20px;
  line-height:1.25;
}
.ze-process--workflow p{
  max-width:none;
  font-size:13.5px;
  line-height:1.7;
}
.ze-about-workflow .ze-eyebrow{max-width:190px;line-height:1.55}

/* Keep all filled public CTAs in the Zahov logo color. */
.zahov-plugin-page .ze-button:not(.ze-button--light),
.zahov-plugin-page .zahov-products-lightbox__inquiry,
.zahov-plugin-page .zahov-product-idea__inquiry,
.ze-global-location-footer__button{
  background:#2a7287!important;
  border-color:#2a7287!important;
  color:#fff!important;
}
.zahov-plugin-page .ze-button:not(.ze-button--light):hover,
.zahov-plugin-page .zahov-products-lightbox__inquiry:hover,
.zahov-plugin-page .zahov-product-idea__inquiry:hover,
.ze-global-location-footer__button:hover,
.ze-global-location-footer__button:focus-visible{
  background:#225e70!important;
  border-color:#225e70!important;
}

@media(max-width:1180px){
  .ze-process--workflow{grid-template-columns:1fr}
  .ze-process--workflow article{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    column-gap:18px;
    min-height:0;
    padding:27px 28px;
    border-right:0;
    border-bottom:1px solid var(--ze-line);
  }
  .ze-process--workflow article:last-child{border-bottom:0}
  .ze-process--workflow h3{min-height:0;margin-top:0}
  .ze-process--workflow p{grid-column:2;margin-top:10px}
}
@media(max-width:900px){
  .ze-about-trust{margin-top:-34px;margin-bottom:0}
  .ze-about-trust__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ze-about-trust__grid article{min-height:142px;border-bottom:1px solid var(--ze-line)}
  .ze-about-trust__grid article:nth-child(even){border-right:0}
  .ze-about-trust__grid article:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:780px){
  .zahov-plugin-page .ze-hero__overlay,
  .zahov-plugin-page .ze-category-hero__overlay,
  .zahov-plugin-page .ze-project-hero__overlay{
    background:linear-gradient(180deg,rgba(34,94,112,.10) 0%,rgba(34,94,112,.28) 48%,rgba(34,94,112,.72) 100%)!important;
  }
  .ze-about-workflow .ze-heading--wide{margin-bottom:34px}
  .ze-about-workflow .ze-eyebrow{max-width:none}
}
@media(max-width:520px){
  .ze-about-trust{margin-top:-24px}
  .ze-about-trust__grid article{min-height:132px;padding:24px 14px}
  .ze-about-trust__grid strong{font-size:28px}
  .ze-about-trust__grid span{font-size:9px;letter-spacing:.09em}
}


/* v7.0.1 — Global Graycape creator credit in the active Hello Elementor footer. */
#site-footer .zahov-graycape-credit{
  margin-top:10px;
  color:rgba(255,255,255,.58);
  font-size:10px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.035em;
}
#site-footer .zahov-graycape-credit__heart{
  color:#2a7287;
  font-size:12px;
}
#site-footer .zahov-graycape-credit a,
#site-footer .zahov-graycape-credit a:visited{
  color:#fff!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(255,255,255,.38);
  padding-bottom:1px;
  transition:color .18s ease,border-color .18s ease;
}
#site-footer .zahov-graycape-credit a:hover,
#site-footer .zahov-graycape-credit a:focus-visible{
  color:#fff!important;
  border-bottom-color:#2a7287;
}
@media(max-width:767px){
  #site-footer .zahov-graycape-credit{font-size:10px;margin-top:9px}
}

/* v7.0.2 — visual polish: softer hero tint, premium white lightboxes, cleaner footer location block. */
:root{--zahov-logo-color-rgb:42,114,135}
.zahov-plugin-page .ze-hero__media,
.zahov-plugin-page .ze-category-hero__media,
.zahov-plugin-page .ze-project-hero__media,
.ze-hero__media,
.ze-category-hero__media,
.ze-project-hero__media{z-index:0}
.zahov-plugin-page .ze-hero__overlay,
.zahov-plugin-page .ze-category-hero__overlay,
.zahov-plugin-page .ze-project-hero__overlay,
.ze-hero__overlay,
.ze-category-hero__overlay,
.ze-project-hero__overlay{
  z-index:1!important;
  background:linear-gradient(90deg,rgba(var(--zahov-logo-color-rgb),.16) 0%,rgba(var(--zahov-logo-color-rgb),.09) 46%,rgba(var(--zahov-logo-color-rgb),.03) 100%)!important;
}
@media(max-width:780px){
  .zahov-plugin-page .ze-hero__overlay,
  .zahov-plugin-page .ze-category-hero__overlay,
  .zahov-plugin-page .ze-project-hero__overlay,
  .ze-hero__overlay,
  .ze-category-hero__overlay,
  .ze-project-hero__overlay{
    background:linear-gradient(180deg,rgba(var(--zahov-logo-color-rgb),.06) 0%,rgba(var(--zahov-logo-color-rgb),.12) 44%,rgba(15,16,14,.42) 100%)!important;
  }
}

.zahov-products-lightbox__backdrop,
.zahov-projects-lightbox__backdrop,
.zahov-project-single-lightbox__backdrop{
  background:rgba(243,244,242,.46)!important;
  backdrop-filter:blur(26px) saturate(118%)!important;
  -webkit-backdrop-filter:blur(26px) saturate(118%)!important;
}
.zahov-products-lightbox__dialog,
.zahov-projects-lightbox__dialog,
.zahov-project-single-lightbox__dialog{
  background:#fff!important;
  border:1px solid rgba(42,114,135,.12)!important;
  box-shadow:0 34px 90px rgba(16,26,30,.14)!important;
}
.zahov-project-single-lightbox__dialog{border-radius:0!important}
.zahov-products-lightbox__visual,
.zahov-projects-lightbox__visual,
.zahov-project-single-lightbox__stage,
.zahov-products-lightbox__stage{
  background:linear-gradient(90deg,rgba(245,247,247,.96) 0%,rgba(255,255,255,.99) 16%,#fff 50%,rgba(255,255,255,.99) 84%,rgba(245,247,247,.96) 100%)!important;
}
.zahov-products-lightbox__stage,
.zahov-project-single-lightbox__stage{overflow:hidden}
.zahov-products-lightbox__stage img,
.zahov-projects-lightbox__image,
.zahov-project-single-lightbox__stage img{background:#fff!important}
.zahov-products-lightbox__panel,
.zahov-projects-lightbox__panel{background:#fbfbfa!important}
.zahov-products-lightbox__close,
.zahov-projects-lightbox__close,
.zahov-project-single-lightbox__close,
.zahov-products-lightbox__nav,
.zahov-projects-lightbox__nav,
.zahov-project-single-lightbox__nav{
  border:1px solid rgba(42,114,135,.16)!important;
  background:rgba(255,255,255,.90)!important;
  color:#225e70!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 12px 30px rgba(16,26,30,.08);
}
.zahov-products-lightbox__nav:hover,
.zahov-projects-lightbox__nav:hover,
.zahov-project-single-lightbox__nav:hover,
.zahov-products-lightbox__close:hover,
.zahov-projects-lightbox__close:hover,
.zahov-project-single-lightbox__close:hover{background:#fff!important;border-color:rgba(42,114,135,.30)!important;color:#1b4b59!important}
.zahov-products-lightbox__counter,
.zahov-projects-lightbox__counter,
.zahov-project-single-lightbox__meta{color:#526067!important}

.ze-global-location-footer__content{max-width:560px}
.ze-global-location-footer__lead{margin:24px 0 0!important;font-size:17px!important;line-height:1.55!important;color:var(--zgf-muted)!important}
.ze-global-location-footer__appointment{margin-top:12px!important;max-width:440px}
.ze-global-location-footer__actions{margin-top:28px}

/* v7.1.0 — per-page Hero controls + swipe/drag gallery interaction. */
.zahov-plugin-page .ze-hero__overlay,
.zahov-plugin-page .ze-category-hero__overlay,
.zahov-plugin-page .ze-project-hero__overlay,
.ze-hero__overlay,
.ze-category-hero__overlay,
.ze-project-hero__overlay{
  z-index:1!important;
  background:rgba(var(--zh-hero-rgb,42,114,135),var(--zh-hero-opacity,.12))!important;
  backdrop-filter:blur(var(--zh-hero-blur,0px))!important;
  -webkit-backdrop-filter:blur(var(--zh-hero-blur,0px))!important;
}
@media(max-width:780px){
  .zahov-plugin-page .ze-hero__overlay,
  .zahov-plugin-page .ze-category-hero__overlay,
  .zahov-plugin-page .ze-project-hero__overlay,
  .ze-hero__overlay,
  .ze-category-hero__overlay,
  .ze-project-hero__overlay{
    background:rgba(var(--zh-hero-rgb,42,114,135),var(--zh-hero-opacity,.12))!important;
  }
}

.zahov-products-lightbox__stage,
.zahov-projects-lightbox__visual,
.zahov-project-single-lightbox__stage{
  touch-action:pan-y;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
}
.zahov-products-lightbox__stage.is-dragging,
.zahov-projects-lightbox__visual.is-dragging,
.zahov-project-single-lightbox__stage.is-dragging{
  cursor:grabbing;
}
.zahov-products-lightbox__stage img,
.zahov-projects-lightbox__image,
.zahov-project-single-lightbox__stage img{
  pointer-events:none;
  -webkit-user-drag:none;
  user-drag:none;
}


/* Zahov v8.6.0 — production video */
.ze-production-video-section{padding-top:20px!important}
.ze-production-video{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#111719}
.ze-production-video video{display:block;width:100%;height:100%;object-fit:cover;background:#111719}
.ze-production-video video.has-error{opacity:.22}
.ze-production-video__fallback{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;color:#fff;background:rgba(17,23,25,.72);font-size:14px;letter-spacing:.02em}
.ze-production-video__fallback[hidden]{display:none!important}
@media(max-width:760px){.ze-production-video-section{padding-top:0!important}.ze-production-video{aspect-ratio:16/10}}


/* ========================================================================== 
   v9.2.6 — Mobile lightbox micro-fixes + dropdown seam fix
   - High-contrast white REF / gallery counter text.
   - True centered X inside every mobile lightbox close button.
   - Mobile dropdown moved 5px upward to meet the header without a visible gap.
   ========================================================================== */

/* REF + image counter: keep readable over the dark floating badge. */
.zahov-project-single-lightbox__meta,
.zahov-project-single-lightbox__meta *,
.zahov-projects-lightbox__counter{
  color:#ffffff!important;
}

/* Center the close glyph geometrically, independent of theme button line-height/padding. */
.zahov-project-single-lightbox__close,
.zahov-products-lightbox__close,
.zahov-projects-lightbox__close{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  line-height:1!important;
  text-align:center!important;
}

@media(max-width:767px){
  .zahov-project-single-lightbox__close,
  .zahov-products-lightbox__close,
  .zahov-projects-lightbox__close{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    line-height:1!important;
  }

  /* Higher specificity than the legacy Additional CSS rule using top:70px. */
  html body #site-header.site-header .site-navigation-dropdown{
    top:65px!important;
  }

  html body.admin-bar #site-header.site-header .site-navigation-dropdown{
    top:111px!important;
  }
}

/* ========================================================================== 
   v9.2.6 — iPhone hamburger double-tap zoom guard
   Keeps normal page pinch zoom available while disabling Safari double-tap
   zoom on the hamburger control itself.
   ========================================================================== */
@media(max-width:767px){
  #site-header .site-navigation-toggle,
  #site-header .site-navigation-toggle *{
    touch-action:manipulation!important;
    -ms-touch-action:manipulation!important;
    -webkit-user-select:none!important;
    user-select:none!important;
    -webkit-touch-callout:none!important;
    -webkit-tap-highlight-color:transparent!important;
  }
}
