:root{
  --nero:#1A1511; --bg:#0E0B09; --carta:#ECE4D3; --brace:#DA3A24;
  --pistacchio:#9DB94E; --vino:#5A1F2B;
  --carta-dim:rgba(236,228,211,.55);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--bg); color:var(--carta);
  font-family:'Inter',sans-serif; line-height:1.5;
  overflow-x:hidden; -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
.disp{font-family:'Bricolage Grotesque',sans-serif;text-transform:uppercase;font-weight:800;letter-spacing:-.02em;line-height:.9}
.k{color:var(--brace)}
.kick{font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--brace);font-weight:700;display:inline-block}
.kick.dark{color:var(--nero)}

/* GRAIN */
.grain{position:fixed;inset:0;z-index:9;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  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.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* LOADER */
.loader{position:fixed;inset:0;z-index:100;background:var(--bg);display:flex;align-items:center;justify-content:center}
.loader-mark{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(48px,12vw,140px);letter-spacing:-.03em;display:flex}
.loader-mark .lm{opacity:0;transform:translateY(40px)}
.loader-mark .lm.k{color:var(--brace)}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;
  padding:22px clamp(20px,5vw,60px);
  background:linear-gradient(180deg,rgba(14,11,9,.82),rgba(14,11,9,.34) 55%,transparent);
  -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.nav-logo{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--carta)}
.nav-logo .k{color:var(--brace)}
.nav-links{display:flex;align-items:center;gap:clamp(14px,2vw,30px)}
.nav-links a{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--carta);text-transform:lowercase}
.nav-cta{border:1.5px solid var(--carta);border-radius:40px;padding:7px 18px;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.1em}
.nav-cta:hover{background:var(--brace);border-color:var(--brace)}

/* HERO */
.hero{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;padding:0 20px}
.hero-bollo{position:absolute;top:13%;right:5%;width:clamp(74px,9vw,128px);opacity:.92;z-index:4}
.hero-title{position:relative;z-index:1;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;letter-spacing:-.03em;
  font-size:clamp(74px,20vw,280px);line-height:.82}
.hero-title .k{color:var(--brace);display:inline-block}
.hero-payoff{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:600;font-size:clamp(15px,2.6vw,30px);letter-spacing:.18em;margin-top:14px}
.hero-payoff span{color:var(--brace)}
.hero-sub{max-width:540px;color:var(--carta-dim);font-size:clamp(14px,1.4vw,16px);margin-top:26px}
.hero-scroll{position:absolute;bottom:34px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--carta-dim)}

/* MARQUEE */
.marquee{overflow:hidden;background:var(--brace);color:var(--carta);padding:18px 0;white-space:nowrap;border-top:2px solid var(--carta);border-bottom:2px solid var(--carta)}
.marquee-alt{background:var(--carta);color:var(--nero);border-color:var(--nero)}
.marquee-track{display:inline-flex;align-items:center;will-change:transform;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(28px,5vw,64px);letter-spacing:-.01em}
.marquee-track span{padding:0 .35em}
.marquee-track .dot{font-size:.4em;transform:translateY(-.25em);color:var(--carta)}
.marquee-alt .marquee-track .dot{color:var(--brace)}

/* MANIFESTO */
.manifesto{min-height:80svh;display:flex;align-items:center;padding:10svh clamp(20px,6vw,120px)}
.manifesto-text{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;letter-spacing:-.01em;line-height:1.05;font-size:clamp(30px,6.5vw,92px)}
.manifesto-text .w{display:inline-block;opacity:.12}
.manifesto-text .w.red{color:var(--brace)}

/* GESTO */
.gesto{height:80svh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.gesto-words{position:relative;width:100%;text-align:center}
.gesto-words .gw{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);
  font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(60px,18vw,260px);letter-spacing:-.03em;line-height:.85}
.gesto-words .gw[data-i="2"]{color:var(--brace)}

/* FIRME horizontal */
.firme{position:relative}
.firme-pin{height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.firme-head{padding:0 clamp(20px,5vw,60px);margin-bottom:30px}
.firme-head h2{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(40px,8vw,120px);line-height:.9;letter-spacing:-.02em}
.firme-track{display:flex;gap:24px;padding:0 clamp(20px,5vw,60px);will-change:transform}
.firma{flex:0 0 clamp(280px,34vw,460px);height:54svh;border:1.5px solid rgba(236,228,211,.16);border-radius:18px;
  padding:34px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:rgba(236,228,211,.03)}
.firma::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--c,var(--brace))}
.firma-n{font-family:'Bricolage Grotesque';font-weight:800;font-size:20px;color:var(--c,var(--brace))}
.firma h3{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(30px,3.4vw,52px);line-height:.92;letter-spacing:-.02em}
.firma p{color:var(--carta-dim);font-size:14px;margin-top:10px;text-transform:lowercase}
.firma-img{padding:0;border:none}
.firma-img img{width:100%;height:100%;object-fit:cover}
.firma-over{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:34px;background:linear-gradient(transparent,rgba(14,11,9,.85))}
.firma-over h3{color:var(--carta)}
.firma-over h3 em{font-style:normal;font-size:.5em;color:var(--brace);letter-spacing:.08em;text-transform:uppercase;margin-left:8px;vertical-align:middle}
.firma-over p{color:rgba(236,228,211,.8)}

