/* Sito azz! · stile urban: carta / nero / arancio, raggio 0, bordi 1,5 px, strisce a 12°. Token da brands/azz/tokens.css. */
:root{
  --paper:#F2EDE2;--ink:#171714;--orange:#FF5A24;--food:#FFB38B;--fit:#9AB7FF;--beauty:#E7A4C7;
  --bg:var(--paper);--fg:var(--ink);--muted:#5F5B53;--line:#171714;--card:#FFFFFF;--band:#171714;--band-fg:#F2EDE2;--band-muted:#B8B2A6;
  --fd:"Barlow Condensed","Arial Narrow",Impact,sans-serif;--fb:Manrope,"Helvetica Neue",Arial,sans-serif;--fl:Unbounded,"Arial Black",sans-serif;
  --angle:12deg;--w:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 var(--fb);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
.in{max-width:var(--w);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--fd);font-weight:900;text-transform:uppercase;line-height:.92;letter-spacing:-.01em;margin:0;text-wrap:balance}
h1{font-size:clamp(52px,9vw,116px);margin-top:14px}
h1.h1s{font-size:clamp(40px,6vw,76px)}
h2{font-size:clamp(38px,5.5vw,68px);margin-top:12px}
h2.h2s{font-size:clamp(30px,4.2vw,52px)}
h3{font-size:clamp(24px,3vw,32px)}
p{margin:0}
a{color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.kicker{font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}
.kicker.ink{color:var(--ink)}
.muted{color:var(--muted)}
.band .muted{color:var(--band-muted)}
.small{font-size:13px}
.lead{font-size:clamp(18px,2vw,22px);font-weight:600;max-width:34em;margin-top:22px}
.fine{font-size:13px;margin-top:14px}
.cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:.04em;padding:16px 22px;border:1.5px solid var(--ink);background:var(--orange);color:var(--ink);text-decoration:none;cursor:pointer;font-family:var(--fb);transition:transform .12s,box-shadow .12s}
.btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink)}
.btn.ghost{background:transparent;color:inherit;border-color:currentColor}
.btn.inv{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn.inv:hover{box-shadow:4px 4px 0 var(--paper)}
.band .btn:hover{box-shadow:4px 4px 0 var(--paper)}
:where(a,button,summary,input,select):focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.excl{display:inline-block;color:var(--orange);transform:skewX(calc(var(--angle) * -1))}
.excl.ink{color:var(--ink)}
.nw{white-space:nowrap}
.stripes{height:18px;background:repeating-linear-gradient(var(--angle),var(--orange) 0 18px,transparent 18px 36px)}
.stripes.ink{background:repeating-linear-gradient(var(--angle),var(--ink) 0 18px,transparent 18px 36px)}
.soon{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border:1.5px solid currentColor;padding:2px 6px;margin-left:6px;vertical-align:middle;font-family:var(--fb);white-space:nowrap}
section{padding-block:72px}
.band{background:var(--band);color:var(--band-fg)}
@media (max-width:760px){section{padding-block:48px}}

/* barra */
.nav{background:var(--band);color:var(--band-fg);position:sticky;top:0;z-index:9;border-bottom:1.5px solid var(--orange)}
.nav .in{display:flex;align-items:center;gap:22px;min-height:64px;position:relative}
.logo{font-family:var(--fl);font-weight:900;font-size:26px;letter-spacing:-.06em;text-decoration:none}
.nav nav{margin-left:auto}
.nav nav>ul{display:flex;gap:22px;list-style:none;margin:0;padding:0;font-weight:700;font-size:14px}
.nav nav a{text-decoration:none;opacity:.85}
.nav nav a:hover,.nav nav a[aria-current]{opacity:1;color:var(--orange)}
.has-sub{position:relative}
.sub{display:none;position:absolute;top:100%;left:-16px;background:var(--band);border:1.5px solid var(--orange);list-style:none;margin:0;padding:10px 0;min-width:220px;z-index:2}
.sub li a{display:block;padding:8px 16px}
.has-sub:hover .sub,.has-sub:focus-within .sub{display:block}
.nav-cta{padding:10px 14px;font-size:13px}
.menu{display:none;margin-left:auto;background:none;border:1.5px solid var(--band-fg);width:44px;height:44px;padding:9px;flex-direction:column;justify-content:space-between;cursor:pointer}
.menu span:not(.sr){display:block;height:2px;background:var(--band-fg)}
@media (max-width:860px){
  .menu{display:flex}
  .nav nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--band);border-bottom:1.5px solid var(--orange);padding:12px 16px 20px}
  .nav.open nav{display:block}
  .nav nav>ul{flex-direction:column;gap:6px;font-size:18px}
  .nav nav>ul>li>a{display:block;padding:10px 0}
  .sub{display:block;position:static;border:0;padding:0 0 6px 16px}
  .nav-cta{display:none}
}

