*{margin:0;padding:0;box-sizing:border-box}.home-container{margin-top:6rem}.offer-container{margin-top:6rem}body{height:100%;display:flex;flex-direction:column;min-height:100vh;font-family:'Outfit',sans-serif;color:#212121;background-color:#FFF;line-height:1.6}body.site{display:flex;flex-direction:column;min-height:100vh;margin:0}a{text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 15px;flex:1}.menu-toggle{display:none;cursor:pointer;color:var(--site-accent,#DD5144)}.logo{font-size:2rem;font-weight:700;text-transform:uppercase;color:var(--site-accent,#DD5144);flex:1}.card h3{color:var(--site-primary,#002E7A);font-size:1.5rem;margin-bottom:1rem;text-transform:uppercase}.horizontal-section{background:#D3E3FC;padding:4rem 0;color:#212121}.horizontal-section .container{max-width:1200px;margin:0 auto;padding:2rem;background-color:#FFF;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1)}.horizontal-section h3{font-size:2.5rem;color:var(--site-primary,#002E7A);text-align:center;margin-bottom:1.5rem;text-transform:uppercase}.horizontal-section p{font-size:1.1rem;text-align:center;margin-bottom:1.5rem}.horizontal-section ul li{font-size:1rem;padding:.5rem 0;border-bottom:1px solid #D3E3FC;margin-bottom:.5rem}.horizontal-section ul li strong{color:var(--site-primary,#002E7A)}h1,h2,h3{font-family:'Outfit',sans-serif;font-weight:700;color:#212121;margin-bottom:1rem;text-transform:uppercase}h1,h2{text-align:center;color:var(--site-primary,#002E7A);margin-bottom:1.5rem;text-transform:uppercase}h1{font-size:3rem;text-transform:uppercase}h2{font-size:2.5rem;text-transform:uppercase}h3{font-size:1.5rem;text-transform:uppercase}.about-section{padding-top:2rem;padding-bottom:4rem;background-color:#FFF}.about-section h2{text-align:center;font-size:2.5rem;color:var(--site-primary,#002E7A);margin-bottom:2rem}.about-box{background-color:#D3E3FC;padding:2rem;border-radius:8px;margin-bottom:2rem;box-shadow:0 4px 8px rgb(0 0 0 / .1)}.about-box h3{font-size:1.8rem;color:var(--site-primary,#002E7A);margin-bottom:1rem}.about-box p,.about-box ul{font-size:1rem;color:#212121}.about-box ul li{margin-bottom:.8rem}.about-box ul li strong{color:var(--site-primary,#002E7A)}.login-container{background-color:#FFF;padding:3rem 2rem;border-radius:8px;max-width:500px;margin:5rem auto;box-shadow:0 4px 8px rgb(0 0 0 / .1)}.login-container h1{font-size:2.5rem;text-align:center;color:var(--site-primary,#002E7A);margin-bottom:1.5rem}.btn{display:inline-flex;justify-content:center;align-items:center;background-color:var(--site-primary,#002E7A);color:#FFF;padding:.8rem 2rem;border-radius:4px;font-size:1.1rem;font-weight:600;text-transform:uppercase;border:none;cursor:pointer;transition:background-color 0.3s;box-shadow:0 2px 4px rgb(0 0 0 / .1)}.btn-blue{background-color:var(--site-primary,#002E7A);color:#fff}.btn-blue:hover{filter:brightness(.9)}.btn-red{background-color:var(--site-accent,#DD5144);color:#fff}.btn-red:hover{filter:brightness(.9)}.btn[disabled]{background-color:#e0e0e0;color:#9e9e9e;cursor:not-allowed;pointer-events:none}.btn:hover{filter:brightness(.9)}.btn:disabled,.btn.disabled{background-color:#d3d3d3;color:#a0a0a0;cursor:not-allowed;box-shadow:none;opacity:.7}.error{color:#B00020;margin-top:1rem;text-align:center}.profile-container{padding:3rem 2rem;background-color:#FFF;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1);color:#212121}.profile-container h1{color:var(--site-primary,#002E7A);margin-bottom:1.5rem;font-family:'Outfit',sans-serif!important}.collection{background-color:#D3E3FC;border-radius:8px;margin-bottom:2rem;font-family:'Outfit',sans-serif!important}.collection-item{background-color:#FFF;color:#212121;padding:1rem;border-bottom:1px solid #D3E3FC;font-family:'Outfit',sans-serif!important}.collection-item strong{margin-right:10px}.value{display:inline-block;margin-left:5px}.register-link{color:var(--site-primary,#002E7A);text-decoration:underline}.register-link:hover{color:var(--site-primary,#002E7A)}.card{background-color:#FFF;color:#212121;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1);margin-bottom:2rem}.card-title{font-size:1.5rem;font-weight:700;color:var(--site-primary,#002E7A);margin-bottom:1rem;text-transform:uppercase}.card .card-title{font-size:24px;font-weight:300}.card-action{border-top:1px solid #D3E3FC;padding-top:1rem}.card-action .btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.day-card{background-color:#D3E3FC;color:#212121;padding:1rem;border-radius:8px;flex:1 1 250px;margin:1rem;box-shadow:0 4px 8px rgb(0 0 0 / .1);border:2px solid #1976D2;border-radius:4px}.day-title{font-size:1.5rem;font-weight:700;color:var(--site-primary,#002E7A);text-align:center;margin-bottom:1rem;display:block}.timeslot-time{font-size:1rem;color:#212121;margin-bottom:.5rem}.timeslot-button .btn{width:100%;padding:1rem;font-size:1rem;border-radius:4px;transition:background-color 0.3s ease;margin-bottom:3px}.timeslot-button a{transition:transform 0.3s ease,background-color 0.3s ease;box-shadow:0 4px 8px rgb(0 0 0 / .1);padding:.8rem 1.5rem;border-radius:4px}.timeslot-button a:hover{transform:scale(1.05);background-color:var(--site-primary,#002E7A)}.timeslot-button small{display:block;margin-top:.4rem;text-align:center;color:#333}.booking-class-name{margin:0 auto 1rem;text-align:center}.booking-summary{margin-bottom:1.5rem}.policy-details{margin:1rem 0 2rem;padding:1rem;background:#f5f7fa;border-radius:8px}.policy-details summary{color:var(--site-primary,#002E7A);cursor:pointer;font-weight:600}.timeslot-button .btn:disabled{background-color:#D3E3FC;color:#B0BEC5}.fully-booked{font-size:1rem;color:#B00020;text-align:center;margin-top:1rem}.page-heading{font-family:'Outfit',sans-serif;font-size:2.5rem;color:var(--site-primary,#002E7A);text-transform:uppercase;text-align:center;margin-bottom:2rem}.policy-box{background-color:#e0ecff;padding:2rem;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1);color:#212121}.policy-box-payment{background-color:#e7e5e5;padding:2rem;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1);color:#212121}.policy-box-confirmation{background-color:#e0ecff;padding:2rem;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1);color:#212121}.section-heading{font-size:1.8rem;color:var(--site-primary,#002E7A);text-transform:uppercase;margin-bottom:1rem}.policy-list{list-style-type:none;padding-left:1.5rem}.policy-list li{margin-bottom:.8rem;color:#212121}.policy-list li strong{color:var(--site-primary,#002E7A)}.accept-policy{margin-top:.2rem;text-align:center}.accept-policy input[type="checkbox"]+label{color:var(--site-primary,#002E7A)}.accept-policy input[type="checkbox"]:checked+label{color:var(--site-primary,#002E7A)}.quote{font-size:1rem;font-style:italic;margin:1rem 0;font-family:'Outfit',sans-serif;color:var(--site-primary,#002E7A)}.user-name{font-weight:700;color:var(--site-primary,#002E7A)}.footer{background-color:var(--site-primary,#002E7A);padding:20px 0;text-align:center;margin-bottom:0}.footer-nav{display:flex;justify-content:center;font-family:'Outfit',sans-serif}.footer-menu{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:20px}.footer-menu li{display:inline-block;margin:5px}.footer-menu a{color:#FFCD46;text-decoration:none;font-weight:700;text-transform:uppercase}.footer p{margin-top:10px;color:#fff;font-size:.9em;font-family:'Outfit',sans-serif}@media (max-width:600px){.footer-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px}.footer-menu li{margin:0;text-align:left}}.registration-success{margin-top:3rem;padding:2rem;border-radius:8px;box-shadow:0 4px 8px rgb(0 0 0 / .1);text-align:center;background-color:#fff}.registration-success h2{color:#4CAF50;margin-bottom:1rem}.registration-success p{font-size:1.1rem;margin-bottom:1.5rem}.btn-login{background-color:var(--site-primary,#002E7A);color:#fff;text-transform:uppercase;font-weight:600;padding:.5rem 2rem;border-radius:4px;text-decoration:none}.btn-profile{background-color:var(--site-primary,#002E7A);color:#fff;text-transform:uppercase;font-weight:600;padding:.5rem 2rem;border-radius:4px;text-decoration:none}.btn-login:hover{filter:brightness(.9)}@media (max-width:600px){.profile-container .row .col{margin-bottom:15px}}.dropdown-content{position:absolute;min-width:150px;width:auto;max-width:300px;background-color:#FFF;border-radius:4px;box-shadow:0 2px 4px rgb(0 0 0 / .1);white-space:nowrap;left:auto;right:auto;transform:translateX(0)}.dropdown-content li{display:block}.dropdown-content li a{color:var(--site-primary,#002E7A);padding:10px 20px;display:block}.dropdown-content li a:hover{background-color:#D3E3FC}.input-field{margin-bottom:2rem;position:relative}.input-field label{position:relative;display:block;margin-bottom:.5rem;font-size:1.1rem;color:var(--site-primary,#002E7A)}.input-field textarea{display:block;width:100%;background-color:#D3E3FC;border:none;border-radius:4px;padding:.8rem 1rem;color:#212121;margin-top:.5rem;font-size:1rem;resize:vertical;min-height:150px}.input-field textarea:focus{background-color:#FFF;border-bottom:2px solid #4C8BF5;outline:none}.input-field select,.input-field input,.input-field textarea{display:block;width:100%;background-color:#D3E3FC;border:none;border-radius:4px;padding:.8rem 1rem;color:#212121;margin-top:.5rem;font-size:1rem}.input-field input:focus,.input-field select:focus,.input-field textarea:focus{background-color:#FFF;border-bottom:2px solid #4C8BF5;outline:none}.input-field input:focus+label,.input-field select:focus+label,.input-field textarea:focus+label{color:var(--site-primary,#002E7A)}.input-field .select-wrapper input.select-dropdown{margin-bottom:0;font-size:1rem}.container-admin{margin-top:80px}.about-section h1{color:var(--site-primary,#002E7A)!important}.language-selector select{background:#fff0;border:none;color:inherit;font-size:1rem;cursor:pointer}.language-selector{display:inline-flex;align-items:center;margin-left:1rem}.policy-text{font-size:1rem;color:inherit}.billing-info-notice{font-size:.9rem;color:var(--site-accent,#DD5144);text-align:center;margin-bottom:1rem}#cookie-notice-container{background-color:#333;position:fixed;bottom:0;left:0;width:100%;z-index:1000;padding:20px 0;display:none}.cookie-notice{color:#fff;padding:20px;border-radius:5px;box-shadow:0 4px 10px rgb(0 0 0 / .15);width:80%;max-width:500px;text-align:center;margin:0 auto}.cookie-notice p{display:inline-block;margin:0;padding-right:10px}.cookie-policy-link{color:#fc0;text-decoration:underline}.cookie-notice .cookie-accept-button{background-color:#ff5722!important;color:#fff!important;border:none!important;padding:10px 20px!important;font-size:1rem!important;cursor:pointer!important;border-radius:4px!important;display:inline-flex;align-items:center;justify-content:center;transition:background-color 0.3s ease!important}.cookie-notice .cookie-accept-button:hover{background-color:#e64a19!important}@media (min-width:768px){.cookie-notice{display:flex;flex-direction:column;align-items:center;justify-content:center}.cookie-notice p{margin-bottom:15px}.cookie-notice .cookie-accept-button{width:auto;margin:0 auto}}.checkmark{display:inline-block;padding-left:15px;position:relative;font-weight:700;color:#4caf50}.checkmark:before{content:"•";color:#4caf50;position:absolute;left:0;font-size:1.2rem;line-height:1}.stylish-bullet-list{list-style-type:none;padding:0;margin:20px 0;font-family:'Outfit',sans-serif}.stylish-bullet-list li{position:relative;padding-left:25px;margin-bottom:10px;font-size:1rem;color:#333;line-height:1.4;display:flex;align-items:center;font-family:'Outfit',sans-serif}.stylish-bullet-list li::before{content:"•";font-size:1.2rem;color:var(--site-primary,#002E7A);margin-right:10px;display:inline-flex;align-items:center;height:100%;line-height:1;font-family:'Outfit',sans-serif}.stylish-bullet-list li:hover{color:var(--site-accent,#DD5144)}ul.stylish-bullet-list{list-style-type:none!important;padding:0!important;font-family:'Outfit',sans-serif;font-size:1.1em!important}ul.stylish-bullet-list li{display:flex!important;align-items:center!important;margin:10px 0!important;padding:10px!important;background-color:#f0f8ff!important;border-radius:8px!important;box-shadow:0 4px 8px rgb(0 0 0 / .1)!important;font-family:'Outfit',sans-serif}ul.stylish-bullet-list li::before{content:"•";color:#4CAF50!important;font-weight:bold!important;margin-right:10px!important;font-size:1.2em!important;display:inline-flex;align-items:center;font-family:'Outfit',sans-serif}.call-us-container{background-color:#222;color:#fff;padding:15px 0;text-align:center;width:100%;box-shadow:0 -4px 10px rgb(0 0 0 / .15)}.call-us-container p{margin:0;font-size:1rem;font-family:'Outfit',sans-serif}.call-us-container a{color:#FFCD46;text-decoration:none;font-weight:700}.call-us-container a:hover{text-decoration:underline}.whatsapp-widget{position:fixed;right:24px;bottom:24px;z-index:1001;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:'Outfit',sans-serif}.whatsapp-widget-toggle{position:relative;display:inline-flex;min-height:56px!important;align-items:center;justify-content:center;gap:9px;padding:0 18px!important;border:0!important;border-radius:999px!important;background:#075E54!important;color:#fff!important;font:600 1rem/1 'Outfit',sans-serif!important;box-shadow:0 4px 16px rgb(0 0 0 / .25);cursor:pointer;transition:transform 0.2s ease,box-shadow 0.2s ease}.whatsapp-widget-toggle:hover{transform:translateY(-3px);background:#064c45!important;box-shadow:0 7px 20px rgb(0 0 0 / .3)}.whatsapp-widget-toggle:focus-visible,.whatsapp-chat-close:focus-visible,.whatsapp-chat-start:focus-visible{outline:3px solid #002E7A;outline-offset:3px}.whatsapp-widget-toggle svg{width:26px;height:26px;fill:currentColor}.whatsapp-widget-indicator{position:absolute;top:5px;right:5px;width:11px;height:11px;border:2px solid #075E54;border-radius:50%;background:#fff}.whatsapp-chat-popup{position:relative;width:min(340px, calc(100vw - 32px));padding:24px;border-radius:16px;background:#fff;color:#222;box-shadow:0 8px 32px rgb(0 0 0 / .22)}.whatsapp-chat-popup[hidden]{display:none}.whatsapp-chat-close{position:absolute;top:8px;right:10px;width:36px;height:36px;border:0;border-radius:50%;background:#fff0;color:#555;font-size:1.6rem;line-height:1;cursor:pointer}.whatsapp-chat-title{margin:0 32px 6px 0;color:#183923;font-size:1.2rem;font-weight:700}.whatsapp-chat-message{margin:0 0 18px;color:#444;font-size:.98rem;line-height:1.5}.whatsapp-chat-start{display:flex;min-height:46px;align-items:center;justify-content:center;padding:10px 16px;border-radius:8px;background:#25D366;color:#073b1a;font-weight:700;text-align:center;text-decoration:none;transition:background-color 0.2s ease,transform 0.2s ease}.whatsapp-chat-start:hover{transform:translateY(-2px);background:#1fbd5a;color:#073b1a}.whatsapp-chat-secondary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.whatsapp-chat-secondary a{display:flex;min-height:44px;align-items:center;justify-content:center;padding:8px;border:1px solid #d7dfd9;border-radius:8px;color:#183923;font-size:.92rem;font-weight:600;text-align:center;text-decoration:none;transition:background-color 0.2s ease,border-color 0.2s ease}.whatsapp-chat-secondary a:hover{border-color:#25D366;background:#f1fbf4}@media (max-width:480px){.whatsapp-widget{right:16px;bottom:max(16px, env(safe-area-inset-bottom))}.whatsapp-widget-toggle{min-height:54px!important;padding:0 16px!important}}@media (prefers-reduced-motion:reduce){.whatsapp-widget-toggle,.whatsapp-chat-start{transition:none}.whatsapp-chat-secondary a{transition:none}}.g-recaptcha{margin-bottom:20px;font-family:'Outfit',sans-serif!important}.admin-menu nav{background-color:#283593}.admin-menu .nav-wrapper a.brand-logo{color:#fff}.admin-menu .nav-wrapper ul li a{color:#bbdefb}.admin-menu .dropdown-content{background-color:#f5f5f5!important;color:#283593!important;border:none!important;box-shadow:0 2px 8px rgb(0 0 0 / .1)!important}.admin-menu .dropdown-content li>a{color:#283593!important}.admin-menu .mega-menu{display:none;position:absolute;top:100%;left:0;width:100%;background-color:#f5f5f5;padding:1rem 2rem;box-shadow:0 2px 8px rgb(0 0 0 / .1);z-index:1000}.admin-menu .nav-item:hover .mega-menu{display:flex;justify-content:space-between;flex-wrap:wrap}.admin-menu .mega-menu a{padding:.5rem 1rem;flex:1 1 20%;text-align:center;color:#283593;font-weight:700}.admin-menu .mega-menu a:hover{background-color:#bbdefb;color:#283593}.filter-dropdown select{background-color:#ffffff!important;border:1px solid #cccccc!important;color:#000000!important;box-shadow:none!important}.filter-dropdown .dropdown-content{background-color:#ffffff!important;border:1px solid #cccccc!important;color:#000000!important}.filter-dropdown .select-dropdown{background-color:#ffffff!important;border:none!important;color:#000000!important}.filter-dropdown select:focus{border-color:#42a5f5!important;box-shadow:0 0 5px rgb(66 165 245 / .5)!important}.filter-dropdown .dropdown-content li:hover{background-color:#eeeeee!important}.custom-blue-text{color:var(--site-primary,#002E7A);font-weight:700;text-transform:uppercase}.helper-text.invalid{color:red}.helper-text.valid{color:green}#passwordRequirements{margin-top:8px;font-size:.9rem;color:red;text-align:left;grid-column:span 2}#passwordRequirements.valid{color:green}@media (min-width:1024px){.registration-container{max-width:1000px;padding:3rem}}.fancy-registration-message{font-size:1rem;color:#555;background-color:#f9f9f9;border-left:4px solid #007BFF;padding:10px 15px;margin-top:1rem;margin-bottom:1.5rem;border-radius:4px;line-height:1.5}.fancy-registration-message a{color:var(--site-primary,#002E7A);text-decoration:underline}.fancy-registration-message a:hover{text-decoration:none}.error-message{color:red;text-align:center;font-weight:700;margin:1rem 0}.centered-button-form{display:flex;justify-content:center;align-items:center;flex-direction:column;margin-top:1.5rem}.centered-button{margin-top:1rem}.no-bookings-container{text-align:center;margin-top:2rem}.no-bookings-container .no-bookings-message{margin-bottom:1.5rem}.action-buttons{display:flex;justify-content:center;gap:1rem}.action-button{display:inline-flex;justify-content:center;align-items:center;padding:.8rem 2rem;border-radius:4px;text-decoration:none;font-weight:600;text-transform:uppercase;cursor:pointer;transition:background-color 0.3s}.action-button.btn-success{background-color:#28a745;color:#fff}.action-button.btn-success:hover{background-color:#218838}.action-button.btn-primary{background-color:var(--site-primary,#002E7A);color:#fff}.action-button.btn-primary:hover{filter:brightness(.9)}.sub-heading{font-size:1rem;color:var(--site-primary,#002E7A);text-transform:uppercase;margin-bottom:1rem}.spacer{margin:10px}