@charset "UTF-8";:root{--brand:#D84046;--brand-dark:#c73940;--dark:#323330;--bg:#F5F5F5;--shadow-sm:0 2px 8px rgba(0,0,0,0.07);--shadow-md:0 4px 16px rgba(0,0,0,0.10);--shadow-lg:0 8px 32px rgba(0,0,0,0.13);--radius:10px;--radius-lg:16px;--radius-sm:6px;--transition:0.25s ease;--border-color:rgba(0,0,0,0.14)}@font-face{font-family:'Outfit';src:url("/static/fonts/Outfit/static/Outfit-Regular.ttf?d1d1962671aa");src:url("/static/fonts/Outfit/static/Outfit-Light.ttf?d1d1962671aa");font-weight:400;font-style:normal}@font-face{font-family:'Outfit';src:url("/static/fonts/Outfit/static/Outfit-Bold.ttf?d1d1962671aa");font-weight:700;font-style:normal}html{overflow-x:hidden;scroll-behavior:smooth}body{min-height:100vh;font-family:'Outfit',sans-serif;background-color:var(--bg);color:#1a1a1a}::selection{background:var(--brand);color:white}h1{font-weight:800;font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;letter-spacing:-0.02em}h2{font-weight:700;font-size:clamp(1.4rem,3vw,2.1rem);letter-spacing:-0.01em}h5{font-weight:700;font-size:18px}.alas{overflow-wrap:break-word}.ml-5{margin-left:15px}.mt-20{margin-top:100px}@media (max-width:768px){.mt-20{margin-top:20px}}.btn-primary{border-radius:var(--radius-sm);border:none;background-color:var(--brand);color:white;font-weight:600;transition:all var(--transition);height:44px;padding:8px 20px}.btn-primary:hover{background-color:var(--brand-dark);color:white;transform:translateY(-1px);box-shadow:0 4px 12px rgba(216,64,70,0.35)}.btn-primary:first-child:active,.btn-primary.show{background-color:var(--brand-dark);transform:translateY(0);box-shadow:none}.btn-primary:disabled,.btn-primary.disabled{background-color:var(--brand);opacity:0.55}.btn-secondary{border-radius:var(--radius-sm);border:1.5px solid rgba(0,0,0,0.18);color:#333;background-color:white;font-weight:600;transition:all var(--transition);height:44px;padding:8px 20px}.btn-secondary:hover{background-color:#f4f4f4;color:#111;border-color:rgba(0,0,0,0.3);transform:translateY(-1px)}.btn-secondary:first-child:active{background-color:#e8e8e8;color:#111}@media (max-width:576px){.btn-secondary{margin-top:10px}}.btn-back{background-color:var(--dark);color:white;border-radius:var(--radius-sm);border:none;height:44px;width:100%;padding:8px 12px;font-weight:600;transition:all var(--transition);display:inline-block;text-align:center}.btn-back:hover{background-color:var(--dark);opacity:0.75;color:white;transform:translateY(-1px)}.btn-group{width:100%}input{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);height:52px;outline:none;width:100%;box-shadow:none;background-color:#fafafa;transition:border-color var(--transition),box-shadow var(--transition),background-color var(--transition)}input:focus{border-color:var(--brand);background-color:white;box-shadow:0 0 0 3px rgba(216,64,70,0.12)}.form-select{height:52px;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);background-color:#fafafa;transition:border-color var(--transition),box-shadow var(--transition)}.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(216,64,70,0.12)}.flatpickr-input{padding:8px 14px}.header-image{background-image:url("/static/images/hero.jpg?d1d1962671aa");background-size:cover;background-position:center center;min-height:640px;height:88vh;max-height:900px;position:relative}.header-image-small{background-image:url("/static/images/headerimage.jpg?d1d1962671aa");background-size:cover;background-position:center center;height:400px}.logo{height:165px;position:absolute;top:45px;left:210px;filter:drop-shadow(0 2px 8px rgba(0,0,0,0.2))}@media (max-width:768px){.logo{height:140px;left:0;padding:20px}}.logo-small{height:155px;position:absolute;top:45px;left:210px}@media (max-width:768px){.logo-small{height:130px;left:0;padding:10px}}.header-text{position:absolute;bottom:80px;left:210px;width:720px}.header-text p{width:620px;font-size:20px;line-height:1.6}@media (max-width:768px){.header-text{bottom:40px;left:0;width:100%;padding:20px}.header-text p{width:100%;font-size:16px}}.header-text-small{position:absolute;top:250px;left:210px;width:720px}@media (max-width:768px){.header-text-small{top:280px;left:0;padding:10px}.header-text-small h1{font-size:2em}.header-text-small h2{font-size:1.5em}}.header-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.header-buttons .btn{min-width:180px}.section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--brand);margin-bottom:4px;display:block}.searchbox{background-color:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:24px 24px 28px;border-top:3px solid var(--brand);width:100%}.searchbox label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.07em;color:#777;margin-bottom:6px;display:block}.searchbox input[type="date"],.searchbox input[type="number"]{width:100%;height:52px;padding:8px 14px;border-radius:var(--radius-sm)}.searchbox .btn-primary{margin-top:22px;width:100%;height:52px;font-size:15px}@media (max-width:576px){.searchbox .col-6,.searchbox .col-2{margin-bottom:12px}}.card{border:none;border-radius:var(--radius-lg);overflow:hidden;background-color:white;box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition)}.card h2{font-weight:600;font-size:22px;letter-spacing:-0.01em}.card a{color:inherit!important;text-decoration:none}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.course-card{min-height:540px;cursor:pointer}.course-card .card-img-top{height:220px;object-fit:cover;width:100%}.course-card .card-body{padding:20px 24px 24px}@media (max-width:768px){.course-card{min-height:460px}}.difficulty-card{min-height:300px}.course-overview-box{background-color:white;position:relative;box-shadow:var(--shadow-md);padding:20px;border-radius:var(--radius);width:100%;top:355px;height:88px}.learn-more{color:var(--brand);text-decoration:none;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:4px;margin-top:8px;transition:opacity var(--transition),gap var(--transition)}.learn-more::after{content:'→';transition:transform var(--transition)}.learn-more:hover{opacity:0.75}.learn-more:hover::after{transform:translateX(3px)}.modal-content{background-color:var(--bg);border-radius:var(--radius-lg);border:none;box-shadow:var(--shadow-lg)}.modal-header{border-bottom-color:var(--border-color);padding:20px 24px}.vline{border-left:1px solid var(--border-color)}@media (max-width:768px){.vline{border-left:none;border-top:1px solid var(--border-color);padding-top:16px}}.person-overview{border:1.5px solid var(--border-color);background-color:white;border-radius:var(--radius);width:100%;height:100%;text-align:center;padding:10px;transition:all var(--transition)}.person-overview span{color:var(--dark);font-size:18px}.person-overview.active{background-color:var(--dark);border-color:var(--dark)}.person-overview.active span{color:white}ul.dropdown-menu{border-radius:var(--radius);border:1.5px solid var(--border-color);box-shadow:var(--shadow-md);padding:6px}ul.dropdown-menu .dropdown-item{border-radius:var(--radius-sm);font-weight:500}ul.dropdown-menu .dropdown-item.active,ul.dropdown-menu .dropdown-item:active{background-color:var(--brand);color:white}ul.dropdown-menu .dropdown-item:hover:not(.active):not(:active){background-color:rgba(216,64,70,0.07);color:var(--brand)}li.nav-item button.nav-link{background-color:transparent;border:1.5px solid var(--border-color);color:#555;margin-right:8px;margin-bottom:8px;border-radius:50px!important;font-weight:500;font-size:14px;padding:6px 18px;transition:all var(--transition)}li.nav-item button.nav-link.active{color:white;background-color:var(--brand)!important;border-color:var(--brand);box-shadow:0 2px 8px rgba(216,64,70,0.3)}li.nav-item button.nav-link:hover:not(.active){background-color:rgba(216,64,70,0.06);border-color:var(--brand);color:var(--brand)}.embed-container{--video--width:1296;--video--height:540;position:relative;padding-bottom:calc(var(--video--height) / var(--video--width) * 160%);overflow:hidden;max-width:100%;background:black}.embed-container iframe,.embed-container object,.embed-container embed{position:absolute;top:0;left:0;width:100%;height:100%}.carousel-control-next,.carousel-control-prev{filter:invert(100%)}.carousel-control-next-icon,.carousel-control-prev-icon{width:3vw;height:3vw}@media (max-width:576px){.carousel-control-next-icon,.carousel-control-prev-icon{width:13vw;height:13vw}}@media (max-width:576px){.carousel-item h3{font-size:18px}}.payment{margin-top:20px;margin-bottom:20px}.payment a.btn-primary{width:100%;height:44px;padding:8px 12px;border-radius:var(--radius-sm)}@keyframes checkoutPulse{0%,100%{box-shadow:0 4px 20px rgba(216,64,70,0.4)}50%{box-shadow:0 4px 36px rgba(216,64,70,0.7)}}.btn-checkout{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:white;border:none;border-radius:var(--radius-sm);font-size:17px;font-weight:700;letter-spacing:0.01em;height:58px;padding:0 36px;min-width:300px;box-shadow:0 4px 20px rgba(216,64,70,0.4);animation:checkoutPulse 2.8s ease-in-out infinite;transition:transform var(--transition),box-shadow var(--transition),filter var(--transition);cursor:pointer}.btn-checkout i{font-size:15px;opacity:0.85}.btn-checkout:hover{transform:translateY(-2px);filter:brightness(1.06);color:white;animation:none;box-shadow:0 8px 28px rgba(216,64,70,0.55)}.btn-checkout:active{transform:translateY(0);filter:brightness(0.96)}@media (max-width:576px){.btn-checkout{width:100%;min-width:unset;height:54px;font-size:16px}}.order-summary-card{background-color:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:24px}.order-summary-card .order-summary-header{padding:20px 24px;border-bottom:1px solid var(--border-color);background-color:#fafafa}.order-summary-card .order-summary-header h3{font-size:18px;font-weight:700;margin:0;letter-spacing:-0.01em}.order-summary-card .table{margin-bottom:0}.order-summary-card .table thead th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:#777;border-bottom:2px solid var(--border-color);padding:12px 16px;white-space:nowrap}.order-summary-card .table tbody td{padding:14px 16px;vertical-align:middle;border-color:var(--border-color)}.order-summary-card .table tfoot td{padding:16px;border-top:2px solid var(--border-color);font-size:16px}.checkout-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.checkout-actions .checkout-cta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.checkout-actions .trust-note{font-size:11px;color:#999;text-align:right;max-width:320px;line-height:1.4}@media (max-width:576px){.checkout-actions{flex-direction:column}.checkout-actions .btn-back,.checkout-actions .checkout-cta{width:100%}.checkout-actions .checkout-cta{align-items:stretch}.checkout-actions .trust-note{text-align:center}}.footer-logo{height:40px}@keyframes heartbeat{0%,100%{color:var(--dark)}50%{color:var(--brand)}}.heart{animation:heartbeat 2s infinite}.link{transition:opacity var(--transition);cursor:pointer}.link:hover{opacity:0.6}.private-table thead th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:#666;text-align:center;vertical-align:top;padding:10px 8px;white-space:nowrap;border-bottom:2px solid var(--border-color)}.private-table thead th .slot-name{display:block;font-weight:700;margin-bottom:3px}.private-table thead th .slot-time{display:block;font-weight:400;font-size:10px;color:#aaa;letter-spacing:0;text-transform:none}.private-table thead th:first-child{text-align:left;width:10%}.private-table tbody td{text-align:center;vertical-align:middle;cursor:pointer;font-size:13px;padding:10px 8px;border-color:var(--border-color);transition:background-color var(--transition)}.private-table tbody td.instructor{text-align:left;font-weight:500;cursor:default;color:#555}.private-table tbody td:not(.instructor):not(.occupied):not(.disabled):hover{background-color:rgba(216,64,70,0.06)}#private-courses{margin:40px 0}#private-courses .table td.selected{text-align:center;background-color:#d1f5d8;color:#155724;font-weight:600;font-size:12px}#private-courses .table td.disabled{pointer-events:none;cursor:not-allowed;background-color:#f0f0f0;background-image:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(0,0,0,0.06) 4px,rgba(0,0,0,0.06) 8px);color:#bbb}#private-courses .table td.occupied{text-align:center;background-color:#fde8ea;color:#a93226;font-weight:500;font-size:12px;pointer-events:none;cursor:not-allowed}.info-box-container{position:relative;display:inline-block;margin-left:10px}.info-icon{width:20px;height:20px;background-color:var(--brand);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:bold;cursor:help;transition:all var(--transition)}.info-icon:hover{background-color:var(--brand-dark);transform:scale(1.1)}.info-box{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);background-color:white;border:2px solid var(--brand);border-radius:var(--radius);padding:15px;width:320px;box-shadow:var(--shadow-md);z-index:1000;opacity:0;visibility:hidden;transition:all var(--transition)}.info-box.show{opacity:1;visibility:visible}.info-box h4{color:var(--brand);font-size:16px;font-weight:bold;margin-bottom:10px;border-bottom:1px solid #eee;padding-bottom:5px}.info-box ul{margin:0;padding-left:15px;font-size:14px;line-height:1.4}.info-box ul li{margin-bottom:5px;color:#333}.info-box .info-tip{background-color:#f8f9fa;border-left:3px solid var(--brand);padding:8px 10px;margin-top:10px;font-size:12px;color:#666;border-radius:0 4px 4px 0}.info-box::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:8px solid transparent;border-top-color:var(--brand)}@media (max-width:768px){.info-box{width:280px;left:-140px;transform:none}.info-box::after{left:150px}}.booking-steps{display:flex;align-items:center;justify-content:center;padding:12px 0 20px}.booking-steps .step{display:flex;flex-direction:column;align-items:center;gap:6px}.booking-steps .step .step-circle{width:38px;height:38px;border-radius:50%;background-color:#e4e4e4;color:#999;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;transition:all var(--transition);border:2px solid transparent}.booking-steps .step .step-label{font-size:11px;font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:0.07em;white-space:nowrap;transition:color var(--transition)}.booking-steps .step.active .step-circle{background-color:var(--brand);color:white;box-shadow:0 2px 10px rgba(216,64,70,0.35);border-color:var(--brand)}.booking-steps .step.active .step-label{color:var(--brand)}.booking-steps .step-line{flex:1;height:2px;max-width:140px;background-color:#e4e4e4;margin:0 12px 22px}.section-divider{border:none;border-top:2px solid var(--border-color);opacity:1;margin:0}.course-carousel{border-radius:var(--radius-lg);overflow:hidden;background-color:white;box-shadow:var(--shadow-sm)}.course-carousel .carousel-control-prev,.course-carousel .carousel-control-next{width:40px;background-color:rgba(0,0,0,0.25);border-radius:0;filter:none}.course-carousel .carousel-control-prev:hover,.course-carousel .carousel-control-next:hover{background-color:rgba(0,0,0,0.45)}.course-carousel .carousel-control-prev-icon,.course-carousel .carousel-control-next-icon{width:20px;height:20px;filter:none}.course-preview-card{display:flex;align-items:center;gap:16px;padding:16px 20px;min-height:100px}.course-preview-img{width:72px;height:72px;object-fit:cover;border-radius:var(--radius);flex-shrink:0}.course-preview-body{flex:1;min-width:0}.course-preview-body h5{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-form-card{background-color:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border-left:4px solid var(--brand);transition:box-shadow var(--transition)}.person-form-card:focus-within{box-shadow:var(--shadow-md)}.person-form-header{display:flex;align-items:center;gap:14px;padding:16px 24px;border-bottom:1px solid var(--border-color);background-color:#fafafa}.person-form-header h4{font-size:17px;font-weight:600;letter-spacing:-0.01em}.person-form-body{padding:24px}.person-form-body .form-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:0.07em;color:#666;margin-bottom:6px}.person-badge{width:36px;height:36px;border-radius:50%;background-color:var(--brand);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0}.language-selector{position:absolute;top:20px;right:20px;z-index:9999}.language-selector form{margin:0}.language-selector select{background-color:white;border:1.5px solid var(--border-color);border-radius:var(--radius);padding:8px 12px;font-size:14px;height:40px;font-weight:500;cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition);min-width:130px}.language-selector select:hover{border-color:var(--brand);box-shadow:var(--shadow-md)}.language-selector select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(216,64,70,0.1)}@media (max-width:768px){.language-selector{top:20px;right:10px}.language-selector select{min-width:120px;height:40px;font-size:13px;padding:6px 10px}}