@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#14202b;--forest:#14202b;--accent:#d5af70;--cream:#faf7f0;--muted:#6e6a64}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1180px,calc(100% - 52px));margin:auto}.announcement{background:#101b26;color:#f5ead6;text-align:center;padding:10px 20px;font-size:10px;letter-spacing:2.2px;font-weight:700}.announcement a{margin-left:30px;color:#e2c58e;letter-spacing:1px}.site-header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 2px 18px #0000000c}.nav-wrap{height:77px;width:min(1280px,calc(100% - 52px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;flex-direction:column;line-height:.92;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-2px}.brand-mark{font-size:30px}.brand-mark span{color:#c39b59}.brand small{font-size:10px;letter-spacing:7px;margin-left:2px;margin-top:5px}.nav-links{display:flex;gap:27px;align-items:center;font-size:12px;font-weight:700}.nav-links>a:not(.nav-cta):hover{color:#b18a4c}.nav-cta{padding:15px 20px;background:#142b3e;color:white}.menu-toggle{display:none;background:none;border:0;font-size:25px}.hero{background:linear-gradient(112deg,#101b26 0%,#20374b 53%,#4d5360 100%);color:white;min-height:660px;position:relative;overflow:hidden}.hero-inner{padding:110px 0 80px;position:relative;z-index:2}.hero h1{font:800 clamp(56px,8.3vw,116px)/.99 Manrope,Arial,sans-serif;letter-spacing:-7px;margin:18px 0 25px}.hero h1 em,.section h2 em{font-style:normal;color:#e2c58e}.hero-copy{max-width:440px;color:#f0e6d8;font-size:17px;line-height:1.7}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:800;color:#a37c40}.eyebrow.light{color:#e2c58e}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:33px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:18px 22px;font-size:11px;letter-spacing:1.2px;font-weight:800;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-light{background:#e2c58e;color:#14202b}.btn-outline{border:1px solid #e2c58e;color:white}.btn-dark{background:#14202b;color:#fff}.btn-border{border:1px solid #14202b;color:#14202b}.hero-bottom{display:flex;align-items:center;gap:17px;margin-top:100px;color:#d5af70;font-size:10px;letter-spacing:3px}.hero-bottom i{width:24px;height:1px;background:#d5af70}.hero-side{position:absolute;right:18px;top:43%;writing-mode:vertical-rl;font-size:10px;letter-spacing:3px;color:#e6d3b2}.hero-art{position:absolute;inset:0;overflow:hidden}.orb{position:absolute;border:1px solid #ffffff20;border-radius:50%}.orb-a{width:720px;height:720px;right:-160px;top:-140px;background:radial-gradient(circle at 42% 42%,#d5af7030,transparent 65%)}.orb-b{width:480px;height:480px;right:60px;top:140px;border:70px solid #d5af7010}.hero-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,#ffffff08 50%,transparent 50.1%);background-size:130px 100%}.section{padding:110px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:40px}.section h2{font:800 clamp(36px,5vw,65px)/1.12 Manrope,sans-serif;letter-spacing:-3px;margin:15px 0}.section-heading>p{max-width:360px;color:var(--muted);line-height:1.8}.two-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.feature-card{height:480px;position:relative;overflow:hidden;background:#14202b}.feature-photo{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .4s}.feature-card:hover .feature-photo{transform:scale(1.04)}.fitness-photo,.fitness-large{background-image:linear-gradient(0deg,#101b26ba,#101b261a 70%),url('https://images.unsplash.com/photo-1518611012118-696072aa579a?w=1200&q=85')}.event-photo,.event-large{background-image:linear-gradient(0deg,#101b26c4,#101b261a 70%),url('https://images.unsplash.com/photo-1511795409834-ef04bbd61622?w=1200&q=85')}.feature-overlay{position:absolute;inset:0;padding:35px;color:white;display:flex;flex-direction:column;align-items:flex-start;justify-content:end}.pill{border:1px solid #ffffff99;padding:8px 12px;font-size:10px;letter-spacing:2px}.feature-overlay h3{font:800 clamp(35px,4vw,57px)/1.05 Manrope,sans-serif;letter-spacing:-2px;margin:20px 0 8px}.feature-overlay p{max-width:330px;line-height:1.6;color:#f5ecdd}.round-arrow{position:absolute;bottom:35px;right:35px;width:49px;height:49px;border:1px solid white;border-radius:50%;display:grid;place-items:center;font-size:22px}.fitness-section{background:#f3ede3}.event-section{background:#fff}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split-copy>p:not(.eyebrow):not(.tiny){line-height:1.9;color:#625f5a;max-width:500px}.split-image{min-height:530px;background-size:cover;background-position:center;position:relative}.fitness-large{background-position:center}.event-large{background-position:center}.photo-label{position:absolute;bottom:20px;left:20px;right:20px;background:#fff;padding:18px 20px;font-size:11px;letter-spacing:1.3px;font-weight:800;display:flex;justify-content:space-between}.line-list{margin:25px 0 30px;border-top:1px solid #d4c5ac}.line-list span{display:block;border-bottom:1px solid #d4c5ac;padding:12px 0;font-size:13px;font-weight:700}.tiny{font-size:12px;color:#756e63;margin-top:20px}.tiny a{text-decoration:underline}.experiences{background:#f6f0e5}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.experience-item{background:white;padding:36px 30px;min-height:220px}.experience-item span{font-size:11px;color:#ad874a;font-weight:800}.experience-item h3{font:800 23px Manrope,sans-serif;letter-spacing:-1px;margin-top:35px}.experience-item p{font-size:13px;line-height:1.7;color:#726b60}.text-link{display:inline-block;margin-top:35px;font-size:12px;letter-spacing:1px;font-weight:800;border-bottom:1px solid;padding-bottom:8px}.founder{background:#14202b;color:white}.founder-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center}.founder-art{height:430px;position:relative;background:radial-gradient(circle at 55% 48%,#b38d56 0%,#2e4557 40%,#101b26 80%);display:grid;place-items:center;overflow:hidden}.big-one{font:800 400px/.8 Manrope,sans-serif;color:#e2c58e54;letter-spacing:-30px}.founder-caption{position:absolute;bottom:25px;left:25px;font-size:10px;letter-spacing:2px}.founder-copy p:not(.eyebrow){line-height:1.9;color:#e9dfd0}.founder-copy .btn{margin-top:20px}.contact{text-align:center}.contact-inner{max-width:750px}.contact h2{font-size:clamp(48px,6vw,80px)}.contact p:not(.eyebrow){color:#70685e;line-height:1.8}.centered{justify-content:center}footer{background:#101b26;color:white;padding:40px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#e0cfb3}.footer-brand{color:white}#backToTop{position:fixed;right:22px;bottom:22px;z-index:80;border:0;background:#142b3e;color:white;width:49px;height:49px;border-radius:50%;font-size:24px;cursor:pointer;box-shadow:0 8px 24px #0003;opacity:0;pointer-events:none;transition:opacity .2s}#backToTop.visible{opacity:1;pointer-events:auto}@media(max-width:900px){.nav-links{gap:13px}.nav-links a{font-size:11px}.nav-cta{padding:12px}.hero h1{letter-spacing:-4px}.split-grid{gap:5%}.footer-inner{flex-wrap:wrap}}@media(max-width:700px){.container,.nav-wrap{width:calc(100% - 36px)}.announcement{font-size:8px;line-height:1.8}.announcement a{display:block;margin:0}.nav-wrap{height:68px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:white;padding:20px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 12px 15px #0002}.nav-links.open{display:flex}.nav-links a{padding:13px;font-size:14px}.nav-cta{text-align:center}.hero{min-height:610px}.hero-inner{padding:90px 0 55px}.hero h1{font-size:clamp(45px,12vw,75px);letter-spacing:-3px}.hero-copy{font-size:15px}.hero-bottom{margin-top:70px;font-size:8px;gap:10px}.hero-side{display:none}.section{padding:75px 0}.section-heading{display:block}.section-heading>p{margin-top:18px}.section h2{letter-spacing:-2px}.two-cards,.split-grid,.founder-grid,.experience-grid{grid-template-columns:1fr}.feature-card{height:410px}.split-image{min-height:390px}.split-grid{gap:35px}.event-section .split-image{order:2}.founder-art{height:280px}.big-one{font-size:290px}.footer-inner{flex-direction:column;align-items:flex-start}.btn{font-size:10px;padding:16px}.contact h2{font-size:44px}}

