/* ============================================================
   HOME B "La via in tre tiri" (ottobre 2026)
   Usata solo da template-home-b.php. Calcare #D8D9D3, gesso #F3F4F1,
   inchiostro #1C2321, giallo logo #FFC700. Carattere: Geologica.
   Per tornare alla home precedente: pagina Home > Template "SDA - Home".
   ============================================================ */
body.sda-hb{margin:0; background:#D8D9D3; color:#1C2321; font-family:'Geologica',system-ui,sans-serif; font-size:18px; line-height:1.55; -webkit-font-smoothing:antialiased; overflow-x:hidden}
body.sda-hb *,body.sda-hb *::before,body.sda-hb *::after{box-sizing:border-box}
.sda-hb a{color:#1C2321}
.sda-hb a:hover{color:#1C2321}
.sda-hb a:focus-visible{outline:3px solid #1C2321; outline-offset:3px}
.sda-hb img{display:block; max-width:100%; height:auto}
.sda-hb h1,.sda-hb h2,.sda-hb h3,.sda-hb p,.sda-hb dl,.sda-hb dd,.sda-hb figure,.sda-hb ul{margin:0}
.sda-hb h1,.sda-hb h2,.sda-hb h3{font-family:'Geologica',system-ui,sans-serif; color:inherit; text-transform:none}
.sda-hb .hb-sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
.sda-hb .hb-wrap{max-width:1240px; margin:0 auto; padding:0 clamp(20px,4vw,48px)}

/* pulsanti */
.sda-hb .hb-btn{display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:12px 22px; border:2px solid #1C2321; border-radius:6px; background:#1C2321; color:#F3F4F1; text-decoration:none; font-family:'Geologica',system-ui,sans-serif; font-weight:600; font-size:17px; line-height:1.2; letter-spacing:0; text-transform:none; transition:background .15s, color .15s}
.sda-hb .hb-btn:hover{background:#34403C; border-color:#34403C; color:#F3F4F1}
.sda-hb .hb-btn-line{background:transparent; color:#1C2321}
.sda-hb .hb-btn-line:hover{background:#1C2321; border-color:#1C2321; color:#F3F4F1}
.sda-hb .hb-btn-yellow{background:#FFC700; border-color:#FFC700; color:#1C2321}
.sda-hb .hb-btn-yellow:hover{background:#FFD84D; border-color:#FFD84D; color:#1C2321}
.sda-hb .hb-btn-sm{min-height:48px; padding:10px 20px; font-size:16px}

/* barra in alto */
.sda-hb .hb-top{position:relative; z-index:20; background:#D8D9D3; border-bottom:2px solid #1C2321}
.sda-hb .hb-top .hb-wrap{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px 32px; padding-top:16px; padding-bottom:16px}
.sda-hb .hb-brand{display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 12px; text-decoration:none}
.sda-hb .hb-brand span{font-family:'Roca One','Baloo 2',sans-serif; font-weight:800; font-size:24px; line-height:1.1}
.sda-hb .hb-brand .n{color:#1C2321}
.sda-hb .hb-brand .s{color:#FFC700; text-shadow:2px 2px 0 #1C2321}
.sda-hb .hb-menu{display:flex; flex-wrap:wrap; align-items:center; gap:4px 26px; font-weight:500; font-size:17px}
.sda-hb .hb-menu a{color:#1C2321; text-decoration:none; padding:10px 0}
.sda-hb .hb-menu a:hover{text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:2px}
.sda-hb .hb-menu a.hb-btn{padding:10px 18px; min-height:44px; color:#F3F4F1; font-size:16px}
.sda-hb .hb-menu a.hb-btn:hover{text-decoration:none}
.sda-hb .sda-lang-btn{display:inline-flex; align-items:center; gap:8px; min-height:0; padding:10px 0; border:0; border-radius:0; background:none; box-shadow:none; transform:none; font:inherit; letter-spacing:0; text-transform:none; color:inherit; text-decoration:none}
.sda-hb .sda-lang-btn span{display:inline-flex; align-items:center; justify-content:center; padding:1px 6px; border:1.5px solid currentColor; border-radius:3px; font-size:13px; font-weight:800; line-height:1.3}
.sda-hb .sda-lang-btn:hover{transform:none; background:none; border:0}
.sda-hb .hb-toggle{display:none}
.sda-hb .hb-burger{display:none}
@media (max-width:920px){
  .sda-hb .hb-toggle{display:block; position:absolute; opacity:0; width:1px; height:1px}
  .sda-hb .hb-burger{display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; width:48px; height:48px; border:2px solid #1C2321; border-radius:6px; cursor:pointer}
  .sda-hb .hb-burger span{display:block; width:22px; height:2px; background:#1C2321}
  .sda-hb .hb-toggle:focus-visible + .hb-wrap .hb-burger{outline:3px solid #1C2321; outline-offset:3px}
  .sda-hb .hb-menu{display:none; width:100%; flex-direction:column; align-items:stretch; gap:0; padding-bottom:6px}
  .sda-hb .hb-menu a,.sda-hb .hb-menu .sda-lang-btn{padding:14px 0; border-top:1px solid #A9AEA8}
  .sda-hb .hb-menu a.hb-btn{margin-top:14px; border-top:2px solid #1C2321; min-height:52px}
  .sda-hb .hb-toggle:checked + .hb-wrap .hb-menu{display:flex}
}

/* apertura con lo schizzo della via */
.sda-hb .hb-hero{padding:56px 0 96px}
.sda-hb .hb-hero .hb-wrap{display:flex; flex-wrap:wrap; gap:48px 64px; align-items:center}
.sda-hb .hb-hero-copy{flex:1 1 440px; min-width:0; display:flex; flex-direction:column; gap:26px}
.sda-hb .hb-pre{font-weight:500; font-size:18px; color:#49524E}
.sda-hb .hb-h1{font-weight:800; font-size:clamp(40px,4.6vw,66px); line-height:1.02; letter-spacing:-.025em}
.sda-hb .hb-lede{max-width:30em; font-size:20px; line-height:1.5; color:#49524E}
.sda-hb .hb-ctas{display:flex; flex-wrap:wrap; gap:12px}
.sda-hb .hb-topo-col{flex:1 1 560px; min-width:0}
.sda-hb .hb-topo{position:relative; width:100%; aspect-ratio:600/720; background:#F3F4F1; border:2px solid #1C2321; border-radius:6px; overflow:hidden; container-type:inline-size}
.sda-hb .hb-topo svg{position:absolute; inset:0; width:100%; height:100%; display:block}
.sda-hb .hb-belay,.sda-hb .hb-attacco{position:absolute; transform:translateY(-50%); font-size:12px; font-size:clamp(11px,2.4cqi,15px); line-height:1.2}
.sda-hb .hb-belay{font-weight:800}
.sda-hb .hb-attacco{font-weight:600; color:#49524E}
.sda-hb .hb-pitch{position:absolute; transform:translateY(-50%); display:block; padding:10px 14px; background:#F3F4F1; border:2px solid #1C2321; border-radius:6px; color:#1C2321; text-decoration:none; font-size:13px; font-size:clamp(12px,2.7cqi,17px); line-height:1.3; transition:background .15s}
.sda-hb .hb-pitch:hover{background:#FFFFFF; color:#1C2321}
.sda-hb .hb-pitch .b{display:inline-block; padding:1px 7px; margin-right:6px; background:#FFC700; border:1.5px solid #1C2321; border-radius:3px; font-weight:800; font-size:.9em}
.sda-hb .hb-pitch strong{font-weight:800}
.sda-hb .hb-pitch .d{display:block; margin-top:4px; color:#49524E}

/* prossime partenze */
.sda-hb .hb-dates{background:#F3F4F1; padding:80px 0 88px}
.sda-hb .hb-sec-head{display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:12px 32px; margin-bottom:28px}
.sda-hb .hb-h2{font-weight:800; font-size:clamp(34px,4vw,54px); line-height:1.05; letter-spacing:-.02em}
.sda-hb .hb-note{max-width:30em; color:#49524E}
.sda-hb .hb-rows{list-style:none; padding:0; border-top:2px solid #1C2321}
.sda-hb .hb-row{display:flex; flex-wrap:wrap; align-items:center; gap:10px 28px; padding:20px 0; border-bottom:1.5px solid #A9AEA8}
.sda-hb .hb-when{flex:0 0 170px; font-weight:800; font-size:30px; line-height:1.1; letter-spacing:-.02em}
.sda-hb .hb-badge{flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; background:#FFC700; border:2px solid #1C2321; border-radius:4px; font-weight:800; font-size:16px; line-height:1}
.sda-hb .hb-badge-lg{width:48px; height:48px; font-size:20px}
.sda-hb .hb-what{flex:1 1 320px; min-width:0}
.sda-hb .hb-what h3{font-size:20px; font-weight:600; line-height:1.3; letter-spacing:0}
.sda-hb .hb-what p{margin-top:2px; font-size:16px; color:#49524E}
.sda-hb .hb-price{flex:0 0 130px}
.sda-hb .hb-price strong{display:block; font-weight:800; font-size:26px; line-height:1.1}
.sda-hb .hb-price span{font-size:14px; color:#49524E}
.sda-hb .hb-after{margin-top:28px; font-size:18px}
.sda-hb .hb-after a{font-weight:600}

/* i tre tiri */
.sda-hb .hb-tiro{padding:96px 0}
.sda-hb .hb-tiro-alt{background:#F3F4F1}
.sda-hb .hb-tiro .hb-wrap{display:flex; flex-wrap:wrap; gap:40px 64px; align-items:center}
.sda-hb .hb-tiro-alt .hb-wrap{flex-direction:row-reverse}
.sda-hb .hb-tiro-copy{flex:1 1 460px; min-width:0; display:flex; flex-direction:column; gap:22px}
.sda-hb .hb-tiro-tag{display:flex; align-items:center; gap:14px; font-weight:600; font-size:18px; color:#49524E}
.sda-hb .hb-h2-tiro{font-weight:800; font-size:clamp(34px,3.8vw,54px); line-height:1.05; letter-spacing:-.02em}
.sda-hb .hb-text{max-width:34em; font-size:19px; color:#49524E}
.sda-hb .hb-facts{display:grid; grid-template-columns:max-content 1fr; gap:10px 24px; border-top:2px solid #1C2321; padding-top:18px; font-size:17px}
.sda-hb .hb-facts dt{font-weight:600; color:#49524E}
.sda-hb .hb-tiro-copy .hb-btn{align-self:flex-start}
.sda-hb .hb-photo{flex:1 1 480px; min-width:0}
.sda-hb .hb-photo img{width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:6px}

/* lezioni private in settimana */
.sda-hb .hb-week{background:#1C2321; color:#F3F4F1; padding:96px 0}
.sda-hb .hb-week .hb-wrap{display:flex; flex-wrap:wrap; gap:40px 64px; align-items:center}
.sda-hb .hb-week-copy{flex:1 1 460px; min-width:0; display:flex; flex-direction:column; gap:22px}
.sda-hb .hb-week .hb-text{color:#C9CEC9}
.sda-hb .hb-week-links{display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px}
.sda-hb .hb-week a.hb-week-link{color:#FFC700; font-weight:600; font-size:17px; padding:12px 0}
.sda-hb .hb-week a.hb-week-link:hover{color:#FFD84D}
.sda-hb .hb-rates{flex:1 1 420px; min-width:0}
.sda-hb .hb-rates table{width:100%; border-collapse:collapse; border:0; margin:0; font-size:17px; color:#F3F4F1; background:none}
.sda-hb .hb-rates th,.sda-hb .hb-rates td{border:0; background:none; text-align:left; vertical-align:middle; color:#F3F4F1}
.sda-hb .hb-rates thead th{padding:10px 12px; border-bottom:3px solid #FFC700; font-weight:600}
.sda-hb .hb-rates tbody th{padding:16px 12px 16px 0; font-weight:600}
.sda-hb .hb-rates td{padding:16px 12px; font-weight:800; font-size:28px; line-height:1}
.sda-hb .hb-rates thead th:first-child{padding-left:0}
.sda-hb .hb-rates th:last-child,.sda-hb .hb-rates td:last-child{padding-right:0}
.sda-hb .hb-rates tbody tr:first-child th,.sda-hb .hb-rates tbody tr:first-child td{border-bottom:1.5px solid rgba(243,244,241,.25)}
.sda-hb .hb-rates-note{margin-top:16px; font-size:15px; color:#C9CEC9}

/* chi ti fa sicura */
.sda-hb .hb-about{background:#F3F4F1; padding:96px 0}
.sda-hb .hb-about-grid{display:flex; flex-wrap:wrap; gap:40px 64px; align-items:flex-start; margin-top:40px}
.sda-hb .hb-about-photo{flex:1 1 320px; max-width:440px; min-width:0}
.sda-hb .hb-about-photo img{width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:6px}
.sda-hb .hb-about-copy{flex:1 1 480px; min-width:0; display:flex; flex-direction:column; gap:18px}
.sda-hb .hb-about-copy h3{font-weight:800; font-size:30px; line-height:1.15; letter-spacing:-.015em}
.sda-hb .hb-quote{font-weight:600; font-size:clamp(22px,2.2vw,28px); line-height:1.3; letter-spacing:-.01em}
.sda-hb .hb-about-copy .hb-text{font-size:18px}
.sda-hb .hb-about-copy .hb-facts{margin-top:8px}

/* piede */
.sda-hb .hb-foot{background:#1C2321; color:#C9CEC9; padding:56px 0 44px}
.sda-hb .hb-foot .hb-wrap{display:flex; flex-direction:column; gap:28px}
.sda-hb .hb-foot-top{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px 40px}
.sda-hb .hb-foot .hb-brand .n{color:#F3F4F1}
.sda-hb .hb-foot .hb-brand .s{text-shadow:2px 2px 0 #7A5F00}
.sda-hb .hb-foot-links{display:flex; flex-wrap:wrap; align-items:center; gap:6px 28px; font-weight:500; font-size:17px}
.sda-hb .hb-foot-links a{color:#F3F4F1; text-decoration:none; padding:8px 0}
.sda-hb .hb-foot-links a:hover{color:#FFC700}
.sda-hb .hb-legal{padding-top:24px; border-top:1px solid rgba(243,244,241,.2); font-size:14px; line-height:1.6; max-width:70em}
.sda-hb .hb-legal-links{display:flex; flex-wrap:wrap; gap:6px 24px; font-size:14px}
.sda-hb .hb-legal-links a{color:#F3F4F1}

/* correzioni dopo la prova */
.sda-hb .hb-row .hb-btn{flex:0 0 156px; padding-left:12px; padding-right:12px; white-space:nowrap}
@media (max-width:920px){
  .sda-hb .hb-brand{flex:1 1 0; min-width:0}
}
@media (max-width:700px){
  .sda-hb .hb-when{flex:1 1 auto; font-size:26px}
  .sda-hb .hb-price{flex:1 1 auto}
  .sda-hb .hb-row .hb-btn{margin-left:auto}
}

/* barra in alto: una riga sola su schermi larghi */
@media (min-width:921px){
  .sda-hb .hb-top .hb-wrap{gap:14px 24px}
  .sda-hb .hb-brand span{font-size:22px}
  .sda-hb .hb-menu{gap:4px 18px; font-size:16px}
  .sda-hb .hb-menu a.hb-btn{padding:10px 16px}
}

/* avviso cookie: stesso aspetto delle altre pagine; fondo pagina dello stesso colore */
.sda-hb .sda-cookie{font-family:'Geologica',system-ui,sans-serif}
.sda-hb .sda-cookie-in{background:#1C2321; color:#F3F4F1; border-radius:6px; box-shadow:0 18px 44px -20px rgba(28,35,33,.7)}
.sda-hb .sda-cookie-t,.sda-hb .sda-cookie-t b,.sda-hb .sda-cookie-t a{color:#F3F4F1}
.sda-hb .sda-cookie-t{color:#C9CEC9; font-size:15px}
.sda-hb .sda-cookie-b button{font:600 16px/1.2 'Geologica',system-ui,sans-serif; min-height:48px; border:2px solid #F3F4F1; border-radius:6px; background:transparent; color:#F3F4F1}
.sda-hb .sda-cookie-b button[data-sda-choice=granted]{background:#FFC700; border-color:#FFC700; color:#1C2321}
@media (max-width:640px){ .sda-hb .sda-cookie{bottom:80px} }
html.sda-html:has(> body.sda-hb){background:#D8D9D3}

/* titolo della Home: le tre parole, una per riga; i punti sono le soste della via */
.sda-hb .hb-hero-copy{container-type:inline-size}
.sda-hb .hb-h1.hb-trio{font-size:clamp(34px,10.4vw,54px); line-height:1.02; letter-spacing:-.025em}
@supports (font-size:1cqw){ .sda-hb .hb-h1.hb-trio{font-size:min(12cqw,84px)} }
.sda-hb .hb-trio .hb-w{display:block}
.sda-hb .hb-trio .hb-p{color:#FFC700; -webkit-text-stroke:.1em #1C2321; paint-order:stroke fill}

/* apertura con la foto, al posto dello schizzo della via */
.sda-hb .hb-photo-col{flex:1 1 400px; min-width:0}
.sda-hb .hb-photo{margin:0; position:relative; width:100%; aspect-ratio:5/6; border:2px solid #1C2321; border-radius:6px; overflow:hidden; background:#F3F4F1}
.sda-hb .hb-photo img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block}
@media (max-width:982px){ .sda-hb .hb-photo{aspect-ratio:4/3; max-width:720px} }
@media (max-width:560px){ .sda-hb .hb-photo{aspect-ratio:1/1} }
