/*
Theme Name: Masseria Zambardo
Theme URI: https://masseriazambardo.it
Author: mingoHub
Description: Tema editoriale su misura per Masseria Zambardo, con pannello contenuti, camere, richieste soggiorno e supporto WooCommerce/Polylang.
Version: 2.3.1
Requires at least: 6.3
Requires PHP: 8.0
Text Domain: masseria-zambardo
*/

:root{--ink:#203128;--olive:#687354;--sage:#aeb595;--cream:#f1ebdf;--paper:#fbfaf6;--clay:#a65f43;--white:#fff;--muted:#667069;--line:rgba(32,49,40,.17);--serif:Iowan Old Style,Baskerville,Times New Roman,serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--shadow:0 24px 70px rgba(25,43,33,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(1220px,calc(100% - 64px));margin-inline:auto}.eyebrow{display:block;margin-bottom:20px;text-transform:uppercase;letter-spacing:.2em;font-size:.69rem;font-weight:700;color:var(--olive)}h1,h2,h3,.brand{font-family:var(--serif);font-weight:500;line-height:.97;margin:0}h1{font-size:clamp(4rem,9.4vw,8.5rem);letter-spacing:-.05em}h2{font-size:clamp(3rem,6vw,5.6rem);letter-spacing:-.042em}h3{font-size:clamp(1.8rem,3vw,2.7rem)}p{margin:0 0 1.25rem}.lead{font-family:var(--serif);font-size:clamp(1.45rem,2.5vw,2.15rem);line-height:1.32}.text-link{display:inline-flex;align-items:center;min-height:46px;border-bottom:1px solid currentColor;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:700}.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.screen-reader-text:focus{position:fixed!important;top:8px!important;left:8px!important;width:auto!important;height:auto!important;padding:10px 14px!important;margin:0!important;clip:auto!important;background:#fff;color:#111;z-index:9999}

.site-header{position:fixed;z-index:100;inset:0 0 auto;color:#fff;background:linear-gradient(rgba(15,25,19,.58),transparent);transition:background .3s,box-shadow .3s}.site-header.scrolled{background:rgba(32,49,40,.97);box-shadow:0 10px 32px rgba(12,25,17,.11);backdrop-filter:blur(12px)}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-size:1.95rem;line-height:.76;white-space:nowrap}.brand small{display:block;margin-bottom:8px;font-family:var(--sans);font-size:.48rem;line-height:1;letter-spacing:.31em;text-transform:uppercase}.brand img{width:auto;max-width:220px;max-height:58px}.nav{display:flex;align-items:center;gap:24px;font-size:.71rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.nav ul{list-style:none;display:flex;align-items:center;gap:22px;margin:0;padding:0}.nav a{position:relative}.nav li>a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:currentColor;transition:right .2s}.nav li>a:hover:after,.nav .current-menu-item>a:after{right:0}.languages ul{gap:8px}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 25px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.13em;font-size:.69rem;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.button:hover,.button:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow)}.button.light{background:#fff;color:var(--ink);border-color:#fff}.button.ghost{background:transparent;border-color:currentColor;color:inherit}.header-book{min-height:43px;padding-inline:19px}.menu-toggle{display:none;width:44px;height:44px;padding:11px;background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff}.menu-toggle span{display:block;width:19px;height:1px;margin:5px auto;background:currentColor;transition:.2s}.actions{display:flex;align-items:center;gap:13px 18px;flex-wrap:wrap}

.hero{min-height:100svh;display:flex;align-items:flex-end;position:relative;isolation:isolate;color:#fff;background-image:linear-gradient(90deg,rgba(13,24,17,.62) 0%,rgba(13,24,17,.34) 47%,rgba(13,24,17,.06) 78%),var(--hero-image);background-position:center;background-size:cover}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(10,20,14,.14),transparent 35%,rgba(10,20,14,.18))}.hero-content{padding:190px 0 84px}.hero-content>*{max-width:880px}.hero h1{max-width:970px;text-wrap:balance;text-shadow:0 3px 30px rgba(0,0,0,.24)}.hero h1 em{display:block;font-style:italic;color:#f2e8d4}.hero-copy{max-width:650px;margin:28px 0 31px;font-size:1.08rem;line-height:1.65;text-shadow:0 2px 18px rgba(0,0,0,.35)}.hero-eyebrow{color:#fff}.hero-whatsapp{margin-left:4px}.scroll-cue{position:absolute;right:4vw;bottom:78px;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.23em;font-size:.6rem}.section{padding:clamp(88px,10.5vw,150px) 0}.intro-section{background:var(--paper)}.intro-grid,.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,8vw,112px);align-items:center}.intro-grid h2{max-width:650px}.statement{margin-top:36px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:clamp(1.55rem,2.8vw,2.35rem)}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:72px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.fact{min-height:155px;padding:29px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.fact strong{display:block;font-family:var(--serif);font-size:clamp(3rem,5vw,5rem);font-weight:500;line-height:.9;color:var(--clay)}.fact span{display:block;margin-top:15px;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600}

.editorial-gallery{height:min(78vw,860px);display:grid;grid-template-columns:1.22fr .78fr .9fr;grid-template-rows:1.15fr .85fr;gap:10px;padding:10px;background:var(--paper)}.editorial-gallery figure{margin:0;overflow:hidden;background:var(--cream)}.editorial-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.25,1)}.editorial-gallery figure:hover img{transform:scale(1.025)}.gallery-item-1{grid-row:1/3}.gallery-item-2{grid-column:2/4}.gallery-item-5,.gallery-item-6{display:none}

.dark{background:var(--ink);color:#fff}.dark .eyebrow{color:#ced4bb}.room-showcase{overflow:hidden}.rooms-head{display:flex;align-items:end;justify-content:space-between;gap:38px;margin-bottom:56px}.rooms-head>div{max-width:730px}.rooms-head p{max-width:550px;margin:18px 0 0;color:#cbd3cc}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.room-card{background:#fff;color:var(--ink);overflow:hidden}.room-card a{display:block;height:100%}.room-image{width:100%;aspect-ratio:4/4.75;object-fit:cover;background:var(--cream) center/cover;transition:transform .6s}.room-card:hover .room-image{transform:scale(1.018)}.room-fallback-1{background-image:url('assets/images/suite-kitchenette.webp')}.room-fallback-2{background-image:url('assets/images/garden-room.webp')}.room-fallback-3{background-image:url('assets/images/courtyard-arch.webp')}.room-body{position:relative;padding:28px}.card-kicker{display:block;margin-bottom:9px;color:var(--clay);text-transform:uppercase;letter-spacing:.15em;font-size:.66rem;font-weight:700}.room-body h3{font-size:2.25rem}.room-meta{display:flex;gap:16px;margin:12px 0;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.09em}.room-body p{color:#54615a}.card-link{text-transform:uppercase;letter-spacing:.11em;font-size:.67rem;font-weight:700;border-bottom:1px solid var(--line)}

.stay-section{background:#f7f4ed}.media-image{overflow:hidden;background:var(--cream)}.media-image img{width:100%;height:100%;object-fit:cover}.media-image.arched{height:min(680px,60vw);border-radius:230px 230px 0 0}.media-image.landscape{min-height:560px}.services-section{padding-top:0;background:#f7f4ed}.services-section h2{max-width:760px;margin-bottom:50px}.features{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.feature{min-height:225px;padding:31px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.feature>span{font-family:var(--serif);font-size:3rem;color:var(--clay)}.feature h3{margin:23px 0 10px;font-size:1.7rem}.feature p{margin:0;color:var(--muted);font-size:.9rem}.farm-section{background:var(--cream)}.product-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(48px,8vw,110px);align-items:center}.farm-section h2{margin-bottom:28px}

.reviews{background:var(--paper)}.review-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(55px,9vw,120px);align-items:start}.review-layout h2{font-size:clamp(3rem,5.5vw,5rem);margin-bottom:34px}.score-row{display:flex;gap:14px}.score{display:flex;align-items:end;gap:9px;padding-right:25px;border-right:1px solid var(--line)}.score:last-child{border:0}.score strong{font-family:var(--serif);font-size:4.5rem;font-weight:500;line-height:.8;color:var(--clay)}.score span{font-size:.68rem;line-height:1.5;text-transform:uppercase;letter-spacing:.1em}.source-note{margin-top:22px;color:var(--muted);font-size:.72rem}.review-points{border-top:1px solid var(--line)}.review-point{display:grid;grid-template-columns:38px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid var(--line)}.review-point>b{font-family:var(--serif);font-size:1.55rem;color:var(--clay)}.review-point h3{margin-bottom:8px;font-size:1.75rem}.review-point p{margin:0;color:var(--muted)}.review-point small{display:block;margin-top:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--olive)}

.territory-banner{position:relative;min-height:620px;display:grid;align-items:end;color:#fff;overflow:hidden}.territory-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(13,24,17,.72))}.territory-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.territory-copy{position:relative;z-index:1;width:min(1220px,calc(100% - 64px));margin:0 auto;padding:80px 0}.territory-copy .eyebrow{color:#fff}.territory-copy h2{max-width:850px}.territory-copy p{max-width:590px;margin-top:22px;font-size:1.05rem}.booking{background:var(--clay);color:#fff}.booking .eyebrow{color:#fff}.booking-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,100px)}.booking-grid h2{font-size:clamp(3.2rem,5.7vw,5.5rem)}.booking-contact{display:grid;gap:4px;margin-top:35px;font-size:.9rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .wide{grid-column:1/-1}.field label{display:block;margin-bottom:5px;text-transform:uppercase;letter-spacing:.11em;font-size:.63rem;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:49px;padding:11px 4px;border:0;border-bottom:1px solid rgba(255,255,255,.58);border-radius:0;background:transparent;color:#fff}.field select option{color:#111}.field textarea{min-height:84px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(255,255,255,.75);outline-offset:3px}.consent{display:flex;align-items:flex-start;gap:8px;font-size:.72rem}.consent input{margin-top:5px}.notice{padding:15px 18px;background:#fff;color:var(--ink);border-left:4px solid var(--ink)}

.footer{padding:82px 0 27px;background:#17231c;color:#fff}.footer-grid{display:grid;grid-template-columns:1.35fr .75fr 1.15fr .75fr;gap:46px}.footer-brand>span{display:block;margin-bottom:14px;text-transform:uppercase;letter-spacing:.16em;color:#bdc6b8;font-size:.62rem}.footer h3{font-size:3rem}.footer-brand p{max-width:320px;margin-top:20px;color:#c1c9c2}.footer h4{margin:7px 0 18px;text-transform:uppercase;letter-spacing:.16em;color:#bdc6b8;font-size:.67rem}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:8px;font-size:.84rem}.footer a:hover{text-decoration:underline}.social-links{display:flex;gap:15px;margin-top:21px;text-transform:uppercase;letter-spacing:.1em;font-size:.64rem}.footer-bottom{display:flex;justify-content:space-between;margin-top:58px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);color:#aeb8b0;font-size:.69rem}.whatsapp{position:fixed;right:22px;bottom:22px;z-index:90;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 10px 32px rgba(0,0,0,.22);font-size:.74rem;font-weight:800;transition:transform .2s}.whatsapp:hover{transform:scale(1.07)}

.page-hero{padding:200px 0 95px;background:linear-gradient(105deg,rgba(22,36,27,.95),rgba(40,56,46,.83)),url('assets/images/courtyard-arch.webp') center/cover;color:#fff}.page-hero h1{font-size:clamp(3.8rem,8vw,7rem)}.page-hero .lead{max-width:750px;margin-top:25px}.content{padding:85px 0 120px}.prose{max-width:850px}.prose>p:first-child{font-family:var(--serif);font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.4}.prose h2{margin:2.2rem 0 1rem;font-size:clamp(2.4rem,5vw,4rem)}.prose h3{margin:2rem 0 .8rem}.prose a{text-decoration:underline}.prose .form-grid{margin-top:45px;padding:45px;background:var(--clay);color:#fff;max-width:900px}.room-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(45px,8vw,100px);align-items:start}.room-detail-main img{width:100%}.room-detail h2{font-size:clamp(2.5rem,5vw,4.5rem);margin-bottom:23px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:30px 0;border-top:1px solid var(--line)}.amenities span{padding:12px 10px;border-bottom:1px solid var(--line)}.room-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.room-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.archive-intro,.archive-empty{max-width:720px}.archive-empty{grid-column:1/-1}.page-gallery{height:650px;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:1fr}.partner-note{max-width:850px;margin:32px 0 0;padding:20px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.84rem}.contact-strip{padding:80px 0;background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.contact-grid h2{font-size:clamp(3rem,5vw,5rem)}.contact-grid>div:last-child{display:grid;gap:10px;font-family:var(--serif);font-size:clamp(1.35rem,2.6vw,2rem)}.map-section{background:#f7f4ed}.map-consent{min-height:520px;display:grid;place-items:center;padding:40px;text-align:center;background:linear-gradient(rgba(32,49,40,.82),rgba(32,49,40,.82)),url('assets/images/vineyard-view.webp') center/cover;color:#fff}.map-consent>div{max-width:620px}.map-consent .eyebrow{color:#dce2d4}.map-consent h2{font-size:clamp(2.8rem,5vw,4.8rem);margin-bottom:20px}.map-consent iframe{width:100%;height:520px;border:0}.shop-preview{grid-template-columns:repeat(3,1fr)}.dark .shop-preview{border-color:rgba(255,255,255,.2)}.dark .shop-preview .feature{border-color:rgba(255,255,255,.2)}.dark .shop-preview .feature p{color:#cbd3cc}.company-details{padding:22px;border-left:3px solid var(--clay);background:var(--cream)}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{padding:18px;background:#fff}.woocommerce .button{border-radius:0!important}

@media(max-width:1050px){.nav{gap:15px}.nav ul{gap:14px;font-size:.66rem}.header-book{display:none}.features{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:nth-child(2){display:none}}
@media(max-width:900px){.wrap,.territory-copy{width:min(100% - 40px,1220px)}.header-inner{height:80px}.menu-toggle{display:block}.nav{position:fixed;inset:80px 0 0;display:block;padding:38px 28px;background:var(--ink);transform:translateX(100%);transition:transform .3s;overflow:auto}.nav.open{transform:none}.nav ul{display:grid;align-items:start;gap:0;font-family:var(--serif);font-size:2.2rem;text-transform:none;letter-spacing:-.02em}.nav li{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.13)}.nav .header-book{display:inline-flex;margin-top:28px}.languages{margin-top:20px}.languages ul{display:flex;font-family:var(--sans);font-size:.75rem;text-transform:uppercase}.intro-grid,.split,.product-grid,.review-layout,.booking-grid,.room-detail,.contact-grid{grid-template-columns:1fr}.room-grid{grid-template-columns:1fr 1fr}.media-image.arched{height:640px;max-width:650px}.editorial-gallery{height:900px;grid-template-columns:1fr 1fr;grid-template-rows:1.2fr .8fr .8fr}.gallery-item-1{grid-row:1/2;grid-column:1/3}.gallery-item-2{grid-column:auto}.gallery-item-5,.gallery-item-6{display:block}.gallery-item-6{grid-column:1/3}.page-gallery{height:700px;grid-template-columns:1fr 1fr;grid-template-rows:1.1fr .9fr}.page-gallery figure:first-child{grid-column:1/3}.territory-banner{min-height:560px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:nth-child(2){display:block}}
@media(max-width:620px){.wrap,.territory-copy{width:min(100% - 28px,1220px)}.brand{font-size:1.57rem}.brand small{font-size:.42rem}.hero{min-height:92svh;background-image:linear-gradient(180deg,rgba(13,24,17,.31),rgba(13,24,17,.42) 55%,rgba(13,24,17,.7)),var(--hero-mobile);background-position:center}.hero-content{padding:145px 0 52px}.hero h1{font-size:clamp(3.35rem,17vw,5.2rem)}.hero-copy{font-size:.96rem;margin:22px 0 25px}.hero .button{min-height:47px;padding:0 18px}.hero-whatsapp{width:max-content}.scroll-cue{display:none}.section{padding:76px 0}.intro-grid{gap:35px}.facts{grid-template-columns:1fr 1fr;margin-top:54px}.fact{min-height:128px;padding:22px}.editorial-gallery{height:auto;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:280px 210px 210px;gap:5px;padding:5px}.editorial-gallery figure{display:block}.gallery-item-1{grid-column:1/3}.gallery-item-2{grid-column:auto}.gallery-item-5,.gallery-item-6{display:none}.rooms-head{display:block}.rooms-head .button{margin-top:22px}.room-grid{grid-template-columns:1fr}.room-image{aspect-ratio:5/4}.media-image.arched{height:480px;border-radius:180px 180px 0 0}.features{grid-template-columns:1fr}.feature{min-height:auto;padding:25px}.score-row{flex-wrap:wrap}.score strong{font-size:3.7rem}.territory-banner{min-height:520px}.territory-copy{padding-bottom:52px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-grid>div:nth-child(2){display:none}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}.room-gallery,.amenities{grid-template-columns:1fr}.prose .form-grid{padding:25px}.whatsapp{right:14px;bottom:14px;width:52px;height:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