/* Authentic 1StepEvents photography and new booking sections */
.brand-logo{height:54px;width:176px;object-fit:contain;object-position:left center}.footer-brand .brand-logo{background:white;padding:4px;border-radius:2px}.nav-links{gap:17px}.nav-links>a{white-space:nowrap}.hero{background:linear-gradient(90deg,#101b26 0%,#14283de8 45%,#14283d8c 100%),url('assets/event_table.webp') center 45%/cover}.hero-art{opacity:.25}.fitness-photo,.fitness-large{background-image:linear-gradient(0deg,#101b26bb,#101b2620 70%),url('assets/fitness_people.webp')}.event-photo,.event-large{background-image:linear-gradient(0deg,#101b26bb,#101b2620 70%),url('assets/red_wide.webp')}.founder-art{background:#263747}.founder-art img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}.booking-photo img{width:100%;height:100%;min-height:410px;object-fit:cover}.booking-panel{background:white;padding:clamp(30px,5vw,70px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.booking-panel h3,.upcoming-copy h3{font:800 clamp(30px,4vw,48px)/1.12 Manrope,sans-serif;letter-spacing:-2px;margin:15px 0}.booking-panel>p:not(.eyebrow),.upcoming-copy>p:not(.eyebrow){line-height:1.8;color:#625f5a}.schedule-section{background:#f3ede3}.membership-section{background:#fff}.purchase-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.purchase-card{padding:45px;background:#f6f0e5;min-height:275px}.purchase-card h3{font:800 31px Manrope,sans-serif;letter-spacing:-1px}.purchase-card p{color:#625f5a;line-height:1.8}.gallery-section{background:#f7f1e7}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.gallery-grid img{width:100%;height:320px;object-fit:cover}.gallery-grid img:first-child{grid-column:span 2}.upcoming-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:7%;align-items:center}.poster-frame{background:#e9dfce;padding:15px}.poster-placeholder{min-height:340px;background:linear-gradient(135deg,#162739,#35475a);border:1px solid #d5af70;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#e2c58e;gap:20px;padding:30px}.poster-placeholder span{font-size:11px;letter-spacing:3px}.poster-placeholder strong{font:800 38px Manrope,sans-serif}.poster-placeholder small{color:#f0e6d8}.vagaro-slot{width:100%}.vagaro-slot:not([hidden]){margin-top:25px}.experiences{background:#f6f0e5}@media(max-width:1050px){.nav-links{gap:9px}.nav-links a{font-size:10px}.brand-logo{width:140px}}@media(max-width:700px){.booking-layout,.purchase-grid,.upcoming-layout{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img{height:230px}.gallery-grid img:first-child{grid-column:span 2}.booking-photo img{min-height:270px;max-height:380px}.brand-logo{height:50px;width:145px}.hero{background-position:58% center}.hero h1{font-size:clamp(42px,11vw,75px)}.founder-art{height:430px}.poster-placeholder{min-height:290px}}

/* Vagaro popup booking trigger */
.vagaro-widget-wrap { margin-top: 1.25rem; text-align:center; }
.vagaro-widget-wrap .vagaro { max-width:100%; }
.vagaro-widget-wrap iframe { max-width:100%; }

/* Shavon-approved fitness photography update */
.fitness-photo{background-image:linear-gradient(0deg,#101b26bb,#101b2620 70%),url("assets/fitness_class.webp");background-position:center 47%}
.fitness-large{background-image:linear-gradient(0deg,#101b26bb,#101b2610 70%),url("assets/fitness_strength.webp");background-position:center 43%}

.fitness-training-photo{width:100%;max-width:430px;margin:22px 0 8px;overflow:hidden;border-radius:3px}.fitness-training-photo img{display:block;width:100%;height:190px;object-fit:cover;object-position:center 45%}@media(max-width:700px){.fitness-training-photo img{height:210px}}

/* Upcoming event posters */
.upcoming-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.upcoming-event-card{background:#fff;box-shadow:0 10px 30px #14202b0b;overflow:hidden}.event-poster-link{display:block;background:#efe9df;padding:15px;text-align:center}.event-poster-link img{display:block;width:100%;height:auto;max-height:590px;object-fit:contain;margin:auto}.event-poster-link:hover img{filter:brightness(.97)}.upcoming-event-info{padding:27px 30px 32px}.upcoming-event-info h3{font:800 clamp(22px,2.7vw,31px)/1.2 Manrope,Arial,sans-serif;letter-spacing:-1px;margin:12px 0}.upcoming-event-info p:not(.eyebrow){line-height:1.65;color:#625f5a}.upcoming-event-info .event-date{font-weight:800;color:#14202b!important}.upcoming-event-info .btn{margin-top:12px}@media(max-width:700px){.upcoming-events-grid{grid-template-columns:1fr}.event-poster-link img{max-height:none}.upcoming-event-info{padding:24px}}
