/*
Theme Name:   Dalia
Theme URI:    https://daliaabbigliamentodonna.it
Description:  Tema completo per DALIA Abbigliamento Donna — boutique multibrand a Torino dal 1993. Design system stagionale, pagine SEO precaricate, WhatsApp al centro.
Author:       Daniele V
Version:      1.5.0
Requires PHP: 7.4
Text Domain:  dalia
*/

/* =========================================================
   1. Token — handoff §8. L'accento stagionale viene
   sovrascritto dal Customizer (Aspetto → Personalizza).
   ========================================================= */
:root{
  --dalia-ink:#0E0E0E;
  --dalia-bone:#F5F1EA;
  --dalia-sand:#EFE9DE;
  --dalia-lino:#DDD4C6;
  --dalia-muted:#5C544C;
  --dalia-accent:#9A4B2E;   /* autunno inverno */
  --dalia-wa:#25D366;
  --dalia-wa-ink:#08351A;

  --dalia-serif:'Fraunces', Georgia, 'Times New Roman', serif;
  --dalia-sans:'Figtree', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

  --dalia-max:1180px;
  --dalia-pad:clamp(20px, 4vw, 48px);
  --dalia-btn-radius:999px;
}

/* =========================================================
   2. Font locali (variabili, subsettati)
   ========================================================= */
@font-face{
  font-family:'Fraunces';
  src:url('assets/fonts/fraunces-var.woff2') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Fraunces';
  src:url('assets/fonts/fraunces-italic-var.woff2') format('woff2');
  font-weight:100 900;font-style:italic;font-display:swap;
}
@font-face{
  font-family:'Figtree';
  src:url('assets/fonts/figtree-var.woff2') format('woff2');
  font-weight:300 900;font-style:normal;font-display:swap;
}

/* =========================================================
   3. Base
   ========================================================= */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--dalia-bone);
  color:var(--dalia-ink);
  font-family:var(--dalia-sans);
  font-size:var(--dalia-fs,16px);line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;content-visibility:auto;}
h1,h2,h3,h4{
  font-family:var(--dalia-serif);
  font-weight:400;font-optical-sizing:auto;
  line-height:1.12;letter-spacing:-0.01em;
  margin:0 0 .5em;
}
h1{font-size:clamp(1.875rem, 1.05rem + 2.75vw, 3.25rem);}
h2{font-size:clamp(1.5rem, 1.05rem + 1.6vw, 2.375rem);}
h3{font-size:clamp(1.2rem, 1rem + .8vw, 1.5rem);}
p{margin:0 0 1em;}
a{color:var(--dalia-accent);text-underline-offset:3px;}
::selection{background:var(--dalia-accent);color:var(--dalia-bone);}
:focus-visible{outline:2px solid var(--dalia-accent);outline-offset:2px;}

.dalia-wrap{max-width:var(--dalia-max);margin:0 auto;padding-left:var(--dalia-pad);padding-right:var(--dalia-pad);}
.dalia-eyebrow{
  font-size:.8125rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--dalia-muted);margin:0 0 14px;
}
.dalia-eyebrow--accent{color:var(--dalia-accent);}
.skip-link{
  position:absolute;left:-999px;top:0;background:var(--dalia-ink);
  color:var(--dalia-bone);padding:10px 16px;z-index:10000;
}
.skip-link:focus{left:12px;top:12px;}

/* =========================================================
   4. Pulsanti
   ========================================================= */
.btn{
  display:inline-block;border-radius:var(--dalia-btn-radius);text-decoration:none;
  font-size:15px;font-weight:600;padding:13px 28px;
  transition:transform .15s ease, background .15s ease;
  border:1px solid transparent;
}
.btn:active{transform:scale(.97);}
.btn{cursor:pointer;}
/* I pulsanti WhatsApp seguono la stagione; testata e barra
   fissa restano verde WhatsApp per riconoscibilità immediata. */