/* hero */
.hero .in{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero.short .in{grid-template-columns:1fr}
.hero.short{padding-block:56px 40px}
@media (max-width:860px){.hero .in{grid-template-columns:1fr}}
.phones{display:flex;gap:16px;justify-content:center;align-items:flex-end}
.phone{margin:0;width:min(230px,44%);border:1.5px solid var(--ink);background:var(--ink);padding:6px;box-shadow:10px 10px 0 var(--ombra,var(--orange))}
.phone img{display:block;width:100%;height:auto}
.phones .phone:nth-child(2){margin-bottom:46px}

/* famiglie */
.fam{display:grid;grid-template-columns:repeat(3,1fr);border:1.5px solid var(--line);margin-top:36px}
.fam>div{padding:28px 24px 30px;border-right:1.5px solid var(--line);min-width:0}
.fam>div:last-child{border-right:0}
@media (max-width:860px){.fam{grid-template-columns:1fr}.fam>div{border-right:0;border-bottom:1.5px solid var(--line)}.fam>div:last-child{border-bottom:0}}
.tag{display:inline-block;font-family:var(--fl);font-weight:900;font-size:20px;letter-spacing:-.05em;padding:4px 10px;color:var(--ink)}
.fam h3{margin-top:18px}
.fam p{margin-top:10px;font-size:15px}
.go{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}
.go a{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.08em;text-decoration:none}
.go a:hover{color:var(--orange)}

/* colonne */
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.cols2.top{align-items:start}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px}
.cols4{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:40px}
@media (max-width:860px){.cols2,.cols3,.cols4{grid-template-columns:1fr}.cols4{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.cols4{grid-template-columns:1fr}}
.big{font-family:var(--fd);font-weight:900;font-size:clamp(56px,8vw,96px);line-height:.9;color:var(--orange);font-variant-numeric:tabular-nums}
.cols3 h3,.cols4 h3{margin-top:8px}
.cols3 p,.cols4 p{margin-top:10px;max-width:30em}
.esempi p{border-left:4px solid var(--orange);padding-left:16px;font-size:17px;font-weight:500}
.more{margin-top:24px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px}
.more a{text-decoration:none}.more a:hover{color:var(--orange)}

/* pacchetti */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
@media (max-width:860px){.plans{grid-template-columns:1fr}}
.plan{border:1.5px solid var(--line);padding:26px 24px 28px;background:var(--card);color:var(--ink);display:flex;flex-direction:column;min-width:0}
.plan.hot{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.band .plan{border-color:var(--paper)}
.band .plan.hot{border-color:var(--orange)}
.plan .name{font-family:var(--fd);font-weight:900;font-size:40px;text-transform:uppercase;line-height:1}
.plan .sub{font-size:14px;margin-top:4px;opacity:.75}
.plan .price{margin-top:22px;font-family:var(--fd);font-weight:900;font-size:64px;line-height:1;font-variant-numeric:tabular-nums}
.plan .price small{font-family:var(--fb);font-weight:700;font-size:15px;margin-left:6px}
.plan .act{font-size:14px;margin-top:6px;opacity:.8}
.plan ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px;font-size:15px}
.plan li,.check li,.feat li{padding-left:22px;position:relative}
.plan li::before,.check li::before,.feat li::before{content:"";position:absolute;left:0;top:8px;width:11px;height:11px;background:var(--orange);transform:skewX(calc(var(--angle) * -1))}
.soonlist li::before{background:transparent;border:1.5px solid var(--orange)}
.plan .btn{margin-top:26px;align-self:flex-start}
.plan .btn.ghost{color:var(--ink);border-color:var(--ink)}
.plan.hot .btn{border-color:var(--paper)}
.cond{margin-top:26px;font-size:14px;max-width:62em}
.check{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px;font-size:16px}
.check.due{grid-template-columns:1fr 1fr;gap:12px 32px}
@media (max-width:860px){.check.due{grid-template-columns:1fr}}

/* passi */
.steps{display:grid;gap:18px;margin-top:28px}
.step{display:grid;grid-template-columns:48px 1fr;gap:16px}
.step b{font-family:var(--fd);font-size:40px;font-weight:900;color:var(--orange);line-height:1}

/* faq */
.faq{margin-top:32px}
details{border-top:1.5px solid var(--line);padding:18px 0}
.band details{border-color:var(--paper)}
details:last-of-type{border-bottom:1.5px solid var(--line)}
summary{font-weight:800;font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--fd);font-size:28px;color:var(--orange);line-height:1}
details[open] summary::after{content:"–"}
details p{margin-top:10px;max-width:62em}

