.orari-page{background:#fff;color:#252525}.schedule-skip{position:fixed;z-index:9999;top:8px;left:8px;padding:10px 14px;background:#fff;border:2px solid #b0360a;color:#202020;transform:translateY(-150%)}.schedule-skip:focus{transform:none}.schedule-hero{padding:64px 0 70px;background:linear-gradient(90deg,rgba(10,16,19,.9) 0%,rgba(10,16,19,.72) 46%,rgba(10,16,19,.5) 100%),url('../og/Home.jpg') center/cover no-repeat;border-bottom:1px solid rgba(255,255,255,.18)}.schedule-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,380px);gap:50px;align-items:center}.schedule-eyebrow{display:block;margin-bottom:10px;color:#b0360a;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.schedule-hero .schedule-eyebrow{color:#ffb18f}.schedule-hero h1{max-width:760px;margin:0 0 18px;color:#fff;font-size:44px;font-weight:800;line-height:1.14;text-transform:uppercase;text-shadow:0 2px 18px rgba(0,0,0,.35)}.schedule-hero p{max-width:710px;margin:0 0 24px;color:#f2f4f3;font-size:18px;line-height:1.75}.schedule-btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 18px;color:#fff;background:#b0360a;border:2px solid #b0360a;font-weight:800;text-decoration:none;text-transform:uppercase}.schedule-btn:hover,.schedule-btn:focus{color:#fff;background:#7a2508;border-color:#7a2508}.schedule-btn.secondary{color:#842807;background:#fff;border-color:#b0360a}.schedule-btn.secondary:hover,.schedule-btn.secondary:focus{color:#681f05;background:#f7ebe7}.schedule-opening{padding:26px;color:#202020;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.4);box-shadow:0 14px 34px rgba(0,0,0,.15)}.schedule-opening h2{margin:0 0 14px;font-size:24px;font-weight:800}.schedule-opening dl{margin:0}.schedule-opening dl div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid #e1e5e3}.schedule-opening dt{font-weight:700}.schedule-opening dd{margin:0;text-align:right;font-weight:800}.schedule-opening small{display:block;color:#666;font-weight:400}.schedule-section{padding:72px 0;background:#f7f8f8}.schedule-title{margin:0 0 14px;color:#202020;font-size:34px;font-weight:800;line-height:1.2}.schedule-intro{max-width:800px;margin:0 0 28px;color:#555;font-size:16px;line-height:1.75}.schedule-controls{margin-bottom:24px;padding:24px;background:#fff;border:1px solid #e1e5e3}.filter-group+.filter-group{margin-top:22px;padding-top:20px;border-top:1px solid #ecefed}.filter-group h3{margin:0 0 12px;color:#202020;font-size:18px;font-weight:800}.filter-buttons{display:flex;flex-wrap:wrap;gap:8px}.filter-buttons button,.empty-state button{min-height:42px;padding:9px 14px;color:#333;background:#fff;border:1px solid #d8ddda;font-family:'Open Sans',sans-serif;font-size:14px;font-weight:700;cursor:pointer}.filter-buttons button:hover,.filter-buttons button:focus,.filter-buttons button.is-active{color:#fff;background:#b0360a;border-color:#b0360a}.activity-buttons button.is-active{background:#7a2508;border-color:#7a2508}.results-summary{min-height:24px;margin:0 0 15px;color:#666;font-weight:700}.days-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.day-card{overflow:hidden;background:#fff;border:1px solid #e1e5e3}.day-card h3{margin:0;padding:16px 19px;color:#fff;background:#202020;border-left:5px solid #b0360a;font-size:21px;font-weight:800}.day-card ul{margin:0;padding:0;list-style:none}.day-card li{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:64px;padding:11px 18px;border-top:1px solid #ecefed}.day-card li:first-child{border-top:0}.day-card li:hover{background:#faf5f3}.day-card time{color:#842807;font-size:13px;font-weight:800}.day-card strong{color:#202020;line-height:1.3}.day-card li>span{color:#666;font-size:13px;font-style:italic}.day-card li.booking{border-left:4px solid #d59816}.day-card[hidden],.day-card li[hidden]{display:none}.empty-state{padding:46px 24px;text-align:center;background:#fff;border:1px solid #e1e5e3}.empty-state h3{margin:0 0 8px;font-weight:800}.empty-state p{margin:0}.empty-state button{margin-top:14px;color:#fff;background:#b0360a;border-color:#b0360a}.schedule-note{margin:28px 0 0;padding:18px;color:#5b5b5b;background:#fff;border-left:4px solid #b0360a}.schedule-note a{color:#842807;font-weight:800}.schedule-final{padding:52px 0;color:#fff;background:linear-gradient(90deg,rgba(32,32,32,.92),rgba(32,32,32,.78)),url('../optimized-images/home/home-gallery-centro-fitness-blue-gym.jpg') center/cover no-repeat}.schedule-final h2{margin:0 0 12px;color:#fff;font-size:30px;font-weight:800}.schedule-final p{margin:0;color:#eee;line-height:1.75}.schedule-final-actions{display:flex;justify-content:flex-end;gap:10px}.schedule-final .schedule-btn.secondary{background:#fff}.orari-page a{text-decoration:none}
@media(max-width:991px){.schedule-hero-grid{grid-template-columns:1fr}.schedule-opening{max-width:560px}.days-grid{grid-template-columns:1fr}.schedule-final-actions{justify-content:flex-start;margin-top:22px}}
@media(max-width:767px){.schedule-hero{padding:42px 0 48px;background-position:58% center}.schedule-hero h1{font-size:32px}.schedule-hero p{font-size:16px}.schedule-section{padding:48px 0}.schedule-title{font-size:28px}.schedule-controls{padding:18px}.filter-buttons{gap:6px}.filter-buttons button{min-height:40px;padding:8px 11px;font-size:13px}.day-card li{grid-template-columns:96px minmax(0,1fr);gap:4px 11px;padding:11px 13px}.day-card li>span{grid-column:2}.schedule-final-actions{flex-direction:column}.schedule-final .schedule-btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(min-width:992px){header .header-area .main-menu ul li{padding-left:11px;padding-right:11px}header .header-area .main-menu ul li a{font-size:14px}}
@media(min-width:992px) and (max-width:1399px){header .header-area .container-fluid>.row>.col-lg-2:first-child{width:12%}header .header-area .container-fluid>.row>.col-lg-8{width:88%}header .schedule-phone-column{display:none}}
@media(max-width:767px){header .header-area{display:none!important}header .mobile-menu-area{display:block!important}}
.schedule-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.schedule-hero .schedule-btn.secondary{color:#fff;background:rgba(10,16,19,.72);border-color:rgba(255,255,255,.75)}.schedule-hero .schedule-btn.secondary:hover,.schedule-hero .schedule-btn.secondary:focus{color:#fff;background:rgba(10,16,19,.9);border-color:#fff}
@media(max-width:767px){.schedule-hero-actions{flex-direction:column}.schedule-hero-actions .schedule-btn{width:100%}}

/* Struttura autonoma e leggera: mantiene il linguaggio visivo della home
   senza caricare Bootstrap, jQuery e i fogli legacy non usati. */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:#252525;background:#fff;font-family:Arial,"Helvetica Neue",sans-serif;font-size:14px;line-height:1.6}
img{max-width:100%;height:auto}
a{color:inherit}
.container{width:min(1170px,calc(100% - 40px));margin-inline:auto}
.container-fluid{width:100%;margin-inline:auto}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
a:focus-visible,button:focus-visible{outline:3px solid #ffb18f;outline-offset:3px}

header .header-area{display:block!important;background:#fff}
header .header-area>.container-fluid>.row{display:grid;grid-template-columns:155px minmax(0,1fr) 215px;align-items:stretch;min-height:100px;margin:0}
header .header-area>.container-fluid>.row>*{width:auto!important}
header .logo-area{display:flex;height:100%;align-items:center;justify-content:center}
header .logo-area a{display:block}
header .logo-area img{display:block;width:205px;height:auto}
header .main-menu,header .main-menu nav,header .main-menu>nav>ul{height:100%}
header .main-menu ul{margin:0;padding:0;list-style:none}
header .main-menu>nav>ul{display:flex;align-items:stretch;justify-content:center}
header .main-menu>nav>ul>li{position:relative;display:flex;align-items:center;padding:0 13px}
header .main-menu>nav>ul>li>a{display:flex;min-height:48px;align-items:center;color:#111;font-size:14px;font-weight:700;text-decoration:none;text-transform:uppercase;white-space:nowrap}
header .main-menu>nav>ul>li.active>a,header .main-menu>nav>ul>li:hover>a,header .main-menu>nav>ul>li:focus-within>a{color:#982f09}
header .main-menu>nav>ul>li.active::after{position:absolute;right:0;bottom:0;left:0;width:40px;height:2px;margin:auto;background:#b0360a;content:""}
header .mega-menu-area{position:absolute;z-index:50;top:100%;left:0;display:none;min-width:220px;padding:12px;background:#202020;box-shadow:0 10px 24px rgba(0,0,0,.2)}
header .megamenu:hover .mega-menu-area,header .megamenu:focus-within .mega-menu-area{display:block}
header .single-mega-menu a{display:block;padding:10px;color:#fff;text-decoration:none}
header .single-mega-menu a:hover,header .single-mega-menu a:focus{color:#ffb18f}
header .schedule-phone-column{display:block!important;width:auto!important}
header .right-area{position:relative;display:flex;height:100%;align-items:center;padding:20px 28px;color:#fff;background:#b0360a}
header .right-area::before{position:absolute;top:0;left:-50px;width:0;height:0;border-style:solid;border-width:100px 50px 0 0;border-color:transparent #b0360a;content:""}
header .right-area ul{position:relative;margin:0;padding:0;list-style:none}
header .right-area li:last-child{font-size:16px;font-weight:700}
.mobile-menu-area{display:none!important}

footer .footer-top{padding:60px 0 30px;color:#fff;background:#202020}
footer .footer-top .row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
footer .widget-title{margin:0 0 16px;color:#fff;font-size:18px;font-weight:400;text-transform:uppercase}
footer .footer-contact ul,footer .social-media ul{margin:0;padding:0;list-style:none}
footer .footer-contact li{margin-bottom:5px;color:#fff;font-size:13px}
footer .footer-bottom-area{padding:26px 0;background:#fff}
footer .footer-bottom-area .row{display:flex;align-items:center;gap:30px;justify-content:space-between}
footer .social-media li{display:inline-block}
footer .social-media a{display:flex;width:34px;height:34px;align-items:center;justify-content:center;color:#fff;background:#111;border:1px solid #111;text-decoration:none}
footer .social-media a:hover,footer .social-media a:focus{background:#982f09;border-color:#982f09}
footer .fa{font-style:normal;font-weight:700}
footer .fa-facebook::before{content:"f"}
footer .fa-instagram::before{content:"◎"}
footer .fa-whatsapp::before{content:"WA";font-size:10px}
footer .copyright p{margin:0;text-align:center;color:#111}
footer .copyright a{color:#982f09;font-weight:700}
.schedule-final .row{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:center;gap:30px}

@media(max-width:1399px){header .header-area>.container-fluid>.row{grid-template-columns:135px minmax(0,1fr)}header .schedule-phone-column{display:none!important}header .main-menu>nav>ul>li{padding-inline:10px}}
@media(max-width:991px){
  header .header-area{display:none!important}
  .mobile-menu-area{display:block!important;color:#fff;background:#202020}
  .mobile-menu-bar{display:flex;min-height:72px;align-items:center;justify-content:space-between;padding:0 18px}
  .mobile-menu-bar>a{display:flex;width:145px;height:72px;align-items:center;justify-content:center;background:#fff}
  .mobile-menu-bar img{width:145px;height:auto}
  .mobile-menu-toggle{display:flex;width:48px;height:48px;align-items:center;justify-content:center;padding:0;color:#fff;background:transparent;border:1px solid #777;font-size:30px;line-height:1;cursor:pointer}
  #mobile-navigation[hidden]{display:none!important}
  #mobile-navigation{display:block;background:#202020;border-top:1px solid #444}
  #mobile-navigation ul{margin:0;padding:0;list-style:none}
  #mobile-navigation a{display:flex;min-height:48px;align-items:center;padding:10px 20px;color:#fff;border-bottom:1px solid #3d3d3d;font-weight:700;text-decoration:none;text-transform:uppercase}
  #mobile-navigation li.active>a,#mobile-navigation a:hover,#mobile-navigation a:focus{color:#ffb18f;background:#292929}
  #mobile-navigation ul ul a{padding-left:38px;font-size:13px;text-transform:none}
  footer .footer-top .row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schedule-final .row{grid-template-columns:1fr}
}
@media(max-width:600px){
  .container{width:min(100% - 28px,1170px)}
  footer .footer-top .row{grid-template-columns:1fr}
  footer .footer-bottom-area .row{flex-direction:column}
  footer .copyright p{text-align:center}
}