.btn--wa{background:var(--dalia-accent);color:var(--dalia-on-accent,var(--dalia-bone));}
.btn--wa-verde{background:var(--dalia-wa) !important;color:var(--dalia-wa-ink) !important;}
/* Icone tonde in testata: contatti (modal) + WhatsApp (pagina acquisto) */
.site-header__ico{display:flex;gap:10px;align-items:center;}
.hdr-ico{
  width:42px;height:42px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  border:1.5px solid currentColor;background:none;color:inherit;
  cursor:pointer;transition:transform .15s ease,opacity .15s ease;text-decoration:none;
}
.hdr-ico svg{width:20px;height:20px;display:block;margin:0;}
.hdr-ico .dalia-ico-wa{margin:0;vertical-align:middle;}
.hdr-ico:hover{transform:scale(1.06);}
.hdr-ico--wa{background:var(--dalia-wa);border-color:var(--dalia-wa);color:var(--dalia-wa-ink);}
@media (max-width:900px){.site-header__ico{display:none;}}
.dalia-ico-wa{width:1.1em;height:1.1em;vertical-align:-0.2em;margin-right:.45em;flex:none;}
.site-header .btn--wa{background:var(--dalia-wa);color:var(--dalia-wa-ink);}
.btn--ink{background:var(--dalia-ink);color:var(--dalia-bone);}
.btn--ghost{background:transparent;color:var(--dalia-ink);border-color:var(--dalia-ink);}
.btn--ghost:hover{background:var(--dalia-accent);border-color:var(--dalia-accent);color:var(--dalia-bone);}
.band--ink .btn--ghost{color:var(--dalia-bone);border-color:var(--dalia-bone);}
.band--ink .btn--ghost:hover{background:var(--dalia-bone);color:var(--dalia-ink);}
.btn--accent{background:var(--dalia-accent);color:var(--dalia-on-accent,var(--dalia-bone));}
.btn + .btn{margin-left:10px;}
.btn-row{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;}
.btn-row .btn{margin-left:0;}
/* Stile "boutique": pulsanti squadrati (Customizer → Testata e pulsanti) */
.dalia-btn-square{--dalia-btn-radius:4px;}

/* =========================================================
   5. Header
   ========================================================= */
.site-header{
  background:var(--dalia-bone);
  border-bottom:1px solid var(--dalia-lino);
  position:sticky;top:0;z-index:900;
}
.site-header__in{
  display:flex;align-items:center;gap:28px;
  min-height:72px;
}
.site-brand{
  font-family:var(--dalia-serif);font-size:1.5rem;letter-spacing:.42em;
  text-transform:uppercase;color:var(--dalia-ink);text-decoration:none;
  margin-right:auto;white-space:nowrap;
}
.site-brand .custom-logo{display:block;max-height:var(--dalia-logo-h,64px);width:auto;}
.site-nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0;}
.site-nav a{
  color:var(--dalia-ink);text-decoration:none;font-size:15px;font-weight:500;
  white-space:nowrap;
}
.site-nav .sub-menu,.site-nav .children{display:none;}
.site-nav a:hover{color:var(--dalia-accent);}
.site-nav .current-menu-item > a{color:var(--dalia-accent);}
.site-header .btn--wa{padding:10px 20px;}
.nav-toggle{display:none;}

/* ---------- Variante testata scura, come l'insegna ---------- */
.dalia-header-ink .site-header{background:var(--dalia-ink);border-bottom-color:rgba(245,241,234,.14);}
.dalia-header-ink .site-brand{color:var(--dalia-bone);}
.dalia-header-ink .site-brand:not(.site-brand--img) .custom-logo{filter:brightness(0) invert(1);}
.dalia-header-ink .site-nav a{color:var(--dalia-lino);}
.dalia-header-ink .site-nav a:hover,
.dalia-header-ink .site-nav .current-menu-item > a{color:var(--dalia-bone);}

