:root{--navy:#171728;--deep:#10101f;--blue:#18184a;--gold:#ffdc81;--white:#f6f6fa;--muted:#b5b5c6;--line:rgba(255,255,255,.12);--page:1200px;--gutter:40px;--radius:20px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--navy);color:var(--white);font-family:'Poppins',Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto;object-fit:contain}p,h1,h2,h3,figure{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{color:var(--navy);background:var(--gold)}:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.wrap{width:min(calc(100% - var(--gutter)*2),var(--page));margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;background:var(--gold);color:var(--navy);padding:14px 20px;z-index:100}.skip:focus{top:12px}
/* Brand navigation */
.header{position:sticky;top:0;z-index:30;background:rgba(23,23,40,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.055)}
.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-block;flex-shrink:0}.brand img{filter:invert(1);width:142px;height:auto}.header nav{display:flex;align-items:center;gap:34px;margin-left:auto;margin-right:35px;font-size:13px;color:#c1c1d0}.header nav a{transition:color .2s}.header nav a:hover{color:#fff}.header-contact{display:flex;align-items:center;gap:18px;font-size:13px;font-weight:500;padding:10px 0;color:var(--gold)}.header-contact span{font-size:22px}.menu-button{display:none}
/* A clear opening, with two complete photographs in their own space. */
.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:60px;align-items:center;padding-block:88px 96px;position:relative;isolation:isolate}
.hero::before{content:'';position:absolute;z-index:-1;inset:0 calc(var(--gutter)*-1) 0 30%;background:radial-gradient(ellipse at 70% 55%,rgba(69,63,133,.23),transparent 67%);pointer-events:none}.eyebrow{font-size:11px;font-weight:500;letter-spacing:1.4px;line-height:1.8}.hero-location{display:flex;align-items:center;gap:10px;color:#bdbdcf}.location-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px #ffdc8109}h1{font-size:clamp(56px,6.65vw,88px);line-height:1.055;letter-spacing:-4.2px;font-weight:600;margin:26px 0}.hero h1 span{color:var(--gold)}.hero-description{font-size:18px;line-height:1.85;letter-spacing:-.3px;color:#bdbdcc;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;max-width:100%;min-height:58px;padding:17px 25px;border-radius:50px;background:var(--gold);color:var(--navy);font-size:14px;font-weight:500;line-height:1.5;transition:background .2s,transform .2s}.button svg{width:24px;height:24px;flex-shrink:0;transition:transform .2s}.button:hover{background:#ffe5a3;transform:translateY(-2px)}.button:hover svg{transform:translateX(3px)}.hero-discover{display:flex;align-items:center;gap:18px;font-size:11px;color:#9999b0;margin-top:26px;width:fit-content}.hero-discover span{font-size:17px}.hero-discover:hover{color:#fff}.hero-visual{display:grid;grid-template-columns:1.32fr .9fr;gap:18px;align-items:start;position:relative;padding-block:15px 30px}.hero-visual img{width:100%;height:auto;border-radius:18px}.hero-photo-main{margin-top:56px}.hero-photo-secondary{margin-top:0}.hero-photo-main img{box-shadow:0 22px 55px #08081340}.hero-photo-secondary img{box-shadow:0 16px 40px #08081325}
/* One light surface gives the institutional information its own rhythm. */
.academy{background:#f3f3f6;color:#181828}.academy-inner{padding-block:84px}.academy-heading{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;margin-bottom:42px}h2{font-size:48px;font-weight:500;line-height:1.16;letter-spacing:-1.9px}.academy-heading p{font-size:18px;line-height:1.85;letter-spacing:-.25px;color:#646473;max-width:475px}.space-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}.space-gallery figure{margin:0}.space-gallery img{width:100%;height:auto;border-radius:16px}.space-gallery figure:nth-child(2){margin-top:30px}.space-gallery figure:nth-child(3){margin-top:60px}
/* The full original file is always visible in the active frame. */
.photos-section{padding-block:92px 72px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#25253e 0%,var(--navy) 68%)}.photos-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.photos-heading p{font-size:14px;line-height:1.85;color:var(--muted);padding-bottom:4px}.mobile-break{display:none}.photo-carousel{--photo-width:min(72vw,480px,48svh);--photo-gap:20px;width:100%;max-width:calc(var(--photo-width)*1.85 + 40px);margin-inline:auto;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;position:relative}.photo-carousel::-webkit-scrollbar{display:none}.photo-track{display:flex;align-items:center;gap:var(--photo-gap);width:max-content;list-style:none;margin:0;padding:0 var(--edge-space,15vw);position:relative}.photo-slide{width:var(--photo-width);flex:0 0 var(--photo-width);opacity:.42;transform:scale(.94);transition:opacity .45s,transform .65s}.photo-slide.is-active{opacity:1;transform:scale(1)}.photo-stop{display:block;width:100%;padding:0;border:0;border-radius:18px;background:none;overflow:hidden;appearance:none;cursor:pointer}.photo-stop img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}.photo-stop:focus-visible{outline-offset:-5px}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:14px;width:fit-content;margin:28px auto 0;padding:5px 9px;border:1px solid #ffffff14;border-radius:50px;background:#ffffff04}.carousel-controls button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;padding:0;background:transparent;color:#b9b9ce;font-size:20px;transition:background .2s,color .2s}.carousel-controls button:hover{background:#ffffff0b;color:white}.carousel-counter{display:flex;gap:8px;font-size:11px;color:#77778e;min-width:57px;justify-content:center;font-variant-numeric:tabular-nums}.current-photo{color:#ececf3}.counter-divider{color:#505065}.control-divider{height:15px;width:1px;background:#ffffff14}.toggle-icon{font-size:14px}
/* Contact information is the final destination, not another sales section. */
.contact{display:grid;grid-template-columns:1.05fr 1fr;gap:100px;padding-block:88px 96px;border-top:1px solid var(--line)}.contact h2{font-size:64px;line-height:1.1;letter-spacing:-2.5px}.contact h2 span{color:var(--gold)}.contact-intro>p{color:var(--muted);font-size:16px;line-height:1.8;margin:24px 0 30px}.contact-details{padding-top:8px}.contact-details h3{font-size:17px;font-weight:500;margin-bottom:18px}.contact address{font-style:normal;font-size:16px;line-height:1.9;color:#b9b9ca}.text-link{display:inline-flex;align-items:center;gap:18px;color:var(--gold);font-size:13px;line-height:1.6;margin-top:18px}.text-link span{font-size:19px}.text-link:hover{color:#ffedbe}.contact-links{display:flex;flex-direction:column;gap:9px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line);font-size:16px;color:#d7d7e4}.contact-links a{width:fit-content}.contact-links a:hover{color:var(--gold)}.contact-links .instagram{display:flex;align-items:center;gap:12px;font-size:13px;color:#9292a9;margin-top:6px}
.footer{background:var(--deep);padding-block:38px 22px}.footer-top{display:flex;align-items:center;gap:50px}.footer .brand img{width:120px}.company{font-size:11px;line-height:1.9;color:#85859d;max-width:750px}.company strong{font-size:11px;font-weight:500;color:#b7b7c9}.company p{margin-top:6px}.back-to-top{margin-left:auto;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;font-size:17px;color:#9b9bb0;flex-shrink:0}.footer-bottom{border-top:1px solid #ffffff09;margin-top:28px;padding-top:20px;display:flex;justify-content:space-between;gap:25px;font-size:11px;color:#72728c}.privacy-open{background:none;border:0;color:inherit;padding:0;font-size:inherit}.privacy-open:hover{color:white}
dialog{max-width:620px;width:calc(100% - 32px);max-height:85dvh;border:1px solid #3d3d58;border-radius:18px;background:var(--navy);color:white;padding:30px}dialog::backdrop{background:#080813cf;backdrop-filter:blur(5px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:24px}.dialog-header h2{font-size:30px;letter-spacing:-1px}.dialog-header button{border:0;background:none;color:white;font-size:28px;padding:0 5px}.dialog-header~p{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:16px}dialog a{color:var(--gold)}
@media(min-width:1500px){.hero{padding-block:102px 110px}.hero-visual{gap:22px}.hero-photo-main{margin-top:68px}}
@media(max-width:1050px){:root{--gutter:30px}.header-inner{height:84px}.header nav{gap:24px;margin-right:15px}.hero{gap:35px;padding-block:70px 78px;grid-template-columns:1.15fr 1fr}h1{letter-spacing:-3px;font-size:clamp(52px,6.6vw,72px)}.hero-description{font-size:16px}.hero-visual{gap:12px}.hero-photo-main{margin-top:45px}.hero-visual img{border-radius:13px}.button{font-size:13px;gap:20px;padding-inline:22px}.academy-heading{gap:50px}h2{font-size:42px}.academy-heading p{font-size:17px}.space-gallery{gap:18px}.contact{gap:65px}.contact h2{font-size:56px}.footer-top{gap:35px}}
@media(max-width:760px){.header nav{gap:18px;margin-right:8px;font-size:12px}.brand img{width:122px}.header-contact{font-size:12px;gap:9px}.header-inner{gap:18px}.hero{grid-template-columns:1.1fr 1fr;gap:25px}.hero h1{font-size:52px;letter-spacing:-2.5px}.hero-description{font-size:15px}.hero .button{font-size:12px;padding-inline:19px;gap:15px}.hero-visual{grid-template-columns:1.4fr .9fr;gap:10px}.hero-photo-main{margin-top:35px}.eyebrow{font-size:9px;letter-spacing:1px}.hero-discover{font-size:10px}.academy-heading{gap:28px}h2{font-size:36px}.academy-heading p{font-size:16px}.photos-heading p{font-size:12px}.contact{gap:40px}.contact h2{font-size:49px}.contact address,.contact-links{font-size:14px}}
@media(max-width:760px){:root{--gutter:24px}html{scroll-padding-top:88px}.header-inner{height:76px;gap:20px}.brand img{width:114px}.header-contact{margin-left:auto;font-size:12px;gap:9px}.header-contact span{font-size:19px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:5px;border:0;background:none;width:24px;height:38px;padding:0}.menu-button span{display:block;background:#c8c8d7;width:21px;height:1px;transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.header nav{display:none;position:absolute;top:76px;left:0;right:0;margin:0;background:#171728fa;padding:10px 24px 24px;border-bottom:1px solid var(--line);font-size:15px}.header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav a{padding:14px 0}.hero{display:flex;flex-direction:column;align-items:stretch;gap:32px;padding-block:44px 50px}.hero::before{inset:30% -24px 0 0}.hero h1{font-size:clamp(50px,12.7vw,70px);letter-spacing:-2.7px;margin:23px 0}.eyebrow{font-size:9px;letter-spacing:1px}.hero-description{font-size:17px;line-height:1.8;margin-bottom:26px}.hero .button{font-size:13px;padding:16px 23px;gap:25px;min-height:56px}.hero-discover{font-size:11px;margin-top:22px}.hero-visual{grid-template-columns:1.35fr .85fr;gap:14px;padding-block:0 5px;align-items:start}.hero-photo-main{margin-top:32px}.hero-visual img{border-radius:13px}.hero-photo-secondary{margin-top:0}.academy-inner{padding-block:54px}.academy-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.academy h2{font-size:39px;letter-spacing:-1.5px}.academy-heading p{font-size:17px;line-height:1.8}.space-gallery{gap:12px;grid-template-columns:1fr 1fr}.space-gallery figure:nth-child(2){margin-top:28px}.space-gallery figure:nth-child(3){display:none}.space-gallery img{border-radius:12px}.photos-section{padding-block:56px 44px}.photos-heading{display:block;margin-bottom:30px}.photos-heading h2{font-size:38px;letter-spacing:-1.5px}.mobile-break{display:none}.photos-heading p{font-size:13px;line-height:1.8;margin-top:15px}.photos-heading p br{display:none}.photo-carousel{--photo-width:min(80vw,48svh);--photo-gap:14px;max-width:100%}.photo-stop{border-radius:14px}.photo-slide{transform:scale(.95)}.photo-slide.is-active{transform:scale(1)}.carousel-controls{margin-top:23px;gap:10px}.carousel-controls button{width:34px;height:34px}.carousel-counter{font-size:11px}.contact{grid-template-columns:1fr;gap:42px;padding-block:52px 60px}.contact h2{font-size:51px;letter-spacing:-2px}.contact-intro>p{font-size:15px;margin:20px 0 25px}.contact-intro>p br{display:none}.contact .button{font-size:13px;min-height:55px}.contact-details{padding-top:0}.contact-details h3{font-size:16px;margin-bottom:14px}.contact address{font-size:15px;line-height:1.9}.contact-links{font-size:16px;margin-top:24px;padding-top:22px;gap:10px}.text-link{font-size:13px;margin-top:15px}.footer{padding-block:30px 22px}.footer-top{align-items:flex-start;flex-wrap:wrap;gap:24px}.footer .brand img{width:110px}.company{font-size:11px;order:3;flex-basis:100%;line-height:1.9}.company strong{font-size:11px}.back-to-top{width:35px;height:35px}.footer-bottom{font-size:10px;margin-top:24px;padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

@media(max-width:360px){.header-inner{gap:14px}.header .brand img{width:100px}.hero .button{font-size:12px;gap:18px;padding-inline:20px}}

.footer-bottom{flex-wrap:wrap;column-gap:20px;row-gap:12px}
