:root{
  --fondo:#1B1D16;
  --superficie:#282B20;
  --inchiostro:#EFEFE6;
  --oro:#B9A227;
  --smorzato:#8A8B7C;
  --filo:rgba(239,239,230,.12);
  --chiaro:#EFEFE6;
  --scuro-su-chiaro:#1B1D16;
  --raggio:14px;
  --raggio-piccolo:8px;
  --passo:clamp(18px,2.2vw,34px);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
img{max-width:100%;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}

body{
  font-family:"Petrona",Georgia,serif;
  font-size:clamp(16.5px,1.05vw,18.5px);
  line-height:1.66;
  color:var(--inchiostro);
  background:var(--fondo);
  min-height:100vh;
  padding-bottom:96px;
}
html.scelta-cookie body{padding-bottom:28px}
button.bottone{-webkit-appearance:none;appearance:none}

h1,h2,h3,.marchio__nome{
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:700;
  letter-spacing:-.015em;
  line-height:1.08;
  margin:0;
}
h1{font-size:clamp(2.5rem,5.6vw,4.4rem)}
h2{font-size:clamp(1.85rem,3vw,2.7rem)}
h3{font-size:clamp(1.15rem,1.5vw,1.35rem)}
p{margin:0}
p+p{margin-top:0.9em}

.richiamo{
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:600;
  font-size:0.76rem;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:var(--oro);
  margin:0 0 12px;
}
.nota-corsivo{
  font-style:italic;
  color:var(--smorzato);
  font-size:0.95em;
}
.tassello p,.colonna-guida p,.apertura__sottotitolo,.chiusura p,.avviso-cookie p{
  max-width:62ch;
}

.contenitore{width:min(1240px,100% - 2*var(--passo));margin-inline:auto}

/* Impaginazione a due colonne: guida stretta + griglia larga */
.impaginato{display:grid;grid-template-columns:0.62fr 1.38fr;gap:clamp(22px,3vw,52px);align-items:start}
@media (max-width:920px){.impaginato{grid-template-columns:1fr}}

.colonna-guida{display:flex;flex-direction:column;gap:16px}
@media (min-width:921px){.colonna-guida{position:sticky;top:96px}}
.colonna-guida p{color:var(--inchiostro)}
.guida__cifra{margin-top:10px;padding-top:16px;border-top:1px solid var(--filo)}
.guida__cifra strong{
  display:block;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-size:2.2rem;
  font-weight:700;
  color:var(--oro);
  letter-spacing:-.02em;
  line-height:1;
}
.guida__cifra span{display:block;margin-top:6px;color:var(--smorzato);font-size:0.92rem}

/* Griglia bento: 6 colonne */
.griglia-bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(112px,auto);gap:14px}
.tassello{background:var(--superficie);border:1px solid var(--filo);border-radius:var(--raggio);padding:clamp(18px,1.8vw,28px);display:flex;flex-direction:column;gap:10px}
.tassello--x6{grid-column:span 6}
.tassello--x4{grid-column:span 4}
.tassello--x3{grid-column:span 3}
.tassello--x2{grid-column:span 2}
.tassello--x2y2{grid-column:span 2;grid-row:span 2}
.tassello--alto{grid-row:span 2}
.tassello--chiaro{background:var(--chiaro);color:var(--scuro-su-chiaro)}
.tassello--chiaro .nota-corsivo{color:#4A4D3E}
.tassello--chiaro .richiamo{color:#8A7420}
.tassello--bordo{background:transparent;border:1px dashed rgba(185,162,39,.45)}
.tassello--foto{padding:0;overflow:hidden}
.tassello--foto img{width:100%;height:100%;min-height:200px;object-fit:cover;display:block}
@media (max-width:920px){
  .griglia-bento{grid-template-columns:repeat(2,1fr)}
  .tassello--x6,.tassello--x4,.tassello--x3{grid-column:span 2}
  .tassello--alto,.tassello--x2y2{grid-row:auto}
}
@media (max-width:540px){
  .griglia-bento{grid-template-columns:1fr}
  .tassello--x2,.tassello--x2y2{grid-column:span 1}
}

.fascia{padding-block:clamp(52px,7vw,96px)}
.fascia + .fascia{border-top:1px solid var(--filo)}

/* Intestazione fissa */
.testata{
  position:sticky;
  top:0;
  z-index:60;
  background:rgba(27,29,22,.94);
  border-bottom:1px solid var(--filo);
  backdrop-filter:blur(12px);
}
.testata__riga{
  display:flex;
  align-items:center;
  gap:18px;
  min-height:72px;
}
.marchio{display:flex;align-items:center;gap:10px;text-decoration:none;flex:0 0 auto}
.marchio__segno{width:28px;height:28px;display:block}
.marchio__nome{font-size:1.05rem;letter-spacing:-.03em;white-space:nowrap}
@media (max-width:540px){.marchio__nome{font-size:.92rem}}
.menu-alto{
  display:flex;
  align-items:center;
  gap:1.35rem;
  margin-left:auto;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:600;
  font-size:0.92rem;
}
.menu-alto a{
  text-decoration:none;
  color:var(--inchiostro);
  padding-bottom:3px;
  border-bottom:2px solid transparent;
}
.menu-alto a[aria-current="page"]{border-bottom-color:var(--oro);color:var(--oro)}
.menu-alto a:hover{color:var(--oro)}
.testata .bottone--chiaro{margin-left:8px;flex:0 0 auto}
.apri-menu{
  display:none;
  background:transparent;
  border:1px solid var(--filo);
  color:var(--inchiostro);
  border-radius:999px;
  padding:.55em 1em;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:600;
}
@media (max-width:920px){
  .apri-menu{display:inline-flex;margin-left:auto}
  .testata .bottone--chiaro{padding:.62em 1.05em;font-size:.88rem}
  .menu-alto{
    display:none;
    position:absolute;
    left:0;right:0;top:100%;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:12px var(--passo) 18px;
    background:var(--superficie);
    border-bottom:1px solid var(--filo);
    margin-left:0;
  }
  .menu-alto.aperto{display:flex}
  .menu-alto a{padding:10px 0;width:100%;border-bottom:1px solid var(--filo)}
}

.bottone{
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:600;
  border-radius:999px;
  padding:.82em 1.5em;
  display:inline-block;
  text-decoration:none;
  transition:.18s;
  border:1px solid transparent;
  text-align:center;
}
.bottone--chiaro{background:var(--oro);color:#1F2937;border:1px solid var(--oro)}
.bottone--chiaro:hover{background:#D3BA33;color:#1F2937}
.bottone--vuoto{background:transparent;color:var(--inchiostro);border:1px solid rgba(239,239,230,.35)}
.bottone--vuoto:hover{border-color:var(--oro);color:var(--oro)}
.bottone--pieno-chiaro{background:var(--chiaro);color:#1B1D16;border:1px solid var(--chiaro)}
.bottone--pieno-chiaro:hover{background:#fff;color:#1B1D16}
.azioni{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}

:focus-visible{outline:2px solid var(--oro);outline-offset:2px}

/* Apertura: testo, foto, nastro */
.apertura{padding-top:clamp(28px,4vw,48px)}
.apertura__corpo{
  display:grid;
  gap:clamp(22px,3vw,48px);
  align-items:end;
  padding-bottom:clamp(24px,3vw,40px);
}
@media (min-width:1040px){
  .apertura__corpo{grid-template-columns:1.12fr .88fr}
}
.apertura__testo{display:flex;flex-direction:column;gap:18px}
.apertura__sottotitolo{color:var(--inchiostro);max-width:42ch}
.apertura__foto{
  border-radius:var(--raggio);
  overflow:hidden;
  border:1px solid var(--filo);
  background:var(--superficie);
  min-height:280px;
}
.apertura__foto img{width:100%;height:100%;object-fit:cover;display:block;min-height:280px}

.nastro-cifre{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--filo);
  border-bottom:1px solid var(--filo);
}
.nastro-cifre--tre{grid-template-columns:repeat(3,1fr)}
.cifra{
  padding:22px 16px 24px;
  border-right:1px solid var(--filo);
}
.cifra:last-child{border-right:none}
.cifra strong{
  display:block;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-size:clamp(1.9rem,3.4vw,2.8rem);
  font-weight:700;
  color:var(--oro);
  letter-spacing:-.03em;
  line-height:1;
}
.cifra span{
  display:block;
  margin-top:8px;
  font-family:"Petrona",Georgia,serif;
  font-size:0.92rem;
  color:var(--smorzato);
  line-height:1.4;
}
@media (max-width:720px){
  .nastro-cifre,.nastro-cifre--tre{grid-template-columns:repeat(2,1fr)}
  .cifra:nth-child(2n){border-right:none}
  .cifra:nth-child(1),.cifra:nth-child(2){border-bottom:1px solid var(--filo)}
}

.emergi{opacity:1;transform:none}
html.js .emergi{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
html.js .emergi.attivo{opacity:1;transform:none}
html.no-js .emergi{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){.emergi{opacity:1!important;transform:none!important;transition:none!important}}

/* Listino pacchetti */
.listino{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.listino__carta{
  background:var(--superficie);
  border:1px solid var(--filo);
  border-radius:var(--raggio);
  padding:clamp(18px,1.8vw,28px);
  display:flex;
  flex-direction:column;
  gap:12px;
}
.listino__carta--consigliata{border:2px solid var(--oro);position:relative}
.listino__carta--chiaro{background:var(--chiaro);color:var(--scuro-su-chiaro)}
.listino__carta--chiaro .prezzo-nuovo{color:var(--scuro-su-chiaro)}
.etichetta-scelta{
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-size:0.72rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--oro);
}
.prezzo-vecchio{color:var(--smorzato);font-size:1rem}
.prezzo-nuovo{
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-size:2.4rem;
  font-weight:700;
  color:var(--inchiostro);
  letter-spacing:-.03em;
  line-height:1;
}
.listino__nota{color:var(--smorzato);font-size:0.95rem}
@media (max-width:860px){.listino{grid-template-columns:1fr}}

/* Domande a tendina */
.domanda{
  border:1px solid var(--filo);
  border-radius:var(--raggio);
  background:var(--superficie);
  padding:0;
}
.domanda summary{
  list-style:none;
  cursor:pointer;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:600;
  padding:18px 22px;
  position:relative;
  padding-right:48px;
}
.domanda summary::-webkit-details-marker{display:none}
.domanda summary::after{
  content:"";
  position:absolute;
  right:20px;top:50%;
  width:8px;height:8px;
  border-right:2px solid var(--oro);
  border-bottom:2px solid var(--oro);
  transform:translateY(-70%) rotate(45deg);
}
.domanda[open] summary::after{transform:translateY(-20%) rotate(225deg)}
.domanda .risposta{padding:0 22px 20px;max-width:62ch}

/* Passi del metodo */
.passo-elenco{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;list-style:none}
.passo-elenco li{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:16px;
  align-items:start;
  background:var(--superficie);
  border:1px solid var(--filo);
  border-radius:var(--raggio);
  padding:20px 22px;
}
.passo-elenco .numero{
  width:42px;height:42px;
  border:1.5px solid var(--oro);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-weight:700;
  color:var(--oro);
}

/* Moduli */
.modulo{display:flex;flex-direction:column;gap:14px}
.modulo label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-family:"Hanken Grotesk",system-ui,sans-serif;
  font-size:0.85rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.modulo .aiuto{font-family:"Petrona",Georgia,serif;font-size:0.85rem;font-weight:400;letter-spacing:0;text-transform:none;color:var(--smorzato)}
.modulo input[type="text"],
.modulo input[type="tel"],
.modulo input[type="email"],
.modulo select,
.modulo textarea{
  background:#20231A;
  border:1px solid var(--filo);
  border-radius:var(--raggio-piccolo);
  padding:12px 14px;
  color:var(--inchiostro);
  text-transform:none;
  letter-spacing:0;
  font-family:"Petrona",Georgia,serif;
  font-weight:400;
  font-size:1rem;
}
.modulo textarea{min-height:110px;resize:vertical}
.modulo input:focus,.modulo select:focus,.modulo textarea:focus{
  outline:none;
  border-color:var(--oro);
}
.modulo .scelta{
  flex-direction:row;
  align-items:flex-start;
  gap:10px;
  text-transform:none;
  letter-spacing:0;
  font-family:"Petrona",Georgia,serif;
  font-size:0.95rem;
  font-weight:400;
}
.modulo .scelta input{margin-top:4px;accent-color:var(--oro)}
.campo-nascosto{position:absolute;left:-9999px;height:0;overflow:hidden}
.riga-onesta{color:var(--smorzato);font-size:0.95rem;margin-top:8px}

/* Chiusura con modulo */
.chiusura{
  border-top:1px solid var(--filo);
  padding-block:clamp(40px,6vw,72px) 28px;
  background:#181A14;
}
.chiusura__corpo{
  display:grid;
  grid-template-columns:0.9fr 1.1fr;
  gap:clamp(28px,4vw,56px);
  align-items:start;
}
@media (max-width:860px){.chiusura__corpo{grid-template-columns:1fr}}
.chiusura__modulo h2{font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:10px}
.chiusura__modulo > p{color:var(--smorzato);margin-bottom:18px}
.chiusura__indice{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
@media (max-width:540px){.chiusura__indice{grid-template-columns:1fr}}
.chiusura__indice h3{margin-bottom:10px}
.chiusura__indice ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.chiusura__indice a{text-decoration:none;color:var(--inchiostro)}
.chiusura__indice a:hover{color:var(--oro)}
.chiusura__mappa-legenda{display:flex;flex-direction:column;gap:22px}
.chiusura__mappa-legenda address{font-style:normal;color:var(--smorzato);line-height:1.7}
.chiusura__legale{
  margin-top:36px;
  padding-top:22px;
  border-top:1px solid var(--filo);
  color:var(--smorzato);
  font-size:0.88rem;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.chiusura__legale p{max-width:none}

/* Avviso cookie: visibile di default */
.avviso-cookie{
  position:fixed;
  left:0;right:0;bottom:0;
  z-index:80;
  background:var(--superficie);
  border-top:2px solid var(--oro);
  padding:16px var(--passo);
  display:flex;
  gap:18px;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}
.avviso-cookie.nascosto{display:none}
.avviso-cookie p{margin:0;max-width:70ch}
.avviso-cookie__azioni{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.avviso-cookie a{color:var(--oro)}

.pagina-assente{padding-block:clamp(60px,10vw,120px)}
.pagina-assente h1{margin-bottom:16px}

.tassello--chiaro a{color:var(--scuro-su-chiaro);text-decoration:underline}
.tassello a.bottone{text-decoration:none}

.mappa-incasso{
  border:1px solid var(--filo);
  border-radius:var(--raggio);
  overflow:hidden;
  min-height:280px;
  background:var(--superficie);
}
.mappa-incasso iframe{width:100%;height:320px;border:0;display:block;filter:grayscale(.25) contrast(1.05)}
