/* NUMEN + VELVET — pagine di servizio (lavora con noi, privacy, cookie, 404). Le pagine con le tavole usano fedele.css. */
@font-face{font-family:Gotham;src:url("../fonts/gotham-book.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Gotham;src:url("../fonts/gotham-medium.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Gotham;src:url("../fonts/gotham-bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Gotham;src:url("../fonts/gotham-black.woff2") format("woff2");font-weight:900;font-display:swap}

:root{
  --avorio:#f3eee8; --inchiostro:#0d0b0a; --fondo:#000000; --secondario:#aaa39c;
  --s1:16px; --s2:32px; --s3:64px; --sez:96px;
  --margine:24px; --contenitore:1200px; --colonna:62ch;
  --t-testo:17px; --t-h2:16px; --t-azione:28px; --t-nota:16px;
}
@media (min-width:960px){
  :root{--margine:48px; --sez:160px; --t-testo:18px; --t-h2:18px; --t-azione:44px}
}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:72px}
body{background:var(--fondo);color:var(--avorio);font:400 var(--t-testo)/1.65 Gotham,"Montserrat",system-ui,sans-serif}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.salta{position:absolute;left:8px;top:-60px;z-index:50;padding:12px 20px;background:var(--avorio);color:var(--inchiostro);border-radius:999px}
.salta:focus{top:8px}
.contenitore{max-width:var(--contenitore);margin:0 auto;padding:0 var(--margine)}
h1,h2{text-wrap:balance}
:focus-visible{outline:2px solid var(--avorio);outline-offset:3px}

/* bottoni */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 28px;border-radius:999px;
  font:500 16px/1 Gotham,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1.5px solid var(--avorio);cursor:pointer;transition:background .2s,color .2s}
.btn-primario{background:var(--avorio);color:var(--inchiostro)}
.btn-primario:hover{background:#fff}
.btn-secondario{background:transparent;color:var(--avorio)}
.btn-secondario:hover{background:rgba(243,238,232,.12)}

/* header come nelle tavole: solo hamburger centrato */
.header-semplice{position:sticky;top:0;z-index:25;padding-top:env(safe-area-inset-top);box-sizing:content-box;display:flex;justify-content:center;align-items:center;height:64px;background:#000}
.hb-s{display:flex;align-items:center;justify-content:center;width:64px;height:48px;padding:0;background:none;border:0;cursor:pointer}
.hb-s img{width:40px;height:auto}

/* menu a tutto schermo */
.menu{position:fixed;inset:0;z-index:30;background:var(--fondo);display:flex;flex-direction:column;padding:16px var(--margine) calc(32px + env(safe-area-inset-bottom));
  overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.menu.aperto{opacity:1;visibility:visible}
.menu .chiudi{align-self:flex-start;width:48px;height:48px;margin-left:-12px;background:none;border:0;color:var(--avorio);font-size:32px;line-height:1;cursor:pointer}
.menu nav{margin-top:var(--s2)}
.menu nav a{display:flex;align-items:center;gap:16px;min-height:56px;font-size:24px;text-decoration:none;letter-spacing:.04em}
.menu .piede{margin-top:var(--s3)}
@media (min-width:960px){.menu{padding-left:calc((100vw - var(--contenitore))/2 + var(--margine))}}
.menu-semplice{align-items:center;justify-content:center}
.menu-semplice .chiudi{position:absolute;top:16px;left:50%;transform:translateX(-50%);margin:0}
.voci-semplici{display:flex;flex-direction:column;align-items:center;margin:0}
.voci-semplici a{font:400 clamp(15px,1.6vw,22px) Gotham,sans-serif!important;letter-spacing:.16em;min-height:52px}
.voci-semplici a.voce-home{font-weight:700!important;font-size:calc(1.3 * clamp(15px,1.6vw,22px))!important}

/* testo + foto (lavora con noi) */
.due{display:grid;gap:var(--s2)}
.due figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media (min-width:960px){.due{grid-template-columns:1fr 1fr;gap:var(--s3);align-items:center}}
.entra-vista{opacity:0;transform:translateY(12px);transition:opacity .7s,transform .7s}
.entra-vista.vista{opacity:1;transform:none}

/* moduli */
form{max-width:480px;display:grid;gap:24px}
label{display:flex;align-items:flex-end;min-height:44px;padding-bottom:8px;font-size:var(--t-nota)}
.facoltativo{color:var(--secondario);margin-left:8px}
input[type=text],input[type=email],input[type=tel],select{width:100%;height:48px;padding:0 20px;border-radius:999px;border:1.5px solid #8d8680;background:var(--avorio);color:var(--inchiostro);font:400 16px Gotham,sans-serif}
textarea{width:100%;min-height:144px;padding:14px 20px;border-radius:24px;border:1.5px solid #8d8680;background:var(--avorio);color:var(--inchiostro);font:400 16px/1.5 Gotham,sans-serif;resize:vertical}
input[type=file]{width:100%;min-height:48px;padding:10px 0;font:400 16px Gotham,sans-serif;color:var(--avorio)}
input[type=file]::file-selector-button{min-height:44px;margin-right:16px;padding:0 20px;border-radius:999px;border:1.5px solid var(--avorio);background:transparent;color:var(--avorio);font:500 14px Gotham,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
[aria-invalid=true]{border-color:#ff6b6b!important;box-shadow:0 0 0 2px #ff6b6b}
.nota-campo{margin-top:8px;font-size:var(--t-nota);color:var(--secondario)}
.errore{display:none;margin-top:8px;font-size:var(--t-nota);color:#ffb3b3}
.errore.visibile{display:block}
.consenso{display:flex;gap:12px;align-items:flex-start;padding:0;font-size:var(--t-nota);color:#d9d2cb;cursor:pointer}
.consenso a{display:inline}
.consenso input{appearance:none;flex:none;width:44px;height:44px;padding:11px;margin:-10px -2px -11px -11px;border:0;border-radius:4px;cursor:pointer;background:var(--avorio) content-box}
.consenso input:checked{background:var(--avorio) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3L13 4.5' fill='none' stroke='%230d0b0a' stroke-width='2'/%3E%3C/svg%3E") center/16px no-repeat content-box}
.consenso input[aria-invalid=true]{box-shadow:none;background-color:#ffb3b3}
.trappola{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.inviato,.fallito{display:none;max-width:480px;padding:var(--s2);border:1.5px solid var(--avorio);border-radius:24px}
.inviato.visibile,.fallito.visibile{display:block}
.inviato strong,.fallito strong{display:block;font-weight:500;margin-bottom:8px}
.fallito a{display:inline-flex;min-height:44px;align-items:center}
button[aria-busy=true]{opacity:.6;cursor:progress}

/* pagine */
.pagina{padding:var(--s3) 0 var(--sez)}
.pagina h1{font:500 var(--t-azione)/1.2 Gotham,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-bottom:var(--s2)}
.pagina h2{font:500 var(--t-h2)/1.3 Gotham,sans-serif;letter-spacing:.18em;text-transform:uppercase;margin:var(--s3) 0 var(--s1)}
.pagina p+p,.pagina ul+p,.pagina p+ul{margin-top:var(--s1)}
.pagina ul{padding-left:1.2em}
.pagina .intro{margin-bottom:var(--s3);max-width:var(--colonna)}
.legale{max-width:var(--colonna)}

.footer{border-top:1px solid rgba(243,238,232,.18);padding:var(--s2) 0 calc(var(--s2) + env(safe-area-inset-bottom));font-size:var(--t-nota);color:var(--secondario)}
.footer .contenitore{display:flex;flex-wrap:wrap;gap:4px 24px;align-items:center}
.footer a{display:inline-flex;min-height:44px;align-items:center}
.footer .dati-footer{flex-basis:100%;line-height:1.6}

/* WhatsApp: pulsante fisso in basso a destra, nei colori del sito */
.wa{position:fixed;right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:20;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:1.5px solid #fff;border-radius:50%;background:#000;box-shadow:0 6px 12px rgba(0,0,0,.3)}
.wa svg{width:28px;height:28px;fill:#fff}
.wa:focus-visible{outline:2px solid #fff;outline-offset:3px}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}
  .entra-vista{opacity:1;transform:none}}
