/* =========================================================================
   CAVA ENERGIA — DESIGN SYSTEM v2
   Font: Montserrat (display) + Open Sans (body)
   Palette: estratta dal logo ufficiale — blu #1069B1, rosso #E41C31,
   giallo #FCE800, verde #65B22E. Sfondi neutri, i colori restano
   protagonisti solo su icone, bottoni e accenti — non su grandi campiture.
   Segno distintivo: il marchio "a goccia" del logo, usato come elemento
   ricorrente (hero, sportelli, footer) al posto di un simbolo inventato.
   ========================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800;900&family=Open+Sans:wght@400;600;700&display=swap');

:root{
  --blue:#1069B1;
  --blue-dark:#0B4A7D;
  --blue-light:#2C86CE;
  --blue-pale:#EAF2FA;
  --red:#E41C31;
  --red-dark:#B91527;
  --red-pale:#FCEAEC;
  --yellow:#FCE800;
  --yellow-dark:#A98600;
  --yellow-pale:#FFFBDB;
  --green:#65B22E;
  --green-dark:#46791F;
  --green-pale:#EEF6E8;

  --soft:#F2F3F5;
  --soft-dark:#E7E9EC;
  --bg:#FAFAF9;
  --white:#FFFFFF;
  --ink:#16212C;
  --ink-soft:#3A4753;
  --muted:#69727B;
  --border:#E7E7E5;
  --shadow-sm:0 4px 16px rgba(20,30,40,.07);
  --shadow:0 14px 36px rgba(20,30,40,.11);
  --shadow-lg:0 24px 60px rgba(20,30,40,.15);
  --radius-sm:10px;
  --radius:18px;
  --radius-lg:26px;
  --font-head:'Montserrat',sans-serif;
  --font-body:'Open Sans',sans-serif;
  --maxw:1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
}
h1,h2,h3,h4{font-family:var(--font-head);color:var(--ink);margin:0;line-height:1.18;letter-spacing:-.01em}
p{margin:0}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
ul{margin:0;padding:0;list-style:none}
button{font-family:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--blue-light);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.section{padding:76px 0}
.section-tight{padding:48px 0}
@media(max-width:780px){.section{padding:52px 0}.section-tight{padding:36px 0}}

.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-head);font-weight:800;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--blue);
}
.eyebrow.y{color:var(--yellow-dark)}
.eyebrow.g{color:var(--green-dark)}
.eyebrow.r{color:var(--red)}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:currentColor}

.section-head{max-width:680px;margin-bottom:38px}
.section-head h2{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;margin-top:12px}
.section-head p{color:var(--muted);font-size:1.02rem;margin-top:12px}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}

/* ===================== BUTTONS ===================== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--font-head);font-weight:700;font-size:.95rem;
  padding:14px 26px;border-radius:99px;border:2px solid transparent;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;
  white-space:nowrap;
}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 22px rgba(16,105,177,.28)}
.btn-primary:hover{background:var(--blue-dark);box-shadow:0 14px 28px rgba(16,105,177,.36);transform:translateY(-2px)}
.btn-yellow{background:var(--yellow);color:var(--blue-dark);box-shadow:0 10px 22px rgba(252,232,0,.30)}
.btn-yellow:hover{background:#E6D400;transform:translateY(-2px)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 10px 22px rgba(228,28,49,.28)}
.btn-red:hover{background:var(--red-dark);transform:translateY(-2px)}
.btn-outline{background:#fff;color:var(--blue);border-color:var(--border)}
.btn-outline:hover{border-color:var(--blue);background:var(--blue-pale)}
.btn-ghost-light{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.5)}
.btn-ghost-light:hover{background:rgba(255,255,255,.26)}
.btn-sm{padding:10px 18px;font-size:.85rem}
.btn-block{width:100%}
.btn[disabled]{opacity:.45;pointer-events:none}

/* ===================== NAVBAR ===================== */
.navbar{
  position:sticky;top:0;z-index:500;background:rgba(255,255,255,.95);
  backdrop-filter:blur(10px);border-bottom:1px solid transparent;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.navbar.scrolled{border-color:var(--border);box-shadow:0 4px 18px rgba(20,30,40,.06)}
.nav-inner{max-width:1320px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:nowrap}
.brand{display:flex;align-items:center;flex-shrink:0}
.brand-logo{height:42px;width:auto;display:block}
.nav-links{display:flex;align-items:center;gap:22px;flex-shrink:1;min-width:0}
.nav-links a{font-family:var(--font-head);font-weight:700;font-size:.85rem;color:var(--ink-soft);padding:8px 0;position:relative;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--blue)}
.nav-links a.active::after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:3px;border-radius:3px;background:var(--yellow)}
.nav-cta{display:flex;align-items:center;gap:10px;flex-shrink:0}
.nav-tel{display:flex;align-items:center;gap:6px;font-family:var(--font-head);font-weight:700;font-size:.82rem;color:var(--blue-dark);white-space:nowrap}
.burger{display:none;background:none;border:none;padding:8px;flex-direction:column;gap:5px}
.burger span{width:24px;height:3px;border-radius:3px;background:var(--blue-dark)}
.mobile-menu{display:none;position:fixed;inset:0;z-index:600;background:#fff;padding:24px 28px;overflow-y:auto}
.mobile-menu.open{display:block}
.mobile-menu .mm-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}
.mobile-menu .mm-top .brand-logo{height:36px}
.mobile-menu a{display:block;font-family:var(--font-head);font-weight:700;font-size:1.2rem;padding:14px 0;border-bottom:1px solid var(--border);color:var(--ink)}
@media(max-width:1180px){.nav-links{display:none}.nav-tel{display:none}.burger{display:flex}}

