/* Landing a tutta larghezza Heiwit (23/10/2026) — prima pagina: «Battery as a Service».
   Tutto è scopato sotto .hl-page per non toccare Divi. Token del brand in :root della pagina.
   I font Inter sono quelli già presenti in perche-heiwit/fonts (nessun duplicato). */
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("../perche-heiwit/fonts/inter-500.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("../perche-heiwit/fonts/inter-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

.hl-main{padding:0;margin:0}
.hl-page{
  --brand:#F08227;--brand-soft:#F0B580;--ocean:#034D66;--ocean-2:#2F4858;--sky:#84ADBA;
  --ink:#403C4E;--paper:#FFFFFF;--sand:#F5F0E8;
  --hl-line:rgba(3,77,102,.2);
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-weight:500;font-size:17px;line-height:1.6;color:var(--ink);background:var(--paper);
  overflow-x:clip;
}
.hl-page *,.hl-page *::before,.hl-page *::after{box-sizing:border-box}
/* Reset di Divi a specificità zero (:where): le classi .hl-* vincono sempre. */
.hl-page :where(p,h1,h2,h3,ul,ol,dl,figure,table){margin:0;padding:0}
.hl-page :where(p){margin-bottom:1em}
.hl-page :where(p:last-child){margin-bottom:0}
.hl-page :where(ul,ol){list-style:none}
.hl-page :where(h1,h2,h3){color:inherit;font-weight:700;line-height:1.12;letter-spacing:-.02em}
.hl-page :where(h3){font-size:24px;margin-bottom:.5em}
.hl-page strong{font-weight:700}
.hl-page svg{display:block}
.hl-page svg[hidden]{display:none}
.hl-page img{display:block;max-width:100%;height:auto}
#main-content .hl-page a{color:var(--ocean)!important;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .18s ease}
#main-content .hl-page a:hover{color:var(--brand)!important}
.hl-page :focus-visible{outline:3px solid var(--brand);outline-offset:4px;border-radius:4px}
.hl-page button{font:inherit;color:inherit}
.hl-page .hl-num{font-variant-numeric:tabular-nums}

.hl-wrap{width:min(100% - 48px,1200px);margin-inline:auto}
@media (max-width:767px){.hl-wrap{width:min(100% - 32px,1200px)}}

/* Kicker: su fondo chiaro l'arancio a 14 px non regge il contrasto AA, quindi testo --ocean con trattino arancio. */
.hl-kicker{font-size:14px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ocean);margin-bottom:14px;display:flex;align-items:center;gap:10px}
.hl-kicker::before{content:"";flex:none;width:24px;height:3px;border-radius:2px;background:var(--brand)}
.hl-kicker--light{color:var(--brand-soft)}
.hl-h2{font-size:clamp(30px,3.6vw,44px);max-width:24ch;margin-bottom:18px}
.hl-h2--light{color:#fff}
.hl-lead{font-size:19px;line-height:1.6;max-width:64ch;margin-bottom:28px}
.hl-lead--light{color:rgba(255,255,255,.84)}
.hl-note{font-size:15px;line-height:1.55;color:var(--ocean-2);max-width:70ch}
.hl-note--light{color:rgba(255,255,255,.72)}
.hl-link{font-weight:700}
#main-content .hl-page .hl-link--light{color:#fff!important}
#main-content .hl-page .hl-link--light:hover{color:var(--brand-soft)!important}

/* Bottoni: primario arancio con testo --ink (contrasto AA), secondario a bordo --ocean. */
.hl-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 26px;border-radius:8px;background:var(--brand);font-size:18px;font-weight:700;line-height:1.2;text-decoration:none!important;transition:transform .18s ease,background-color .18s ease}
#main-content .hl-page .hl-btn{color:var(--ink)!important}
.hl-btn:hover{background:#f3934a;transform:translateY(-1px)}
.hl-btn--ghost{background:transparent;border:2px solid var(--ocean)}
#main-content .hl-page .hl-btn--ghost{color:var(--ocean)!important}
.hl-btn--ghost:hover{background:var(--ocean);transform:none}
#main-content .hl-page .hl-btn--ghost:hover{color:#fff!important}
.hl-btn--ghost-light{border-color:rgba(255,255,255,.7)}
#main-content .hl-page .hl-btn--ghost-light{color:#fff!important}
.hl-btn--ghost-light:hover{background:#fff;border-color:#fff}
#main-content .hl-page .hl-btn--ghost-light:hover{color:var(--ocean)!important}
.hl-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:28px}

/* Sezioni */
.hl-page section{padding:96px 0;position:relative}
@media (max-width:767px){.hl-page section{padding:56px 0}}
.hl-head{margin-bottom:40px}
@media (max-width:767px){.hl-head{margin-bottom:28px}}

/* Icone lineari bianche in cerchio --ocean (card su fondo chiaro). */
.hl-icon{width:48px;height:48px;border-radius:50%;background:var(--ocean);color:#fff;display:grid;place-items:center;flex:none}
.hl-icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hl-icon--light{background:transparent;border:1.5px solid var(--brand-soft);color:var(--brand-soft)}

/* ---------- Hero ---------- */
.hl-hero{background:var(--ocean);color:#fff;padding:80px 0 88px;overflow:hidden;isolation:isolate}
.hl-hero::before{content:"";position:absolute;inset:0;z-index:0;background-image:radial-gradient(circle at 1px 1px,rgba(132,173,186,.22) 1px,transparent 1.5px);background-size:34px 34px}
.hl-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hl-hero__title{font-size:clamp(36px,5vw,62px);line-height:1.05;margin-bottom:24px}
.hl-hero__l1{display:block;color:var(--brand)}
.hl-hero__l2{display:block;color:#fff;font-size:.6em;line-height:1.2;margin-top:14px;letter-spacing:-.01em}
.hl-hero__lead{font-size:18px;line-height:1.65;color:rgba(255,255,255,.84);max-width:58ch;margin-bottom:28px}
.hl-chips{display:flex;flex-wrap:wrap;gap:10px}
.hl-chips li{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:700;color:#fff;background:rgba(255,255,255,.06)}
.hl-hero__media{position:relative;margin:0;justify-self:center;max-width:380px;width:100%}
.hl-hero__media img{width:100%;border:1px solid var(--brand);border-radius:12px;background:#dcdcdc}
.hl-hero__media figcaption{margin-top:12px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.72)}
@media (max-width:980px){.hl-hero__grid{grid-template-columns:1fr;gap:36px}.hl-hero{padding:48px 0 64px}.hl-hero__media{max-width:300px;justify-self:start}}

/* ---------- Il modello: testo + tabella di confronto ---------- */
.hl-modello{background:var(--paper)}
.hl-modello__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
@media (max-width:980px){.hl-modello__grid{grid-template-columns:1fr;gap:36px}}
.hl-modello__punti{margin-top:24px;display:grid;gap:16px}
.hl-modello__punti li{display:flex;gap:14px;align-items:flex-start;font-size:16px;line-height:1.55}
.hl-modello__punti li::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--brand);margin-top:9px}
.hl-table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5;border:1px solid var(--hl-line);border-radius:12px;overflow:hidden}
.hl-table th,.hl-table td{padding:14px 16px;text-align:left;vertical-align:top;border-top:1px solid var(--hl-line)}
.hl-table thead th{border-top:0;background:var(--sand);color:var(--ocean);font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.hl-table th[scope=row]{color:var(--ocean-2);font-weight:700;width:30%}
.hl-table td.hl-table__baas{background:rgba(240,130,39,.07);font-weight:700;color:var(--ink)}
.hl-table__wrap{overflow:hidden;border-radius:12px}
@media (max-width:767px){
  .hl-table,.hl-table thead,.hl-table tbody,.hl-table tr,.hl-table th,.hl-table td{display:block;width:100%}
  .hl-table thead{display:none}
  .hl-table tr{border-top:1px solid var(--hl-line);padding:12px 0}
  .hl-table tr:first-child{border-top:0}
  .hl-table th[scope=row]{padding:0 14px 6px;width:auto;border:0;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
  .hl-table td{border:0;padding:4px 14px}
  .hl-table td::before{content:attr(data-label);display:block;font-size:13px;font-weight:700;color:var(--ocean);margin-bottom:2px}
}

/* ---------- Come funziona: cinque tappe ---------- */
.hl-percorso{background:var(--sand)}
.hl-steps{counter-reset:tappa;display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:8px}
.hl-steps li{counter-increment:tappa;background:var(--paper);border:1px solid var(--brand);border-radius:12px;padding:26px 24px 24px;position:relative;display:flex;flex-direction:column;gap:10px}
.hl-steps li::before{content:counter(tappa,decimal-leading-zero);display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ocean);color:#fff;font-size:16px;font-weight:700;letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-bottom:6px}
.hl-steps h3{font-size:20px;margin:0}
.hl-steps p{font-size:15.5px;line-height:1.55;color:var(--ocean-2);margin:0}
@media (max-width:1100px){.hl-steps{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.hl-steps{grid-template-columns:1fr;gap:16px}}

/* ---------- A chi si rivolge: card dei destinatari ---------- */
.hl-target{background:var(--paper)}
.hl-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.hl-card{background:var(--paper);border:1px solid var(--brand);border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:12px}
.hl-card h3{font-size:22px;margin:4px 0 0}
.hl-card p{font-size:15.5px;line-height:1.55;color:var(--ocean-2);margin:0}
.hl-card p.hl-card__esito{color:var(--ink)}
.hl-card p.hl-card__esito strong{color:var(--ocean)}
.hl-card__link{font-size:14px;font-weight:700;margin-top:auto;padding-top:6px}
@media (max-width:980px){.hl-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.hl-cards{grid-template-columns:1fr;gap:16px}.hl-card{padding:22px}}

/* ---------- Partner: fascia a due colonne su --ocean-2 ---------- */
.hl-partner{background:var(--ocean-2);color:#fff;padding:64px 0}
.hl-partner__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.hl-partner__lista{display:grid;gap:12px;margin-top:8px}
.hl-partner__lista li{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.5;color:rgba(255,255,255,.88)}
.hl-partner__lista li svg{flex:none;width:22px;height:22px;margin-top:3px;stroke:var(--brand);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hl-partner__box{border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:28px;background:rgba(255,255,255,.04)}
.hl-partner__box h3{font-size:20px;color:#fff;margin-bottom:10px}
.hl-partner__box p{font-size:15.5px;color:rgba(255,255,255,.82);margin-bottom:18px}
@media (max-width:980px){.hl-partner__grid{grid-template-columns:1fr;gap:28px}}

/* ---------- Benefici su fondo --ocean ---------- */
.hl-benefici{background:var(--ocean);color:#fff}
.hl-benefici__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 40px}
.hl-benefici__grid li{display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:start}
.hl-benefici__grid h3{font-size:20px;color:#fff;margin:4px 0 8px}
.hl-benefici__grid p{font-size:15.5px;line-height:1.55;color:rgba(255,255,255,.8);margin:0}
@media (max-width:980px){.hl-benefici__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.hl-benefici__grid{grid-template-columns:1fr;gap:24px}}

/* ---------- Cosa comprende: elenco a spunta ---------- */
.hl-include{background:var(--paper)}
.hl-include__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.hl-check{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px}
.hl-check li{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.5;padding:10px 0;border-bottom:1px solid var(--hl-line)}
.hl-check li svg{flex:none;width:22px;height:22px;margin-top:3px;stroke:var(--brand);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hl-include__nota{margin-top:24px;padding:18px 20px;border-left:4px solid var(--sky);background:var(--sand);border-radius:0 8px 8px 0;font-size:15px;line-height:1.55;color:var(--ocean-2)}
@media (max-width:980px){.hl-include__grid{grid-template-columns:1fr;gap:32px}}
@media (max-width:640px){.hl-check{grid-template-columns:1fr;gap:4px}}

/* ---------- Fascia divisoria (una sola per pagina): gradiente --ocean → --brand ---------- */
.hl-fascia{background:linear-gradient(90deg,var(--ocean) 0%,var(--brand) 100%);color:#fff;padding:56px 0}
.hl-fascia__grid{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}
.hl-fascia h2{font-size:clamp(26px,3vw,36px);color:#fff;max-width:26ch;margin:0}
.hl-fascia p{font-size:17px;color:rgba(255,255,255,.9);max-width:60ch;margin:12px 0 0}
@media (max-width:980px){.hl-fascia__grid{grid-template-columns:1fr}}

/* ---------- Perché Heiwit ---------- */
.hl-perche{background:var(--sand)}

/* ---------- Domande frequenti ---------- */
.hl-faq{background:var(--paper)}
.hl-faq__wrap{max-width:860px}
.hl-faq__list{margin-top:24px;border-top:1px solid var(--hl-line)}
.hl-faq__item{border-bottom:1px solid var(--hl-line)}
.hl-faq__q{margin:0;font-size:19px}
.hl-faq__q button{width:100%;text-align:left;background:none;border:0;padding:18px 48px 18px 0;cursor:pointer;position:relative;font-weight:700;line-height:1.35}
.hl-faq__q button::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:translateY(-70%) rotate(45deg);transition:transform .2s ease}
.hl-faq__item.is-open .hl-faq__q button::after{transform:translateY(-30%) rotate(225deg)}
.hl-faq__a{padding:0 0 20px;font-size:16px;line-height:1.6;color:var(--ocean-2);max-width:70ch}
.hl-js .hl-faq__item:not(.is-open) .hl-faq__a{display:none}

/* ---------- Chiusura ---------- */
.hl-cta{background:var(--sand)}
.hl-cta__box{background:var(--paper);border:1px solid var(--brand);border-radius:12px;padding:48px;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.hl-cta__box .hl-h2{margin-bottom:12px}
.hl-cta__box .hl-lead{margin-bottom:0}
.hl-cta__azioni{display:grid;gap:14px;justify-items:start}
@media (max-width:980px){.hl-cta__box{grid-template-columns:1fr;padding:32px 24px;gap:24px}}

@media (prefers-reduced-motion:reduce){.hl-page *{transition:none!important}}

/* Aggiunte */
.hl-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hl-btn--paper{background:#fff}
#main-content .hl-page .hl-btn--paper{color:var(--ocean)!important}
.hl-btn--paper:hover{background:var(--sand);transform:none}
