*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#18252b;color:#f4f1e9;font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block;border-radius:22px}h1,h2,h3,h4{font-family:Manrope,sans-serif;line-height:1.12;margin:0 0 18px}h1{font-size:clamp(2.5rem,8vw,5.8rem);letter-spacing:-.065em}h2{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.045em}h3{font-size:1.3rem}.eyebrow{color:#d8b66b;font-size:.72rem;font-weight:800;letter-spacing:.18em}.lead{font-size:1.2rem;color:#d8b66b}.page-hero,.hero{padding:100px 6% 70px;max-width:1450px;margin:auto}.page-hero{background:radial-gradient(circle at 80% 10%,#344b4e,transparent 45%)}em{font-style:normal;color:#d8b66b}.hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;min-height:80vh}.hero-media img{width:100%}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;border:1px solid #d8b66b;border-radius:100px;padding:12px 20px;font-weight:700;font-size:.9rem;transition:.25s}.btn.primary{background:#d8b66b;color:#18252b}.btn.ghost{color:#f4f1e9}.btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0003}.narrow,.content-section,.feature-grid,.schedule-grid,.gallery-grid,.cta-band{max-width:1200px;margin:0 auto;padding:80px 6%}.narrow{max-width:850px}.feature-grid,.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-grid article,.schedule-grid article,.form-card,.testimonial{background:#22343a;border:1px solid #ffffff12;border-radius:22px;padding:28px}.feature-grid span,.number-list b{color:#d8b66b}.feature-grid a{color:#d8b66b;font-weight:700}.quote-section{text-align:center;padding:90px 6%;background:#d8b66b;color:#18252b}.quote-section blockquote{font:700 clamp(1.8rem,4vw,3.6rem) Manrope;margin:0 auto 15px;max-width:900px;letter-spacing:-.04em}.quote-section .quote-credit,.quote-section .quote-signature{color:#000;font-weight:700;letter-spacing:.08em}.quote-section .quote-credit{display:block;max-width:900px;margin:18px auto 0;text-align:right;font-size:1rem;line-height:1.5}.quote-section .quote-signature{display:block;margin-top:10px;text-align:right;font-size:.95rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.content-section{padding-top:70px;padding-bottom:70px}.check-list{padding-left:20px}.check-list li{margin:10px 0}.pill-row{display:flex;flex-wrap:wrap;gap:8px}.pill-row span{border:1px solid #d8b66b55;border-radius:100px;padding:7px 12px;color:#d8b66b;font-size:.85rem}.number-list p{border-bottom:1px solid #ffffff18;padding:12px 0}.number-list b{margin-right:12px}.schedule-grid{grid-template-columns:repeat(2,1fr)}.schedule-grid strong{font-size:1.5rem;color:#d8b66b}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery-grid img{width:100%}.testimonial{margin:14px 0}.cta-band{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#22343a;border-radius:25px;margin-bottom:80px}.form-card input,.form-card select,.form-card textarea{width:100%;background:#18252b;border:1px solid #ffffff20;color:#fff;border-radius:12px;padding:13px;margin:7px 0;font:inherit}.form-card textarea{min-height:110px}.form-message{color:#d8b66b}.site-header{position:sticky;top:0;z-index:10;background:#18252bf0;backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;padding:18px 5%;border-bottom:1px solid #ffffff10}.brand{display:flex;flex-direction:column;line-height:1}.brand small{font-size:.8rem;letter-spacing:.08em}.brand strong{font-size:1.2rem;letter-spacing:.08em;color:#d8b66b}.site-header nav{display:flex;align-items:center;gap:20px;font-size:.88rem}.nav-cta{background:#d8b66b;color:#18252b;padding:9px 15px;border-radius:100px;font-weight:700}.menu-toggle{display:none;background:none;color:#fff;border:0;font-size:1.5rem}footer{display:grid;grid-template-columns:2fr 1fr;gap:40px;padding:70px 6%;background:#101a1f}footer h4{color:#d8b66b}footer div a{display:block;margin:7px 0}.copyright{grid-column:1/-1;border-top:1px solid #ffffff15;padding-top:20px;font-size:.8rem;color:#aab7b7}
@media(max-width:850px){.site-header{padding:16px 5%}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#18252b;padding:25px;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.hero,.split{grid-template-columns:1fr}.hero{padding-top:55px;min-height:auto;gap:35px}.page-hero{padding-top:65px}.feature-grid,.schedule-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.cta-band{display:block}.cta-band .btn{margin-top:20px}footer{grid-template-columns:1fr}.copyright{grid-column:auto}}
@media(max-width:420px){.gallery-grid{grid-template-columns:1fr}.btn{width:100%;text-align:center}.narrow,.content-section,.feature-grid,.schedule-grid,.gallery-grid,.cta-band{padding-left:5%;padding-right:5%}}
.header-brand{display:flex;flex-direction:row;align-items:center;gap:10px}.header-logo{width:82px;height:48px;object-fit:contain;border-radius:0}.header-brand-name{display:flex;flex-direction:column;line-height:1;color:#d8b66b;font-family:Manrope,sans-serif;white-space:nowrap}.header-brand-name small{font-size:.8rem;letter-spacing:.08em}.header-brand-name strong{font-size:1.2rem;letter-spacing:.08em;color:#d8b66b}
.social-links{display:flex;flex-direction:column;gap:10px}.social-links a{display:flex;align-items:center;gap:10px}.social-links i{width:18px;color:#d8b66b;font-size:1.05rem}.about-heading em{display:inline-block;font-size:.58em;letter-spacing:0;color:#d8b66b}
.about-page-hero{text-align:left}.about-page-hero .about-heading{margin-bottom:18px}.about-subtitle{border-top:0;padding-top:0;color:#d8b66b;font:italic 600 clamp(1.2rem,3vw,1.8rem) Manrope;margin:0 0 25px;max-width:900px}
.about-heading{font-size:clamp(2.25rem,6.5vw,5rem)}.about-subtitle{font-size:clamp(1.5rem,3.5vw,2.1rem)}
@media(max-width:500px){.about-heading{font-size:1.2rem;white-space:nowrap}.about-subtitle{font-size:1.6rem}}
.number-list .list-marker{display:inline-block;width:18px;margin-right:8px;color:#d8b66b;font-size:1.3rem;line-height:0}.pill-row span{display:inline-flex;align-items:center;gap:7px}.prop-icon{font-style:normal;color:#d8b66b;font-size:1.1rem;line-height:1}
.offline-schedule p{margin:0;padding:18px 0;border:0}.offline-days{border-bottom:1px solid #ffffff1f!important}.offline-location-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 0}.offline-location-row+.offline-location-row{border-top:1px solid #ffffff1f}.offline-location-row .btn{border-radius:8px;white-space:nowrap}
@media(max-width:500px){.offline-location-row{grid-template-columns:1fr;gap:12px}.offline-location-row .btn{width:100%;text-align:center;white-space:normal}}
.info-tabs{max-width:1200px;margin:0 auto;padding:20px 6% 70px}.info-tab-buttons{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #ffffff24}.info-tab-button{border:1px solid #ffffff2b;border-bottom:0;border-radius:6px 6px 0 0;padding:11px 18px;background:#22343a;color:#f4f1e9;font:600 .95rem 'DM Sans',sans-serif;cursor:pointer}.info-tab-button:hover,.info-tab-button.active{background:#d8b66b;color:#18252b;border-color:#d8b66b}.info-tab-button:focus-visible{outline:2px solid #f4f1e9;outline-offset:2px}.info-tab-panel{padding:26px 4px 8px;color:#d5ddda;line-height:1.75}.info-tab-panel h3{color:#d8b66b;font-size:1.35rem;margin:0 0 16px}.info-tab-panel p{margin:0 0 12px}.info-tab-panel[hidden]{display:none}
@media(max-width:600px){.info-tabs{padding:10px 5% 50px}.info-tab-buttons{display:grid;grid-template-columns:1fr}.info-tab-button{border:1px solid #ffffff2b;border-radius:6px;text-align:left}.info-tab-button.active{border-color:#d8b66b}.info-tab-panel{padding:20px 2px 8px}}
.form-card select{width:100%;padding:12px 14px;margin:0 0 16px;border:1px solid #ffffff30;border-radius:8px;background:#22343a;color:#f4f1e9;font:inherit}.form-card select:focus-visible{outline:2px solid #d8b66b;outline-offset:2px}.form-label{display:block;margin:4px 0 6px;color:#d5ddda;font-size:.9rem}
.whatsapp-note{margin:10px 0 0;color:#d5ddda;font-size:.9rem}
.whatsapp-button{display:inline-flex;align-items:center;justify-content:center}
.demo-form input{width:100%;padding:12px 14px;margin:0 0 16px;border:1px solid #ffffff30;border-radius:8px;background:#22343a;color:#f4f1e9;font:inherit}.demo-form input:focus-visible{outline:2px solid #d8b66b;outline-offset:2px}.demo-form button{width:100%;font:inherit;cursor:pointer}
.student-video{text-align:center;padding:35px 6% 80px;max-width:1000px;margin:0 auto}.student-video h2{margin:10px 0 8px}.student-video-subtitle{color:#aeb8b5;font-size:1.15rem;margin:0 0 28px}.student-video-frame{width:min(100%,360px);aspect-ratio:9/16;margin:0 auto;overflow:hidden;border-radius:22px;background:#0d171a;box-shadow:0 18px 45px #0004}.student-video-frame iframe{width:100%;height:100%;border:0}
.offline-student-feedback{padding:8px 0 20px}.offline-reviews{padding-top:48px}.offline-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.offline-review-grid .testimonial{margin:0}.offline-review-grid .testimonial p{margin:0 0 16px}.offline-review-grid .testimonial small{color:#d8b66b;font-weight:700}.offline-gallery-link{margin:24px 0 0}.offline-gallery-link a{color:#d8b66b;font-weight:700;text-decoration:underline;text-underline-offset:4px}.offline-community{padding-top:45px;padding-bottom:65px}.offline-community img{width:100%;height:100%;max-height:520px;object-fit:cover}.offline-community h2{font-size:clamp(2rem,4vw,3rem)}
@media(max-width:700px){.offline-review-grid{grid-template-columns:1fr}}
.offline-review-grid .review-preview{overflow:hidden;transition:max-height .28s ease}
.review-read-toggle{display:block;margin:-6px 0 16px;padding:0;border:0;background:none;color:#d8b66b;font:600 .9rem 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.review-read-toggle:focus-visible{outline:2px solid #d8b66b;outline-offset:3px;border-radius:2px}
@media(prefers-reduced-motion:reduce){.offline-review-grid .review-preview{transition:none}}
.student-progress{margin-top:0;padding-top:0;color:#d5ddda}
.student-progress h2{font-size:clamp(1.8rem,4vw,2.8rem);margin:12px 0 20px}
.student-progress-list{padding-left:24px;margin:18px 0}
.student-progress-list li{padding:5px 0}
.student-progress-list li::marker{color:#d8b66b}
.student-progress-disclaimer{font-size:.9rem;color:#aeb8b5}
.student-progress-cta{margin-bottom:4px}
.student-progress-link{display:inline-block;margin-top:4px;color:#d8b66b;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.demo-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100% - 32px);overflow-y:auto;padding:0;border:1px solid #d8b66b55;border-radius:22px;background:#22343a;color:#f4f1e9;box-shadow:0 24px 70px #0008}
.demo-dialog::backdrop{background:#0b1216c9;backdrop-filter:blur(3px)}
.demo-dialog .demo-form{padding:28px}
.demo-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.demo-dialog-heading h2{margin:7px 0 0;font-size:clamp(1.7rem,6vw,2.2rem)}
.demo-dialog-close{flex:0 0 40px;width:40px;height:40px;border:1px solid #ffffff30;border-radius:50%;background:transparent;color:#f4f1e9;font-size:1.7rem;line-height:1;cursor:pointer}
.demo-dialog-close:hover,.demo-dialog-close:focus-visible{border-color:#d8b66b;color:#d8b66b}
.demo-form input{width:100%;padding:12px 14px;margin:0 0 12px;border:1px solid #ffffff30;border-radius:8px;background:#18252b;color:#f4f1e9;font:inherit}
.demo-form input:focus-visible{outline:2px solid #d8b66b;outline-offset:2px}
.demo-form button[type=submit]{width:100%;font:inherit;cursor:pointer}
.demo-field-hint,.demo-form-note{margin:0 0 14px;color:#aeb8b5;font-size:.85rem}
.demo-form-note{margin:14px 0 0}
.demo-form-status{margin:8px 0 0;color:#d8b66b;font-size:.9rem}
.demo-booking-trigger{font:inherit;cursor:pointer}
@media(max-width:420px){.demo-dialog .demo-form{padding:22px}.demo-dialog .btn{width:100%;text-align:center}}