/* ===================== HERO ===================== */
.hero{position:relative;overflow:hidden;padding:56px 0 80px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;gap:40px}}
.hero h1{font-size:clamp(2.1rem,4.4vw,3.3rem);font-weight:800}
.hero h1 .hl{color:var(--blue)}
.hero p.lead{margin-top:18px;font-size:1.1rem;color:var(--ink-soft);max-width:520px}
.hero-cta{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}
.trust-strip{display:flex;gap:28px;margin-top:38px;flex-wrap:wrap}
.trust-item{display:flex;flex-direction:column}
.trust-item b{font-family:var(--font-head);font-size:1.4rem;font-weight:800;color:var(--blue-dark)}
.trust-item span{font-size:.8rem;color:var(--muted);font-weight:600}
.hero-mark{width:260px;height:auto;margin:0 auto;filter:drop-shadow(0 18px 30px rgba(20,30,40,.18))}

/* ===================== CARDS ===================== */
.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:transform .2s ease,box-shadow .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}

.grid{display:grid;gap:22px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}

/* service cards */
.svc-card{padding:28px 24px;display:flex;flex-direction:column;gap:12px}
.svc-ico{width:50px;height:50px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
.svc-card h3{font-size:1.1rem}
.svc-card p{color:var(--muted);font-size:.9rem}
.svc-card .svc-price{margin-top:auto;padding-top:12px;border-top:1px dashed var(--border);font-family:var(--font-head);font-weight:800;color:var(--ink)}
.svc-card .svc-price span{display:block;font-family:var(--font-body);font-weight:600;font-size:.74rem;color:var(--muted)}
.svc-card.luce .svc-ico{background:var(--yellow);color:var(--blue-dark)}
.svc-card.gas .svc-ico{background:var(--red);color:#fff}
.svc-card.fibra .svc-ico{background:var(--green);color:#fff}
.svc-card.sim .svc-ico{background:var(--blue);color:#fff}
.svc-card.luce{border-top:4px solid var(--yellow)}
.svc-card.gas{border-top:4px solid var(--red)}
.svc-card.fibra{border-top:4px solid var(--green)}
.svc-card.sim{border-top:4px solid var(--blue)}

/* value props */
.value-card{padding:26px 24px}
.value-ico{width:46px;height:46px;border-radius:50%;background:var(--soft);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:14px}
.value-card h3{font-size:1.04rem;margin-bottom:6px}
.value-card p{color:var(--muted);font-size:.9rem}

/* location strip (compact, replaces heavy location cards on home) */
.loc-strip{display:flex;flex-direction:column;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:#fff}
.loc-strip-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 24px;border-bottom:1px solid var(--border)}
.loc-strip-row:last-child{border-bottom:none}
.loc-strip-row:hover{background:var(--soft)}
.loc-strip-city{font-family:var(--font-head);font-weight:800;display:flex;align-items:center;gap:10px}
.loc-strip-addr{color:var(--muted);font-size:.86rem}
.loc-mark{width:26px;height:auto;flex-shrink:0}

/* full location cards (sportelli.html) */
.loc-card{padding:0;overflow:hidden}
.loc-top{padding:22px 22px 16px;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.loc-city{font-family:var(--font-head);font-weight:800;font-size:1.12rem;color:var(--ink)}
.loc-addr{color:var(--muted);font-size:.9rem;margin-top:4px}
.loc-body{padding:0 22px 22px}
.loc-hours{margin-top:12px;border-top:1px solid var(--border);padding-top:12px}
.loc-hours-row{display:flex;justify-content:space-between;font-size:.85rem;padding:3px 0;color:var(--ink-soft)}
.loc-hours-row b{color:var(--ink);font-weight:700}
.loc-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.mini-mark{width:36px;height:auto;flex-shrink:0}

/* team cards */
.team-card{padding:24px 20px;text-align:center}
.team-photo{width:78px;height:78px;border-radius:50%;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-family:var(--font-head);font-weight:800;color:#fff}
.team-name{font-family:var(--font-head);font-weight:800;font-size:1rem}
.team-role{color:var(--blue);font-weight:700;font-size:.78rem;margin-top:3px}
.team-bio{color:var(--muted);font-size:.85rem;margin-top:8px}
.carousel-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 16px}
.carousel-track::-webkit-scrollbar{height:6px}
.carousel-track::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px}
.carousel-track .team-card{min-width:220px;scroll-snap-align:start;flex-shrink:0}
.carousel-nav{display:flex;gap:10px;justify-content:flex-end;margin-top:-6px}
.cbtn{width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.05rem;color:var(--blue)}
.cbtn:hover{background:var(--soft)}

/* badges */
.badge{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;padding:5px 12px;border-radius:99px;background:var(--soft);color:var(--ink-soft)}
.badge.blue{background:var(--blue-pale);color:var(--blue-dark)}
.badge.green{background:var(--green-pale);color:var(--green-dark)}
.badge.red{background:var(--red-pale);color:var(--red-dark)}

/* steps */
.steps-row{display:flex;gap:0}
.step-col{flex:1;text-align:center;position:relative;padding:0 10px}
.step-col::before{content:'';position:absolute;top:22px;left:-50%;right:50%;height:2px;background:var(--border)}
.step-col:first-child::before{display:none}
.step-num{width:44px;height:44px;border-radius:50%;background:var(--blue);color:#fff;font-family:var(--font-head);font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;position:relative;z-index:2}
.step-col h4{font-size:.94rem;margin-bottom:6px}
.step-col p{font-size:.8rem;color:var(--muted)}
@media(max-width:780px){.steps-row{flex-direction:column;gap:24px}.step-col::before{display:none}}

/* CTA band */
.cta-band{background:linear-gradient(120deg,var(--blue) 0%,var(--blue-dark) 100%);border-radius:var(--radius-lg);padding:48px 46px;color:#fff;position:relative;overflow:hidden}
.cta-band h2{color:#fff;font-size:clamp(1.4rem,2.8vw,2rem)}
.cta-band p{color:rgba(255,255,255,.82);margin-top:8px;max-width:520px}
.cta-band-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;position:relative;z-index:2}

/* trustpilot-style carousel */
.tp-wrap{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.tp-stars{color:#00B67A;font-size:1.05rem;letter-spacing:2px}
.tp-card{padding:20px;min-width:270px}
.tp-quote{font-size:.9rem;color:var(--ink-soft);font-style:italic}
.tp-author{margin-top:12px;font-family:var(--font-head);font-weight:700;font-size:.84rem}

/* ===================== FOOTER ===================== */
.site-footer{background:#0E2540;color:rgba(255,255,255,.82);padding-top:56px}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1)}
@media(max-width:980px){.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.footer-logo{height:34px;width:auto}
.footer-brand b{font-family:var(--font-head);font-weight:800;color:#fff;font-size:1.05rem}
.footer-col h4{color:#fff;font-family:var(--font-head);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.footer-col a{display:block;font-size:.87rem;color:rgba(255,255,255,.68);padding:5px 0}
.footer-col a:hover{color:var(--yellow)}
.footer-col a.highlight{color:#FFE85C;font-weight:700}
.footer-desc{font-size:.87rem;color:rgba(255,255,255,.62);max-width:280px;margin-top:4px}
.footer-social{display:flex;gap:10px;margin-top:16px}
.fsoc{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.9rem}
.fsoc:hover{background:var(--blue-light)}
.footer-bottom{padding:24px 0 28px;font-size:.77rem;color:rgba(255,255,255,.5);line-height:1.9}
.footer-bottom a{color:rgba(255,255,255,.7)}
.footer-bottom a:hover{color:var(--yellow)}
.footer-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.footer-badge{font-size:.7rem;font-weight:700;padding:5px 11px;border-radius:99px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.75)}
.footer-arera-row{margin:10px 0;display:flex;flex-wrap:wrap;gap:4px 0}
.footer-arera-row a{display:inline;padding:0}
.footer-recesso-banner{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);padding:14px 18px;margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.footer-recesso-banner span{font-size:.85rem;color:rgba(255,255,255,.85)}

/* whatsapp float */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:400;width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.45rem;box-shadow:0 10px 24px rgba(0,0,0,.25)}
.wa-float:hover{transform:scale(1.06)}

/* generic page hero (inner pages) — neutral, no azzurro wash */
.page-hero{padding:46px 0 56px;background:var(--white);border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.page-hero::before{
  content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:url('data:image/png;base64,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');
  background-repeat:no-repeat;
  background-size:min(380px,45%) auto;
  opacity:.6;animation:vBounce 28s ease-in-out infinite;
}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{font-size:clamp(1.8rem,3.4vw,2.5rem)}
.breadcrumb{font-size:.84rem;color:var(--muted);margin-bottom:14px}
.breadcrumb a{color:var(--blue);font-weight:700}

/* doc cards (trasparenza/modulistica) */
.doc-card{display:flex;align-items:center;gap:16px;padding:18px 20px}
.doc-ico{width:44px;height:44px;border-radius:12px;background:var(--soft);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0}
.doc-info{flex:1}
.doc-info b{font-family:var(--font-head);font-size:.94rem;display:block}
.doc-info span{font-size:.81rem;color:var(--muted)}

/* tabs */
.tabbar{display:flex;gap:6px;background:var(--soft);padding:6px;border-radius:99px;width:fit-content;margin:0 auto 32px;flex-wrap:wrap;justify-content:center}
.tabbar button{border:none;background:transparent;padding:10px 20px;border-radius:99px;font-family:var(--font-head);font-weight:700;font-size:.85rem;color:var(--ink-soft);white-space:nowrap}
.tabbar button.active{background:#fff;color:var(--blue);box-shadow:var(--shadow-sm)}

/* utility */
.flex{display:flex}
.center{text-align:center}
.mt-0{margin-top:0}
.muted{color:var(--muted)}
.divider{height:1px;background:var(--border);margin:36px 0}
.tag{display:inline-block;font-size:.7rem;font-weight:700;padding:4px 10px;border-radius:6px;background:var(--soft);color:var(--muted);border:1px solid var(--border)}

/* =========================================================================
   PREVENTIVO WIZARD (preventivo.html)
   ========================================================================= */
.wiz-page{background:var(--bg);min-height:100vh}
.wiz-top{position:sticky;top:0;z-index:300;background:#fff;border-bottom:1px solid var(--border)}
.wiz-top-inner{max-width:980px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}
.wiz-exit{font-family:var(--font-head);font-weight:700;font-size:.86rem;color:var(--muted);display:flex;align-items:center;gap:6px}
.wiz-timer{font-family:var(--font-head);font-weight:800;color:var(--blue-dark);background:var(--blue-pale);padding:8px 16px;border-radius:99px;font-size:.86rem}
.wiz-timer.low{background:var(--red-pale);color:var(--red-dark)}

.progress-wrap{max-width:980px;margin:0 auto;padding:22px 24px 0}
.prog-row{display:flex;align-items:flex-start}
.prog-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-width:0}
.prog-num{width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:800;font-size:.78rem;color:var(--muted)}
.prog-num.active{border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 4px var(--blue-pale)}
.prog-num.done{background:var(--green);border-color:var(--green);color:#fff}
.prog-lbl{font-size:.7rem;font-weight:700;color:var(--muted);text-align:center}
.prog-lbl.active{color:var(--blue)}
.prog-lbl.done{color:var(--green-dark)}
.prog-line{flex:1;height:2px;background:var(--border);margin-top:15px}
.prog-line.done{background:var(--green)}
@media(max-width:780px){.prog-lbl{display:none}}

.wiz-body{max-width:980px;margin:0 auto;padding:36px 24px 100px}
.wiz-layout{display:grid;grid-template-columns:1fr 320px;gap:34px;align-items:start}
@media(max-width:880px){.wiz-layout{grid-template-columns:1fr}}
.screen{display:none}
.screen.active{display:block;animation:fadeUp .35s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.wiz-card{background:#fff;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:34px}
@media(max-width:560px){.wiz-card{padding:24px 18px}}
.wiz-h{font-size:1.4rem;font-weight:800;margin-bottom:8px}
.wiz-sub{color:var(--muted);margin-bottom:28px}

.tipo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:560px){.tipo-grid{grid-template-columns:1fr}}
.tipo-card{border:2px solid var(--border);border-radius:var(--radius);padding:30px 22px;text-align:center;background:#fff}
.tipo-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:var(--shadow)}
.tipo-ico{font-size:2.2rem;margin-bottom:12px}
.tipo-card h3{font-size:1.1rem}
.tipo-card p{color:var(--muted);font-size:.85rem;margin-top:6px}

.serv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
@media(max-width:780px){.serv-grid{grid-template-columns:repeat(2,1fr)}}
.serv-card{border:2px solid var(--border);border-radius:var(--radius);padding:22px 16px;text-align:center;background:#fff;position:relative}
.serv-card .si{font-size:1.7rem;margin-bottom:10px}
.serv-card h4{font-size:.92rem}
.serv-card .sp{font-size:.74rem;color:var(--muted);margin-top:4px}
.serv-card .chk{position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;border:2px solid var(--border);background:#fff}
.serv-card.sel-luce{border-color:var(--yellow-dark);background:var(--yellow-pale)}
.serv-card.sel-gas{border-color:var(--red);background:var(--red-pale)}
.serv-card.sel-fibra{border-color:var(--green-dark);background:var(--green-pale)}
.serv-card.sel-sim{border-color:var(--blue);background:var(--blue-pale)}
.serv-card.sel-luce .chk,.serv-card.sel-gas .chk,.serv-card.sel-fibra .chk,.serv-card.sel-sim .chk{background:var(--green);border-color:var(--green)}
.serv-card.sel-luce .chk::after,.serv-card.sel-gas .chk::after,.serv-card.sel-fibra .chk::after,.serv-card.sel-sim .chk::after{content:'✓';color:#fff;font-size:.7rem;display:flex;align-items:center;justify-content:center;height:100%}

.sconto-box{background:var(--green-pale);border:1px dashed var(--green);border-radius:var(--radius-sm);padding:16px 18px;font-size:.88rem;color:var(--green-dark);font-weight:700;display:flex;gap:10px;align-items:center;margin-bottom:6px}

.offer-tabs{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}
.offer-tab{padding:9px 18px;border-radius:99px;border:1px solid var(--border);background:#fff;font-family:var(--font-head);font-weight:700;font-size:.82rem;color:var(--muted)}
.offer-tab.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.offer-tab.done{color:var(--green-dark);border-color:var(--green)}

.pill-toggle{display:inline-flex;background:var(--soft);border-radius:99px;padding:4px;margin-bottom:18px}
.pill-toggle button{border:none;background:transparent;padding:9px 18px;border-radius:99px;font-family:var(--font-head);font-weight:700;font-size:.8rem;color:var(--muted)}
.pill-toggle button.active{background:#fff;color:var(--blue);box-shadow:var(--shadow-sm)}

.offer-card{border:2px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:14px;cursor:pointer}
.offer-card.selected{border-color:var(--blue);background:var(--blue-pale)}
.offer-card-top{display:flex;justify-content:space-between;align-items:center}
.offer-name{font-family:var(--font-head);font-weight:800}
.offer-price{font-family:var(--font-head);font-weight:800;color:var(--blue)}
.offer-detail{font-size:.82rem;color:var(--muted);margin-top:6px}
.fband{display:flex;gap:14px;margin-top:12px;flex-wrap:wrap}
.fband div{font-size:.78rem;background:#fff;border:1px solid var(--border);border-radius:8px;padding:6px 10px}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:560px){.form-grid{grid-template-columns:1fr}}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group.full{grid-column:1/-1}
.form-group label{font-size:.8rem;font-weight:700;color:var(--ink-soft)}
.form-group input,.form-group select,.form-group textarea{
  padding:12px 14px;border-radius:10px;border:1.5px solid var(--border);font-family:var(--font-body);font-size:.92rem;background:#fff;color:var(--ink);
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);outline:none}
.check-row{display:flex;align-items:flex-start;gap:10px;font-size:.86rem;color:var(--ink-soft)}
.check-row input{margin-top:3px}

.pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
@media(max-width:560px){.pay-grid{grid-template-columns:1fr}}
.pay-card{border:2px solid var(--border);border-radius:var(--radius);padding:20px;text-align:center}
.pay-card.selected{border-color:var(--blue);background:var(--blue-pale)}

.wiz-nav{display:flex;justify-content:space-between;margin-top:30px}

/* receipt sidebar */
.receipt{position:sticky;top:90px;background:#fff;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:24px}
.receipt h4{font-size:.96rem;margin-bottom:14px}
.receipt-row{display:flex;justify-content:space-between;font-size:.84rem;padding:9px 0;border-bottom:1px dashed var(--border)}
.receipt-row b{color:var(--ink)}
.receipt-empty{font-size:.84rem;color:var(--muted);text-align:center;padding:20px 0}
.receipt-total{display:flex;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:2px solid var(--ink);font-family:var(--font-head);font-weight:800}
@media(max-width:880px){.receipt{position:fixed;left:0;right:0;bottom:0;top:auto;border-radius:18px 18px 0 0;z-index:350;max-height:60vh;overflow-y:auto;display:none}.receipt.open{display:block}}
.receipt-drawer-toggle{display:none}
@media(max-width:880px){.receipt-drawer-toggle{display:flex;position:fixed;left:20px;right:20px;bottom:20px;z-index:340;align-items:center;justify-content:space-between;background:var(--blue);color:#fff;padding:14px 20px;border-radius:99px;font-family:var(--font-head);font-weight:700;box-shadow:var(--shadow-lg)}}

.confirm-wrap{text-align:center;padding:20px 0}
.confirm-ico{width:84px;height:84px;border-radius:50%;background:var(--green-pale);color:var(--green-dark);display:flex;align-items:center;justify-content:center;font-size:2.4rem;margin:0 auto 22px}
.doc-checklist{text-align:left;max-width:420px;margin:26px auto;background:var(--bg);border-radius:var(--radius-sm);padding:18px 22px}
.doc-checklist li{display:flex;gap:10px;padding:6px 0;font-size:.88rem;align-items:flex-start}
.referral-box{background:var(--yellow-pale);border:1px dashed var(--yellow-dark);border-radius:var(--radius-sm);padding:18px;max-width:420px;margin:20px auto;text-align:left}
.referral-code{font-family:var(--font-head);font-weight:800;font-size:1.1rem;color:var(--blue-dark);letter-spacing:.06em}

/* =========================================================================
   RECESSO ONLINE (recesso-online.html) — art. 54-bis Codice del Consumo
   ========================================================================= */
.recesso-hero{background:linear-gradient(120deg,var(--blue) 0%,var(--blue-dark) 100%);color:#fff;padding:54px 0;border-radius:0 0 var(--radius-lg) var(--radius-lg)}
.recesso-hero h1{color:#fff}
.recesso-hero p{color:rgba(255,255,255,.85)}
.recesso-law-box{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-sm);padding:16px 20px;margin-top:22px;font-size:.85rem;color:rgba(255,255,255,.92)}
.recesso-receipt{background:var(--soft);border:1px dashed var(--ink-soft);border-radius:var(--radius);padding:26px;margin-top:24px}
.recesso-receipt-row{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--border);font-size:.9rem}
.recesso-receipt-row:last-child{border-bottom:none}
.recesso-receipt-row b{text-align:right}
.recesso-code{font-family:var(--font-head);font-weight:800;color:var(--blue-dark);letter-spacing:.04em}

/* =========================================================================
   V2.1 — colore vivace, texture del marchio, photo frame
   ========================================================================= */

/* un solo marchio grande, che rimbalza lentamente da un angolo all'altro */
.v-pattern{
  position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background-image:url('data:image/png;base64,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');
  background-repeat:no-repeat;
  background-size:min(460px,55%) auto;
  opacity:.55;
  animation:vBounce 28s ease-in-out infinite;
}
.v-pattern.on-light{background-image:url('data:image/png;base64,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');opacity:.7}
@keyframes vBounce{
  0%{background-position:-8% -15%}
  25%{background-position:108% 5%}
  50%{background-position:92% 105%}
  75%{background-position:-4% 85%}
  100%{background-position:-8% -15%}
}

/* hero a colore pieno */
.hero-vivid{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 62%,#0A3D69 100%);
  color:#fff;padding:54px 0 0;
}
.hero-vivid::after{
  content:'';position:absolute;right:-120px;bottom:-160px;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(252,232,0,.16) 0%,rgba(252,232,0,0) 70%);pointer-events:none;
}
.hero-vivid .eyebrow{color:#FFE85C}
.hero-vivid h1{color:#fff}
.hero-vivid h1 .hl{color:var(--yellow)}
.hero-vivid p.lead{color:rgba(255,255,255,.88)}
.hero-vivid .trust-item b{color:#fff}
.hero-vivid .trust-item span{color:rgba(255,255,255,.7)}
.hero-vivid .btn-outline{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.4)}
.hero-vivid .btn-outline:hover{background:rgba(255,255,255,.18)}
.hero-content{position:relative;z-index:1}
.hero-wave{display:block;width:100%;height:auto;margin-top:40px}

/* foto del team / sportelli — riquadro pronto per la foto reale */
.photo-frame{
  position:relative;border-radius:var(--radius);overflow:hidden;
  background:linear-gradient(135deg,var(--blue) 0%,var(--green) 50%,var(--blue-dark) 100%);
  display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;
  box-shadow:var(--shadow);
}
.photo-frame .v-pattern{background-size:min(220px,50%) auto;opacity:.4}
.photo-frame-inner{position:relative;z-index:1;padding:24px}
.photo-frame-tag{position:absolute;top:14px;right:14px;z-index:2;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);color:#fff;font-size:.7rem;font-weight:700;padding:5px 11px;border-radius:99px}
.photo-frame.team{aspect-ratio:16/7.5}
.photo-frame.loc{aspect-ratio:16/10}
.photo-frame-icon{font-size:2.4rem;margin-bottom:8px;opacity:.95}
.photo-frame-label{font-family:var(--font-head);font-weight:800;font-size:1.05rem}
.photo-frame-sub{font-size:.8rem;color:rgba(255,255,255,.85);margin-top:4px}

/* sezioni a fascia colorata, alternativa al banco bianco infinito */
.band-blue{background:linear-gradient(120deg,var(--blue) 0%,var(--blue-dark) 100%);color:#fff;position:relative;overflow:hidden}
.band-blue h2,.band-blue h3{color:#fff}
.band-blue p{color:rgba(255,255,255,.85)}
.band-blue .value-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16)}
.band-blue .value-card h3{color:#fff}
.band-blue .value-card p{color:rgba(255,255,255,.78)}
.band-blue .value-ico{background:rgba(255,255,255,.16);color:#fff}
.band-blue .eyebrow{color:#FFE85C}

/* icone a colore pieno, più vivaci delle versioni "pale" */
.ico-solid{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff}
.ico-solid.blue{background:var(--blue)}
.ico-solid.red{background:var(--red)}
.ico-solid.yellow{background:var(--yellow);color:var(--blue-dark)}
.ico-solid.green{background:var(--green)}

.loc-strip-city img.loc-mark{filter:none}

/* composer "Componi la tua offerta" — tessere selezionabili + tessere di rimando */
.serv-card.link-tile{cursor:pointer}
.serv-card.link-tile .chk{display:flex;align-items:center;justify-content:center;background:var(--soft);border-color:var(--border);color:var(--muted);font-size:.7rem}
.serv-card.link-tile .chk::after{content:'→'}

/* parlano di noi — rassegna stampa */
.press-card{display:flex;flex-direction:column;gap:10px;padding:24px}
.press-source{display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:800;font-size:.84rem;color:var(--blue)}
.press-date{font-size:.74rem;color:var(--muted)}
.press-title{font-size:.98rem;font-weight:700;line-height:1.4}
.press-excerpt{font-size:.86rem;color:var(--muted);line-height:1.6}
.press-link{margin-top:auto;font-family:var(--font-head);font-weight:700;font-size:.84rem;color:var(--blue);display:inline-flex;align-items:center;gap:5px}

/* elenco corner — volutamente leggero, senza card pesanti */
.corner-list{border-top:1px solid var(--border)}
.corner-row{display:grid;grid-template-columns:1.4fr .9fr 1.7fr;gap:14px;padding:14px 4px;border-bottom:1px solid var(--border);font-size:.88rem;align-items:center}
.corner-row b{font-family:var(--font-head);font-weight:700;font-size:.88rem}
.corner-row span.muted{font-size:.84rem}
.corner-row .corner-tag{font-size:.68rem;font-weight:700;color:var(--blue);background:var(--blue-pale);padding:3px 9px;border-radius:99px;width:fit-content}
@media(max-width:680px){.corner-row{grid-template-columns:1fr;gap:3px}}
.corner-empty{padding:24px 4px;color:var(--muted);font-size:.88rem;text-align:center;border-bottom:1px solid var(--border)}

/* risultato del finder */
.finder-result-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;background:var(--soft);border-radius:10px;margin-bottom:8px}
.finder-result-row b{font-family:var(--font-head);font-size:.92rem}
.finder-empty-msg{font-size:.86rem;color:var(--muted);line-height:1.6}
