/* ============================================================
   CASATO LICITRA — header/footer globali (template Xpro)
   ============================================================ */
:root{
  --ivory:#f4f0e8;--ivory-2:#ece6da;--ink:#20263a;--blu:#263a68;--blu-d:#1b2a4e;
  --rosso:#9e3a2d;--oro:#c39b4a;
  --serif:'Fraunces',serif;--disp:'Fraunces',serif;--sans:'Poppins',sans-serif;
}

/* ---------- header ---------- */
header.xhd{background:rgba(244,240,232,.97);color:var(--blu);padding:18px 48px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;box-shadow:0 1px 0 rgba(38,58,104,.12);position:relative;z-index:90;font-family:var(--sans)}
.xhd .elementor-widget{width:auto}
.xhd .logo,.xft .logo{font-family:var(--disp);font-size:21px;letter-spacing:.18em;text-transform:uppercase;line-height:1.1;color:var(--blu);text-decoration:none;display:inline-block}
.xhd .logo b,.xft .logo b{font-weight:400;color:var(--oro)}
.xhd .logo small,.xft .logo small{display:block;font-family:var(--sans);font-size:8.5px;letter-spacing:.5em;opacity:.85;margin-top:4px;text-align:left}
.xhd nav{display:flex;gap:36px;font-size:12px;letter-spacing:.22em;text-transform:uppercase}
.xhd nav a{position:relative;padding-bottom:4px;color:var(--blu);text-decoration:none}
.xhd nav a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--oro);transition:width .4s}
.xhd nav a:hover::after{width:100%}
.xhd .btn-book,.xft-cta{display:inline-block;border:1px solid var(--oro);color:var(--blu);padding:12px 30px;font-size:11px;letter-spacing:.28em;text-transform:uppercase;transition:all .4s;background:transparent;text-decoration:none}
.xhd .btn-book:hover{background:var(--rosso);border-color:var(--rosso);color:#fff}
@media(max-width:1000px){
  header.xhd{padding:16px 22px!important}
  .xhd nav{display:none}
}

/* mega menu camere (header globale) */
.xhd .mega-cam{position:absolute;top:100%;left:0;right:0;background:rgba(244,240,232,.98);backdrop-filter:blur(10px);color:var(--blu);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .35s,transform .35s,visibility .35s;box-shadow:0 26px 50px rgba(20,29,51,.16);border-top:1px solid rgba(195,155,74,.35);z-index:95}
header.xhd.mega-open .mega-cam{opacity:1;visibility:visible;transform:none}
.xhd .mega-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-width:1560px;margin:0 auto;padding:26px 30px 30px}
.xhd .mega-cam a{display:block;text-align:center;padding:8px 16px;border-left:1px solid rgba(38,58,104,.1);text-decoration:none}
.xhd .mega-cam a:first-child{border-left:none}
.xhd .mega-cam .mim{display:block;overflow:hidden}
.xhd .mega-cam .mim img{width:100%;height:150px;object-fit:cover;display:block;transition:transform .6s ease}
.xhd .mega-cam a:hover .mim img{transform:scale(1.06)}
.xhd .mega-cam .mn{display:block;margin-top:13px;font-family:var(--sans);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--blu);line-height:1.5}
.xhd .mega-cam a:hover .mn{color:var(--rosso)}
@media(max-width:1000px){.xhd .mega-cam{display:none}}

/* ---------- footer ---------- */
footer.xft{background:var(--ivory-2);padding:70px 4vw 0!important;overflow:hidden;font-size:13px;color:#aab1c5;display:block!important;font-family:var(--sans)}
.xft .f-giant{font-family:var(--disp);font-size:8.8vw;line-height:1;white-space:nowrap;color:rgba(38,58,104,.12);text-transform:uppercase;letter-spacing:.01em;user-select:none;pointer-events:none;margin-bottom:-3.2vw;position:relative;z-index:1;display:flex;justify-content:center;width:100%}
.xft .f-card{background:#141d33;border-radius:26px;padding:80px 64px 44px!important;max-width:1380px!important;margin:0 auto!important;position:relative;z-index:2;box-shadow:0 30px 60px rgba(20,29,51,.18);display:block}
.xft .f-grid{display:grid!important;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px!important;max-width:1280px!important;margin:0 auto 60px!important}
.xft .f-grid>.e-con,.xft .f-grid>.elementor-widget{width:auto;max-width:none;min-width:0}
.xft .logo{color:var(--ivory);font-size:19px}
.xft .motto{font-family:var(--serif);font-style:italic;color:var(--oro);margin-top:16px;letter-spacing:.08em}
.xft h4{font-family:var(--sans);font-weight:400;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--ivory);margin:0 0 20px}
.xft ul{list-style:none;margin:0;padding:0}
.xft li{margin-bottom:10px}
.xft a{color:inherit;text-decoration:none}
.xft a:hover{color:#fff}
.xft .f-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:28px;padding-bottom:24px;display:flex;justify-content:space-between;max-width:1280px;margin:0 auto;font-size:11px;letter-spacing:.1em}
@media(max-width:1000px){
  .xft .f-grid{grid-template-columns:1fr 1fr}
  .xft .f-card{padding:56px 28px 36px!important}
  .xft .f-giant{font-size:11.5vw}
}

/* ============================================================
   FINE-TUNING TIPOGRAFICO — Fraunces/Poppins (uniformato)
   ============================================================ */
header.xhd{padding:16px 44px!important}
.xhd nav{letter-spacing:.18em}
.xhd nav a{padding-bottom:5px}
.xhd .logo,.xft .logo{letter-spacing:.12em}
.xhd .logo small,.xft .logo small{letter-spacing:.42em}
.xhd .btn-book{letter-spacing:.22em;padding:13px 32px}
.xft{line-height:1.8}
.xft .f-giant{letter-spacing:0}
.xft h4{letter-spacing:.24em;margin-bottom:18px}
.xft li{margin-bottom:9px}
.xft .motto{line-height:1.6}
.xft .f-bottom{letter-spacing:.08em}
.xft .f-card{padding:70px 60px 40px!important}
.xft .f-grid{margin-bottom:54px!important}
.xhd .mega-cam .mn{letter-spacing:.16em}
@media(max-width:1000px){.xft .f-card{padding:50px 26px 32px!important}}

/* logo immagine header/footer globali */
.logo-img{display:inline-block;line-height:0}
.xhd .logo-img img{height:52px;width:auto;max-width:none;object-fit:contain}
.xft .logo-img img{height:62px;width:auto;max-width:none;object-fit:contain}

/* header trasparente sul hero della pagina camera (come in home) */
body.single-camera header.xhd{position:fixed;top:0;left:0;right:0;background:transparent;box-shadow:none;transition:background .45s,box-shadow .45s,padding .45s}
body.single-camera header.xhd.solid{background:rgba(244,240,232,.97);backdrop-filter:blur(8px);box-shadow:0 1px 0 rgba(38,58,104,.12)}
body.single-camera header.xhd .mega-cam{background:rgba(244,240,232,.98)}
