/* ==========================================================================
   Vinoteca — base: font self-hosted, design token, reset, tipografia
   ========================================================================== */

@font-face{
  font-family:"Newsreader";font-style:italic;font-weight:600;font-display:swap;
  src:url("../fonts/newsreader-italic-600-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Newsreader";font-style:italic;font-weight:600;font-display:swap;
  src:url("../fonts/newsreader-italic-600-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:"Karla";font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/karla-400-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Karla";font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/karla-400-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:"Karla";font-style:normal;font-weight:700;font-display:swap;
  src:url("../fonts/karla-700-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Karla";font-style:normal;font-weight:700;font-display:swap;
  src:url("../fonts/karla-700-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

:root{
  /* toni carta/pietra e inchiostro: fissi, non configurabili da Customizer */
  --stone:#ece7db;
  --stone-2:#ddd6c2;
  --paper:#f6f2e7;
  --ink:#3f331c;
  /* #7d715a originale era sotto la soglia WCAG AA (4.5:1) per testo
     normale su --stone (3.88:1) e --paper (4.28:1) — usato ovunque a
     dimensioni piccole (sottotitoli, breadcrumb, meta prodotto), quindi
     conta come testo "normale" e non "grande" agli occhi di WCAG.
     Scurito leggermente: 4.63:1 su --stone, 5.11:1 su --paper. */
  --ink-dim:#71654e;
  --rule:#d3c9b0;
  --maxw:920px;

  /* colore accento: default di fallback, sovrascritto via wp_add_inline_style
     dal valore salvato nel Customizer (vedi inc/enqueue.php + inc/theme-options.php) */
  --accent:#2f5233;
  --accent-hover:#3d6b43;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--stone);color:var(--ink);
  font-family:"Karla",-apple-system,"Segoe UI",sans-serif;font-size:16.5px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;display:block;}
a{color:inherit;}
h1,h2{margin:0;text-wrap:balance;font-weight:400;}
h1,h2,.font-heading{font-family:"Newsreader",serif;font-style:italic;font-weight:600;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.wrap-wide{max-width:1160px;margin:0 auto;padding:0 28px;}
.mono{font-variant-numeric:tabular-nums;}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.hidden{display:none !important;}
.screen-reader-text{
  position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}
}
