/* Stile delle pagine consulenze — dall'MVP ChatGPT, con le aggiunte STArchetipo */
:root{--navy:#17233f;--blue:#1e4e9a;--gold:#b08d57;--paper:#f7f6f2;--ink:#222a37;--muted:#667085;--line:#e3e5e8;--white:#fff;--wine:#7a2e33}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.62 Georgia,"Times New Roman",serif}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,.sans,.nav,.tag,.price,.btn,.step,.badge,.faq button{font-family:Arial,Helvetica,sans-serif}.nav{height:72px;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1120px)/2));background:#fff}.brand{color:var(--navy);font-weight:bold;letter-spacing:.06em;font-size:14px}.brand small{display:block;letter-spacing:.02em;color:var(--t-muted,#798091);font-weight:normal;font-size:10px}.navlinks{display:flex;gap:22px;align-items:center;font-size:13px}.navlinks a{color:var(--t-muted,#454c58);text-decoration:none}.nav button,.btn{border:0;background:var(--wine);color:var(--t-text,#fff);border-radius:4px;padding:12px 17px;font-weight:bold;text-decoration:none;font-size:13px}.hero{background:var(--paper);padding:62px 24px 54px}.inner{max-width:1060px;margin:auto}.crumb{font:12px Arial;color:var(--t-muted,#838997);margin-bottom:19px}.tag{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-size:11px;font-weight:bold}.heroGrid{display:grid;grid-template-columns:1.2fr .8fr;gap:52px;align-items:center}.hero h1{font-size:clamp(34px,4.6vw,52px);line-height:1.11;letter-spacing:-.035em;color:var(--navy);margin:12px 0 17px;max-width:700px}.hero .lead{font-size:19px;line-height:1.5;color:var(--t-muted,#505967);max-width:680px}.heroAside{border-left:2px solid var(--gold);padding:10px 0 10px 22px;color:var(--t-muted,#4d5664)}.heroAside strong{color:var(--navy);font:700 16px Arial}.heroAside p{margin:7px 0 0;font-size:15px}.bar{display:flex;gap:20px;flex-wrap:wrap;margin-top:25px;font:13px Arial;color:var(--t-muted,#515b69)}.bar span:before{content:"✓";color:var(--gold);font-weight:bold;margin-right:7px}.section{padding:62px 24px}.section.soft{background:#faf9f6}.section h2{font-size:30px;line-height:1.2;color:var(--navy);margin:8px 0 12px;letter-spacing:-.02em}.intro{max-width:710px;color:var(--t-muted,#5e6673)}.offers{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}.offer{border:1px solid var(--line);padding:25px;background:#fff;position:relative}.offer.featured{border:1px solid var(--gold);box-shadow:0 10px 24px #17233f0b}.badge{position:absolute;top:0;right:0;background:var(--navy);color:white;padding:6px 10px;font-size:10px;letter-spacing:.08em}.offer h3{font-size:20px;color:var(--navy);margin:0 0 4px}.offer .desc{color:var(--muted);font-size:14px;min-height:48px}.price{font-size:32px;color:var(--navy);font-weight:700;margin:13px 0}.price small{font-size:12px;color:var(--t-muted,#6f7785);font-weight:normal}.offer ul{padding-left:20px;color:var(--t-muted,#505967);font-size:14px;min-height:110px}.offer li{margin:5px 0}.timing{font:12px Arial;color:var(--wine);font-weight:bold;margin:10px 0 15px}.btn.secondary{background:var(--navy)}.offer .btn{display:inline-block}.proof{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:30px}.proof article{border-top:1px solid var(--gold);padding-top:15px}.num{font:13px Arial;color:var(--gold);letter-spacing:.1em}.proof h3{font-size:17px;color:var(--navy);margin:7px 0}.proof p{font-size:14px;color:var(--t-muted,#626b77);margin:0}.valuebox{background:var(--navy);color:white;padding:28px 30px;margin-top:26px;display:grid;grid-template-columns:.75fr 1.25fr;gap:28px}.valuebox h3{margin:0;font-size:22px}.valuebox p{margin:0;color:var(--t-text,#e1e5ed)}.valuebox ul{margin:12px 0 0;padding-left:18px;color:var(--t-text,#e1e5ed);font-size:14px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.process article{background:#f8f7f4;padding:18px}.process b{display:block;font:700 14px Arial;color:var(--navy)}.process p{font-size:14px;color:var(--t-muted,#667085);margin:7px 0 0}.booking{background:var(--paper);padding:60px 24px}.bookingGrid{display:grid;grid-template-columns:.75fr 1.25fr;gap:22px;align-items:start}.bookIntro{position:sticky;top:15px}.bookIntro .btn{display:inline-block;margin-top:10px}.panel{background:#fff;border:1px solid var(--line);padding:22px}.panel h2{font-size:20px;margin:0 0 4px}.sub{font:13px/1.5 Arial;color:var(--muted);margin:0 0 16px}.steps{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.step{font-size:11px;color:var(--t-muted,#737b89);padding:6px 10px;border-radius:20px;background:#f0f0ef}.step.active{background:#e6eaf1;color:var(--navy);font-weight:bold}.chosen{font:13px Arial;background:#f8f7f4;border-left:2px solid var(--gold);padding:10px;margin:12px 0;color:var(--t-muted,#434c59)}.calhead{display:flex;justify-content:space-between;align-items:center;margin:12px 0}.calhead strong{font:700 14px Arial;color:var(--navy)}.monthnav button{border:1px solid var(--line);background:#fff;width:30px;height:30px;color:var(--navy)}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.dow{text-align:center;font:10px Arial;color:var(--t-muted,#9399a3);padding:4px}.day{border:1px solid #e2e4e7;background:#fff;min-height:46px;text-align:center;font:13px Arial;color:var(--t-muted,#404857)}.day small{display:block;font-size:9px;color:var(--t-muted,#87909c)}.day.available:hover,.day.active{border-color:var(--wine);background:#faf3f2;color:var(--wine)}.day.disabled{opacity:.38;cursor:not-allowed}.slots{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.slot{border:1px solid #d8dbe0;background:#fff;color:var(--navy);padding:7px 12px;font:13px Arial}.slot.active,.slot:hover{background:var(--navy);color:white}.empty{color:var(--t-muted,#78808c);background:#f8f8f7;padding:11px;font:13px Arial}.form{border-top:1px solid var(--line);margin-top:18px;padding-top:17px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:grid;gap:4px}.field.full{grid-column:1/-1}.field label{font:700 11px Arial;color:var(--t-muted,#535d6d)}.field input,.field textarea{border:1px solid #d8dce3;padding:9px;font:13px Arial;width:100%}.field textarea{min-height:74px;resize:vertical}.check{display:flex;gap:7px;font:11px/1.45 Arial;color:var(--t-muted,#697180);margin:11px 0}.cta{width:100%;background:var(--wine);border:0;color:white;padding:12px;font:bold 13px Arial}.cta:disabled{opacity:.45}.fine{font:10px/1.5 Arial;color:var(--t-muted,#858d98)}.notice{display:none;background:#e9f2ed;color:#265d43;padding:11px;font:13px Arial;margin-top:10px}.faq{max-width:800px;margin:25px auto 0}.faq details{border-top:1px solid var(--line);padding:14px 2px}.faq summary{font:700 14px Arial;color:var(--navy);cursor:pointer}.faq p{font-size:14px;color:var(--t-muted,#606a78)}.admin{display:none;margin:20px auto;max-width:1060px}.admin.show{display:block}.adminGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin form{display:flex;gap:7px;flex-wrap:wrap}.admin input,.admin select{border:1px solid var(--line);padding:8px}.admin button{background:var(--navy);color:white;border:0;padding:8px}.list{list-style:none;padding:0}.list li{border-bottom:1px solid var(--line);padding:8px 0;font:12px Arial}.list li button{float:right;background:none;color:#a33;padding:0}.footer{padding:22px;text-align:center;color:var(--t-muted,#818995);font:10px Arial;border-top:1px solid #eee}.nav .manage{background:white;color:var(--t-muted,#687080);border:1px solid #ddd;padding:7px 9px;font-size:11px}
@media(max-width:760px){.nav{height:auto;padding:12px 16px}.navlinks a{display:none}.hero{padding:40px 17px}.heroGrid,.bookingGrid,.valuebox,.offers{grid-template-columns:1fr}.section,.booking{padding:43px 17px}.proof,.process{grid-template-columns:1fr}.heroAside{margin-top:0}.bookIntro{position:static}.offer ul{min-height:0}.adminGrid{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}}

/* Direzione visiva ispirata al riferimento:antracite, bianco e giallo, titoli condensati. */
:root{--navy:#171717;--blue:#f2bd00;--gold:#f2bd00;--paper:#171717;--ink:#f2f2f2;--muted:#a5a5a5;--line:#393939;--white:#222;--wine:#f2bd00}
body{background:var(--t-bg,#171717);color:var(--t-text,#f0f0f0);font-family:Arial,Helvetica,sans-serif}
.nav{background:var(--t-bg,#171717);border-color:var(--t-line,#333);color:var(--t-text,#fff)}
.brand{color:var(--t-text,#fff);letter-spacing:.18em;font-size:16px}.brand small{color:var(--t-muted,#a5a5a5);letter-spacing:.14em;font-size:9px}
.navlinks a{color:var(--t-text,#ddd)}.nav .manage{background:var(--t-surface,#242424);color:var(--t-text,#eee);border-color:var(--t-line,#444)}
.nav .btn,.btn,.btn.secondary,.cta,.admin button{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717);border-radius:3px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.hero,.section,.section.soft,.booking{background:var(--t-bg,#171717);color:var(--t-text,#ededed)}
.hero{padding-top:48px;padding-bottom:54px}
.crumb{color:var(--t-muted,#9a9a9a);text-transform:uppercase;letter-spacing:.09em}
.tag{color:var(--t-accent-text,#f2bd00);letter-spacing:.16em;font-weight:800}
.hero h1,.section h2,.booking h2,.panel h2,.faq h2{font-family:Impact,"Arial Narrow",Arial,sans-serif;text-transform:uppercase;font-weight:900;letter-spacing:.01em;color:var(--t-text,#f5f5f5)}
.hero h1{font-size:clamp(40px,5.3vw,64px);line-height:1.02}
.hero .lead{color:var(--t-text,#d0d0d0);font-size:17px}
.heroAside{border:1px solid var(--t-accent,#f2bd00);border-radius:10px;padding:76px 22px 18px;min-height:240px;position:relative;background:linear-gradient(145deg,var(--t-surface,#252525),var(--t-bg2,#111));box-shadow:0 12px 35px #0006;color:var(--t-muted,#b7b7b7)}
.heroAside:before{content:"▶";position:absolute;left:50%;top:24px;transform:translateX(-50%);width:54px;height:54px;display:grid;place-items:center;background:#eee;color:var(--t-on-accent,#171717);border-radius:50%;font-size:20px;padding-left:4px}
.heroAside:after{content:"CONSULENZA TECNICA IN VIDEO";position:absolute;bottom:14px;left:18px;font:700 10px Impact,"Arial Narrow",Arial,sans-serif;letter-spacing:.11em;color:var(--t-accent-text,#f2bd00)}
.heroAside.conVideo{padding-top:16px}.heroAside.conVideo:before{content:none}
.heroVideo{position:relative;aspect-ratio:16/9;margin:0 0 16px;border-radius:7px;overflow:hidden;background:#000}.heroVideo video{display:block;width:100%;height:100%;object-fit:cover}
.heroPlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;display:grid;place-items:center;border:0;border-radius:50%;background:#eee;color:var(--t-on-accent,#171717);font-size:20px;padding-left:4px;box-shadow:0 4px 18px #0007;transition:transform .15s}.heroPlay:hover,.heroPlay:focus-visible{transform:translate(-50%,-50%) scale(1.08)}.heroVideo.inRiproduzione .heroPlay{display:none}
.heroAside strong{color:var(--t-text,#fff);text-transform:uppercase;font-size:13px;letter-spacing:.04em}.heroAside p{color:var(--t-muted,#bcbcbc);font-size:13px;margin-top:5px;padding-bottom:24px}
.bar{color:var(--t-muted,#ccc)}.bar span:before{color:var(--t-accent-text,#f2bd00)}
.section h2,.booking h2{font-size:clamp(26px,3vw,36px)}
.intro,.section .intro{color:var(--t-muted,#b5b5b5)}
.offer,.panel,.admin.panel{background:var(--t-surface,#222);border-color:var(--t-line,#3e3e3e);color:var(--t-text,#eee)}
.offer.featured{border-color:var(--t-accent,#f2bd00);box-shadow:0 12px 28px #0006}
.offer h3,.process b{color:var(--t-text,#fff);text-transform:uppercase;letter-spacing:.025em}
.offer .desc,.offer ul,.proof p,.process p{color:var(--t-muted,#b8b8b8)}
.price{color:var(--t-accent-text,#f2bd00)}.price small{color:var(--t-muted,#aaa)}
.timing{color:var(--t-accent-text,#f2bd00)}
.offer.featured .badge{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#161616)}
.proof article{border-color:var(--t-accent,#f2bd00)}.num{color:var(--t-accent-text,#f2bd00)}.proof h3{color:var(--t-text,#fff);text-transform:uppercase}
.valuebox{background:var(--t-surface,#222);border:1px solid var(--t-line,#444);border-left:3px solid var(--t-accent,#f2bd00);color:var(--t-text,#eee)}.valuebox h3{color:white;text-transform:uppercase}.valuebox p,.valuebox ul{color:var(--t-muted,#c4c4c4)}
.process article{background:var(--t-surface,#222);border-top:1px solid var(--t-accent,#f2bd00)}.process b{color:var(--t-text,#fff)}
.booking{border-top:1px solid var(--t-line,#333);border-bottom:1px solid var(--t-line,#333)}.booking .panel{background:var(--t-surface,#222);border-color:var(--t-line,#424242)}
.sub{color:var(--t-muted,#aaa)}.step{background:var(--t-surface2,#333);color:var(--t-muted,#aaa)}.step.active{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717)}
.chosen{background:var(--t-surface2,#292929);color:var(--t-text,#eee);border-color:var(--t-accent,#f2bd00)}
.calhead strong{color:var(--t-text,#fff)}.monthnav button,.day,.slot{background:var(--t-surface,#222);color:var(--t-text,#eee);border-color:var(--t-line,#444)}
.day small{color:var(--t-muted,#aaa)}.day.available:hover,.day.active{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717);border-color:var(--t-accent,#f2bd00)}.day.active small,.day.available:hover small{color:var(--t-on-accent,#333)}.slot:hover,.slot.active{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717);border-color:var(--t-accent,#f2bd00)}
.empty{background:var(--t-surface2,#292929);color:var(--t-muted,#aaa)}
.field label{color:var(--t-text,#ddd)}.field input,.field textarea,.admin input,.admin select{background:var(--t-bg,#171717);color:var(--t-text,#fff);border-color:var(--t-line,#4a4a4a)}
.check{color:var(--t-muted,#bdbdbd)}.fine{color:var(--t-muted,#969696)}.faq details{border-color:var(--t-line,#393939)}.faq summary{color:var(--t-text,#fff)}.faq p{color:var(--t-muted,#b5b5b5)}
.footer{background:var(--t-bg,#171717);border-color:var(--t-line,#333);color:var(--t-muted,#8e8e8e)}.list li{border-color:var(--t-line,#444);color:var(--t-text,#ddd)}.list button{color:var(--t-accent-text,#f2bd00)}.admin .sub{color:var(--t-muted,#aaa)}
@media(max-width:760px){.navlinks{gap:7px}.nav .btn{padding:9px 10px;font-size:10px}.hero h1{font-size:40px}.heroAside{min-height:215px}}

.serviceTabs{display:flex;gap:0;margin-top:28px;border-bottom:1px solid var(--t-line,#515151)}.serviceTab{flex:1;text-align:left;background:var(--t-surface,#242424);color:var(--t-muted,#c4c4c4);border:1px solid var(--t-line,#444);border-bottom:0;padding:15px 18px;font:bold 14px Arial;letter-spacing:.05em}.serviceTab small{display:block;font-size:10px;color:var(--t-muted,#aaa);margin-top:4px}.serviceTab.active{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717);border-color:var(--t-accent,#f2bd00)}.serviceTab.active small{color:var(--t-on-accent,#292929)}.tabPanel{padding-top:16px}.tabPanel[hidden]{display:none!important}.durationOptions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.durationCard{background:var(--t-surface,#222);border:1px solid var(--t-line,#3e3e3e);padding:21px}.durationCard h3{font:800 19px Arial;text-transform:uppercase;color:var(--t-text,#fff);margin:8px 0}.durationCard p{font:14px/1.55 Arial;color:var(--t-muted,#b8b8b8);min-height:44px}.duration{font:900 36px Impact,"Arial Narrow",Arial,sans-serif;color:var(--t-accent-text,#f2bd00);margin-top:12px}.duration small{font:13px Arial;color:var(--t-muted,#bbb)}.durationCard .price{font:700 14px Arial;color:var(--t-accent-text,#f2bd00);margin:0 0 12px}.durationCard ul{padding-left:18px;min-height:116px;color:var(--t-muted,#bdbdbd);font:13px/1.5 Arial}.durationCard li{margin:5px 0}.durationCard .btn{display:inline-block}.durationCard .tag{font-size:10px}@media(max-width:760px){.durationOptions{grid-template-columns:1fr}.serviceTab{font-size:11px;padding:12px 8px}.durationCard ul{min-height:0}}

.adminSection{border-top:1px solid var(--t-line,#494949);padding:22px 0}.adminSection h3{font:bold 17px Arial;text-transform:uppercase;color:var(--t-accent-text,#f2bd00);margin:0 0 6px}.adminRow{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:12px 0}.adminField{display:grid;gap:5px;min-width:145px}.adminField.wide{width:100%}.adminField>label,.priceGrid label{font:bold 11px Arial;color:var(--t-text,#ddd)}.adminField input,.adminField select{min-height:38px}.checks{display:flex;flex-wrap:wrap;gap:8px 17px;align-items:center;margin-top:7px}.checks label{font:12px Arial;color:var(--t-text,#ddd);display:flex;gap:6px;align-items:center}.checks input{accent-color:var(--t-accent,#f2bd00)}.plansChecks,.paymentChecks{padding:12px;background:var(--t-bg2,#191919);border:1px solid var(--t-line,#3e3e3e)}.breakCheck{margin:14px 0}.breakCheck input[type=time]{width:110px}.adminSave{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717);border:0;border-radius:3px;padding:10px 14px;font:bold 11px Arial;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.priceGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:15px 0}.priceGrid label{display:flex;flex-direction:column;gap:7px;background:var(--t-bg2,#191919);border:1px solid var(--t-line,#404040);padding:12px}.priceGrid label span{color:var(--t-accent-text,#f2bd00);font-size:18px}.priceGrid input{width:100%;background:var(--t-bg2,#111);color:var(--t-text,#fff);border:1px solid var(--t-line,#4a4a4a);padding:9px}.configInfo{font:12px/1.5 Arial;color:var(--t-muted,#bdbdbd);background:var(--t-surface2,#292929);padding:9px;margin:10px 0}.bookingPay{font:12px Arial;color:var(--t-muted,#bdbdbd);margin:8px 0}.bookingPay strong{color:var(--t-accent-text,#f2bd00)}.adminSection .list:empty{display:none}@media(max-width:760px){.priceGrid{grid-template-columns:1fr 1fr}.adminField{flex:1 1 135px}.checks{gap:9px 12px}}

.process{grid-template-columns:repeat(4,1fr)}.serviceTab{min-width:0}.serviceTab small{overflow-wrap:anywhere}.field select{border:1px solid var(--t-line,#4a4a4a);padding:9px;font:13px Arial;width:100%;background:var(--t-bg,#171717);color:var(--t-text,#fff)}.field .opt{font-weight:normal;color:var(--t-muted,#9a9a9a)}.formgroup{grid-column:1/-1;font:bold 11px Arial;color:var(--t-accent-text,#f2bd00);text-transform:uppercase;letter-spacing:.08em;margin-top:8px;padding-top:10px;border-top:1px solid var(--t-line,#393939)}.areaNote,.conflictNote{font:12px/1.5 Arial;background:var(--t-surface2,#292929);border-left:2px solid var(--t-accent,#f2bd00);color:var(--t-text,#ddd);padding:10px;margin:12px 0}.areaNote{display:none}.areaNote.on{display:block}.check a{color:var(--t-accent-text,#f2bd00)}@media(max-width:760px){.process{grid-template-columns:1fr}}

/* Loghi nelle schede (18/10/2026) */
.serviceTab{display:flex;align-items:center;gap:16px}
.serviceTab>span{min-width:0}
.tabLogo{flex:none;width:56px;height:56px;object-fit:contain;background:#fff;border-radius:6px;padding:5px;box-shadow:0 0 0 1px #00000022}
@media(max-width:760px){.serviceTab{gap:9px}.tabLogo{width:40px;height:40px;padding:3px}}

/* Tre durate per percorso (18/10/2026) */
.durationOptions{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.durationCard h3 .cardSub{display:block;font:600 12px Arial;letter-spacing:.06em;color:var(--t-muted,#b8b8b8);margin-top:4px;text-transform:uppercase}
/* Pulsanti delle schede:tutti in basso e centrati (18/10/2026) */
.durationCard{display:flex;flex-direction:column}
.durationCard ul{flex:1 0 auto}
.durationCard .btn.choose{align-self:center;margin-top:auto}

/* Box cliccabili e dettaglio del servizio sotto la fila (18/10/2026) */
.durationCard{cursor:pointer;transition:border-color .18s,transform .18s,box-shadow .18s}
.durationCard:hover,.durationCard.isShown{border-color:var(--t-accent,#f2bd00);transform:translateY(-3px);box-shadow:0 12px 26px #0007}
.durationCard:focus-visible{outline:2px solid var(--t-accent,#f2bd00);outline-offset:3px}
.durationCard[aria-expanded="true"]{box-shadow:0 0 0 1px var(--t-accent,#f2bd00),0 12px 26px #0007}
.serviceDetail{grid-column:1/-1;position:relative;background:var(--t-surface,#262626);border:1px solid var(--t-accent,#f2bd00);padding:0 26px;max-height:0;opacity:0;overflow:hidden;
  transition:max-height .3s ease,opacity .25s ease,padding .3s ease;margin-top:4px}
.serviceDetail.open{max-height:1200px;opacity:1;padding:22px 26px;overflow:visible}
.serviceDetail.open:before{content:"";position:absolute;top:-9px;left:calc(var(--notch-x,50%) - 9px);width:16px;height:16px;background:var(--t-surface,#262626);
  border-left:1px solid var(--t-accent,#f2bd00);border-top:1px solid var(--t-accent,#f2bd00);transform:rotate(45deg)}
.serviceDetail h3{font:900 22px Impact,"Arial Narrow",Arial,sans-serif;text-transform:uppercase;color:var(--t-text,#fff);margin:0 0 14px;letter-spacing:.02em}
.serviceDetail dl{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 26px;margin:0}
.serviceDetail dt{font:800 11px Arial;color:var(--t-accent-text,#f2bd00);text-transform:uppercase;letter-spacing:.09em;margin-bottom:5px}
.serviceDetail dd{margin:0;font:14px/1.55 Arial;color:var(--t-text,#d2d2d2)}
.detailFoot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid var(--t-line,#3e3e3e);margin-top:18px;padding-top:14px;font:13px Arial;color:var(--t-muted,#bbb)}
@media(max-width:1000px){.serviceDetail dl{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.serviceDetail dl{grid-template-columns:1fr}.serviceDetail.open:before{display:none}.serviceDetail.open{padding:18px}.detailFoot .btn{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.serviceDetail,.durationCard{transition:none}}
/* Tre box per percorso a tutta larghezza, colonne uguali (18/10/2026).
   Il pannello di dettaglio occupa una riga intera:con auto-fit creava una quarta colonna vuota. */
.durationOptions{grid-template-columns:repeat(3,minmax(0,1fr))}
.durationCard .btn.choose{white-space:nowrap}
@media(max-width:860px){.durationOptions{grid-template-columns:minmax(0,1fr)}}

/* Icona a tema accanto al titolo di ogni box (18/10/2026) */
.durationCard h3 .cardIcon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin:0 10px 0 -2px;vertical-align:-8px;
  border:1px solid var(--t-accent,#f2bd00);border-radius:50%;color:var(--t-accent-text,#f2bd00);transition:background .18s,color .18s}
.durationCard h3 .cardIcon svg{width:20px;height:20px}
.durationCard:hover h3 .cardIcon,.durationCard.isShown h3 .cardIcon{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717)}

/* Testata fissa in alto, con i loghi dei due siti (18/10/2026) */
.nav{position:sticky;top:0;z-index:50;box-shadow:0 1px 0 var(--t-line,#333),0 8px 22px #0008}
html{scroll-padding-top:96px}   /* le ancore (#prenota, #faq…) non finiscono sotto la testata */
.brandWrap{display:flex;align-items:center;gap:18px;min-width:0}
.siteLogo{display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;padding:2px;border:1px solid transparent;border-radius:6px;transition:border-color .18s,background .18s}
.siteLogo:hover,.siteLogo:focus-visible{border-color:var(--t-accent,#f2bd00);background:#ffffff0d;outline:none}
.siteLogo img{width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.brandWrap{gap:8px}.siteLogo{width:40px;height:40px}.brand small{display:none}}
.siteLogo{flex:none}
@media(max-width:760px){.siteLogo{width:38px;height:38px;padding:1px}.brand{font-size:13px;letter-spacing:.12em}}
@media(max-width:760px){.nav .soloLargo{display:none}.nav .btn{white-space:nowrap}.navlinks{flex:none}}

/* Pulsante chiaro/scuro per i visitatori (solo se abilitato dalla gestione) */
.modeToggle{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--t-text,#eee);border:1px solid var(--t-line,#444);border-radius:20px;padding:6px 11px;font:12px Arial;cursor:pointer}
.modeToggle:hover,.modeToggle:focus-visible{border-color:var(--t-accent,#f2bd00);outline:none}
.modeToggle[hidden]{display:none}
@media(max-width:760px){.modeToggle span{display:none}.modeToggle{padding:6px}}
.nav .modeToggle{background:transparent;color:var(--t-text,#eee);font-weight:normal;text-transform:none;letter-spacing:0}
/* Titolo principale ridotto del 25% (18/10/2026): era clamp(40px,5.3vw,64px), 40px su telefono */
.hero h1{font-size:clamp(30px,3.98vw,48px);max-width:none}
@media(max-width:760px){.hero h1{font-size:30px}}
/* 18/10 — fascia «Più scelto» sulla card Focus: verde brillante, lampeggio e riflesso */
.durationCard.isTop{position:relative;overflow:hidden;border-color:#1fe06a;box-shadow:0 0 0 1px #1fe06a55,0 0 22px #1fe06a22}
.topRibbon{position:absolute;top:22px;right:-46px;z-index:2;width:180px;transform:rotate(45deg);background:linear-gradient(90deg,#00c853,#39ff88 50%,#00c853);color:#04210f;text-align:center;font:900 12px Arial;letter-spacing:.14em;text-transform:uppercase;padding:7px 0;box-shadow:0 4px 14px #00e67666,inset 0 1px 0 #ffffff80,inset 0 -1px 0 #0003;animation:topBlink 1.4s ease-in-out infinite;pointer-events:none;overflow:hidden}
.topRibbon span{position:relative;display:block}
.topRibbon:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,#ffffffcc,transparent);transform:skewX(-20deg);animation:topShine 2.8s ease-in-out infinite}
@keyframes topBlink{0%,100%{filter:brightness(1);box-shadow:0 4px 14px #00e67666,inset 0 1px 0 #ffffff80}50%{filter:brightness(1.35);box-shadow:0 0 24px #39ff88cc,inset 0 1px 0 #ffffff80}}
@keyframes topShine{0%,55%{left:-60%}100%{left:130%}}
.durationCard.isTop .tag{padding-right:70px}
@media(prefers-reduced-motion:reduce){.topRibbon,.topRibbon:after{animation:none}}

/* giorni del calendario colorati per disponibilità (verde libero, arancio parziale, rosso completo) */
.day.libero{background:#1f5c38;border-color:#2f8f5b;color:#fff}.day.libero small{color:#c9f1d8}
.day.parziale{background:#8a4a12;border-color:#d9822b;color:#fff}.day.parziale small{color:#ffe0c2}
.day.pieno{background:#6b1f1f;border-color:#a33a3a;color:#f3d6d6;opacity:.9}.day.pieno small{color:#f3c0c0}
.day.libero:hover,.day.parziale:hover{filter:brightness(1.18)}
.day.libero.active,.day.parziale.active{background:var(--t-accent,#f2bd00);color:var(--t-on-accent,#171717);border-color:var(--t-accent,#f2bd00);filter:none}
.day.libero.active small,.day.parziale.active small{color:var(--t-on-accent,#333)}
.calLegenda{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 2px;font:12px Arial;color:var(--t-muted,#bbb)}
.calLegenda span:before{content:"";display:inline-block;width:11px;height:11px;margin-right:6px;vertical-align:-1px;border-radius:2px}
.calLegenda .libero:before{background:#2f8f5b}.calLegenda .parziale:before{background:#d9822b}.calLegenda .pieno:before{background:#a33a3a}
@media(max-width:560px){.day .orariTxt{display:none}}
.mancano{margin:10px 0 4px;padding:10px 12px;border-left:3px solid #d9822b;background:rgba(217,130,43,.12);font:12px/1.5 Arial;color:var(--t-text,#eee)}
.mancano[hidden]{display:none}.mancano b{display:block;margin-bottom:4px;color:#f0a65c}
.mancano ul{margin:0;padding-left:18px}.mancano li{margin:2px 0}.mancano a{color:inherit;text-decoration:underline dotted;text-underline-offset:2px}
.mancano a:hover{color:#f0a65c}
.payBox{margin-top:22px;padding:18px 18px 14px;border:1px solid var(--t-line,#3e3e3e);border-left:3px solid var(--t-accent,#f2bd00);background:var(--t-surface,#1d2633)}
.payBox h3{margin:0 0 12px;font:700 15px Arial;text-transform:uppercase;letter-spacing:.05em;color:var(--t-text,#fff)}
.payBox ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.payBox li{display:flex;align-items:center;gap:12px}
.payBox .payIco{flex:none;display:flex;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.35)}
.payBox .payIco svg{display:block}
.payBox b{display:block;font:700 14px Arial;color:var(--t-text,#fff)}
.payBox small{display:block;font:12px Arial;color:var(--t-muted,#b8b8b8)}
.payBox .payNota{margin:12px 0 0;font:12px/1.5 Arial;color:var(--t-muted,#b8b8b8)}
.field.manca input,.field.manca select,.field.manca textarea{border-color:#e05555!important;box-shadow:0 0 0 2px rgba(224,85,85,.35)}
.field.manca label{color:#ff9c9c!important}
.check.manca{outline:2px solid rgba(224,85,85,.7);outline-offset:3px;border-radius:3px}
.check.manca span{color:#ffc2c2}
#calendar.manca,#slots.manca{outline:2px solid rgba(224,85,85,.7);outline-offset:4px;border-radius:3px}
.cta.inattivo{opacity:.55;cursor:pointer}
.mancano.allerta{border-left-color:#e05555;background:rgba(224,85,85,.14)}.mancano.allerta b{color:#ff9c9c}
