/* =========================================================
   Corina Caffe — catalog tipografic pe fond espresso
   Direcția: _sursa/directie.md
   Construit la 390, media query-uri numai min-width.
   ========================================================= */

/* ---------- fonturi locale, subsetate ---------- */
@font-face{
  font-family:'Newsreader';
  src:url('fonturi/newsreader-latin-ext.woff2') format('woff2');
  font-weight:400 600; font-style:normal; font-display:swap;
  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:'Newsreader';
  src:url('fonturi/newsreader-latin.woff2') format('woff2');
  font-weight:400 600; font-style:normal; font-display:swap;
  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:'Instrument Sans';
  src:url('fonturi/instrument-sans-latin-ext.woff2') format('woff2');
  font-weight:400 600; font-style:normal; font-display:swap;
  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:'Instrument Sans';
  src:url('fonturi/instrument-sans-latin.woff2') format('woff2');
  font-weight:400 600; font-style:normal; font-display:swap;
  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;
}

/* ---------- tokeni ---------- */
:root{
  color-scheme:dark;

  --ground:#151210;
  --ground-2:#1E1A18;
  --ground-3:#262120;
  --ink:#F2EBE4;
  --ink-mut:#A9A099;
  --ink-slab:#6E6560;

  --bordo:#8E2F33;
  --bordo-adanc:#5D251E;
  --bordo-clar:#B04046;
  --alama:#C69F47;

  --sp-1:.25rem; --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem;
  --sp-5:1.25rem; --sp-6:1.5rem; --sp-8:2rem; --sp-10:2.5rem;
  --sp-12:3rem; --sp-16:4rem;
  --sectiune:clamp(3.5rem,2rem + 7vw,7rem);

  --radius:4px; --radius-lg:10px;
  --linie:1px solid rgb(242 235 228 / .12);
  --linie-tare:1px solid rgb(242 235 228 / .22);
  --umbra:0 18px 50px -22px rgb(0 0 0 / .85);
  --lat:1180px;
  --lat-text:66ch;
  --tranzitie:180ms cubic-bezier(.2,.7,.3,1);

  --pas:clamp(1rem,.94rem + .28vw,1.075rem);
  --mic:clamp(.8rem,.77rem + .12vw,.86rem);
  --h4:clamp(1.05rem,.98rem + .3vw,1.2rem);
  --h3:clamp(1.3rem,1.1rem + 1vw,1.65rem);
  --h2:clamp(1.7rem,1.25rem + 2.3vw,2.7rem);
  --h1:clamp(2.2rem,1.45rem + 4.3vw,3.9rem);
}

/* lamelele — lucrul memorabil, luat din soclul tejghelei lor */
.lamele{
  background-image:repeating-linear-gradient(
    90deg,
    var(--bordo-adanc) 0 2px,
    var(--bordo) 2px 3px,
    var(--bordo-adanc) 3px 6px);
}
.lamele-fine{
  background-image:repeating-linear-gradient(
    90deg,
    rgb(242 235 228 / .16) 0 1px,
    transparent 1px 5px);
}

/* ---------- baza ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  background:var(--ground);
  color:var(--ink);
  font-family:'Instrument Sans',system-ui,-apple-system,sans-serif;
  font-size:var(--pas);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  position:relative;
}
h1,h2,h3,h4{
  font-family:'Newsreader',Georgia,serif;
  font-weight:400;
  line-height:1.06;
  letter-spacing:-.015em;
}
h1{font-size:var(--h1);font-variation-settings:'opsz' 72}
h2{font-size:var(--h2);font-variation-settings:'opsz' 48}
h3{font-size:var(--h3);font-variation-settings:'opsz' 24}
h4{font-size:var(--h4);font-variation-settings:'opsz' 16}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
p a:not(.btn):not(.loc__tel){text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--bordo-clar)}
:focus-visible{outline:2px solid var(--alama);outline-offset:3px;border-radius:2px}
button,input,select,textarea{font:inherit;color:inherit}

.container{width:100%;max-width:var(--lat);margin-inline:auto;padding-inline:var(--sp-5)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ---------- antet ---------- */
.antet{
  position:sticky;top:0;z-index:60;
  background:var(--ground);
  border-bottom:var(--linie);
}
.antet__bara{
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--sp-4);min-height:58px;
}
.marca{display:flex;align-items:center;gap:var(--sp-3);padding-block:var(--sp-2)}
.marca__semn{
  display:block;width:112px;height:25px;flex:none;
  background-color:var(--ink);
  -webkit-mask:url('wordmark.svg') no-repeat center/contain;
  mask:url('wordmark.svg') no-repeat center/contain;
}
.nav-buton{
  display:inline-flex;align-items:center;gap:var(--sp-2);
  min-height:44px;padding:0 var(--sp-3);
  background:none;border:var(--linie-tare);border-radius:var(--radius);
  cursor:pointer;font-size:var(--mic);letter-spacing:.06em;text-transform:uppercase;
}
.nav-buton__linii{display:block;width:16px;height:10px;position:relative}
.nav-buton__linii::before,.nav-buton__linii::after{
  content:'';position:absolute;left:0;right:0;height:1px;background:var(--ink);
}
.nav-buton__linii::before{top:1px}
.nav-buton__linii::after{bottom:1px}