@media (max-width:900px){
  .site-header__in{min-height:60px;gap:14px;}
  .site-brand .custom-logo{max-height:calc(var(--dalia-logo-h,64px)*.78);}
  .nav-toggle{
    display:inline-flex;align-items:center;gap:8px;
    background:none;border:1px solid var(--dalia-lino);border-radius:8px;
    font:inherit;font-size:14px;padding:8px 12px;color:var(--dalia-ink);
  }
  .site-nav{
    display:none;position:absolute;left:0;right:0;top:100%;
    background:var(--dalia-bone);border-bottom:1px solid var(--dalia-lino);
    padding:8px var(--dalia-pad) 20px;
  }
  .site-nav.is-open{display:block;}
  .site-nav ul{flex-direction:column;gap:0;}
  .site-nav a{display:block;padding:14px 0;border-bottom:1px solid var(--dalia-sand);font-size:16px;text-align:right;}
  .dalia-header-ink .nav-toggle{border-color:rgba(245,241,234,.35);color:var(--dalia-bone);}
  .dalia-header-ink .site-nav{background:var(--dalia-ink);border-bottom-color:rgba(245,241,234,.14);}
  .dalia-header-ink .site-nav a{border-bottom-color:rgba(245,241,234,.12);}
  .site-header .btn--wa{display:none;} /* su mobile c'è la barra fissa */
}

/* =========================================================
   6. Hero
   ========================================================= */
.hero{padding:clamp(44px, 8vw, 96px) 0;}
.hero__in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center;}
.hero h1{margin-bottom:.4em;}
.hero h1 em{font-style:italic;color:var(--dalia-accent);}
.hero__sub{font-size:1.125rem;color:var(--dalia-muted);max-width:32em;}
.hero__cta{margin-top:26px;}
.hero__media{aspect-ratio:var(--dalia-hero-ratio,2/3);max-height:min(76vh,740px);border-radius:8px;overflow:hidden;background:var(--dalia-lino);}
.hero__media img,.hero__media video{width:100%;height:100%;object-fit:cover;display:block;}
.hero__media--ph{
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg, var(--dalia-sand), var(--dalia-lino));
}
.hero__media--ph span{
  font-family:var(--dalia-serif);font-size:clamp(90px,14vw,180px);
  font-style:italic;color:rgba(14,14,14,.16);
}
@media (max-width:820px){
  .hero__in{grid-template-columns:1fr;}
  .hero__in{display:block;}
  .hero__media{width:100%;max-width:none;max-height:none;aspect-ratio:var(--dalia-hero-ratio,2/3);margin-top:22px;}
}

/* =========================================================
   7. Fasce e sezioni
   ========================================================= */
.band{padding:clamp(44px, 7vw, 88px) 0;}
.band--sand{background:var(--dalia-sand);}
.band--ink{background:var(--dalia-ink);color:var(--dalia-bone);}
.band--ink h2{color:var(--dalia-bone);}
.band--ink .dalia-eyebrow{color:var(--dalia-lino);}
.band__head{margin-bottom:clamp(24px,4vw,44px);}
.band__head p{color:var(--dalia-muted);margin:0;}
.band--ink .band__head p{color:var(--dalia-lino);}

/* Sezioni a due colonne: testo + box foto verticale */
.band__in--split{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,64px);align-items:center;}
.band__media{
  aspect-ratio:4/5;border-radius:8px;overflow:hidden;
  background:linear-gradient(160deg,var(--dalia-sand),var(--dalia-lino));
}
.band__media img{width:100%;height:100%;object-fit:cover;display:block;}
.band__in--split .prose{padding-bottom:0;}
@media (max-width:820px){
  .band__in--split{grid-template-columns:1fr;}
  .band__media{max-height:56vh;}
}

/* =========================================================
   8. Muro reel — "Dalia dal vivo"
   ========================================================= */
