body{margin:0;background-color:#f6f3ea}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}*{margin:0;padding:0;box-sizing:border-box}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;line-height:1.6;color:#5D4037;background-color:#ffffff}.App{min-height:100vh}.container{padding:0 20px}.section-title{font-size:2rem;font-weight:600;color:#8B4513}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:2rem;gap:2rem;margin-top:2rem}.card{background:#FFFBF5;border-radius:12px;padding:2rem;box-shadow:0 2px 10px rgba(139,69,19,.1);border:1px solid rgba(139,69,19,.1);transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-5px);box-shadow:0 5px 20px rgba(139,69,19,.2)}@media (max-width:768px){.container{padding:0 1rem}.section-title{font-size:1.5rem;text-align:center}.grid{grid-template-columns:1fr;gap:1rem}}.header{background:#FFFBF5;box-shadow:0 2px 10px rgba(0,0,0,.1);position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;gap:2rem;position:relative}.desktop-nav{flex:1 1}.desktop-sign-up{margin-left:auto}.logo{display:flex;align-items:center;text-decoration:none;cursor:pointer;transition:transform .2s ease;border-radius:8px;padding:.5rem;margin:-.5rem}.logo:hover{transform:translateY(-1px)}.chess-icon{width:2.5rem;height:2.5rem;object-fit:contain;transition:transform .3s ease}.logo:hover .chess-icon{transform:scale(1.05)}.nav{display:flex;gap:2rem;align-items:center}.nav-link{text-decoration:none;color:#000000;font-weight:500;transition:color .3s ease;position:relative}.nav-link:hover{color:#333333}.nav-link:after{content:"";position:absolute;width:0;height:2px;bottom:-5px;left:0;background-color:#333333;transition:width .3s ease}.nav-link:hover:after{width:100%}.nav-dropdown{position:relative;display:flex;align-items:center}.dropdown-trigger{display:flex;align-items:center;gap:.5rem;cursor:pointer}.dropdown-arrow{font-size:.7rem;transition:transform .3s ease}.nav-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;background:#FFFBF5;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.1);border:1px solid #e0e0e0;min-width:180px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;z-index:1000;margin-top:.5rem}.dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{display:block;padding:.75rem 1rem;text-decoration:none;color:#333333;font-weight:500;transition:background-color .2s ease;border-bottom:1px solid #f0f0f0;white-space:nowrap}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:#f8f8f8;color:#000000}.mobile-dropdown{width:100%}.mobile-dropdown-trigger{display:flex;justify-content:space-between;align-items:center;cursor:pointer;width:100%}.mobile-dropdown-trigger .dropdown-arrow{transition:transform .3s ease}.mobile-dropdown.open .mobile-dropdown-trigger .dropdown-arrow{transform:rotate(180deg)}.mobile-dropdown-menu{max-height:0;overflow:hidden;transition:max-height .3s ease;background:#f8f8f8;border-radius:8px;margin-top:.5rem}.mobile-dropdown-menu.open{max-height:200px}.mobile-dropdown-item{display:block;padding:.75rem 1rem;text-decoration:none;color:#555555;font-weight:500;font-size:1rem;border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.mobile-dropdown-item:last-child{border-bottom:none}.mobile-dropdown-item:hover{background-color:#e8e8e8;color:#333333}.sign-up-btn{background:#f8f8f8;border:1px solid #e0e0e0;padding:.8rem 1.5rem;border-radius:25px;font-weight:600;cursor:pointer;transition:background .3s ease,transform .2s ease;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.sign-up-btn,.sign-up-btn:hover{color:#333333;text-decoration:none}.sign-up-btn:hover{background:#e8e8e8;border-color:#d0d0d0;transform:translateY(-2px)}.auth-buttons{display:flex;gap:1rem;align-items:center;margin-left:auto}.login-btn{background:transparent;color:#333333;border:1px solid #333333;padding:.8rem 1.5rem;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.login-btn:hover{background:#333333;color:#ffffff;transform:translateY(-2px);text-decoration:none}.mobile-menu-btn{display:none;flex-direction:column;justify-content:space-around;width:2rem;height:2rem;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger-line{width:2rem;height:.25rem;background:#000000;border-radius:10px;transition:all .3s linear;position:relative;transform-origin:1px}.hamburger-line.open:first-child{transform:rotate(45deg)}.hamburger-line.open:nth-child(2){opacity:0;transform:translateX(20px)}.hamburger-line.open:nth-child(3){transform:rotate(-45deg)}.mobile-nav{display:none;position:fixed;top:0;right:-100%;width:280px;height:100vh;background:#FFFBF5;flex-direction:column;padding:5rem 2rem 2rem;gap:2rem;box-shadow:-2px 0 10px rgba(0,0,0,.1);transition:right .3s ease;z-index:1000}.mobile-nav.open{right:0}.mobile-nav .nav-link{font-size:1.1rem;padding:1rem 0;border-bottom:1px solid #f0f0f0}.mobile-nav .nav-link:last-of-type{border-bottom:none}.mobile-nav .mobile-login{margin-top:1rem;align-self:stretch}.mobile-nav .mobile-sign-up{align-self:stretch}.mobile-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:999}@media (max-width:768px){.header-container{padding:1rem;justify-content:space-between;gap:0}.auth-buttons,.desktop-nav{display:none}.mobile-menu-btn,.mobile-nav{display:flex}.mobile-overlay{display:block}}@media (max-width:480px){.header-container{padding:.8rem}.chess-icon{width:2rem;height:2rem}.mobile-nav{width:100%;right:-100%}.mobile-nav.open{right:0}}.user-section{display:flex;align-items:center}.user-dropdown{position:relative;cursor:pointer}.user-name{display:flex;align-items:center;gap:.5rem;color:#1a1a1a;font-weight:600;padding:.75rem 1.25rem;border-radius:12px;transition:all .3s ease;background:rgba(255,255,255,.8);border:1px solid rgba(0,0,0,.08);font-size:.95rem;letter-spacing:-.01em}.user-name:hover{background:#ffffff;box-shadow:0 2px 8px rgba(0,0,0,.1);transform:translateY(-1px);border-color:rgba(0,0,0,.12)}.user-name .dropdown-arrow{font-size:.7rem;transition:transform .3s ease;color:#6b7280}.user-dropdown:hover .user-name .dropdown-arrow{transform:rotate(180deg)}.user-dropdown-menu{position:absolute;top:100%;right:0;background:#FFFBF5;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.08);min-width:220px;opacity:0;visibility:hidden;transform:translateY(-15px) scale(.95);transition:all .3s cubic-bezier(.34,1.56,.64,1);z-index:1000;margin-top:.5rem;overflow:hidden}.user-dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.user-dropdown-menu .dropdown-item{display:block;padding:1rem 1.25rem;color:#1a1a1a;text-decoration:none;background:none;width:100%;text-align:left;cursor:pointer;transition:all .2s ease;font-weight:500;font-size:.95rem;border:none;border-bottom:1px solid rgba(0,0,0,.06);letter-spacing:-.01em}.user-dropdown-menu .dropdown-item:last-child{border-bottom:none}.user-dropdown-menu .dropdown-item:hover{background:#f8f9fa;color:#000000;padding-left:1.5rem}.dropdown-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.1),transparent);margin:.5rem 0}.logout-btn{color:#dc2626!important;font-weight:600!important}.logout-btn:hover{background:#fef2f2!important;color:#b91c1c!important}.mobile-user-info{padding:1.5rem;border-bottom:1px solid rgba(0,0,0,.08);margin-bottom:.5rem;background:linear-gradient(135deg,#f8f9fa,#ffffff)}.mobile-user-name{color:#1a1a1a;font-weight:600;font-size:1.1rem;letter-spacing:-.01em}.logout-btn-mobile{color:#dc2626!important;font-weight:600!important;background:none;padding:1.25rem 1.5rem;text-align:left;width:100%;cursor:pointer;border:none;border-top:1px solid rgba(0,0,0,.08);margin-top:.5rem;transition:all .2s ease;font-size:.95rem;letter-spacing:-.01em}.logout-btn-mobile:hover{background:#fef2f2;color:#b91c1c!important;padding-left:2rem}@media (max-width:768px){.desktop-user-dropdown{display:none}.user-section{margin-left:auto}}.footer{background:#FFFBF5;color:#1a1a1a;padding:3rem 0 2rem;margin-top:2rem}.footer-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;grid-gap:2rem;gap:2rem;align-items:start}.footer-brand{display:flex;flex-direction:column}.footer-title{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:#1a1a1a}.footer-subtitle{font-size:.9rem;color:#1a1a1a;margin:.2rem 0;line-height:1.4}.social-links{flex-direction:row;gap:1rem;margin-top:1rem}.social-link,.social-links{display:flex;align-items:center}.social-link{color:#1a1a1a;text-decoration:none;transition:all .3s ease;justify-content:center;padding:.5rem;border-radius:50%;background:rgba(0,0,0,.06)}.social-link:hover{color:#1a1a1a;background:rgba(0,0,0,.12);transform:translateY(-2px)}.social-link svg{width:20px;height:20px;transition:all .3s ease}.instagram-icon:hover{color:#E4405F}.facebook-icon:hover{color:#1877F2}.whatsapp-icon:hover{color:#25D366}.footer-column{display:flex;flex-direction:column}.footer-heading{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:#1a1a1a}.footer-heading a{color:#1a1a1a;text-decoration:none;transition:color .3s ease}.footer-heading a:hover{color:#000}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:#1a1a1a;text-decoration:none;font-size:.9rem;transition:color .3s ease}.footer-links a:hover{color:#000}@media (max-width:768px){.footer-container{grid-template-columns:1fr;gap:2rem;padding:0 1rem;text-align:center}.footer-brand{align-items:center}.social-links{justify-content:center}.footer-title{font-size:1.3rem}.footer-heading{font-size:1rem}}.notification-overlay{position:fixed;top:20px;right:20px;z-index:10000;opacity:0;transform:translateX(100%);transition:all .4s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.notification-overlay.visible{opacity:1;transform:translateX(0);pointer-events:all}.notification{background:#ffffff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.15);border:1px solid rgba(0,0,0,.08);min-width:320px;max-width:400px;overflow:hidden;position:relative}.notification-content{padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem}.notification-icon{font-size:1.5rem;flex-shrink:0;line-height:1}.notification-message{flex:1 1;color:#1a1a1a;font-weight:500;font-size:.95rem;line-height:1.4;letter-spacing:-.01em}.notification-close{background:none;border:none;color:#6b7280;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;flex-shrink:0}.notification-close:hover{background:rgba(0,0,0,.05);color:#1a1a1a}.notification-progress{height:3px;width:100%;position:absolute;bottom:0;left:0;animation:progressBar 4s linear forwards}@keyframes progressBar{0%{width:100%}to{width:0}}.notification-success{border-left:4px solid #10b981}.notification-progress-success{background:linear-gradient(90deg,#10b981,#34d399)}.notification-error{border-left:4px solid #ef4444}.notification-progress-error{background:linear-gradient(90deg,#ef4444,#f87171)}.notification-warning{border-left:4px solid #f59e0b}.notification-progress-warning{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.notification-info{border-left:4px solid #3b82f6}.notification-progress-info{background:linear-gradient(90deg,#3b82f6,#60a5fa)}@media (max-width:640px){.notification-overlay{top:10px;right:10px;left:10px}.notification{min-width:auto;max-width:none}.notification-content{padding:1rem 1.25rem}.notification-message{font-size:.9rem}}.notification-overlay:nth-child(2){top:100px}.notification-overlay:nth-child(3){top:180px}.notification-overlay:nth-child(4){top:260px}.whatsapp-float{position:fixed;bottom:1.5rem;right:1.5rem;z-index:999;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#25D366;color:#fff;text-decoration:none;border-radius:50px;box-shadow:0 4px 20px rgba(37,211,102,.45);transition:transform .2s ease,box-shadow .2s ease}.whatsapp-float:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 24px rgba(37,211,102,.5)}.whatsapp-float-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.whatsapp-float-icon svg{width:28px;height:28px}.whatsapp-float-label{font-size:.9rem;font-weight:600;white-space:nowrap}@media (max-width:480px){.whatsapp-float{bottom:1rem;right:1rem;padding:.65rem .85rem}.whatsapp-float-label{font-size:.8rem}}.card-info{background:#f8f9fa;border-radius:12px;padding:2rem;text-align:center;box-shadow:0 2px 10px rgba(0,0,0,.1);transition:transform .3s ease,box-shadow .3s ease;border:1px solid #e9ecef;cursor:pointer}.card-info:hover{transform:translateY(-5px);box-shadow:0 5px 20px rgba(0,0,0,.15)}.card-info__avatar{margin-bottom:1.5rem}.card-info__avatar,.card-info__avatar-icon{display:flex;justify-content:center;align-items:center}.card-info__avatar-icon{font-size:4rem;background:#000000;border-radius:50%;width:80px;height:80px;color:white;box-shadow:0 4px 15px rgba(0,0,0,.2)}.card-info__image{margin-bottom:1.5rem;display:flex;justify-content:center;align-items:center}.card-info__image img{width:80px;height:80px;border-radius:50%;object-fit:cover;box-shadow:0 4px 15px rgba(0,0,0,.2)}.card-info__content{flex:1 1}.card-info__title{font-size:1.25rem;font-weight:600;color:#333;margin:0 0 1rem}.card-info__text{font-size:1rem;line-height:1.6;color:#555;margin:0}.card-info--small{padding:1.5rem}.card-info--small .card-info__avatar-icon{width:60px;height:60px;font-size:2.5rem}.card-info--small .card-info__image img{width:60px;height:60px}.card-info--small .card-info__title{font-size:1.1rem}.card-info--small .card-info__text{font-size:.9rem}.card-info--large{padding:2.5rem}.card-info--large .card-info__avatar-icon{width:100px;height:100px;font-size:5rem}.card-info--large .card-info__image img{width:100px;height:100px}.card-info--large .card-info__title{font-size:1.5rem}.card-info--large .card-info__text{font-size:1.1rem}.card-info--primary{background:#000000;color:white}.card-info--primary .card-info__title{color:white}.card-info--primary .card-info__text{color:rgba(255,255,255,.9)}.card-info--primary .card-info__avatar-icon{background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-info--secondary{background:#f1f3f4;border:2px solid #e1e5e9}.card-info--outlined{background:transparent;border:2px solid #667eea}.card-info--outlined:hover{background:rgba(102,126,234,.05)}@media (max-width:768px){.card-info{padding:1.5rem}.card-info__avatar-icon{width:60px;height:60px;font-size:2.5rem}.card-info__image img{width:60px;height:60px}.card-info__title{font-size:1.1rem}.card-info__text{font-size:.9rem}}.google-login-btn{width:100%;padding:.875rem 1.5rem;border:2px solid #dadce0;border-radius:12px;background:#ffffff;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);font-family:inherit;font-size:.95rem;font-weight:500;position:relative;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.05)}.google-login-btn:hover{border-color:#4285f4;box-shadow:0 4px 16px rgba(66,133,244,.2);transform:translateY(-2px)}.google-login-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(66,133,244,.3)}.google-login-btn__content{display:flex;align-items:center;justify-content:center;gap:.75rem;position:relative;z-index:2}.google-icon{width:20px;height:20px;flex-shrink:0}.google-login-btn__text{color:#3c4043;font-weight:500;letter-spacing:-.01em}.google-login-btn--secondary{background:transparent;border-color:rgba(0,0,0,.12)}.google-login-btn--secondary:hover{background:rgba(66,133,244,.04);border-color:#4285f4}.google-login-btn--disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.google-login-btn--disabled:hover{transform:none;box-shadow:0 2px 8px rgba(0,0,0,.05)}.google-login-btn--loading{color:transparent}.google-login-btn--loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #4285f4;border-top-color:transparent;border-radius:50%;animation:google-btn-spin 1s linear infinite}@keyframes google-btn-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:480px){.google-login-btn{padding:1rem 1.25rem;font-size:.9rem}.google-login-btn__content{gap:.625rem}.google-icon{width:18px;height:18px}}.google-login-btn:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 3px rgba(66,133,244,.2)}.form-section .google-login-btn{margin-bottom:1rem}.auth-divider{display:flex;align-items:center;margin:1.5rem 0;text-align:center}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:rgba(0,0,0,.12)}.auth-divider__text{padding:0 1rem;color:#6b7280;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.home{min-height:100vh}.hero{background:#ffffff;padding:4rem 0;min-height:60vh;display:flex;align-items:center}.hero-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1.15fr .85fr;grid-gap:4rem;gap:4rem;align-items:center}.hero-content{animation:fadeInLeft 1s ease-out}.hero-title{font-size:3.5rem;font-weight:800;color:#000000;line-height:1.2;margin-bottom:1.5rem}.hero-subtitle{font-size:1.2rem;color:#666666;line-height:1.6;max-width:500px}.hero-chess-pieces{display:flex;justify-content:flex-end;align-items:center;animation:fadeInRight 1s ease-out}.chess-pieces-svg{max-width:280px;width:100%;height:auto;transition:transform .3s ease;cursor:default}.chess-pieces-svg:hover{transform:none}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width:768px){.hero-container{grid-template-columns:1fr;gap:2rem;text-align:center;padding:0 1rem}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.hero-chess-pieces{flex-direction:row;justify-content:center;gap:1rem}.chess-pieces-svg{max-width:180px}}.coaches{background:#ffffff;padding:1rem 0;scroll-margin-top:100px}.coaches-grid{display:flex;gap:1.5rem;width:100%;overflow:hidden;justify-content:center;align-items:stretch;padding:0 1rem;margin-top:2rem}.coach-card{flex:0 0 auto;width:280px;min-height:250px;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;border:1px solid rgba(0,0,0,.04)}.coach-card:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(102,126,234,.2)}.coach-avatar{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.coach-photo{width:70px;border-radius:50%;object-fit:cover;border:3px solid #f8f9fa;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:transform .3s ease}.coach-photo:hover{transform:scale(1.05)}.coach-content{text-align:center;flex:1 1;display:flex;flex-direction:column;justify-content:flex-start}.coach-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0 0 .75rem;line-height:1.3;letter-spacing:-.02em}.coach-text{font-size:.85rem;line-height:1.5;color:#6b7280;margin:0;text-align:center;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;display:block}@media (max-width:1400px){.coach-card{width:260px;min-height:190px}.coach-photo{width:65px}.coach-name{font-size:1rem}.coach-text{font-size:.8rem}}@media (max-width:1024px){.coach-card{width:240px;min-height:180px}.coach-photo{width:60px}.coach-name{font-size:.95rem}.coach-text{font-size:.75rem}}@media (max-width:768px){.coaches{padding:3rem 0}.coaches .container{padding:0 1rem;max-width:100%}.text-center h2{font-size:2rem}.text-center p{font-size:1rem}.coaches-grid{padding:0;width:100%;justify-content:center;display:flex}.coach-card{width:90vw;max-width:350px;min-height:220px;margin:0 auto;display:flex;flex-direction:column;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem}.coach-avatar{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.coach-photo{width:70px;border-radius:50%;object-fit:cover;border:3px solid #f8f9fa;box-shadow:0 4px 16px rgba(0,0,0,.1)}.coach-content{text-align:center;flex:1 1;display:flex;flex-direction:column;justify-content:flex-start}.coach-name{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0 0 .75rem;line-height:1.3}.coach-text{font-size:.85rem;line-height:1.5;color:#6b7280;margin:0;text-align:center}}@media (max-width:480px){.coaches{padding:2.5rem 0}.coach-card{width:calc(100vw - 3rem);max-width:280px;min-height:180px;padding:1.25rem}.coach-photo{width:65px}.coach-name{font-size:.95rem;margin-bottom:.5rem}.coach-text{font-size:.8rem;line-height:1.4}.carousel-indicators,.carousel-navigation{gap:.5rem}.indicator{font-size:14px;padding:.25rem;min-width:20px}.carousel-arrow{font-size:16px;padding:.25rem}}.elite-students{background:#ffffff;padding:1rem 0;scroll-margin-top:100px}.elite-students-grid{display:flex;gap:1.5rem;width:100%;overflow:hidden;justify-content:center;align-items:stretch;padding:0 1rem;margin-top:2rem}.elite-student-card{flex:0 0 auto;width:280px;min-height:250px;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;border:1px solid rgba(0,0,0,.04)}.elite-student-card:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(102,126,234,.2)}.elite-student-avatar{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.elite-student-photo{width:70px;border-radius:50%;object-fit:cover;border:3px solid #f8f9fa;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:transform .3s ease}.elite-student-photo:hover{transform:scale(1.05)}.elite-student-content{text-align:center;flex:1 1;display:flex;flex-direction:column;justify-content:flex-start}.elite-student-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0 0 .75rem;line-height:1.3;letter-spacing:-.02em}.elite-student-text{font-size:.85rem;line-height:1.5;color:#6b7280;margin:0;text-align:center;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;display:block}@media (max-width:1400px){.elite-students-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.elite-student-card{width:240px}.elite-student-photo{width:60px}.elite-student-name{font-size:1rem}.elite-student-text{font-size:.8rem}}@media (max-width:768px){.elite-students{padding:60px 0}.elite-students .container{padding:0 1rem;max-width:100%}.text-center h2{font-size:2rem}.text-center p{font-size:1rem}.elite-students-grid{flex-direction:column;align-items:center;gap:1.5rem;padding:0}.elite-student-card{width:100%;max-width:320px;min-height:auto;padding:1.5rem;flex-direction:row;text-align:left;align-items:center}.elite-student-avatar{margin-bottom:0;margin-right:1rem;flex-shrink:0}.elite-student-photo{width:60px;height:60px}.elite-student-content{text-align:left;flex:1 1}.elite-student-name{font-size:1rem;margin-bottom:.5rem}.elite-student-text{font-size:.8rem;line-height:1.4}}@media (max-width:480px){.elite-students{padding:40px 0}.elite-student-card{padding:1rem}.elite-student-photo{width:50px;height:50px}.elite-student-name{font-size:.9rem}.elite-student-text{font-size:.75rem}.carousel-navigation{margin-top:1.5rem}.carousel-indicators{gap:.5rem}.indicator{font-size:14px;padding:.25rem}.carousel-arrow{font-size:16px}}.testimonials{background:#ffffff;padding:1rem 0;scroll-margin-top:100px}.testimonials-grid{display:flex;gap:1.5rem;width:100%;overflow:hidden;justify-content:center;align-items:stretch;padding:0 1rem;margin-top:2rem}.testimonial-card{flex:0 0 auto;width:280px;min-height:250px;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;border:1px solid rgba(0,0,0,.04)}.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(102,126,234,.2)}.testimonial-avatar{margin-bottom:1rem}.testimonial-avatar,.testimonial-emoji{display:flex;justify-content:center;align-items:center}.testimonial-emoji{width:70px;height:70px;border-radius:50%;background:#f8f9fa;font-size:2rem;border:3px solid #f8f9fa;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:transform .3s ease}.testimonial-emoji:hover{transform:scale(1.05)}.testimonial-content{text-align:center;flex:1 1;display:flex;flex-direction:column;justify-content:flex-start}.testimonial-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem;line-height:1.3;letter-spacing:-.02em}.testimonial-rating{display:flex;justify-content:center;align-items:center;margin-bottom:.75rem;gap:2px}.star{font-size:1.2rem;transition:all .2s ease}.star.filled{color:#fbbf24;text-shadow:0 1px 2px rgba(251,191,36,.3)}.star.empty{color:#e5e7eb}.testimonial-text{font-size:.85rem;line-height:1.5;color:#6b7280;margin:0;text-align:center;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;display:block}@media (max-width:1400px){.testimonial-card{width:260px}.testimonial-emoji{width:65px;height:65px}.testimonial-name{font-size:1rem}.star{font-size:1.1rem}.testimonial-text{font-size:.8rem}}@media (max-width:1024px){.testimonial-card{width:240px;min-height:230px}.testimonial-emoji{width:60px;height:60px;font-size:1.8rem}.testimonial-name{font-size:.95rem}.star{font-size:1rem}.testimonial-text{font-size:.78rem}}@media (max-width:768px){.testimonials{padding:2rem 0}.testimonials .container{padding:0 1rem}.text-center h3{font-size:2rem}.text-center p{font-size:1rem}.testimonials-grid{flex-direction:column;align-items:center;gap:1.5rem;padding:0}.testimonial-card{width:100%;max-width:320px;min-height:auto;padding:1.5rem;margin:0;box-shadow:0 2px 15px rgba(0,0,0,.06)}.testimonial-avatar{margin-bottom:1rem}.testimonial-emoji{width:60px;height:60px;font-size:1.8rem}.testimonial-content{text-align:center}.testimonial-name{font-size:1rem;margin-bottom:.5rem}.star{font-size:1.1rem}.testimonial-text{font-size:.85rem;line-height:1.6}}@media (max-width:480px){.testimonials{padding:1.5rem 0}.testimonial-card{padding:1.25rem;border-radius:15px}.testimonial-emoji{width:55px;height:55px;font-size:1.6rem}.testimonial-name{font-size:.95rem}.star{font-size:1rem}.testimonial-text{font-size:.8rem}.carousel-navigation{margin-top:2rem}.carousel-indicators{gap:.75rem}.indicator{font-size:14px;padding:.4rem}.carousel-arrow{font-size:16px}}.achievements{background:#ffffff;padding:1rem 0;scroll-margin-top:100px}.text-center{text-align:center}.text-center h3{font-size:2.5rem;font-weight:700;color:#1a1a1a;margin-bottom:1rem;letter-spacing:-.02em}.text-center p{font-size:1.1rem;color:#6b7280;margin-bottom:0}.achievements-grid{display:flex;gap:1.5rem;width:100%;overflow:hidden;justify-content:center;align-items:stretch;padding:0 1rem;margin-top:2rem}.achievement-card{flex:0 0 auto;width:280px;min-height:200px;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;border:1px solid rgba(0,0,0,.04)}.achievement-card:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(102,126,234,.2)}.achievement-avatar{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.achievement-photo{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid #f8f9fa;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:transform .3s ease}.achievement-photo:hover{transform:scale(1.05)}.achievement-content{text-align:center;flex:1 1;display:flex;flex-direction:column;justify-content:flex-start}.achievement-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0;line-height:1.3;letter-spacing:-.02em}.carousel-navigation{gap:1rem;margin-top:2.5rem}.carousel-arrow,.carousel-navigation{display:flex;justify-content:center;align-items:center}.carousel-arrow{border:none;background:none;color:#6b7280;cursor:pointer;transition:all .2s ease;font-size:18px;font-weight:400;padding:.5rem}.carousel-arrow-left:before{content:"<"}.carousel-arrow-right:before{content:">"}.carousel-arrow:hover{color:#374151}.carousel-arrow:active{transform:scale(.95)}.carousel-arrow.disabled{color:#d1d5db;cursor:not-allowed}.carousel-arrow.disabled:hover{color:#d1d5db}.carousel-arrow span{display:none}.carousel-indicators{display:flex;justify-content:center;gap:1rem}.indicator{border:none;background:none;color:#9ca3af;cursor:pointer;transition:all .2s ease;font-size:16px;font-weight:400;padding:.5rem;min-width:24px;height:auto}.indicator.active{color:#374151;font-weight:600}.indicator:hover{color:#374151}.indicator-ellipsis{padding:.5rem 4px;margin:0;color:#9ca3af;font-weight:400;-webkit-user-select:none;user-select:none;font-size:16px}@media (max-width:1400px){.achievement-card{width:260px}}@media (max-width:1024px){.achievement-card{width:240px}.achievement-photo{width:80px;height:80px}.achievement-name{font-size:1rem}}@media (max-width:768px){.achievements{padding:60px 0}.achievements .container{padding:0 1rem;max-width:100%}.text-center h2{font-size:2rem}.text-center p{font-size:1rem}.achievements-grid{flex-direction:column;align-items:center;gap:1.5rem;padding:0}.achievement-card{width:100%;max-width:320px;min-height:auto;padding:1.5rem}.achievement-photo{width:80px;height:80px}.achievement-name{font-size:1rem}}@media (max-width:480px){.achievements{padding:40px 0}.achievement-card{padding:1rem}.achievement-photo{width:70px;height:70px}.achievement-name{font-size:.9rem}.carousel-navigation{margin-top:1.5rem}.carousel-indicators{gap:.5rem}.indicator{font-size:14px;padding:.25rem}.carousel-arrow{font-size:16px}}.locations-page{background:#ffffff;min-height:100vh;padding:2rem 0}.section-title{margin-bottom:2rem;text-align:left}.main-content{display:flex;gap:3rem;margin-bottom:3rem;align-items:flex-start}.left-column,.right-column{flex:1 1;min-width:0}.right-column{margin-top:10%}.locations-section{margin-bottom:3rem}.locations-section .section-title{margin-bottom:2rem}.locations-grid{display:flex;flex-direction:column;gap:1.5rem;min-height:calc((220px * 2) + 1.5rem)}.locations-pagination{gap:1rem;margin-top:2rem;flex-wrap:wrap}.locations-pagination,.locations-pagination-arrow{display:flex;align-items:center;justify-content:center}.locations-pagination-arrow{border:none;background:none;color:#6b7280;cursor:pointer;transition:all .2s ease;font-size:18px;font-weight:400;padding:.5rem}.locations-pagination-arrow:hover:not(:disabled){color:#374151}.locations-pagination-arrow:active:not(:disabled){transform:scale(.95)}.locations-pagination-arrow.disabled{color:#d1d5db;cursor:not-allowed}.locations-pagination-arrow.disabled:hover{color:#d1d5db}.locations-pagination-arrow span{display:none}.locations-pagination-arrow:first-child:before{content:"<"}.locations-pagination-arrow:last-child:before{content:">"}.locations-pagination-indicators{display:flex;justify-content:center;gap:1rem}.locations-pagination-indicator{border:none;background:none;color:#9ca3af;cursor:pointer;transition:all .2s ease;font-size:16px;font-weight:400;padding:.5rem;min-width:24px;height:auto}.locations-pagination-indicator.active{color:#374151;font-weight:600}.locations-pagination-indicator:hover{color:#374151}.location-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;height:220px;margin:0;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(0,0,0,.04)}.location-item.placeholder{visibility:hidden;pointer-events:none}.location-item:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(102,126,234,.2)}.location-item.active{background-color:#ffffff;border-color:#3b82f6;box-shadow:0 8px 40px rgba(59,130,246,.15);transform:translateY(-4px)}.location-item.active:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(59,130,246,.2)}.location-image{flex-shrink:0}.location-image img{width:70px;height:70px;border-radius:50%;object-fit:cover;background:#f8f9fa;border:3px solid #f8f9fa;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:transform .3s ease}.location-item:hover .location-image img{transform:scale(1.05)}.location-info{flex:1 1;height:100%;display:flex;flex-direction:column}.location-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0 0 .25rem;line-height:1.3;letter-spacing:-.02em}.location-address{font-size:.85rem;color:#6b7280;margin:0;line-height:1.5;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.location-meta{font-size:.8rem;color:#5D4037;margin:.35rem 0 0;line-height:1.4;font-weight:500}.video-section{margin-bottom:2rem}.video-section .section-title{margin-bottom:1rem}.video-container{width:100%;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.video-container iframe{display:block;width:100%;height:300px}.map-section{margin-bottom:0}.map-container{width:100%;border-radius:20px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.map-container iframe{display:block;width:100%;height:300px}.map-link-btn{display:inline-block;margin-top:.9rem;padding:.6rem 1rem;border-radius:10px;background:#FFFBF5;border:1px solid #d4b896;color:#8B4513;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease}.map-link-btn:hover{background:#8B4513;color:#ffffff}.contact-section{margin-left:0;width:100%;max-width:100%}.contact-section .section-title{margin-bottom:1rem}.contact-form{margin-top:0;padding:2rem;width:100%}.form-row{display:flex;width:100%}.form-input{flex:1 1;border:1px solid #e5e7eb;border-radius:12px;transition:border-color .2s ease,box-shadow .2s ease;min-width:0}.form-input::placeholder{color:#6b7280}.submit-btn{color:white;padding:.75rem 2rem;letter-spacing:-.02em;align-self:flex-start}.submit-btn:hover{background:#374151;box-shadow:0 4px 16px rgba(0,0,0,.2)}@media (max-width:1024px){.main-content{gap:2rem}.map-container iframe,.video-container iframe{height:250px}}@media (max-width:768px){.container{padding:0 1rem}.locations-page{padding:1rem 0}.main-content{flex-direction:column;gap:2rem}.section-title{font-size:2rem}.location-item{padding:1.25rem;margin:0}.location-image img{width:60px;height:60px}.locations-section{margin-bottom:2rem}.map-container iframe,.video-container iframe{height:250px}.contact-form{padding:1.5rem}.form-row{flex-direction:column;gap:.75rem}.form-input{width:100%}}@media (max-width:480px){.section-title{font-size:1.75rem}.location-item{padding:1rem}.location-image img{width:50px;height:50px}.map-container iframe,.video-container iframe{height:200px}.contact-form{padding:1.25rem}}.contact-page{background:#ffffff;min-height:100vh;padding:2rem 0}.contact-header{margin-bottom:1rem;padding:1rem 0}.contact-header,.section-title{text-align:center}.contact-subtitle{font-size:1.1rem;color:#6b7280;line-height:1.6;margin:0 auto;max-width:600px;text-align:center}.contact-info-section{margin-bottom:4rem}.info-section-title{font-size:2rem;font-weight:600;color:#1a1a1a;margin-bottom:2rem;text-align:center;letter-spacing:-.02em}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.contact-card{background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(0,0,0,.04);text-align:center}.contact-card:hover{transform:translateY(-8px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(102,126,234,.2)}.contact-icon{font-size:2.5rem;margin-bottom:1rem;opacity:.8}.contact-card h3{font-size:1.1rem;font-weight:600;color:#1a1a1a;margin:0 0 .75rem;letter-spacing:-.02em}.contact-card p{font-size:.9rem;line-height:1.5;color:#6b7280;margin:0}.contact-card-whatsapp{text-decoration:none;color:inherit;display:block;border-color:rgba(37,211,102,.25);background:linear-gradient(180deg,#f0fdf4,#ffffff)}.contact-card-whatsapp:hover{border-color:rgba(37,211,102,.5);box-shadow:0 8px 40px rgba(37,211,102,.15)}.contact-icon-whatsapp{color:#25D366;margin-bottom:.5rem}.contact-whatsapp-cta{display:inline-block;margin-top:1rem;font-size:.95rem;font-weight:600;color:#25D366;transition:color .2s ease}.contact-card-whatsapp:hover .contact-whatsapp-cta{color:#16a34a}.contact-form-section{margin-bottom:2rem;scroll-margin-top:100px}.form-section-title{font-size:2rem;margin-bottom:2rem;letter-spacing:-.02em}.contact-form-container{max-width:800px;margin:0 auto}.contact-form{background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:2.5rem;border:1px solid rgba(0,0,0,.04);transition:all .3s cubic-bezier(.4,0,.2,1)}.contact-form:hover{box-shadow:0 8px 40px rgba(0,0,0,.12)}.form-row{grid-gap:1rem;gap:1rem}.form-input,.form-textarea{width:100%;padding:1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#ffffff;font-family:inherit;color:#1a1a1a;box-sizing:border-box}.form-input:focus,.form-textarea:focus{outline:none;border-color:#d1d5db;box-shadow:0 0 0 3px rgba(209,213,219,.1)}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af;font-size:.95rem}.form-textarea{resize:vertical;min-height:120px}.submit-btn{background:#fbbf24;color:#1a1a1a;padding:.875rem 2.5rem;border-radius:8px;letter-spacing:-.01em}.submit-btn:hover{background:#f59e0b;transform:translateY(-1px);box-shadow:0 4px 12px rgba(251,191,36,.3)}@media (max-width:1024px){.container{padding:0 1.5rem}.contact-info-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.contact-form{padding:2rem}}@media (max-width:768px){.contact-page{padding:1.5rem 0}.container{padding:0 1rem}.section-title{font-size:2rem}.contact-subtitle{font-size:1rem}.form-section-title,.info-section-title{font-size:1.75rem}.contact-info-grid{grid-template-columns:1fr;gap:1rem}.contact-card{padding:1.25rem}.contact-icon{font-size:2rem}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:1.5rem}.submit-btn{padding:1rem 2rem}}@media (max-width:480px){.contact-page{padding:1rem 0}.section-title{font-size:1.75rem}.form-section-title,.info-section-title{font-size:1.5rem}.contact-card{padding:1rem;border-radius:15px}.contact-icon{font-size:1.8rem}.contact-card h3{font-size:1rem}.contact-card p{font-size:.85rem}.contact-form{padding:1.25rem;border-radius:15px}.form-input,.form-textarea{padding:.875rem;font-size:.95rem}.submit-btn{padding:.875rem 2rem;font-size:.95rem}}.courses-page{background:#ffffff;min-height:100vh;padding:2rem 0}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.courses-header{text-align:center;margin-bottom:3rem;padding:1rem 0}.courses-subtitle{font-size:1.1rem;color:#6b7280;line-height:1.6;margin:0 auto;max-width:600px}.courses-page .course-selection{margin-bottom:3rem}.courses-page .course-tabs{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.courses-page .course-tab{background:#FFFBF5;border:2px solid #d4b896;border-radius:12px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;color:#5D4037;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:-.01em;min-width:120px}.courses-page .course-tab:hover{border-color:#8B4513;color:#8B4513;transform:translateY(-2px);box-shadow:0 4px 12px rgba(139,69,19,.2)}.courses-page .course-tab.active{background:#8B4513;border-color:#8B4513;color:#ffffff;transform:translateY(-2px);box-shadow:0 4px 20px rgba(139,69,19,.35)}.course-details{max-width:1000px;margin:0 auto}.course-overview{text-align:center;margin-bottom:3rem;background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:2rem;border:1px solid rgba(0,0,0,.04)}.course-title{font-size:2rem;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.course-meta,.course-title{margin-bottom:1rem}.course-duration{background:#f3f4f6;color:#374151;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;display:inline-block}.courses-page .course-overview .course-description{font-size:1rem;color:#6b7280;line-height:1.6;margin:0 auto;max-width:500px;text-align:center;display:block}.curriculum-section{margin-bottom:3rem}.curriculum-title{font-size:1.75rem;font-weight:600;color:#1a1a1a;margin-bottom:2rem;text-align:center;letter-spacing:-.02em}.months-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));grid-gap:1.5rem;gap:1.5rem}.month-card{background-color:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:1.5rem;border:1px solid rgba(0,0,0,.04);transition:all .3s cubic-bezier(.4,0,.2,1)}.month-card:hover{transform:translateY(-4px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:rgba(139,69,19,.25)}.month-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #f3f4f6}.month-number{font-size:.9rem;font-weight:600;color:#8B4513;margin:0 0 .25rem;text-transform:uppercase;letter-spacing:.05em}.month-title{font-size:1.1rem;font-weight:600;color:#1a1a1a;margin:0;line-height:1.3;letter-spacing:-.01em}.topics-list{list-style:none;padding:0;margin:0}.topic-item{font-size:.9rem;color:#4b5563;line-height:1.5;margin-bottom:.5rem;display:flex;align-items:flex-start;gap:.5rem}.topic-item:before{content:"\25C6";color:#8B4513;font-size:.55rem;line-height:1.6;flex-shrink:0}.topic-item:last-child{margin-bottom:0}.enrollment-section{margin-top:4rem}.enrollment-card{background:linear-gradient(135deg,#8B4513,#6B3410);border-radius:20px;padding:2.5rem;text-align:center;color:white;box-shadow:0 8px 40px rgba(139,69,19,.35)}.enrollment-card h3{font-size:1.75rem;font-weight:600;margin:0 0 1rem;letter-spacing:-.02em}.enrollment-card p{font-size:1rem;line-height:1.6;opacity:.9;max-width:500px;margin:0 auto 2rem}.enroll-btn{background:#ffffff;color:#8B4513;border:none;padding:1rem 2.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:-.01em}.enroll-btn:hover{background:#FFFBF5;transform:translateY(-2px);box-shadow:0 4px 20px rgba(255,255,255,.3)}@media (max-width:1024px){.container{padding:0 1.5rem}.months-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.course-overview{padding:1.5rem}.enrollment-card{padding:2rem}}@media (max-width:768px){.courses-page{padding:1.5rem 0}.container{padding:0 1rem}.section-title{font-size:2rem}.courses-subtitle{font-size:1rem}.courses-page .course-tabs{gap:.375rem}.courses-page .course-tab{padding:.625rem 1rem;font-size:.9rem;min-width:100px}.course-title{font-size:1.75rem}.curriculum-title{font-size:1.5rem}.months-grid{grid-template-columns:1fr;gap:1rem}.month-card{padding:1.25rem}.enrollment-card h3{font-size:1.5rem}.enrollment-card{padding:1.5rem}}@media (max-width:480px){.courses-page{padding:1rem 0}.section-title{font-size:1.75rem}.courses-subtitle{font-size:.95rem}.courses-page .course-tabs{flex-direction:column;align-items:center;gap:.5rem}.courses-page .course-tab{width:100%;max-width:200px}.course-overview{padding:1rem}.course-title{font-size:1.5rem}.month-card{padding:1rem;border-radius:15px}.month-title{font-size:1rem}.topic-item{font-size:.85rem}.enrollment-card{padding:1.25rem;border-radius:15px}.enrollment-card h3{font-size:1.25rem}.enroll-btn{padding:.875rem 2rem;font-size:.95rem}}.signup-page{background:#ffffff;min-height:100vh;padding:2rem 0}.signup-header{text-align:center;margin-bottom:3rem}.signup-subtitle{font-size:1.1rem;color:#6b7280;max-width:600px;margin:0 auto;line-height:1.6}.signup-form-section{display:flex;justify-content:center;margin-bottom:2rem}.signup-form-container{background:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:2.5rem;max-width:800px;width:100%;border:1px solid rgba(0,0,0,.04)}.signup-form{width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:1.5rem}.form-input,.form-select{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .2s ease;background:#ffffff;color:#1a1a1a;width:100%;box-sizing:border-box}.form-input:focus,.form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form-helper{font-size:.8rem;color:#6b7280;margin-top:.25rem}.checkbox-group{display:flex;flex-direction:column;gap:1rem}.checkbox-label{align-items:flex-start;gap:.75rem;font-size:.95rem}.checkbox-input{width:18px;height:18px;margin:2px 0 0}.submit-btn{margin-top:2rem}@media (max-width:768px){.signup-page{padding:1rem 0}.container{padding:0 1rem}.section-title{font-size:2rem}.signup-subtitle{font-size:1rem}.signup-form-container{padding:1.5rem;margin:0 1rem}.form-row{grid-template-columns:1fr;gap:1rem}.form-section-title{font-size:1.1rem}}@media (max-width:480px){.signup-form-container{padding:1rem;border-radius:15px}.form-input,.form-select{padding:.625rem .75rem;font-size:.95rem}.submit-btn{padding:.75rem 1.5rem;font-size:.95rem}.checkbox-label{font-size:.9rem}.checkbox-input{width:16px;height:16px}}.login-page{background:#ffffff;min-height:100vh;padding:2rem 0}.login-header{text-align:center;margin-bottom:3rem}.login-subtitle{font-size:1.1rem;color:#6b7280;max-width:600px;margin:0 auto;line-height:1.6}.login-form-section{display:flex;justify-content:center;margin-bottom:2rem}.login-form-container{background:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:2.5rem;max-width:500px;width:100%;border:1px solid rgba(0,0,0,.04)}.login-form{width:100%}.form-section{margin-bottom:2rem}.form-section:last-child{margin-bottom:0}.form-section-title{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid #f3f4f6;text-align:center}.form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.form-label{font-size:.9rem;font-weight:600;color:#374151;margin-bottom:.5rem;display:block}.form-input{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .2s ease;background:#ffffff;color:#1a1a1a;width:100%;box-sizing:border-box}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form-input::placeholder{color:#9ca3af}.form-options{justify-content:space-between;margin-bottom:2rem}.checkbox-label,.form-options{display:flex;align-items:center}.checkbox-label{gap:.5rem;cursor:pointer;font-size:.9rem;line-height:1.5}.checkbox-input{margin:0;width:16px;height:16px;accent-color:#3b82f6;cursor:pointer;flex-shrink:0}.checkbox-text{color:#374151}.forgot-password-btn{background:none;border:none;color:#3b82f6;font-size:.9rem;font-weight:500;cursor:pointer;text-decoration:none;transition:color .2s ease;padding:0}.forgot-password-btn:hover{color:#2563eb;text-decoration:underline}.submit-btn{width:100%;background:#1a1a1a;color:#ffffff;border:none;border-radius:12px;padding:.875rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:.025em}.submit-btn:hover{background:#333333;transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15)}.submit-btn:active{transform:translateY(0)}.login-footer{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.signup-link{font-size:.95rem;color:#6b7280;margin:0}.link{color:#3b82f6;text-decoration:none;font-weight:500}.link:hover{color:#2563eb;text-decoration:underline}@media (max-width:768px){.login-page{padding:1rem 0}.container{padding:0 1rem}.section-title{font-size:2rem}.login-subtitle{font-size:1rem}.login-form-container{padding:1.5rem;margin:0 1rem}.form-section-title{font-size:1.1rem}.form-options{flex-direction:column;gap:1rem;align-items:flex-start}}@media (max-width:480px){.login-form-container{padding:1rem;border-radius:15px}.form-input{padding:.625rem .75rem;font-size:.95rem}.submit-btn{padding:.75rem 1.5rem;font-size:.95rem}.checkbox-label{font-size:.85rem}.checkbox-input{width:14px;height:14px}.forgot-password-btn{font-size:.85rem}.signup-link{font-size:.9rem}}.tournaments-page{background:#ffffff;min-height:100vh;padding:2rem 0}.tournaments-header{text-align:center;margin-bottom:3rem}.section-title{font-size:2.5rem;font-weight:700;color:#1a1a1a;margin-bottom:1rem;letter-spacing:-.02em}.tournaments-subtitle{font-size:1.1rem;color:#6b7280;max-width:700px;margin:0 auto;line-height:1.6}.info-banner{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1.5rem;gap:1.5rem;padding:2rem;background:#f8f9fa}.filter-section,.info-banner{margin-bottom:2rem;border-radius:15px;border:1px solid rgba(0,0,0,.04)}.filter-section{background:#ffffff;box-shadow:0 4px 20px rgba(0,0,0,.08);overflow:hidden}.filter-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e9ecef}.filter-title{font-size:1.3rem;font-weight:700;color:#1a1a1a;margin:0}.filter-toggle-btn{padding:.75rem 1.5rem;background:#3b82f6;color:#ffffff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.filter-toggle-btn:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 4px 15px rgba(59,130,246,.3)}.filter-content{padding:2rem}.filter-row{display:grid;grid-template-columns:1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:1.5rem}.filter-row:nth-child(2){grid-template-columns:1fr 1fr auto;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-label{font-size:.9rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.filter-input{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s ease;background:#ffffff}.filter-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.filter-input::placeholder{color:#9ca3af}.date-input{max-width:200px}.clear-filters-btn{padding:.75rem 1.5rem;background:#ffffff;color:#ef4444;border:2px solid #ef4444;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;align-self:end;margin-top:1.5rem}.clear-filters-btn:hover{background:#ef4444;color:#ffffff;transform:translateY(-2px);box-shadow:0 4px 15px rgba(239,68,68,.3)}.filter-results{background:#f8f9fa;padding:1rem;border-radius:8px;text-align:center;margin-top:1rem}.results-count{font-size:1rem;font-weight:600;color:#1a1a1a}.filter-active{color:#3b82f6;font-weight:500}.no-results{text-align:center;padding:4rem 2rem;background:#f8f9fa;border-radius:15px;border:2px dashed #d1d5db}.no-results-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-results-title{font-size:1.5rem;font-weight:700;color:#374151;margin:0 0 1rem}.no-results-message{font-size:1rem;color:#6b7280;max-width:500px;margin:0 auto 2rem;line-height:1.6}.info-item{display:flex;align-items:center;gap:1rem;text-align:left}.info-icon{font-size:2rem;flex-shrink:0}.info-content h4{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0 0 .25rem}.info-content p{font-size:.9rem;color:#6b7280;margin:0}.carousel-container{margin-bottom:3rem}.carousel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem 0;border-bottom:2px solid #f0f0f0}.carousel-title{font-size:1.2rem;font-weight:600;color:#1a1a1a;margin:0}.carousel-controls{display:flex;align-items:center;gap:1rem}.carousel-btn{padding:.75rem 1.5rem;border:2px solid #3b82f6;background:#ffffff;color:#3b82f6;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.carousel-btn:hover:not(:disabled){background:#3b82f6;color:#ffffff;transform:translateY(-2px);box-shadow:0 4px 15px rgba(59,130,246,.3)}.carousel-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.slide-counter{font-size:1rem;font-weight:600;color:#6b7280;padding:.5rem 1rem;background:#f8f9fa;border-radius:6px}.carousel-dots{gap:.75rem;margin-top:2rem;padding:1rem 0}.carousel-dot,.carousel-dots{display:flex;justify-content:center}.carousel-dot{width:3rem;height:3rem;border-radius:50%;border:2px solid #d1d5db;background:#ffffff;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s ease;align-items:center}.carousel-dot:hover{color:#3b82f6}.carousel-dot.active,.carousel-dot:hover{border-color:#3b82f6;transform:scale(1.1)}.carousel-dot.active{background:#3b82f6;color:#ffffff}.tournaments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));grid-gap:2.5rem;gap:2.5rem;margin-bottom:2rem}.tournament-card{background:#ffffff;border-radius:25px;box-shadow:0 8px 30px rgba(0,0,0,.1);overflow:hidden;border:2px solid #f0f0f0;transition:all .3s ease;position:relative}.tournament-card:hover{transform:translateY(-8px);box-shadow:0 15px 50px rgba(0,0,0,.15);border-color:#e0e0e0}.tournament-poster-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:1.5rem 2rem;text-align:center;border-bottom:3px solid #dee2e6}.organizer-info{display:flex;flex-direction:column;margin-bottom:1rem}.organized-by{font-size:.8rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.chess-academy{font-size:1rem;font-weight:700;color:#1a1a1a;margin-top:.25rem}.tournament-title-section{margin-top:.5rem}.tournament-title{font-size:1.4rem;font-weight:800;color:#1a1a1a;margin:0;line-height:1.2;text-transform:uppercase;letter-spacing:-.5px}.entry-fee-badge{position:absolute;top:1rem;right:1rem;background:#1a1a1a;color:#ffffff;border-radius:50px;padding:.5rem 1rem;display:flex;flex-direction:column;align-items:center;box-shadow:0 4px 15px rgba(0,0,0,.2);z-index:10}.fee-label{font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.fee-amount{font-size:1rem;font-weight:700;margin-top:.1rem}.date-section{padding:1.5rem 2rem;text-align:center;background:#f8f9fa;border-bottom:1px solid #e9ecef}.tournament-date{font-size:1.3rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.tournament-day{font-size:1rem;color:#6b7280;font-weight:500;margin-bottom:.5rem}.special-occasion{font-size:.9rem;color:#3b82f6;font-weight:600;background:#dbeafe;display:inline-block;padding:.25rem .75rem;border-radius:15px}.venue-section{padding:1.5rem 2rem;text-align:center;border-bottom:1px solid #f0f0f0}.venue-name{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin-bottom:.5rem}.venue-address{font-size:.9rem;color:#6b7280;line-height:1.4}.categories-section{padding:1.5rem 2rem;border-bottom:1px solid #f0f0f0}.categories-section .section-title{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0 0 1rem;text-align:center}.categories-list{display:flex;flex-direction:column;gap:.5rem}.category-item{background:#f1f5f9;color:#334155;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:500;text-align:center;border-left:3px solid #3b82f6}.details-grid{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #f0f0f0}.detail-box{padding:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.detail-box:first-child{border-right:1px solid #f0f0f0}.detail-title{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.detail-content{font-size:.9rem;font-weight:600;color:#1a1a1a;line-height:1.3}.organizer-section{padding:1.5rem 2rem;border-bottom:1px solid #f0f0f0}.organizer-details{text-align:center}.organizer-name{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.organizer-name .title{font-size:.8rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.organizer-name .name{font-size:1rem;font-weight:700;color:#1a1a1a}.contact-info{display:flex;justify-content:center;gap:2rem}.contact-item{align-items:center}.contact-type{font-size:1rem}.contact-value{font-size:.85rem;color:#374151}.card-footer{padding:1.5rem 2rem;background:#f8f9fa}.status-section{text-align:center;margin-bottom:1rem}.status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;display:inline-block}.status-open{background:#dcfce7;color:#166534}.status-closing{background:#fef3c7;color:#92400e}.status-closed{background:#fee2e2;color:#991b1b}.action-buttons{display:flex;gap:1rem}.details-btn,.register-btn{flex:1 1;padding:.75rem 1.5rem;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-align:center;border:none}.register-btn{background:#1a1a1a;color:#ffffff}.register-btn:hover{background:#333333;transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.2)}.register-btn.registered{background:#dc2626;color:#ffffff}.register-btn.registered:hover{background:#b91c1c}.register-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.details-btn{background:#f3f4f6;color:#374151;border:2px solid #e5e7eb}.details-btn:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.1)}.tournament-contact{background:#ffffff;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08);padding:2rem;border:1px solid rgba(0,0,0,.04);text-align:center}.tournament-contact h3{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 1rem}.tournament-contact p{font-size:1rem;color:#6b7280;margin:0 0 2rem}.contact-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.contact-item{display:flex;flex-direction:column;gap:.5rem;text-align:center}.contact-label{font-size:.9rem;font-weight:600;color:#6b7280}.contact-value{font-size:1rem;color:#1a1a1a;font-weight:500}@media (max-width:768px){.tournaments-page{padding:1rem 0}.container{padding:0 1rem}.section-title{font-size:2rem}.tournaments-subtitle{font-size:1rem}.tournaments-grid{grid-template-columns:1fr;gap:1.5rem}.tournament-card{border-radius:20px}.tournament-poster-header{padding:1.25rem 1.5rem}.tournament-title{font-size:1.2rem}.entry-fee-badge{top:.75rem;right:.75rem;padding:.4rem .8rem}.fee-amount{font-size:.9rem}.categories-section,.date-section,.organizer-section,.venue-section{padding:1.25rem 1.5rem}.details-grid .detail-box{padding:1.25rem 1rem}.contact-info{flex-direction:column;gap:1rem}.action-buttons{flex-direction:column;gap:.75rem}.card-footer{padding:1.25rem 1.5rem}.info-banner{grid-template-columns:1fr;gap:1rem;padding:1.5rem}.info-item{justify-content:center;text-align:center}.contact-details{grid-template-columns:1fr;gap:1rem}.carousel-header{flex-direction:column;gap:1rem;text-align:center}.carousel-controls{gap:.5rem}.carousel-btn{padding:.5rem 1rem;font-size:.9rem}.carousel-dots{gap:.5rem}.carousel-dot{width:2.5rem;height:2.5rem}.filter-header{padding:1rem 1.5rem}.filter-content{padding:1.5rem}.filter-row:nth-child(2){grid-template-columns:1fr;gap:1rem}.clear-filters-btn{align-self:center}.no-results{padding:3rem 1.5rem}.no-results-icon{font-size:3rem}}@media (max-width:480px){.tournaments-page{padding:.5rem 0}.tournament-card{border-radius:15px}.tournament-poster-header{padding:1rem}.tournament-title{font-size:1.1rem}.entry-fee-badge{top:.5rem;right:.5rem;padding:.3rem .6rem}.fee-label{font-size:.6rem}.fee-amount{font-size:.8rem}.categories-section,.date-section,.organizer-section,.venue-section{padding:1rem}.details-grid{grid-template-columns:1fr}.detail-box{padding:1rem;border-right:none!important}.detail-box:first-child{border-bottom:1px solid #f0f0f0}.contact-info{flex-direction:column;gap:.75rem}.details-btn,.register-btn{padding:.625rem 1rem;font-size:.85rem}.card-footer{padding:1rem}.carousel-title{font-size:1rem}.carousel-btn{padding:.4rem .8rem;font-size:.8rem}.slide-counter{font-size:.9rem;padding:.4rem .8rem}.carousel-dot{width:2rem;height:2rem;font-size:.8rem}.filter-header{flex-direction:column;gap:1rem;padding:1rem}.filter-title{font-size:1.1rem}.filter-toggle-btn{font-size:.9rem;padding:.6rem 1.2rem}.filter-content{padding:1rem}.filter-input{padding:.6rem .8rem;font-size:.9rem}.date-input{max-width:100%}.clear-filters-btn{padding:.6rem 1.2rem;font-size:.9rem}.no-results{padding:2rem 1rem}.no-results-icon{font-size:2.5rem}.no-results-title{font-size:1.2rem}.no-results-message{font-size:.9rem}}