/* pe telefon: panou pe toată lățimea, sub bara antetului.
   Fundal opac — fără backdrop-filter, care pe element fix trece sub conținut. */
.nav{
  position:absolute;left:0;right:0;top:100%;
  background:var(--ground);
  border-top:var(--linie);border-bottom:var(--linie);
  box-shadow:var(--umbra);
  padding:var(--sp-3) var(--sp-5) var(--sp-6);
  max-height:calc(100dvh - 58px);overflow-y:auto;
}
.nav__lista{list-style:none;display:flex;flex-direction:column}
.nav__lista a{
  display:flex;align-items:center;justify-content:space-between;
  min-height:48px;padding-block:var(--sp-2);
  border-bottom:var(--linie);
  font-family:'Newsreader',Georgia,serif;font-size:1.35rem;
}
.nav__lista a[aria-current="page"]{color:var(--ink)}
.nav__lista a[aria-current="page"]::after{content:'—';color:var(--bordo-clar)}
.nav__actiuni{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-5)}

/* ---------- butoane ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);
  min-height:48px;padding:var(--sp-3) var(--sp-6);
  border:1px solid transparent;border-radius:var(--radius);
  font-size:var(--mic);font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;transition:background var(--tranzitie),border-color var(--tranzitie),color var(--tranzitie);
}
.btn--plin{background:var(--bordo);color:#FFF6F2}
.btn--plin:hover{background:var(--bordo-clar)}
.btn--contur{border-color:rgb(242 235 228 / .3);color:var(--ink)}
.btn--contur:hover{border-color:var(--ink);background:rgb(242 235 228 / .05)}
.btn--bloc{width:100%}
.btn--tel{gap:var(--sp-2);letter-spacing:.04em}
.ico{flex:none;width:15px;height:15px;display:block}

/* ---------- eticheta de sectiune (supratitlu) ---------- */
.eticheta{
  display:flex;align-items:center;gap:var(--sp-3);
  font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink-slab);margin-bottom:var(--sp-4);
}
.eticheta::after{content:'';flex:1;height:1px;background:rgb(242 235 228 / .14)}
.eticheta__nr{
  font-family:'Newsreader',Georgia,serif;font-size:1rem;letter-spacing:0;
  color:var(--bordo-clar);
}

/* banda de lamele — semnul recurent */
.banda-lamele{display:block;height:14px;width:100%}

/* ---------- hero ---------- */
.hero{padding-block:var(--sp-8) var(--sp-12);position:relative}
.hero__grila{display:grid;gap:var(--sp-8)}
.hero__text{min-width:0}
.hero__titlu{margin-block:var(--sp-4) var(--sp-5)}
.hero__titlu em{font-style:italic;color:var(--bordo-clar)}
.hero__intro{color:var(--ink-mut);max-width:46ch;font-size:1.05rem}
.hero__act{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-6)}
.hero__foto{position:relative;overflow:hidden;border-radius:var(--radius-lg)}
.hero__foto img{width:100%;aspect-ratio:11/16;object-fit:cover}
.hero__nota{
  margin-top:var(--sp-3);font-size:.72rem;letter-spacing:.06em;
  color:var(--ink-slab);
}
.hero__fapte{
  list-style:none;display:grid;grid-template-columns:repeat(2,1fr);
  gap:var(--sp-5) var(--sp-4);margin-top:var(--sp-8);
  padding-top:var(--sp-6);border-top:var(--linie);
}
.hero__fapte b{
  display:block;font-family:'Newsreader',Georgia,serif;font-size:1.9rem;
  font-variation-settings:'opsz' 32;color:var(--ink);line-height:1;
}
.hero__fapte span{font-size:var(--mic);color:var(--ink-mut);display:block;margin-top:var(--sp-2)}

