.navigation{background:#881c1c;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px #0003}.nav-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:center;height:70px}.nav-logo{text-decoration:none;display:flex;align-items:center;gap:.75rem}.logo-text{font-size:1.5rem;font-weight:800;color:#fff;letter-spacing:-.5px}.nav-links{display:flex;list-style:none;gap:.5rem;margin:0;padding:0}.nav-links a{color:#fff;text-decoration:none;padding:.5rem 1rem;border-radius:6px;font-weight:500;transition:background-color .2s,color .2s}.nav-links a:hover{background:#ffffff26}.nav-links a.active{background:#fff;color:#881c1c}.mobile-menu-btn{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;background:none;border:none;cursor:pointer;gap:5px;padding:0}.mobile-menu-btn span{display:block;width:24px;height:3px;background:#fff;border-radius:2px;transition:all .3s ease}.mobile-menu-btn.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-menu-btn.open span:nth-child(2){opacity:0}.mobile-menu-btn.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media (max-width: 768px){.nav-container{height:60px;padding:0 1rem}.logo-text{font-size:1.25rem}.mobile-menu-btn{display:flex}.nav-links{position:fixed;top:60px;left:0;right:0;background:#881c1c;flex-direction:column;padding:1rem;gap:.25rem;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease;box-shadow:0 4px 10px #0003}.nav-links.open{transform:translateY(0);opacity:1;visibility:visible}.nav-links a{display:block;padding:1rem;text-align:center;font-size:1.1rem}.nav-links a.active{background:#fff3;color:#fff}}@media (max-width: 380px){.logo-text{font-size:1.1rem}}.hero{position:relative;min-height:90vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--maroon) 0%,var(--maroon-dark) 100%);color:#fff;text-align:center;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(/images/kicking-action-1.jpeg);background-size:cover;background-position:center}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#881c1ca6,#6b1515b3)}.hero-content{position:relative;z-index:1;max-width:800px;padding:2rem}.hero h1{font-size:4rem;font-weight:800;margin-bottom:1rem;letter-spacing:-1px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-subtitle{font-size:1.5rem;margin-bottom:2rem;opacity:.95;line-height:1.6}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;padding:1rem 2rem;border-radius:8px;font-weight:600;font-size:1.1rem;text-decoration:none;transition:all .3s ease;border:2px solid transparent}.btn-primary{background:#fff;color:var(--maroon)}.btn-primary:hover{background:var(--gray-light);transform:translateY(-2px);box-shadow:0 10px 20px #0003}.btn-secondary{background:transparent;color:#fff;border-color:#fff}.btn-secondary:hover{background:#fff;color:var(--maroon)}.btn-large{padding:1.25rem 2.5rem;font-size:1.2rem}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}section{padding:5rem 0}section h2{font-size:2.5rem;font-weight:700;color:var(--maroon);text-align:center;margin-bottom:1rem}.section-subtitle{text-align:center;color:var(--gray);font-size:1.2rem;max-width:600px;margin:0 auto 3rem}.about-section{background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-image{position:relative}.about-image img{width:100%;border-radius:12px;box-shadow:0 20px 40px #881c1c33}.about-image:before{content:"";position:absolute;top:-20px;left:-20px;width:100%;height:100%;border:4px solid var(--maroon);border-radius:12px;z-index:-1}.about-content h2{text-align:left;margin-bottom:1.5rem}.about-content p{color:var(--gray-dark);line-height:1.8;margin-bottom:1.5rem;font-size:1.1rem}.about-stats{display:flex;gap:2rem;margin-top:2rem}.stat{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:800;color:var(--maroon)}.stat-label{font-size:.9rem;color:var(--gray);font-weight:500}.services-section{background:var(--gray-light)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.service-card{background:#fff;border-radius:12px;padding:2.5rem;text-align:center;box-shadow:0 4px 20px #00000014;transition:transform .3s ease,box-shadow .3s ease;position:relative}.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #881c1c26}.service-card.featured{border:2px solid var(--maroon)}.featured-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--maroon);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.service-icon{width:60px;height:60px;margin:0 auto 1.5rem;background:var(--gray-light);border-radius:50%;display:flex;align-items:center;justify-content:center}.service-icon svg{width:30px;height:30px;color:var(--maroon)}.service-card h3{font-size:1.5rem;color:var(--maroon-dark);margin-bottom:.5rem}.service-card .price{font-size:1.25rem;font-weight:700;color:var(--maroon);margin-bottom:1.5rem}.service-card ul{list-style:none;text-align:left;margin-bottom:2rem}.service-card li{color:var(--gray-dark);position:relative;padding:.5rem 0 .5rem 1.5rem}.service-card li:before{content:"✓";position:absolute;left:0;color:var(--maroon);font-weight:700}.service-card .btn{width:100%;padding:.875rem 1.5rem}.gallery-section{background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.gallery-item{position:relative;overflow:hidden;border-radius:12px;aspect-ratio:4/3}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.05)}.cta-section{background:linear-gradient(135deg,var(--maroon) 0%,var(--maroon-dark) 100%);text-align:center;color:#fff}.cta-section h2{color:#fff;margin-bottom:1rem}.cta-section p{font-size:1.2rem;opacity:.95;max-width:600px;margin:0 auto 2rem;line-height:1.6}.contact-section{background:var(--gray-light)}.contact-grid{max-width:600px;margin:0 auto}.contact-info{display:grid;gap:1.5rem}.contact-item{display:flex;align-items:center;gap:1.5rem;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 10px #0000000d}.contact-icon{width:50px;height:50px;background:var(--gray-light);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-icon svg{width:24px;height:24px;color:var(--maroon)}.contact-item h4{font-size:1rem;color:var(--maroon);margin-bottom:.25rem}.contact-item p{color:var(--gray-dark);margin:0}.footer{background:var(--maroon-dark);color:#fff;padding:3rem 0 1.5rem}.footer .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.footer-content{display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1);gap:1.5rem}.footer-logo{font-size:1.5rem;font-weight:800}.footer-brand{text-align:center}.footer-brand p{margin-top:.5rem;opacity:.8;max-width:400px}.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center}.footer-links a{color:#fff;text-decoration:none;opacity:.8;transition:opacity .2s}.footer-links a:hover{opacity:1}.footer-bottom{padding-top:1.5rem;opacity:.7;font-size:.9rem}.footer-bottom p{text-align:center;margin:0}@media (max-width: 992px){.about-grid{grid-template-columns:1fr;gap:2rem}.about-image:before{display:none}.about-content h2{text-align:center}.about-stats{justify-content:center}.services-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}.gallery-grid{grid-template-columns:1fr}}@media (max-width: 768px){.hero{min-height:80vh}.hero h1{font-size:2.2rem}.hero-subtitle{font-size:1.1rem}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:100%;max-width:280px}section{padding:3rem 0}section h2{font-size:1.75rem}.section-subtitle{font-size:1rem;padding:0 1rem}.about-stats{flex-direction:row;gap:2rem;justify-content:center}.stat-number{font-size:2rem}.stat-label{font-size:.8rem}.contact-item{padding:1rem}.contact-icon{width:40px;height:40px}.contact-icon svg{width:20px;height:20px}.footer-links{gap:1rem}.footer-links a{font-size:.9rem}}@media (max-width: 480px){.hero h1{font-size:1.8rem}.hero-subtitle{font-size:1rem}.about-stats{flex-direction:column;gap:1rem}.gallery-item{aspect-ratio:16/9}}.calendar-container{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000001a;position:relative}.calendar-loading,.calendar-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:100;background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 12px #00000026}.calendar-error{color:#ef4444}.calendar-error button{margin-top:1rem;padding:.5rem 1.5rem;background:#881c1c;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem}.calendar-error button:hover{background:#6b1515}.calendar-legend{display:flex;gap:2rem;margin-bottom:1.5rem;flex-wrap:wrap;justify-content:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.legend-color{width:24px;height:24px;border-radius:4px;display:inline-block}.legend-color.available{background-color:#10b981}.legend-color.limited{background-color:#f59e0b}.legend-color.full{background-color:#ef4444}.fc{font-family:inherit}.fc-event{cursor:pointer;border-radius:4px;padding:2px 4px;font-size:.85rem;font-weight:500}.fc-event:hover{opacity:.85}.fc-toolbar-title{font-size:1.5rem!important;font-weight:700;color:#881c1c}.fc-button{background-color:#881c1c!important;border-color:#881c1c!important;text-transform:capitalize}.fc-button:hover,.fc-button-active{background-color:#6b1515!important;border-color:#6b1515!important}.fc-button:focus{box-shadow:0 0 0 2px #881c1c40!important}.fc-col-header-cell{padding:10px 0;font-weight:600;background-color:#f5f0ef}.fc-timegrid-slot{height:3rem}.fc-timegrid-event{border-radius:4px}.fc-day-today{background-color:#881c1c0d!important}.fc-timegrid-now-indicator-line{border-color:#881c1c!important}.fc-timegrid-now-indicator-arrow{border-color:#881c1c!important;border-top-color:transparent!important;border-bottom-color:transparent!important}@media (max-width: 768px){.calendar-container{padding:1rem}.calendar-legend{gap:1rem}.legend-item{font-size:.85rem}.legend-color{width:20px;height:20px}.fc-toolbar-title{font-size:1.2rem!important}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:#6b7280;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#111827}.modal-header{padding:2rem 2rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0 0 1rem;font-size:1.75rem;color:#881c1c}.lesson-type-badge{display:inline-block;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.9rem}.lesson-type-badge.group{background:#f5f0ef;color:#881c1c}.lesson-type-badge.private{background:#fce7f3;color:#881c1c}.success-modal{max-width:500px}.success-content{text-align:center;padding:2rem}.success-icon{width:80px;height:80px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1.5rem;font-weight:700}.success-content h2{margin-bottom:1rem;color:#111827}.success-details{color:#6b7280;margin-bottom:2rem;line-height:1.6}.payment-instructions{background:#f5f0ef;border-radius:8px;padding:1.5rem;margin-bottom:2rem;text-align:left}.payment-instructions h3{margin:0 0 1rem;color:#881c1c;font-size:1.1rem}.payment-option{padding:1rem;background:#fff;border-radius:6px;margin-bottom:1rem}.payment-option:last-child{margin-bottom:0}.payment-option strong{color:#881c1c;display:block;margin-bottom:.5rem}.payment-option p{margin:.25rem 0;color:#374151}.venmo-handle{font-weight:700;color:#881c1c;font-size:1.1rem}.payment-note{font-size:.85rem;color:#6b7280;font-style:italic}.modal-body{padding:2rem}.booking-details{background:#f5f0ef;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.detail-row{display:flex;justify-content:space-between;margin-bottom:.75rem}.detail-row:last-child{margin-bottom:0}.detail-label{font-weight:600;color:#6b7280}.detail-value{color:#111827;font-weight:500}.error-message{background:#fee2e2;color:#991b1b;padding:1rem;border-radius:6px;margin-bottom:1.5rem;border-left:4px solid #ef4444}.booking-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#374151;font-size:.95rem}.form-group input,.form-group select{padding:.75rem;border:2px solid #e5e7eb;border-radius:6px;font-size:1rem;transition:border-color .2s;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:#881c1c}.form-group input:disabled,.form-group select:disabled{background:#f9fafb;cursor:not-allowed}.total-price{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:#f5f0ef;border-radius:8px;font-size:1.25rem;font-weight:700;color:#6b1515}.price-amount{font-size:1.75rem;color:#881c1c}.submit-button{padding:1rem;background:linear-gradient(135deg,#881c1c,#6b1515);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #881c1c66}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.modal-content{max-height:95vh}.modal-header{padding:1.5rem 1.5rem 1rem}.modal-header h2{font-size:1.5rem}.modal-body{padding:1.5rem}.booking-details{padding:1rem}.detail-row{flex-direction:column;gap:.25rem}}.schedule-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f0ef}.schedule-header{background:linear-gradient(135deg,#881c1c,#6b1515);color:#fff;padding:2rem 0;text-align:center}.schedule-header .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;font-weight:500;margin-bottom:1rem;opacity:.9;transition:opacity .2s}.back-link:hover{opacity:1}.back-link svg{width:20px;height:20px}.schedule-header h1{font-size:2.5rem;margin-bottom:.5rem;font-weight:700}.schedule-header p{font-size:1.1rem;opacity:.95}.schedule-main{flex:1;padding:2rem 0}.schedule-main .container{max-width:1400px;margin:0 auto;padding:0 1.5rem}.pricing-reminder{display:flex;justify-content:center;align-items:center;gap:2rem;background:#fff;padding:1rem 2rem;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-bottom:2rem;flex-wrap:wrap}.pricing-item{display:flex;align-items:center;gap:.75rem}.pricing-type{font-weight:600;color:#374151}.pricing-amount{background:#881c1c;color:#fff;padding:.375rem .75rem;border-radius:6px;font-weight:700}.pricing-divider{width:1px;height:30px;background:#e5e7eb}.schedule-footer{background:#6b1515;color:#fff;padding:1.5rem 0;text-align:center}.schedule-footer .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.schedule-footer p{opacity:.8;font-size:.9rem;margin:0}.notification{position:fixed;top:1rem;left:50%;transform:translate(-50%);padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1001;display:flex;align-items:center;gap:1rem;max-width:90%;animation:slideDown .3s ease-out;font-weight:500}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.notification-success{background:#d1fae5;color:#065f46;border-left:4px solid #10b981}.notification-info{background:#dbeafe;color:#1e40af;border-left:4px solid #3b82f6}.notification-error{background:#fee2e2;color:#991b1b;border-left:4px solid #ef4444}.notification-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;opacity:.7;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:opacity .2s,background .2s}.notification-close:hover{opacity:1;background:#0000001a}@media (max-width: 768px){.schedule-header h1{font-size:1.8rem}.schedule-header p{font-size:1rem}.schedule-main{padding:1rem 0}.pricing-reminder{flex-direction:column;gap:1rem;padding:1rem}.pricing-divider{width:100%;height:1px}.notification{padding:.875rem 1rem;font-size:.9rem;max-width:95%}}.app{min-height:100vh;display:flex;flex-direction:column}*{margin:0;padding:0;box-sizing:border-box}:root{--maroon: #881c1c;--maroon-dark: #6b1515;--maroon-light: #a52a2a;--white: #ffffff;--gray-light: #f5f0ef;--gray: #6b7280;--gray-dark: #374151}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--gray-light);color:var(--gray-dark)}html{scroll-behavior:smooth}a{color:var(--maroon)}a:hover{color:var(--maroon-dark)}