.dalia-best{
  display:flex;gap:12px;overflow-x:auto;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  padding-bottom:8px;
}
.dalia-best::-webkit-scrollbar{height:4px;}
.dalia-best::-webkit-scrollbar-thumb{background:rgba(14,14,14,.2);border-radius:4px;}
.dalia-best video{
  flex:0 0 auto;width:210px;aspect-ratio:9/16;object-fit:cover;
  border-radius:6px;scroll-snap-align:start;background:var(--dalia-lino);
}
@media (max-width:767px){.dalia-best video{width:150px;}}
.dalia-reel-cta{text-align:center;margin-top:26px;}
.dalia-feed{margin-top:10px;}
.dalia-feed--empty{
  border:1px dashed var(--dalia-lino);border-radius:8px;
  padding:34px;text-align:center;color:var(--dalia-muted);
}

/* =========================================================
   9. Griglia marchi
   ========================================================= */
.marchi-grid--pagina{margin:34px 0 10px;}
.marchi-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:clamp(16px,2.5vw,28px);list-style:none;margin:0;padding:0;
}
.marchio-card{
  background:var(--dalia-bone);border:1px solid var(--dalia-lino);
  border-radius:8px;padding:26px;display:flex;flex-direction:column;gap:10px;
}
.band--sand .marchio-card{background:var(--dalia-bone);}
.marchio-card__media{
  aspect-ratio:4/3;border-radius:6px;overflow:hidden;margin:0 0 6px;
  background:linear-gradient(160deg,var(--dalia-sand),var(--dalia-lino));
  display:flex;align-items:center;justify-content:center;
}
.marchio-card__media img{width:100%;height:100%;object-fit:cover;display:block;}
.marchio-card__media span{
  font-family:var(--dalia-serif);font-style:italic;font-size:3.2rem;
  color:rgba(14,14,14,.18);
}
.marchio-card h3{margin:0;}
.marchio-card p{color:var(--dalia-muted);margin:0;flex:1;font-size:.9375rem;}
.marchio-card .btn{align-self:flex-start;padding:10px 20px;font-size:14px;}
.marchio-card__more{font-size:.875rem;}
@media (max-width:900px){.marchi-grid--pagina{margin:34px 0 10px;}
.marchi-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.marchi-grid--pagina{margin:34px 0 10px;}
.marchi-grid{grid-template-columns:1fr;}}

/* =========================================================
   10. Fascia taglie (banda inchiostro, firma della home)
   ========================================================= */
.taglie-band__in{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(28px,5vw,64px);align-items:center;}
.taglie-band h2{font-size:clamp(1.75rem, 1.1rem + 2.4vw, 3rem);}
.taglie-band h2 em{font-style:italic;color:var(--dalia-accent);}
.taglie-scale{
  display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;
}
.taglie-scale span{
  font-family:var(--dalia-serif);font-size:1.25rem;
  border:1px solid rgba(245,241,234,.35);border-radius:999px;
  padding:8px 18px;
}
@media (max-width:820px){.taglie-band__in{grid-template-columns:1fr;}}

/* =========================================================
   11. Pagine interne (prosa)
   ========================================================= */
.page-hero{padding:clamp(40px,6vw,72px) 0 clamp(20px,3vw,36px);}
.page-hero h1{max-width:20em;font-size:clamp(1.7rem, 1rem + 2vw, 2.75rem);}
h1 em,h2 em{font-style:italic;color:var(--dalia-accent);}
.page-hero__intro{font-size:1.125rem;color:var(--dalia-muted);max-width:36em;}
.prose{max-width:44em;padding-bottom:clamp(44px,7vw,80px);}
.prose h2{margin-top:1.6em;}
.prose h3{margin-top:1.4em;}
.prose ul{padding-left:1.2em;}
.prose .btn{margin:8px 0 4px;}
.prose figure{margin:1.8em 0;}
.prose .wp-block-image img,
.prose .wp-block-video video{width:100%;height:auto;border-radius:8px;display:block;background:var(--dalia-lino);}
.prose figcaption{font-size:.8125rem;color:var(--dalia-muted);margin-top:8px;text-align:center;}
.prose .alignwide,.prose .alignfull{
  max-width:none;
  width:min(calc(100vw - 2*var(--dalia-pad)), calc(var(--dalia-max) - 2*var(--dalia-pad)));
}
.prose .wp-block-gallery{gap:12px;}
.prose .wp-block-embed iframe{width:100%;border-radius:8px;}
.wp-block-video:not(:has(video)){display:none;} /* slot video pronto ma vuoto */
.prose blockquote{
  margin:1.4em 0;padding:14px 20px;border-left:3px solid var(--dalia-accent);
  background:var(--dalia-sand);border-radius:0 8px 8px 0;color:var(--dalia-ink);
}