/* ---------- sectiuni ---------- */
.sectiune{padding-block:var(--sectiune)}
.sectiune--ridicat{background:var(--ground-2)}
.sectiune__cap{margin-bottom:var(--sp-8)}
.sectiune__cap p{color:var(--ink-mut);max-width:52ch;margin-top:var(--sp-4)}

/* ---------- catalog tipografic ---------- */
.catalog{margin-top:var(--sp-6)}
.cat-grup{margin-bottom:var(--sp-12);scroll-margin-top:76px}
.cat-grup__cap{
  display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);
  padding-bottom:var(--sp-3);margin-bottom:var(--sp-2);
  border-bottom:var(--linie-tare);
}
.cat-grup__cap h3{font-variation-settings:'opsz' 28}
.cat-grup__nr{font-size:var(--mic);color:var(--ink-slab);letter-spacing:.08em;white-space:nowrap}

.rand{
  display:grid;grid-template-columns:1fr auto auto;
  gap:var(--sp-1) var(--sp-3);
  align-items:baseline;
  padding-block:var(--sp-4);
  position:relative;
}
.rand::after{
  content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;
  background:rgb(242 235 228 / .1);transform-origin:left;
}
.rand:last-child::after{display:none}
.rand__nume{font-weight:600;min-width:0}
.rand__desc{
  grid-column:1/-1;font-size:var(--mic);color:var(--ink-mut);
  max-width:58ch;margin-top:calc(var(--sp-1) * -1);
}
.rand__pret{
  font-variant-numeric:tabular-nums;white-space:nowrap;
  font-weight:600;color:var(--ink);
}
.rand__pret span{font-size:.72rem;color:var(--ink-slab);font-weight:400;margin-left:2px}
.rand__pret--cerere{font-style:italic;font-weight:400;color:var(--ink-slab)}
/* butonul de adăugare: cerc mic, dar zonă de atins de 44px */
.rand__adauga{
  width:44px;height:44px;padding:0;flex:none;
  display:grid;place-items:center;align-self:center;
  background:none;border:0;cursor:pointer;
  font-size:1.15rem;line-height:1;color:var(--ink-mut);
  position:relative;
}
.rand__adauga::before{
  content:'';position:absolute;inset:5px;border-radius:50%;
  border:var(--linie-tare);
  transition:border-color var(--tranzitie),background var(--tranzitie);
}
.rand__adauga:hover{color:var(--ink)}
.rand__adauga:hover::before{border-color:var(--bordo-clar)}
.rand__adauga[data-in-cos="1"]{color:#FFF6F2}
.rand__adauga[data-in-cos="1"]::before{background:var(--bordo);border-color:var(--bordo)}
.rand__adauga span{position:relative}

/* pastilele de filtrare */
.pastile{
  display:flex;gap:var(--sp-2);overflow-x:auto;
  padding-block:var(--sp-3);margin-bottom:var(--sp-6);
  scrollbar-width:none;-ms-overflow-style:none;
}
.pastile::-webkit-scrollbar{display:none}
.pastila{
  flex:none;min-height:38px;padding:0 var(--sp-4);
  display:inline-flex;align-items:center;gap:var(--sp-2);
  border:var(--linie);border-radius:99px;background:none;
  font-size:.78rem;letter-spacing:.04em;white-space:nowrap;cursor:pointer;
  color:var(--ink-mut);transition:border-color var(--tranzitie),color var(--tranzitie);
}
.pastila b{font-weight:600;color:var(--ink-slab);font-variant-numeric:tabular-nums}
.pastila:hover,.pastila.e-activa{border-color:var(--bordo);color:var(--ink)}
.pastila.e-activa b{color:var(--bordo-clar)}

/* ---------- carduri de produs (doar cofetarie/torturi) ---------- */
.grila-prod{display:grid;gap:var(--sp-6)}
.prod{min-width:0}
.prod__foto{overflow:hidden;border-radius:var(--radius-lg);position:relative;background:var(--ground-3)}
.prod__foto img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform 600ms cubic-bezier(.2,.7,.3,1)}
.prod:hover .prod__foto img{transform:scale(1.05)}
.prod__jos{
  display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);
  margin-top:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:var(--linie);
}
.prod__nume{font-family:'Newsreader',Georgia,serif;font-size:1.25rem;font-variation-settings:'opsz' 20;min-width:0}
.prod__pret{
  flex:none;font-size:.82rem;font-weight:600;font-variant-numeric:tabular-nums;
  padding:var(--sp-1) var(--sp-3);border-radius:99px;
  background:var(--bordo);color:#FFF6F2;white-space:nowrap;
}
.prod__pret--cerere{background:none;border:var(--linie-tare);color:var(--ink-slab);font-style:italic;font-weight:400}
.prod__desc{font-size:var(--mic);color:var(--ink-mut);margin-top:var(--sp-3)}
.prod__act{margin-top:var(--sp-4)}
.prod__buton{
  min-height:40px;padding:0 var(--sp-4);
  background:none;border:var(--linie);border-radius:99px;
  color:var(--ink-mut);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;
  cursor:pointer;white-space:nowrap;
  transition:border-color var(--tranzitie),color var(--tranzitie),background var(--tranzitie);
}
.prod__buton:hover{border-color:var(--bordo-clar);color:var(--ink)}
.prod__buton[data-in-cos="1"]{background:var(--bordo);border-color:var(--bordo);color:#FFF6F2}

/* ---------- cap de pagina interioara (doua coloane) ---------- */
.cap-pagina{padding-block:var(--sp-8) var(--sp-10);border-bottom:var(--linie)}
.cap-pagina__grila{display:grid;gap:var(--sp-6)}
.cap-pagina h1{margin-block:var(--sp-3) var(--sp-4)}
.cap-pagina p{color:var(--ink-mut);max-width:50ch}
.cap-pagina__foto{overflow:hidden;border-radius:var(--radius-lg);position:relative}
.cap-pagina__foto img{width:100%;aspect-ratio:4/3;object-fit:cover}

/* ---------- benzi de continut ---------- */
.duo{display:grid;gap:var(--sp-8)}
.duo__foto{overflow:hidden;border-radius:var(--radius-lg);position:relative}
.duo__foto img{width:100%;aspect-ratio:4/5;object-fit:cover}
.duo__text p+p{margin-top:var(--sp-4)}
.duo__text p{color:var(--ink-mut)}
.duo__text h2{color:var(--ink)}

.citat{
  font-family:'Newsreader',Georgia,serif;font-size:clamp(1.35rem,1rem + 1.7vw,2rem);
  font-variation-settings:'opsz' 36;line-height:1.25;font-style:italic;
  max-width:24ch;
}
.citat__sursa{
  display:block;font-family:'Instrument Sans',sans-serif;font-style:normal;
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-slab);margin-top:var(--sp-5);
}