/* SETTIMANA */
.settimana{background:var(--carta);color:var(--nero);min-height:90svh;display:flex;align-items:center;gap:5vw;
  padding:12svh clamp(20px,7vw,120px);flex-wrap:wrap}
.settimana-bollo{flex:0 0 clamp(140px,22vw,300px);width:clamp(140px,22vw,300px)}
.settimana-txt{flex:1;min-width:280px}
.settimana-txt h2{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(40px,7vw,104px);line-height:.9;letter-spacing:-.02em;margin:14px 0 18px}
.settimana-txt h2 em{font-style:normal;color:var(--brace)}
.settimana-txt p{max-width:520px;color:rgba(26,21,17,.7);font-size:clamp(15px,1.5vw,18px)}

/* GALLERY */
.gallery{padding:14svh 0}
.gallery .kick{margin-bottom:26px;padding:0 clamp(20px,5vw,60px)}
.gallery-strip{overflow:hidden;width:100%}
.gallery-track{display:flex;gap:18px;width:max-content;padding:0 clamp(20px,5vw,60px);will-change:transform}
.g{position:relative;flex:0 0 auto;width:clamp(300px,32vw,460px);height:min(60svh,520px);border-radius:16px;overflow:hidden}
.g-port{width:clamp(220px,23vw,330px)}
.g img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.g:hover img{transform:scale(1.06)}
.g figcaption{position:absolute;left:16px;bottom:14px;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:14px;letter-spacing:.04em;background:var(--brace);padding:4px 12px;border-radius:30px}

/* DOVE */
.dove{padding:16svh clamp(20px,6vw,120px)}
.dove-h{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(54px,13vw,200px);line-height:.85;letter-spacing:-.03em}
.dove-h .k-red{color:var(--brace)}
.dove-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:50px 0}
.dove-item p{font-size:16px;margin-top:10px;line-height:1.6}
.dove-item em{font-style:normal;color:var(--carta-dim)}
.dove-item a{border-bottom:2px solid var(--brace);padding-bottom:2px}
.dove-cta{display:inline-block;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(24px,4vw,56px);background:var(--brace);color:var(--carta);padding:14px 34px;border-radius:60px;letter-spacing:-.01em}
[data-ph]{position:relative}

/* FOOTER */
.footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:30px clamp(20px,5vw,60px);
  border-top:1px solid rgba(236,228,211,.12);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--carta-dim)}
.footer strong{color:var(--carta)}

/* MOBILE */
@media(max-width:760px){
  .nav-links a:not(.nav-cta){display:none}
  .hero-bollo{top:11%;right:5%}
  .g{width:78vw;height:52svh}
  .g-port{width:58vw}
  .dove-grid{grid-template-columns:1fr 1fr}
  .firme-track{flex-direction:column;height:auto}
  .firma{flex:none;width:100%;height:auto;min-height:240px}
  .firme-pin{height:auto;padding:14svh 0}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .loader{display:none}
  .manifesto-text .w{opacity:1}
}

/* ============ NAV active ============ */
.nav-links a.is-here{color:var(--brace)}

/* ============ MENU PAGE ============ */
.page-menu{background:var(--bg)}
.menu-hero{padding:20svh clamp(20px,6vw,120px) 6svh}
.menu-title{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(64px,16vw,240px);line-height:.85;letter-spacing:-.03em}
.menu-title .k{color:var(--brace)}
.menu-lead{max-width:560px;color:var(--carta-dim);font-size:clamp(15px,1.6vw,19px);margin-top:20px}
.menu-lead strong{color:var(--carta)}

