/* SRCHN BRANDS - grey / black / white only */
.br-body{background:#fff;color:#111;font-family:inherit}
.br-hero{max-width:1100px;margin:0 auto;padding:72px 20px 40px}
.br-eyebrow{font-size:13px;letter-spacing:.22em;font-weight:600;color:#737373;margin:0 0 12px;text-transform:uppercase}
.br-hero h1{font-size:clamp(34px,7vw,64px);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px;font-weight:800}
.br-lede{font-size:clamp(16px,2.4vw,20px);color:#525252;max-width:640px;margin:0 0 28px;line-height:1.5}
.br-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 8px}
.br-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-size:14px;font-weight:700;letter-spacing:.06em;text-decoration:none;cursor:pointer;border:1px solid #111;font-family:inherit}
.br-btn-primary{background:#111;color:#fff}
.br-btn-primary:hover{background:#000}
.br-btn-ghost{background:#fff;color:#111}
.br-btn-ghost:hover{background:#f5f5f5}
.br-sec{max-width:1100px;margin:0 auto;padding:36px 20px}
.br-sec h2{font-size:clamp(22px,3.4vw,30px);letter-spacing:-.02em;margin:0 0 18px;font-weight:800}
.br-search{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.br-search input[type=search]{flex:1 1 220px;min-height:48px;border:1px solid #e5e5e5;border-radius:12px;padding:0 16px;font:inherit}
.br-search select{min-height:48px;border:1px solid #e5e5e5;border-radius:12px;padding:0 12px;font:inherit;background:#fff}
.br-result-note{color:#525252;font-size:.92rem}
.br-result-note a{color:#111}
.br-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.br-card{border:1px solid #e5e5e5;border-radius:18px;padding:20px;background:#fff;transition:box-shadow .15s}
.br-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.br-card-link{text-decoration:none;color:inherit;display:block}
.br-card-logo{width:56px;height:56px;object-fit:contain;border-radius:12px;margin:0 0 12px}
.br-card-initial{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;background:#111;color:#fff;font-size:24px;font-weight:800;margin:0 0 12px}
.br-card h3{margin:0 0 6px;font-size:1.15rem;letter-spacing:-.01em}
.br-card-meta{color:#737373;font-size:.85rem;margin:0 0 8px}
.br-card-tag{color:#525252;font-size:.92rem;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.br-card-locs{color:#737373;font-size:.82rem;margin:0 0 10px}
.br-card-cta{font-size:.85rem;font-weight:700;letter-spacing:.04em}
.br-chips{display:flex;gap:8px;flex-wrap:wrap}
.br-chip{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid #e5e5e5;border-radius:999px;text-decoration:none;color:#111;font-size:.9rem;background:#fff}
.br-chip:hover{border-color:#111}
.br-empty{color:#737373;padding:28px 0}
.br-club,.br-onboard{border-top:1px solid #e5e5e5}
.br-club p,.br-onboard p{color:#525252;max-width:640px;line-height:1.55}
.br-crumb{max-width:1100px;margin:0 auto;padding:20px 20px 0;font-size:.85rem;color:#737373}
.br-crumb a{color:#111;text-decoration:none}
.br-brand-head{max-width:1100px;margin:0 auto;padding:28px 20px 8px}
.br-brand-head h1{font-size:clamp(30px,6vw,52px);letter-spacing:-.03em;margin:0 0 10px;font-weight:800}
.br-brand-logo{width:72px;height:72px;object-fit:contain;border-radius:16px;margin:0 0 14px}
.br-verified{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;border:1px solid #111;border-radius:999px;padding:6px 12px;margin:0 0 14px}
.br-facts{display:flex;gap:26px;flex-wrap:wrap;margin:14px 0}
.br-facts div{min-width:90px}
.br-facts dt{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#737373;margin:0 0 4px}
.br-facts dd{margin:0;font-weight:600;font-size:.95rem}
.br-links a{color:#111;margin-right:14px;font-size:.9rem}
.br-report{margin:6px 0 0}
.br-linkbtn{background:none;border:0;color:#737373;text-decoration:underline;cursor:pointer;font:inherit;font-size:.85rem;padding:0}
.br-hero-media{max-width:1100px;margin:0 auto;padding:10px 20px 26px}
.br-video-wrap{border-radius:20px;overflow:hidden;background:#111}
.br-video{display:block;width:100%;max-height:70vh;background:#111}
.br-video-meta{color:#737373;font-size:.85rem;margin:10px 2px 0}
.br-prose{max-width:720px;color:#262626;line-height:1.65}
.br-tabs{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;margin:0 0 18px;border-bottom:1px solid #e5e5e5;padding-bottom:12px}
@media(max-width:480px){.br-tabs{gap:2px}.br-tab{font-size:.7rem;letter-spacing:.06em;margin-right:10px;padding:8px 2px;white-space:nowrap}}
.br-tab{background:none;border:0;font:inherit;font-size:.82rem;font-weight:800;letter-spacing:.12em;color:#737373;cursor:pointer;padding:10px 4px;margin-right:18px}
.br-tab.active{color:#111;border-bottom:2px solid #111}
.br-panel{display:none}
.br-panel.active{display:block}
.br-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.br-media{margin:0;border:1px solid #e5e5e5;border-radius:16px;overflow:hidden;background:#fff}
.br-media-v,.br-media-img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#111}
.br-media figcaption{padding:10px 12px;font-size:.85rem;color:#262626}
.br-credit{color:#737373;font-size:.78rem}
.br-camps{margin-top:18px;display:grid;gap:12px}
.br-camp{border:1px solid #e5e5e5;border-radius:16px;padding:18px}
.br-camp h3{margin:0 0 6px}
.br-camp p{margin:0 0 6px;color:#525252;font-size:.92rem}
.br-camp-dates{color:#737373;font-size:.82rem}
.br-camp-terms{font-size:.8rem;color:#737373}
.br-loc-wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.br-map{min-height:320px;border-radius:18px;border:1px solid #e5e5e5;background:#f5f5f5;z-index:0}
.br-loc-list{display:grid;gap:12px;align-content:start}
.br-loc{border:1px solid #e5e5e5;border-radius:16px;padding:16px}
.br-loc h3{margin:0 0 6px;font-size:1.05rem}
.br-loc h3 a{color:#111;text-decoration:none}
.br-loc p{margin:0 0 4px;color:#525252;font-size:.9rem}
.br-loc-hours{color:#737373;font-size:.84rem}
.br-loc-flags{display:flex;gap:6px;margin-top:8px}
.br-flag{font-size:.72rem;font-weight:800;letter-spacing:.1em;border:1px solid #111;border-radius:999px;padding:3px 10px}
.br-addr{color:#525252;font-size:1.02rem}
.br-list{color:#262626;line-height:1.9}
.br-updated{color:#737373;font-size:.8rem;margin-top:18px}
.br-faq{border:1px solid #e5e5e5;border-radius:14px;padding:14px 16px;margin:0 0 10px}
.br-faq summary{font-weight:700;cursor:pointer;list-style:none}
.br-faq summary::-webkit-details-marker{display:none}
.br-faq summary::after{content:'+';float:right;font-weight:400;color:#737373}
.br-faq[open] summary::after{content:'–'}
.br-faq p{color:#525252;margin:10px 0 0;line-height:1.55}
.br-footer{border-top:1px solid #e5e5e5;margin-top:40px;padding:28px 20px;text-align:center;color:#737373;font-size:.85rem}
.br-footer-links a{color:#111;text-decoration:none}
.br-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#111;color:#fff;padding:12px 20px;border-radius:999px;font-size:.9rem;opacity:0;transition:opacity .2s;pointer-events:none;z-index:50}
.br-toast.show{opacity:1}
@media(max-width:760px){.br-loc-wrap{grid-template-columns:1fr}.br-map{min-height:240px}}
@media(prefers-reduced-motion:reduce){.br-card{transition:none}}

/* SRCHN CLUB (monochrome only) */
.br-club-badge{display:inline-block;margin:12px 0 0;border:1px solid #111;border-radius:999px;padding:5px 14px;font-size:11px;font-weight:700;letter-spacing:.18em;color:#111;background:#fff}
.br-steps{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px;counter-reset:st}
.br-steps li{counter-increment:st;padding:16px 18px;border:1px solid #e3e3e3;border-radius:14px;background:#fff;color:#333}
.br-steps li::before{content:counter(st,decimal-leading-zero);display:block;font-size:12px;font-weight:700;letter-spacing:.14em;color:#777;margin-bottom:6px}
.cl-form{display:grid;gap:14px;max-width:520px;margin-top:14px}
.cl-form[hidden]{display:none}
.cl-form label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#333}
.cl-form input,.cl-form textarea{border:1px solid #d6d6d6;border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:#111}
.cl-form input:focus,.cl-form textarea:focus{outline:2px solid #111;outline-offset:1px}
.cl-msg{font-size:13.5px;margin:2px 0 0;color:#333}
.cl-cards{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));margin-top:18px}
.cl-card{border:1px solid #e3e3e3;border-radius:14px;padding:18px;background:#fff}
.cl-card h3{margin:0 0 6px;font-size:12px;letter-spacing:.12em;color:#777}
.cl-card p{margin:4px 0;color:#222}
.cl-stat{font-size:26px;font-weight:800;color:#111;margin:4px 0}
.cl-sub{color:#666;font-size:13px}
.cl-h{margin-top:34px}
.cl-note{border-left:3px solid #111;background:#f7f7f7;padding:12px 16px;border-radius:0 10px 10px 0;font-size:13.5px;color:#333;margin:14px 0}
.cl-scroll{overflow-x:auto}
.cl-table{width:100%;border-collapse:collapse;font-size:13.5px;margin-top:10px}
.cl-table th{text-align:left;font-size:11px;letter-spacing:.12em;color:#777;padding:8px 10px;border-bottom:1px solid #e3e3e3}
.cl-table td{padding:10px;border-bottom:1px solid #f0f0f0;color:#222;vertical-align:top}
.cl-pill{display:inline-block;border:1px solid #111;border-radius:999px;padding:3px 10px;font-size:10.5px;font-weight:700;letter-spacing:.12em;color:#111}
.cl-pill.solid{background:#111;color:#fff}
.cl-mini{padding:5px 12px;font-size:11.5px;border-radius:16px}

.cl-bks{display:grid;gap:12px;margin-top:10px}
.cl-bk{border:1px solid #e3e3e3;border-radius:14px;padding:14px 16px}
.cl-bk-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.cl-bk-name{margin:8px 0 2px;font-weight:600}
.cl-bk-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.br-price-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:16px 0}
.br-media-empty .br-media-ph{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;border:1.5px dashed #d0d0d0;border-radius:12px;background:#fafafa;color:#bbb}
.br-media-empty .br-media-ph .icon{width:28px;height:28px}
a.br-flag{text-decoration:none;color:inherit}
.br-locked{opacity:.55;border-style:dashed!important}

/* ---- SRCHN interface mockups (club-demo.js) - strictly monochrome ---- */
.cd-overlay{position:fixed;inset:0;background:rgba(0,0,0,.58);z-index:1200;display:flex;align-items:flex-end;justify-content:center}
@media(min-width:640px){.cd-overlay{align-items:center}}
.cd-sheet{background:#fff;color:#111;width:100%;max-width:440px;max-height:92vh;overflow-y:auto;border-radius:18px 18px 0 0;padding:20px 20px 26px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
@media(min-width:640px){.cd-sheet{border-radius:18px}}
.cd-full{background:#000;color:#fff;width:100%;max-width:520px;height:100dvh;max-height:100dvh;overflow-y:auto;padding:20px 20px 26px;display:flex;flex-direction:column}
@media(min-width:640px){.cd-full{height:auto;max-height:94vh;border-radius:18px}}
.cd-top{display:flex;align-items:center;gap:10px}
.cd-top .cd-x{margin-left:auto}
.cd-eyebrow{font-size:12px;letter-spacing:.22em;font-weight:700;margin:0}
.cd-pill{display:inline-block;border:1.5px solid #111;color:#111;background:#fff;font-size:10.5px;font-weight:800;letter-spacing:.12em;border-radius:999px;padding:3px 9px}
.cd-full .cd-pill{border-color:#fff;color:#fff;background:#000}
.cd-x{background:none;border:none;font-size:26px;line-height:1;color:#111;cursor:pointer;padding:2px 6px}
.cd-x.dark{color:#fff}
.cd-sub2{font-size:12.5px;color:#777;margin:8px 0 0}
.cd-h{font-size:21px;margin:18px 0 10px;letter-spacing:-.01em}
.cd-body{font-size:14px;color:#333;line-height:1.55}
.cd-steps{display:flex;gap:6px;margin:16px 0 2px}
.cd-dot{width:26px;height:4px;border-radius:2px;background:#e3e3e3}
.cd-dot.done{background:#111}
.cd-dot.now{background:#555}
.cd-receipt{border:1.5px solid #ececec;border-radius:14px;padding:6px 16px;margin:14px 0}
.cd-row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;font-size:14px;border-bottom:1px dashed #eee}
.cd-row:last-child{border-bottom:none}
.cd-row.cd-dim{color:#8a8a8a;font-size:13px}
.cd-row.cd-total{font-size:16px;border-top:2px solid #111}
.cd-note{font-size:12.5px;color:#777;background:#f7f7f7;border-left:3px solid #111;border-radius:0 10px 10px 0;padding:10px 12px;margin:14px 0;line-height:1.5}
.cd-full .cd-note{background:#161616;border-left-color:#fff}
.cd-actions{display:flex;gap:10px;margin-top:16px}
.cd-actions .br-btn{flex:1;text-align:center}
.cd-opts{display:flex;flex-direction:column;gap:10px;margin:6px 0 4px}
.cd-opt{display:flex;align-items:center;gap:12px;text-align:left;border:1.5px solid #e3e3e3;border-radius:14px;padding:13px 14px;background:#fff;cursor:pointer;font-family:inherit}
.cd-opt.sel{border-color:#111;box-shadow:0 0 0 1px #111}
.cd-opt-t{display:flex;flex-direction:column;font-size:14px}
.cd-opt-t span{font-size:12.5px;color:#8a8a8a}
.cd-ic{width:34px;height:34px;border-radius:10px;background:#f2f2f2;display:flex;align-items:center;justify-content:center;flex:none}
.cd-radio{margin-left:auto;width:16px;height:16px;border-radius:50%;border:1.5px solid #cfcfcf;flex:none}
.cd-opt.sel .cd-radio{border-color:#111;background:#111;box-shadow:inset 0 0 0 3px #fff}
.cd-proc{display:flex;align-items:center;gap:12px;margin:22px 0}
.cd-spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid #e0e0e0;border-top-color:#111;animation:cdspin 1s linear infinite;flex:none}
@keyframes cdspin{to{transform:rotate(360deg)}}
.cd-proc-msg{font-size:13.5px;color:#555;margin:0}
.cd-done{display:flex;flex-direction:column;align-items:center;gap:12px;margin:20px 0 6px}
.cd-check{width:64px;height:64px;border-radius:50%;background:#111;display:flex;align-items:center;justify-content:center}
.cd-check.big{width:84px;height:84px}
.cd-consent{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;color:#333;margin:16px 0;line-height:1.5}
.cd-consent input{width:auto;margin-top:3px}
.cd-shake{animation:cdshake .4s}
@keyframes cdshake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.cd-handoff{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px 0 4px}
.cd-ho-box{flex:1;border:1.5px solid #e3e3e3;border-radius:12px;padding:12px;text-align:center;display:flex;flex-direction:column;gap:3px;font-size:13px}
.cd-ho-box span{font-size:11.5px;color:#8a8a8a}
.cd-ho-arrow{font-size:20px;color:#111}
.cd-otp{display:flex;gap:9px;justify-content:center;margin:20px 0 12px}
.cd-otp-b{width:42px;height:52px;border:1.5px solid #d9d9d9;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#111;background:#fff}
.cd-otp-b.on{border-color:#111;background:#f4f4f4}
.cd-idcard{border:1.5px solid #111;border-radius:16px;padding:14px 16px;margin:14px 0;background:#fff}
.cd-id-top{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:2px solid #111;margin-bottom:4px}
.cd-id-top b{font-size:16px}
.cd-id-top .cd-pill{margin-left:auto}
.cd-id-photo{width:46px;height:46px;border-radius:12px;background:#f0f0f0;display:flex;align-items:center;justify-content:center}
.cd-id-sub{display:block;font-size:11.5px;color:#8a8a8a}
.cd-stage{position:relative;border-radius:18px;overflow:hidden;background:#0d0d0d;aspect-ratio:3/4;margin:18px 0 8px}
.cd-cam{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.cd-sim{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 38%,#1c1c1c,#0a0a0a)}
.cd-scan{position:absolute;left:12%;right:12%;height:2px;background:#fff;opacity:.55;animation:cdscan 2.4s ease-in-out infinite}
@keyframes cdscan{0%,100%{top:22%}50%{top:74%}}
.cd-oval{position:absolute;left:50%;top:50%;width:62%;aspect-ratio:3/4;transform:translate(-50%,-50%);border:2.5px dashed rgba(255,255,255,.85);border-radius:50%;pointer-events:none}
.cd-ring-wrap{display:flex;align-items:center;gap:14px;margin-top:6px}
.cd-ring{width:44px;height:44px;flex:none}
.cd-prompt{font-size:16px;font-weight:600;color:#fff;margin:0}
.cd-full .br-btn-primary{background:#fff;color:#111;border-color:#fff}
.cd-full .br-btn-ghost{background:transparent;color:#fff;border-color:#666}

/* ---- hero variants: differentiate Brands (search-first) and Club (membership-card) above the fold ---- */
.br-hero-slim{padding:26px 20px 8px}
.br-hero-slim h1{font-size:clamp(24px,5.6vw,42px);margin:0 0 10px}
.br-hero-slim .br-lede{margin:0}
.cl-memcard{background:#111;color:#fff;border-radius:16px;padding:20px 22px;margin:14px 0 16px;max-width:460px}
.cl-memcard-row{display:flex;justify-content:space-between;font-size:.72rem;font-weight:800;letter-spacing:.16em;color:#cfcfcf}
.cl-memcard-name{font-size:1.25rem;font-weight:800;letter-spacing:.06em;margin:26px 0 2px;color:#fff}
.cl-memcard-no{font-size:.85rem;letter-spacing:.3em;color:#9a9a9a;margin:0 0 14px}
.cl-memcard-sub{font-size:.72rem;letter-spacing:.12em;color:#bdbdbd;margin:0;text-transform:uppercase}
button.br-flag{background:#fff;color:#111;font-family:inherit;cursor:pointer}
button.br-flag:hover{background:#111;color:#fff}

.br-card-actions{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}
.br-card-actions .br-btn{padding:8px 14px;font-size:.72rem;letter-spacing:.08em;min-height:38px;flex:1;justify-content:center;text-align:center}
.cl-faq{border:1px solid #e3e3e3;border-radius:14px;background:#fff;margin-top:12px}
.cl-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;font-weight:700;font-size:16px;color:#111}
.cl-faq summary::-webkit-details-marker{display:none}
.cl-faq summary::after{content:"+";flex:none;font-size:20px;font-weight:400;color:#111}
.cl-faq[open] summary::after{content:"\2013"}
.cl-faq>:not(summary){margin-left:18px;margin-right:18px}
.cl-faq>:last-child{margin-bottom:18px}
.cl-faq .br-steps{margin-top:0}