/* cronologie — pagina despre */
.crono{list-style:none;margin-top:var(--sp-8)}
.crono li{
  display:grid;grid-template-columns:auto 1fr;gap:var(--sp-4);
  padding-block:var(--sp-5);border-top:var(--linie);
}
.crono b{
  font-family:'Newsreader',Georgia,serif;font-weight:400;
  font-size:1.6rem;font-variation-settings:'opsz' 28;
  color:var(--bordo-clar);line-height:1;font-variant-numeric:tabular-nums;
}
.crono span{color:var(--ink-mut);font-size:var(--mic)}

/* ---------- locatii ---------- */
.locatii{display:grid;gap:var(--sp-5);margin-top:var(--sp-8)}
.loc{
  padding:var(--sp-5);border:var(--linie);border-radius:var(--radius-lg);
  background:var(--ground-2);min-width:0;
}
.loc h3{font-size:1.2rem;font-variation-settings:'opsz' 20}
.loc__adr{color:var(--ink-mut);font-size:var(--mic);margin-top:var(--sp-2)}
.loc__tel{
  display:inline-flex;align-items:center;min-height:44px;margin-top:var(--sp-3);
  font-weight:600;letter-spacing:.02em;color:var(--ink);
  border-bottom:1px solid var(--bordo);
}
.loc__an{
  font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-slab);
}

/* ---------- formulare ---------- */
.form{margin-top:var(--sp-8);max-width:640px}
.form__bloc{margin-bottom:var(--sp-8)}
.form__bloc h3{margin-bottom:var(--sp-5);font-size:1.3rem}
.camp{display:block;margin-bottom:var(--sp-5)}
.camp>span{
  display:block;font-size:var(--mic);color:var(--ink-mut);margin-bottom:var(--sp-2);
}
.camp>span i{font-style:normal;color:var(--bordo-clar)}
.camp input,.camp select,.camp textarea{
  width:100%;min-height:48px;padding:var(--sp-3) var(--sp-4);
  background:var(--ground-2);border:var(--linie-tare);border-radius:var(--radius);
  font-size:16px;
  transition:border-color var(--tranzitie);
}
.camp textarea{min-height:104px;resize:vertical;line-height:1.5}
.camp input:focus,.camp select:focus,.camp textarea:focus{border-color:var(--bordo-clar)}
.camp__eroare{
  display:block;font-size:var(--mic);color:var(--bordo-clar);margin-top:var(--sp-2);
}
.camp.e-gresit input,.camp.e-gresit select,.camp.e-gresit textarea{border-color:var(--bordo-clar)}

