/* VeniceRental 3.3.3: header fluido, logo a sinistra e menu mobile su una sola riga. */
.header-inner{width:calc(100% - 48px);max-width:none;margin-inline:24px}
.site-header .primary-nav ul{gap:28px}
.site-header .primary-nav a{font-size:.9rem!important;letter-spacing:.01em}
@media (max-width:980px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand language toggle";gap:12px;height:76px;width:calc(100% - 24px);margin-inline:12px}
 .brand{grid-area:brand;justify-self:start;min-width:0;margin:0}
 .brand .custom-logo-link{display:block}
 .brand img,.custom-logo{display:block;max-height:48px;max-width:min(230px,100%);object-fit:contain;object-position:left center;margin:0}
 .language-switcher{grid-area:language;display:block;justify-self:end;padding-left:12px;margin:0}
 .menu-toggle{grid-area:toggle;display:inline-flex;align-items:center;justify-content:center;justify-self:end;border:1px solid var(--navy);border-radius:3px;color:var(--navy);font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:10px 12px;white-space:nowrap}
 .primary-nav{grid-area:nav;position:absolute;top:76px;left:-12px;right:-12px;width:auto;background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 35px rgba(7,27,48,.14);padding:12px 20px 20px}
 .primary-nav ul{display:block}
 .primary-nav li{padding:0;border-bottom:1px solid var(--line)}
 .primary-nav a{display:block;padding:14px 4px;font-size:.9rem;letter-spacing:.01em}
}
@media (max-width:520px){
 .header-inner{gap:8px;height:70px}
 .brand img,.custom-logo{max-height:42px;max-width:175px}
 .language-switcher{padding-left:8px}
 .language-current{padding:10px 0}
 .menu-toggle{padding:9px 10px;font-size:.7rem}
 .primary-nav{top:70px}
}

/* VeniceRental 3.9.33: hero home più pulita e coordinata con le schede appartamento. */
.home-hero .hero-copy h1{margin-bottom:20px}
.home-hero .hero-tagline{display:block;max-width:680px;margin:0 0 30px;padding:15px 21px 16px;border-left:4px solid var(--gold);background:rgba(7,27,48,.58);backdrop-filter:blur(9px);box-shadow:0 14px 34px rgba(0,0,0,.16);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.04rem,1.65vw,1.3rem);line-height:1.48;letter-spacing:.01em;color:#fff}
@media(max-width:650px){.home-hero .hero-tagline{padding:13px 17px 14px;margin-bottom:26px}}