.m-sec{padding:9svh clamp(20px,6vw,120px)}
.m-sec-alt{background:var(--carta);color:var(--nero)}
.m-sec-head{margin-bottom:34px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.m-sec-head .kick{font-size:clamp(22px,3.4vw,44px);letter-spacing:.12em;line-height:1}
/* view toggle (griglia / lista) */
.m-view{display:inline-flex;gap:4px;background:rgba(236,228,211,.08);border:1px solid rgba(236,228,211,.16);border-radius:999px;padding:4px;flex:0 0 auto}
.m-sec-alt .m-view{background:rgba(26,21,17,.05);border-color:rgba(26,21,17,.14)}
.m-view-btn{font-family:inherit;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--carta-dim);background:none;border:none;padding:9px 17px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s}
.m-sec-alt .m-view-btn{color:rgba(26,21,17,.55)}
.m-view-btn.is-on{background:var(--brace);color:#fff}
/* GRIGLIA — 3 in fila, foto grande */
.m-list.is-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,2.6vw,40px);align-items:start}
.m-list.is-grid .m-row{flex-direction:column;align-items:stretch;gap:14px;padding:0;border-bottom:none}
.m-list.is-grid .m-thumb{width:100%;height:auto;aspect-ratio:4/5;flex:none;border-radius:18px}
.m-list.is-grid .m-body{flex:none}
.m-list.is-grid .m-price{align-self:flex-start;padding-top:2px}
@media(max-width:900px){.m-list.is-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.m-list.is-grid{grid-template-columns:1fr}}
.m-sec-head h2{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(34px,6vw,84px);line-height:.9;letter-spacing:-.02em;margin-top:10px}
.m-list{list-style:none}
.m-row{display:flex;align-items:flex-start;gap:22px;padding:22px 0;border-bottom:1px solid rgba(236,228,211,.14)}
.m-sec-alt .m-row{border-color:rgba(26,21,17,.14)}
.m-row:last-child{border-bottom:none}
.m-n{font-family:'Bricolage Grotesque';font-weight:800;font-size:15px;color:var(--brace);padding-top:10px;min-width:28px}
.m-body{flex:1}
.m-body h3{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(24px,3.2vw,42px);line-height:.95;letter-spacing:-.02em}
.m-body h3 em{font-style:normal;font-size:.5em;color:var(--brace);vertical-align:middle;margin-left:8px;letter-spacing:.06em}
.m-body p{color:var(--carta-dim);font-size:14.5px;margin-top:8px}
.m-sec-alt .m-body p{color:rgba(26,21,17,.62)}
.m-body p strong{color:var(--carta)} .m-sec-alt .m-body p strong{color:var(--nero)}
.m-pair{display:inline-block;margin-top:10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--brace);font-weight:600}
.m-promo{display:inline-block;margin-top:10px;margin-left:10px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--brace);border:1px solid var(--brace);border-radius:30px;padding:4px 11px}
.m-list.is-grid .m-promo{margin-left:0}
.m-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:clamp(20px,2.4vw,30px);padding-top:6px}
.m-sgarro .m-body h3{color:var(--brace)}

.m-cols{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.m-col h4{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:14px;letter-spacing:.1em;color:var(--brace);margin:24px 0 10px}
.m-col h4:first-child{margin-top:0}
.m-d{display:flex;align-items:baseline;gap:10px;padding:7px 0;font-size:15.5px}
.m-d span:first-child{white-space:nowrap}
.m-dots{flex:1;border-bottom:1px dotted rgba(236,228,211,.3);transform:translateY(-4px)}
.m-d span:last-child{font-family:'Bricolage Grotesque';font-weight:700}

.m-formule{padding:11svh clamp(20px,6vw,120px) 8svh;text-align:center}
.formule-grid{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin:30px 0 24px}
.formula{border:1.5px solid rgba(236,228,211,.2);border-radius:20px;padding:38px 46px;min-width:260px}
.formula-hero{background:var(--brace);border:none}
.formula h3{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(28px,4vw,48px);line-height:.9;letter-spacing:-.02em}
.formula p{color:var(--carta-dim);margin:12px 0 16px;font-size:15px}
.formula-hero p{color:rgba(255,255,255,.85)}
.formula-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:clamp(34px,5vw,60px)}
.m-note{color:var(--carta-dim);font-size:12px;letter-spacing:.06em;text-transform:uppercase}

/* LE RISERVE — due slot grandi (18€) in fondo */
.m-riserve{padding:6svh clamp(20px,6vw,120px) 13svh;background:var(--nero)}
.riserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.5vw,36px);margin-top:30px}
.riserva{position:relative;border-radius:24px;overflow:hidden;background:#15110d;display:flex;flex-direction:column}
.riserva-media{position:relative;aspect-ratio:4/3;overflow:hidden}
.riserva-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease}
.riserva:hover .riserva-media img{transform:scale(1.05)}
.riserva-badge{position:absolute;top:18px;left:18px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;background:var(--brace);color:var(--carta);padding:6px 13px;border-radius:30px}
.riserva-price{position:absolute;bottom:18px;right:18px;font-family:'Bricolage Grotesque';font-weight:800;font-size:clamp(26px,3vw,42px);color:var(--carta);background:rgba(14,11,9,.5);backdrop-filter:blur(5px);padding:6px 16px;border-radius:14px}
.riserva-price::before{content:"€ ";font-size:.6em;color:var(--carta-dim)}
.riserva-body{padding:26px clamp(20px,2.4vw,36px) 34px}
.riserva-body h3{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(30px,4vw,58px);line-height:.95;letter-spacing:-.02em}
.riserva-body p{color:var(--carta-dim);font-size:clamp(14px,1.3vw,16px);margin-top:12px;line-height:1.5}
@media(max-width:760px){.riserve-grid{grid-template-columns:1fr}}

