/* Vres Fitness: discovery-first layout. */
:root{--radius:18px}
header[data-discovery-header]{min-height:88px;gap:24px;padding-block:18px}
[data-discovery-header]>a:first-child{color:var(--brand);font-size:28px}
[data-header-search]{display:flex;align-items:center;gap:22px;margin-inline:auto;padding:10px 10px 10px 24px;border:1px solid var(--line);border-radius:99px;box-shadow:0 3px 9px #2421320c;font-size:13px;font-weight:650;transition:box-shadow .2s}
[data-header-search]:hover{box-shadow:0 4px 14px #24213218}
[data-header-search]>span+span{border-left:1px solid var(--line);padding-left:22px;color:var(--muted);font-weight:450}
[data-header-search] b{display:grid;place-items:center;border-radius:50%;height:34px;width:34px;margin:0;background:var(--action);color:#fff;font-size:24px;line-height:1}
[data-header-actions]{display:flex;align-items:center;gap:18px}
[data-header-actions]>a{font-size:13px;font-weight:650}
#theme-toggle{border-radius:99px;background:var(--surface);padding:10px 14px}
main{max-width:1440px}
[data-category-bar]{border-bottom:1px solid var(--line);background:var(--paper)}
[data-category-links]{max-width:1440px;margin:auto;padding:0 48px;display:flex;justify-content:space-between;gap:28px;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-inline:contain}
[data-category-links]>a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-height:94px;padding:14px 0 12px;border-bottom:2px solid transparent;font-size:11px;font-weight:650;color:var(--muted);white-space:nowrap}
[data-category-links]>a>span{font-size:29px;line-height:1.1;color:var(--muted)}
[data-category-links]>a:hover,[data-category-links]>a[aria-current]{color:var(--ink);border-bottom-color:var(--brand)}
[data-category-links]>a:hover>span,[data-category-links]>a[aria-current]>span{color:var(--brand)}
#hero{display:block;text-align:center;padding-block:44px 30px}
#hero>div{max-width:800px;margin:auto}
#hero p[data-eyebrow]{margin-bottom:12px;font-size:10px}
#hero h1{font-size:clamp(34px,4.5vw,56px);letter-spacing:-2px;margin-bottom:16px}
#hero h1 br{display:none}
#hero h1 br::after{content:' '}
#hero>div>p:not([data-eyebrow]){max-width:600px;margin-inline:auto;font-size:15px}
#search{max-width:740px;margin:26px auto 12px;border-radius:99px;padding:8px 8px 8px 18px;text-align:left;box-shadow:0 6px 24px #2421320a;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:0}
#search label{padding:8px 16px}
#search label+label{border-left:1px solid var(--line)}
#search button{border-radius:99px;padding:18px 22px}
#categories{border:0;padding-block:8px 0}
#categories>h2{font-size:18px;letter-spacing:-.4px;margin-bottom:8px}
#categories [data-category-links]{padding-inline:0}
#home-venues{padding-block:32px 48px}
[data-discovery-heading]{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}
[data-discovery-heading] h2{font-size:26px;letter-spacing:-.7px;margin-bottom:8px}
[data-discovery-heading] p[data-eyebrow]{margin-bottom:8px;font-size:10px}
[data-discovery-heading] p:last-child{font-size:14px;color:var(--muted);margin:0}
[data-discovery-heading]>a{font-size:13px;font-weight:650;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
[data-venue-grid],#listing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px}
#listing-grid article,[data-venue-card]{border:0;border-radius:0;background:transparent;min-width:0;overflow:visible}
[data-venue-image]{display:block;position:relative;aspect-ratio:1.05;background-image:url('/assets/images/hero-fitness.jpg');background-size:200% auto;background-position:var(--photo-position);border-radius:var(--radius);overflow:hidden;transition:filter .2s}
[data-venue-image]:hover{filter:brightness(1.04)}
[data-venue-badge]{position:absolute;left:12px;top:12px;padding:7px 10px;background:#fff;color:#242132;border-radius:99px;font-size:10px;font-weight:750;box-shadow:0 2px 6px #00000012}
[data-venue-image-note]{position:absolute;bottom:10px;right:12px;font-size:9px;padding:4px 7px;color:#fff;background:#24213299;border-radius:5px}
[data-venue-info]{padding-top:14px}
[data-venue-info] h3{font-size:15px;letter-spacing:-.2px;line-height:1.4;margin-bottom:4px}
[data-venue-info] p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}
[data-venue-more]{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:650;margin-top:9px}
[data-venue-more]:hover{color:var(--brand)}
[data-directory] #directory-intro{padding-block:26px 20px}
#directory-intro h1{font-size:30px;letter-spacing:-1px;margin-bottom:10px}
#directory-intro>p:not([data-eyebrow]){max-width:none;font-size:13px}
#directory-intro p[data-preview]{padding:0;background:transparent;color:var(--muted);font-size:11px}
#directory-filters{padding:18px 20px;border-radius:16px;margin-bottom:24px}
#directory-filters h2{font-size:16px}
#directory-filters form{margin-top:14px}
#directory-filters label{background:var(--paper);border-radius:10px}
#directory-filters button{border-radius:99px}
[data-results-toolbar] h2{font-size:22px;letter-spacing:-.5px}
[data-results-toolbar] p[data-eyebrow]{font-size:10px;margin-bottom:5px}
[data-view-switch]{border-radius:99px;background:var(--surface)}
[data-view-switch] a{border-radius:99px;padding:9px 16px}
#directory-map{border-radius:20px}
[data-map-preview]{height:460px}
#how{padding-block:40px;gap:36px}
#how h2{font-size:30px}
#how h3{font-size:17px}
#how ol p{font-size:13px}
#closing{padding:36px 20px;background:var(--brand-soft);color:var(--ink);margin-bottom:40px}
#closing p[data-eyebrow]{color:var(--brand)}
#closing h2{font-size:30px}
#closing a{border-radius:99px;font-size:13px;padding:13px 20px}
#site-footer{background:var(--brand-soft)}
@media(min-width:1000px){header[data-discovery-header]{padding-inline:max(48px,calc((100% - 1344px)/2))}#site-footer [data-footer-grid],#site-footer [data-footer-bottom]{max-width:1344px}}
@media(max-width:1100px){[data-venue-grid],#listing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}[data-category-links]{gap:24px}}
@media(max-width:799px){[data-header-actions]>a{display:none}[data-header-search]{gap:12px;padding-left:18px}[data-header-search]>span+span{display:none}[data-category-links]{padding-inline:22px;gap:26px}[data-venue-grid],#listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#search{border-radius:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:10px}#search button{grid-column:1/-1;padding:13px;margin-top:4px}#hero{padding-top:32px}[data-map-preview]{height:360px}}
@media(max-width:539px){header[data-discovery-header]{gap:12px;padding-block:16px}header[data-discovery-header]>a:first-child{font-size:24px}[data-header-search]{order:3;width:100%;margin:0;justify-content:space-between;padding:8px 8px 8px 18px}[data-header-search]>span+span{display:block;border:0;padding:0;font-size:12px}[data-header-actions]{margin-left:auto}#hero h1{font-size:34px;letter-spacing:-1.3px}#hero>div>p:not([data-eyebrow]){font-size:14px}#hero small{font-size:10px}#search label{padding-inline:8px}#search input,#search select{font-size:13px}[data-discovery-heading]{align-items:flex-start;flex-direction:column;gap:12px}[data-discovery-heading] h2{font-size:23px}[data-venue-grid],#listing-grid{gap:24px 14px}[data-venue-badge]{left:8px;top:8px;font-size:8px;padding:5px 7px}[data-venue-info] h3{font-size:14px}[data-venue-info] p{font-size:12px}[data-venue-more]{font-size:11px}[data-venue-image]{border-radius:14px}#directory-intro h1{font-size:27px}[data-category-links]>a{min-height:86px;font-size:10px}#directory-filters{padding:16px}#how h2,#closing h2{font-size:26px}}
@media(max-width:359px){[data-venue-grid],#listing-grid{grid-template-columns:minmax(0,1fr)}[data-header-search]>span+span{display:none}}
@media(prefers-reduced-motion:reduce){[data-header-search],[data-venue-image]{transition:none}}
@media(min-width:360px) and (max-width:649px){#directory-filters form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#directory-filters button{grid-column:1/-1}#directory-filters label{font-size:10px;padding:9px}#directory-filters input,#directory-filters select{font-size:12px}}

/* Partner enquiries */
[data-partners]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:70px;padding-block:48px 64px;align-items:start}
[data-partner-intro]{padding:12px 0}
[data-partner-intro] h1{font-size:clamp(32px,4vw,48px);letter-spacing:-1.6px;line-height:1.15}
[data-partner-intro]>p:not([data-eyebrow]){font-size:16px;color:var(--muted);max-width:460px}
[data-partner-explainer]{margin-top:32px;padding:24px;border-radius:18px;background:var(--brand-soft)}
[data-partner-explainer] h2{font-size:20px;letter-spacing:-.4px}
[data-partner-explainer] p{font-size:14px;color:var(--muted);margin:0}
#partner-form{padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}
#partner-form>h2{font-size:24px;letter-spacing:-.5px;margin-bottom:10px}
#partner-form form{display:flex;flex-direction:column;gap:22px;padding:0;margin:24px 0 0;border:0;border-radius:0;background:transparent}
#partner-form fieldset{min-width:0;margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#partner-form legend{font-size:15px;font-weight:750;margin-bottom:14px;padding:0}
#partner-form label{padding:0;border:0;font-size:12px;line-height:1.5;gap:7px}
#partner-form input:not([type=checkbox]):not([type=hidden]),#partner-form textarea{font:inherit;font-size:14px;color:var(--ink);width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);min-height:46px}
#partner-form textarea{resize:vertical;line-height:1.6}
#partner-form input[type=checkbox]{width:17px;height:17px;min-width:17px;margin:2px 0;accent-color:var(--action)}
#partner-form [data-partner-categories]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-column:1/-1}
#partner-form [data-partner-categories] label,#partner-form [data-partner-acknowledgement]{display:flex;align-items:flex-start;gap:9px;font-weight:450}
#partner-form fieldset>p{font-size:12px;color:var(--muted);grid-column:1/-1;margin:0 0 2px}
#partner-form button{border-radius:99px;font-size:14px}
#partner-form [data-partner-note]{font-size:12px;color:var(--muted);margin:0;line-height:1.6}
#partner-form [data-partner-note] a{text-decoration:underline;text-underline-offset:3px}
[data-honeypot]{display:none}
#partner-form [data-field-error]{color:#b42318;font-size:12px}
#partner-form [aria-invalid=true]{border-color:#b42318!important}
[data-partner-errors]{border:1px solid #b42318;border-radius:12px;padding:16px;margin-top:18px;font-size:13px}
#partner-form [data-partner-errors] ul{display:block;list-style:disc;padding-left:18px;margin:8px 0 0}
#partner-form [data-partner-errors] li{margin-top:6px}
[data-partner-errors] a{text-decoration:underline}
[data-partner-success]{padding:24px;background:var(--brand-soft);border-radius:14px;margin-top:22px}
[data-partner-success] h3{font-size:20px}
[data-partner-success] p{font-size:14px;color:var(--muted)}
[data-partner-success] a{color:var(--brand);font-size:14px;font-weight:650}
:root[data-theme=dark] #partner-form [data-field-error]{color:#ffada6}
@media(max-width:899px){[data-partners]{grid-template-columns:minmax(0,1fr);gap:24px;padding-block:28px 40px}[data-partner-explainer]{margin-top:20px}[data-partner-intro]>p:not([data-eyebrow]){max-width:650px}}
@media(max-width:539px){#partner-form{padding:20px}#partner-form fieldset{grid-template-columns:minmax(0,1fr)}[data-header-actions]>a[href='/partners/']{display:block;font-size:11px}[data-header-actions]{gap:10px}#theme-toggle{padding-inline:10px}#partner-form [data-partner-categories]{grid-template-columns:minmax(0,1fr)}}
