:root{
  --sauna-ink:#173236;
  --sauna-muted:#5d6b68;
  --sauna-forest:#365e50;
  --sauna-forest-dark:#264a40;
  --sauna-sand:#d8c4a1;
  --sauna-cream:#f5f3ed;
  --sauna-paper:#fffefa;
  --sauna-line:#d9dfd8;
  --sauna-navy:#0a1f44;
}
.page-sauna{background:var(--sauna-cream);color:var(--sauna-ink);font-family:Inter,Arial,sans-serif}
.page-sauna h1,.page-sauna h2,.page-sauna h3{font-family:Montserrat,Arial,sans-serif;text-transform:none;letter-spacing:-.035em}
.page-sauna a{color:inherit;text-decoration:none}
.page-sauna img{display:block;max-width:100%}
.page-sauna .container{width:min(1240px,90%);margin:0 auto}
.page-sauna .skip{z-index:100}
.page-sauna header.sauna-header{position:sticky;top:0;z-index:40;background:rgba(10,31,68,.97);border-bottom:1px solid rgba(179,213,236,.25);color:#fff;box-shadow:0 5px 22px rgba(0,0,0,.12);backdrop-filter:blur(12px)}
.page-sauna .header-inner{width:min(1280px,94%);min-height:78px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:25px}
.page-sauna #navigation{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:flex-end}
.page-sauna #navigation>a{font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#fff;padding:8px 0}
.page-sauna #navigation>a:hover,.page-sauna #navigation>a.active{color:var(--page-accent)}
.page-sauna #navigation .nav-cta{padding:10px 12px;background:transparent;color:var(--page-accent);border:1px solid var(--page-accent);border-radius:0}
.page-sauna #navigation .nav-cta:hover{background:var(--page-accent);color:#061521}
.page-sauna .cart-trigger{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #cbd5d0;border-radius:3px;background:#fff;color:var(--sauna-ink);font:700 .74rem/1 Inter,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.page-sauna .cart-trigger{border-color:var(--page-accent);background:transparent;color:#fff}
.page-sauna .cart-trigger:hover{border-color:var(--page-accent);color:var(--page-accent)}
.page-sauna .cart-trigger b,.cart-summary-button span:first-of-type{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:50%;background:var(--page-accent);color:#061521;font-size:.68rem}
.page-sauna .cart-icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.page-sauna .menu-toggle{padding:10px 12px;border:1px solid rgba(179,213,236,.35);border-radius:3px;background:transparent;color:#fff;font-size:.8rem}
.store-notice{background:#edf2ed;border-bottom:1px solid #dbe3da;color:#344d46}
.notice-inner{display:flex;align-items:center;gap:12px;padding:11px 0}
.notice-inner p{margin:0;font-size:.78rem;line-height:1.45}
.notice-inner strong{color:#20453c}
.notice-dot{width:8px;height:8px;border-radius:50%;background:#62886f;flex:0 0 auto}
.sauna-hero{position:relative;overflow:hidden;background:var(--sauna-paper);border-bottom:1px solid var(--sauna-line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:65px;align-items:center;padding-top:60px;padding-bottom:60px}
.page-sauna .eyebrow{margin:0 0 15px;color:var(--sauna-forest);font-size:.68rem;font-weight:700;letter-spacing:.18em;line-height:1.45;text-transform:uppercase}
.hero-copy h1{max-width:720px;margin:0;color:var(--sauna-ink);font-size:clamp(3rem,5.4vw,5rem);line-height:.99;font-weight:750}
.hero-copy h1 em{color:var(--sauna-forest);font-style:normal}
.hero-lede{max-width:660px;margin:24px 0 25px;color:#526360;font-size:1.08rem;line-height:1.65}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.page-sauna .button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:49px;padding:13px 17px;border:1px solid transparent;border-radius:3px;font:700 .75rem/1.2 Montserrat,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;transition:background .18s,border-color .18s,color .18s}
.page-sauna .sauna-button{background:var(--sauna-forest);color:#fff}
.page-sauna .sauna-button:hover{background:var(--sauna-forest-dark)}
.page-sauna .sauna-button-quiet{border-color:#c9d2cc;background:transparent;color:var(--sauna-forest-dark)}
.page-sauna .sauna-button-quiet:hover{border-color:var(--sauna-forest);background:#f2f5f0}
.hero-points{display:flex;flex-wrap:wrap;gap:10px 19px;margin-top:26px;color:#526360;font-size:.74rem}
.hero-points span{display:flex;align-items:center;gap:7px}
.hero-points span:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#b89158}
.hero-product{position:relative;display:block;min-height:410px;overflow:hidden;background:#d8cbb4}
.hero-product>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-product:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(10,31,36,.68))}
.hero-product-label{position:absolute;z-index:1;left:24px;right:24px;bottom:22px;display:flex;flex-direction:column;gap:6px;color:#fff}
.hero-product-label small{font-size:.62rem;font-weight:700;letter-spacing:.18em}
.hero-product-label strong{font:700 1.23rem/1.2 Montserrat,Arial,sans-serif}
.shop-section{padding:79px 0 84px;background:var(--sauna-cream)}
.shop-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.shop-heading h2,.ice-story h2,.notes-grid h2,.venue-grid h2,.faq-grid h2{margin:0;color:var(--sauna-ink);font-size:clamp(2.1rem,3.8vw,3.25rem);line-height:1.04;font-weight:720}
.section-intro{max-width:680px;margin:15px 0 0;color:var(--sauna-muted);font-size:.98rem;line-height:1.6}
.cart-summary-button{display:flex;align-items:center;gap:10px;white-space:nowrap;padding:12px 0;border:0;background:none;color:var(--sauna-forest-dark);font:700 .71rem/1 Inter,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.cart-summary-button:hover{color:#a0763b}
.shop-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 25px}
.filter-button{padding:10px 14px;border:1px solid #d0d8d1;border-radius:40px;background:transparent;color:#55645f;font:700 .69rem/1 Inter,Arial,sans-serif;letter-spacing:.04em}
.filter-button:hover,.filter-button.is-active{border-color:var(--sauna-forest);background:var(--sauna-forest);color:#fff}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.product-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e0e4dd;box-shadow:0 8px 22px rgba(30,52,41,.04);transition:transform .18s,box-shadow .18s}
.product-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(30,52,41,.1)}
.product-card[hidden]{display:none}
.product-photo{position:relative;display:block;aspect-ratio:1.16/1;overflow:hidden;background:#e9e5d9}
.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.product-card:hover .product-photo img{transform:scale(1.035)}
.photo-tag{position:absolute;left:12px;top:12px;padding:7px 9px;background:rgba(255,254,250,.91);color:#325749;font-size:.54rem;font-weight:800;letter-spacing:.13em}
.product-copy{display:flex;flex:1;flex-direction:column;padding:17px 17px 16px}
.product-meta{margin:0 0 7px;color:#718077;font-size:.61rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.product-copy h3{margin:0 0 9px;color:var(--sauna-ink);font-size:1.17rem;line-height:1.17;font-weight:700}
.product-copy>p:not(.product-meta){min-height:74px;margin:0 0 14px;color:#5b6964;font-size:.84rem;line-height:1.55}
.product-buy{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:13px;border-top:1px solid #e7ebe5}
.price{color:#294b3f;font:700 1rem/1 Montserrat,Arial,sans-serif}
.add-button{display:inline-flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid #466b5a;background:#fff;color:#315848;font:700 .63rem/1 Inter,Arial,sans-serif;letter-spacing:.045em;text-transform:uppercase}
.add-button:hover{background:#315848;color:#fff}
.add-button span{font-size:1rem;line-height:.7}
.variant-label{margin:0 0 6px;color:#62736b;font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.variant-select{width:100%;height:38px;margin:0 0 13px;padding:0 10px;border:1px solid #ccd6ce;border-radius:0;background:#fff;color:#2e443a;font:inherit;font-size:.8rem}
.price-note{margin:23px 0 0;padding:14px 16px;border-left:3px solid #b99158;background:#ede9dc;color:#5c5c50;font-size:.78rem;line-height:1.5}
.price-note strong{color:#354b40}
.ice-story{padding:78px 0;background:#1b3b36;color:#f5f3ed}
.ice-story-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:64px;align-items:center}
.ice-story-photo{overflow:hidden;min-height:400px}
.ice-story-photo img{width:100%;height:100%;min-height:400px;object-fit:cover}
.ice-story-copy .eyebrow{color:#d5bd8f}
.ice-story h2{color:#f5f3ed}
.ice-story-copy>p:not(.eyebrow){max-width:650px;margin:17px 0 22px;color:#d4e0d8;font-size:.98rem;line-height:1.62}
.ice-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0 27px}
.ice-specs div{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid rgba(235,243,233,.28)}
.ice-specs strong{color:#d5bd8f;font:700 .68rem/1 Montserrat,Arial,sans-serif;letter-spacing:.12em}
.ice-specs span{color:#eff2ea;font-size:.76rem}
.page-sauna .text-link{display:inline-flex;align-items:center;gap:15px;color:#e4cfaa;font:700 .71rem/1 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.page-sauna .text-link:hover{color:#fff}
.product-notes{padding:74px 0;background:#fffefa}
.notes-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px;align-items:center}
.notes-grid>div:first-child>p:not(.eyebrow){max-width:500px;margin:17px 0 0;color:var(--sauna-muted);line-height:1.6}
.notes-panel{padding:27px 30px;border:1px solid #dfe4dd;background:#f6f6f0}
.notes-panel p{margin:0 0 14px;color:#53615b;font-size:.9rem;line-height:1.5}
.notes-panel p:last-of-type{margin-bottom:0}
.notes-panel strong{color:#294c40}
.notes-panel .safety-note{margin-top:20px;padding-top:16px;border-top:1px solid #d9e0d8;color:#68736c;font-size:.76rem}
.venue-section{padding:77px 0;background:#e8ece3}
.venue-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:center}
.venue-grid>div:first-child>p:not(.eyebrow){max-width:660px;margin:17px 0 23px;color:#58665e;line-height:1.63}
.venue-card{padding:27px 28px;background:#fff;border:1px solid #d7ded5}
.venue-mark{display:grid;place-items:center;width:37px;height:37px;margin:0 0 19px;border:1px solid #d8e0d8;border-radius:50%;color:#59806c;font:700 1rem/1 Montserrat,Arial,sans-serif}
.venue-card .eyebrow{margin-bottom:8px}
.venue-card h3{margin:0 0 15px;color:var(--sauna-ink);font-size:1.43rem}
.venue-card ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.venue-card li{position:relative;padding-left:20px;color:#5b6962;font-size:.86rem;line-height:1.5}
.venue-card li:before{content:"✓";position:absolute;left:0;color:#61846b;font-weight:700}
.sauna-faq{padding:77px 0;background:var(--sauna-cream)}
.faq-grid{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);gap:65px;align-items:start}
.faq-grid>div:first-child>p:not(.eyebrow){margin:15px 0 0;color:#65716b;line-height:1.55}
.faq-list{border-top:1px solid #d3dbd2}
.faq-list details{padding:17px 0;border-bottom:1px solid #d3dbd2}
.faq-list summary{position:relative;padding-right:32px;cursor:pointer;list-style:none;color:#244338;font:700 .98rem/1.4 Montserrat,Arial,sans-serif}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:2px;top:-3px;color:#66836f;font:400 1.4rem/1 Inter,Arial,sans-serif}
.faq-list details[open] summary:after{content:"−"}
.faq-list details p{max-width:770px;margin:12px 0 0;color:#5d6b64;font-size:.88rem;line-height:1.58}
.sauna-footer{padding:25px 0;background:#0A1F44;border-top:1px solid rgba(179,213,236,.25);color:#fff}
.sauna-footer .footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
.footer-brand{flex:0 0 auto}
.sauna-footer .footer-inner>p{margin:0;color:var(--page-soft);font-size:.78rem}
.sauna-footer .footer-inner>div{display:flex;align-items:center;gap:10px;color:var(--page-soft);font-size:.77rem}
.sauna-footer .footer-inner a:hover{color:var(--page-accent)}
.drawer-backdrop{position:fixed;z-index:79;inset:0;background:rgba(6,24,27,.54);backdrop-filter:blur(2px)}
.drawer-backdrop[hidden]{display:none}
.cart-drawer{position:fixed;z-index:80;top:0;right:0;width:min(570px,100%);height:100dvh;padding:25px 27px 35px;overflow:auto;background:#fffefa;box-shadow:-20px 0 55px rgba(0,0,0,.19);transform:translateX(103%);visibility:hidden;transition:transform .24s ease,visibility .24s}
.cart-drawer.is-open{transform:translateX(0);visibility:visible}
body.cart-open{overflow:hidden}
.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:17px;border-bottom:1px solid #dce3dc}
.drawer-head .eyebrow{margin-bottom:5px}
.drawer-head h2{margin:0;color:var(--sauna-ink);font-size:1.75rem}
.drawer-close{width:40px;height:40px;border:1px solid #d4ddd5;background:#fff;color:#385345;font-size:1.55rem;line-height:1}
.cart-lines{display:grid;gap:12px;padding:20px 0 13px}
.empty-cart{margin:0;padding:12px 0;color:#6c7771;font-size:.9rem}
.cart-line{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:13px;align-items:center;padding-bottom:12px;border-bottom:1px solid #e4e8e2}
.cart-line>img{width:72px;height:66px;object-fit:cover;background:#ede8da}
.cart-line-details{display:grid;gap:4px}
.cart-line-name{color:#27473b;font-size:.79rem;line-height:1.3}
.cart-line-variant{color:#69746e;font-size:.72rem}
.cart-line-price{color:#52635a;font-size:.74rem;font-weight:700}
.quantity-control{display:flex;align-items:center;gap:5px}
.quantity-control button:not(.remove-line){display:grid;place-items:center;width:27px;height:27px;border:1px solid #cfd8d0;background:#fff;color:#365e50}
.quantity-value{min-width:18px;text-align:center;font-size:.75rem}
.remove-line{display:block;padding:4px 0 0;border:0;background:none;color:#7c7164;font-size:.63rem;text-decoration:underline}
.cart-total{display:flex;align-items:center;justify-content:space-between;padding:15px 0 6px;border-top:1px solid #dce3dc;color:#506158;font-size:.84rem}
.cart-total strong{color:#1f4639;font:700 1.1rem/1 Montserrat,Arial,sans-serif}
.shipping-note{margin:0 0 17px;color:#748078;font-size:.7rem;line-height:1.45}
.order-form{display:grid;gap:11px;padding-top:14px;border-top:1px solid #e1e6df}
.form-heading{margin:0;color:#26473c;font:700 .95rem/1.2 Montserrat,Arial,sans-serif}
.order-form>label{display:grid;gap:5px;color:#52645b;font-size:.69rem;font-weight:700}
.order-form input:not([type=radio]),.order-form select,.order-form textarea{width:100%;min-height:39px;padding:8px 10px;border:1px solid #cfd8d0;border-radius:0;background:#fff;color:#203b32;font:400 .82rem/1.35 Inter,Arial,sans-serif}
.order-form textarea{resize:vertical}
.payment-options{display:grid;gap:8px;margin:5px 0 0;padding:13px;border:1px solid #dce3dc}
.payment-options legend{padding:0 6px;color:#4d6559;font-size:.7rem;font-weight:700}
.payment-option{display:flex;align-items:flex-start;gap:9px;padding:9px;background:#f3f5ef}
.payment-option input{margin:2px 0 0;accent-color:#41664f}
.payment-option span{display:grid;gap:3px}
.payment-option b{color:#365246;font-size:.73rem}
.payment-option small{color:#6a766e;font-size:.67rem;line-height:1.4}
.payment-option.is-disabled{opacity:.6}
.order-submit{width:100%;margin-top:3px}
.shopify-submit{width:100%;margin-top:0;background:var(--page-accent);color:#173236}
.shopify-submit:disabled{background:#d9dfd8;color:#718077;border-color:#d9dfd8;opacity:1}
.shopify-status{margin:0;color:#748078;font-size:.65rem;line-height:1.45}
.privacy-note{margin:0;color:#7a817b;font-size:.65rem;line-height:1.45}
.form-status{margin:0;color:#315c46;font-size:.75rem;line-height:1.45}
.toast{position:fixed;z-index:90;right:24px;bottom:24px;max-width:min(420px,calc(100% - 48px));padding:13px 16px;background:#173a32;color:#fff;font-size:.8rem;line-height:1.4;box-shadow:0 10px 30px rgba(0,0,0,.2);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .2s,transform .2s}
.toast.is-visible{opacity:1;transform:translateY(0)}

.sauna-club-section{padding:82px 0;background:#fff}
.sauna-club-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:52px;align-items:start}
.sauna-club-copy>p:not(.eyebrow){max-width:640px;margin:17px 0;color:#58665e;line-height:1.65}
.sauna-club-copy h2{max-width:610px;margin:0;color:var(--sauna-ink);font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}
.club-price-panel{display:grid;gap:7px;margin:23px 0;padding:18px 20px;border-left:3px solid #66836f;background:#f2f4ee}
.club-price-panel strong{color:#294c40;font:700 .96rem/1.35 Montserrat,Arial,sans-serif}
.club-price-panel span{color:#647169;font-size:.8rem;line-height:1.5}
.waitlist-panel{padding:30px;background:#f8f8f4;border:1px solid #d7ded5}
.waitlist-panel h3{margin:0 0 10px;color:var(--sauna-ink);font-size:1.55rem}
.waitlist-panel>p:not(.eyebrow){margin:0 0 20px;color:#5d6b64;font-size:.88rem;line-height:1.58}
.waitlist-form{display:grid;gap:12px}
.waitlist-form>label:not(.waitlist-consent):not(.waitlist-honeypot){display:grid;gap:6px;color:#52645b;font-size:.73rem;font-weight:700}
.waitlist-form input:not([type=checkbox]),.waitlist-form textarea{width:100%;min-height:40px;padding:9px 11px;border:1px solid #cfd8d0;border-radius:0;background:#fff;color:#203b32;font:400 .84rem/1.4 Inter,Arial,sans-serif}
.waitlist-form textarea{resize:vertical}
.waitlist-form input:focus-visible,.waitlist-form textarea:focus-visible,.waitlist-form button:focus-visible,.waitlist-form a:focus-visible{outline:3px solid #5b8e79;outline-offset:2px}
.optional-label{color:#829087;font-size:.66rem;font-weight:400}
.field-hint{margin:-7px 0 2px;color:#748078;font-size:.7rem;line-height:1.45}
.waitlist-consent{display:flex;align-items:flex-start;gap:10px;color:#536359;font-size:.73rem;line-height:1.5}
.waitlist-consent input{flex:0 0 auto;width:17px;height:17px;margin:2px 0 0;accent-color:#41664f}
.waitlist-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.waitlist-submit{width:100%;margin-top:2px}
.waitlist-submit:disabled{cursor:wait;opacity:.65}
.waitlist-privacy{margin:0;color:#78827c;font-size:.68rem;line-height:1.5}
.waitlist-privacy a{color:#294c40;text-decoration:underline}
.waitlist-status{min-height:1.25em;margin:0;color:#365e50;font-size:.78rem;font-weight:700;line-height:1.45}

@media(max-width:1080px){
  .page-sauna #navigation{gap:14px}
  .page-sauna #navigation>a{font-size:.65rem}
  .page-sauna .header-inner{gap:15px}
  .hero-grid{gap:34px}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cart-trigger{padding:9px}
}
@media(max-width:840px){
  .page-sauna .menu-toggle{display:block}
  .page-sauna .header-inner{flex-wrap:wrap;min-height:74px}
  .page-sauna #navigation{display:none;width:100%;padding:6px 0 15px;flex-wrap:wrap;gap:12px 19px}
  .page-sauna #navigation.open{display:flex}
  .hero-grid{grid-template-columns:1fr;gap:30px;padding-top:45px;padding-bottom:45px}
  .hero-product{min-height:340px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ice-story-grid,.notes-grid,.venue-grid,.faq-grid{grid-template-columns:1fr;gap:32px}
  .ice-story-photo,.ice-story-photo img{min-height:330px}
  .sauna-club-grid{grid-template-columns:1fr;gap:30px}
  .waitlist-panel{padding:24px}
  .faq-grid{gap:24px}
}
@media(max-width:560px){
  .page-sauna .container{width:min(100% - 34px,1240px)}
  .notice-inner{align-items:flex-start;padding:10px 0}
  .notice-inner p{font-size:.7rem}
  .page-sauna .sauna-brand img{width:42px;height:42px}
  .page-sauna .sauna-brand b{font-size:.96rem}
  .page-sauna .header-inner{width:calc(100% - 28px);gap:10px}
  .page-sauna #navigation{gap:9px 16px}
  .page-sauna #navigation>a{font-size:.62rem}
  .page-sauna .cart-trigger{font-size:.64rem;padding:8px}
  .hero-grid{padding-top:36px;padding-bottom:35px}
  .hero-copy h1{font-size:clamp(2.7rem,13vw,4rem)}
  .hero-lede{font-size:.95rem}
  .hero-actions{align-items:stretch;flex-direction:column}
  .hero-actions .button{width:100%;justify-content:space-between}
  .hero-points{display:grid;gap:8px}
  .hero-product{min-height:270px}
  .shop-section,.ice-story,.product-notes,.venue-section,.sauna-faq{padding:56px 0}
  .shop-heading{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:20px}
  .shop-heading h2,.ice-story h2,.notes-grid h2,.venue-grid h2,.faq-grid h2{font-size:2.12rem}
  .product-grid{grid-template-columns:1fr}
  .product-card{display:grid;grid-template-columns:39% minmax(0,1fr)}
  .product-photo{aspect-ratio:auto;min-height:100%;height:100%}
  .product-copy{padding:14px 12px}
  .product-copy h3{font-size:1rem}
  .product-copy>p:not(.product-meta){min-height:0;font-size:.76rem}
  .product-meta{font-size:.53rem}
  .product-buy{align-items:flex-start;flex-direction:column}
  .add-button{width:100%;justify-content:space-between}
  .ice-specs{gap:9px}
  .ice-specs span{font-size:.68rem}
  .venue-card{padding:22px}
  .sauna-footer .footer-inner{align-items:flex-start;flex-direction:column}
  .sauna-footer .footer-inner>div{flex-wrap:wrap}
  .cart-drawer{padding:19px 17px 28px}
  .cart-line{grid-template-columns:55px minmax(0,1fr);gap:10px}
  .cart-line>img{width:55px;height:55px}
  .quantity-control{grid-column:2;justify-self:start}
}