/* ============ BOTTEGA / SHOP ============ */
.shop-hero{padding:20svh clamp(20px,6vw,120px) 4svh}
.shop-title{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(60px,14vw,220px);line-height:.85;letter-spacing:-.03em}
.shop-title .k{color:var(--brace)}
.shop-lead{max-width:560px;color:var(--carta-dim);font-size:clamp(15px,1.6vw,19px);margin-top:18px}
.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:4svh clamp(20px,6vw,120px) 8svh}
.shop-card{border:1.5px solid rgba(236,228,211,.16);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;background:rgba(236,228,211,.03);min-height:440px}
.shop-card.soon{opacity:.55}
.shop-visual{height:230px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.shop-visual img{width:100%;height:100%;object-fit:cover}
.shop-visual.v-beer{background:linear-gradient(160deg,#241a12,#0E0B09)}
.shop-visual.v-pesto{background:linear-gradient(160deg,#9DB94E,#5d7233)}
.shop-visual.v-soon{background:rgba(236,228,211,.05)}
.shop-bigk{font-family:'Bricolage Grotesque';font-weight:800;font-size:120px;color:var(--brace);line-height:1}
.shop-visual.v-pesto .shop-bigk{color:var(--nero)}
.shop-tag{position:absolute;top:14px;left:14px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;background:var(--brace);color:var(--carta);padding:5px 12px;border-radius:30px}
.shop-info{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.shop-info h3{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(24px,2.6vw,34px);line-height:.95;letter-spacing:-.02em}
.shop-info p{color:var(--carta-dim);font-size:14px;margin:10px 0 18px;flex:1}
.shop-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.shop-foot .shop-add{font-size:12px;padding:11px 16px;white-space:nowrap}
.shop-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:26px}
.shop-add{border:none;background:var(--brace);color:var(--carta);font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:13px;letter-spacing:.06em;padding:11px 20px;border-radius:40px;cursor:pointer;transition:transform .2s}
.shop-add:hover{transform:translateY(-2px)}
.shop-note{text-align:center;color:var(--carta-dim);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:0 20px 10svh}

/* mini cart */
.cart-fab{position:fixed;right:22px;bottom:22px;z-index:40;background:var(--carta);color:var(--nero);border:none;border-radius:50px;
  font-family:'Bricolage Grotesque';font-weight:800;text-transform:uppercase;font-size:14px;letter-spacing:.04em;padding:14px 22px;cursor:pointer;
  box-shadow:0 10px 30px rgba(0,0,0,.4);display:flex;gap:10px;align-items:center;transform:translateY(120px);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.cart-fab.show{transform:translateY(0)}
.cart-fab .cart-n{background:var(--brace);color:var(--carta);border-radius:30px;min-width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;padding:0 6px}

@media(max-width:900px){.shop-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){
  .m-cols{grid-template-columns:1fr;gap:24px}
  .m-row{flex-wrap:wrap}
  .shop-grid{grid-template-columns:1fr}
}

/* ============ LOCALE / ABOUT PAGE ============ */
.about-story{padding:11svh clamp(20px,6vw,120px)}
.about-big{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(40px,9vw,140px);line-height:.85;letter-spacing:-.03em;margin-bottom:50px}
.about-big .k{color:var(--brace)}
.about-cols{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:1000px}
.about-cols p{font-size:clamp(16px,1.7vw,20px);line-height:1.6;color:var(--carta-dim)}
.about-cols strong{color:var(--carta)}

.about-img{position:relative;margin:4svh clamp(20px,5vw,60px);border-radius:22px;overflow:hidden;height:72svh}
.about-img img{width:100%;height:100%;object-fit:cover}
.about-img-cap{position:absolute;left:0;right:0;bottom:0;padding:40px clamp(20px,4vw,50px);background:linear-gradient(transparent,rgba(14,11,9,.9))}
.about-img-cap h2{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(34px,6vw,84px);line-height:.9;letter-spacing:-.02em}
.about-img-cap p{max-width:520px;color:var(--carta-dim);margin-top:10px;font-size:15px}

.about-contatti{padding:12svh clamp(20px,6vw,120px)}
.about-map{margin:14px 0 40px;border-radius:20px;overflow:hidden;border:1.5px solid rgba(236,228,211,.16);height:50svh}
.about-map iframe{width:100%;height:100%;border:0;filter:invert(.9) hue-rotate(180deg) brightness(.95) contrast(.9)}

@media(max-width:760px){
  .about-cols{grid-template-columns:1fr;gap:24px}
  .about-img{height:54svh}
}

/* ============ HOME tweaks ============ */
.firme-head{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}
.firme-all{font-size:13px;font-weight:600;color:var(--brace);border-bottom:2px solid var(--brace);padding-bottom:2px;margin-bottom:10px}
.dove-lead{color:var(--carta-dim);font-size:clamp(15px,1.6vw,19px);max-width:560px;margin-top:24px}
.dove-ctas{display:flex;gap:18px;flex-wrap:wrap;margin-top:40px}
.dove-ctas a{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(18px,2.4vw,30px);
  border:1.5px solid rgba(236,228,211,.3);border-radius:60px;padding:14px 30px;letter-spacing:-.01em;transition:transform .2s,background .2s,color .2s}
.dove-ctas a:hover{transform:translateY(-3px)}
.dove-ctas a.primary{background:var(--brace);border-color:var(--brace)}
.dove-ctas a:not(.primary):hover{background:var(--carta);color:var(--nero);border-color:var(--carta)}

/* ============ HERO cta/meta ============ */
.hero-cta{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap;justify-content:center}
.btn-fill,.btn-out{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(14px,1.5vw,17px);letter-spacing:.01em;
  padding:14px 30px;border-radius:50px;transition:transform .2s,background .2s,color .2s}
.btn-fill{background:var(--brace);color:var(--carta)}
.btn-out{border:1.5px solid rgba(236,228,211,.4);color:var(--carta)}
.btn-fill:hover{transform:translateY(-3px)}
.btn-out:hover{transform:translateY(-3px);background:var(--carta);color:var(--nero);border-color:var(--carta)}
.hero-meta{display:flex;gap:14px;align-items:center;margin-top:26px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--carta-dim);flex-wrap:wrap;justify-content:center}
.hero-meta i{color:var(--brace);font-style:normal}

/* ============ TRE PILASTRI ============ */
.pilastri{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:12svh clamp(20px,5vw,60px)}
.pil{position:relative}
.pil-img{height:42svh;border-radius:18px;overflow:hidden;margin-bottom:22px}
.pil-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.pil:hover .pil-img img{transform:scale(1.06)}
.pil-n{font-family:'Bricolage Grotesque';font-weight:800;font-size:14px;color:var(--brace)}
.pil h3{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(30px,3.6vw,54px);line-height:.9;letter-spacing:-.02em;margin:6px 0 10px}
.pil p{color:var(--carta-dim);font-size:15px;max-width:340px}

/* ============ APERITIVO (cinematic) ============ */
.aperitivo{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden}
.aperitivo-bg{position:absolute;inset:0;width:100%;height:120%;object-fit:cover;will-change:transform;filter:brightness(.55) saturate(1.1)}
.aperitivo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,11,9,.92),rgba(14,11,9,.35))}
.aperitivo-in{position:relative;z-index:2;padding:0 clamp(20px,7vw,120px);max-width:760px}
.aperitivo-h{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(64px,13vw,190px);line-height:.82;letter-spacing:-.03em;margin:16px 0 22px}
.aperitivo-h em{font-style:normal;color:var(--brace)}
.aperitivo-in p{color:rgba(236,228,211,.82);font-size:clamp(16px,1.7vw,20px);max-width:520px;margin-bottom:30px;line-height:1.6}

/* ============ BOTTEGA TEASER ============ */
.bott-teaser{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:14svh clamp(20px,6vw,120px);background:var(--carta);color:var(--nero)}
.bt-txt h2{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(44px,7vw,100px);line-height:.88;letter-spacing:-.02em;margin:14px 0 18px}
.bt-txt .kick{color:var(--brace)}
.bt-txt p{color:rgba(26,21,17,.7);font-size:clamp(15px,1.5vw,18px);max-width:440px;margin-bottom:26px}
.bt-txt .btn-fill{display:inline-block}
.bt-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.bt-card{position:relative;border-radius:18px;overflow:hidden;height:42svh;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;transition:transform .3s}
.bt-card:hover{transform:translateY(-6px)}
.bt-card.v-beer{background:linear-gradient(160deg,#241a12,#0E0B09)}
.bt-card.v-pesto{background:linear-gradient(160deg,#9DB94E,#5d7233)}
.bt-k{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);font-family:'Bricolage Grotesque';font-weight:800;font-size:130px;color:var(--brace);line-height:1}
.v-pesto .bt-k{color:var(--nero)}
.bt-tag{position:absolute;top:16px;left:16px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;background:var(--brace);color:var(--carta);padding:5px 12px;border-radius:30px;z-index:2}
.bt-name{position:relative;z-index:2;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(18px,1.8vw,24px);color:var(--carta)}
.v-pesto .bt-name{color:var(--nero)}

@media(max-width:900px){
  .pilastri{grid-template-columns:1fr;gap:30px}
  .pil-img{height:38svh}
  .bott-teaser{grid-template-columns:1fr;gap:30px}
}
@media(max-width:760px){
  .bt-cards{grid-template-columns:1fr 1fr}
  .bt-card{height:30svh}
  .bt-k{font-size:90px}
}

/* ============ FIRME con foto ============ */
.firma-img{padding:0;border:1.5px solid rgba(236,228,211,.12)}
.firma-num{position:absolute;top:20px;left:20px;z-index:3;font-family:'Bricolage Grotesque';font-weight:800;font-size:14px;
  background:rgba(14,11,9,.6);backdrop-filter:blur(4px);color:var(--carta);padding:6px 12px;border-radius:30px;letter-spacing:.04em}
.firma-num.sgarro{background:var(--brace)}
/* bottega teaser cards con immagine */
.bt-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bt-card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(14,11,9,.85))}
.bt-card .bt-tag,.bt-card .bt-name{position:relative;z-index:2}
.bt-card .bt-name{color:var(--carta)}

/* ============ MENU thumbnails ============ */
.m-row{align-items:center}
.m-thumb{width:84px;height:84px;border-radius:14px;object-fit:cover;flex:0 0 84px;border:1px solid rgba(236,228,211,.12)}
.m-sec-alt .m-thumb{border-color:rgba(26,21,17,.12)}
@media(max-width:760px){.m-thumb{width:64px;height:64px;flex:0 0 64px}}

/* ============ ACCAPO / line-break control ============ */
.manifesto-text .ln{display:block}
/* niente a-capo brutti: bilancia i titoli, evita orfani nei paragrafi */
h1,h2,h3,.about-big,.aperitivo-h,.dove-h,.manifesto-text,.firme-head h2,.m-sec-head h2{text-wrap:balance}
.hero-sub,.menu-lead,.shop-lead,.dove-lead,.about-cols p,.pil p,.aperitivo-in p,.settimana-txt p,.bt-txt p,.m-body p,.shop-info p{text-wrap:pretty}

.nowrap{white-space:nowrap}

/* ============ PRODUCT PAGE (PDP) ============ */
.pdp{padding:120px clamp(20px,5vw,60px) 0}
.pdp-crumb{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--carta-dim);margin-bottom:34px}
.pdp-crumb a{color:var(--carta-dim)}
.pdp-crumb a:hover{color:var(--brace)}
.pdp-crumb i{font-style:normal;margin:0 8px;opacity:.5}
.pdp-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,80px);align-items:start}
.pdp-visual{position:relative;border-radius:22px;overflow:hidden;background:#15110d}
.pdp-visual img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover}
.pdp-tag{position:absolute;top:18px;left:18px;z-index:2;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:12px;letter-spacing:.05em;background:var(--brace);color:var(--carta);padding:5px 14px;border-radius:30px}
.pdp-info{padding-top:8px}
.pdp-name{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(34px,5vw,68px);line-height:.92;letter-spacing:-.02em}
.pdp-lead{font-size:clamp(17px,2vw,21px);color:var(--carta);margin:18px 0 14px;font-weight:500}
.pdp-desc{font-size:15.5px;line-height:1.7;color:var(--carta-dim);max-width:46ch}
.pdp-variants{margin:26px 0 4px}
.pdp-variants .kick{display:block;margin-bottom:12px}
.pdp-variant-row{display:flex;flex-wrap:wrap;gap:10px}
.pdp-variant{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:13px;letter-spacing:.03em;color:var(--carta);background:transparent;border:1.5px solid rgba(236,228,211,.28);padding:9px 16px;border-radius:40px;cursor:pointer;transition:all .25s}
.pdp-variant:hover{border-color:var(--carta)}
.pdp-variant.is-active{background:var(--brace);border-color:var(--brace)}
.pdp-dettagli{list-style:none;margin:28px 0 0;padding:22px 0 0;border-top:1px solid rgba(236,228,211,.12);display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}
.pdp-dettagli li{position:relative;padding-left:18px;font-size:14px;color:var(--carta-dim);line-height:1.5}
.pdp-dettagli li::before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:50%;background:var(--brace)}
.pdp-buy{display:flex;align-items:center;gap:22px;margin-top:32px}
.pdp-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:clamp(30px,4vw,46px)}
.pdp-price::before{content:"€ ";font-size:.6em;color:var(--carta-dim)}
.pdp-add{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:15px;letter-spacing:.03em;color:var(--carta);background:var(--brace);border:none;padding:15px 30px;border-radius:50px;cursor:pointer}
.pdp-add:hover{filter:brightness(1.08)}
.pdp-note{font-size:12px;color:var(--carta-dim);margin-top:16px;letter-spacing:.02em}