.optiuni{display:grid;gap:var(--sp-3)}
.optiune{
  display:flex;align-items:center;gap:var(--sp-3);
  min-height:52px;padding:var(--sp-3) var(--sp-4);
  border:var(--linie-tare);border-radius:var(--radius);cursor:pointer;
  background:var(--ground-2);transition:border-color var(--tranzitie);
}
.optiune input{accent-color:var(--bordo-clar);width:18px;height:18px;flex:none}
.optiune:has(input:checked){border-color:var(--bordo);background:var(--ground-3)}
.optiune small{display:block;color:var(--ink-slab);font-size:.76rem}

.gdpr{display:flex;gap:var(--sp-3);align-items:flex-start;font-size:var(--mic);color:var(--ink-mut)}
.gdpr input{margin-top:3px;accent-color:var(--bordo-clar);width:18px;height:18px;flex:none}

/* ---------- cos / checkout ---------- */
.cos-nr{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;height:20px;padding:0 5px;border-radius:99px;
  background:var(--bordo);color:#FFF6F2;
  font-size:.68rem;font-weight:600;font-variant-numeric:tabular-nums;
}
.cos-lista{list-style:none;margin-top:var(--sp-6)}
.cos-lista li{
  display:grid;grid-template-columns:1fr auto;gap:var(--sp-2) var(--sp-4);
  align-items:center;padding-block:var(--sp-4);border-bottom:var(--linie);
}
.cos-lista__nume{font-weight:600;min-width:0}
.cos-lista__pret{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
.cant{display:flex;align-items:center;gap:var(--sp-1);grid-column:1/-1}
.cant button{
  width:44px;height:44px;flex:none;
  background:none;border:var(--linie-tare);border-radius:var(--radius);
  cursor:pointer;font-size:1.1rem;line-height:1;
}
.cant button:hover{border-color:var(--bordo-clar)}
.cant output{min-width:32px;text-align:center;font-variant-numeric:tabular-nums;font-weight:600}
.cant .cant__scoate{margin-left:auto;width:auto;height:44px;padding:0 var(--sp-4);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-slab)}

.sumar{
  margin-top:var(--sp-8);padding:var(--sp-5);
  border:var(--linie-tare);border-radius:var(--radius-lg);background:var(--ground-2);
}
.sumar__rand{display:flex;justify-content:space-between;gap:var(--sp-4);padding-block:var(--sp-2);color:var(--ink-mut);font-size:var(--mic)}
.sumar__total{
  display:flex;justify-content:space-between;gap:var(--sp-4);align-items:baseline;
  margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:var(--linie-tare);
}
.sumar__total b{font-family:'Newsreader',Georgia,serif;font-size:1.9rem;font-variation-settings:'opsz' 32;font-weight:400;font-variant-numeric:tabular-nums}

.gata{text-align:center;padding-block:var(--sp-10)}
.gata__bulina{
  width:56px;height:56px;margin:0 auto var(--sp-5);
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;background:var(--bordo);color:#FFF6F2;font-size:1.5rem;
}
.gata__recap{
  text-align:left;margin:var(--sp-6) auto;max-width:520px;padding:var(--sp-5);
  border:var(--linie);border-radius:var(--radius-lg);background:var(--ground-2);
  font-size:var(--mic);white-space:pre-line;color:var(--ink-mut);
}
.gata__act{display:flex;flex-direction:column;gap:var(--sp-3);max-width:420px;margin-inline:auto}

/* ---------- galerie orizontala ---------- */
.galerie{position:relative;margin-top:var(--sp-8)}
.galerie__pista{
  display:flex;gap:var(--sp-4);overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--sp-4);
}
.galerie__pista::-webkit-scrollbar{display:none}
.galerie__pista figure{flex:none;width:78%;max-width:340px;scroll-snap-align:start;min-width:0}
.galerie__pista img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius-lg)}
.galerie__pista figcaption{font-size:var(--mic);color:var(--ink-mut);margin-top:var(--sp-3)}
.galerie__bara{height:2px;background:rgb(242 235 228 / .12);border-radius:2px;overflow:hidden;position:relative}
.galerie__bara i{display:block;height:100%;background:var(--bordo);border-radius:2px;transition:transform 120ms linear;transform-origin:left}

