:root{--ink:#141616;--black:#0b0d0f;--charcoal:#191c1e;--yellow:#eec33d;--yellow-bright:#ffce38;--off:#f2f1eb;--muted:#777b7b;--line:#deded8;--white:#fff;--font-head:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;--font-body:'DM Sans',Arial,sans-serif;scroll-behavior:smooth}
*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--off);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}.container{width:min(1250px,calc(100% - 84px));margin:auto}.skip{position:absolute;left:10px;top:-100px;z-index:1000;background:var(--yellow);padding:14px}.skip:focus{top:10px}.topbar{height:32px;background:var(--yellow);color:#181915;font-size:10px;font-weight:800;letter-spacing:1.2px;display:flex;align-items:center;justify-content:center;gap:15px}.topbar-dot{width:6px;height:6px;border-radius:50%;background:#181915}.topbar a{margin-left:30px;text-decoration:underline;text-underline-offset:2px}.topbar-sep{opacity:.4}.site-header{z-index:90;position:relative;background:#0b0d0f;color:#fff;border-bottom:1px solid #ffffff16}.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:36px}.logo{display:flex;align-items:center;gap:10px;flex-shrink:0}.logo-icon{width:46px;height:54px;display:flex;align-items:center;color:var(--yellow);font-size:35px}.logo-icon svg{width:100%;height:100%}.logo-type{display:flex;flex-direction:column;line-height:.85}.logo-type>span{font-family:var(--font-head);font-size:31px;font-weight:900;letter-spacing:-.6px;white-space:nowrap}.logo-type strong{color:var(--yellow)}.logo-type small{font-size:8px;letter-spacing:2px;font-weight:800;margin-top:8px}.nav-links{display:flex;gap:25px;align-items:center}.nav-links>a:not(.button){font-size:11px;letter-spacing:1px;font-weight:800;transition:color .2s}.nav-links>a:not(.button):hover{color:var(--yellow)}.nav-links .member-link{color:#b9b9b9}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:26px;border:1px solid transparent;min-height:56px;padding:16px 23px;font:800 12px/1 var(--font-body);letter-spacing:1.05px;white-space:nowrap;transition:transform .2s,background .2s,color .2s;cursor:pointer}.button:hover{transform:translateY(-3px)}.button span{font-size:20px;font-weight:400}.button-yellow{background:var(--yellow);color:var(--black)}.button-yellow:hover{background:var(--yellow-bright)}.button-small{padding:12px 16px;min-height:40px;gap:17px;font-size:10px}.button-small span{font-size:15px}.button-outline{border-color:#ffffff80;color:#fff;background:#ffffff04}.button-outline:hover{background:#fff;color:#111}.button-dark{background:#17191a;color:#fff}.button-dark:hover{background:#393d3e}.button-black{background:#121313;color:#fff}.menu-toggle{display:none;background:transparent;border:0;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:25px;height:2px;background:white;margin:5px 0}
.hero{height:675px;min-height:630px;background:#0d0f10;color:white;position:relative;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(9,10,12,.97) 0%,rgba(9,10,12,.85) 35%,rgba(9,10,12,.38) 75%,rgba(9,10,12,.45) 100%),url('assets/hero-colorful-lights.webp');background-position:center,center 53%;background-size:cover;filter:saturate(.65) contrast(1.15);transform:scale(1.015)}.hero:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 70% 40%,transparent 0 20%,#090a0c44 70%);pointer-events:none}.hero-grid{position:absolute;z-index:1;inset:0;opacity:.18;background-image:linear-gradient(#ffffff17 1px,transparent 1px),linear-gradient(90deg,#ffffff17 1px,transparent 1px);background-size:95px 95px;mask-image:linear-gradient(to right,transparent,black)}.hero-content{z-index:2;position:relative;padding-top:114px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:2px;display:flex;align-items:center;gap:11px;color:#fff}.eyebrow-line{display:inline-block;width:23px;height:3px;background:var(--yellow)}.hero h1{font:900 clamp(88px,10vw,162px)/.80 var(--font-head);letter-spacing:-3px;max-width:900px;margin:27px 0 30px}.hero h1 span:not(.period){color:var(--yellow)}.hero h1 .period{color:var(--yellow)}.hero-content>p{font-size:17px;line-height:1.75;max-width:515px;color:#e1e1df}.hero-actions{display:flex;gap:12px;margin-top:34px}.hero-note{font-size:10px;font-weight:900;letter-spacing:1.6px;margin-top:46px;color:#d5d5d4;display:flex;align-items:center;gap:11px}.note-star{font-size:24px;color:var(--yellow)}.hero-side{position:absolute;z-index:2;right:37px;top:40%;writing-mode:vertical-rl;font-size:10px;letter-spacing:2px;color:#ffffff8c;font-weight:800}.scroll-indicator{position:absolute;z-index:3;right:6%;bottom:25px;color:#fff9;font-size:9px;font-weight:900;letter-spacing:1.4px;display:flex;align-items:center;gap:12px}.scroll-indicator span{height:45px;border-left:1px solid var(--yellow)}.trust-band{background:var(--yellow);padding:26px 0}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}.trust-item{display:flex;align-items:center;gap:23px;padding:10px 33px;border-right:1px solid #17171744}.trust-item:first-child{padding-left:0}.trust-item:last-child{border:0}.trust-big{font:900 54px/.8 var(--font-head);white-space:nowrap}.trust-big span{font-weight:400}.trust-symbol{font:900 57px/.8 var(--font-head)}.trust-item strong{font-size:12px;letter-spacing:1px}.trust-item p{font-size:11px;margin:5px 0 0;color:#474538}
.section{padding:110px 0}.section-heading{margin-bottom:42px}.split-heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.split-heading>p{max-width:360px;line-height:1.8;color:#5a5d5d;font-size:14px;margin:0 0 10px}.dark-eye{color:#474b4a}.section h2,.statement h2,.cta h2{font:900 clamp(64px,7vw,104px)/.85 var(--font-head);letter-spacing:-1.7px;margin:21px 0 0}.section h2 span{color:#9a9c99}.facility-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:15px}.facility-card{min-height:430px;position:relative;overflow:hidden;background:#25292a;color:#fff}.facility-image{position:absolute;inset:0;background-position:center;background-size:cover;transition:transform .5s;filter:saturate(.7)}.facility-card:hover .facility-image{transform:scale(1.06)}.facility-one{background-image:linear-gradient(45deg,#0a0c0d66,#1011131a),url('assets/weights-racks.webp')}.facility-two{background-image:linear-gradient(45deg,#0a0c0d66,#1011131a),url('assets/cardio-area.webp')}.facility-three{background-image:linear-gradient(45deg,#0a0c0d66,#1011131a),url('assets/machines-area.webp')}.facility-shade{position:absolute;inset:0;background:linear-gradient(to top,#070808e8,transparent 78%)}.facility-count{position:absolute;top:25px;left:25px;color:#fff;font:800 11px var(--font-body);letter-spacing:1px}.facility-copy{position:absolute;bottom:27px;left:26px;right:20px}.facility-tag{font-size:10px;font-weight:900;letter-spacing:1.5px;color:var(--yellow);margin-bottom:10px}.facility-copy h3{font:900 35px/.97 var(--font-head);margin:0 0 10px}.facility-copy p{font-size:12px;color:#d6d6d5;margin:0}.facility-footer{margin-top:22px;display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:10px;font-weight:900;letter-spacing:.8px}.facility-footer i{font-style:normal;color:#c59b31;margin:0 7px}.facility-footer a{text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.statement{background:#131617;color:#fff;text-align:center;padding:90px 0 95px;position:relative;overflow:hidden}.statement:after{content:'STRONG';position:absolute;left:-20px;top:-130px;font:900 370px/.8 var(--font-head);opacity:.025;white-space:nowrap}.statement-content{position:relative;z-index:1}.statement-mark{color:var(--yellow);font:900 130px/.6 Georgia,serif}.statement h2{font-size:clamp(45px,5.2vw,77px);line-height:.98;margin:16px auto 26px}.statement em{font-style:normal;color:var(--yellow)}.statement p{font-size:14px;color:#bcbebd;margin:0}
.pricing{background:#e9e9e2}.center-heading{text-align:center}.center-heading .eyebrow{justify-content:center}.center-heading h2{font-size:95px}.center-heading h2 span{color:#b3922f}.center-heading>p{font-size:14px;color:#5b5e5d;margin-top:20px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:stretch}.price-card{background:#fff;padding:33px 30px 29px;display:flex;flex-direction:column;min-height:530px;position:relative;border:1px solid #deded8}.price-card.featured{background:#141718;color:#fff;border-color:#141718}.popular{position:absolute;right:0;top:0;background:var(--yellow);color:#141718;font-size:9px;letter-spacing:1.2px;font-weight:900;padding:10px 14px}.price-label{font-size:10px;letter-spacing:1.4px;font-weight:900;color:#9c812e}.featured .price-label{color:var(--yellow)}.price-top h3{font:900 49px/.92 var(--font-head);margin:20px 0 15px}.price-top p{color:#727675;line-height:1.6;font-size:13px;max-width:280px;min-height:45px}.featured .price-top p{color:#c5c8c7}.price-number{font:900 77px/1 var(--font-head);display:flex;align-items:baseline;letter-spacing:-2px;margin-top:13px}.currency{font-size:33px;align-self:flex-start;padding-top:13px;letter-spacing:0}.cents{font-size:40px}.period-label{font:900 10px var(--font-body);letter-spacing:1px;color:#777a79;margin-left:10px}.featured .period-label{color:#c6c6c5}.price-tax{font-size:11px;color:#8b8e8d;margin:2px 0 19px}.featured .price-tax{color:#aeb2b1}.price-divider{border-top:1px solid #e6e5e1}.featured .price-divider{border-color:#3b3d3e}.price-card ul{padding:10px 0 19px;list-style:none;margin:0;flex:1}.price-card li{font-size:12px;line-height:1.6;margin:12px 0;padding-left:25px;position:relative}.price-card li:before{content:'✓';position:absolute;left:0;color:#aa8b33;font-weight:900}.featured li:before{color:var(--yellow)}.price-card .button{width:100%}.pricing-bottom{display:flex;gap:45px;justify-content:space-between;align-items:center;margin-top:23px}.pricing-bottom p{max-width:720px;font-size:11px;line-height:1.65;color:#707574;margin:0}.pricing-bottom a{font-size:10px;font-weight:900;letter-spacing:.5px;text-decoration:underline;text-underline-offset:4px;flex-shrink:0}
.about{background:#141718;color:white;padding:125px 0}.about-grid{display:grid;grid-template-columns:1fr .88fr;gap:12%;align-items:center}.about-visual{height:560px;position:relative}.about-photo{position:absolute;inset:0 40px 25px 0;background:#373d3e url('assets/wide-facility.webp') center/cover;filter:saturate(.5)}.about-stamp{position:absolute;bottom:0;right:0;width:190px;height:190px;background:var(--yellow);color:#131616;padding:25px 22px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-3deg)}.about-stamp span{font:900 48px/.81 var(--font-head)}.about-stamp small{font-weight:900;letter-spacing:1.3px;font-size:9px}.about-copy h2 span{color:var(--yellow)}.about-copy>p{font-size:14px;line-height:1.95;color:#bdc1c0;margin-bottom:19px}.about-copy h2{margin-bottom:31px}.signature{color:var(--yellow);font-family:var(--font-head);font-size:22px;font-weight:700;margin:28px 0 35px}.text-link{display:inline-flex;gap:30px;font-size:11px;font-weight:900;letter-spacing:1.4px;border-bottom:1px solid var(--yellow);padding-bottom:10px}.text-link span{color:var(--yellow)}
.faq{background:#f1f0eb}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%}.faq-grid h2{font-size:76px}.faq-grid>div:first-child>p{font-size:14px;color:#686b6a;max-width:300px;line-height:1.85;margin:26px 0}.faq .accordion{border-top:1px solid #cacbc6}.faq details{border-bottom:1px solid #cacbc6;padding:21px 0}.faq summary{font-size:14px;font-weight:800;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:24px;font-weight:400;color:#aa8c35}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:13px;color:#686e6a;line-height:1.8;max-width:550px;margin:15px 40px 1px 0}
.cta{background:var(--yellow);position:relative;overflow:hidden;min-height:390px}.cta-art{position:absolute;font:900 440px/.8 var(--font-head);right:-3%;top:-60px;color:#1a1e1b;opacity:.07;letter-spacing:-22px}.cta-inner{position:relative;z-index:2;padding:65px 0}.cta .eyebrow{color:#111}.cta .eyebrow-line{background:#111}.cta h2{font-size:100px;margin:17px 0}.cta h2 span{color:#fff}.cta p{font-size:14px;margin:0 0 24px}.cta .button{min-height:49px}
.contact{background:#171a1b;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.contact h2{margin-bottom:28px}.contact h2 span{color:var(--yellow)}.contact-grid>div:first-child>p{color:#b7baba;font-size:14px;line-height:1.8;max-width:480px;margin-bottom:27px}.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:29px 20px}.contact-list>div{display:flex;flex-direction:column;gap:8px;min-width:0}.contact-list span{color:var(--yellow);font-size:10px;letter-spacing:1px;font-weight:900}.contact-list strong,.contact-list a{font-size:13px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}.contact-list a:hover{color:var(--yellow)}.map-panel{height:435px;position:relative;overflow:hidden;background:#252b2b;display:flex;align-items:center;justify-content:center}.map-pattern{position:absolute;inset:-30px;opacity:.3;background:repeating-linear-gradient(32deg,transparent 0 56px,#a9af9c 57px,#a9af9c 62px,transparent 63px 110px),repeating-linear-gradient(123deg,transparent 0 75px,#a9af9c 76px,#a9af9c 81px,transparent 82px 155px)}.map-pin{position:absolute;top:19%;left:52%;font:900 97px var(--font-head);color:var(--yellow);text-shadow:0 4px 20px #0006}.map-info{position:relative;z-index:1;background:#111617ee;padding:25px;max-width:320px;width:80%;margin-top:110px;box-shadow:0 12px 25px #0007}.map-info>span{font-size:10px;color:var(--yellow);font-weight:900;letter-spacing:1px}.map-info strong{display:block;font:900 25px var(--font-head);margin-top:9px}.map-info p{color:#aeb1b1;font-size:12px}.map-info .button{min-height:42px;width:100%;padding:12px 15px;font-size:10px}
.footer{background:#0c0e0f;color:#fff}.footer-main{padding:60px 0 45px;display:flex;justify-content:space-between}.footer-main>div:first-child>p{font-size:13px;color:#a0a6a4;margin-top:14px}.footer-links{display:flex;gap:120px}.footer-links>div{display:flex;flex-direction:column;gap:13px}.footer-links strong{font-size:11px;color:var(--yellow);letter-spacing:1.1px;margin-bottom:10px}.footer-links a{font-size:12px;color:#b3b9b7}.footer-links a:hover{color:var(--yellow)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #ffffff20;padding:23px 0;font-size:10px;color:#8b9090;letter-spacing:.65px;font-weight:700}
@media(max-width:1190px){.container{width:min(1120px,calc(100% - 50px))}.nav-links{gap:16px}.nav-links>a:not(.button){font-size:10px}.logo-type>span{font-size:27px}.facility-card{min-height:390px}.hero h1{font-size:clamp(80px,10vw,135px)}.about-grid{gap:6%}.pricing-bottom{flex-direction:column;align-items:start;gap:15px}}
@media(max-width:940px){.nav{height:75px}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;top:75px;left:0;right:0;flex-direction:column;align-items:stretch;background:#111415;padding:25px 35px 30px;border-top:1px solid #fff3;gap:0;box-shadow:0 20px 20px #0004}.nav-links.open{display:flex}.nav-links>a{padding:14px 0}.nav-links .button{margin-top:12px;justify-content:center}.hero{height:645px}.hero-content{padding-top:100px}.hero h1{font-size:110px}.hero-side{display:none}.facility-grid{grid-template-columns:1fr 1fr}.facility-card.feature-main{grid-column:1/-1}.facility-card{min-height:310px}.facility-card.feature-main{min-height:390px}.pricing-grid{grid-template-columns:repeat(2,1fr)}.price-card:last-child{grid-column:1/-1;min-height:450px}.price-card:last-child .price-top p{max-width:none}.about-grid{grid-template-columns:1fr 1fr;gap:5%}.about-visual{height:440px}.about-copy h2{font-size:75px}.about-stamp{width:150px;height:150px}.about-stamp span{font-size:38px}.faq-grid{gap:5%}.contact-grid{gap:4%}.contact h2{font-size:80px}}
@media(max-width:650px){.container{width:calc(100% - 38px)}.topbar{font-size:8px;gap:8px;height:30px;letter-spacing:.4px}.topbar a,.topbar-sep{display:none}.nav{height:68px}.logo-icon{width:37px;height:42px}.logo-type>span{font-size:25px}.logo-type small{font-size:7px}.nav-links{top:68px}.hero{min-height:0;height:auto}.hero-content{padding:80px 0 84px}.hero h1{font-size:clamp(51px,13.7vw,88px);letter-spacing:-1px;margin:23px 0}.hero-content>p{font-size:14px;line-height:1.8}.hero-actions{flex-wrap:wrap}.hero-actions .button{min-height:50px;width:100%;max-width:350px}.hero-note{font-size:8px;letter-spacing:.9px;margin-top:27px}.scroll-indicator{display:none}.trust-band{padding:12px 0}.trust-grid{grid-template-columns:1fr}.trust-item{padding:14px 0;border:0;border-bottom:1px solid #17171744}.trust-item:last-child{border:0}.trust-big{font-size:42px;width:62px}.trust-symbol{font-size:45px;width:62px}.trust-item strong{font-size:10px}.trust-item p{font-size:10px}.section{padding:73px 0}.split-heading{display:block}.section h2,.cta h2{font-size:clamp(61px,13vw,80px)}.split-heading>p{margin-top:22px}.facility-grid{grid-template-columns:1fr}.facility-card.feature-main{grid-column:auto}.facility-card,.facility-card.feature-main{min-height:320px}.facility-footer{display:block;line-height:2}.facility-footer a{display:block;margin-top:10px}.statement{padding:72px 0}.statement h2{font-size:clamp(37px,8vw,55px)}.statement p{font-size:12px}.center-heading h2{font-size:75px}.pricing-grid{grid-template-columns:1fr}.price-card,.price-card:last-child{grid-column:auto;min-height:0}.pricing-bottom{gap:20px}.pricing-bottom a{white-space:normal;line-height:1.6}.about-grid{grid-template-columns:1fr;gap:52px}.about-visual{height:340px}.about-copy h2{font-size:74px}.about-copy>p{font-size:13px}.faq-grid{grid-template-columns:1fr;gap:33px}.faq-grid h2{font-size:clamp(43px,11.3vw,58px)}.faq summary{font-size:13px}.cta{min-height:auto}.cta-inner{padding:66px 0}.cta h2{font-size:78px}.cta-art{font-size:300px;top:30px}.contact-grid{grid-template-columns:1fr;gap:45px}.contact h2{font-size:75px}.contact-list{gap:25px}.map-panel{height:350px}.footer-main{flex-direction:column;gap:35px}.footer-links{gap:75px}.footer-bottom{flex-direction:column;align-items:flex-start;line-height:1.6}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Exact user-provided Spartan branding. Helmet mark in navigation, full barbell logo in the hero. */
.logo-art{display:none;width:57px;height:65px;object-fit:contain;object-position:left center;flex-shrink:0}
.logo.has-brand-art .logo-art{display:block}
.logo.has-brand-art .logo-icon{display:none}
.hero-brand-art{display:none;position:absolute;z-index:2;top:24%;right:8%;width:min(20vw,220px);height:auto;max-height:260px;object-fit:contain;opacity:.72;filter:drop-shadow(0 15px 30px #0008)}
.hero-brand-art.has-brand-art{display:block}
.footer .logo-art{width:62px;height:72px}
@media(max-width:1190px){.hero-brand-art{right:3%;width:140px}}
@media(max-width:900px){.hero-brand-art{display:none!important}}
@media(max-width:650px){.logo-art{width:43px;height:49px}.footer .logo-art{width:48px;height:55px}}

/* Keep oversized decorative graphics from creating horizontal phone scrolling. */
html,body{overflow-x:clip}

/* 2026-11-13: Self-hosted, original uploaded gym photography.
   Preserve entire colorful neon / thegymgeorgetown.com graphic on hero. */
.hero{isolation:isolate}
.hero-image{background-image:linear-gradient(90deg,rgba(4,5,6,.98) 0%,rgba(4,5,6,.93) 35%,rgba(4,5,6,.72) 70%,rgba(4,5,6,.64) 100%),url('assets/hero-colorful-lights.webp');background-position:center,center 40%;filter:saturate(.95) contrast(1.08)}
.hero-content{max-width:none}
.hero-content h1{font-size:clamp(78px,8vw,128px);max-width:700px}
.hero-content>p{max-width:460px}
.hero-showcase{z-index:1;position:absolute;right:max(4%,calc((100vw - 1400px)/2));top:19%;width:min(45.5vw,680px);margin:0;aspect-ratio:3/2;overflow:hidden;border:1px solid #f1c63e75;background:#111;box-shadow:0 0 0 8px #ffffff07,0 35px 72px #000c;transform:rotate(.7deg)}
.hero-showcase img{display:block;width:100%;height:100%;object-fit:contain}
.hero-brand-art{display:none!important}
.gallery{background:#e7e7df;padding-top:95px;padding-bottom:106px}
.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}
.gallery-heading p{font-size:14px;max-width:350px;color:#585e5d;line-height:1.75;margin:0 0 8px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery-photo{display:block;height:225px;position:relative;overflow:hidden;background:#232627;color:#fff}
.gallery-photo.wide{grid-column:span 2}
.gallery-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s;filter:saturate(.95)}
.gallery-photo:hover img{transform:scale(1.05)}
.gallery-photo:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 55%)}
.gallery-photo span{position:absolute;z-index:1;left:18px;bottom:18px;right:18px;display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:10px;letter-spacing:1px;font-weight:900}
.gallery-photo b{color:var(--yellow);font-size:22px;font-weight:400}
@media(max-width:1190px){.hero-content h1{font-size:clamp(73px,7.8vw,108px);max-width:590px}.hero-showcase{right:3%;width:44vw;top:23%}}
@media(max-width:940px){.hero-showcase{right:3%;width:43vw;top:23%}.hero-content h1{font-size:clamp(68px,8.1vw,89px);max-width:470px}.hero-content>p{max-width:365px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-photo.wide{grid-column:span 2}}
@media(max-width:650px){.hero{display:flex;flex-direction:column}.hero-showcase{order:1;position:relative;right:auto;top:auto;left:auto;width:calc(100% - 38px);margin:26px auto 0;transform:none;box-shadow:0 0 0 5px #ffffff07,0 15px 28px #0008}.hero-content{order:2;padding:53px 0 66px}.hero-content h1{font-size:clamp(51px,13.7vw,88px);max-width:100%}.hero-image{background-image:linear-gradient(90deg,#07090ae6,#07090aeb),url('assets/hero-colorful-lights.webp')}.hero-note{margin-top:25px}.gallery{padding:65px 0 70px}.gallery-heading{display:block}.gallery-heading p{margin:19px 0 0}.gallery-grid{grid-template-columns:1fr 1fr;gap:9px}.gallery-photo{height:165px}.gallery-photo.wide{grid-column:span 2;height:216px}.gallery-photo span{bottom:11px;left:11px;right:11px;font-size:9px;letter-spacing:0}.gallery-photo b{font-size:16px}}

/* Gallery full-size preview */
.photo-lightbox[hidden]{display:none!important}
.photo-lightbox{position:fixed;z-index:9999;inset:0;background:rgba(0,0,0,.93);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:65px 22px 28px}
.photo-lightbox-img{max-width:min(1150px,100%);max-height:calc(100vh - 140px);object-fit:contain;border:1px solid #ffffff30;box-shadow:0 20px 80px #000b}
.photo-lightbox-caption{font-size:12px;color:#f2f2ed;letter-spacing:1.5px;font-weight:700;text-align:center}
.photo-lightbox-close{position:absolute;right:24px;top:14px;border:1px solid #aaa;color:#fff;background:#242627;border-radius:50%;font-size:30px;width:45px;height:45px;line-height:1;cursor:pointer}
.photo-lightbox-close:hover,.photo-lightbox-close:focus-visible{background:var(--yellow);color:#101010}
body.lightbox-open{overflow:hidden}