/* VeniceRental 3.4: prenotazione visibile accanto ai servizi. */
.amenities-booking-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,420px);gap:42px;align-items:start}
.apartment{display:flex;flex-direction:column}
.apartment>.apt-hero{order:1}
.apartment>.facts{order:2}
.apartment>.mobile-booking-jump{display:none;order:3}
.apartment>.apt-story{order:3;padding-bottom:82px}
.apartment>.amenities-section{order:4;padding-top:82px}
.apartment>.gallery{order:5}
.apartment>.transport{order:6}
.apartment>.location{order:7}
.apartment>.more-stays{order:8}
.apt-hero-copy p{display:inline-block;max-width:720px;margin:12px 0 0;padding:16px 22px 17px;border-left:4px solid var(--gold);background:rgba(7,27,48,.58);backdrop-filter:blur(9px);box-shadow:0 14px 34px rgba(0,0,0,.16);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.08rem,1.8vw,1.42rem);line-height:1.45;letter-spacing:.01em;color:#fff}
.apartment .booking-early{position:static!important;top:auto!important;width:100%;max-width:420px}
.apartment .amenities-main .section-head h2{font-size:2.3rem;line-height:1.12}
.apartment .amenities-cards li{font-size:1rem;line-height:1.5}
.apartment .booking-early h2{font-size:2rem}
.apartment .soft-card{display:none!important}
.apartment .apt-content{background:var(--cream);padding:38px}
.apartment-registration{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;border-top:1px solid var(--line);margin:30px 0 0!important;padding-top:20px;font-size:.9rem!important;color:var(--navy)!important}
.apartment-registration span{font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.apartment-registration strong{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.035em;overflow-wrap:anywhere}
@media(min-width:1241px){
 .apartment{display:grid;grid-template-columns:minmax(20px,1fr) minmax(0,760px) minmax(360px,420px) minmax(20px,1fr);column-gap:42px}
 .apartment>.apt-hero{grid-column:1/-1;grid-row:1}
 .apartment>.facts{grid-column:2/4;grid-row:2;width:100%}
 .apartment>.apt-story,.apartment>.apt-story>.content-grid,.apartment>.amenities-section,.apartment>.amenities-section>.amenities-booking-layout{display:contents}
 .apartment .apt-content{grid-column:2;grid-row:3;margin-top:90px}
 .apartment .amenities-main{grid-column:2;grid-row:4;background:var(--cream);padding:38px;margin:50px 0 90px}
 .apartment .soft-card{grid-column:2;grid-row:5;position:static;margin:24px 0 90px}
 .apartment .booking-early{grid-column:3;grid-row:3/5;align-self:start;margin-top:90px}
 .apartment>.gallery{grid-column:2/4;grid-row:5;width:100%}
 .apartment>.transport{grid-column:1/-1;grid-row:6}
 .apartment>.location{grid-column:1/-1;grid-row:7}
 .apartment>.more-stays{grid-column:1/-1;grid-row:8}
}
@media(max-width:650px){.apartment .apt-content{padding:26px 22px}}
.amenities-main .section-head{width:auto;text-align:left;margin:0 0 34px}
.amenities-main .amenities-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.booking-early{padding:34px;background:var(--navy);color:#fff;box-shadow:var(--shadow);position:sticky;top:110px}
.booking-early h2{color:#fff;font-size:2.25rem}
.booking-early>p{color:rgba(255,255,255,.78)}
.booking-early .booking-widget{margin-top:24px;padding:20px;min-height:150px}
@media(max-width:1240px){.apartment .content-grid{grid-template-columns:1fr}.amenities-booking-layout{grid-template-columns:1fr}.booking-early{position:static;margin-inline:auto}.amenities-main .section-head{text-align:center}.amenities-main .amenities-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.apartment>.mobile-booking-jump{display:inline-flex;align-self:center;width:calc(100% - 40px);margin:22px auto 0}.amenities-main .amenities-cards{grid-template-columns:1fr}.booking-early{padding:26px 22px}}

/* VeniceRental 3.6: footer senza riquadro immagine e dati fiscali. */
.footer-wordmark{display:inline-block;color:#fff!important;font-family:Georgia,"Times New Roman",serif;font-size:2.25rem;line-height:1;text-decoration:none;letter-spacing:-.035em;margin-bottom:20px}
.footer-note p{margin-bottom:.55rem}

/* VeniceRental 3.7: mappa illustrata coordinata per gli appartamenti di Marghera. */
.marker-lucky .current-apartment-pin{left:39%;top:51%}
.marker-venice .current-apartment-pin{left:48%;top:58%}
.marker-dream .current-apartment-pin{left:57%;top:48%}
.pin-lucky{left:39%;top:52%}
.pin-venice{left:48%;top:59%}
.pin-dream{left:57%;top:49%}

/* VeniceRental 3.8: richiamo alla prenotazione diretta in home. */
.direct-booking-cta{padding:90px 0;background:linear-gradient(120deg,var(--navy2),var(--navy));color:#fff;text-align:center}
.direct-booking-cta .wrap{width:min(780px,calc(100% - 40px))}
.direct-booking-cta h2{color:#fff}
.direct-booking-cta p{font-size:1.12rem;color:rgba(255,255,255,.82);margin:0 auto 30px;max-width:700px}
@media(max-width:650px){.direct-booking-cta{padding:68px 0}}

/* VeniceRental 3.9.35: recensioni editoriali e hero gestibile dalla Home. */
.home-reviews{background:var(--cream)}
.home-reviews .section-head{margin-bottom:42px}
.home-reviews .section-head p{max-width:650px;margin:0 auto;color:var(--muted)}
.home-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.home-review-card{display:flex;flex-direction:column;min-height:330px;padding:34px;background:#fff;border-top:4px solid var(--gold);box-shadow:0 16px 42px rgba(7,27,48,.08)}
.review-stars{color:var(--gold);font-size:.96rem;letter-spacing:.16em;margin-bottom:24px}
.home-review-card blockquote{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:1.27rem;line-height:1.52;color:var(--navy)}
.home-review-card footer{display:grid;gap:2px;margin-top:auto;padding-top:28px;border-top:1px solid var(--line)}
.home-review-card footer strong{color:var(--navy)}
.home-review-card footer span{font-size:.87rem;color:var(--muted)}
.home-review-card footer small{margin-top:5px;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:#7b858d}
@media(max-width:980px){.home-reviews-grid{grid-template-columns:1fr}.home-review-card{min-height:0}.home-review-card footer{margin-top:30px}}
@media(max-width:650px){.home-review-card{padding:28px 24px}.home-review-card blockquote{font-size:1.15rem}}
