/*
Theme Name:     Dolci Aveja (Astra Child)
Theme URI:      https://dolciaveja.it
Description:    Child theme di Astra per il sito vetrina Dolci Aveja. Colori del brand storico (marrone/oro/crema/terracotta, presi dal vecchio sito) e tipografia Cormorant Garamond + Inter.
Author:         Dolci Aveja
Template:       astra
Version:        1.6.0
Text Domain:    astra-child
*/

/* ============================================================
   Palette BRAND Dolci Aveja  — valori reali dal vecchio tema
   (#56311e marrone logo · #c4a555/#e8d998 oro · #f1e1a5 crema · #d47e27 terracotta)
   ============================================================ */
:root{
  --da-marrone:       #56311e;  /* marrone del logo/diamante */
  --da-marrone-2:     #584737;
  --da-oro:           #c4a555;
  --da-oro-soft:      #e8d998;
  --da-crema:         #f1e1a5;
  --da-crema-2:       #eee2a8;
  --da-terracotta:    #d47e27;
  --da-testo:         #333333;

  /* override delle variabili globali di Astra: tutto il tema eredita il brand */
  --ast-global-color-0: #d47e27; /* accent (bottoni, selezione) */
  --ast-global-color-1: #9e4f33; /* accent scuro / hover */
  --ast-global-color-2: #56311e; /* link / titolo sito */
  --ast-global-color-3: #56311e; /* base titoli */
}

/* ============================================================
   Tipografia: titoli Cormorant Garamond, testo Inter
   ============================================================ */
body,
.ast-container,
button, input, select, textarea{
  font-family:'Inter', -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color:var(--da-testo);
}

h1, h2, h3, h4, h5, h6,
.site-title,
.entry-title,
.widget-title{
  font-family:'Cormorant Garamond', Georgia, "Times New Roman", serif !important;
  font-weight:600;
  letter-spacing:.2px;
  color:var(--da-marrone);
}
h1, .entry-title{ font-weight:700; line-height:1.12; }

/* ============================================================
   Accenti / bottoni / link
   ============================================================ */
a{ color:var(--da-marrone); }
a:hover, a:focus{ color:var(--da-terracotta); }

.ast-button, .button, button,
.wp-block-button__link,
input[type="submit"],
.menu-item.shop-online > a{
  background-color:var(--da-terracotta);
  border-color:var(--da-terracotta);
  color:#fff;
  border-radius:3px;
}
.ast-button:hover, .wp-block-button__link:hover,
input[type="submit"]:hover{
  background-color:var(--da-marrone);
  border-color:var(--da-marrone);
  color:#fff;
}

/* ============================================================
   Superfici: header crema, footer marrone, filetti oro
   ============================================================ */
.site-header{ background-color:var(--da-crema); border-bottom:3px solid var(--da-oro); }
.main-header-menu a{ color:var(--da-marrone); }
.main-header-menu a:hover{ color:var(--da-terracotta); }

