@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;700;900&display=swap');
:root{--black:#080808;--white:#f5f5f5;--muted:#aaa;--border:#5a5a5a;--font:Roboto,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--black);color:var(--white);font:16px/1.5 var(--font)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}img{max-width:100%;display:block;height:auto}h1,h2,h3{margin:0;font-weight:900;line-height:1.15}h1{font-size:74px;letter-spacing:2px}h2{font-size:60px;letter-spacing:1px}h3{font-size:20px;font-weight:700}p{margin:24px 0;line-height:1.5}header{position:fixed;top:0;left:0;right:0;height:100px;z-index:30;display:flex;align-items:flex-start;justify-content:space-between;padding:28px 4.85%;background:linear-gradient(var(--black) 70%,transparent)}.brand{font-size:14px;font-weight:900;line-height:1.1;text-align:center;min-width:118px}.brand>span{display:block;height:2px;background:#666;width:86%;margin:6px auto 5px}.brand small{display:block;font-size:9px;letter-spacing:4px;font-weight:400}header nav{display:flex;gap:40px;align-items:center}header nav a{position:relative;min-height:44px;display:flex;align-items:center;font-size:14px;font-weight:400}header nav a[aria-current=true]:after{content:'•••';position:absolute;font-size:13px;letter-spacing:3px;bottom:0;left:50%;transform:translateX(-50%);color:#a6a6a6}.hamburger{display:none}.page{position:relative;min-height:100svh;padding:140px 90px 100px}.home{min-height:900px;display:flex;align-items:center;overflow:hidden}.home-copy{position:relative;z-index:2;padding-bottom:24px}.home-copy p{max-width:405px;margin-top:28px;margin-bottom:42px}.home-plate{position:absolute;width:59%;height:auto;max-width:none;right:-3%;bottom:-5%;z-index:1}.pill{border:1px solid var(--border);background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;border-radius:32px;min-height:52px;min-width:220px;padding:12px 24px;font-weight:900;letter-spacing:.3px;font-size:16px;transition:background .25s,color .25s,border-color .25s}.pill:hover{color:var(--black);background:var(--white);border-color:var(--white)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid white;outline-offset:5px}.section-rail{position:fixed;top:50%;left:10px;transform:translateY(-50%);z-index:35;display:flex;flex-direction:column;align-items:center}.section-rail a{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#929292;width:44px;min-height:42px;font-size:14px}.section-rail a[aria-current=true]:after{content:'';width:1px;height:88px;background:#666;margin:10px auto}.section-rail a:hover,.section-rail a[aria-current=true]{color:var(--white)}.corner-links{position:fixed;left:24px;bottom:14px;display:flex;gap:4px;z-index:35}.corner-links a{display:grid;place-items:center;min-width:44px;min-height:44px;font-size:10px;font-weight:700}.preview-note{position:fixed;right:24px;bottom:24px;font-size:8px;letter-spacing:1px;color:#8c8c8c;z-index:20}.split{display:grid;grid-template-columns:40% 1fr;gap:40px;align-items:center;width:100%;max-width:1320px;margin:auto}.about-copy p{margin:22px 0}.about-photo{width:100%;height:420px;object-fit:cover}.about .split{margin-top:90px}.center-heading{text-align:center;margin:0 auto 32px;max-width:650px}.center-heading h2{font-size:48px}.center-heading p{font-size:14px;margin-top:28px}.menu,.gallery-page,.groups,.questions,.contact{padding-left:max(90px,calc((100vw - 940px)/2));padding-right:max(90px,calc((100vw - 940px)/2));padding-top:115px}.menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:160px}.menu-columns h3{font-weight:400;margin:2px 0 20px}.menu-row{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid #666;min-height:100px;gap:20px;font-size:16px}.menu-row>a{font-size:42px;font-weight:300;min-height:44px;min-width:44px;text-align:center;color:#d5d5d5}.menu-row>a:hover{color:white}.center-button{display:flex;width:max-content;max-width:100%;margin:48px auto 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.photo{padding:0;border:0;background:transparent;overflow:hidden;position:relative}.photo img{width:100%;height:196px;object-fit:cover;transition:transform .3s}.photo:hover img{transform:scale(1.05)}.photo[hidden]{display:none}.filters{display:flex;gap:30px;margin-top:26px;flex-wrap:wrap}.filters button{border:1px solid #454545;border-radius:24px;background:transparent;color:#b7b7b7;min-height:44px;padding:8px 20px;font-size:12px}.filters button[aria-pressed=true],.filters button:hover{background:#333;color:#fff}.experience-photos{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.experience-photos img{width:100%;height:390px;object-fit:cover}.experience-photos span{font-size:14px;font-weight:700;text-align:center;padding:18px 0;color:#aaa}.experiences .split{margin-top:80px}.experiences h2{font-size:60px}.experiences .pill{margin-top:16px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;text-align:center;margin-top:65px}.services article>span{font-size:60px;font-weight:300;color:#aaa}.services h3{margin:16px 0}.services p{font-size:15px;color:#b7b7b7}.faq-list{max-width:780px;margin:45px auto}.faq-list details{border-bottom:1px solid #555}.faq-list summary{min-height:62px;padding:18px 10px;cursor:pointer;font-weight:700}.faq-list p{color:#aaa;margin:0;padding:8px 12px 24px}.contact .center-heading{margin-bottom:42px}.contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-columns h3{font-size:18px;margin-bottom:25px}.contact-line{display:flex;align-items:center;gap:12px;min-height:44px;color:#b5b5b5;font-weight:700;margin:0 0 5px}.contact-line span{color:#fff}.contact-line:hover{color:white}.contact address{font-style:normal;font-size:14px;color:#aaa;margin:20px 0}.contact-columns>div>p{font-size:14px;color:#aaa;margin:15px 0}.contact small{display:block;font-size:12px;color:#aaa;margin-top:38px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}form label{display:block;color:#b5b5b5;font-size:12px}form input,form textarea{display:block;width:100%;border:1px solid #555;border-radius:28px;color:#eee;background:transparent;padding:15px 20px;margin:8px 0 16px;min-height:50px;font-size:12px}form textarea{border-radius:32px;padding-top:18px;resize:vertical;min-height:150px}form .form-note{font-size:11px;color:#aaa;margin:0 0 14px}.send{float:right;font-size:12px;min-width:200px}.skip{position:fixed;top:-100px;left:80px;padding:12px;background:white;color:black;z-index:60}.skip:focus{top:10px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}dialog{background:#080808;color:#fff;border:1px solid #555;padding:24px;max-width:90vw;max-height:90svh}dialog::backdrop{background:#000d}dialog>img{max-height:72svh;max-width:80vw;width:auto;object-fit:contain}dialog p{margin:12px 0 0;font-size:13px}.lightbox-close{position:absolute;right:8px;top:8px;width:44px;height:44px;border:0;background:black;color:white;font-size:28px}.js body{height:100svh;overflow:hidden}.js main{position:fixed;inset:0}.js .page{height:100svh;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#444 #080808;position:absolute;inset:0}.js .page[hidden]{display:none}.js .home{overflow:hidden}.js .page.enter{animation:show-page .5s ease both}@keyframes show-page{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.home-copy{margin-left:3%}.home-plate{width:58%}.about .split,.experiences .split{margin-top:12vh}.menu,.gallery-page,.groups,.questions,.contact{padding-top:14vh}.photo img{height:23vh}}
@media(max-width:1200px){header nav{gap:22px}header{padding-inline:5%}.page{padding-inline:80px}.home-copy h1{font-size:64px}.home-plate{width:65%;right:-10%}.split{grid-template-columns:42% 1fr;gap:32px}.about h2,.experiences h2{font-size:48px}.about-photo{height:400px}.menu-columns{gap:70px}.gallery-grid{gap:20px}.photo img{height:180px}.menu,.gallery-page,.groups,.questions,.contact{padding-inline:110px}.services{gap:32px}.contact-columns{gap:32px}}
@media(max-width:900px){header nav{gap:16px}header nav a{font-size:11px}.home-plate{width:75%;right:-20%;bottom:3%}.home-copy p{max-width:350px}.home-copy h1{font-size:58px}.split{grid-template-columns:1fr 1fr;gap:28px}.about-copy p{font-size:14px}.about-photo{height:360px}.experience-photos img{height:330px}.page{padding-inline:70px}.menu,.gallery-page,.groups,.questions,.contact{padding-inline:80px}.menu-columns{gap:50px}.menu-row{min-height:90px;font-size:14px}.center-heading h2{font-size:42px}.photo img{height:165px}.services{gap:24px}.services h3{font-size:18px}.contact-columns{gap:28px}.contact-columns h3{font-size:16px}.form-row{grid-template-columns:1fr}.contact{padding-top:110px}.contact .center-heading{margin-bottom:24px}.contact .center-heading p{margin:18px 0}.contact-columns>div>p,.contact address{font-size:12px}}
@media(max-width:700px){header{height:90px;padding:22px 30px;align-items:flex-start;background:var(--black)}.brand{min-width:110px}.hamburger{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;border:0;background:transparent;width:44px;height:44px;padding:4px}.hamburger span{width:29px;height:2px;background:white;display:block}header nav{display:flex;position:absolute;top:85px;left:0;right:0;background:#101010;padding:16px 30px 25px;flex-wrap:wrap;gap:10px 28px;border-bottom:1px solid #444}header nav a{font-size:13px;min-height:44px}.js header nav{display:none}.js header nav.open{display:flex}.section-rail{left:2px}.section-rail a{width:28px;min-height:44px;font-size:11px}.section-rail a[aria-current=true]:after{height:35px;margin:4px auto}.page,.menu,.gallery-page,.groups,.questions,.contact{padding:120px 30px 85px 44px}.home{align-items:flex-start;min-height:850px;padding:190px 30px 70px}.home-copy{padding:0}.home-copy h1{font-size:42px;letter-spacing:1px}.home-copy p{max-width:430px;font-size:14px;line-height:1.65;margin-top:10px;margin-bottom:22px}.home-plate{width:110%;max-width:none;right:-28%;bottom:-4%}.home-copy .pill{position:relative;z-index:3}.pill{min-width:220px;font-size:15px}.corner-links{left:24px;bottom:5px;gap:0;background:#080808e8;border-radius:24px}.corner-links a{font-size:8px;min-width:40px}.preview-note{right:16px;bottom:20px;font-size:7px}.split{grid-template-columns:1fr;gap:24px}.about .split,.experiences .split{margin-top:0}.about h2,.experiences h2{font-size:40px}.about-copy p{font-size:14px;margin:20px 0}.about-photo{height:280px}.center-heading h2{font-size:36px}.center-heading p{font-size:13px;margin-top:20px}.menu-columns{grid-template-columns:1fr;gap:32px}.menu-columns h3{font-size:18px}.menu-row{min-height:76px;font-size:15px}.menu-row a{font-size:36px}.center-button{margin-top:28px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:14px}.photo img{height:160px}.gallery-page .center-heading{margin-bottom:24px}.filters{gap:10px;margin-top:20px}.filters button{padding-inline:15px}.experience-photos img{height:260px}.experiences p{font-size:14px}.experience-photos span{font-size:11px}.services{grid-template-columns:1fr;gap:20px;margin-top:30px}.services article>span{font-size:44px}.services p{margin:14px 0}.services h3{margin:12px 0}.faq-list{margin-top:25px}.faq-list summary{font-size:14px}.faq-list p{font-size:13px}.contact-columns{grid-template-columns:1fr;gap:36px}.form-row{grid-template-columns:1fr 1fr}.contact-columns h3{font-size:17px}.contact address,.contact-columns>div>p{font-size:14px}.contact small{margin-top:20px}.js .home{padding-top:30vh}.js .home-plate{width:125%;bottom:-3%;right:-33%}.js .home-copy{padding-bottom:280px}.js .home-copy p{max-width:430px}.js .home{overflow-y:auto}.js .home-copy{z-index:2}.js .section-rail{display:none}.js .page:not(.home){padding-left:30px}.js .corner-links{display:none}.js .preview-note{bottom:9px;right:12px;padding:3px 8px;background:#080808d9}}
@media(max-width:400px){.home-copy h1{font-size:38px}.home{padding-top:170px}.js .home{padding-top:27vh}.js .home-copy p{max-width:320px}.js .home-plate{width:150%;right:-48%;bottom:-1%}.photo img{height:130px}.center-heading h2{font-size:32px}.form-row{grid-template-columns:1fr}.page,.menu,.gallery-page,.groups,.questions,.contact{padding-inline:24px}.js .page:not(.home){padding-left:24px}.js .home-copy{padding-bottom:260px}}
@media(max-height:700px) and (min-width:701px){.page{padding-top:110px;padding-bottom:70px}.home-copy{padding-top:50px}.home-copy h1{font-size:60px}.about .split,.experiences .split{margin-top:0}.about-photo{height:330px}.center-heading{margin-bottom:24px}.center-heading p{margin:18px 0}.photo img{height:135px}.menu-row{min-height:70px}.center-button{margin-top:24px}.experience-photos img{height:300px}.services{margin-top:25px}.contact-columns h3{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
@media(min-width:701px){.home-plate{width:80%;right:-20%;bottom:-1%}}
.js .home{overflow-x:hidden}
