:root{--paper:#EAE8E1;--paper-deep:#DEDBD1;--ink:#16140F;--ink-soft:#57534A;--gold:#D89B1D;--gold-deep:#B37E14;--rust:#A6391A;--bone:#EAE8E1;--bone-dim:#A8A49A;--rule:3px solid var(--ink);--display:"Big Shoulders Display",Impact,"Arial Narrow",sans-serif;--body:"Archivo","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono","Courier New",monospace;--pad:clamp(1.25rem,4vw,4rem)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--body);background:var(--paper);color:var(--ink);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:3px solid var(--rust);outline-offset:3px}section{scroll-margin-top:5.5rem}::selection{background:var(--gold);color:var(--ink)}.display{font-family:var(--display);font-weight:800;text-transform:uppercase;line-height:.88;letter-spacing:.005em}.eyebrow{font-family:var(--mono);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em}.eyebrow .star{color:var(--rust)}.btn{display:inline-block;font-family:var(--mono);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;text-decoration:none;padding:1rem 1.75rem;border:var(--rule);position:relative;transition:transform .15s ease,box-shadow .15s ease;cursor:pointer}.btn-ink{background:var(--ink);color:var(--paper)}.btn-paper{background:var(--paper);color:var(--ink)}.btn-gold{background:var(--gold);color:var(--ink)}.btn:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--gold)}.on-gold .btn:hover{box-shadow:6px 6px 0 var(--paper)}.on-ink .btn:hover{box-shadow:6px 6px 0 var(--gold)}.btn:active{transform:translate(0);box-shadow:2px 2px 0 var(--gold)}.duo{position:relative;overflow:hidden;border:var(--rule);background:var(--ink)}.duo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.15) brightness(.92);mix-blend-mode:luminosity}.duo:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(160deg,#d89b1d6b,#16140f8c);mix-blend-mode:multiply;pointer-events:none}.duo:after{content:"";position:absolute;inset:0;z-index:2;background-image:radial-gradient(rgba(22,20,15,.5) 1px,transparent 1.4px);background-size:5px 5px;mix-blend-mode:overlay;pointer-events:none}header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:var(--rule)}.header-in{max-width:82rem;margin:0 auto;padding:.75rem var(--pad);display:flex;align-items:center;justify-content:space-between;gap:1rem}.wordmark{display:flex;flex-direction:column;text-decoration:none;line-height:1}.wordmark .big{font-family:var(--display);font-weight:800;font-size:1.9rem;text-transform:uppercase;letter-spacing:.01em}.wordmark .small{font-family:var(--mono);font-size:.5625rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-soft);margin-top:.2rem}nav.primary{display:flex;align-items:center;gap:1.5rem}nav.primary a.navlink{font-family:var(--mono);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;padding:.25rem 0;border-bottom:2px solid transparent}nav.primary a.navlink:hover{border-bottom-color:var(--gold)}.nav-cta{padding:.65rem 1.1rem}@media (max-width:60rem){nav.primary a.navlink{display:none}}.hero{border-bottom:var(--rule)}.hero-in{max-width:82rem;margin:0 auto;padding:clamp(3rem,7vw,6rem) var(--pad) clamp(3rem,6vw,5rem);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:center}.hero h1{font-size:clamp(3.4rem,9.5vw,8.5rem)}.hero h1 .line{display:block;overflow:hidden}.hero h1 .line>span{display:block;transform:translateY(112%);animation:rise .7s cubic-bezier(.2,.7,.2,1) forwards}.hero h1 .line:nth-child(1)>span{animation-delay:.08s}.hero h1 .line:nth-child(2)>span{animation-delay:.19s}.hero h1 .line:nth-child(3)>span{animation-delay:.3s}@keyframes rise{to{transform:translateY(0)}}.hero h1 .hit{background:var(--gold);padding:0 .08em;box-decoration-break:clone}.hero-copy{max-width:34rem;margin-top:1.75rem;font-size:1.125rem;color:var(--ink-soft)}.hero-copy strong{color:var(--ink)}.hero-fade{opacity:0;animation:fade-up .6s ease .55s forwards}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hero-ctas{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.25rem}.hero-proof{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:2.5rem}.hero-proof .item{font-family:var(--mono);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.hero-proof .item b{color:var(--rust)}.hero-photo{position:relative}.hero-photo .duo{aspect-ratio:4/5;box-shadow:10px 10px 0 var(--gold)}.hero-tag{position:absolute;top:-1rem;left:-1rem;z-index:3;background:var(--paper);border:var(--rule);font-family:var(--mono);font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.6rem .9rem;transform:rotate(-2deg)}@media (max-width:60rem){.hero-in{grid-template-columns:1fr}.hero-photo{order:-1;max-width:26rem}.hero-photo .duo{aspect-ratio:16/10}.hero-tag{left:auto;right:-.5rem}}.marquee{background:var(--ink);color:var(--gold);border-bottom:var(--rule);overflow:hidden;white-space:nowrap;padding:.8rem 0}.marquee .track{display:inline-block;animation:slide 28s linear infinite}.marquee span{font-family:var(--display);font-weight:700;font-size:1.35rem;text-transform:uppercase;letter-spacing:.06em;padding:0 .35em}.marquee .dot{color:var(--paper)}@keyframes slide{0%{transform:translate(0)}to{transform:translate(-50%)}}.sec{border-bottom:var(--rule)}.sec-in{max-width:82rem;margin:0 auto;padding:clamp(3.5rem,7vw,6.5rem) var(--pad)}.sec-head{margin-bottom:clamp(2rem,4vw,3.5rem)}.sec-head .eyebrow{display:block;margin-bottom:1rem}.sec-head h2{font-size:clamp(2.75rem,6.5vw,5.5rem)}.sec-ink{background:var(--ink);color:var(--bone)}.sec-ink .eyebrow{color:var(--gold)}.sec-gold{background:var(--gold)}.sec-gold .eyebrow{color:var(--ink)}.rev{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.rev.in{opacity:1;transform:none}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:var(--ink);border:var(--rule)}.why-grid .cell{background:var(--paper);padding:clamp(1.5rem,3vw,2.5rem)}.why-grid h3{font-family:var(--display);font-weight:700;font-size:clamp(1.6rem,2.6vw,2.3rem);text-transform:uppercase;line-height:.95;margin-bottom:.9rem}.why-grid p{color:var(--ink-soft);max-width:32rem}.why-grid .cell .eyebrow{display:block;color:var(--rust);margin-bottom:1.1rem}@media (max-width:48rem){.why-grid{grid-template-columns:1fr}}.floor-in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:start}.floor-list{list-style:none;border-top:3px solid var(--bone)}.floor-list li{border-bottom:3px solid var(--bone);padding:1.4rem 0;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1.5rem}.floor-list .what{font-family:var(--display);font-weight:700;font-size:clamp(1.7rem,3.4vw,2.9rem);text-transform:uppercase;line-height:.95}.floor-list .note{font-family:var(--mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--bone-dim)}.floor-list li:hover .what{color:var(--gold)}.floor-photo{display:flex;flex-direction:column;gap:1.5rem}.floor-photo .duo{aspect-ratio:4/3;border-color:var(--bone);box-shadow:10px 10px 0 var(--gold)}@media (max-width:60rem){.floor-in{grid-template-columns:1fr}}.studio-banner{margin-bottom:1.5rem}.studio-banner .duo{aspect-ratio:21/8;box-shadow:10px 10px 0 var(--gold)}.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.svc{border:var(--rule);background:var(--paper);padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:.9rem;transition:transform .15s ease,box-shadow .15s ease}.svc:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--gold)}.svc .eyebrow{color:var(--ink-soft)}.svc h3{font-family:var(--display);font-weight:700;font-size:1.9rem;text-transform:uppercase;line-height:.95}.svc p{color:var(--ink-soft);font-size:.9375rem;flex-grow:1}.svc .perk{font-family:var(--mono);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rust)}@media (max-width:64rem){.svc-grid{grid-template-columns:1fr 1fr}.studio-banner .duo{aspect-ratio:16/7}}@media (max-width:36rem){.svc-grid{grid-template-columns:1fr}}.mem-lede{max-width:38rem;font-size:1.125rem;font-weight:500;margin-top:-1.5rem;margin-bottom:3rem}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3.5rem}.plan{background:var(--paper);border:var(--rule);padding:2rem 1.75rem;position:relative;display:flex;flex-direction:column;gap:1rem;box-shadow:8px 8px 0 var(--ink)}.plan .name{font-family:var(--mono);font-size:.8125rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.plan .price{font-family:var(--display);font-weight:800;font-size:clamp(3.6rem,5vw,5rem);line-height:.85;text-transform:uppercase}.plan .price small{font-family:var(--mono);font-size:.8rem;font-weight:600;letter-spacing:.1em}.plan ul{list-style:none;color:var(--ink-soft);font-size:.9375rem;flex-grow:1}.plan ul li{padding:.45rem 0;border-top:1px solid var(--paper-deep)}.plan ul li:first-child{border-top:none}.plan .flag{position:absolute;top:-.9rem;right:1rem;background:var(--rust);color:var(--paper);font-family:var(--mono);font-size:.625rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.35rem .6rem;transform:rotate(2deg)}.mem-note{font-family:var(--display);font-weight:700;font-size:clamp(1.8rem,3.6vw,3rem);text-transform:uppercase;line-height:.95;max-width:46rem;margin-bottom:3rem}.mem-note .u{box-shadow:inset 0 -.18em 0 var(--paper)}.rates{max-width:46rem;border-top:3px solid var(--ink)}.rates caption{text-align:left;font-family:var(--mono);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:1.1rem 0 .7rem}.rates{width:100%;border-collapse:collapse}.rates td{font-family:var(--mono);font-size:.875rem;padding:.65rem 0;border-bottom:1px solid rgba(22,20,15,.35)}.rates td:last-child{text-align:right;font-weight:600}.mem-cta{margin-top:3rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.mem-cta .hint{font-family:var(--mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}@media (max-width:60rem){.plan-grid{grid-template-columns:1fr;max-width:26rem}}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:var(--ink);border:var(--rule)}.quote{background:var(--paper);padding:clamp(1.75rem,3.5vw,2.75rem);display:flex;flex-direction:column;gap:1.25rem}.quote blockquote{font-size:clamp(1.05rem,1.6vw,1.25rem);font-weight:500;line-height:1.5}.quote blockquote:before{content:"“";display:block;font-family:var(--display);font-weight:800;font-size:4rem;line-height:.5;color:var(--gold);margin-bottom:.75rem}.quote figcaption{font-family:var(--mono);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-top:auto}.quote figcaption .tag{color:var(--rust);display:block;margin-top:.3rem;font-weight:500}@media (max-width:48rem){.quote-grid{grid-template-columns:1fr}}.visit-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2.5rem,5vw,5rem)}.visit h2{font-size:clamp(2.75rem,6.5vw,5rem);margin-bottom:2rem}.visit address{font-style:normal;font-size:1.125rem;line-height:1.7;margin-bottom:1.5rem}.visit .phone{display:inline-block;font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,4.5vw,3.6rem);text-transform:uppercase;line-height:1;color:var(--gold);text-decoration:none;margin-bottom:1.75rem}.visit .phone:hover{color:var(--paper)}.visit-links{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:2.75rem}.visit-links a{font-family:var(--mono);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--bone);text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:.2rem}.visit-links a:hover{color:var(--gold)}.hours{width:100%;max-width:26rem;border-collapse:collapse;border-top:3px solid var(--bone)}.hours caption{text-align:left;font-family:var(--mono);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding:1.1rem 0 .7rem}.hours td{font-family:var(--mono);font-size:.875rem;padding:.6rem 0;border-bottom:1px solid rgba(234,232,225,.25);color:var(--bone-dim)}.hours td:last-child{text-align:right}.hours tr.today td{color:var(--gold);font-weight:600}.hours tr.today td:first-child:after{content:" · today";font-size:.6875rem;letter-spacing:.08em}.map-wrap{border:3px solid var(--bone);margin-bottom:2.5rem;background:var(--paper)}.map-wrap iframe{display:block;width:100%;height:19rem;border:0;filter:grayscale(1) contrast(1.05)}.cform{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.cform .full{grid-column:1/-1}.cform label{display:block;font-family:var(--mono);font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-dim);margin-bottom:.5rem}.cform input,.cform textarea{width:100%;background:transparent;border:2px solid var(--bone);color:var(--bone);font-family:var(--body);font-size:1rem;padding:.8rem .9rem;border-radius:0}.cform input:focus,.cform textarea:focus{outline:3px solid var(--gold);outline-offset:0;border-color:var(--gold)}.cform textarea{min-height:8rem;resize:vertical}.cform .send-row{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem}.cform .fallback{font-family:var(--mono);font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--bone-dim)}.cform .fallback a{color:var(--bone)}@media (max-width:60rem){.visit-in{grid-template-columns:1fr}}@media (max-width:36rem){.cform{grid-template-columns:1fr}}footer{background:var(--ink);color:var(--bone-dim);border-top:6px solid var(--gold)}.foot-in{max-width:82rem;margin:0 auto;padding:2.25rem var(--pad);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}.foot-in .mark{font-family:var(--display);font-weight:800;font-size:1.4rem;text-transform:uppercase;color:var(--bone)}.foot-in p{font-family:var(--mono);font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase}.foot-in a{color:var(--bone)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee .track{animation:none}.hero h1 .line>span{transform:none;animation:none}.hero-fade{opacity:1;transform:none;animation:none}.rev{opacity:1;transform:none;transition:none}.btn,.svc{transition:none}}