/* ---------- blocul de comanda ---------- */
.chemare{position:relative;overflow:hidden;border-radius:var(--radius-lg);background:var(--ground-2)}
.chemare__lamele{display:block;position:absolute;inset:0 0 auto;height:10px}
.chemare__in{padding:var(--sp-10) var(--sp-5) var(--sp-8)}
.chemare h2{max-width:16ch}
.chemare p{color:var(--ink-mut);margin-top:var(--sp-4);max-width:46ch}
.chemare__act{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-6)}

/* ---------- subsol ---------- */
.subsol{border-top:var(--linie);padding-block:var(--sp-12) var(--sp-8);margin-top:var(--sectiune)}
.subsol__grila{display:grid;gap:var(--sp-8)}
.subsol__sigla{
  display:block;width:104px;height:82px;
  background-color:var(--ink);
  -webkit-mask:url('sigla.svg') no-repeat center/contain;
  mask:url('sigla.svg') no-repeat center/contain;
}
.subsol h4{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-slab);margin-bottom:var(--sp-4);font-family:'Instrument Sans',sans-serif}
.subsol ul{list-style:none}
.subsol li{margin-bottom:var(--sp-2)}
.subsol li a{display:inline-flex;min-height:32px;align-items:center;color:var(--ink-mut)}
.subsol li a:hover{color:var(--ink)}
.subsol__jos{
  margin-top:var(--sp-10);padding-top:var(--sp-5);border-top:var(--linie);
  font-size:.74rem;color:var(--ink-slab);
  display:flex;flex-direction:column;gap:var(--sp-2);
}
.subsol__demo{color:var(--bordo-clar)}

/* ---------- gestul unic: filetul care se trage ---------- */
html.js .rand::after{transform:scaleX(0);transition:transform 240ms cubic-bezier(.2,.7,.3,1)}
html.js .rand.e-vazut::after{transform:scaleX(1)}

@keyframes urca{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:translateY(0)}
}
html.js .apare{opacity:0}
html.js .apare.e-vazut{animation:urca 520ms cubic-bezier(.2,.7,.3,1) forwards}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  html.js .rand::after{transform:scaleX(1)}
  html.js .apare{opacity:1}
}

/* =========================================================
   Carduri de meniu — poza + descrierea produsului, ca pe site-ul lor
   Bordura care se colorează la hover și stepper-ul de cantitate
   sunt preluate din betty-com-demo, adaptate la fondul închis.
   ========================================================= */
.grila-card{display:grid;gap:var(--sp-4);grid-template-columns:1fr}
.card{
  display:flex;flex-direction:column;min-width:0;
  background:var(--ground-3);
  border:1px solid rgb(242 235 228 / .1);
  border-radius:var(--radius-lg);overflow:hidden;position:relative;
  transition:border-color var(--tranzitie),box-shadow var(--tranzitie);
}
.card:hover{border-color:var(--bordo);box-shadow:var(--umbra)}
.card__foto{position:relative;overflow:hidden;background:var(--ground-2)}
.card__foto img{
  width:100%;aspect-ratio:1/1;object-fit:cover;
  transition:transform 600ms cubic-bezier(.2,1,.3,1);
}
.card:hover .card__foto img{transform:scale(1.06)}
.card__corp{padding:var(--sp-4);display:flex;flex-direction:column;flex:1;gap:var(--sp-2)}
.card__nume{
  font-family:'Instrument Sans',sans-serif;font-size:.95rem;font-weight:600;
  line-height:1.3;letter-spacing:0;
}
.card__desc{
  font-size:.78rem;color:var(--ink-mut);line-height:1.45;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.card__jos{
  display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);
  margin-top:auto;padding-top:var(--sp-3);
}
.card__pret{
  font-family:'Newsreader',Georgia,serif;font-size:1.35rem;
  font-variation-settings:'opsz' 20;font-variant-numeric:tabular-nums;white-space:nowrap;
}
.card__pret small{
  font-family:'Instrument Sans',sans-serif;font-size:.66rem;font-weight:600;
  text-transform:uppercase;color:var(--ink-slab);letter-spacing:.06em;
}
.card__pret em{font-style:italic;font-size:1rem;color:var(--ink-slab)}
.card__act{flex:none}
.card__adauga{
  min-height:38px;padding:0 var(--sp-4);
  background:var(--ink);color:var(--ground);border:0;border-radius:99px;
  font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  cursor:pointer;white-space:nowrap;transition:background var(--tranzitie),color var(--tranzitie);
}
.card__adauga:hover{background:var(--bordo);color:#FFF6F2}

/* stepper — înlocuiește butonul odată ce produsul e în coș */
.pas{
  display:flex;align-items:center;
  border:1px solid var(--bordo);border-radius:99px;overflow:hidden;
}
.pas button{
  width:38px;height:38px;flex:none;background:none;border:0;cursor:pointer;
  font-size:1.05rem;line-height:1;color:var(--ink);
  transition:background var(--tranzitie);
}
.pas button:hover{background:var(--bordo)}
.pas output{
  min-width:26px;text-align:center;font-size:.85rem;font-weight:600;
  font-variant-numeric:tabular-nums;
}
.cat-grup__restul{
  margin:var(--sp-8) 0 var(--sp-2);
  font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-slab);
}