.site-footer, footer.site-footer{ background-color:var(--da-marrone); color:var(--da-crema); }
.site-footer a{ color:var(--da-oro-soft); }
.site-footer a:hover{ color:#fff; }

/* sezioni a fondo crema per ritmo visivo */
.da-sezione-crema{ background-color:var(--da-crema-2); }
hr, .ast-separator{ border-color:var(--da-oro); }

/* niente titolo pagina sulla home + contenuto a tutta larghezza */
.home .entry-title,
.page-id-6 .entry-title{ display:none; }
.home .site-content .ast-container{ max-width:100%; padding-left:0; padding-right:0; }
.home .ast-article-single{ padding:0 !important; }

/* ============================================================
   HEADER
   ============================================================ */
.site-header{ position:sticky; top:0; z-index:99; box-shadow:0 1px 10px rgba(86,49,30,.10); }
.ast-site-identity .site-logo-img img,
.site-header .custom-logo{ max-height:62px; width:auto; }
.main-header-menu .menu-item > a{ font-weight:500; }
.main-header-menu .menu-item > a:hover{ color:var(--da-terracotta); }
/* voce "Shop online" come bottone */
.menu-item.shop-online > a,
.main-header-menu li.shop-online > a{
  background:var(--da-terracotta); color:#fff !important;
  border-radius:3px; padding:.45em 1.1em !important; margin-left:.4rem;
}
.menu-item.shop-online > a:hover{ background:var(--da-marrone); }

/* ============================================================
   FOOTER brandizzato
   ============================================================ */
.da-footer{ background:var(--da-marrone); color:var(--da-crema); padding:3.2rem 1.5rem 1.2rem; }
.da-footer-inner{ max-width:1140px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:2rem; }
.da-footer h4{ color:var(--da-oro); font-family:'Cormorant Garamond',Georgia,serif !important; font-size:1.5rem; font-weight:600; margin:0 0 .7rem; }
.da-footer p,.da-footer li{ color:var(--da-crema); font-size:.95rem; line-height:1.7; }
.da-footer ul{ list-style:none; margin:0; padding:0; }
.da-footer a{ color:var(--da-oro-soft); text-decoration:none; }
.da-footer a:hover{ color:#fff; }
.da-footer-shop{ display:inline-block; margin-top:.6rem; background:var(--da-terracotta); color:#fff !important; padding:.5rem 1.1rem; border-radius:3px; font-weight:500; }
.da-footer-shop:hover{ background:var(--da-oro); color:var(--da-marrone) !important; }
.da-footer-copy{ max-width:1140px; margin:2.2rem auto 0; padding-top:1.2rem; border-top:1px solid rgba(201,162,75,.3); text-align:center; font-size:.85rem; color:var(--da-oro-soft); }
/* nascondo la barra footer Astra (vuota nel Footer Builder) */
.site-below-footer-wrap{ display:none; }
@media(max-width:782px){ .da-footer-inner{ grid-template-columns:1fr 1fr; } }
@media(max-width:480px){ .da-footer-inner{ grid-template-columns:1fr; } }

/* ============================================================
   BLOG: anteprime uniformi (no verticali stirate)
   crop 3:2 con object-fit cover, sia archivio che articolo singolo
   ============================================================ */
.ast-blog-featured-section.post-thumb,
.ast-archive-description + .ast-row .post-thumb,
.blog .ast-article-post .post-thumb,
.archive .ast-article-post .post-thumb{
  aspect-ratio:3 / 2;
  overflow:hidden;
  border-radius:6px;
}
.ast-blog-featured-section.post-thumb > a,
.ast-blog-featured-section.post-thumb{ display:block; height:100%; }
.ast-blog-featured-section.post-thumb img.wp-post-image,
.blog .post-thumb img.wp-post-image,
.archive .post-thumb img.wp-post-image{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  object-position:center;
  display:block;
}
/* featured image dell'articolo singolo: altezza controllata, mai stirata */
.single .ast-single-post-featured-section img{
  max-height:520px;
  width:100%;
  object-fit:cover;
}
/* Home: fascia territorio (panorama L'Aquila) — altezza ridotta su mobile/tablet
   così resta una fascia larga e non un quadrato che ne mostra solo un pezzo */
@media (max-width:921px){
  .wp-block-cover.aveja-territorio{ min-height:300px !important; }
}
@media (max-width:544px){
  .wp-block-cover.aveja-territorio{ min-height:240px !important; }
}

/* === HERO SLIDESHOW (home) — img + video, JS-driven === */
.aveja-hero{position:relative;width:100%;height:78vh;min-height:520px;overflow:hidden;background:#1a1410;}
.aveja-hero-slides{position:absolute;inset:0;}
.aveja-hero-slides .slide{
  position:absolute;inset:0;opacity:0;transition:opacity 1s ease;will-change:opacity;
}
.aveja-hero-slides .slide.is-active{opacity:1;}
.aveja-hero-slides .slide > img,
.aveja-hero-slides .slide > video{
  width:100%;height:100%;object-fit:cover;display:block;
}
/* overlay: vignettatura laterale + dark al centro dietro il testo + bottom più scuro per leggibilità */
.aveja-hero-overlay{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(ellipse 70% 55% at center 55%, rgba(20,12,8,.55) 0%, rgba(20,12,8,0) 70%),
  linear-gradient(90deg, rgba(20,12,8,.6) 0%, rgba(20,12,8,0) 22%, rgba(20,12,8,0) 78%, rgba(20,12,8,.6) 100%),
  linear-gradient(180deg, rgba(20,12,8,.18) 0%, rgba(20,12,8,.7) 100%);
}
.aveja-hero-content{
  position:absolute;inset:0;z-index:2;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;color:#fff;padding:0 1.5rem;
}
.aveja-hero-content .eyebrow{
  font-size:14px;letter-spacing:3px;text-transform:uppercase;color:#e8d998;margin:0 0 1rem;font-weight:500;
  text-shadow:0 1px 6px rgba(0,0,0,.55);
}
.aveja-hero-content h1{
  font-family:'Cormorant Garamond',serif;font-size:3.6rem;line-height:1.12;color:#fff8e2;margin:0 0 1.2rem;font-weight:600;
  max-width:980px;
  text-shadow:0 2px 14px rgba(0,0,0,.65), 0 0 30px rgba(0,0,0,.3);
}
.aveja-hero-content .sub{
  font-size:19px;line-height:1.4;color:#fff;margin:0 0 1.7rem;max-width:680px;font-weight:400;
  text-shadow:0 1px 10px rgba(0,0,0,.6);
}
.aveja-hero-cta{display:flex;gap:.9rem;flex-wrap:wrap;justify-content:center;}
.aveja-hero-cta a{padding:.85rem 1.6rem;font-weight:500;text-decoration:none;border-radius:3px;display:inline-block;transition:transform .2s;}
.aveja-hero-cta a:hover{transform:translateY(-1px);}
.aveja-hero-cta .btn-primary{background:#d47e27;color:#fff;}
.aveja-hero-cta .btn-outline{border:1.5px solid #fff;color:#fff;}
@media (max-width:768px){
  .aveja-hero{height:70vh;min-height:420px;}
  .aveja-hero-content h1{font-size:2.4rem;}
  .aveja-hero-content .sub{font-size:16px;}
}

/* Card categoria: gradient pulito (trasparente alto -> scuro basso, senza dim) — gestito anche dal markup */
.wp-block-cover.aveja-card .wp-block-cover__inner-container{ z-index:1; position:relative; }

/* === EYEBROW — titolo sezione grande (stile catalogo Canva) === */
/* uguale all'h2 (3rem) per non risultare minuscolo; h2 sotto fa da sottotitolo */
.aveja-eyebrow{
  display:block;width:fit-content;
  font-size:3rem;line-height:1.05;letter-spacing:2.5px;text-transform:uppercase;
  color:#c4a555;margin:0 0 .6rem 0;font-weight:700;padding-bottom:.9rem;
  position:relative;
  font-family:'Cormorant Garamond', Georgia, serif;
}
.aveja-eyebrow::after{
  content:"";display:block;width:96px;height:1.5px;background:#c4a555;
  margin:.7rem auto 0;
}
.aveja-eyebrow.has-text-align-center{ margin-left:auto;margin-right:auto; }
.aveja-eyebrow.is-light{color:#e8d998;}
.aveja-eyebrow.is-light::after{background:#e8d998;}
@media(max-width:768px){
  .aveja-eyebrow{ font-size:2rem;letter-spacing:2px; }
  .aveja-eyebrow::after{ width:70px; }
}

/* === H2 più grandi e con peso sulla HOME (Cormorant è una serif sottile) === */
/* Astra inietta inline `h2{font-size:1.875rem}` con specificità bassa MA prima del mio link;
   uso !important per essere sicuro che non sia sovrascritto da media query Astra a 25px */
.home .wp-block-group h2.wp-block-heading,
.home .wp-block-cover h2.wp-block-heading,
.home .aveja-storia h2.wp-block-heading,
.home .wp-block-cover h2,
.home .wp-block-group > h2{
  font-size:3rem !important;line-height:1.1 !important;
  font-weight:700 !important;letter-spacing:.3px !important;
  /* NB: solo margin-bottom, non shorthand: shorthand con !important sovrascriverebbe
     margin-left/right:auto !important del layout constrained, ancorando l'h2 a sinistra */
  margin-block-start:0 !important;margin-block-end:1.1rem !important;
}
@media(max-width:768px){
  .home .wp-block-group h2.wp-block-heading,
  .home .wp-block-cover h2.wp-block-heading,
  .home .aveja-storia h2.wp-block-heading,
  .home .wp-block-cover h2,
  .home .wp-block-group > h2{ font-size:2.1rem !important; }
}
/* il sottotitolo/paragrafo intro sotto l'h2 della cards section: leggermente più grande */
.home .wp-block-group h2.wp-block-heading + p{ font-size:1.05rem; }

/* === DIVIDER decorativo: diamante AVEJA tra linee oro === */
.aveja-divider{
  display:flex;align-items:center;justify-content:center;gap:1.6rem;
  padding:2.6rem 1.5rem;max-width:1100px;margin:0 auto;
}
.aveja-divider::before,.aveja-divider::after{
  content:"";flex:0 1 180px;height:1px;background:#c4a555;
}
.aveja-divider img{width:58px;height:auto;opacity:.9;}

/* === HOVER card categoria === */
.wp-block-cover.is-position-bottom-left{
  transition:transform .28s ease,box-shadow .28s ease;
}
.wp-block-cover.is-position-bottom-left:hover{
  transform:translateY(-3px) scale(1.015);
  box-shadow:0 14px 32px rgba(40,22,10,.22);
}

/* === STRIP "I NOSTRI VALORI" === */
.aveja-values{
  display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;
  padding:2rem 1rem 2.5rem;max-width:1100px;margin:0 auto;
}
.aveja-value{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.62rem 1.15rem;border:1px solid #c4a555;border-radius:999px;
  font-size:.93rem;color:#56311e;background:rgba(255,255,255,.55);
  font-weight:500;
}
.aveja-value svg{width:18px;height:18px;color:#c4a555;flex-shrink:0;}

/* === WAX SEAL "DAL 1977" sulla sezione storia === */
.aveja-storia{position:relative;}
.aveja-storia .wax-seal{
  position:absolute;top:1.6rem;right:1.6rem;width:108px;height:auto;
  transform:rotate(-9deg);
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.35));
  z-index:2;
}
@media(max-width:768px){
  .aveja-storia .wax-seal{width:78px;top:.8rem;right:.8rem;}
}

/* === SHOP INFO (foto vetrina + indirizzo) prima del CTA === */
.aveja-shop-info{
  max-width:920px;margin:0 auto;padding:2rem 1.5rem;
  display:grid;grid-template-columns:1.1fr 1fr;gap:2rem;align-items:center;
}
.aveja-shop-info img{
  width:100%;height:auto;border-radius:6px;display:block;
  box-shadow:0 10px 28px rgba(40,22,10,.18);
}
.aveja-shop-info h3{
  font-family:'Cormorant Garamond',serif;color:#56311e;font-size:1.9rem;
  margin:0 0 .6rem;line-height:1.15;font-weight:600;
}
.aveja-shop-info .addr{margin:0 0 .35rem;color:#333;font-size:1rem;line-height:1.6;}
.aveja-shop-info .addr strong{color:#56311e;}
@media(max-width:768px){.aveja-shop-info{grid-template-columns:1fr;}}

/* ============================================================
   PAGINE PRODOTTO — pattern "catalogo" (ispirato al PPTX)
   eyebrow oro · card crema con foto scontornata · ribbon trust
   ============================================================ */
/* override pagine prodotto — gestito già nella regola principale sopra (3rem) */
.aveja-pasticceria-hero{padding:3.2rem 1.5rem !important;}
.aveja-pasticceria-hero h1{margin:.4rem 0 1rem;font-family:'Cormorant Garamond',serif;}

/* Ribbon "trust" — striscia marrone con elenco virtù prodotto */
.aveja-ribbon p{margin:0;}

/* Card prodotto: foto scontornata + nome + descr + link */
.aveja-card{
  height:100%;
  text-align:center;
  box-shadow:0 1px 3px rgba(86,49,30,.08);
  transition:transform .2s, box-shadow .2s;
  display:flex;flex-direction:column;
}
.aveja-card:hover{
  transform:translateY(-3px);
  box-shadow:0 6px 18px rgba(86,49,30,.15);
}
.aveja-card .aveja-card-img{
  margin:0 auto 1rem;
  height:140px;
  display:flex;align-items:center;justify-content:center;
}
.aveja-card .aveja-card-img img{
  max-height:140px;
  width:auto;
  object-fit:contain;
}
.aveja-card h3{
  font-family:'Inter',sans-serif !important;
  font-weight:600 !important;
  color:#56311e !important;
  margin:.2rem 0 .6rem !important;
  letter-spacing:1px !important;
}
.aveja-card p{margin:.2rem 0;color:#584737;}
.aveja-card-stagionale{
  border:1px solid rgba(212,126,39,.35);
  position:relative;
}
.aveja-card-stagionale::before{
  content:"Stagione invernale";
  position:absolute;top:.6rem;right:.6rem;
  background:#d47e27;color:#fff;
  font-size:10px;letter-spacing:.8px;
  padding:.28rem .65rem;border-radius:999px;
  font-weight:600;text-transform:uppercase;
  box-shadow:0 1px 3px rgba(86,49,30,.25);
}

/* Card senza foto: logo Aveja come placeholder + caption tenue */
.aveja-card-placeholder .aveja-card-img{
  background:rgba(244,234,208,.5);
  border:1px dashed rgba(196,165,85,.45);
  border-radius:6px;
  position:relative;
}
.aveja-card-placeholder .aveja-card-img img{
  max-height:78px !important;
  opacity:.65;
}
.aveja-card-placeholder .aveja-card-img::after{
  content:"foto in arrivo";
  position:absolute;
  bottom:.45rem;left:0;right:0;
  font-size:9px;
  color:#9e4f33;
  letter-spacing:1.2px;
  text-transform:uppercase;
  font-style:italic;
  text-align:center;
}

/* ============================================================
   TRUST CHIPS — integrati nell'hero crema (no più area marrone)
   chip su crema con bordo oro e testo marrone
   ============================================================ */
.aveja-trust-bar{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:.6rem .75rem;
  max-width:1100px;margin:1.4rem auto 0;padding:0 1rem;
}
.aveja-trust-chip{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(255,255,255,.55);
  border:1px solid rgba(196,165,85,.55);
  color:#56311e;
  padding:.45rem .95rem .45rem .5rem;
  border-radius:999px;
  font-size:13px;
  letter-spacing:.3px;
  font-weight:500;
  line-height:1;
  transition:background .2s, border-color .2s, transform .2s;
}
.aveja-trust-chip:hover{
  background:rgba(255,255,255,.85);
  border-color:#c4a555;
  transform:translateY(-1px);
}
.aveja-trust-chip .aveja-tick{
  display:inline-flex;align-items:center;justify-content:center;
  width:20px;height:20px;
  background:#c4a555;color:#fff;
  border-radius:50%;
  font-size:11px;font-weight:700;
  flex:0 0 20px;
}
@media (max-width:544px){
  .aveja-trust-bar{gap:.4rem .5rem;margin-top:1rem;}
  .aveja-trust-chip{font-size:11.5px;padding:.35rem .75rem .35rem .42rem;}
  .aveja-trust-chip .aveja-tick{width:17px;height:17px;font-size:10px;flex-basis:17px;}
}
.aveja-card-link{
  margin-top:auto !important;
  padding-top:.8rem;
  font-size:13px;
  letter-spacing:.5px;
}
.aveja-card-link a{
  color:#9e4f33;
  font-weight:500;
  text-decoration:none;
  border-bottom:1px solid rgba(158,79,51,.3);
  padding-bottom:1px;
}
.aveja-card-link a:hover{
  color:#d47e27;
  border-bottom-color:#d47e27;
}

/* Pull-quote bruno fra le sezioni */
.aveja-pullquote .wp-block-cover__inner-container{max-width:920px;margin:0 auto;}

/* Vaschetta nelle intro: ombra dolce per dare profondità all'oggetto scontornato */
.aveja-vaschetta img,
.aveja-confezioni img{
  filter:drop-shadow(0 8px 14px rgba(86,49,30,.18));
}

/* Mobile: card a 2 colonne invece di 4/3 */
@media (max-width:782px){
  .aveja-card-row.wp-block-columns{flex-wrap:wrap !important;gap:1rem !important;}
  .aveja-card-row .wp-block-column{flex-basis:calc(50% - .5rem) !important;}
  .aveja-pasticceria-hero h1{font-size:2.2rem !important;}
}
@media (max-width:480px){
  .aveja-card-row .wp-block-column{flex-basis:100% !important;}
  .aveja-ribbon p{font-size:12px !important;}
}

/* === SFONDO "BIANCO ANTICATO" SITE-WIDE — Fontana 99 Cannelle sbiadita (come catalogo Canva) === */
body, body.ast-separate-container{
  background: #ffffff url(./assets/aveja-bg-fontana.jpg) top center / cover no-repeat fixed !important;
}
/* container Astra trasparenti così la fontana traspare ovunque */
#page, .site, .site-content, #content, .ast-container, .ast-content,
.single .entry-content, .page .entry-content,
.ast-article-single, .ast-article-post,
.blog #content, .archive #content, .search #content{
  background-color:transparent !important;
}
/* su mobile la fontana cover ingrandisce troppo: la riduco a contain in alto */
@media (max-width:768px){
  body{ background-size:contain !important; background-position:top center !important; background-color:#fff !important; }
}

/* Fix WP cover-dim-100: la regola di WP applica background-color:#000 al div
   .wp-block-cover.has-background-dim, e l'esenzione has-background-gradient
   è solo sullo span figlio — non scatta sul div. Risultato: card nera anche
   se l'immagine di sfondo carica correttamente.
   Forzo trasparenza sulle card di categoria della home (is-position-bottom-left). */
.wp-block-cover.is-position-bottom-left.has-background-dim{
  background-color:transparent !important;
}

/* Dual-image hover swap sulle card cover della home (.aveja-dual)
   Pattern: la front (img standard wp-block-cover__image-background) sta in primo piano,
   la back (.aveja-cover-back) sopra con opacity 0 → al hover opacity 1.
   Su touch device (no :hover stabile) primo tap → swap (vede back), secondo tap → naviga. */
.wp-block-cover.aveja-dual{ overflow:hidden; }
.wp-block-cover.aveja-dual .aveja-cover-back{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover;
  opacity:0;
  transition:opacity .5s ease;
  z-index:0;
  pointer-events:none;
}
.wp-block-cover.aveja-dual:hover .aveja-cover-back,
.wp-block-cover.aveja-dual:focus-within .aveja-cover-back{
  opacity:1;
}
/* leggero zoom sulla front per dare profondità */
.wp-block-cover.aveja-dual .wp-block-cover__image-background{
  transition:transform .7s ease;
}
.wp-block-cover.aveja-dual:hover .wp-block-cover__image-background{
  transform:scale(1.04);
}
@media (prefers-reduced-motion: reduce){
  .wp-block-cover.aveja-dual .aveja-cover-back,
  .wp-block-cover.aveja-dual .wp-block-cover__image-background{
    transition:none;
  }
  .wp-block-cover.aveja-dual:hover .wp-block-cover__image-background{
    transform:none;
  }
}