/* pagina settore */
.sec-hero{background:var(--fam,var(--food));color:var(--ink)}
.sec-hero .in{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}
@media (max-width:860px){.sec-hero .in{grid-template-columns:1fr}}
.sec-hero .phone{width:min(240px,60%);margin:0 auto}
.sec-hero .muted{color:var(--ink);opacity:.75}
.pain{display:grid;grid-template-columns:repeat(3,1fr);border:1.5px solid var(--paper);margin-top:40px}
.pain>div{padding:26px 24px;border-right:1.5px solid var(--paper);min-width:0}
.pain>div:last-child{border-right:0}
.pain .big{font-size:clamp(44px,6vw,72px)}
.pain p{margin-top:10px}
@media (max-width:860px){.pain{grid-template-columns:1fr}.pain>div{border-right:0;border-bottom:1.5px solid var(--paper)}.pain>div:last-child{border-bottom:0}}
.situazioni{margin:28px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;font-size:15px;color:var(--band-muted)}
.situazioni li{border-left:3px solid var(--orange);padding-left:14px}
@media (max-width:860px){.situazioni{grid-template-columns:1fr}}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.feat+.feat{margin-top:72px}
.feat.r>div:first-child{order:2}
@media (max-width:860px){.feat{grid-template-columns:1fr;gap:28px}.feat.r>div:first-child{order:0}.feat+.feat{margin-top:48px}}
.feat ul{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:14px;font-size:16px}
.feat .phone{margin:0 auto;width:min(260px,70%)}
.cta-band{background:var(--orange);color:var(--ink)}
.cta-band .in{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(32px,4.5vw,54px);margin:0}

/* modulo demo */
form{display:grid;gap:14px;border:1.5px solid var(--paper);padding:26px;min-width:0}
label{display:grid;gap:6px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
label .muted{text-transform:none;letter-spacing:0;font-weight:500}
input,select{font:16px var(--fb);padding:13px 14px;border:1.5px solid var(--paper);background:transparent;color:inherit;border-radius:0;width:100%}
select option{color:var(--ink)}
input:focus,select:focus{outline:3px solid var(--orange);outline-offset:0}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.consenso{grid-template-columns:auto 1fr;align-items:start;text-transform:none;letter-spacing:0;font-weight:500;font-size:14px}
.consenso input{width:20px;height:20px;margin-top:2px;accent-color:var(--orange)}
.ok,.err{border:1.5px solid var(--orange);padding:14px 16px;font-weight:600}
.err{border-color:#FF9C7A;color:#FFB39B}
button[disabled]{opacity:.6;cursor:progress;transform:none!important;box-shadow:none!important}
.contact-card{border:1.5px solid var(--paper);padding:28px}
.big-contact{font-family:var(--fd);font-weight:900;font-size:clamp(30px,4vw,44px);line-height:1.1;margin-top:10px;word-break:break-word}

/* pagine legali */
.prose{max-width:46em;display:grid;gap:16px;font-size:16px}
.note{border:1.5px dashed var(--orange);padding:10px 14px;font-size:13px}

/* piè di pagina */
footer{padding-block:48px;font-size:14px}
footer .in{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px}
@media (max-width:860px){footer .in{grid-template-columns:1fr 1fr}}
@media (max-width:520px){footer .in{grid-template-columns:1fr}}
footer .logo{font-size:30px}
footer p{margin-top:10px;max-width:30em}
footer h4{font-family:var(--fb);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;color:var(--orange)}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}
footer a{text-decoration:none;opacity:.85}
footer a:hover{opacity:1;color:var(--orange)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}.btn:hover{transform:none}}
/* Banner cookie: in fondo, due scelte di pari peso (Garante privacy). */
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--band);color:var(--band-fg);border-top:3px solid var(--orange);padding-block:16px calc(16px + env(safe-area-inset-bottom,0px))}
.cookie-bar .in{display:flex;gap:16px 24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cookie-bar p{max-width:46em;font-size:14px}
.cookie-bar a{color:var(--orange)}
.cookie-btn{display:flex;gap:10px}
.cookie-bar .btn{padding:12px 18px;font-size:14px;color:var(--band-fg);border-color:var(--band-fg)}
button.link{background:none;border:0;padding:0;font:inherit;color:inherit;opacity:.85;cursor:pointer;text-decoration:none}
button.link:hover{opacity:1;color:var(--orange)}