/* FAQ — blocco details come fisarmonica */
.prose .wp-block-details{
  border-bottom:1px solid var(--dalia-lino);padding:4px 0;margin:0;
}
.prose .wp-block-details summary{
  font-family:var(--dalia-serif);font-size:1.15rem;line-height:1.35;
  padding:14px 34px 14px 0;cursor:pointer;list-style:none;position:relative;
}
.prose .wp-block-details summary::-webkit-details-marker{display:none;}
.prose .wp-block-details summary::after{
  content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);
  color:var(--dalia-accent);font-family:var(--dalia-sans);font-size:1.4rem;font-weight:300;
}
.prose .wp-block-details[open] summary{color:var(--dalia-accent);}
.prose .wp-block-details[open] summary::after{content:'−';}
.prose .wp-block-details > p{margin:0 0 16px;color:var(--dalia-muted);}

/* Blocco NAP (nome-indirizzo-telefono) */
.dalia-nap{
  background:var(--dalia-sand);border-radius:8px;padding:24px 26px;margin:1.4em 0;
}
.dalia-nap p{margin:0 0 .35em;}
.dalia-nap strong{font-family:var(--dalia-serif);font-weight:400;font-size:1.2rem;}

/* Griglia figlie di "Marchi" */
.sub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;margin:24px 0 0;padding:0;}
.sub-grid li a{
  display:block;background:var(--dalia-bone);border:1px solid var(--dalia-lino);
  border-radius:8px;padding:20px 22px;color:var(--dalia-ink);text-decoration:none;
  font-family:var(--dalia-serif);font-size:1.15rem;transition:border-color .15s ease;
}
.sub-grid li a:hover{border-color:var(--dalia-accent);color:var(--dalia-accent);}
@media (max-width:900px){.sub-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.sub-grid{grid-template-columns:1fr;}}

/* =========================================================
   12. Footer
   ========================================================= */
.site-footer{background:var(--dalia-ink);color:var(--dalia-lino);padding:clamp(40px,6vw,72px) 0 32px;}
.site-footer a{color:var(--dalia-bone);}
.site-footer__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:clamp(24px,4vw,56px);}
.site-footer h4{color:var(--dalia-bone);font-size:1.05rem;margin-bottom:.7em;}
.site-footer ul{list-style:none;margin:0;padding:0;}
.site-footer li{margin-bottom:.45em;font-size:.9375rem;}
.site-footer__logo{max-height:56px;width:auto;margin-bottom:14px;display:block;}
.site-footer__brand{
  font-family:var(--dalia-serif);letter-spacing:.42em;text-transform:uppercase;
  font-size:1.3rem;color:var(--dalia-bone);
}
.site-footer__legal{
  margin-top:38px;padding-top:18px;border-top:1px solid rgba(245,241,234,.15);
  font-size:.8125rem;color:var(--dalia-muted);
  display:flex;flex-wrap:wrap;gap:8px 22px;
}
@media (max-width:820px){.site-footer__grid{grid-template-columns:1fr;}}

/* =========================================================
   13. Barra contatti fissa — solo mobile
   ========================================================= */
