/* ============================================================
   HOME M, la vetrina (novembre 2026). Usata solo da template-home-m.php.
   Barra nera con tendine, titoli Anton maiuscoli, testi Open Sans,
   rosso #DD0000 per i titoli, verde #0A8540 per i bottoni, giallo logo #FFC700.
   Per tornare alla home precedente: pagina Home > Template SDA - Home B.
   ============================================================ */
html.sda-html{scroll-padding-top:110px}
body.sda-hm{margin:0; background:#222222; color:#111111; font-family:'Open Sans',Arial,sans-serif; font-weight:300; font-size:16px; line-height:1.75; -webkit-font-smoothing:antialiased; overflow-x:clip}
body.sda-hm *,body.sda-hm *::before,body.sda-hm *::after{box-sizing:border-box}
.sda-hm h1,.sda-hm h2,.sda-hm h3,.sda-hm p,.sda-hm dl,.sda-hm dt,.sda-hm dd,.sda-hm figure,.sda-hm blockquote,.sda-hm ul,.sda-hm li{margin:0; padding:0; border:0; background:none}
.sda-hm blockquote::before,.sda-hm blockquote::after{content:none}
.sda-hm p,.sda-hm li,.sda-hm dt,.sda-hm dd,.sda-hm blockquote,.sda-hm figcaption{font-family:inherit; font-size:inherit; line-height:inherit; font-weight:inherit; letter-spacing:inherit; color:inherit}
.sda-hm h1,.sda-hm h2,.sda-hm h3{color:inherit; font-weight:400; letter-spacing:0}
.sda-hm img{display:block; max-width:100%; height:auto}
.sda-hm a{color:#111111; text-decoration:underline}
.sda-hm a:hover{color:#DD0000}
.sda-hm a:focus-visible,.sda-hm button:focus-visible{outline:3px solid #FFC700; outline-offset:2px}
.sda-hm strong{font-weight:700}
.sda-hm .hm-wrap{max-width:1140px; margin:0 auto; padding:0 24px}
.sda-hm .hm-sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
.sda-hm .hm-display{font-family:'Anton',Impact,'Arial Narrow',sans-serif; font-weight:400; text-transform:uppercase; line-height:1.1}

/* bottoni */
.sda-hm .hm-btn{display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:10px 28px; border:0; border-radius:5px; background:#0A8540; color:#FFFFFF; font-family:'Open Sans',Arial,sans-serif; font-weight:700; font-size:16px; line-height:1.2; letter-spacing:0; text-transform:uppercase; text-decoration:none; text-align:center; cursor:pointer; transition:background .15s}
.sda-hm .hm-btn:hover{background:#086B33; color:#FFFFFF}

/* barra in alto */
.sda-hm .hm-top{position:sticky; top:0; z-index:50; background:#0B0B0B; color:#FFFFFF}
body.admin-bar.sda-hm .hm-top{top:32px}
.sda-hm .hm-top .hm-wrap{display:flex; align-items:stretch; justify-content:space-between; gap:24px; min-height:100px; transition:min-height .2s}
.sda-hm .hm-top.is-compact .hm-wrap{min-height:62px}
.sda-hm .hm-brand{align-self:center; display:flex; flex-direction:column; gap:2px; text-decoration:none}
.sda-hm .hm-brand .n{font-family:'Baloo 2','Trebuchet MS',sans-serif; font-weight:800; font-size:24px; line-height:26px; color:#FFFFFF; transition:font-size .2s}
.sda-hm .hm-brand .s{font-family:'Baloo 2','Trebuchet MS',sans-serif; font-weight:800; font-size:19px; line-height:22px; color:#FFC700; transition:font-size .2s}
.sda-hm .hm-top.is-compact .hm-brand .n{font-size:20px; line-height:22px}
.sda-hm .hm-top.is-compact .hm-brand .s{font-size:16px; line-height:18px}
.sda-hm .hm-toggle{position:absolute; opacity:0; pointer-events:none}
.sda-hm .hm-burger{display:none}
.sda-hm .hm-menu{display:flex; align-items:stretch; gap:2px}
.sda-hm .hm-item{position:relative; display:flex; align-items:center}
.sda-hm .hm-link{display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:0 9px; margin:0; background:none; border:0; border-radius:0; box-shadow:none; color:#FFFFFF; font-family:'Open Sans',Arial,sans-serif; font-size:15px; font-weight:300; line-height:1; letter-spacing:0; text-transform:uppercase; text-decoration:none; white-space:nowrap; cursor:pointer}
.sda-hm .hm-link:hover,.sda-hm .hm-link:focus,.sda-hm .hm-item:hover>.hm-link,.sda-hm .hm-item:focus-within>.hm-link,.sda-hm .hm-item.is-open>.hm-link{background:none; color:#FFC700}
.sda-hm .hm-link svg{flex:none; width:10px; height:10px; transition:transform .15s}
.sda-hm .hm-sub{display:none; position:absolute; top:100%; left:0; z-index:60; min-width:260px; padding:8px 0; background:#FFFFFF; box-shadow:0 5px 15px rgba(0,0,0,.15)}
.sda-hm .hm-item.hm-end>.hm-sub{left:auto; right:0}
.sda-hm .hm-item:hover>.hm-sub,.sda-hm .hm-item:focus-within>.hm-sub,.sda-hm .hm-item.is-open>.hm-sub{display:block}
.sda-hm .hm-sub a{display:flex; align-items:center; min-height:44px; padding:6px 20px; color:#111111; font-size:14px; font-weight:400; line-height:1.3; text-transform:uppercase; text-decoration:none}
.sda-hm .hm-sub a:hover,.sda-hm .hm-sub a:focus{background:#EEEEEE; color:#111111}
.sda-hm .hm-menu-cta{display:none}

/* primo schermo */
.sda-hm .hm-hero{position:relative; overflow:hidden; background:#0B0B0B; color:#FFFFFF}
.sda-hm .hm-hero-img{position:absolute; top:0; right:0; width:58%; height:100%; max-width:none; object-fit:cover; object-position:50% 30%}
.sda-hm .hm-hero::after{content:''; position:absolute; top:0; right:0; bottom:0; left:0; background:linear-gradient(90deg,#0B0B0B 0%,#0B0B0B 42%,rgba(11,11,11,.8) 54%,rgba(11,11,11,.2) 76%,rgba(11,11,11,.32) 100%)}
.sda-hm .hm-hero .hm-wrap{position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center; gap:22px; min-height:clamp(440px,calc(100vh - 212px),640px); padding-top:clamp(32px,6vh,72px); padding-bottom:clamp(32px,6vh,72px)}
.sda-hm .hm-pre{font-size:14px; line-height:20px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#FFC700}
.sda-hm .hm-h1{font-size:clamp(46px,min(7vw,11.5vh),96px); line-height:1.04; color:#FFFFFF}
.sda-hm .hm-h1 span{display:block}
.sda-hm .hm-lede{max-width:560px; font-size:19px; line-height:30px; color:#FFFFFF}

/* striscia sotto il primo schermo */
.sda-hm .hm-hatch{background-color:#1C1C1C; background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.045) 0,rgba(255,255,255,.045) 1px,rgba(255,255,255,0) 1px,rgba(255,255,255,0) 6px)}
.sda-hm .hm-stone{background-color:#D8D8D8; background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.35) 0,rgba(255,255,255,.35) 1px,rgba(255,255,255,0) 1px,rgba(255,255,255,0) 7px)}
.sda-hm .hm-strip{color:#FFFFFF}
.sda-hm .hm-strip .hm-wrap{display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:16px 48px; padding-top:24px; padding-bottom:24px}
.sda-hm .hm-strip-copy{flex:2 1 420px; min-width:0; text-align:center}
.sda-hm .hm-strip-title{font-size:21px; line-height:28px; font-weight:700; color:#FFFFFF}
.sda-hm .hm-strip-text{margin-top:4px; font-size:16px; line-height:24px; font-style:italic; color:#FFFFFF}
.sda-hm .hm-strip-cta{flex:1 1 260px; display:flex; justify-content:center}

/* chi sono */
.sda-hm .hm-bio{background:#FFFFFF}
.sda-hm .hm-bio .hm-wrap{padding-top:72px; padding-bottom:72px}
.sda-hm .hm-name{font-size:60px; line-height:1.05; color:#111111}
.sda-hm .hm-name span{display:block}
.sda-hm .hm-rule{height:1px; margin:28px 0; background:#D0D0D0}
.sda-hm .hm-bio-grid{display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:32px 56px; align-items:start}
.sda-hm .hm-bio-text{display:flex; flex-direction:column; gap:20px}
.sda-hm .hm-portrait{width:220px; height:220px; border-radius:50%; background-color:#CFCFCF; background-repeat:no-repeat; background-size:160% auto; background-position:100% 2%}
.sda-hm .hm-proof-title{margin:64px 0 32px; text-align:center; font-size:40px; color:#DD0000}
.sda-hm .hm-proof{display:grid; grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr)); gap:24px}
.sda-hm .hm-proof div{padding-top:14px; border-top:3px solid #111111}
.sda-hm .hm-proof dt{font-size:13px; line-height:18px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#555555}
.sda-hm .hm-proof dd{margin-top:4px; font-size:18px; line-height:26px; font-weight:700}

/* i tre tiri: riquadro bianco su fascia scura */
.sda-hm .hm-band .hm-wrap{padding-top:56px; padding-bottom:56px}
.sda-hm .hm-box{display:flex; flex-wrap:wrap; gap:1px; border:1px solid #BDBDBD; background:#BDBDBD}
.sda-hm .hm-box-copy{flex:2 1 480px; min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:16px; padding:36px; background:#FFFFFF}
.sda-hm .hm-box-copy p{font-weight:400}
.sda-hm .hm-box-photo{position:relative; flex:1 1 280px; min-width:0; min-height:300px; background:#FFFFFF}
.sda-hm .hm-box-photo img{position:absolute; top:20px; left:20px; width:calc(100% - 40px); height:calc(100% - 40px); max-width:none; object-fit:cover}
.sda-hm .hm-tag{display:flex; align-items:center; gap:10px; font-size:14px; line-height:20px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#333333}
.sda-hm .hm-badge{display:inline-block; padding:3px 8px; border-radius:3px; background:#FFC700; color:#111111; font-size:13px; line-height:18px; font-weight:700; letter-spacing:0; text-transform:none}
.sda-hm .hm-h2{font-size:38px; line-height:1.15; color:#DD0000}
.sda-hm .hm-facts{display:grid; grid-template-columns:90px minmax(0,1fr); gap:0 16px; width:100%}
.sda-hm .hm-facts dt{font-weight:700}
.sda-hm .hm-price{font-size:24px; line-height:30px; color:#111111}
.sda-hm .hm-small{font-size:14px; line-height:22px; font-weight:400; color:#333333}

/* la frase */
.sda-hm .hm-quote{max-width:860px; margin:0 auto; padding:36px; background:rgba(255,255,255,.5); text-align:center}
.sda-hm .hm-quote blockquote{font-size:24px; line-height:38px; font-weight:300; font-style:italic; color:#111111}
.sda-hm .hm-quote figcaption{margin-top:18px; font-size:15px; line-height:22px; font-weight:400; color:#333333}
.sda-hm .hm-quote figcaption strong{display:block; font-size:16px; color:#111111}

/* lezioni private */
.sda-hm .hm-week .hm-wrap{display:flex; flex-direction:column; align-items:center; gap:28px; padding-top:64px; padding-bottom:64px}
.sda-hm .hm-h2-center{font-size:40px; text-align:center; color:#DD0000}
.sda-hm .hm-card{display:flex; flex-direction:column; gap:20px; width:100%; max-width:760px; padding:36px; background:#FFFFFF; box-shadow:0 5px 15px rgba(60,60,60,.18)}
.sda-hm .hm-card p{font-weight:400}
.sda-hm .hm-rates{overflow-x:auto}
.sda-hm .hm-rates table{width:100%; min-width:420px; margin:0; border:0; border-collapse:collapse; background:none; font-size:16px; line-height:24px}
.sda-hm .hm-rates th,.sda-hm .hm-rates td{padding:14px 12px; border:0; border-bottom:1px solid #D0D0D0; background:none; color:#111111; text-align:left; vertical-align:middle}
.sda-hm .hm-rates thead th{padding:12px; border-bottom:3px solid #111111; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#555555}
.sda-hm .hm-rates th:first-child{padding-left:0}
.sda-hm .hm-rates tbody th{font-weight:700}
.sda-hm .hm-rates td{font-family:'Anton',Impact,'Arial Narrow',sans-serif; font-size:26px; line-height:30px}
.sda-hm .hm-links{display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px}
.sda-hm .hm-links a:not(.hm-btn){display:inline-flex; align-items:center; min-height:44px; font-weight:700}

/* social */
.sda-hm .hm-social{background:#0B0B0B}
.sda-hm .hm-social .hm-wrap{display:flex; flex-wrap:wrap; justify-content:center; gap:32px 160px; padding-top:56px; padding-bottom:56px}
.sda-hm .hm-social a{display:flex; flex-direction:column; align-items:center; gap:12px; color:#FFFFFF; font-weight:700; text-decoration:none}
.sda-hm .hm-social a:hover{color:#FFC700}
.sda-hm .hm-social .ic{display:flex; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:#FFFFFF; color:#0B0B0B}
.sda-hm .hm-social svg{width:46px; height:46px}

/* prossime partenze */
.sda-hm .hm-dates{background:#FFFFFF}
.sda-hm .hm-dates .hm-wrap{padding-top:72px; padding-bottom:72px}
.sda-hm .hm-dates-title{font-family:'Open Sans',Arial,sans-serif; font-size:32px; line-height:40px; font-weight:700; text-transform:uppercase; color:#DD0000}
.sda-hm .hm-dates-note{margin-top:8px}
.sda-hm .hm-rows{list-style:none; margin-top:32px}
.sda-hm .hm-row{display:flex; flex-wrap:wrap; gap:24px 36px; padding:32px 0; border-top:1px solid #D0D0D0; list-style:none}
.sda-hm .hm-row:first-child{padding-top:0; border-top:0}
.sda-hm .hm-tile{flex:0 0 200px; display:flex; flex-direction:column; justify-content:space-between; height:200px; padding:18px; background:#0B0B0B; color:#FFFFFF}
.sda-hm .hm-tile .hm-badge{align-self:flex-start}
.sda-hm .hm-tile-day{display:block; font-family:'Anton',Impact,'Arial Narrow',sans-serif; font-size:60px; line-height:62px}
.sda-hm .hm-tile-month{display:block; margin-top:4px; font-size:15px; line-height:20px; font-weight:700; letter-spacing:.12em; text-transform:uppercase}
.sda-hm .hm-row-copy{flex:1 1 320px; min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:8px}
.sda-hm .hm-row-copy h3{font-family:'Open Sans',Arial,sans-serif; font-size:18px; line-height:26px; font-weight:700; text-transform:uppercase; color:#DD0000}
.sda-hm .hm-row-price{font-weight:700}
.sda-hm .hm-row-copy .hm-btn{margin-top:8px}
.sda-hm .hm-final{display:flex; flex-direction:column; align-items:center; gap:14px; margin-top:56px; padding:36px 24px; border:2px dashed #0A8540; text-align:center}
.sda-hm .hm-final h2{font-family:'Open Sans',Arial,sans-serif; font-size:28px; line-height:36px; font-weight:700; text-transform:none; color:#111111}

/* piede */
.sda-hm .hm-help{background:#E0E0E0; color:#111111; text-align:center}
.sda-hm .hm-help .hm-wrap{padding-top:28px; padding-bottom:28px}
.sda-hm .hm-help p{font-weight:400}
.sda-hm .hm-help a{font-weight:700}
.sda-hm .hm-foot{background:#222222; color:#C4C4C4; font-size:13px; line-height:22px; font-weight:400; text-align:center}
.sda-hm .hm-foot .hm-wrap{display:flex; flex-direction:column; align-items:center; gap:12px; padding-top:32px; padding-bottom:32px}
.sda-hm .hm-foot p{max-width:900px; color:#C4C4C4}
.sda-hm .hm-foot-links{display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:4px 18px}
.sda-hm .hm-foot a{display:inline-flex; align-items:center; min-height:44px; color:#FFFFFF}
.sda-hm .hm-foot a:hover{color:#FFC700}

/* banner cookie (inc-consent.php): resta com'e' sulle altre pagine */
.sda-hm .sda-cookie-t{font-size:14px; line-height:1.55; font-weight:400; color:#DAD6C9}
.sda-hm .sda-cookie a,.sda-hm .sda-cookie a:hover{color:#F3EFE3}

/* tablet e telefono: il menu diventa un pannello a fisarmonica */
@media (max-width:1000px){
  html.sda-html{scroll-padding-top:74px}
  body.admin-bar.sda-hm .hm-top{top:46px}
  .sda-hm .hm-top .hm-wrap,.sda-hm .hm-top.is-compact .hm-wrap{flex-wrap:wrap; align-items:center; gap:0 16px; min-height:64px}
  .sda-hm .hm-brand{justify-content:center; min-height:64px}
  .sda-hm .hm-brand .n,.sda-hm .hm-top.is-compact .hm-brand .n{font-size:19px; line-height:21px}
  .sda-hm .hm-brand .s,.sda-hm .hm-top.is-compact .hm-brand .s{font-size:15px; line-height:18px}
  .sda-hm .hm-burger{display:flex; flex-direction:column; justify-content:center; gap:5px; width:44px; height:44px; margin-right:-10px; padding:10px; cursor:pointer}
  .sda-hm .hm-burger span{display:block; height:2px; background:#FFFFFF; transition:transform .2s,opacity .2s}
  .sda-hm .hm-toggle:checked~.hm-wrap .hm-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .sda-hm .hm-toggle:checked~.hm-wrap .hm-burger span:nth-child(2){opacity:0}
  .sda-hm .hm-toggle:checked~.hm-wrap .hm-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .sda-hm .hm-toggle:focus-visible~.hm-wrap .hm-burger{outline:3px solid #FFC700; outline-offset:2px}
  .sda-hm .hm-menu{display:none; flex:0 0 calc(100% + 48px); flex-direction:column; align-items:stretch; gap:0; max-height:calc(100vh - 64px); margin:0 -24px; padding-bottom:24px; overflow-y:auto}
  .sda-hm .hm-toggle:checked~.hm-wrap .hm-menu{display:flex}
  .sda-hm .hm-item{display:block; border-top:1px solid #2E2E2E}
  .sda-hm .hm-link{justify-content:space-between; width:100%; min-height:52px; padding:0 24px; font-size:17px; text-align:left}
  .sda-hm .hm-link svg{width:14px; height:14px}
  .sda-hm .hm-item.is-open>.hm-link svg{transform:rotate(180deg)}
  .sda-hm .hm-sub,.sda-hm .hm-item.hm-end>.hm-sub{display:block; position:static; min-width:0; padding:0; background:#1A1A1A; box-shadow:none}
  .sda-hm .hm-sub a{padding:6px 24px 6px 40px; color:#FFFFFF; font-size:15px; font-weight:300; text-transform:none}
  .sda-hm .hm-sub a:hover,.sda-hm .hm-sub a:focus{background:#262626; color:#FFFFFF}
  html.hm-js .sda-hm .hm-item.has-sub:not(.is-open)>.hm-sub{display:none}
  .sda-hm .hm-menu-cta{display:flex; margin:24px 24px 0}
}
@media (max-width:780px){
  .sda-hm .hm-hero-img{width:100%}
  .sda-hm .hm-hero::after{background:rgba(11,11,11,.68)}
  .sda-hm .hm-hero .hm-wrap{min-height:460px}
  .sda-hm .hm-name{font-size:48px}
  .sda-hm .hm-bio-grid{grid-template-columns:minmax(0,1fr)}
  .sda-hm .hm-portrait{margin:8px auto 0}
  .sda-hm .hm-proof-title,.sda-hm .hm-h2-center{font-size:34px}
  .sda-hm .hm-h2{font-size:32px}
  .sda-hm .hm-box-copy,.sda-hm .hm-card,.sda-hm .hm-quote{padding:24px}
  .sda-hm .hm-quote blockquote{font-size:20px; line-height:32px}
  .sda-hm .hm-social .hm-wrap{gap:32px 64px}
}
@media (prefers-reduced-motion:reduce){
  .sda-hm *{transition:none !important}
}