/* UPSELL — aggiungi al tuo */
.pdp-upsell{margin-top:28px;padding-top:22px;border-top:1px solid rgba(236,228,211,.12)}
.pdp-upsell .kick{display:block;margin-bottom:14px}
.pdp-upsell-row{display:flex;flex-direction:column;gap:10px}
.pdp-up{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(236,228,211,.14);border-radius:16px;background:rgba(236,228,211,.03);transition:border-color .25s,background .25s}
.pdp-up:hover{border-color:rgba(236,228,211,.32);background:rgba(236,228,211,.05)}
.pdp-up-link{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-decoration:none;color:inherit}
.pdp-up-link img{width:54px;height:54px;border-radius:11px;object-fit:cover;flex:0 0 54px}
.pdp-up-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.pdp-up-info b{font-family:'Bricolage Grotesque';font-weight:700;font-size:15px;line-height:1.1;color:var(--carta)}
.pdp-up-info span{font-size:12.5px;color:var(--carta-dim)}
.pdp-up-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:15px;color:var(--carta);white-space:nowrap}
.pdp-up-add{flex:0 0 auto;width:38px;height:38px;border-radius:50%;border:none;background:var(--brace);color:#fff;font-family:'Bricolage Grotesque';font-weight:800;font-size:20px;line-height:1;cursor:pointer;transition:transform .2s,filter .2s}
.pdp-up-add:hover{filter:brightness(1.1)}
.pdp-up-add.added{background:#2e7d4f}

.pdp-related{padding:14svh clamp(20px,5vw,60px) 60px}
.pdp-related-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:26px}
.pdp-rel{display:block;border-radius:16px;overflow:hidden;background:#15110d;transition:transform .4s}
.pdp-rel:hover{transform:translateY(-5px)}
.pdp-rel-img{aspect-ratio:1/1;overflow:hidden}
.pdp-rel-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pdp-rel:hover .pdp-rel-img img{transform:scale(1.07)}
.pdp-rel-info{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px}
.pdp-rel-info span{font-size:13px;color:var(--carta);line-height:1.2}
.pdp-rel-info b{font-family:'Bricolage Grotesque';font-weight:800;font-size:15px;white-space:nowrap}
.pdp-rel-info b::before{content:"€";font-size:.7em;color:var(--carta-dim);margin-right:2px}

@media(max-width:860px){
  .pdp-grid{grid-template-columns:1fr;gap:26px}
  .pdp-related-row{grid-template-columns:repeat(2,1fr)}
  .pdp-dettagli{grid-template-columns:1fr}
}

/* shop card links */
a.shop-visual{display:block}
.shop-info h3 a{transition:color .25s}
.shop-info h3 a:hover{color:var(--brace)}

/* menu section titles back to base; kick labels enlarged (see .m-sec-head .kick) */
.m-sec .m-sec-head h2{font-size:clamp(40px,7vw,96px);line-height:.88}

/* calici: doppio prezzo calice / bottiglia */
.m-d .m-cal,.m-d .m-bot{flex:0 0 auto;width:54px;text-align:right;font-family:'Bricolage Grotesque';font-weight:700}
.m-d .m-cal{margin-right:6px}
.m-d.m-dhead{padding:2px 0 0}
.m-d.m-dhead .m-dots{border:none}
.m-d.m-dhead .m-cal,.m-d.m-dhead .m-bot{font-family:'Inter';font-weight:600;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--carta-dim)}
.m-d span em{font-style:normal;font-size:11px;color:var(--carta-dim);margin-left:4px}
.m-hint{font-size:12px;color:var(--carta-dim);margin:8px 0 0;font-style:italic}

/* ============ LIGHTBOX SCHEDA PIATTO ============ */
.m-thumb{cursor:pointer}
.lb{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:5vh 5vw;opacity:0;pointer-events:none}
.lb.open{pointer-events:auto}
.lb-backdrop{position:absolute;inset:0;background:rgba(8,6,5,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.lb-card{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr 1fr;max-width:1000px;width:100%;max-height:88vh;
  background:var(--nero);border-radius:22px;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.6);will-change:transform,opacity}
.lb-img-wrap{overflow:hidden;background:#15110d}
.lb-img{width:100%;height:100%;object-fit:cover;display:block;min-height:360px;will-change:clip-path,transform}
.lb-info{padding:clamp(28px,4vw,54px);display:flex;flex-direction:column;justify-content:center;gap:14px}
.lb-kick{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--brace);font-weight:700}
.lb-name{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(34px,5vw,62px);line-height:.92;letter-spacing:-.02em;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.lb-badge{font-size:12px;letter-spacing:.06em;background:var(--brace);color:var(--carta);padding:4px 11px;border-radius:30px;align-self:center}
.lb-ingr{font-size:16px;color:var(--carta-dim);line-height:1.6}
.lb-ingr strong{color:var(--carta);font-weight:600}
.lb-pair{align-self:flex-start;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:12px;letter-spacing:.04em;
  background:rgba(218,58,36,.15);color:var(--brace);padding:8px 15px;border-radius:30px;margin-top:4px}
.lb-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:clamp(28px,3.4vw,44px);margin-top:8px}
.lb-price::before{content:"€ ";font-size:.58em;color:var(--carta-dim)}
.lb-close{position:absolute;top:14px;right:16px;z-index:4;width:42px;height:42px;border-radius:50%;border:none;
  background:rgba(14,11,9,.55);color:var(--carta);font-size:22px;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.lb-close:hover{background:var(--brace)}
@media(max-width:760px){
  .lb{padding:0}
  .lb-card{grid-template-columns:1fr;max-height:100vh;height:100%;border-radius:0;overflow-y:auto}
  .lb-img{min-height:38vh;max-height:42vh}
}

/* lightbox: configuratore creme (La Duci) */
.lb-builder{display:flex;flex-direction:column;gap:4px}
.lb-builder-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--brace);font-weight:700}
.lb-builder-incl{font-size:12px;color:var(--carta-dim);margin-bottom:10px}
.lb-opts{display:flex;flex-direction:column;gap:8px}
.lb-opt{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;border:1.5px solid rgba(236,228,211,.16);border-radius:14px;transition:border-color .25s,background .25s}
.lb-opt.on{border-color:var(--brace);background:rgba(218,58,36,.08)}
.lb-opt-txt b{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:15px;letter-spacing:.01em}
.lb-opt-txt span{display:block;font-size:12px;color:var(--carta-dim);margin-top:2px}
.lb-opt-txt i{font-style:normal;color:var(--brace)}
.lb-stepper{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.lb-stepper button{width:30px;height:30px;border-radius:50%;border:1.5px solid rgba(236,228,211,.3);background:transparent;color:var(--carta);font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s}
.lb-stepper button:hover{border-color:var(--carta)}
.lb-qty{min-width:14px;text-align:center;font-family:'Bricolage Grotesque';font-weight:700}

/* pdp variant note + color dot (birra) */
.pdp-vnote{font-size:15px;color:var(--carta);line-height:1.6;border-left:2px solid var(--brace);padding-left:14px;max-width:44ch}
.pdp-variant{display:inline-flex;align-items:center;gap:8px}
.pdp-variant .vdot{width:12px;height:12px;border-radius:50%;flex:0 0 auto;box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}

/* lightbox: La Duci flusso guidato */
.duci{display:flex;flex-direction:column;gap:18px}
.duci-h{display:flex;align-items:center;gap:10px;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:13px;letter-spacing:.12em;color:var(--carta)}
.duci-h i{font-style:normal;width:22px;height:22px;border-radius:50%;background:var(--brace);color:var(--carta);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.duci-h em{font-style:normal;margin-left:auto;font-family:'Inter';text-transform:none;letter-spacing:0;font-size:12px;color:var(--carta-dim);font-weight:500}
.duci-opts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.duci-opt{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:13px;letter-spacing:.02em;color:var(--carta);background:transparent;border:1.5px solid rgba(236,228,211,.22);padding:11px 16px;border-radius:40px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:border-color .25s,background .25s,color .25s}
.duci-opt:hover{border-color:var(--carta)}
.duci-opt.on{background:var(--brace);border-color:var(--brace)}
.duci-opt s{text-decoration:none;font-size:11px;color:var(--brace);font-weight:800}
.duci-opt.on s{color:var(--carta)}
.duci-opt .duci-free{font-style:normal;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#2e7d4f;font-weight:800}
.duci-opt.on .duci-free{color:var(--carta)}
.duci-second{border-top:1px solid rgba(236,228,211,.12);padding-top:18px}

/* ============ LEGALE / COOKIE ============ */
.footer-legal a{color:var(--carta-dim);border-bottom:1px solid rgba(236,228,211,.3)}
.footer-legal a:hover{color:var(--carta)}

.cookiebar{position:fixed;left:50%;bottom:18px;transform:translate(-50%,160%);z-index:60;width:min(720px,calc(100% - 28px));background:var(--nero);color:var(--carta);border:1px solid rgba(236,228,211,.18);border-radius:18px;padding:18px 20px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;box-shadow:0 20px 50px rgba(0,0,0,.45);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.cookiebar.show{transform:translate(-50%,0)}
.cookiebar p{flex:1;min-width:240px;font-size:13px;line-height:1.55;color:var(--carta-dim);margin:0}
.cookiebar p strong{color:var(--carta)}
.cookiebar p em{font-style:normal;color:var(--brace)}
.cookiebar a{color:var(--carta);border-bottom:1px solid var(--brace)}
.cookiebar-btns{display:flex;gap:10px;flex:0 0 auto}
.cookiebar-btns button{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:12px;letter-spacing:.04em;padding:11px 18px;border-radius:40px;cursor:pointer;border:1.5px solid rgba(236,228,211,.3);background:transparent;color:var(--carta);transition:all .2s}
.cookiebar-btns .cb-no:hover{border-color:var(--carta)}
.cookiebar-btns .cb-yes{background:var(--brace);border-color:var(--brace);color:#fff}
.cookiebar-btns .cb-yes:hover{filter:brightness(1.08)}

.about-map{position:relative}
.map-gate{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#15110d;color:var(--carta);border:1px dashed rgba(236,228,211,.25);border-radius:inherit;cursor:pointer;font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:15px;letter-spacing:.04em;text-align:center;padding:20px}
.map-gate small{font-family:'Inter';text-transform:none;letter-spacing:0;font-weight:400;font-size:12px;color:var(--carta-dim)}
.map-gate:hover{border-color:var(--brace)}

.legal{max-width:820px;margin:0 auto;padding:18svh clamp(20px,5vw,40px) 12svh}
.legal h1{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:800;font-size:clamp(36px,7vw,72px);line-height:.9;letter-spacing:-.02em}
.legal .upd{color:var(--carta-dim);font-size:13px;margin-top:14px;text-transform:uppercase;letter-spacing:.1em}
.legal h2{font-family:'Bricolage Grotesque';text-transform:uppercase;font-weight:700;font-size:clamp(19px,3vw,26px);margin:36px 0 12px;letter-spacing:-.01em}
.legal p,.legal li{color:var(--carta-dim);font-size:15px;line-height:1.65}
.legal ul{margin:10px 0 0 18px}
.legal a{color:var(--carta);border-bottom:1px solid var(--brace)}
.legal .note{margin-top:10px;font-size:13px;color:var(--brace)}
