/* Slim, editorial layout pass */
.age-note { height: 24px; padding: 6px 12px; font-size: 8px; }
.site-header { height: 58px; padding-inline: 3vw; gap: 20px; }
.shop-link { display: inline-flex; align-items: center; height: 40px; padding: 0 17px; border-radius: 30px; background: var(--forest); color: #fff; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.shop-link:hover { background: var(--sage); }
.news-ticker { display: grid; grid-template-columns: 140px 1fr 96px; height: 80px; margin: 6px 12px; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.news-title { display: flex; flex-direction: column; justify-content: center; gap: 4px; padding: 14px 18px; background: var(--forest); color: #fff; }
.news-title small { color: var(--sand); font-size: 8px; letter-spacing: .17em; }
.news-title span { color: #c9d5cc; font-size: 9px; }
.news-window { overflow: hidden; }
.news-track { display: flex; width: max-content; height: 100%; animation: newsTicker 85s linear infinite; }
.news-window:hover .news-track { animation-play-state: paused; }
.news-item { display: grid; grid-template-columns: 58px 180px; gap: 9px; align-items: center; width: 265px; padding: 7px 9px; border-right: 1px solid var(--line); }
.news-item img { width: 56px; height: 62px; border-radius: 6px; object-fit: cover; }
.news-item span { min-width: 0; display: grid; gap: 4px; }
.news-item small { color: var(--sage); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.news-item b { display: -webkit-box; overflow: hidden; font: 600 10px/1.3 Manrope; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.news-all { display: grid; place-items: center; border-left: 1px solid var(--line); color: var(--sage); font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
@keyframes newsTicker { to { transform: translateX(-50%); } }
.brand { gap: 7px; }
.brand img { width: 38px; height: 38px; }
.brand b, .brand em { font-size: 17px; }
.brand small { margin-top: 5px; }
.desktop-nav { gap: 18px; font-size: 11px; }
.header-actions { gap: 7px; }
.icon-button, .cart-button, .manager-link { height: 34px; padding-inline: 12px; }
.icon-button { width: 34px; padding: 0; }
.shop-link { height: 34px; padding-inline: 13px; }
.join-link { font-size: 10px; white-space: nowrap; }
.retail-hero { height: 512px; min-height: 512px; margin: 6px 12px 0; border-radius: 18px; grid-template-columns: .82fr 1.18fr; }
.retail-hero-copy { padding: 30px 4vw 26px; }
.retail-hero h1 { font-size: clamp(42px, 4.15vw, 62px); }
.retail-hero-copy > p:not(.eyebrow) { margin: 14px 0; font-size: 13px; line-height: 1.55; }
.retail-hero .eyebrow { margin-bottom: 12px; }
.retail-hero-image { min-height: 512px; }
.hero-actions { gap: 20px; }
.button { padding: 13px 18px; }
.trust-row { margin-top: 17px; gap: 14px; font-size: 8px; }
.floating-card { bottom: 16px; left: 16px; width: 180px; padding: 13px; gap: 8px; }
.floating-card strong { font-size: 20px; }
.product-ticker { display: grid; grid-template-columns: 140px 1fr; align-items: stretch; height: 80px; min-height: 80px; margin: 6px 12px 0; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.ticker-label { display: flex; flex-direction: column; justify-content: center; gap: 4px; padding: 14px 18px; border-right: 1px solid var(--line); background: var(--forest); color: #fff; }
.ticker-label small { color: var(--sand); font-size: 8px; letter-spacing: .18em; }
.ticker-label span { color: #ced8d1; font-size: 11px; line-height: 1.4; }
.ticker-window { min-width: 0; overflow: hidden; }
.ticker-track { display: flex; width: max-content; height: 100%; animation: productTicker 70s linear infinite; }
.ticker-window:hover .ticker-track { animation-play-state: paused; }
.ticker-product { display: grid; grid-template-columns: 56px minmax(0, 1fr) 27px; align-items: center; gap: 8px; width: 270px; padding: 7px 9px; border-right: 1px solid var(--line); background: #fff; }
.ticker-product img { width: 54px; height: 64px; object-fit: contain; }
.ticker-product div { min-width: 0; display: grid; gap: 4px; }
.ticker-product small { overflow: hidden; color: var(--sage); font-size: 7px; letter-spacing: .1em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.ticker-product strong { display: -webkit-box; overflow: hidden; font: 600 11px/1.3 Manrope; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.ticker-product span { font-size: 11px; font-weight: 700; }
.ticker-product button { justify-self: end; flex: 0 0 auto; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; background: var(--forest); color: #fff; cursor: pointer; }
@keyframes productTicker { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .ticker-track { animation: none; } .ticker-window { overflow-x: auto; } }
.category-strip { padding: 78px 7vw; gap: 7vw; }
.section-kicker h2, .shop-heading h2, .locations h2 { font-size: clamp(42px, 4.2vw, 62px); }
.category-link { padding: 15px 3px; font-size: 16px; }
.shop-section { padding: 76px 5vw; }
.filter-pills { margin-top: 30px; }
.category-showcase { gap: 50px; }
.category-shelf { gap: 18px; }
.shelf-heading { padding-bottom: 13px; }
.shelf-heading h3 { font-size: clamp(27px, 2.6vw, 38px); }
.shelf-products { gap: 14px; }
.product-body { padding: 14px; }
.product-name { min-height: 36px; margin: 6px 0; }
.product-bottom { margin-top: 8px; }
.editorial-break { min-height: 285px; margin-block: 0; padding: 38px 7vw; }
.editorial-mark { font-size: 90px; }
.editorial-break h3 { font-size: clamp(38px, 4.2vw, 60px); margin: 9px 0; }
.editorial-break span { font-size: 14px; }
.story-section { padding: 78px 7vw; }
.story-card { padding: 5vw; }
.story-card h2 { font-size: clamp(44px, 4.6vw, 65px); }
.story-points { margin-top: 32px; }
.story-art { min-height: 420px; }
.story-art span { font-size: 155px; }
.locations { padding: 78px 8vw; }
.location-grid { margin-top: 38px; }
.location-grid article { min-height: 225px; padding: 30px; }
.location-grid h3 { margin: 10px 0; font-size: 25px; }
.navigate-button { margin-top: 17px; padding-block: 11px; }
.membership-section { margin-bottom: 78px; padding: 5vw 6vw; gap: 5vw; }
.membership-agreement { top: 96px; }
.membership-agreement h2 { font-size: clamp(40px, 4.2vw, 62px); }
.agreement-scroll { max-height: 500px; margin: 20px 0; padding: 20px; }
.agreement-scroll h3 { margin-top: 20px; }
.membership-form { padding: 30px; }
.form-grid { gap: 13px; }
.identity-capture { margin-block: 16px; padding: 16px; }
.signature-field { margin-block: 16px; padding: 16px; }
.signature-field canvas { height: 125px; }
.contact-section { padding: 78px 8vw; gap: 6vw; }
.contact-section h2 { font-size: clamp(42px, 4.3vw, 62px); }
.contact-section form { padding: 28px; }
footer { padding-top: 62px; }
.footer-logo { padding-bottom: 48px; }
.footer-logo h2 { font-size: clamp(40px, 4.4vw, 62px); }

.brand small { font-size: 8px; letter-spacing: .16em; white-space: nowrap; }
.skip-links { position: fixed; top: 0; left: 12px; z-index: 9999; display: flex; gap: 4px; transform: translateY(-110%); transition: transform .2s; }
.skip-links:focus-within { transform: translateY(0); }
.skip-links a { padding: 10px 14px; background: #153d30; color: #fff; font-size: 12px; }
.club-life { padding: 72px 7vw; background: #f2eee5; display: grid; grid-template-columns: .72fr 1.28fr; gap: 6vw; }
.club-life-intro { align-self: center; max-width: 520px; }
.club-life h2, .club-faq h2 { margin: 10px 0 18px; font-size: clamp(40px, 4.1vw, 60px); line-height: .96; letter-spacing: -.055em; }
.club-life h2 i, .club-faq h2 i { color: #829d78; font-family: Georgia, serif; font-weight: 400; }
.club-life-intro > p:not(.eyebrow), .club-faq > div:first-child > p:not(.eyebrow) { color: #647068; line-height: 1.7; }
.club-life-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #d8d7ce; border-left: 1px solid #d8d7ce; }
.club-life-grid article { min-height: 190px; padding: 28px; border-right: 1px solid #d8d7ce; border-bottom: 1px solid #d8d7ce; }
.club-life-grid small { color: #829d78; font-size: 10px; letter-spacing: .2em; }
.club-life-grid h3 { margin: 10px 0 8px; font-size: 22px; }
.club-life-grid p { margin: 0; color: #68736c; font-size: 13px; line-height: 1.65; }
.club-faq { padding: 72px 8vw; display: grid; grid-template-columns: .7fr 1.3fr; gap: 7vw; background: #fff; }
.faq-list { border-top: 1px solid #d9ddd7; }
.faq-list details { border-bottom: 1px solid #d9ddd7; padding: 0 2px; }
.faq-list summary { cursor: pointer; list-style: none; padding: 19px 38px 19px 0; font-weight: 600; position: relative; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: '+'; position: absolute; right: 4px; font-size: 22px; font-weight: 400; }
.faq-list details[open] summary::after { content: '−'; }
.faq-list details p { margin: -5px 36px 19px 0; color: #68736c; font-size: 13px; line-height: 1.65; }
.contact-copy { max-width: 670px; }
.contact-venues { margin-top: 28px; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #d7dcd5; border-left: 1px solid #d7dcd5; }
.contact-venues article { padding: 20px; border-right: 1px solid #d7dcd5; border-bottom: 1px solid #d7dcd5; display: flex; flex-direction: column; gap: 6px; font-size: 12px; line-height: 1.5; }
.contact-venues small { color: #829d78; letter-spacing: .14em; }
.contact-venues a { color: #1b4636; text-decoration: none; }
.contact-venues span { color: #68736c; }
.contact-consent { margin: 18px 0; }
.required-note { margin: 10px 0 0; color: #7a847d; font-size: 11px; }

@media (max-width: 1000px) {
  .retail-hero-image { min-height: 430px; }
  .category-strip, .shop-section, .story-section, .locations, .contact-section, .club-life, .club-faq { padding-block: 62px; }
}
@media (max-width: 700px) {
  .age-note { height: 20px; padding-block: 5px; font-size: 7px; }
  .site-header { height: 54px; padding-inline: 10px; gap: 8px; }
  .brand { gap: 5px; }
  .brand img { width: 34px; height: 34px; }
  .brand b, .brand em { font-size: 14px; }
  .brand small { margin-top: 4px; }
  .cart-button { height: 34px; padding-inline: 10px; }
  .news-ticker { grid-template-columns: 1fr 68px; height: 72px; margin: 5px 7px; }
  .news-title { display: none; }
  .news-item { grid-template-columns: 42px 148px; width: 210px; }
  .news-item img { width: 40px; height: 42px; }
  .shop-link { height: 32px; padding-inline: 10px; }
  .retail-hero { height: 425px; min-height: 425px; margin: 5px 7px 0; }
  .retail-hero-copy { padding: 28px 20px; }
  .retail-hero h1 { font-size: 40px; }
  .retail-hero-copy > p:not(.eyebrow) { margin-block: 11px; font-size: 12px; }
  .retail-hero-image { min-height: 425px; }
  .trust-row { display: none; }
  .product-ticker { grid-template-columns: 1fr; height: 72px; min-height: 72px; margin: 5px 7px 0; }
  .ticker-label { display: none; }
  .ticker-product { grid-template-columns: 42px minmax(0, 1fr) 24px; width: 220px; padding-inline: 7px; }
  .ticker-product img { width: 40px; height: 44px; }
  .category-strip, .shop-section, .locations, .contact-section { padding-block: 58px; }
  .category-showcase { gap: 38px; }
  .editorial-break { min-height: 260px; padding-block: 40px; }
  .story-section { padding-block: 55px; }
  .story-card { padding-block: 48px; }
  .story-art { min-height: 330px; }
  .membership-section { padding-block: 52px; margin-bottom: 55px; }
  .membership-form { padding: 20px; }
  .agreement-scroll { max-height: 420px; }
  .brand small { font-size: 6.5px; letter-spacing: .1em; }
  .club-life, .club-faq { grid-template-columns: 1fr; gap: 34px; padding-inline: 6vw; }
  .club-life-grid { grid-template-columns: 1fr; }
  .club-life-grid article { min-height: auto; padding: 23px; }
  .contact-venues { grid-template-columns: 1fr; }
}
.site-theme-button{border:1px solid #dfe3dd;background:#fff;color:#173f31;border-radius:22px;height:40px;padding:0 13px;display:flex;gap:6px;align-items:center;cursor:pointer}.site-theme-button span{font-size:9px;text-transform:uppercase;letter-spacing:.1em}
html[data-theme="dark"] body{background:#101713;color:#eef1e9}html[data-theme="dark"] .age-note{background:#09110d;color:#c8d3c5}html[data-theme="dark"] .site-header,html[data-theme="dark"] .news-ticker,html[data-theme="dark"] .product-ticker{background:#151e19;border-color:#2b3831}html[data-theme="dark"] .desktop-nav a,html[data-theme="dark"] .brand,html[data-theme="dark"] .header-actions{color:#eef1e9}html[data-theme="dark"] .site-theme-button,html[data-theme="dark"] .icon-button,html[data-theme="dark"] .manager-link{background:#202c25;color:#e9eee6;border-color:#35433b}html[data-theme="dark"] .retail-hero-copy,html[data-theme="dark"] .category-strip,html[data-theme="dark"] .shop-section,html[data-theme="dark"] .locations,html[data-theme="dark"] .club-faq,html[data-theme="dark"] .contact-section{background:#111914;color:#eef1e9}html[data-theme="dark"] .retail-hero-copy>p:not(.eyebrow),html[data-theme="dark"] .locations-intro,html[data-theme="dark"] .club-faq>div:first-child>p:not(.eyebrow),html[data-theme="dark"] .contact-copy>p,html[data-theme="dark"] .result-count{color:#a6b1a8}html[data-theme="dark"] .club-life{background:#20231d;color:#f0eee5}html[data-theme="dark"] .club-life-grid,html[data-theme="dark"] .club-life-grid article,html[data-theme="dark"] .faq-list,html[data-theme="dark"] .faq-list details,html[data-theme="dark"] .contact-venues,html[data-theme="dark"] .contact-venues article{border-color:#39433b}html[data-theme="dark"] .club-life-grid p,html[data-theme="dark"] .faq-list details p,html[data-theme="dark"] .contact-venues span{color:#adb6ae}html[data-theme="dark"] .category-links button,html[data-theme="dark"] .filter-pill,html[data-theme="dark"] .search-field,html[data-theme="dark"] select,html[data-theme="dark"] input,html[data-theme="dark"] textarea{background:#19231d;color:#eef1e9;border-color:#344138}html[data-theme="dark"] .product-card{color:#eef1e9}html[data-theme="dark"] .product-image{background:#f4f2eb}html[data-theme="dark"] .category-shelf,html[data-theme="dark"] .shelf-heading{border-color:#2c3931}html[data-theme="dark"] .location-grid article,html[data-theme="dark"] .membership-form,html[data-theme="dark"] .contact-section form{background:#19231d;border-color:#354138}html[data-theme="dark"] .club-faq summary,html[data-theme="dark"] .location-grid h3{color:#eef1e9}html[data-theme="dark"] footer{background:#08110d;color:#eef1e9}html[data-theme="dark"] .footer-bottom{border-color:#29362e}html[data-theme="dark"] .ticker-product,html[data-theme="dark"] .news-item{border-color:#2b3831;color:#eef1e9}html[data-theme="dark"] .ticker-product img{background:#f5f3ed}@media(max-width:700px){.site-theme-button span{display:none}.site-theme-button{width:36px;padding:0;justify-content:center}}
html[data-theme="dark"] .ticker-window{background:#111914}html[data-theme="dark"] .ticker-product{background:#17221c!important;color:#eef1e9!important;border-color:#35423a!important}html[data-theme="dark"] .ticker-product>div small{color:#8fae86!important}html[data-theme="dark"] .ticker-product>div strong{color:#f2f0e8!important}html[data-theme="dark"] .ticker-product>div span{color:#d9c38f!important}html[data-theme="dark"] .ticker-product img{background:#f3f1e9!important;border-radius:8px}html[data-theme="dark"] .ticker-product button{background:#2d5b47!important;color:#fff!important}
.email-verification-card{margin:18px 0 70px;padding:28px;border:1px solid var(--line);border-radius:20px;background:#f2eee5}.email-verification-card h3{margin:7px 0;font-size:28px}.email-verification-card label{display:grid;gap:7px;margin:20px 0;font-size:10px;letter-spacing:.1em}.email-verification-card input{max-width:240px;padding:15px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:24px;letter-spacing:.25em}.verification-copy{color:var(--muted)}.verification-resend{border:0;background:none;color:var(--forest);padding:12px}.email-verification-card.verified{background:#e9f1e6;border-color:#93ae88}html[data-theme=dark] .email-verification-card{background:#19231d;border-color:#354138;color:#eef1e9}
.membership-section:not(.registration-unlocked)>.membership-agreement,.membership-section:not(.registration-unlocked)>.membership-form{display:none}.registration-gate{grid-column:1/-1;max-width:760px;width:100%;margin:auto;padding:46px;border-radius:24px;background:#f2eee5}.registration-gate h2{margin:8px 0 16px;font:500 clamp(45px,5vw,70px)/.94 Manrope;letter-spacing:-.06em}.registration-gate h2 i{font-family:Georgia,serif;color:var(--sage);font-weight:400}.registration-gate>p:not(.eyebrow){max-width:580px;color:var(--muted);line-height:1.65}.registration-gate form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:end;margin-top:24px}.registration-gate label{display:grid;gap:7px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.registration-gate input{height:48px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 14px;font-size:16px;text-transform:none;letter-spacing:0}.registration-gate #registrationCodeForm input{font-size:22px;letter-spacing:.22em}.registration-gate .form-message{grid-column:1/-1;margin:0}.registration-gate .verification-resend{grid-column:1/-1;justify-self:start}.membership-section.registration-unlocked{align-items:start}@media(max-width:700px){.registration-gate{padding:30px 22px}.registration-gate form{grid-template-columns:1fr}.registration-gate .button{width:100%}}html[data-theme=dark] .registration-gate{background:#19231d;color:#eef1e9}html[data-theme=dark] .registration-gate input{background:#111914;color:#eef1e9;border-color:#35433a}
