/* Home page (/home): builds on strong-start.css and membership.css */
.hero .heroimg{background-image:url(https://ewwnulfrrhwqszbzaqsr.supabase.co/storage/v1/object/public/site/home/gym-floor.jpg);background-position:center 60%}
.hero h1.vh1{font-size:clamp(40px,6.4vw,92px);line-height:1;text-transform:none;letter-spacing:-.02em;font-weight:600}
.top nav{gap:20px}
@media (max-width:1100px){.top nav a:not(.pill){display:none}}
.ways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(249,249,248,.14);border:1px solid rgba(249,249,248,.14)}
.way{background:var(--ink);color:var(--bg);text-decoration:none;padding:30px 26px;display:flex;flex-direction:column;gap:8px;min-width:0;transition:background .15s}
.way:hover{background:#2c2e2e}
.way p{color:rgba(249,249,248,.72);font-size:15px}
.way .num{color:rgba(249,249,248,.5)}
.way.lead{background:var(--bg);color:var(--ink)} .way.lead p{color:var(--muted)} .way.lead .num{color:var(--muted)}
.go{margin-top:auto;padding-top:10px;font:600 12px var(--head);letter-spacing:.16em;text-transform:uppercase}
.go::after{content:" \2192"}
@media (max-width:900px){.ways{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.ways{grid-template-columns:minmax(0,1fr)}}
.progs{background:var(--bg)}
.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pcard2{border:1px solid var(--line);background:var(--white);padding:28px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink);min-width:0;transition:border-color .15s}
.pcard2:hover{border-color:var(--ink)}
.pcard2 .when{font:600 12px var(--head);letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.pcard2 p{color:var(--muted);font-size:15px}
.pcard2.hot{background:var(--ink);color:var(--bg);border-color:var(--ink)} .pcard2.hot p,.pcard2.hot .when{color:rgba(249,249,248,.72)}
@media (max-width:900px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pgrid{grid-template-columns:minmax(0,1fr)}}
a.tier3.lnk{text-decoration:none}
.say{background:var(--bg)}
.cgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:repeat(2,minmax(0,280px));gap:12px}
.cgrid figure,.sgrid figure{margin:0;position:relative;overflow:hidden;background:#111;min-width:0}
.cgrid img,.sgrid img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.05);transition:filter .4s}
.cgrid figure:hover img,.sgrid figure:hover img{filter:none}
.cgrid figure.big{grid-row:span 2}
.cgrid figcaption,.sgrid figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.78));font:600 12px var(--head);letter-spacing:.16em;text-transform:uppercase;color:var(--bg)}
@media (max-width:820px){.cgrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:220px}.cgrid figure.big{grid-column:span 2;grid-row:span 1}}
.space{background:var(--bg)}
.sgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:260px;gap:12px}
@media (max-width:900px){.sgrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:200px}}
.hours table{width:100%;border-collapse:collapse;font-size:17px}
.hours td{padding:16px 0;border-bottom:1px solid rgba(249,249,248,.16)}
.hours td:last-child{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.phone{margin-top:22px;font:500 20px var(--head)}
.merch{background:var(--bg)}
.mgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mgrid img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;filter:grayscale(1);max-width:100%}