.dalia-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:9999;
  display:none;align-items:center;gap:8px;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  background:var(--dalia-ink);
}
.dalia-bar a{text-decoration:none;}
.dalia-bar__wa{
  flex:1;text-align:center;background:var(--dalia-wa);color:var(--dalia-wa-ink);
  font-size:15px;font-weight:600;padding:12px;border-radius:var(--dalia-btn-radius);
}
.dalia-bar__ico{
  width:44px;height:44px;flex:0 0 44px;border-radius:50%;
  border:1px solid var(--dalia-bone);color:var(--dalia-bone);
  display:flex;align-items:center;justify-content:center;font-size:19px;
}
@media (max-width:767px){
  .dalia-bar{display:flex;}
  body{padding-bottom:72px;}
}

/* =========================================================
   14. Movimento ridotto
   ========================================================= */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

/* =========================================================
   15. Effetti testo (stile "soft rise" alla Apple)
   Solo transform/opacity/filter, attivi soltanto se:
   JS presente (html.dalia-js) + animazioni abilitate nel
   Customizer (body.dalia-fx) + nessuna preferenza di
   movimento ridotto. Senza JS il sito resta perfetto.
   ========================================================= */
@media (prefers-reduced-motion: no-preference){
  html.dalia-js .dalia-fx .fx-word{
    display:inline-block;opacity:0;transform:translateY(.5em);filter:blur(8px);
    transition:opacity 1.05s ease var(--d,0s),
               transform 1.05s cubic-bezier(.22,1,.36,1) var(--d,0s),
               filter 1.05s ease var(--d,0s);
  }
  html.dalia-js .dalia-fx .fx-ready .fx-word{opacity:1;transform:none;filter:none;}

  html.dalia-js .dalia-fx .fx-rise{
    opacity:0;transform:translateY(18px);
    transition:opacity 1s ease var(--d,0s),
               transform 1s cubic-bezier(.22,1,.36,1) var(--d,0s);
  }
  html.dalia-js .dalia-fx .fx-zoom{
    opacity:0;transform:scale(1.04);
    transition:opacity 1.25s ease var(--d,0s),
               transform 1.6s cubic-bezier(.22,1,.36,1) var(--d,0s);
  }
  html.dalia-js .dalia-fx .fx-in{opacity:1;transform:none;}
}

/* =========================================================
   16. Recensioni Google (curate)
   ========================================================= */
.recensioni-voto{
  font-family:var(--dalia-serif);font-size:1.25rem;margin:6px 0 0;
}
.recensioni-voto span{color:var(--dalia-accent);}
.recensioni-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,28px);list-style:none;margin:0;padding:0;}
.recensione{background:var(--dalia-bone);border:1px solid var(--dalia-lino);border-radius:8px;padding:26px;}
.recensione__stelle{color:var(--dalia-accent);letter-spacing:.18em;margin:0 0 10px;}
.recensione blockquote{margin:0;font-family:var(--dalia-serif);font-size:1.1rem;line-height:1.5;}
.recensione__nome{margin:12px 0 0;color:var(--dalia-muted);font-size:.9375rem;}
@media (max-width:900px){.recensioni-voto{
  font-family:var(--dalia-serif);font-size:1.25rem;margin:6px 0 0;
}
.recensioni-voto span{color:var(--dalia-accent);}
.recensioni-grid{grid-template-columns:1fr;}}

/* =========================================================
   17. Mappa nel footer — click-to-load (privacy-friendly)
   ========================================================= */
.footer-map{
  margin-top:44px;border-radius:8px;overflow:hidden;
  aspect-ratio:21/7;background:rgba(245,241,234,.06);
  border:1px solid rgba(245,241,234,.15);
  display:flex;align-items:center;justify-content:center;
}
.footer-map iframe{width:100%;height:100%;border:0;display:block;}
.footer-map__load{
  font:inherit;font-size:15px;font-weight:600;cursor:pointer;
  background:var(--dalia-bone);color:var(--dalia-ink);
  border:0;border-radius:var(--dalia-btn-radius);padding:13px 28px;
  display:flex;flex-direction:column;gap:2px;align-items:center;
}
.footer-map__load span{font-weight:400;font-size:12px;color:var(--dalia-muted);}
@media (max-width:767px){.footer-map{aspect-ratio:4/3;}}

