:root{
  --ink:#F5F0E8;--ink-2:#EDE6D6;--card:#FEFEFE;
  --gold:#7D6438;--gold-l:#5E4B27;--gold-dec:#B8955A;--teal:#2A5B5B;--teal-l:#4A8F86;
  --cream:#1A1A18;--cream-2:#3D3D38;--gray:#5C5850;
  --r:3px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--ink);color:var(--cream);line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:1400px;margin:0 auto;padding:0 20px}
header.top{padding:60px 20px 40px;text-align:center;border-bottom:1px solid var(--ink-2)}
h1{font-family:'Cormorant Garamond',serif;font-size:3.4rem;font-weight:400;letter-spacing:.5px;margin-bottom:18px;line-height:1.12}
.hr-g{width:60px;height:1px;background:var(--gold-dec);margin:20px auto}
.sub{font-size:1.08rem;max-width:760px;margin:0 auto;color:var(--cream-2);font-weight:300;line-height:1.8}
.note{margin-top:24px;display:inline-block;padding:10px 18px;border:1px solid var(--gold);background:var(--card);border-radius:4px;color:var(--gold);font-size:.88rem}
@keyframes navRise{
  0%{opacity:0;transform:translateY(6px)}
  100%{opacity:1;transform:translateY(0)}
}
nav.anchors a{animation:navRise .5s ease both}
nav.anchors a:nth-of-type(1){animation-delay:.05s}
nav.anchors a:nth-of-type(2){animation-delay:.13s}
nav.anchors a:nth-of-type(3){animation-delay:.21s}
.nav-lbl{font-size:.72rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--gray);align-self:center;margin-right:2px}
nav.anchors{position:sticky;top:0;z-index:40;background:rgba(245,240,232,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(184,149,90,.25);padding:12px 20px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
nav.anchors a.attivo{
  color:#F5F0E8;border-color:rgba(42,91,91,.9);
  background:linear-gradient(180deg,#33686A 0%,#2A5B5B 100%);
  box-shadow:0 1px 2px rgba(20,46,46,.18), 0 4px 12px rgba(20,46,46,.22), inset 0 1px 0 rgba(255,255,255,.18);
}
nav.anchors a{
  color:#3A3227;text-decoration:none;font-size:.82rem;font-weight:500;
  letter-spacing:1.1px;text-transform:uppercase;padding:10px 19px;
  border:1px solid rgba(184,149,90,.55);border-radius:22px;white-space:nowrap;
  background:linear-gradient(180deg,#F1E8D8 0%,#E3D5BC 100%);
  box-shadow:0 1px 2px rgba(122,101,66,.10), 0 4px 10px rgba(122,101,66,.13), inset 0 1px 0 rgba(255,255,255,.75);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  will-change:transform;
}
nav.anchors a:hover,nav.anchors a:focus-visible{
  transform:translateY(-2px);border-color:var(--gold-dec);
  box-shadow:0 2px 4px rgba(122,101,66,.14), 0 8px 18px rgba(122,101,66,.18), inset 0 1px 0 rgba(255,255,255,.85);
}
nav.anchors a:active{
  transform:translateY(1px);
  box-shadow:0 1px 1px rgba(122,101,66,.16), inset 0 2px 4px rgba(122,101,66,.18);
}
.sez{padding:60px 0 20px;scroll-margin-top:64px}
.sez-h{text-align:center;margin-bottom:44px}
.sez-h h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:400;letter-spacing:.4px;color:var(--cream)}
.sez-line{width:44px;height:1px;background:var(--gold-dec);margin:16px auto}
.sez-h p{color:var(--gray);font-size:.95rem;font-weight:300}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px;align-items:start}
.card{background:var(--card);border:1px solid var(--ink-2);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;scroll-margin-top:80px;transition:border-color .3s,transform .3s}
.card:hover{border-color:var(--gold);transform:translateY(-3px)}
.card.on{border-color:var(--gold);box-shadow:0 0 0 2px rgba(184,149,90,.3)}
.gal{position:relative;width:100%}
.g-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.g-track::-webkit-scrollbar{display:none}
.g-slide{flex:0 0 100%;scroll-snap-align:start}
.g-slide picture{display:block;width:100%}.g-slide img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;display:block;background:var(--ink-2)}
.g-dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:6px;pointer-events:none}
.gal[data-count="1"] .g-dots{display:none}
.g-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.7);box-shadow:0 0 3px rgba(0,0,0,.4);transition:.2s}
.g-dot.on{background:var(--gold);transform:scale(1.3)}
.card-b{padding:26px;display:flex;flex-direction:column;flex:1}
.card-h{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.card-h h3{font-family:'Cormorant Garamond',serif;font-size:1.55rem;font-weight:500;letter-spacing:.2px;color:var(--cream);line-height:1.25}
.price{font-family:'Cormorant Garamond',serif;font-size:1.85rem;font-weight:500;color:var(--gold);white-space:nowrap;line-height:1.15}
.pp{font-size:.75rem;color:var(--gray);letter-spacing:.6px;margin:2px 0 16px;text-align:right}
/* — Etichette rapide — */
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.tag{font-size:.72rem;padding:4px 10px;border-radius:20px;background:var(--ink);color:var(--cream-2);letter-spacing:.3px;line-height:1.4}
.tag-ritmo{background:transparent;border:1px solid var(--ink-2);color:var(--gray)}
/* — Cosa portare — */
details.cp{margin-bottom:16px;border-top:1px solid var(--ink-2);padding-top:12px}
details.cp summary{font-size:.72rem;text-transform:uppercase;letter-spacing:1.6px;color:var(--gold);font-weight:500;cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px}
details.cp summary::before{content:'+';font-size:.9rem;font-weight:400;transition:transform .2s}
details.cp[open] summary::before{content:'\2212'}
details.cp summary::-webkit-details-marker{display:none}
details.cp p{font-size:.87rem;color:var(--cream-2);line-height:1.6;margin-top:8px}
.desc{font-size:.94rem;color:var(--cream-2);margin-bottom:18px;line-height:1.7}
.rec-t,.incl-t,.excl-t{font-size:.72rem;text-transform:uppercase;letter-spacing:1.6px;color:var(--gold);margin-bottom:7px;font-weight:500}
.rec{font-size:.92rem;color:var(--cream-2);margin-bottom:18px;line-height:1.65}
ul.incl,ul.excl{list-style:none;margin-bottom:18px}
ul.incl li,ul.excl li{font-size:.89rem;color:var(--cream-2);padding:4px 0 4px 16px;position:relative;line-height:1.5}
ul.incl li:before{content:"\2022";position:absolute;left:0;color:var(--gold)}
ul.excl li{color:var(--gray)}
ul.excl li:before{content:"\2013";position:absolute;left:0;color:var(--gray)}
.excl-t{color:var(--gray)}
.acts{display:flex;gap:9px;margin-top:auto;align-items:stretch}
.btn-add,.btn-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 15px;border-radius:4px;font-size:.9rem;letter-spacing:0;font-weight:500;line-height:1.25;cursor:pointer;text-decoration:none;font-family:inherit;transition:background .2s,border-color .2s,color .2s;-webkit-tap-highlight-color:transparent}
.btn-add{flex:0 1 auto;min-width:112px;background:transparent;color:var(--cream-2);border:1px solid var(--ink-2);font-weight:400}
.btn-add:hover{border-color:var(--gold);color:var(--gold)}
.btn-add[aria-pressed="true"]{background:rgba(125,100,56,.07);border-color:var(--gold);color:var(--gold);font-weight:500}
.btn-wa{flex:1 1 auto;background:var(--gold);color:#FFF;border:1px solid var(--gold);text-align:left}
.btn-wa:hover{background:var(--gold-l);border-color:var(--gold-l)}
.btn-add:focus-visible,.btn-wa:focus-visible,.btn-more:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.wa-ico{width:17px;height:17px;flex-shrink:0}
.tip{max-width:820px;margin:34px auto 0;padding:16px 20px;border-left:2px solid var(--gold);background:var(--card);color:var(--cream-2);font-size:.95rem;line-height:1.7}
.tip span{color:var(--gold);font-weight:500}
.faq{padding:70px 20px 20px;border-top:1px solid var(--ink-2);margin-top:50px}
.faq h2{font-family:'Cormorant Garamond',serif;font-size:2.1rem;font-weight:400;letter-spacing:.3px;text-align:center}
.faq .hr-g{margin-bottom:40px}
.faq-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0 40px;max-width:1000px;margin:0 auto;align-content:start}
.faq-i{border-bottom:1px solid var(--ink-2)}
.faq-i h3{margin:0}
.faq-q{width:100%;background:none;border:none;font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:500;color:var(--gold);letter-spacing:.2px;text-align:left;line-height:1.35;padding:18px 0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:color .2s;-webkit-tap-highlight-color:transparent}
.faq-q:hover{color:var(--cream)}
.faq-q:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.faq-sgn{position:relative;flex:0 0 auto;width:15px;height:15px}
.faq-sgn::before,.faq-sgn::after{content:'';position:absolute;background:currentColor;transition:transform .3s,opacity .3s}
.faq-sgn::before{top:7px;left:0;width:15px;height:1.5px}
.faq-sgn::after{left:6.75px;top:0;width:1.5px;height:15px}
.faq-q[aria-expanded="true"] .faq-sgn::after{transform:rotate(90deg);opacity:0}
.faq-r{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.4,0,.2,1)}
.faq-i.open .faq-r{max-height:600px}
.faq-r p{font-size:.94rem;color:var(--cream-2);line-height:1.7;padding:0 0 20px;margin:0}
.final{padding:60px 20px 70px;text-align:center;margin-top:10px}
.final h2{font-family:'Cormorant Garamond',serif;font-size:2.1rem;font-weight:400;letter-spacing:.3px;margin-bottom:22px}
.final p{font-size:1.02rem;color:var(--cream-2);max-width:640px;margin:0 auto 32px;line-height:1.8}
.btn-big{display:inline-flex;align-items:center;gap:11px;background:var(--gold);color:#FFF;padding:16px 38px;border-radius:3px;font-weight:500;font-size:1rem;letter-spacing:1px;text-transform:uppercase;text-decoration:none;transition:.25s}
.btn-big:hover{background:var(--gold-l);transform:translateY(-2px)}
footer{padding:36px 20px 120px;text-align:center;border-top:1px solid var(--ink-2);color:var(--gray);font-size:.87rem}
footer a{color:var(--gold);text-decoration:none}
footer a:hover{text-decoration:underline}
.footer-social{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 10px;margin:16px 0 12px;}
.footer-social a{display:flex;align-items:center;gap:7px;padding:9px 16px;border-radius:24px;text-decoration:none;font-size:12px;font-weight:500;letter-spacing:.3px;color:#fff;transition:opacity .2s;}
.footer-social a:hover{opacity:.85;text-decoration:none;}
.footer-social a svg{width:18px;height:18px;flex-shrink:0;}
.footer-social .fs-ig{background:linear-gradient(135deg,#833AB4,#E1306C,#F77737);}
.footer-social .fs-tt{background:#111;border:1px solid rgba(255,255,255,.18);}
.footer-social .fs-wa{background:#25D366;}
.footer-social .fs-fb{background:#1877F2;}
/* — Bottom Sheet — */
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:60;transform:translateY(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);pointer-events:none}
.sheet.show{transform:translateY(0);pointer-events:auto}
.sheet-peek{background:var(--cream);padding:14px 20px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;box-shadow:0 -3px 16px rgba(0,0,0,.35);border-top:2px solid var(--gold)}
.sheet-peek-left{display:flex;flex-direction:column;gap:2px}
.sheet-count{color:#F5F0E8;font-size:.92rem;font-weight:500}
.sheet-total{color:var(--gold);font-size:.82rem;font-weight:400}
.sheet-nudge{color:rgba(245,240,232,.65);font-size:.76rem;margin-top:2px}
.sheet-toggle{background:none;border:none;color:#F5F0E8;font-size:1.6rem;cursor:pointer;padding:4px 8px;transition:transform .3s}
.sheet.open .sheet-toggle{transform:rotate(180deg)}
.sheet-body{background:#F5F0E8;max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.sheet.open .sheet-body{max-height:70vh;overflow-y:auto}
.sheet-inner{padding:20px}
.sheet-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--ink-2);border-radius:20px;padding:6px 12px;font-size:.82rem;color:var(--cream);font-family:inherit}
.chip-x{background:none;border:none;color:var(--gray);cursor:pointer;font-size:1rem;padding:0 2px;line-height:1}
.chip-x:hover{color:var(--cream)}
.sheet-fields{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.sheet-field{border:1px solid var(--ink-2);border-radius:4px;padding:10px 14px;font-size:.88rem;font-family:inherit;background:#FFF;color:var(--cream);width:100%;box-sizing:border-box}
.sheet-field::placeholder{color:var(--gray)}
.sheet-field:focus{outline:2px solid var(--gold);border-color:transparent}
.sheet-preview{background:var(--card);border:1px solid var(--ink-2);border-radius:4px;padding:14px;font-size:.8rem;color:var(--cream-2);line-height:1.6;margin-bottom:16px;max-height:120px;overflow-y:auto;white-space:pre-line;font-family:monospace}
.sheet-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.sheet-wa{flex:1;background:#25D366;color:#0B2E1C;border:none;border-radius:4px;padding:14px 20px;font-size:.92rem;font-weight:600;cursor:pointer;font-family:inherit;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-width:200px}
.sheet-wa:hover{background:#1FBF5A}
.sheet-wa svg{width:20px;height:20px}
.sheet-clear{background:none;border:none;color:var(--gray);font-size:.78rem;cursor:pointer;font-family:inherit;text-decoration:underline}
.sheet-clear:hover{color:var(--cream)}
/* Admin buttons */
.sheet-admin{display:none}
.admin .sheet-admin{display:inline-flex}
body:not(.admin) .sheet-admin{display:none}
.sheet-send{background:var(--teal);color:#FFF;border:none;border-radius:4px;padding:12px 16px;font-size:.82rem;cursor:pointer;font-family:inherit;text-decoration:none;align-items:center;gap:6px}
.sheet-copy{background:var(--cream);color:#F5F0E8;border:none;border-radius:4px;padding:12px 16px;font-size:.82rem;cursor:pointer;font-family:inherit}
/* Sticky nav */
nav.anchors{position:sticky;top:52px;z-index:40}
/* Back to top */
.btt{position:fixed;bottom:80px;right:16px;z-index:55;background:var(--card);border:1px solid var(--ink-2);width:42px;height:42px;border-radius:50%;display:none;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);font-size:1.1rem;color:var(--cream);transition:opacity .3s}
.btt.vis{display:flex}
.btt:hover{background:var(--ink-2)}
/* Stagionale badge */
.tag-stag{background:#E8B04A;color:#1A1A18;font-weight:500}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* — Header fisso — */
.topbar{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(245,240,232,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(184,149,90,.2);padding:10px 20px;display:flex;align-items:center;justify-content:space-between}
.topbar-logo{display:flex;align-items:center;text-decoration:none;}
.topbar-logo img{height:28px;width:auto;display:block}
@media(max-width:480px){.topbar-logo img{height:22px}}
.topbar-right{display:flex;gap:16px;align-items:center}
.topbar-link{font-size:.78rem;text-transform:uppercase;letter-spacing:1px;font-weight:500;color:var(--cream-2);text-decoration:none;transition:.2s}
.topbar-link:hover{color:var(--gold)}
/* min-height: il pulsante era alto 32px, sotto la misura minima per
   essere toccato senza sbagliare su un telefono. */
.topbar-wa{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--gold);color:#FFF;padding:8px 16px;min-height:44px;box-sizing:border-box;border-radius:3px;font-size:.78rem;font-weight:500;letter-spacing:.6px;text-transform:uppercase;text-decoration:none;transition:.2s}
.topbar-wa:hover{background:var(--gold-l)}
.topbar-wa svg{width:15px;height:15px}
body{padding-top:52px}
/* — Blocco fiducia + prezzo — */
.trust{max-width:820px;margin:50px auto 0;padding:40px 30px;background:var(--card);border:1px solid var(--ink-2);border-radius:4px}
.trust-h{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:400;color:var(--cream);margin-bottom:18px;letter-spacing:.3px}
.trust p{font-size:.95rem;color:var(--cream-2);line-height:1.75;margin-bottom:14px}
.trust-strip{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid var(--ink-2)}
.trust-strip span{font-size:.82rem;color:var(--gold);font-weight:500;letter-spacing:.4px}
.price-block{max-width:820px;margin:30px auto 0;padding:40px 30px;background:var(--card);border:1px solid var(--ink-2);border-radius:4px}
.price-block h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:400;color:var(--cream);margin-bottom:16px;letter-spacing:.3px}
.price-block p{font-size:.95rem;color:var(--cream-2);line-height:1.75;margin-bottom:14px}
.price-block p:last-child{margin-bottom:0;font-style:italic;color:var(--gold)}
/* — Blocco sargasso — */
.sargasso{max-width:820px;margin:40px auto 0;padding:30px;background:#F7F3EC;border-left:3px solid var(--teal);border-radius:3px}
.sargasso h3{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;color:var(--teal);margin-bottom:12px}
.sargasso p{font-size:.93rem;color:var(--cream-2);line-height:1.72}
/* — Frecce galleria — */
.g-arr{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.45);border:none;color:#FFF;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5;opacity:0;transition:opacity .25s}
.gal:hover .g-arr,.g-arr:focus-visible{opacity:1}
/* Su touch l'hover non esiste: le frecce restano sempre visibili */
@media (hover:none){.g-arr{opacity:.9}}
.g-arr-l{left:8px}.g-arr-r{right:8px}
.g-arr:hover{background:rgba(0,0,0,.65)}
.gal[data-count="1"] .g-arr{display:none}

/* — Cosa portare — */
.portare{margin-top:14px;border-top:1px solid var(--ink-2);padding-top:12px}
.portare summary{font-size:.72rem;text-transform:uppercase;letter-spacing:1.4px;color:var(--gold);font-weight:500;cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px}
.portare summary::-webkit-details-marker{display:none}
.portare summary::after{content:'\25BE';font-size:.8rem;transition:transform .2s}
.portare[open] summary::after{transform:rotate(180deg)}
.portare p{font-size:.87rem;color:var(--cream-2);line-height:1.6;margin-top:8px}

/* — Come funziona — */
.come-funziona{max-width:820px;margin:40px auto 0;padding:40px 30px;background:var(--card);border:1px solid var(--ink-2);border-radius:4px}
.come-funziona h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:400;color:var(--cream);margin-bottom:22px;letter-spacing:.3px}
.step{display:flex;gap:16px;margin-bottom:18px}
.step-n{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--gold);color:#FFF;font-size:.85rem;font-weight:600;display:flex;align-items:center;justify-content:center;margin-top:2px}
.step p{font-size:.93rem;color:var(--cream-2);line-height:1.7}
.step strong{color:var(--cream)}
@media (max-width:768px){
.topbar{padding:8px 14px}
.topbar-logo{font-size:1rem}
.topbar-link{display:none}
.topbar-wa{padding:7px 12px;font-size:.72rem}
.trust,.price-block,.come-funziona{padding:26px 20px;margin-left:-20px;margin-right:-20px;border-radius:0;border-left:none;border-right:none}
.trust-strip{gap:14px}
.trust-strip span{font-size:.76rem}
}
@media (min-width:640px) and (max-width:1023px){.g-slide{flex:0 0 100%}}
@media (min-width:1024px){.g-slide{flex:0 0 100%}}
@media (max-width:768px){
nav.anchors{padding:10px 12px;gap:7px;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;-ms-overflow-style:none;scroll-padding-inline:12px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 26px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 26px),transparent)}
nav.anchors::-webkit-scrollbar{display:none}
nav.anchors a{flex:0 0 auto}
nav.anchors a{font-size:.72rem;padding:8px 12px;letter-spacing:.6px}
.nav-lbl{display:none}
h1{font-size:2.15rem;letter-spacing:0}
.sub{font-size:.98rem}
.grid{grid-template-columns:1fr;gap:26px}
.card-h h3{font-size:1.35rem}
.sez-h h2{font-size:1.7rem;letter-spacing:0}
.card-b{padding:20px}
.sez{padding:44px 0 10px}
.faq-list{grid-template-columns:1fr;gap:0}
.tip{font-size:.9rem;padding:14px 16px;margin-top:26px}
.faq h2{font-size:1.7rem;letter-spacing:0}
.sheet-peek{padding:12px 14px}
.sheet-inner{padding:16px}
.sheet-wa{padding:12px 16px;font-size:.86rem}
}
/* — Blocco "Piu informazioni" — */
.teaser{color:var(--gray);font-size:.85rem;line-height:1.5;margin:12px 0 0;font-style:italic}
.btn-more{margin-top:16px;width:100%;background:none;border:none;border-top:1px solid var(--ink-2);color:var(--gold);padding:14px 2px 18px;font-family:inherit;font-size:.88rem;font-weight:400;letter-spacing:0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;transition:color .2s;-webkit-tap-highlight-color:transparent}
.btn-more:hover{color:var(--cream)}
.btn-more .chev{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;border:1px solid var(--ink-2);border-radius:50%;font-size:.58rem;line-height:1;transition:transform .3s,border-color .2s,background .2s}
.btn-more:hover .chev{border-color:var(--gold)}
.btn-more[aria-expanded="true"] .chev{transform:rotate(180deg);background:rgba(125,100,56,.08);border-color:var(--gold)}
.card-more{overflow:hidden;max-height:0;transition:max-height .4s cubic-bezier(.4,0,.2,1)}
.card-more>*:first-child{margin-top:18px}
.card.open .card-more{max-height:2400px}
.card.open .teaser{display:none}
.card:not(.open) .desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* — Carrello nella topbar — */
.topbar-cart{position:relative;background:transparent;border:1px solid rgba(184,149,90,.45);border-radius:3px;color:var(--cream-2);width:38px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:border-color .2s,color .2s}
.topbar-cart:hover{border-color:var(--gold);color:var(--gold)}
.topbar-cart svg{width:17px;height:17px}
.cart-badge{position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--gold);color:#FFF;font-size:.68rem;font-weight:700;line-height:18px;text-align:center;box-sizing:border-box;opacity:0;transform:scale(.5);transition:opacity .2s,transform .2s}
.cart-badge.on{opacity:1;transform:scale(1)}
.topbar-cart.bump{animation:cartBump .45s ease}
@keyframes cartBump{0%{transform:scale(1)}35%{transform:scale(1.18)}100%{transform:scale(1)}}
@media(max-width:480px){.topbar-cart{width:36px;height:32px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important;animation:none!important}nav.anchors a{opacity:1;transform:none}}

/* --- blocco 2 (era inline in fondo alla head) --- */
.orario{background:#FBF6EA;border:1px solid #EBDCBC;border-radius:9px;padding:11px 13px;margin:14px 0 0}
.orario-t{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;letter-spacing:.3px;color:#8A5A12;margin:0 0 7px;text-transform:uppercase}
.orario-t svg{width:14px;height:14px;flex:0 0 14px}
.orario table{width:100%;border-collapse:collapse;font-size:.86rem}
.orario td{padding:2px 0;vertical-align:top}
.orario td:first-child{color:var(--gray,#6B6B6B)}
.orario td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:10px}
.orario .zona-note{font-size:.74rem;color:#9a8a6a;display:block}
.orario p{margin:7px 0 0;font-size:.78rem;line-height:1.5;color:var(--gray,#6B6B6B)}
.orario p.solo{margin:0}
@media(max-width:640px){.orario table{font-size:.82rem}}

.anchors .anchor-trf{border:1px solid var(--gold,#B08D3F);color:var(--gold,#B08D3F);font-weight:600;margin-left:auto}
.anchors .anchor-trf:hover{background:var(--gold,#B08D3F);color:#fff}
.trf-hint{margin:9px 0 0;font-size:.86rem;color:var(--gray,#6B6B6B)}
@media(max-width:720px){.anchors .anchor-trf{margin-left:0;order:-1}}

.filtri{display:flex;flex-wrap:wrap;gap:7px;align-items:center;max-width:1400px;margin:14px auto 4px;padding:0 20px}
.f-btn{font-size:.83rem;padding:6px 13px;border-radius:999px;border:1px solid var(--line,#E3DCCB);
  background:#fff;color:var(--gray,#6B6B6B);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.f-btn:hover{border-color:var(--gold,#B08D3F);color:var(--gold,#B08D3F)}
.f-btn.on{background:var(--gold,#B08D3F);border-color:var(--gold,#B08D3F);color:#fff}
.f-esito{width:100%;margin:4px 0 0;font-size:.82rem;color:var(--gray,#6B6B6B)}
.sez.vuota{display:none}

.anchors .a-transfer{margin-left:auto;border:1px solid var(--gold,#B8955A);color:var(--gold,#B8955A);
  background:#fff;border-radius:999px;padding:5px 13px;font-weight:600;white-space:nowrap}
.anchors .a-transfer:hover{background:var(--gold,#B8955A);color:#fff}
@media(max-width:720px){.anchors .a-transfer{margin-left:0;order:-1}}
.price-block .p-link{margin-top:14px;font-size:.92rem}
.price-block .p-link a{color:#B8955A;font-weight:600}

/* ====== PAGINE DESTINAZIONE ======================================== */
.briciole{max-width:1400px;margin:0 auto;padding:16px 20px 0;display:flex;gap:9px;align-items:center;font-size:.82rem;color:var(--gray)}
.briciole a{color:var(--gold-l);text-decoration:none;border-bottom:1px solid rgba(184,149,90,.45);padding-bottom:1px}
.briciole a:hover,.briciole a:focus-visible{color:var(--teal)}
.briciole span[aria-current]{color:var(--cream-2)}

.conf{border:1px solid var(--ink-2);border-radius:var(--r);background:var(--card);overflow:hidden}
.conf-h,.conf-r{display:grid;grid-template-columns:200px 1fr 1fr 1fr}
.conf-h{background:linear-gradient(180deg,#F1E8D8 0%,#E8DCC6 100%);border-bottom:1px solid var(--ink-2)}
.conf-r+.conf-r,.conf-h+.conf-r{border-top:1px solid rgba(237,230,214,.9)}
.conf-col{font-family:'Cormorant Garamond',serif;font-size:1.28rem;color:var(--gold-l);padding:16px 20px}
.conf-lab{padding:16px 20px;color:var(--gray);font-size:.82rem;letter-spacing:.4px;background:rgba(245,240,232,.55)}
.conf-v{padding:16px 20px;font-size:.95rem;color:var(--cream-2);line-height:1.6}
.conf-v+.conf-v{border-left:1px solid rgba(237,230,214,.9)}
@media(max-width:820px){
  .conf-h{display:none}
  .conf-r{grid-template-columns:1fr}
  .conf-v+.conf-v{border-left:none;border-top:1px solid rgba(237,230,214,.6)}
  .conf-v::before{content:attr(data-v);display:block;font-size:.72rem;letter-spacing:.5px;
    text-transform:uppercase;color:var(--gold-l);margin-bottom:3px}
  .conf-lab{grid-column:1/-1;background:rgba(245,240,232,.8);padding:11px 16px;font-size:.78rem;border-bottom:1px solid rgba(237,230,214,.9)}
  .conf-v{padding:13px 16px;font-size:.9rem}
}

.quale{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.quale-i{border:1px solid var(--ink-2);border-left:2px solid var(--gold-dec);border-radius:var(--r);background:var(--card);padding:24px 26px}
.quale-i h3{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:400;color:var(--gold-l);margin-bottom:10px}
.quale-i p{font-size:.95rem;color:var(--cream-2);line-height:1.75}
@media(max-width:1020px){.quale{grid-template-columns:1fr}}
@media(min-width:821px) and (max-width:900px){.conf-h,.conf-r{grid-template-columns:170px 1fr 1fr 1fr}}

.torna{text-align:center;margin:50px 0 70px}
.torna a{color:var(--gold-l);text-decoration:none;font-size:.9rem;letter-spacing:.5px;border-bottom:1px solid rgba(184,149,90,.5);padding-bottom:2px}
.torna a:hover,.torna a:focus-visible{color:var(--teal)}

/* Link dalla scheda alla sua pagina destinazione */
.vai-dest{display:inline-block;margin:0 0 14px;font-size:.86rem;color:var(--gold-l);text-decoration:none;border-bottom:1px solid rgba(184,149,90,.5);padding-bottom:2px}
.vai-dest:hover,.vai-dest:focus-visible{color:var(--teal)}

/* Etichette fisse dei campi del pannello: restano leggibili anche dopo che
   la persona ha scritto, cosa che il placeholder da solo non fa. */
.sheet-lab{display:block;font-size:.76rem;letter-spacing:.3px;color:var(--gray);margin-bottom:-4px}
.sheet-nota{font-size:.78rem;color:var(--gray);line-height:1.5;margin-top:8px;flex-basis:100%}

/* Sezione recensioni: stesso respiro della pagina, senza gli stili delle FAQ */
.prove-sez{background:#F9FAFB;padding:46px 0 44px;margin:20px 0 10px;border-top:1px solid var(--ink-2);border-bottom:1px solid var(--ink-2)}
.prove-sez h2{text-align:center;margin-bottom:8px}
.sez-intro{max-width:820px;margin:0 0 26px;color:var(--cream-2);font-size:1rem;line-height:1.75}

/* Collegamenti alle altre pagine nel pie' di pagina */
.footer-nav{font-size:12.5px;margin:8px 0 2px;opacity:.78;}
.footer-nav a{color:inherit;text-decoration:none;}
.footer-nav a:hover{text-decoration:underline;opacity:1;}

/* Rimandi alla guida, dentro le domande frequenti e nel blocco sargasso */
.faq-guida{max-width:720px;margin:26px auto 0;font-size:14.5px;line-height:1.6;
  text-align:center;opacity:.82;}
.sarg-guida{margin-top:12px;font-size:14.5px;line-height:1.6;opacity:.86;}
.faq-guida a,.sarg-guida a{color:inherit;text-decoration:none;
  border-bottom:1px solid currentColor;padding-bottom:1px;}
.faq-guida a:hover,.sarg-guida a:hover{opacity:1;}

/* --- Aree di tocco comode su telefono: 44px minimi (29/09) --- */
@media(max-width:600px){
  .g-arr::after{content:'';position:absolute;top:50%;left:50%;
    transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%}
  .topbar-logo{min-height:44px;display:inline-flex;align-items:center;}
  /* .topbar-link resta nascosto sul telefono: non tocchiamone il display */
  .topbar-link{min-height:44px;align-items:center;}
  .topbar-cart{min-width:44px;min-height:44px;display:inline-flex;
    align-items:center;justify-content:center;}
  .sheet-toggle{min-width:44px;min-height:44px;display:inline-flex;
    align-items:center;justify-content:center;}
  .sheet-clear{min-height:44px;display:inline-flex;align-items:center;}
  .footer-social a{min-height:44px;box-sizing:border-box;}
  nav.anchors a{min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;}
  .filtri .f-btn{min-height:44px;box-sizing:border-box;}
  .vai-dest{min-height:44px;display:inline-flex;align-items:center;}
  nav.briciole a{min-height:44px;display:inline-flex;align-items:center;}
}

/* --- Schermi stretti (320-400px): niente elementi tagliati --- */
@media(max-width:400px){
  .footer-social{gap:6px;flex-wrap:wrap;}
  .footer-social a{padding:9px 9px;}
}
