/* ═══════════════════════════════════════════════
   AIuto — Associazione Italiana Ultimi Talenti Organici
   Estetica: portale sindacale italiano, anni 2010
   ═══════════════════════════════════════════════ */

:root{
  --rosso:    #C8102E;
  --rosso-s:  #9B0C23;
  --rosso-d:  #6E0818;
  --arancio:  #E8590C;
  --giallo:   #FFD100;
  --grigio:   #4A4A4A;
  --grigio-c: #767676;
  --bordo:    #C4C4C4;
  --bordo-s:  #9A9A9A;
  --sfondo:   #E9E9E9;
  --box:      #F5F5F5;
  --link:     #0033A0;
}

*{margin:0;padding:0;box-sizing:border-box;}
body{
  background:var(--sfondo);
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  color:#222;
  line-height:1.45;
}
a{color:var(--link);text-decoration:underline;}
a:hover{color:var(--rosso);}
img{max-width:100%;}

/* ─── TOP BAR ─── */
.topbar{background:var(--rosso-d);color:#fff;font-size:11px;border-bottom:1px solid #000;}
.topbar-in{max-width:1080px;margin:0 auto;padding:5px 12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.topbar a{color:#FFD9D9;text-decoration:none;}
.topbar a:hover{color:#fff;text-decoration:underline;}
.topbar-l{letter-spacing:.02em;}
.topbar-r{display:flex;align-items:center;gap:7px;}
.lang{background:#fff;color:var(--rosso-d);padding:1px 5px;font-weight:bold;font-size:10px;}
.blink{color:var(--giallo);animation:bl 1.1s steps(2) infinite;}
@keyframes bl{50%{opacity:0}}

/* ─── HEADER ─── */
header{background:#fff;border-bottom:4px solid var(--rosso);}
.header-in{max-width:1080px;margin:0 auto;padding:16px 12px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.logo-block{display:flex;align-items:center;gap:14px;}
.logo-mark{
  background:var(--rosso);color:#fff;
  font-size:42px;font-weight:bold;font-style:italic;
  padding:6px 16px;letter-spacing:-2px;
  border:3px solid var(--rosso-d);
  box-shadow:3px 3px 0 rgba(0,0,0,.18);
}
.logo-mark span{color:var(--giallo);font-style:normal;}
.logo-full{font-size:17px;font-weight:bold;color:var(--rosso-d);text-transform:uppercase;letter-spacing:-.2px;line-height:1.2;}
.logo-sub{font-size:10.5px;color:var(--grigio-c);margin-top:3px;}
.header-right{text-align:right;}
.hr-slogan{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:14px;color:var(--rosso-s);line-height:1.35;margin-bottom:8px;}
.hr-btn{display:inline-block;background:var(--giallo);color:#000!important;font-weight:bold;font-size:12px;padding:7px 16px;text-decoration:none!important;border:2px solid #000;box-shadow:2px 2px 0 rgba(0,0,0,.3);}
.hr-btn:hover{background:#FFE44D;}

/* ─── NAV ─── */
nav{background:var(--rosso);border-bottom:3px solid var(--rosso-d);}
.nav-in{max-width:1080px;margin:0 auto;display:flex;flex-wrap:wrap;}
.nav-in a{
  color:#fff;text-decoration:none;font-size:11.5px;font-weight:bold;
  padding:9px 13px;border-right:1px solid rgba(255,255,255,.25);
  text-transform:uppercase;letter-spacing:.02em;
}
.nav-in a:hover{background:var(--rosso-s);color:var(--giallo);}
.nav-in a.active{background:var(--rosso-d);color:var(--giallo);}

/* ─── TICKER ─── */
.ticker{background:#000;color:#fff;display:flex;align-items:center;overflow:hidden;border-bottom:2px solid var(--giallo);}
.ticker-lbl{background:var(--giallo);color:#000;font-weight:bold;font-size:11px;padding:6px 11px;white-space:nowrap;letter-spacing:.04em;}
.ticker-track{flex:1;overflow:hidden;}
.ticker-move{display:inline-block;white-space:nowrap;font-size:11.5px;padding:6px 0;animation:tick 46s linear infinite;}
.ticker-move span{color:#FFEA9E;}
@keyframes tick{0%{transform:translateX(6%)}100%{transform:translateX(-100%)}}

/* ─── LAYOUT ─── */
.page{max-width:1080px;margin:14px auto;padding:0 12px;display:grid;grid-template-columns:1fr 268px;gap:16px;align-items:start;}
main{min-width:0;}

/* ─── LEAD EDITORIAL ─── */
.lead-box{background:#fff;border:1px solid var(--bordo);border-top:5px solid var(--rosso);padding:20px 22px;margin-bottom:16px;}
.lead-kicker{font-size:10.5px;font-weight:bold;color:#fff;background:var(--rosso);display:inline-block;padding:3px 9px;letter-spacing:.06em;margin-bottom:11px;}
.lead-title{font-family:Georgia,'Times New Roman',serif;font-size:29px;line-height:1.16;color:#111;margin-bottom:9px;font-weight:bold;}
.lead-meta{font-size:11.5px;color:var(--grigio-c);border-bottom:1px dotted var(--bordo);padding-bottom:10px;margin-bottom:12px;}
.lead-body p{margin-bottom:11px;font-size:13.5px;line-height:1.62;color:#333;}
.lead-body b{color:#000;}
.readmore{display:inline-block;font-size:12px;font-weight:bold;margin-top:4px;}

/* ─── SECTION HEADS ─── */
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;background:var(--rosso-d);padding:7px 12px;margin-bottom:0;border-bottom:3px solid var(--giallo);}
.sec-head h2{color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.04em;}
.sec-head a{color:var(--giallo);font-size:10.5px;text-decoration:none;}
.sec-head a:hover{text-decoration:underline;color:#fff;}

/* ─── ARTICLE LIST ─── */
.art-list{background:#fff;border:1px solid var(--bordo);border-top:none;margin-bottom:16px;}
.art{display:flex;gap:13px;padding:14px;border-bottom:1px dotted var(--bordo);}
.art:last-child{border-bottom:none;}
.art-date{
  background:var(--rosso);color:#fff;width:44px;height:46px;flex-shrink:0;
  text-align:center;font-weight:bold;font-size:19px;line-height:1;
  padding-top:6px;border:2px solid var(--rosso-d);
}
.art-date span{display:block;font-size:9px;font-weight:normal;margin-top:2px;letter-spacing:.05em;}
.art-body h3{font-family:Georgia,serif;font-size:16px;margin-bottom:5px;line-height:1.25;}
.art-body h3 a{color:#111;text-decoration:none;}
.art-body h3 a:hover{color:var(--rosso);text-decoration:underline;}
.art-body p{font-size:12.5px;color:#444;line-height:1.55;margin-bottom:5px;}
.art-tag{font-size:10.5px;color:var(--grigio-c);font-style:italic;}

/* ─── COMUNICATI TABLE ─── */
.cs-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--bordo);border-top:none;margin-bottom:16px;font-size:12px;}
.cs-table td{padding:9px 11px;border-bottom:1px solid #E4E4E4;vertical-align:top;}
.cs-h td{background:#EDEDED;font-weight:bold;font-size:10.5px;color:var(--grigio);letter-spacing:.05em;border-bottom:2px solid var(--bordo-s);}
.cs-d{width:74px;color:var(--rosso-s);font-weight:bold;white-space:nowrap;}
.cs-p{width:62px;text-align:right;color:var(--grigio-c);font-size:10.5px;white-space:nowrap;}
.cs-x{color:#555;font-size:11.5px;line-height:1.5;display:block;margin-top:3px;}
.cs-table tr:hover td{background:#FFF9F9;}

/* ─── STRIKE HERO ─── */
.strike-hero{background:var(--rosso);color:#fff;border:1px solid var(--rosso-d);border-top:none;display:grid;grid-template-columns:1fr 210px;gap:18px;padding:20px 22px;margin-bottom:14px;}
.sh-kick{font-size:10.5px;background:var(--giallo);color:#000;display:inline-block;padding:3px 9px;font-weight:bold;letter-spacing:.06em;margin-bottom:10px;}
.sh-title{font-size:27px;font-weight:bold;line-height:1.1;letter-spacing:-.5px;margin-bottom:8px;}
.sh-when{font-size:12px;color:var(--giallo);font-weight:bold;letter-spacing:.03em;margin-bottom:10px;}
.sh-txt{font-size:12.5px;line-height:1.6;color:#FFDCDC;}
.sh-right{border-left:2px dotted rgba(255,255,255,.4);padding-left:18px;text-align:center;}
.cd-lbl{font-size:10px;letter-spacing:.1em;color:#FFC9C9;margin-bottom:4px;}
.countdown{font-size:23px;font-weight:bold;color:var(--giallo);font-family:'Courier New',monospace;letter-spacing:-.5px;line-height:1.15;}
.cd-sub{font-size:9.5px;color:#FFC9C9;margin-bottom:12px;letter-spacing:.04em;}
.sh-btn{display:block;background:var(--giallo);color:#000!important;font-weight:bold;font-size:11px;padding:8px;text-decoration:none!important;border:2px solid #000;}
.sh-btn:hover{background:#FFE44D;}

/* ─── MOBILITAZIONI TABLE ─── */
.mob-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--bordo);margin-bottom:16px;font-size:12px;}
.mob-table td{padding:9px 11px;border-bottom:1px solid #E4E4E4;vertical-align:top;}
.mob-h td{background:#EDEDED;font-weight:bold;font-size:10.5px;color:var(--grigio);letter-spacing:.05em;border-bottom:2px solid var(--bordo-s);}
.mob-table tr:hover td{background:#FFF9F9;}
.st{font-size:9.5px;font-weight:bold;padding:2px 7px;white-space:nowrap;display:inline-block;}
.st-ok{background:#D8F0D8;color:#1A6B1A;border:1px solid #7FBF7F;}
.st-wait{background:#FFF3CD;color:#7A5B00;border:1px solid #DFC066;}
.st-no{background:#F0D8D8;color:#8B1A1A;border:1px solid #BF7F7F;}

/* ─── VERTENZE ─── */
.vert-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--bordo);border:1px solid var(--bordo);border-top:none;margin-bottom:16px;}
.vert{background:#fff;padding:14px 16px;}
.v-num{font-size:10px;color:#fff;background:var(--grigio);display:inline-block;padding:2px 7px;font-weight:bold;letter-spacing:.04em;margin-bottom:7px;}
.vert h4{font-family:Georgia,serif;font-size:15px;color:#111;margin-bottom:6px;}
.vert p{font-size:11.5px;color:#555;line-height:1.55;margin-bottom:10px;}
.v-bar{height:9px;background:#E0E0E0;border:1px solid var(--bordo-s);margin-bottom:5px;}
.v-fill{height:100%;background:var(--rosso);}
.v-stat{font-size:10.5px;color:var(--grigio-c);}
.v-stat b{color:var(--rosso-s);}

/* ─── TESSERAMENTO INTRO ─── */
.tess-intro{background:#fff;border:1px solid var(--bordo);border-top:none;padding:18px 20px;display:grid;grid-template-columns:1fr 250px;gap:22px;margin-bottom:14px;}
.ti-kick{font-size:10.5px;font-weight:bold;color:var(--rosso);letter-spacing:.05em;margin-bottom:7px;}
.ti-l h3{font-family:Georgia,serif;font-size:22px;color:#111;margin-bottom:9px;}
.ti-l p{font-size:12.5px;color:#444;line-height:1.6;margin-bottom:8px;}
.ti-small{font-size:11px!important;color:var(--grigio-c)!important;font-style:italic;}
.quota{border:2px solid var(--rosso);}
.q-row{display:flex;justify-content:space-between;padding:7px 11px;font-size:11.5px;border-bottom:1px dotted var(--bordo);gap:10px;}
.q-row b{color:var(--rosso-s);white-space:nowrap;}
.q-last{background:#F5F5F5;border-bottom:none;}
.q-last b{color:var(--grigio-c);font-size:10px;}

/* ─── GENERATOR ─── */
.gen-wrap{display:grid;grid-template-columns:300px 1fr;gap:14px;margin-bottom:18px;}
.gen-form{background:#fff;border:1px solid var(--bordo);}
.gf-head{background:var(--grigio);color:#fff;font-size:10.5px;font-weight:bold;padding:7px 11px;letter-spacing:.05em;}
.gf-body{padding:14px;}
.gf-body label{display:block;font-size:10px;font-weight:bold;color:var(--grigio);letter-spacing:.05em;margin-bottom:3px;margin-top:11px;}
.gf-body label:first-child{margin-top:0;}
.gf-body input,.gf-body select{
  width:100%;padding:7px 8px;font-size:12.5px;font-family:Arial,sans-serif;
  border:1px solid var(--bordo-s);background:#FCFCFC;color:#111;
}
.gf-body input:focus,.gf-body select:focus{outline:2px solid var(--rosso);background:#fff;}
#btn-gen{
  width:100%;margin-top:16px;padding:11px;background:var(--rosso);color:#fff;
  border:2px solid var(--rosso-d);font-weight:bold;font-size:12.5px;cursor:pointer;
  font-family:Arial,sans-serif;letter-spacing:.03em;
}
#btn-gen:hover{background:var(--rosso-s);}

.gen-preview{background:#fff;border:1px solid var(--bordo);display:flex;flex-direction:column;}
.gp-head{background:var(--grigio);color:#fff;font-size:10.5px;font-weight:bold;padding:7px 11px;letter-spacing:.05em;}
#card{width:100%;height:auto;display:block;background:#fff;}
.gp-actions{display:flex;gap:8px;padding:12px 14px 8px;}
.btn-dl,.btn-sh{
  flex:1;padding:10px;font-weight:bold;font-size:11.5px;cursor:pointer;
  font-family:Arial,sans-serif;letter-spacing:.02em;
}
.btn-dl{background:var(--giallo);color:#000;border:2px solid #000;}
.btn-dl:hover{background:#FFE44D;}
.btn-sh{background:#0A66C2;color:#fff;border:2px solid #084C8D;}
.btn-sh:hover{background:#084C8D;}
.gp-note{font-size:10.5px;color:var(--grigio-c);padding:0 14px 12px;font-style:italic;}

/* ─── SIDEBAR ─── */
aside{min-width:0;}
.wbox{background:#fff;border:1px solid var(--bordo);margin-bottom:13px;}
.wb-h{background:var(--grigio);color:#fff;font-size:10.5px;font-weight:bold;padding:7px 10px;letter-spacing:.05em;}
.wb-b{padding:12px 11px;}
.wbox-red .wb-h{background:var(--rosso);}
.wbox-red{border-color:var(--rosso);}
.wbox-yell .wb-h{background:#000;color:var(--giallo);}
.wbox-yell{border:2px solid #000;}
.wbox-gray .wb-h{background:#8A8A8A;}

.counter-box{text-align:center;}
.c-num{font-family:'Courier New',monospace;font-size:30px;font-weight:bold;color:var(--rosso);letter-spacing:-1px;line-height:1.1;}
.c-lbl{font-size:11px;color:#444;line-height:1.45;margin-top:5px;}
.c-src{font-size:9.5px;color:var(--grigio-c);margin-top:9px;padding-top:8px;border-top:1px dotted var(--bordo);line-height:1.45;}

.ev{display:flex;gap:9px;padding:8px 0;border-bottom:1px dotted var(--bordo);}
.ev:last-child{border-bottom:none;}
.ev-d{background:var(--rosso);color:#fff;width:34px;flex-shrink:0;text-align:center;font-weight:bold;font-size:15px;padding:4px 0;line-height:1.1;}
.ev-d span{font-size:8.5px;font-weight:normal;}
.ev-t{font-size:11px;line-height:1.4;color:#444;}
.ev-t b{color:#111;font-size:11.5px;}

.tess-side{text-align:center;}
.ts-big{font-size:19px;font-weight:bold;color:#000;line-height:1.1;margin-bottom:8px;letter-spacing:-.3px;}
.tess-side p{font-size:11px;color:#444;line-height:1.5;margin-bottom:11px;}
.ts-btn{display:block;background:var(--giallo);color:#000!important;font-weight:bold;font-size:11px;padding:9px;text-decoration:none!important;border:2px solid #000;}
.ts-btn:hover{background:#FFE44D;}
.ts-count{font-size:10px;color:var(--grigio-c);margin-top:8px;}
.ts-count b{color:var(--rosso);font-size:12px;}

.num-t{width:100%;border-collapse:collapse;}
.num-t td{padding:6px 0;border-bottom:1px dotted var(--bordo);font-size:10.5px;color:#444;line-height:1.4;vertical-align:top;}
.num-t tr:last-child td{border-bottom:none;}
.n-v{font-weight:bold;color:var(--rosso);font-size:13px!important;white-space:nowrap;padding-right:9px!important;width:56px;}
.src{color:var(--grigio-c);font-size:9.5px;}
.num-note{font-size:10px;color:var(--grigio-c);font-style:italic;margin-top:9px;padding-top:8px;border-top:1px solid var(--bordo);text-align:center;}

.lnk{list-style:none;}
.lnk li{border-bottom:1px dotted var(--bordo);}
.lnk li:last-child{border-bottom:none;}
.lnk a{display:block;padding:6px 0 6px 12px;font-size:11.5px;text-decoration:none;position:relative;}
.lnk a:before{content:'›';position:absolute;left:2px;color:var(--rosso);font-weight:bold;}
.lnk a:hover{background:#FFF4F4;text-decoration:underline;}
.lnk-sm a{font-size:11px;}

.banner-box{background:var(--rosso-d);color:#fff;padding:16px 13px;text-align:center;border:2px solid #000;}
.bb-t{font-size:15px;font-weight:bold;margin-bottom:6px;letter-spacing:-.2px;}
.bb-s{font-size:11px;color:#FFC9C9;line-height:1.45;margin-bottom:11px;}
.bb-b{display:inline-block;background:var(--giallo);color:#000!important;font-weight:bold;font-size:10.5px;padding:8px 14px;text-decoration:none!important;border:2px solid #000;}

/* ─── FOOTER ─── */
footer{background:var(--rosso-d);color:#fff;margin-top:20px;border-top:4px solid var(--giallo);}
.foot-in{max-width:1080px;margin:0 auto;padding:26px 12px 16px;}
.foot-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:26px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.2);}
.fc h5{font-size:11.5px;letter-spacing:.06em;margin-bottom:9px;color:var(--giallo);}
.fc p{font-size:11.5px;color:#FFD9D9;line-height:1.5;margin-bottom:8px;}
.fc-s{font-size:10.5px!important;color:#E8AAAA!important;}
.fc ul{list-style:none;}
.fc li{margin-bottom:5px;}
.fc a{color:#FFD9D9;font-size:11.5px;text-decoration:none;}
.fc a:hover{color:#fff;text-decoration:underline;}

.foot-bot{display:grid;grid-template-columns:1fr 240px;gap:26px;padding-top:16px;}
.disc{font-size:10px;color:#E8AAAA;line-height:1.65;margin-bottom:9px;}
.copy{font-size:10.5px;color:#C98F8F;}
.fb-r{text-align:right;}
.visit{display:inline-block;margin-bottom:9px;}
.v-lbl{font-size:8.5px;color:#E8AAAA;letter-spacing:.1em;margin-bottom:2px;}
.v-digits{
  font-family:'Courier New',monospace;font-size:17px;font-weight:bold;
  background:#000;color:#00FF66;padding:3px 7px;letter-spacing:2px;
  border:2px solid #000;display:inline-block;
}
.opt{font-size:9.5px;color:#C98F8F;line-height:1.5;margin-bottom:7px;}
.upd{font-size:9.5px;color:#C98F8F;line-height:1.5;}
.upd b{color:#FFD9D9;}

/* ─── RESPONSIVE ─── */
@media(max-width:900px){
  .page{grid-template-columns:1fr;}
  .gen-wrap{grid-template-columns:1fr;}
  .vert-grid{grid-template-columns:1fr;}
  .tess-intro{grid-template-columns:1fr;}
  .strike-hero{grid-template-columns:1fr;}
  .sh-right{border-left:none;border-top:2px dotted rgba(255,255,255,.4);padding-left:0;padding-top:14px;}
  .foot-cols{grid-template-columns:1fr 1fr;}
  .foot-bot{grid-template-columns:1fr;}
  .fb-r{text-align:left;}
  .header-in{flex-direction:column;align-items:flex-start;}
  .header-right{text-align:left;}
}
@media(max-width:560px){
  .foot-cols{grid-template-columns:1fr;}
  .logo-mark{font-size:32px;padding:5px 12px;}
  .logo-full{font-size:14px;}
  .lead-title{font-size:22px;}
  .sh-title{font-size:21px;}
  .topbar-in{font-size:10px;}
}

/* ═══════════════════════════════════════════════
   CALCOLATORE DI SOSTITUZIONE
   ═══════════════════════════════════════════════ */
.calc-wrap{background:#fff;border:1px solid var(--bordo);border-top:none;display:grid;grid-template-columns:1fr 300px;gap:20px;padding:20px 22px;margin-bottom:16px;}
.calc-kick{font-size:10.5px;font-weight:bold;color:var(--rosso);letter-spacing:.05em;margin-bottom:7px;}
.calc-l h3{font-family:Georgia,serif;font-size:24px;color:#111;margin-bottom:9px;}
.calc-l p{font-size:12.5px;color:#444;line-height:1.6;margin-bottom:14px;}
.calc-lbl{display:block;font-size:10px;font-weight:bold;color:var(--grigio);letter-spacing:.05em;margin-bottom:4px;}
.calc-row{display:flex;gap:8px;margin-bottom:10px;}
.calc-row input{flex:1;padding:9px 10px;font-size:13px;font-family:Arial,sans-serif;border:1px solid var(--bordo-s);background:#FCFCFC;}
.calc-row input:focus{outline:2px solid var(--rosso);background:#fff;}
#c-btn{background:var(--rosso);color:#fff;border:2px solid var(--rosso-d);font-weight:bold;font-size:12px;padding:9px 20px;cursor:pointer;font-family:Arial,sans-serif;letter-spacing:.03em;white-space:nowrap;}
#c-btn:hover{background:var(--rosso-s);}
.calc-note{font-size:10.5px!important;color:var(--grigio-c)!important;font-style:italic;line-height:1.5;margin-bottom:0!important;}

.calc-r{border:2px solid #000;background:#F7F7F7;}
.co-head{background:#000;color:var(--giallo);font-size:10px;font-weight:bold;padding:7px 10px;letter-spacing:.06em;}
.co-body{padding:14px 13px;}
.co-lbl{font-size:9.5px;font-weight:bold;color:var(--grigio);letter-spacing:.06em;margin-bottom:3px;}
.co-date{font-family:Georgia,serif;font-size:19px;font-weight:bold;color:var(--rosso);line-height:1.2;margin-bottom:13px;min-height:46px;}
.co-bar{height:13px;background:#DEDEDE;border:1px solid var(--bordo-s);margin-bottom:5px;}
.co-fill{height:100%;background:var(--rosso);transition:width .6s ease;}
.co-pct{font-size:11px;color:#333;margin-bottom:11px;}
.co-pct span:first-child{font-weight:bold;font-size:15px;color:var(--rosso);}
.co-cls{color:var(--grigio-c);font-size:10px;}
.co-verdict{font-size:11.5px;color:#333;line-height:1.55;border-top:1px dotted var(--bordo);padding-top:10px;margin-bottom:12px;min-height:52px;font-style:italic;}
.co-share{width:100%;background:var(--giallo);color:#000;border:2px solid #000;font-weight:bold;font-size:11px;padding:9px;cursor:pointer;font-family:Arial,sans-serif;}
.co-share:hover{background:#FFE44D;}

/* ═══ SWITCH FORMATO ═══ */
.fmt-switch{display:flex;flex-direction:column;gap:5px;margin-bottom:4px;}
.fmt{display:flex!important;align-items:center;gap:7px;font-size:12px!important;font-weight:normal!important;color:#222!important;letter-spacing:0!important;margin:0!important;cursor:pointer;padding:6px 8px;border:1px solid var(--bordo);background:#FAFAFA;}
.fmt:hover{background:#FFF4F4;border-color:var(--rosso);}
.fmt input{width:auto!important;margin:0;}
.fmt span{text-transform:none;}

/* ═══ POPUP ═══ */
.pop-overlay{position:fixed;inset:0;background:rgba(0,0,0,.62);display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;pointer-events:none;transition:opacity .18s;padding:16px;}
.pop-overlay.open{opacity:1;pointer-events:all;}
.pop-box{background:#fff;border:3px solid var(--rosso-d);max-width:430px;width:100%;box-shadow:6px 6px 0 rgba(0,0,0,.32);transform:translateY(8px);transition:transform .18s;}
.pop-overlay.open .pop-box{transform:translateY(0);}
.pop-bar{background:var(--rosso);color:#fff;font-size:10.5px;font-weight:bold;padding:7px 11px;letter-spacing:.06em;}
.pop-body{padding:26px 26px 22px;text-align:center;}
.pop-mark{display:inline-block;background:var(--rosso);color:#fff;font-size:27px;font-weight:bold;font-style:italic;padding:4px 13px;letter-spacing:-1.5px;border:2px solid var(--rosso-d);margin-bottom:16px;}
.pop-mark span{color:var(--giallo);font-style:normal;}
.pop-t{font-size:15px;color:#111;line-height:1.5;margin-bottom:8px;}
.pop-s{font-size:13px;color:#555;line-height:1.55;margin-bottom:18px;}
.pop-btn{display:inline-block;background:var(--giallo);color:#000!important;font-weight:bold;font-size:13px;padding:11px 24px;text-decoration:none!important;border:2px solid #000;box-shadow:3px 3px 0 rgba(0,0,0,.25);margin-bottom:12px;}
.pop-btn:hover{background:#FFE44D;}
.pop-close{display:block;margin:0 auto;background:none;border:none;font-size:11.5px;color:var(--grigio-c);cursor:pointer;text-decoration:underline;font-family:Arial,sans-serif;}
.pop-close:hover{color:var(--rosso);}

@media(max-width:900px){
  .calc-wrap{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════════
   HERO TESSERAMENTO
   ═══════════════════════════════════════════════ */
.hero-tess{
  background:var(--rosso);
  background-image:repeating-linear-gradient(135deg,
    rgba(0,0,0,.10) 0px, rgba(0,0,0,.10) 22px,
    transparent 22px, transparent 44px);
  border-bottom:5px solid var(--giallo);
}
.hero-in{max-width:1080px;margin:0 auto;padding:26px 12px 24px;display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:center;}

.hero-kick{
  display:inline-block;background:var(--giallo);color:#000;
  font-size:10.5px;font-weight:bold;letter-spacing:.07em;
  padding:4px 11px;margin-bottom:13px;border:2px solid #000;
}
.hero-h{
  color:#fff;font-size:42px;font-weight:bold;line-height:1.02;
  letter-spacing:-1.5px;margin-bottom:12px;
  text-shadow:3px 3px 0 rgba(0,0,0,.28);
}
.hero-p{font-size:13.5px;color:#FFDEDE;line-height:1.6;max-width:520px;margin-bottom:17px;}
.hero-p b{color:#fff;}
.hero-btns{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:13px;}
.hb-1{
  display:inline-block;background:var(--giallo);color:#000!important;
  font-weight:bold;font-size:15px;padding:13px 26px;
  text-decoration:none!important;border:3px solid #000;
  box-shadow:4px 4px 0 rgba(0,0,0,.35);letter-spacing:.02em;
}
.hb-1:hover{background:#FFE44D;transform:translate(1px,1px);box-shadow:3px 3px 0 rgba(0,0,0,.35);}
.hb-2{color:#FFD9D9!important;font-size:12px;text-decoration:underline;}
.hb-2:hover{color:#fff!important;}
.hero-meta{font-size:11px;color:#FFC4C4;border-top:1px dotted rgba(255,255,255,.35);padding-top:10px;}
.hero-meta b{color:var(--giallo);font-size:13px;}

/* ─── mini tessera decorativa ─── */
.hero-r{text-align:center;}
.mini-card{
  background:#fff;border:3px solid #000;
  box-shadow:6px 6px 0 rgba(0,0,0,.35);
  transform:rotate(-2deg);text-align:left;
}
.mc-top{background:var(--rosso);padding:9px 11px;display:flex;justify-content:space-between;align-items:center;}
.mc-logo{color:#fff;font-size:22px;font-weight:bold;font-style:italic;letter-spacing:-1px;line-height:1;}
.mc-logo span{color:var(--giallo);font-style:normal;}
.mc-yr{color:#fff;font-size:7.5px;font-weight:bold;text-align:right;line-height:1.3;letter-spacing:.03em;}
.mc-yr b{color:var(--giallo);font-size:14px;}
.mc-band{height:4px;background:var(--giallo);}
.mc-body{display:flex;gap:9px;padding:11px;}
.mc-photo{width:52px;height:66px;background:#E8E8E8;border:1px solid #B8B8B8;flex-shrink:0;position:relative;}
.mc-photo:before{content:'';position:absolute;top:12px;left:50%;transform:translateX(-50%);width:20px;height:20px;border-radius:50%;background:#CFCFCF;}
.mc-photo:after{content:'';position:absolute;bottom:8px;left:50%;transform:translateX(-50%);width:34px;height:22px;border-radius:17px 17px 0 0;background:#CFCFCF;}
.mc-fields{flex:1;display:flex;flex-direction:column;min-width:0;}
.mc-l{font-size:5.5px;font-weight:bold;color:#8A8A8A;letter-spacing:.08em;}
.mc-v{font-size:13px;font-weight:bold;color:#111;line-height:1.1;margin-bottom:5px;border-bottom:1px solid #E4E4E4;padding-bottom:2px;}
.mc-sm{font-size:9.5px;}
.mc-red{color:var(--rosso);font-size:15px;border-bottom:none;margin-bottom:0;}
.mc-foot{background:#F2F2F2;border-top:1px solid #DDD;padding:6px 11px 7px;display:flex;flex-direction:column;gap:3px;}
.mc-bars{
  height:15px;
  background:repeating-linear-gradient(90deg,
    #111 0px,#111 1px, transparent 1px, transparent 3px,
    #111 3px,#111 5px, transparent 5px, transparent 7px,
    #111 7px,#111 8px, transparent 8px, transparent 11px);
}
.mc-num{font-family:'Courier New',monospace;font-size:7.5px;font-weight:bold;color:#333;letter-spacing:.05em;}
.mc-cap{font-size:9.5px;color:#FFC4C4;font-style:italic;margin-top:14px;}

@media(max-width:900px){
  .hero-in{grid-template-columns:1fr;gap:24px;}
  .hero-h{font-size:32px;}
  .hero-r{max-width:260px;}
}
@media(max-width:560px){
  .hero-h{font-size:26px;}
  .hb-1{font-size:13px;padding:11px 18px;}
}