/* =========================================================
   18. Banner cookie — striscia sottile a tutta larghezza
   ========================================================= */
.dalia-cc{
  position:fixed;left:0;right:0;bottom:0;z-index:10001;
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;
  background:var(--dalia-ink);color:var(--dalia-bone);
  border-top:1px solid rgba(245,241,234,.14);
  box-shadow:0 -8px 24px rgba(14,14,14,.25);
  padding:10px clamp(14px,3vw,28px) calc(10px + env(safe-area-inset-bottom));
  font-size:13px;
}
.dalia-cc[hidden]{display:none;}
.dalia-cc [hidden]{display:none !important;}
.dalia-cc__testo{margin:0;flex:1 1 300px;font-size:13px;line-height:1.45;padding:0;}
.dalia-cc__testo a{color:var(--dalia-bone);}
.dalia-cc__scelte{flex-basis:100%;display:flex;flex-direction:row;flex-wrap:wrap;gap:6px 20px;margin:0;font-size:13px;}
.dalia-cc__scelte input{accent-color:var(--dalia-accent);width:16px;height:16px;margin-right:5px;vertical-align:-3px;}
.dalia-cc__azioni{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;}
.dalia-cc__btn{border:0;cursor:pointer;font:inherit;font-weight:600;font-size:13px;padding:8px 18px;}
.dalia-cc__btn--rifiuta{background:var(--dalia-muted);color:var(--dalia-bone);}
.dalia-cc__btn--accetta,.dalia-cc__btn--salva{background:var(--dalia-bone);color:var(--dalia-ink);}
.dalia-cc__link{
  background:none;border:0;color:var(--dalia-lino);font:inherit;font-size:12.5px;
  cursor:pointer;text-decoration:underline;text-underline-offset:3px;
}
.dalia-cc__link--chiudi{opacity:.85;}
@media (max-width:640px){
  .dalia-cc{gap:6px 12px;padding:8px 14px calc(8px + env(safe-area-inset-bottom));font-size:12px;}
  .dalia-cc__testo{font-size:12px;line-height:1.35;flex-basis:100%;}
  .dalia-cc__azioni{margin-left:0;width:100%;gap:6px;}
  .dalia-cc__btn{flex:1 1 auto;padding:7px 10px;font-size:12.5px;}
  .dalia-cc__link{font-size:11.5px;}
}

