:root{--purple: #7a1fc8;--purple-600: #6a17b3;--purple-700: #5a149a;--purple-tint: #f4ecfb;--purple-tint-2: #ece0f9;--navy: #18266b;--navy-800: #141f57;--navy-900: #0f1742;--ink: #1b1730;--muted: #5c5670;--line: #e7e2f0;--bg: #ffffff;--bg-soft: #faf8fd;--gold: #e9c46a;--radius: 16px;--radius-sm: 10px;--radius-lg: 26px;--shadow-sm: 0 2px 10px rgba(24, 38, 107, .06);--shadow: 0 14px 40px rgba(24, 38, 107, .12);--shadow-lg: 0 30px 70px rgba(24, 38, 107, .22);--max: 1200px;--font: "Outfit", "Segoe UI", system-ui, -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:var(--purple);text-decoration:none}h1,h2,h3,h4{font-weight:700;line-height:1.12;letter-spacing:-.02em;margin:0}p{margin:0}.wrap{width:min(100% - 2.5rem,var(--max));margin-inline:auto}.section{padding:clamp(3.5rem,7vw,6rem) 0}.section--soft{background:var(--bg-soft)}.section--tint{background:radial-gradient(900px 400px at 100% 0%,var(--purple-tint) 0%,transparent 60%),var(--bg-soft)}.section__head{max-width:640px;margin:0 auto clamp(2rem,4vw,3rem);text-align:center}.eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--purple);margin-bottom:.85rem}.section__title{font-size:clamp(1.9rem,4vw,2.8rem);color:var(--navy)}.section__sub{color:var(--muted);margin-top:.9rem;font-size:1.06rem}.btn{display:inline-flex;align-items:center;gap:.55rem;font-family:inherit;font-weight:600;font-size:1rem;padding:.85rem 1.5rem;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s;white-space:nowrap}.btn--primary{background:var(--purple);color:#fff;box-shadow:0 12px 26px #7a1fc852}.btn--primary:hover{background:var(--purple-600);transform:translateY(-2px);box-shadow:0 16px 32px #7a1fc866}.btn--ghost{background:transparent;color:#fff;border-color:#ffffff8c}.btn--ghost:hover{background:#ffffff1f;border-color:#fff;transform:translateY(-2px)}.btn--outline{background:#fff;color:var(--navy);border-color:var(--line)}.btn--outline:hover{border-color:var(--purple);color:var(--purple);transform:translateY(-2px)}.btn--white{background:#fff;color:var(--purple);box-shadow:0 12px 26px #0000002e}.btn--white:hover{background:var(--purple-tint);transform:translateY(-2px);box-shadow:0 16px 32px #0000003d}.btn--sm{padding:.55rem 1.05rem;font-size:.92rem}.site-header{position:sticky;top:0;z-index:50;background:#ffffffdb;backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:1.5rem;padding:.7rem 0;position:relative}.nav__brand{display:flex;align-items:center;gap:.7rem;margin-right:auto}.nav__brand img{height:46px;width:auto}.nav__brand-text{display:flex;flex-direction:column;line-height:1.1}.nav__brand-text strong{color:var(--navy);font-size:1rem;letter-spacing:-.01em}.nav__brand-text span{color:var(--purple);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.nav__links{display:flex;align-items:center;gap:1.35rem;list-style:none;margin:0;padding:0}.nav__links a{color:var(--navy);font-weight:500;font-size:.96rem;position:relative}.nav__links a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--purple);border-radius:2px;transition:width .22s ease}.nav__links a:hover:after{width:100%}.nav__actions{display:flex;align-items:center;gap:.6rem}.locale-switcher{display:inline-flex;gap:2px;background:var(--purple-tint);border-radius:999px;padding:3px}.locale-switcher button{border:0;background:transparent;cursor:pointer;font-family:inherit;font-weight:600;font-size:.78rem;text-transform:uppercase;color:var(--purple-700);padding:.25rem .6rem;border-radius:999px;transition:background .15s,color .15s}.locale-switcher button.is-active,.locale-switcher button[aria-current=true],.locale-switcher button:hover{background:var(--purple);color:#fff}.nav__toggle{display:none;border:0;background:var(--purple-tint);width:44px;height:44px;border-radius:12px;cursor:pointer}.nav__toggle span,.nav__toggle span:before,.nav__toggle span:after{content:"";display:block;width:20px;height:2px;background:var(--navy);margin:0 auto;position:relative;border-radius:2px}.nav__toggle span:before{position:absolute;top:-6px}.nav__toggle span:after{position:absolute;top:6px}.hero{position:relative;color:#fff;overflow:hidden}.hero__bg{position:absolute;inset:0;z-index:0}.hero__bg img{width:100%;height:100%;object-fit:cover}.hero__bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0f17428c,#5a149ac7 70%,#5a149aeb),linear-gradient(90deg,#18266b99,#7a1fc859)}.hero__inner{position:relative;z-index:1;padding:clamp(4rem,12vw,8.5rem) 0 clamp(3.5rem,8vw,6rem)}.hero__content{max-width:720px}.hero__crest{height:92px;width:auto;margin-bottom:1.5rem;filter:drop-shadow(0 8px 24px rgba(0,0,0,.35))}.hero h1{font-size:clamp(2.4rem,6vw,4.2rem);letter-spacing:-.03em}.hero h1 em{font-style:normal;color:#e6cffb}.hero__sub{margin-top:1.25rem;font-size:clamp(1.05rem,2vw,1.3rem);color:#ffffffeb;max-width:38rem}.hero__cta{margin-top:2.2rem;display:flex;flex-wrap:wrap;gap:.9rem}.hero__stats{display:flex;flex-wrap:wrap;gap:2.5rem;margin-top:3rem}.hero__stat strong{display:block;font-size:2rem;color:#fff}.hero__stat span{color:#fffc;font-size:.9rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.card__media{aspect-ratio:16/11;overflow:hidden}.card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.card:hover .card__media img{transform:scale(1.06)}.card__body{padding:1.4rem 1.4rem 1.6rem}.card__body h3{font-size:1.25rem;color:var(--navy);margin-bottom:.5rem}.card__body p{color:var(--muted);font-size:.96rem}.pricing-teaser{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;margin-bottom:2.2rem}.pricing-pill{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.6rem;box-shadow:var(--shadow-sm);text-align:center}.pricing-pill__label{color:var(--muted);font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.4rem}.pricing-pill__price{font-size:1.9rem;font-weight:700;color:var(--purple);letter-spacing:-.02em}.pricing-pill__sub{color:var(--muted);font-size:.82rem;margin-top:.2rem}.pricing-page{max-width:860px;margin-inline:auto}.pricing-category{margin-bottom:3rem}.pricing-category__title{color:var(--navy);font-size:1.15rem;font-weight:700;padding:.6rem 1rem;background:var(--navy);color:#fff;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.pricing-tbl{width:100%;border-collapse:collapse;background:#fff;box-shadow:var(--shadow-sm);border-radius:0 0 var(--radius-sm) var(--radius-sm);overflow:hidden}.pricing-tbl thead th{background:var(--purple-tint-2);color:var(--navy);padding:.6rem 1rem;text-align:left;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.pricing-tbl thead th:last-child{text-align:right}.pricing-tbl tbody tr{border-bottom:1px solid var(--line)}.pricing-tbl tbody tr:last-child{border-bottom:0}.pricing-tbl tbody tr.is-highlight{background:var(--purple-tint)}.pricing-tbl td{padding:.75rem 1rem;font-size:.95rem;color:var(--ink)}.pricing-tbl td:nth-child(2){font-weight:700;color:var(--purple);font-size:1.05rem;white-space:nowrap;text-align:right}.pricing-tbl td:last-child{color:var(--muted);font-size:.88rem;text-align:right;white-space:nowrap}.pricing-tbl .plan-features{display:block;font-size:.8rem;color:var(--muted);margin-top:.25rem;font-weight:400}.pricing-note{color:var(--muted);font-size:.9rem;margin-top:1.5rem;text-align:center;line-height:1.7}.pricing-back{display:inline-flex;align-items:center;gap:.4rem;color:var(--purple);font-weight:600;font-size:.95rem;margin-bottom:2rem}.pricing-back:hover{gap:.7rem}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;gap:1rem}.gallery__item{position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-sm)}.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery__item:hover img{transform:scale(1.07)}.gallery__item:nth-child(1){grid-column:span 2;grid-row:span 2}.gallery__item:nth-child(4){grid-column:span 2}.gallery__cap{position:absolute;left:0;right:0;bottom:0;padding:1.4rem 1rem .85rem;color:#fff;font-weight:600;font-size:.95rem;background:linear-gradient(180deg,transparent,rgba(15,23,66,.78));opacity:0;transition:opacity .25s}.gallery__item:hover .gallery__cap{opacity:1}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.4rem}.coach{text-align:center}.coach__photo{width:130px;height:130px;border-radius:50%;object-fit:cover;margin:0 auto .9rem;border:4px solid #fff;box-shadow:0 10px 26px #18266b29;background:var(--purple-tint)}.coach__photo--ph{display:flex;align-items:center;justify-content:center;font-size:2.6rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--purple),var(--navy))}.coach__name{color:var(--navy);font-size:1.05rem}.coach__role{color:var(--muted);font-size:.85rem;margin-bottom:.5rem}.coach__tags{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center}.coach__tags span{font-size:.7rem;font-weight:600;color:var(--purple-700);background:var(--purple-tint);padding:.2rem .55rem;border-radius:999px}.events{display:grid;gap:1rem;max-width:820px;margin-inline:auto}.event{display:flex;align-items:center;gap:1.4rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.5rem;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}.event:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.event__date{flex:0 0 auto;width:72px;text-align:center;background:linear-gradient(135deg,var(--purple),var(--purple-700));color:#fff;border-radius:var(--radius-sm);padding:.6rem 0;line-height:1}.event__date b{display:block;font-size:1.6rem}.event__date span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.event__info h3{color:var(--navy);font-size:1.15rem}.event__meta{color:var(--muted);font-size:.88rem;margin-top:.25rem;display:flex;flex-wrap:wrap;gap:.9rem}.event__cta{margin-left:auto}.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.post{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.post:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.post__media{aspect-ratio:16/10;overflow:hidden;background:var(--purple-tint)}.post__media img{width:100%;height:100%;object-fit:cover}.post__body{padding:1.4rem;display:flex;flex-direction:column;flex:1}.post__date{color:var(--purple);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.post__body h3{color:var(--navy);font-size:1.2rem;margin:.45rem 0 .6rem}.post__body p{color:var(--muted);font-size:.95rem;flex:1}.post__link{margin-top:1rem;font-weight:600;color:var(--purple);display:inline-flex;align-items:center;gap:.35rem}.post__link:hover{gap:.6rem}.satisfaction{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:2.5rem;align-items:center}.sat-score{text-align:center;background:linear-gradient(160deg,var(--navy),var(--purple-700));color:#fff;border-radius:var(--radius-lg);padding:2.4rem 1.5rem;box-shadow:var(--shadow)}.sat-score b{font-size:3.6rem;display:block;line-height:1}.sat-score .stars{color:var(--gold);font-size:1.3rem;margin:.5rem 0;letter-spacing:.15em}.sat-score span{color:#ffffffd1;font-size:.92rem}.sat-list{display:grid;gap:1rem}.sat-row{display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem;align-items:center}.sat-row__label{color:var(--navy);font-weight:500;font-size:.98rem}.sat-bar{grid-column:1 / -1;height:8px;background:var(--purple-tint-2);border-radius:999px;overflow:hidden}.sat-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--purple),var(--navy));border-radius:999px}.sat-row__val{color:var(--purple);font-weight:700;font-variant-numeric:tabular-nums}.booking{background:linear-gradient(120deg,var(--navy) 0%,var(--purple-700) 60%,var(--purple) 100%);color:#fff;border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,3.5rem);display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.booking:after{content:"";position:absolute;right:-60px;top:-60px;width:280px;height:280px;border-radius:50%;background:#ffffff12}.booking__text{flex:1 1 320px;position:relative;z-index:1}.booking__text h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}.booking__text p{color:#ffffffe6;margin-top:.6rem;max-width:36rem}.booking .btn{position:relative;z-index:1}.sponsors{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(2rem,5vw,4rem)}.sponsors a,.sponsors div{display:flex;align-items:center}.sponsors img{max-height:64px;width:auto;filter:grayscale(1);opacity:.65;transition:filter .25s,opacity .25s,transform .25s}.sponsors img:hover{filter:grayscale(0);opacity:1;transform:scale(1.05)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:2.5rem;align-items:start}.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow-sm)}.contact-list{list-style:none;margin:0 0 1.4rem;padding:0;display:grid;gap:1rem}.contact-list li{display:flex;gap:.9rem;align-items:flex-start}.contact-list .ico{flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:var(--purple-tint);display:grid;place-items:center;color:var(--purple);font-size:1.1rem}.contact-list b{display:block;color:var(--navy);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.contact-list a,.contact-list span{color:var(--ink)}.contact-social{display:flex;gap:.6rem;flex-wrap:wrap}.contact-social a{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .95rem;border-radius:999px;background:var(--purple-tint);color:var(--purple-700);font-weight:600;font-size:.88rem;text-transform:capitalize}.contact-social a:hover{background:var(--purple);color:#fff}.contact-map iframe{width:100%;height:100%;min-height:360px;border:0;border-radius:var(--radius);box-shadow:var(--shadow-sm)}.hours-table{width:100%;border-collapse:collapse;margin-top:1.4rem}.hours-table td{padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.95rem}.hours-table td:first-child{color:var(--navy);font-weight:600;text-transform:capitalize}.hours-table td:last-child{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.site-footer{background:var(--navy-900);color:#ffffffc7;padding:3.5rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2.5rem}.footer-brand{display:flex;gap:.9rem;align-items:center;margin-bottom:1rem}.footer-brand img{height:56px}.footer-brand strong{color:#fff;font-size:1.1rem}.site-footer h4{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.site-footer a{color:#ffffffc7;font-size:.95rem}.site-footer a:hover{color:#fff}.site-footer .contact-social a{background:#ffffff1a;color:#fff}.site-footer .contact-social a:hover{background:#fff3;color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:2.5rem;padding-top:1.5rem;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between;font-size:.85rem;color:#ffffff8c}.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.js [data-reveal].is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.js [data-reveal]{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}@media (max-width: 920px){.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.gallery__item:nth-child(1){grid-column:span 2}.gallery__item:nth-child(4){grid-column:span 2}.satisfaction,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 760px){.nav__links,.nav__actions .btn{display:none}.nav__toggle{display:inline-flex;align-items:center;justify-content:center}.nav.is-open .nav__links{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;border-top:2px solid var(--purple);padding:.4rem 0 .6rem;box-shadow:var(--shadow);border-radius:0 0 var(--radius) var(--radius);z-index:40}.nav.is-open .nav__links li{width:100%}.nav.is-open .nav__links li+li{border-top:1px solid var(--line)}.nav.is-open .nav__links a{display:block;padding:.8rem 1.4rem;width:100%;color:var(--navy);font-weight:500;font-size:1rem;border-bottom:none}.nav.is-open .nav__links a:hover{background:var(--purple-tint);color:var(--purple)}.event{flex-wrap:wrap}.event__cta{margin-left:0;width:100%}.footer-grid{grid-template-columns:1fr}}@media (max-width: 480px){.gallery{grid-template-columns:1fr}.gallery__item,.gallery__item:nth-child(1),.gallery__item:nth-child(4){grid-column:span 1}}.wrap--narrow{width:min(100% - 2.5rem,56rem);margin-inline:auto}.board{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.board__row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;padding:1rem 1.25rem;background:#fff;border:1px solid var(--line);border-radius:14px}.board__role{color:var(--purple);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;min-width:11rem}.board__name{color:var(--navy);font-weight:600;font-size:1.05rem}.prose{color:var(--ink);line-height:1.75;max-width:46rem}.prose h2{color:var(--navy);font-size:1.4rem;margin:2.4rem 0 .8rem}.prose h3{color:var(--navy);font-size:1.12rem;margin:1.8rem 0 .5rem}.prose h4{color:var(--purple);font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;margin:1.4rem 0 .4rem}.prose p{margin:0 0 1rem}.prose ul,.prose ol{margin:0 0 1rem;padding-left:1.4rem;display:grid;gap:.35rem}.prose a{color:var(--purple);text-decoration:underline}.prose strong{color:var(--navy)}