/* =========================================================
   Granulație fină peste tot — textura preluată din betty-com-demo,
   cu blend potrivit pentru fond închis (soft-light, nu multiply)
   ========================================================= */
.granulatie{
  position:fixed;inset:0;z-index:9998;pointer-events:none;
  opacity:.055;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (prefers-reduced-motion:reduce){.granulatie{display:none}}

/* linia de progres a cronologiei — din betty-com-demo */
.crono{position:relative}
.crono__linie{
  position:absolute;left:0;top:0;bottom:0;width:2px;
  background:rgb(242 235 228 / .1);
}
.crono__linie i{display:block;width:100%;height:0;background:var(--bordo-clar)}


/* =========================================================
   Peretele de torturi — arhiva lor, nu o galerie.
   252 de miniaturi cap la cap, în spatele formularului de ofertă.
   Densitatea e argumentul: nu poți falsifica atâtea torturi.
   ========================================================= */
.perete-sect{position:relative;overflow:hidden;isolation:isolate}
.perete{position:absolute;inset:0;z-index:-1;pointer-events:none}
.perete__grila{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(54px,1fr));
  grid-auto-rows:1fr;
  gap:0;height:100%;overflow:hidden;
  filter:saturate(.8);
}
.perete__grila img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.perete__voal{
  position:absolute;inset:0;
  background:
    linear-gradient(to bottom,
      var(--ground) 0%,
      color-mix(in srgb, var(--ground) 72%, transparent) 14%,
      color-mix(in srgb, var(--ground) 66%, transparent) 45%,
      color-mix(in srgb, var(--ground) 80%, transparent) 78%,
      var(--ground) 100%);
}
.perete__peste{position:relative}
.perete-sect .form{
  margin-inline:auto;
  background:color-mix(in srgb, var(--ground) 94%, transparent);
  border:var(--linie-tare);border-radius:var(--radius-lg);
  padding:var(--sp-6);
  box-shadow:var(--umbra);
}
.perete-sect .sectiune__cap{
  text-align:center;position:relative;
  padding:var(--sp-8) var(--sp-5);
}
.perete-sect .sectiune__cap::before{
  content:'';position:absolute;inset:-10% -6%;z-index:-1;
  background:radial-gradient(ellipse at center,
    var(--ground) 0%,
    color-mix(in srgb, var(--ground) 88%, transparent) 55%,
    transparent 100%);
}
.perete-sect .sectiune__cap > *{position:relative}
.perete-sect .sectiune__cap p{margin-inline:auto}
.perete-sect .eticheta::after{display:none}
.perete-sect .eticheta{justify-content:center}

@media (min-width:900px){
  .perete__grila{grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}
  .perete-sect .form{padding:var(--sp-10)}
}


/* deschiderea paginii „Despre" — anul, uriaș, în locul capului standard */
.deschidere-an{padding-block:var(--sp-10) var(--sp-8)}
.deschidere-an__nr{
  font-family:'Newsreader',Georgia,serif;font-weight:400;
  font-size:clamp(5rem,3rem + 16vw,15rem);line-height:.82;
  font-variation-settings:'opsz' 72;font-variant-numeric:lining-nums;
  letter-spacing:-.04em;color:var(--bordo-clar);
}
.deschidere-an__titlu{
  font-size:clamp(1.4rem,1.05rem + 1.7vw,2.2rem);
  max-width:24ch;margin-top:var(--sp-6);color:var(--ink);
}
@media (min-width:900px){
  .deschidere-an{padding-block:var(--sp-12) var(--sp-10)}
  .deschidere-an .container{display:grid;grid-template-columns:auto 1fr;
    gap:var(--sp-12);align-items:end}
  .deschidere-an__titlu{margin-top:0;padding-bottom:var(--sp-4)}
}