/* Link "Preferenze cookie" nel footer */
.dalia-cc-open{
  background:none;border:0;padding:0;font:inherit;font-size:.8125rem;
  color:var(--dalia-muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px;
}
.dalia-cc-open:hover{color:var(--dalia-bone);}

/* =========================================================
   19. Rifiniture mobile — coppie di pulsanti sempre in riga
   ========================================================= */
body{overflow-x:clip;}

@media (max-width:640px){
  /* Due pulsanti affiancati: si dividono la riga, il testo
     va a capo dentro il bottone, mai uno sotto l'altro. */
  .btn-row,
  .hero__cta,
  p:has(> .btn + .btn){display:flex;flex-wrap:nowrap;gap:8px;}
  .btn-row .btn,
  .hero__cta .btn,
  p:has(> .btn + .btn) .btn{
    flex:1 1 0;margin-left:0;
    padding:12px 10px;font-size:13.5px;line-height:1.3;
    text-align:center;white-space:normal;
    display:flex;align-items:center;justify-content:center;
    min-height:46px;
  }
  .hero{padding-top:28px;}
  .hero__cta{margin-top:20px;}
  .band__head{margin-bottom:22px;}
  .taglie-scale span{font-size:1.05rem;padding:6px 14px;}
  .marchio-card{padding:20px;}
  .recensione{padding:20px;}
  .dalia-nap{padding:18px 18px;}
  .prose .alignwide,.prose .alignfull{width:calc(100vw - 2*var(--dalia-pad));}
}

/* =========================================================
   20. Articoli del blog
   ========================================================= */
.post-media{margin:0 0 26px;border-radius:8px;overflow:hidden;aspect-ratio:16/9;background:var(--dalia-lino);}
.post-media img{width:100%;height:100%;object-fit:cover;display:block;}
.post-data{margin:0 0 10px;}

/* =========================================================
   21. Modal contatti (solo desktop: da telefono WhatsApp
   si apre diretto)
   ========================================================= */
.dalia-modal{position:fixed;inset:0;z-index:10002;display:flex;align-items:center;justify-content:center;padding:20px;}
.dalia-modal[hidden]{display:none;}
.dalia-modal__velo{position:absolute;inset:0;background:rgba(14,14,14,.55);}
.dalia-modal__card{
  position:relative;background:var(--dalia-bone);color:var(--dalia-ink);
  width:min(440px,100%);border-radius:12px;padding:30px 28px 26px;
  box-shadow:0 24px 60px rgba(14,14,14,.35);
}
.dalia-modal__card h3{margin:0 0 8px;}
.dalia-modal__avviso{font-size:.9rem;color:var(--dalia-muted);margin:0 0 18px;}
.dalia-modal__wa{
  display:block;text-align:center;width:100%;
  background:var(--dalia-wa);color:var(--dalia-wa-ink);
}
.dalia-modal__info{margin-top:20px;padding-top:16px;border-top:1px solid var(--dalia-lino);font-size:.9375rem;}
.dalia-modal__info p{margin:0 0 12px;}
.dalia-modal__x{
  position:absolute;top:10px;right:14px;background:none;border:0;cursor:pointer;
  font-size:1.7rem;line-height:1;color:var(--dalia-muted);
}
.dalia-modal__x:hover{color:var(--dalia-ink);}

/* Pulsante WhatsApp dentro il lightbox del feed Instagram */
.dalia-lightbox-wa{
  position:fixed;left:50%;bottom:26px;transform:translateX(-50%);
  z-index:100000;background:var(--dalia-wa);color:var(--dalia-wa-ink);
  box-shadow:0 10px 30px rgba(14,14,14,.35);white-space:nowrap;
}

/* =========================================================
   22. File di foto nelle pagine (pattern DALIA)
   ========================================================= */
.dalia-fotoriga{margin:1.8em 0;}
/* La griglia va sul contenitore che ha davvero le foto dentro:
   nei temi classici WordPress inserisce un div interno. */
.dalia-fotoriga:not(:has(> .wp-block-group__inner-container)),
.dalia-fotoriga > .wp-block-group__inner-container{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
}
.dalia-fotoriga--4:not(:has(> .wp-block-group__inner-container)),
.dalia-fotoriga--4 > .wp-block-group__inner-container{grid-template-columns:repeat(4,1fr);}
.dalia-fotoriga--1:not(:has(> .wp-block-group__inner-container)),
.dalia-fotoriga--1 > .wp-block-group__inner-container{grid-template-columns:1fr;}
.dalia-fotoriga--1{max-width:420px;}
.dalia-fotoriga figure{margin:0 !important;}
.dalia-fotoriga img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px;display:block;background:var(--dalia-lino);}
@media (max-width:640px){
  .dalia-fotoriga--4:not(:has(> .wp-block-group__inner-container)),
  .dalia-fotoriga--4 > .wp-block-group__inner-container{grid-template-columns:repeat(2,1fr);}
  .dalia-fotoriga:not(:has(> .wp-block-group__inner-container)),
  .dalia-fotoriga > .wp-block-group__inner-container{gap:8px;}
}
