@font-face{font-family:"Barlow Condensed";font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-condensed-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:400;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-latin-600-normal.woff2) format("woff2")}
:root{
  --ink:#18242E;--ink-2:#2A3B47;--steel:#4A6070;--concrete:#EEF0EC;--line:#D5DAD6;
  --paper:#fff;--amber:#F2A900;--amber-dark:#8A5A00;--wa:#1C7F4F;--text:#1E272E;
  --cond:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--sans:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --w:1180px;--r:6px
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--text);font:400 1.0625rem/1.65 var(--sans);padding-bottom:64px}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink);text-decoration-color:var(--amber);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--amber-dark)}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.wrap{max-width:var(--w);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px;top:0;background:var(--amber);color:var(--ink);padding:8px 12px;z-index:99}
.skip:focus{left:8px}
h1,h2,h3,.band-t,.fb-t,.bignum,.f-h{font-family:var(--cond);font-weight:700;letter-spacing:.005em;line-height:1.05;color:var(--ink)}
h2{font-size:clamp(1.6rem,3.2vw,2.1rem);margin:2.4rem 0 .8rem}
h3{font-size:1.3rem;margin:1.6rem 0 .5rem}
p{margin:0 0 1rem}
strong{font-weight:600}

/* header */
.top{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;gap:16px;min-height:68px}
.logo img{height:44px;width:auto}
.nav{margin-left:auto}
.menu-btn{cursor:pointer;font:600 1rem var(--sans);padding:8px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);color:var(--ink)}
.menu ul{list-style:none;margin:0;padding:8px;position:absolute;right:16px;top:64px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);min-width:220px;box-shadow:0 12px 30px rgba(24,36,46,.15)}
.menu li a{display:block;padding:9px 12px;text-decoration:none;font-weight:600}
.menu li a:hover{background:var(--concrete);color:var(--ink)}
.top-tel{display:none}
@media (min-width:1000px){
  .menu-btn{display:none}
  .menu ul{display:flex!important;position:static;border:0;box-shadow:none;padding:0;min-width:0;gap:2px}
  .menu li a{padding:8px 10px;font-size:.98rem}
  .top-tel{display:flex;flex-direction:column;align-items:flex-end;background:var(--ink);color:#fff;text-decoration:none;padding:6px 14px;border-radius:var(--r);font:700 1.35rem/1 var(--cond)}
  .top-tel span{font:600 .72rem/1.2 var(--sans);color:var(--amber)}
  .top-tel:hover{color:var(--amber)}
}
@media (max-width:999px){.menu ul:not(.open){display:none}}
@media (max-width:420px){.logo img{height:38px}}

/* breadcrumbs */
.crumbs ol{list-style:none;margin:0;padding:10px 16px;display:flex;flex-wrap:wrap;gap:4px 8px;font-size:.85rem;color:var(--steel)}
.crumbs li+li::before{content:"›";margin-right:8px;color:var(--steel)}
.crumbs a{color:var(--steel)}

/* hero */
.hero{background:var(--ink);color:#fff;position:relative}
.hero-in{display:grid;gap:28px;padding-top:34px;padding-bottom:40px;align-items:center}
@media (min-width:900px){.hero-in{grid-template-columns:1.1fr .9fr;padding-top:52px;padding-bottom:56px}.hero-in.noimg{grid-template-columns:1fr}}
.hero h1{color:#fff;font-size:clamp(2.1rem,5.4vw,3.6rem);margin:0 0 .9rem;max-width:18ch}
.hero .lead{color:#D7DEE3;font-size:1.1rem;max-width:56ch}
.bignum{display:inline-block;color:var(--amber);font-size:clamp(3rem,10vw,5.6rem);text-decoration:none;margin:.2rem 0 .3rem;letter-spacing:.01em}
.bignum:hover{color:#fff}
.hero-sub{color:#D7DEE3;font-size:1rem;margin:0}
.hero-sub a{color:#fff}
.hero-ph img{border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:0 0 0 6px var(--ink-2)}
.stripe{height:14px;background:repeating-linear-gradient(-45deg,var(--amber) 0 18px,var(--ink) 18px 36px);transform-origin:left center;animation:arm 1s cubic-bezier(.2,.7,.2,1) .15s both}
@keyframes arm{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){.stripe{animation:none}}

/* layout */
.layout{display:grid;gap:32px;padding-top:12px;padding-bottom:40px}
@media (min-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 360px;gap:48px}.layout.single{grid-template-columns:minmax(0,780px)}.side .formbox{position:sticky;top:96px}}
.content{max-width:760px}
.content>p:first-child{margin-top:1.6rem}
.content ul{padding-left:1.2rem}
.content li{margin:.35rem 0}
.ph{margin:1.6rem 0}
.ph img{border-radius:var(--r);width:100%}
.ph figcaption{font-size:.85rem;color:var(--steel);margin-top:6px}
blockquote{margin:1.4rem 0;padding:14px 18px;background:var(--concrete);border-left:5px solid var(--amber);border-radius:0 var(--r) var(--r) 0}
.note{font-size:.95rem;color:var(--steel)}
.cta-line{display:flex;flex-wrap:wrap;gap:10px;margin:1.4rem 0}
.cta-end{font-weight:600;margin-top:2rem}
.partner{font-size:.85rem;color:var(--steel)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 20px;border-radius:var(--r);font:700 1.2rem/1 var(--cond);letter-spacing:.02em;text-decoration:none;border:0;cursor:pointer}
.btn-amber{background:var(--amber);color:var(--ink)}
.btn-amber:hover{background:#ffbe1f;color:var(--ink)}
.btn-wa{background:var(--wa);color:#fff}
.btn-wa:hover{background:#156b41;color:#fff}
.btn-ink{background:var(--ink);color:#fff;width:100%}
.btn-ink:hover{background:var(--ink-2);color:var(--amber)}

/* liste */
.svc{list-style:none;padding:0!important}
.svc li{border-left:4px solid var(--amber);padding:6px 0 6px 14px;margin:10px 0}
.checks{list-style:none;padding:0!important}
.checks li{position:relative;padding-left:30px}
.checks li::before{content:"";position:absolute;left:2px;top:.45em;width:16px;height:16px;border-radius:3px;border:2px solid var(--ink);background:linear-gradient(var(--amber),var(--amber)) center/8px 8px no-repeat}
.steps{list-style:none;counter-reset:s;padding:0!important;display:grid;gap:14px}
@media (min-width:700px){.steps{grid-template-columns:1fr 1fr}}
.steps li{counter-increment:s;background:var(--concrete);border-radius:var(--r);padding:16px 16px 16px 64px;position:relative;margin:0}
.steps li::before{content:counter(s);position:absolute;left:16px;top:10px;font:700 2.4rem/1 var(--cond);color:var(--amber-dark)}
.steps strong{display:block;font-family:var(--cond);font-size:1.25rem;color:var(--ink)}
.steps span{font-size:.97rem}
.cols{list-style:none;padding:0!important;columns:2 220px;column-gap:24px}
.cols li{break-inside:avoid;margin:.25rem 0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a,.chips-list a{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-weight:600;background:var(--paper)}
.chips a:hover,.chips-list a:hover{border-color:var(--amber);background:#FFF6DD;color:var(--ink)}
.chips-list{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:8px}
.chips-list li{margin:0}
.brands{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.brands li{margin:0}
.brands a{display:block;height:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);text-decoration:none;background:var(--paper)}
.brands a:hover{border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--amber)}
.brands strong{display:block;font:700 1.5rem/1.1 var(--cond);color:var(--ink)}
.brands span{font-size:.82rem;color:var(--steel)}

/* faq */
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:14px 32px 14px 0;font-weight:600;position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:8px;font:700 1.6rem/1 var(--cond);color:var(--amber-dark)}
.faq details[open] summary::after{content:"–"}
.faq details>div{padding:0 0 12px}

/* form */
.formbox{background:var(--concrete);border-radius:var(--r);padding:20px;border-top:6px solid var(--amber)}
.fb-t{font-size:1.7rem;margin:0 0 .3rem}
.fb-s{font-size:.93rem;color:var(--steel)}
.form{display:grid;gap:12px}
.form label{display:grid;gap:4px;font-weight:600;font-size:.93rem}
.form label>span.lb{display:block}
.form .opt{font-weight:400;color:var(--steel)}
.form input[type=text],.form input[type=tel],.form input[type=email],.form select,.form textarea{width:100%;font:inherit;font-size:1rem;padding:10px 12px;border:1px solid #B9C1BC;border-radius:var(--r);background:#fff;color:var(--text)}
.form textarea{resize:vertical}
.row2{display:grid;gap:12px}
@media (min-width:480px){.row2{grid-template-columns:1fr 1fr}}
.seg{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 14px}
.seg legend{font-weight:600;font-size:.93rem;margin-bottom:4px;width:100%}
.seg label{display:flex;align-items:center;gap:6px;font-weight:400}
.form .chk{display:flex;gap:8px;align-items:flex-start;font-weight:400;font-size:.85rem}
.chk input{margin-top:4px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* banda CTA */
.band{background:var(--ink);color:#fff;position:relative;margin-top:24px}
.band::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:repeating-linear-gradient(-45deg,var(--amber) 0 18px,var(--ink) 18px 36px)}
.band-in{display:grid;gap:18px;padding-top:40px;padding-bottom:32px;align-items:center}
@media (min-width:800px){.band-in{grid-template-columns:1fr auto}}
.band-t{color:#fff;font-size:clamp(1.6rem,3.4vw,2.2rem);margin:0 0 .3rem}
.band p{margin:0;color:#D7DEE3}
.band-btn{display:flex;flex-wrap:wrap;gap:10px}

/* footer */
.foot{background:#111B22;color:#C5CED4;font-size:.93rem}
.foot a{color:#E8EDF0;text-decoration-color:rgba(242,169,0,.6)}
.foot a:hover{color:var(--amber)}
.foot-in{display:grid;gap:28px;padding-top:44px;padding-bottom:28px}
@media (min-width:900px){.foot-in{grid-template-columns:1.2fr 1fr 1.3fr 1fr}}
.f-brand img{height:44px;width:auto;margin-bottom:12px}
.f-tel a{font:700 1.8rem/1 var(--cond);color:var(--amber);text-decoration:none}
.f-h{color:#fff;font-size:1.25rem;margin:0 0 .6rem}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin:.3rem 0}
.f-2col{columns:2 140px;column-gap:16px}
.foot-legal{border-top:1px solid #26343E;padding-top:16px;padding-bottom:20px}
.foot-legal p{margin:.3rem 0}
.disc{font-size:.8rem;color:#8E9BA4}

/* barra contatto mobile */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1.6fr 1fr;box-shadow:0 -4px 14px rgba(0,0,0,.18)}
.dock a{display:flex;align-items:center;justify-content:center;min-height:56px;font:700 1.25rem/1 var(--cond);text-decoration:none;letter-spacing:.02em}
.dock-tel{background:var(--amber);color:var(--ink)}
.dock-wa{background:var(--wa);color:#fff}
@media (min-width:1000px){.dock{display:none}body{padding-bottom:0}}