/* =========================================================
   de la 640 in sus
   ========================================================= */
@media (min-width:640px){
  .hero__act,.chemare__act,.nav__actiuni,.gata__act{flex-direction:row;flex-wrap:wrap}
  /* pe tabletă poza verticală ar ajunge peste 1100px înălțime — o limităm */
  .hero__foto{max-width:440px}
  .hero__fapte{grid-template-columns:repeat(4,1fr)}
  .grila-prod{grid-template-columns:repeat(2,1fr)}
  .grila-card{grid-template-columns:repeat(2,1fr);gap:var(--sp-5)}
  .locatii{grid-template-columns:repeat(2,1fr)}
  .galerie__pista figure{width:48%}
  .chemare__in{padding:var(--sp-12) var(--sp-10) var(--sp-10)}
  .subsol__grila{grid-template-columns:repeat(2,1fr)}
  .subsol__jos{flex-direction:row;justify-content:space-between}
  .rand{column-gap:var(--sp-6)}
  .cos-lista li{grid-template-columns:1fr auto auto;column-gap:var(--sp-6)}
  .cant{grid-column:auto}
}

/* =========================================================
   de la 900 in sus
   ========================================================= */
@media (min-width:900px){
  .antet__bara{min-height:70px}
  .marca__semn{width:136px;height:31px}
  .nav-buton{display:none}
  .nav{
    position:static;background:none;border:0;box-shadow:none;
    padding:0;max-height:none;overflow:visible;
    display:flex;align-items:center;gap:var(--sp-6);
  }
  .nav__lista{flex-direction:row;align-items:center;gap:var(--sp-5)}
  .nav__lista a{
    min-height:44px;border-bottom:0;padding-block:0;
    font-family:'Instrument Sans',sans-serif;font-size:.82rem;font-weight:600;
    letter-spacing:.05em;text-transform:uppercase;color:var(--ink);
  }
  .nav__lista a:hover{color:var(--bordo-clar)}
  .nav__lista a{position:relative}
  .nav__lista a[aria-current="page"]{color:var(--ink)}
  .nav__lista a[aria-current="page"]::after{
    content:'';display:block;position:absolute;left:0;right:0;bottom:9px;
    height:2px;background:var(--bordo-clar);
  }
  .nav__actiuni{flex-direction:row;flex-wrap:nowrap;margin-top:0;gap:var(--sp-3)}
  .nav__actiuni .btn{min-height:40px;padding-inline:var(--sp-4)}
  .antet__bara{gap:var(--sp-6)}
  .antet__dreapta{display:flex;align-items:center;gap:var(--sp-6)}

  .hero{padding-block:var(--sp-12) var(--sp-16)}
  .hero__grila{
    grid-template-columns:1fr .82fr;gap:var(--sp-16);
    align-items:center;
  }
  .hero__foto{max-width:none}
  .grila-prod{grid-template-columns:repeat(3,1fr)}
  .grila-card{grid-template-columns:repeat(4,1fr)}
  .cap-pagina__grila{grid-template-columns:1fr .7fr;gap:var(--sp-12);align-items:end}
  .duo{grid-template-columns:1fr 1fr;gap:var(--sp-12);align-items:center}
  .duo--invers .duo__foto{order:2}
  .locatii{grid-template-columns:repeat(3,1fr)}
  .galerie__pista figure{width:31%}
  .subsol__grila{grid-template-columns:1.4fr 1fr 1fr 1fr}
  .catalog--doua{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--sp-16);align-items:start}
}

/* =========================================================
   de la 1240 in sus — abia aici încape și subtitlul mărcii
   ========================================================= */
@media (min-width:1240px){
  .antet__bara{gap:var(--sp-8)}
  .nav{gap:var(--sp-8)}
}

/* =========================================================
   900–1023: meniul de desktop tocmai a apărut și abia încape —
   strânge spațiile, altfel antetul iese cu ~13px din pagină
   ========================================================= */
@media (min-width:900px) and (max-width:1023px){
  .antet__bara{gap:var(--sp-4)}
  .nav{gap:var(--sp-4)}
  .nav__lista{gap:var(--sp-4)}
  .nav__lista a{font-size:.76rem;letter-spacing:.06em}
  .nav__actiuni{gap:var(--sp-2)}
  .nav__actiuni .btn{padding-inline:var(--sp-3);font-size:.74rem;letter-spacing:.05em}
}
