:root{--sf-paper:#FCFDFE;--sf-ice:#EEF4F8;--sf-navy:#0B1B2B;--sf-navy-2:#142B42;--sf-cyan:#21C3E0;--sf-ice-blue:#7FD9EC;--sf-text:#1A2430;--sf-muted:#5D6C7B;--sf-line:#E3EBF1;--sf-radius:.5rem;--sf-shell:1380px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.snowfox-sr1{margin:0;background:var(--sf-paper);color:var(--sf-text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}
.snowfox-sr1 pre,.snowfox-sr1 code,.sf-mono{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
.snowfox-sr1 ::selection{background:var(--sf-ice-blue);color:var(--sf-navy)}
.snowfox-sr1 :focus-visible{outline:2px solid var(--sf-cyan);outline-offset:2px}
.snowfox-sr1 img{max-width:100%;height:auto;display:block}
.snowfox-sr1 a{color:inherit}
.sf-skip{position:absolute;left:-9999px}
.sf-skip:focus{left:1rem;top:1rem;z-index:200;background:#fff;padding:.75rem 1rem;border:1px solid var(--sf-line);border-radius:var(--sf-radius)}
.sf-shell{margin:0 auto;max-width:var(--sf-shell);padding:0 1.25rem;width:100%}
@media(min-width:640px){.sf-shell{padding:0 2rem}}
@media(min-width:1024px){.sf-shell{padding:0 3rem}}
.sf-main{min-height:60vh;padding:2.5rem 0 4rem}
.sf-h2{font-size:clamp(1.5rem,1.1rem + 1.6vw,2.15rem);line-height:1.15;font-weight:600;letter-spacing:-.015em;color:var(--sf-navy);margin:0 0 1rem}
.sf-h3{font-size:1.15rem;font-weight:600;color:var(--sf-navy);margin:0 0 .5rem}
.sf-label{font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.16em}
.sf-prose{max-width:72ch}
.sf-prose p{margin:0 0 1rem}
/* header */
.sf-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--sf-line);background:rgba(252,253,254,.95);backdrop-filter:blur(14px);box-shadow:0 1px 12px rgba(7,20,35,.04)}
.sf-header-inner{margin:0 auto;max-width:var(--sf-shell);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.875rem 1.25rem}
@media(min-width:640px){.sf-header-inner{padding:.875rem 2rem}}
@media(min-width:1024px){.sf-header-inner{padding:.875rem 3rem}}
.sf-wordmark-link{display:flex;min-height:44px;align-items:center;text-decoration:none;flex-shrink:0}
.sf-wordmark{display:inline-flex;flex-direction:column;line-height:1}
.sf-wordmark-top{font-size:19px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--sf-navy)}
.sf-wordmark-sub{font-size:10px;font-weight:500;margin-top:3px;text-transform:uppercase;letter-spacing:.34em;color:var(--sf-cyan)}
.sf-wordmark-sm .sf-wordmark-top{font-size:15px}.sf-wordmark-sm .sf-wordmark-sub{font-size:8.5px}
.sf-wordmark-light .sf-wordmark-top{color:#fff}
.sf-nav{display:none;align-items:center;gap:2px}
@media(min-width:1280px){.sf-nav{display:flex}}
.sf-nav-group{position:relative}
.sf-nav-link{position:relative;display:flex;min-height:44px;align-items:center;gap:.25rem;padding:0 .75rem;font-size:14px;font-weight:500;color:var(--sf-muted);text-decoration:none;background:none;border:0;cursor:pointer;font-family:inherit;transition:color .15s}
.sf-nav-link:hover,.sf-nav-trigger[aria-expanded="true"]{color:var(--sf-navy)}
.sf-caret{transition:transform .15s}
.sf-nav-trigger[aria-expanded="true"] .sf-caret{transform:rotate(180deg)}
.sf-nav-panel{position:absolute;left:0;top:100%;z-index:60;width:264px;padding-top:6px}
.sf-nav-panel-card{border:1px solid var(--sf-line);background:#fff;border-radius:.75rem;padding:.5rem;box-shadow:0 18px 44px -28px rgba(11,27,43,.45)}
.sf-nav-panel-link{display:block;border-radius:.5rem;padding:.5rem .75rem;font-size:14px;color:var(--sf-text);text-decoration:none}
.sf-nav-panel-link:hover{background:var(--sf-ice);color:var(--sf-navy)}
.sf-header-actions{display:flex;align-items:center;gap:.5rem}
.sf-icon-btn{position:relative;display:flex;height:44px;width:44px;align-items:center;justify-content:center;border:1px solid var(--sf-line);border-radius:var(--sf-radius);color:var(--sf-navy);background:none;cursor:pointer;text-decoration:none;transition:border-color .15s}
.sf-icon-btn:hover{border-color:var(--sf-cyan)}
.sf-hide-sm{display:none}@media(min-width:640px){.sf-hide-sm{display:flex}}
@media(min-width:1280px){.sf-burger{display:none}}
.sf-cart-badge{position:absolute;right:-6px;top:-6px;display:flex;height:20px;min-width:20px;align-items:center;justify-content:center;border-radius:9999px;background:var(--sf-cyan);padding:0 4px;font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:600;color:var(--sf-navy)}
/* drawer */
.sf-drawer-scrim{position:fixed;inset:0;z-index:65;background:rgba(11,27,43,.4);backdrop-filter:blur(2px)}
.sf-drawer{position:fixed;right:0;top:0;z-index:66;height:100%;width:88%;max-width:360px;overflow-y:auto;border-left:1px solid var(--sf-line);background:#fff}
.sf-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:1.25rem}
.sf-drawer-nav{padding:0 1.25rem 2rem;display:flex;flex-direction:column}
.sf-drawer-link{padding:.75rem 0;font-size:16px;font-weight:600;color:var(--sf-navy);text-decoration:none;border-bottom:1px solid var(--sf-line)}
.sf-drawer-sublink{padding:.5rem 0 .5rem 1rem;font-size:14px;color:var(--sf-muted);text-decoration:none}
.sf-drawer-cta{margin-top:1.5rem;width:100%}
/* buttons */
.sf-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:0 1.25rem;border-radius:var(--sf-radius);font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s,color .15s;font-family:inherit}
.sf-btn-primary{background:var(--sf-navy);color:#fff}
.sf-btn-primary:hover{background:var(--sf-navy-2)}
.sf-btn-outline{background:transparent;color:var(--sf-navy);border-color:var(--sf-line)}
.sf-btn-outline:hover{border-color:var(--sf-cyan)}
/* footer */
.sf-footer{background:var(--sf-navy);color:#fff;margin-top:4rem}
.sf-footer-inner{margin:0 auto;max-width:var(--sf-shell);padding:3rem 1.25rem;display:grid;gap:2.5rem}
@media(min-width:768px){.sf-footer-inner{grid-template-columns:1.2fr 1fr;padding:3.5rem 2rem}}
@media(min-width:1024px){.sf-footer-inner{padding:3.5rem 3rem}}
.sf-footer-blurb{margin:1.5rem 0 0;max-width:24rem;font-size:15px;line-height:1.7;color:rgba(255,255,255,.58)}
.sf-footer-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.sf-footer-col-title{margin:0 0 .75rem;font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--sf-cyan)}
.sf-footer-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.sf-footer-list a{font-size:14px;color:rgba(255,255,255,.7);text-decoration:none}
.sf-footer-list a:hover{color:#fff}
.sf-footer-base{border-top:1px solid rgba(255,255,255,.12)}
.sf-footer-base p{margin:0 auto;max-width:var(--sf-shell);padding:1.25rem;font-size:12px;color:rgba(255,255,255,.5)}

/* ============ WooCommerce bridge — native markup, SR-1 skin ============ */
.snowfox-sr1 .woocommerce-breadcrumb{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sf-muted);margin:0 0 1.5rem}
.snowfox-sr1 .woocommerce-breadcrumb a{color:var(--sf-muted);text-decoration:none}
.snowfox-sr1 .woocommerce-breadcrumb a:hover{color:var(--sf-navy)}
.snowfox-sr1 .woocommerce-products-header__title,.snowfox-sr1 .product_title,.snowfox-sr1 h1.entry-title{font-size:clamp(1.5rem,1.1rem + 1.6vw,2.15rem);line-height:1.15;font-weight:600;letter-spacing:-.015em;color:var(--sf-navy);margin:0 0 1rem}
.snowfox-sr1 .woocommerce-result-count{font-size:13px;color:var(--sf-muted)}
.snowfox-sr1 .woocommerce-ordering select,.snowfox-sr1 select,.snowfox-sr1 input[type=text],.snowfox-sr1 input[type=email],.snowfox-sr1 input[type=tel],.snowfox-sr1 input[type=password],.snowfox-sr1 input[type=number],.snowfox-sr1 textarea{border:1px solid var(--sf-line);border-radius:var(--sf-radius);padding:.65rem .75rem;font-family:inherit;font-size:14px;color:var(--sf-text);background:#fff;width:100%;min-height:44px}
.snowfox-sr1 .woocommerce-ordering select{width:auto}
/* product grid */
.snowfox-sr1 ul.products{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:1.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:900px){.snowfox-sr1 ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
.snowfox-sr1 ul.products li.product{list-style:none;margin:0;padding:0;border:1px solid var(--sf-line);border-radius:.75rem;background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s}
.snowfox-sr1 ul.products li.product:hover{border-color:var(--sf-cyan);box-shadow:0 18px 44px -30px rgba(11,27,43,.45)}
.snowfox-sr1 ul.products li.product a{text-decoration:none;color:inherit}
.snowfox-sr1 .sf-prod-media{background:var(--sf-ice);aspect-ratio:4/3;overflow:hidden;display:flex;align-items:center;justify-content:center}
.snowfox-sr1 .sf-prod-media img{width:100%;height:100%;object-fit:cover}
.snowfox-sr1 ul.products li.product .woocommerce-loop-product__title{font-size:15px;font-weight:600;color:var(--sf-navy);margin:0;padding:1rem 1rem .25rem;line-height:1.35}
.snowfox-sr1 ul.products li.product .price{display:block;padding:0 1rem;font-family:"JetBrains Mono",monospace;font-size:14px;font-weight:600;color:var(--sf-navy)}
.snowfox-sr1 ul.products li.product .price del{color:var(--sf-muted);font-weight:400;margin-right:.4rem}
.snowfox-sr1 ul.products li.product .button{margin:auto 1rem 1rem;display:inline-flex;align-items:center;justify-content:center;min-height:42px}
.snowfox-sr1 .onsale{display:inline-block;margin:1rem 1rem 0;padding:.15rem .5rem;border-radius:9999px;background:var(--sf-cyan);color:var(--sf-navy);font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
/* buttons */
.snowfox-sr1 .woocommerce a.button,.snowfox-sr1 .woocommerce button.button,.snowfox-sr1 .woocommerce input.button,.snowfox-sr1 a.button,.snowfox-sr1 button.button,.snowfox-sr1 .woocommerce #respond input#submit,.snowfox-sr1 .wc-block-components-button{background:var(--sf-navy);color:#fff;border:1px solid var(--sf-navy);border-radius:var(--sf-radius);font-family:inherit;font-size:14px;font-weight:600;min-height:44px;padding:0 1.25rem;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:background .15s}
.snowfox-sr1 .woocommerce a.button:hover,.snowfox-sr1 .woocommerce button.button:hover,.snowfox-sr1 .woocommerce input.button:hover,.snowfox-sr1 a.button:hover,.snowfox-sr1 button.button:hover{background:var(--sf-navy-2);color:#fff}
.snowfox-sr1 .woocommerce a.button.alt,.snowfox-sr1 .woocommerce button.button.alt,.snowfox-sr1 .woocommerce input.button.alt{background:var(--sf-navy);border-color:var(--sf-navy)}
.snowfox-sr1 .added_to_cart{display:inline-block;margin:0 1rem 1rem;font-size:13px;color:var(--sf-muted)}
/* single product */
.snowfox-sr1 .woocommerce div.product{display:grid;gap:2.5rem}
@media(min-width:900px){.snowfox-sr1 .woocommerce div.product{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start}}
.snowfox-sr1 .woocommerce div.product div.images{margin:0;border:1px solid var(--sf-line);border-radius:.75rem;overflow:hidden;background:var(--sf-ice)}
.snowfox-sr1 .woocommerce div.product div.summary{margin:0}
.snowfox-sr1 .woocommerce div.product p.price,.snowfox-sr1 .woocommerce div.product span.price{font-family:"JetBrains Mono",monospace;font-size:1.4rem;font-weight:600;color:var(--sf-navy);margin:.5rem 0 1.25rem}
.snowfox-sr1 .woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:1.5rem 0}
.snowfox-sr1 .quantity input.qty{width:88px;text-align:center}
.snowfox-sr1 .woocommerce-product-details__short-description{color:var(--sf-muted);font-size:15px;line-height:1.7}
.snowfox-sr1 .woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:.25rem;padding:0;margin:2.5rem 0 0;border-bottom:1px solid var(--sf-line);flex-wrap:wrap}
.snowfox-sr1 .woocommerce-tabs ul.tabs li{margin:0}
.snowfox-sr1 .woocommerce-tabs ul.tabs li a{display:block;padding:.75rem 1rem;font-size:13px;font-weight:600;color:var(--sf-muted);text-decoration:none;border-bottom:2px solid transparent}
.snowfox-sr1 .woocommerce-tabs ul.tabs li.active a{color:var(--sf-navy);border-bottom-color:var(--sf-cyan)}
.snowfox-sr1 .woocommerce-tabs .panel{padding-top:1.5rem;color:var(--sf-text)}
.snowfox-sr1 .product_meta{font-size:13px;color:var(--sf-muted);border-top:1px solid var(--sf-line);padding-top:1rem;margin-top:1.5rem}
/* tables: cart, checkout, account */
.snowfox-sr1 .woocommerce table.shop_table,.snowfox-sr1 table.shop_table{width:100%;border-collapse:collapse;border:1px solid var(--sf-line);border-radius:.75rem;overflow:hidden;background:#fff}
.snowfox-sr1 table.shop_table th{background:var(--sf-ice);text-align:left;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--sf-muted);padding:.85rem 1rem;font-weight:600}
.snowfox-sr1 table.shop_table td{padding:1rem;border-top:1px solid var(--sf-line);font-size:14px;vertical-align:middle}
.snowfox-sr1 table.shop_table img{width:64px;border-radius:.5rem}
.snowfox-sr1 .cart_totals h2,.snowfox-sr1 #order_review_heading,.snowfox-sr1 .woocommerce-billing-fields h3,.snowfox-sr1 .woocommerce-additional-fields h3{font-size:1.15rem;font-weight:600;color:var(--sf-navy);margin:2rem 0 1rem}
.snowfox-sr1 .woocommerce-checkout .col2-set{display:grid;gap:2rem}
@media(min-width:900px){.snowfox-sr1 .woocommerce-checkout .col2-set{grid-template-columns:repeat(2,minmax(0,1fr))}}
.snowfox-sr1 .form-row{display:block;margin:0 0 1rem}
.snowfox-sr1 .form-row label{display:block;font-size:13px;font-weight:500;color:var(--sf-text);margin:0 0 .35rem}
.snowfox-sr1 .woocommerce-message,.snowfox-sr1 .woocommerce-info,.snowfox-sr1 .woocommerce-error,.snowfox-sr1 .wc-block-components-notice-banner{border:1px solid var(--sf-line);border-left:3px solid var(--sf-cyan);background:var(--sf-ice);border-radius:var(--sf-radius);padding:1rem 1.25rem;margin:0 0 1.5rem;list-style:none;font-size:14px}
.snowfox-sr1 .woocommerce-error{border-left-color:#c0392b}
.snowfox-sr1 .woocommerce-message .button,.snowfox-sr1 .woocommerce-info .button{margin-left:1rem}
.snowfox-sr1 #payment ul.payment_methods{list-style:none;padding:0;margin:0 0 1rem;border:1px solid var(--sf-line);border-radius:.75rem;background:#fff}
.snowfox-sr1 #payment ul.payment_methods li{padding:1rem;border-bottom:1px solid var(--sf-line)}
.snowfox-sr1 #payment div.form-row{padding:1rem 0 0}
.snowfox-sr1 .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:1px solid var(--sf-line)}
.snowfox-sr1 .woocommerce-MyAccount-navigation a{display:block;padding:.75rem 1rem;font-size:13px;font-weight:600;color:var(--sf-muted);text-decoration:none;border-bottom:2px solid transparent}
.snowfox-sr1 .woocommerce-MyAccount-navigation li.is-active a{color:var(--sf-navy);border-bottom-color:var(--sf-cyan)}
.snowfox-sr1 .woocommerce-form{border:1px solid var(--sf-line);border-radius:.75rem;padding:1.5rem;background:#fff;max-width:30rem}

/* ================= SR-1 HOMEPAGE ================= */
.sf-home{display:block}
.sf-sec{padding:4rem 0}
@media(min-width:1024px){.sf-sec{padding:6rem 0}}
.sf-sec-paper{background:var(--sf-paper)}
.sf-sec-ice{background:var(--sf-ice)}
.sf-sec-navy{background:var(--sf-navy);color:#fff}
.sf-label-cyan{color:var(--sf-cyan)}
.sf-display{font-size:clamp(2.1rem,1.3rem + 3.4vw,3.75rem);line-height:1.04;font-weight:600;letter-spacing:-.03em;color:var(--sf-navy);margin:1.5rem 0 0}
.sf-lede{font-size:17px;line-height:1.7;color:var(--sf-muted);margin:1.75rem 0 0;max-width:36rem}
.sf-lede-sm{font-size:15px;margin-top:0}
.sf-muted-copy{font-size:15px;line-height:1.7;color:var(--sf-muted);margin:.5rem 0 0}
.sf-on-navy{color:#fff}
/* hero */
.sf-hero-grid{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.sf-hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:2.5rem}}
.sf-hero-cta{margin-top:2.25rem;display:flex;flex-direction:column;gap:.75rem}
@media(min-width:640px){.sf-hero-cta{flex-direction:row;align-items:center}}
.sf-hero-media{position:relative}
.sf-hero-frame{position:relative;overflow:hidden;border-radius:1rem;border:1px solid var(--sf-line);background:#fff}
.sf-hero-frame img{width:100%;height:240px;object-fit:cover}
@media(min-width:640px){.sf-hero-frame img{height:340px}}
@media(min-width:1024px){.sf-hero-frame img{height:520px}}
.sf-hero-placeholder{display:flex;align-items:center;justify-content:center;height:240px;background:linear-gradient(140deg,var(--sf-ice) 0%,#fff 55%,var(--sf-ice) 100%)}
@media(min-width:640px){.sf-hero-placeholder{height:340px}}
@media(min-width:1024px){.sf-hero-placeholder{height:520px}}
.sf-hairline-top{position:absolute;inset-inline:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--sf-cyan),transparent);z-index:2}
.sf-lot-card{position:relative;margin-top:1rem;border:1px solid var(--sf-line);border-radius:.75rem;background:#fff;padding:1rem;box-shadow:0 18px 40px -30px rgba(11,27,43,.55);max-width:300px}
.sf-lot-id{font-family:"JetBrains Mono",monospace;font-size:19px;letter-spacing:-.01em;color:var(--sf-navy);margin:.6rem 0 0}
.sf-lot-row{margin-top:.85rem}
.sf-chip{display:inline-block;padding:.25rem .6rem;border-radius:9999px;font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.sf-chip-cyan{background:rgba(33,195,224,.14);color:#0d6f83}
/* explore */
.sf-explore{margin-top:3rem;display:grid;gap:1.25rem}
@media(min-width:768px){.sf-explore{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sf-explore-card{display:flex;flex-direction:column;gap:.35rem;border:1px solid var(--sf-line);border-radius:.9rem;background:#fff;padding:1.75rem;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.sf-explore-card:hover{border-color:var(--sf-cyan);box-shadow:0 20px 48px -34px rgba(11,27,43,.5)}
.sf-link{color:var(--sf-navy);font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--sf-cyan);padding-bottom:2px;align-self:flex-start;margin-top:1.25rem}
.sf-link:hover{color:var(--sf-cyan)}
/* featured */
.sf-feat-head{display:grid;gap:1.5rem;align-items:end}
@media(min-width:1024px){.sf-feat-head{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.sf-feat-list{margin-top:3rem;border-bottom:1px solid var(--sf-line)}
.sf-feat-row{display:grid;gap:1.25rem;border-top:1px solid var(--sf-line);padding:2.25rem 0}
@media(min-width:1024px){.sf-feat-row{grid-template-columns:4fr 5fr 3fr;align-items:baseline;gap:2rem}}
.sf-serif-title{font-family:Newsreader,Georgia,serif;font-size:27px;font-weight:500;line-height:1.15;letter-spacing:-.03em;color:var(--sf-navy);margin:.75rem 0 0}
.sf-feat-c2{font-size:15px;line-height:1.7;color:var(--sf-muted);margin:0}
.sf-feat-status{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--sf-navy);margin:0}
/* why */
.sf-why{margin-top:3rem;display:grid;gap:2rem}
@media(min-width:768px){.sf-why{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sf-why-item{border-top:1px solid var(--sf-line);padding-top:1.5rem}
/* academy */
.sf-academy{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.sf-academy{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.sf-academy .sf-h2{color:#fff}
.sf-academy-sub{font-size:17px;color:var(--sf-cyan);margin:1rem 0 0;font-weight:500}
.sf-academy-copy{font-size:15px;line-height:1.75;color:rgba(255,255,255,.7);margin:1rem 0 0;max-width:34rem}
.sf-btn-onnavy{background:#fff;color:var(--sf-navy)}
.sf-btn-onnavy:hover{background:var(--sf-ice-blue)}
.sf-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}
.sf-btn-ghost:hover{border-color:var(--sf-cyan)}
.sf-quote{margin:0;border-left:2px solid var(--sf-cyan);padding-left:1.5rem}
.sf-quote p:first-child{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:21px;line-height:1.5;color:#fff;margin:0}
.sf-quote-principle{margin-top:1.25rem;display:block}
/* access */
.sf-access{margin-top:2.5rem;display:grid;gap:2.5rem}
@media(min-width:768px){.sf-access{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sf-access-list{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;gap:1rem}
.sf-access-list li{border-top:1px solid var(--sf-line);padding-top:1rem;display:grid;gap:.25rem}
.sf-access-label{font-size:15px;font-weight:600;color:var(--sf-navy)}
.sf-access-note{font-size:14px;color:var(--sf-muted)}
.sf-access-cta{margin-top:2.5rem}
/* clarity */
.sf-clarity{display:grid;gap:2.5rem}
@media(min-width:1024px){.sf-clarity{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}}
.sf-clarity-list{list-style:none;margin:0 0 2rem;padding:0;display:grid;gap:.85rem}
.sf-clarity-list li{border-top:1px solid var(--sf-line);padding-top:.85rem;font-size:15px;color:var(--sf-navy);font-weight:500}

/* Specificity guard: .snowfox-sr1 a{color:inherit} outranks bare .sf-btn-* rules. */
.snowfox-sr1 a.sf-btn-primary,.snowfox-sr1 .sf-btn-primary{color:#fff}
.snowfox-sr1 a.sf-btn-primary:hover,.snowfox-sr1 .sf-btn-primary:hover{color:#fff}
.snowfox-sr1 a.sf-btn-outline,.snowfox-sr1 .sf-btn-outline{color:var(--sf-navy)}
.snowfox-sr1 a.sf-btn-onnavy,.snowfox-sr1 .sf-btn-onnavy{color:var(--sf-navy)}
.snowfox-sr1 a.sf-btn-ghost,.snowfox-sr1 .sf-btn-ghost{color:#fff}
.snowfox-sr1 a.sf-link,.snowfox-sr1 .sf-link{color:var(--sf-navy)}
.snowfox-sr1 a.sf-link:hover{color:var(--sf-cyan)}
.snowfox-sr1 .sf-explore-card:hover .sf-link{color:var(--sf-cyan)}
.snowfox-sr1 .sf-footer-list a{color:rgba(255,255,255,.7)}
.snowfox-sr1 .sf-footer-list a:hover{color:#fff}
.snowfox-sr1 .sf-drawer-link{color:var(--sf-navy)}
.snowfox-sr1 .sf-drawer-sublink{color:var(--sf-muted)}
.snowfox-sr1 .sf-nav-link{color:var(--sf-muted)}
.snowfox-sr1 .sf-nav-link:hover,.snowfox-sr1 .sf-nav-trigger[aria-expanded="true"]{color:var(--sf-navy)}
.snowfox-sr1 .sf-nav-panel-link{color:var(--sf-text)}
.snowfox-sr1 .sf-icon-btn{color:var(--sf-navy)}


/* ============================================================================
   SNOWFOX SR-1 — WOOCOMMERCE SURFACES
   D-076 storefront pass 2: shop/category, product detail, cart, checkout,
   account, notices. Native WooCommerce markup only — no Elementor, no Bravis.
   ========================================================================= */

.snowfox-sr1 .sf-woo { padding: 40px 0 96px; }
.snowfox-sr1 .sf-woo .sf-shell { width: 100%; }

.snowfox-sr1 .sf-woo-eyebrow {
	font-size: 10px;
	line-height: 1;
	letter-spacing: .30em;
	text-transform: uppercase;
	color: #0E7C92;
	margin: 0 0 14px;
	font-weight: 600;
}

.snowfox-sr1 .sf-woo h1.page-title {
	font-family: Newsreader, Georgia, "Times New Roman", serif;
	font-weight: 400;
	font-size: clamp(30px, 4.2vw, 46px);
	line-height: 1.12;
	letter-spacing: -0.015em;
	color: var(--sf-navy);
	margin: 0 0 10px;
}

.snowfox-sr1 .sf-woo .term-description,
.snowfox-sr1 .sf-woo .woocommerce-product-details__short-description {
	max-width: 62ch;
	color: var(--sf-muted);
	font-size: 15px;
	line-height: 1.65;
}

.snowfox-sr1 .sf-woo-archive .woocommerce-result-count,
.snowfox-sr1 .sf-woo-archive .woocommerce-ordering { margin: 0; }

.snowfox-sr1 .sf-woo-archive .woocommerce-result-count {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--sf-muted);
}

.snowfox-sr1 .sf-woo select.orderby {
	appearance: none;
	-webkit-appearance: none;
	background-color: #fff;
	background-image: linear-gradient(45deg, transparent 50%, var(--sf-muted) 50%), linear-gradient(135deg, var(--sf-muted) 50%, transparent 50%);
	background-position: calc(100% - 17px) calc(50% + 1px), calc(100% - 12px) calc(50% + 1px);
	background-size: 5px 5px, 5px 5px;
	background-repeat: no-repeat;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	color: var(--sf-text);
	font: inherit;
	font-size: 13px;
	padding: 11px 38px 11px 13px;
	cursor: pointer;
}

.snowfox-sr1 .sf-woo-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	padding: 16px 0 24px;
	border-top: 1px solid var(--sf-line);
	margin-top: 26px;
}

/* --- product grid -------------------------------------------------------- */

.snowfox-sr1 ul.products {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (min-width: 1280px) {
	.snowfox-sr1 ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.snowfox-sr1 ul.products::before,
.snowfox-sr1 ul.products::after { content: none; display: none; }

.snowfox-sr1 ul.products li.product {
	list-style: none;
	margin: 0 !important;
	padding: 0;
	width: auto !important;
	float: none !important;
	clear: none !important;
	position: relative;
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	overflow: hidden;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.snowfox-sr1 ul.products li.product:hover {
	border-color: rgba(33, 195, 224, .55);
	box-shadow: 0 10px 30px -18px rgba(11, 27, 43, .45);
	transform: translateY(-2px);
}
.snowfox-sr1 ul.products li.product > a.woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 0;
	text-decoration: none;
	color: inherit;
}
.snowfox-sr1 .sf-prod-media {
	position: relative;
	background: var(--sf-ice);
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-bottom: 1px solid var(--sf-line);
}
.snowfox-sr1 .sf-prod-media img,
.snowfox-sr1 ul.products li.product img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	margin: 0;
	box-shadow: none;
	transition: transform .5s cubic-bezier(.2, .7, .3, 1);
}
.snowfox-sr1 ul.products li.product:hover .sf-prod-media img { transform: scale(1.035); }

.snowfox-sr1 .sf-card-eyebrow {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 10px;
	line-height: 1;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--sf-muted);
	margin: 0;
	padding: 18px 18px 0;
}
.snowfox-sr1 ul.products li.product .woocommerce-loop-product__title {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: var(--sf-navy);
	padding: 8px 18px 0;
	margin: 0;
}
.snowfox-sr1 .sf-card-avail {
	margin: 14px 18px 0;
	padding: 10px 12px;
	border: 1px solid var(--sf-line);
	border-radius: 6px;
	background: var(--sf-paper);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--sf-navy);
}
.snowfox-sr1 .sf-card-avail--back { border-color: rgba(201, 138, 46, .45); background: rgba(232, 163, 61, .08); }
.snowfox-sr1 .sf-card-avail--out { color: var(--sf-muted); }

.snowfox-sr1 ul.products li.product .price {
	display: block;
	padding: 14px 18px 0;
	margin: 0 0 auto;
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 13px;
	font-weight: 500;
	color: var(--sf-navy);
}
.snowfox-sr1 ul.products li.product .price del { color: var(--sf-muted); opacity: .7; margin-right: 6px; }
.snowfox-sr1 ul.products li.product .price ins { text-decoration: none; font-weight: 600; }

.snowfox-sr1 .sf-card-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 16px 18px 18px;
	padding: 0 0 2px;
	font-size: 13.5px;
	font-weight: 500;
	color: #0E7C92;
	text-decoration: none;
	border-bottom: 1px solid rgba(14, 124, 146, .35);
	transition: color .15s ease, border-color .15s ease;
	align-self: flex-start;
}
.snowfox-sr1 .sf-card-cta:hover { color: var(--sf-navy); border-bottom-color: var(--sf-cyan); }
.snowfox-sr1 .sf-card-cta-arrow { font-size: 12px; line-height: 1; }

.snowfox-sr1 ul.products li.product .woosw-btn {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 2;
	background: rgba(255, 255, 255, .92);
	border: 1px solid var(--sf-line);
	border-radius: 999px;
	padding: 6px 11px;
	font-size: 11px;
	line-height: 1.2;
	color: var(--sf-muted);
	cursor: pointer;
	margin: 0;
	transition: color .15s ease, border-color .15s ease;
}
.snowfox-sr1 ul.products li.product .woosw-btn:hover { color: var(--sf-navy); border-color: var(--sf-cyan); }

/* --- pagination ---------------------------------------------------------- */

.snowfox-sr1 .woocommerce-pagination {
	margin: 40px 0 0;
	border-top: 1px solid var(--sf-line);
	padding-top: 24px;
}
.snowfox-sr1 .woocommerce-pagination ul { display: flex; gap: 8px; list-style: none; margin: 0; padding: 0; border: 0; }
.snowfox-sr1 .woocommerce-pagination ul li { border: 0; margin: 0; }
.snowfox-sr1 .woocommerce-pagination ul li a,
.snowfox-sr1 .woocommerce-pagination ul li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 10px;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	font-size: 13px;
	color: var(--sf-text);
	text-decoration: none;
	background: #fff;
}
.snowfox-sr1 .woocommerce-pagination ul li span.current { background: var(--sf-navy); border-color: var(--sf-navy); color: #fff; }
.snowfox-sr1 .woocommerce-pagination ul li a:hover { border-color: var(--sf-cyan); color: var(--sf-navy); }

/* --- buttons ------------------------------------------------------------- */

.snowfox-sr1 .woocommerce a.button,
.snowfox-sr1 .woocommerce button.button,
.snowfox-sr1 .woocommerce input.button,
.snowfox-sr1 a.button,
.snowfox-sr1 button.button,
.snowfox-sr1 input.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--sf-navy);
	color: #fff;
	border: 1px solid var(--sf-navy);
	border-radius: var(--sf-radius);
	font-family: inherit;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .02em;
	line-height: 1;
	padding: 14px 20px;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, color .16s ease;
	box-shadow: none;
}
.snowfox-sr1 .woocommerce a.button:hover,
.snowfox-sr1 .woocommerce button.button:hover,
.snowfox-sr1 .woocommerce input.button:hover,
.snowfox-sr1 a.button:hover,
.snowfox-sr1 button.button:hover,
.snowfox-sr1 input.button:hover { background: #142B42; border-color: #142B42; color: #fff; }

.snowfox-sr1 .woocommerce a.button.alt,
.snowfox-sr1 .woocommerce button.button.alt,
.snowfox-sr1 .woocommerce input.button.alt { background: var(--sf-navy); border-color: var(--sf-navy); color: #fff; }

.snowfox-sr1 .woocommerce .cart .actions .button[name="update_cart"],
.snowfox-sr1 .woocommerce a.button.wc-backward,
.snowfox-sr1 .woocommerce .woocommerce-Button--next,
.snowfox-sr1 .woocommerce .woocommerce-Button--previous {
	background: #fff;
	color: var(--sf-navy);
	border-color: var(--sf-line);
}
.snowfox-sr1 .woocommerce .cart .actions .button[name="update_cart"]:hover,
.snowfox-sr1 .woocommerce a.button.wc-backward:hover { background: var(--sf-ice); color: var(--sf-navy); border-color: var(--sf-cyan); }

.snowfox-sr1 .woocommerce .button:disabled,
.snowfox-sr1 .woocommerce .button.disabled { opacity: .5; cursor: not-allowed; }

/* --- product detail ------------------------------------------------------ */

.snowfox-sr1 .sf-crumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--sf-muted);
	margin: 0 0 26px;
}
.snowfox-sr1 .sf-crumb a { color: var(--sf-muted); text-decoration: none; }
.snowfox-sr1 .sf-crumb a:hover { color: var(--sf-navy); }
.snowfox-sr1 .sf-crumb-current { color: var(--sf-navy); }

.snowfox-sr1 .sf-woo-single div.product {
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	column-gap: 56px;
	row-gap: 44px;
	align-items: start;
}
.snowfox-sr1 .sf-woo-single div.product::before,
.snowfox-sr1 .sf-woo-single div.product::after { content: none; display: none; }

.snowfox-sr1 .sf-woo-single .woocommerce-product-gallery {
	grid-column: 1;
	width: 100% !important;
	float: none !important;
	margin: 0;
	position: relative;
	border: 1px solid var(--sf-line);
	border-radius: 14px;
	overflow: hidden;
	background: var(--sf-ice);
}
.snowfox-sr1 .sf-woo-single .woocommerce-product-gallery__wrapper { margin: 0; }
.snowfox-sr1 .sf-woo-single .woocommerce-product-gallery img { display: block; width: 100%; height: auto; }
.snowfox-sr1 .sf-woo-single .woocommerce-product-gallery__trigger {
	top: 12px;
	right: 12px;
	background: rgba(255, 255, 255, .94);
	border: 1px solid var(--sf-line);
	border-radius: 999px;
	width: 34px;
	height: 34px;
	line-height: 32px;
	text-align: center;
	color: var(--sf-navy);
	text-decoration: none;
	z-index: 3;
}
.snowfox-sr1 .sf-woo-single .flex-control-thumbs { display: flex; gap: 10px; list-style: none; margin: 12px; padding: 0; }
.snowfox-sr1 .sf-woo-single .flex-control-thumbs li { width: 68px; margin: 0; }
.snowfox-sr1 .sf-woo-single .flex-control-thumbs img { border: 1px solid var(--sf-line); border-radius: 4px; background: #fff; opacity: .75; cursor: pointer; }
.snowfox-sr1 .sf-woo-single .flex-control-thumbs img.flex-active,
.snowfox-sr1 .sf-woo-single .flex-control-thumbs img:hover { opacity: 1; border-color: var(--sf-cyan); }

.snowfox-sr1 .sf-woo-single .summary.entry-summary {
	grid-column: 2;
	width: 100% !important;
	float: none !important;
	margin: 0;
	position: sticky;
	top: 104px;
}
.snowfox-sr1 .sf-single-eyebrow {
	font-size: 10px;
	line-height: 1;
	letter-spacing: .30em;
	text-transform: uppercase;
	font-weight: 600;
	color: #0E7C92;
	margin: 0 0 16px;
}
.snowfox-sr1 .sf-woo-single .product_title {
	font-family: Newsreader, Georgia, "Times New Roman", serif;
	font-weight: 400;
	font-size: clamp(28px, 3.4vw, 40px);
	line-height: 1.14;
	letter-spacing: -0.015em;
	color: var(--sf-navy);
	margin: 0 0 16px;
}
.snowfox-sr1 .sf-woo-single .summary > p.price,
.snowfox-sr1 .sf-woo-single .summary .price {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 24px;
	font-weight: 400;
	letter-spacing: -0.01em;
	color: var(--sf-navy);
	margin: 0 0 22px;
	padding: 0 0 22px;
	border-bottom: 1px solid var(--sf-line);
}
.snowfox-sr1 .sf-woo-single .summary .price del { color: var(--sf-muted); font-size: 18px; margin-right: 8px; }
.snowfox-sr1 .sf-woo-single .summary .price ins { text-decoration: none; }

.snowfox-sr1 .sf-woo-single form.cart { margin: 0 0 6px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.snowfox-sr1 .sf-woo-single form.cart .quantity { margin: 0; float: none; }

.snowfox-sr1 .quantity input.qty {
	width: 74px;
	height: 46px;
	text-align: center;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	background: #fff;
	color: var(--sf-text);
	font: inherit;
	font-size: 14px;
	padding: 0 6px;
}
.snowfox-sr1 .sf-qty { display: inline-flex; align-items: center; border: 1px solid var(--sf-line); border-radius: var(--sf-radius); background: #fff; overflow: hidden; }
.snowfox-sr1 .sf-qty button {
	width: 46px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 0;
	color: var(--sf-navy);
	font-size: 17px;
	line-height: 1;
	cursor: pointer;
	transition: background .14s ease;
}
.snowfox-sr1 .sf-qty button:hover { background: var(--sf-ice); }
.snowfox-sr1 .sf-qty button:disabled { opacity: .35; cursor: not-allowed; }
.snowfox-sr1 .sf-qty .quantity { margin: 0; }
.snowfox-sr1 .sf-qty input.qty {
	border: 0;
	border-left: 1px solid var(--sf-line);
	border-right: 1px solid var(--sf-line);
	border-radius: 0;
	width: 58px;
	height: 46px;
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 14px;
	-moz-appearance: textfield;
}
.snowfox-sr1 .sf-qty input.qty::-webkit-outer-spin-button,
.snowfox-sr1 .sf-qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.snowfox-sr1 .sf-woo-single .single_add_to_cart_button { height: 46px; padding: 0 28px; font-size: 13.5px; letter-spacing: .04em; }

.snowfox-sr1 .sf-woo-single .stock {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--sf-muted);
	margin: 0 0 18px;
}
.snowfox-sr1 .sf-woo-single .stock.in-stock::before { content: ""; width: 7px; height: 7px; border-radius: 999px; background: var(--sf-cyan); display: inline-block; }
.snowfox-sr1 .sf-woo-single .stock.out-of-stock { color: #8A5B12; }

.snowfox-sr1 .sf-use-note {
	display: block;
	margin: 18px 0 0;
	padding: 14px 16px;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	background: var(--sf-ice);
	color: var(--sf-muted);
	font-size: 13px;
	line-height: 1.6;
}
.snowfox-sr1 .sf-woo-single .summary .woosw-btn {
	background: #fff;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	color: var(--sf-muted);
	font-size: 12px;
	padding: 11px 16px;
	cursor: pointer;
	margin: 18px 0 0;
}
.snowfox-sr1 .sf-woo-single .summary .woosw-btn:hover { border-color: var(--sf-cyan); color: var(--sf-navy); }

.snowfox-sr1 .product_meta {
	border-top: 1px solid var(--sf-line);
	margin: 22px 0 0;
	padding-top: 18px;
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	line-height: 2.1;
	color: var(--sf-muted);
}
.snowfox-sr1 .product_meta > span { display: block; }
.snowfox-sr1 .product_meta a { color: var(--sf-navy); text-decoration: none; border-bottom: 1px solid var(--sf-line); }
.snowfox-sr1 .product_meta a:hover { border-bottom-color: var(--sf-cyan); }

.snowfox-sr1 .woocommerce-tabs {
	grid-column: 1 / -1;
	margin: 0;
	padding-top: 44px;
	border-top: 1px solid var(--sf-line);
}
.snowfox-sr1 .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 0; list-style: none; margin: 0 0 30px; padding: 0; }
.snowfox-sr1 .woocommerce-tabs ul.tabs::before,
.snowfox-sr1 .woocommerce-tabs ul.tabs::after,
.snowfox-sr1 .woocommerce-tabs ul.tabs li::before,
.snowfox-sr1 .woocommerce-tabs ul.tabs li::after { content: none; display: none; border: 0; box-shadow: none; }
.snowfox-sr1 .woocommerce-tabs ul.tabs li { background: transparent; border: 0; border-radius: 0; margin: 0; padding: 0; }
.snowfox-sr1 .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 10px 0;
	margin: 0 26px 0 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--sf-muted);
	text-decoration: none;
	border-bottom: 2px solid transparent;
}
.snowfox-sr1 .woocommerce-tabs ul.tabs li.active a,
.snowfox-sr1 .woocommerce-tabs ul.tabs li a:hover { color: #0E7C92; border-bottom-color: #0E7C92; }

.snowfox-sr1 .woocommerce-Tabs-panel { max-width: 74ch; color: var(--sf-text); font-size: 15px; line-height: 1.72; }
.snowfox-sr1 .woocommerce-Tabs-panel h2 { font-family: Newsreader, Georgia, serif; font-weight: 400; font-size: 24px; color: var(--sf-navy); margin: 0 0 14px; }
.snowfox-sr1 .woocommerce-Tabs-panel p { margin: 0 0 14px; }

.snowfox-sr1 .shop_attributes { width: 100%; border-collapse: collapse; font-size: 14px; }
.snowfox-sr1 .shop_attributes th,
.snowfox-sr1 .shop_attributes td { border: 0; border-bottom: 1px solid var(--sf-line); padding: 12px 0; text-align: left; font-weight: 400; }
.snowfox-sr1 .shop_attributes th {
	width: 190px;
	color: var(--sf-muted);
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.snowfox-sr1 .shop_attributes p { margin: 0; }

.snowfox-sr1 .related.products,
.snowfox-sr1 .up-sells.products { grid-column: 1 / -1; margin: 0; padding-top: 46px; border-top: 1px solid var(--sf-line); }
.snowfox-sr1 .related.products > h2,
.snowfox-sr1 .up-sells.products > h2,
.snowfox-sr1 .cross-sells > h2 { font-family: Newsreader, Georgia, serif; font-weight: 400; font-size: 26px; color: var(--sf-navy); margin: 0 0 24px; }

/* --- shared tables ------------------------------------------------------- */

.snowfox-sr1 .woocommerce table.shop_table {
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	margin: 0 0 26px;
	background: #fff;
	font-size: 14px;
}
.snowfox-sr1 .woocommerce table.shop_table th,
.snowfox-sr1 .woocommerce table.shop_table td { border: 0; border-bottom: 1px solid var(--sf-line); padding: 16px 18px; vertical-align: middle; }
.snowfox-sr1 .woocommerce table.shop_table thead th {
	background: var(--sf-ice);
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--sf-muted);
	padding-top: 13px;
	padding-bottom: 13px;
}
.snowfox-sr1 .woocommerce table.shop_table tbody tr:last-child td,
.snowfox-sr1 .woocommerce table.shop_table tfoot tr:last-child th,
.snowfox-sr1 .woocommerce table.shop_table tfoot tr:last-child td { border-bottom: 0; }
.snowfox-sr1 .woocommerce table.shop_table td.product-thumbnail img {
	width: 68px;
	height: 68px;
	object-fit: cover;
	border: 1px solid var(--sf-line);
	border-radius: 4px;
	display: block;
}
.snowfox-sr1 .woocommerce table.shop_table td.product-name a { color: var(--sf-navy); text-decoration: none; font-size: 15px; font-weight: 600; letter-spacing: -0.01em; }
.snowfox-sr1 .woocommerce table.shop_table td.product-name a:hover { color: #0E7C92; }
.snowfox-sr1 .woocommerce table.shop_table td.product-remove a.remove {
	color: var(--sf-muted) !important;
	font-size: 20px;
	line-height: 1;
	width: 26px;
	height: 26px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: transparent;
}
.snowfox-sr1 .woocommerce table.shop_table td.product-remove a.remove:hover { color: #fff !important; background: var(--sf-navy); }

/* --- cart ---------------------------------------------------------------- */

.snowfox-sr1 .woocommerce-cart-form { margin: 0 0 8px; }
.snowfox-sr1 .woocommerce .cart .actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	padding: 16px 18px !important;
}
.snowfox-sr1 .woocommerce .cart .actions .coupon { display: flex; gap: 10px; align-items: center; float: none; }
.snowfox-sr1 .woocommerce .cart .actions .coupon .input-text { width: 190px; height: 46px; margin: 0; }

.snowfox-sr1 .cart-collaterals { width: 100%; display: flex; justify-content: flex-end; }
.snowfox-sr1 .cart-collaterals .cart_totals { width: min(460px, 100%); float: none; }
.snowfox-sr1 .cart_totals h2 { font-family: Newsreader, Georgia, serif; font-weight: 400; font-size: 24px; color: var(--sf-navy); margin: 0 0 16px; }
.snowfox-sr1 .cart_totals table.shop_table th {
	background: transparent;
	text-transform: none;
	letter-spacing: 0;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--sf-muted);
	width: 42%;
}
.snowfox-sr1 .cart_totals table.shop_table tr.order-total th,
.snowfox-sr1 .cart_totals table.shop_table tr.order-total td { font-size: 17px; color: var(--sf-navy); font-weight: 600; background: var(--sf-ice); }
.snowfox-sr1 .cart_totals .wc-proceed-to-checkout { padding: 18px 0 0; }
.snowfox-sr1 .cart_totals .checkout-button { display: flex; width: 100%; height: 50px; font-size: 14px; }

.snowfox-sr1 #shipping_method { list-style: none; margin: 0; padding: 0; text-align: left; }
.snowfox-sr1 #shipping_method li { margin: 0 0 8px; display: flex; align-items: baseline; gap: 8px; }
.snowfox-sr1 #shipping_method li:last-child { margin-bottom: 0; }
.snowfox-sr1 #shipping_method label { font-size: 13.5px; color: var(--sf-text); }
.snowfox-sr1 .woocommerce-shipping-destination { font-size: 12.5px; color: var(--sf-muted); margin: 10px 0 0; }
.snowfox-sr1 .shipping-calculator-button { font-size: 12.5px; color: var(--sf-navy); border-bottom: 1px solid var(--sf-cyan); text-decoration: none; }
.snowfox-sr1 .cart-empty { font-size: 17px; color: var(--sf-muted); }
.snowfox-sr1 .woocommerce .return-to-shop { text-align: left; }

/* --- forms --------------------------------------------------------------- */

.snowfox-sr1 .woocommerce form .form-row { padding: 0; margin: 0 0 16px; }
.snowfox-sr1 .woocommerce form .form-row label,
.snowfox-sr1 .woocommerce-form-row label {
	display: block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--sf-muted);
	margin: 0 0 7px;
}
.snowfox-sr1 .woocommerce form .form-row label.checkbox,
.snowfox-sr1 .woocommerce-form__label-for-checkbox {
	display: inline-flex !important;
	align-items: center;
	gap: 9px;
	text-transform: none;
	letter-spacing: 0;
	font-size: 13.5px;
	font-weight: 400;
	color: var(--sf-text);
}
.snowfox-sr1 .required { color: #0E7C92; border: 0; text-decoration: none; }

.snowfox-sr1 .woocommerce form .form-row input.input-text,
.snowfox-sr1 .woocommerce form .form-row textarea,
.snowfox-sr1 .woocommerce form .form-row select,
.snowfox-sr1 .woocommerce-Input,
.snowfox-sr1 .sf-woo input[type="text"],
.snowfox-sr1 .sf-woo input[type="email"],
.snowfox-sr1 .sf-woo input[type="tel"],
.snowfox-sr1 .sf-woo input[type="password"],
.snowfox-sr1 .sf-woo textarea {
	width: 100%;
	background: #fff;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	color: var(--sf-text);
	font: inherit;
	font-size: 14px;
	line-height: 1.4;
	padding: 13px;
	box-shadow: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.snowfox-sr1 .woocommerce form .form-row textarea { min-height: 110px; resize: vertical; }
.snowfox-sr1 .woocommerce form .form-row input.input-text:focus,
.snowfox-sr1 .woocommerce form .form-row textarea:focus,
.snowfox-sr1 .woocommerce form .form-row select:focus,
.snowfox-sr1 .woocommerce-Input:focus,
.snowfox-sr1 .sf-woo input:focus,
.snowfox-sr1 .sf-woo textarea:focus {
	outline: none;
	border-color: #0E7C92;
	box-shadow: 0 0 0 3px rgba(33, 195, 224, .20);
}
.snowfox-sr1 .woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: #C0736F; }

.snowfox-sr1 .select2-container--default .select2-selection--single {
	height: 46px;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	background: #fff;
}
.snowfox-sr1 .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 44px; padding-left: 13px; color: var(--sf-text); font-size: 14px; }
.snowfox-sr1 .select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px; }

/* --- checkout ------------------------------------------------------------ */

.snowfox-sr1 .woocommerce form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	column-gap: 52px;
	align-items: start;
}
.snowfox-sr1 .woocommerce form.checkout #customer_details { grid-column: 1; grid-row: 1 / span 2; width: 100%; }
.snowfox-sr1 .woocommerce form.checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 0 0 18px; }
.snowfox-sr1 .woocommerce form.checkout #order_review { grid-column: 2; grid-row: 2; width: 100%; }
.snowfox-sr1 #customer_details .col-1,
.snowfox-sr1 #customer_details .col-2 { width: 100%; float: none; }
.snowfox-sr1 #customer_details .col2-set { width: 100%; }

.snowfox-sr1 .woocommerce-billing-fields h3,
.snowfox-sr1 .woocommerce-shipping-fields h3,
.snowfox-sr1 .woocommerce-additional-fields h3,
.snowfox-sr1 #order_review_heading {
	font-family: Newsreader, Georgia, serif;
	font-weight: 400;
	font-size: 23px;
	color: var(--sf-navy);
	margin: 0 0 18px;
	padding: 0 0 12px;
	border-bottom: 1px solid var(--sf-line);
}
.snowfox-sr1 #order_review {
	background: #fff;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	padding: 22px;
	position: sticky;
	top: 104px;
}
.snowfox-sr1 #order_review table.shop_table { border: 0; margin: 0; }
.snowfox-sr1 #order_review table.shop_table thead th { background: transparent; padding-left: 0; padding-right: 0; }
.snowfox-sr1 #order_review table.shop_table th,
.snowfox-sr1 #order_review table.shop_table td { padding-left: 0; padding-right: 0; }
.snowfox-sr1 #order_review table.shop_table tfoot tr.order-total th,
.snowfox-sr1 #order_review table.shop_table tfoot tr.order-total td { font-size: 17px; color: var(--sf-navy); font-weight: 600; padding-top: 14px; }

.snowfox-sr1 #payment { background: transparent; border-radius: 0; }
.snowfox-sr1 #payment ul.payment_methods { list-style: none; margin: 18px 0 0; padding: 18px 0 0; border-top: 1px solid var(--sf-line); }
.snowfox-sr1 #payment div.form-row { padding: 18px 0 0; }
.snowfox-sr1 #payment .woocommerce-notice,
.snowfox-sr1 #payment .woocommerce-info { font-size: 13.5px; color: var(--sf-muted); margin: 0; }
.snowfox-sr1 #place_order { width: 100%; height: 52px; font-size: 14px; letter-spacing: .04em; }
.snowfox-sr1 .woocommerce-privacy-policy-text { font-size: 12.5px; color: var(--sf-muted); line-height: 1.6; }
.snowfox-sr1 .woocommerce-form-coupon-toggle,
.snowfox-sr1 .woocommerce-form-login-toggle { grid-column: 1 / -1; }
.snowfox-sr1 form.checkout_coupon,
.snowfox-sr1 form.woocommerce-form-login {
	grid-column: 1 / -1;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	padding: 20px;
	margin: 0 0 24px;
	background: #fff;
}

/* --- account ------------------------------------------------------------- */

.snowfox-sr1 .woocommerce-account .woocommerce { display: block; }
.snowfox-sr1 .woocommerce-MyAccount-navigation {
	width: 100%;
	float: none;
	background: #fff;
	border: 1px solid var(--sf-line);
	border-radius: var(--sf-radius);
	padding: 0 6px;
	margin: 0 0 30px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.snowfox-sr1 .woocommerce-MyAccount-navigation ul { display: flex; min-width: max-content; list-style: none; margin: 0; padding: 0; }
.snowfox-sr1 .woocommerce-MyAccount-navigation li { margin: 0; border: 0; }
.snowfox-sr1 .woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	min-height: 52px;
	padding: 0 16px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--sf-muted);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: color .14s ease, border-color .14s ease;
	white-space: nowrap;
}
.snowfox-sr1 .woocommerce-MyAccount-navigation li a:hover { color: var(--sf-navy); }
.snowfox-sr1 .woocommerce-MyAccount-navigation li.is-active a { color: #0E7C92; border-bottom-color: #0E7C92; }
.snowfox-sr1 .woocommerce-MyAccount-content { width: 100%; float: none; font-size: 15px; line-height: 1.7; color: var(--sf-text); }
.snowfox-sr1 .woocommerce-MyAccount-content > p { margin: 0 0 16px; }
.snowfox-sr1 .woocommerce-MyAccount-content h2,
.snowfox-sr1 .woocommerce-MyAccount-content h3 { font-family: Newsreader, Georgia, serif; font-weight: 400; color: var(--sf-navy); margin: 0 0 16px; }
.snowfox-sr1 .woocommerce-MyAccount-content a:not(.button) { color: #0E7C92; border-bottom: 1px solid rgba(14, 124, 146, .35); text-decoration: none; }

.snowfox-sr1 .woocommerce-account .u-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; width: 100%; }
.snowfox-sr1 .woocommerce-account .u-column1,
.snowfox-sr1 .woocommerce-account .u-column2 { width: 100%; float: none; }
.snowfox-sr1 .woocommerce form.login,
.snowfox-sr1 .woocommerce form.register { border: 1px solid var(--sf-line); border-radius: var(--sf-radius); padding: 26px; margin: 0; background: #fff; }
.snowfox-sr1 .woocommerce-LostPassword { margin: 14px 0 0; font-size: 13px; }
.snowfox-sr1 .woocommerce-Addresses { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 28px; }
.snowfox-sr1 .woocommerce-Address { width: 100%; float: none; }
.snowfox-sr1 .woocommerce-Address-title { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }

/* --- notices ------------------------------------------------------------- */

.snowfox-sr1 .woocommerce-message,
.snowfox-sr1 .woocommerce-info,
.snowfox-sr1 .woocommerce-error,
.snowfox-sr1 .woocommerce-noreviews {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	background: var(--sf-ice);
	border: 1px solid var(--sf-line);
	border-left: 3px solid var(--sf-cyan);
	border-radius: var(--sf-radius);
	color: var(--sf-text);
	font-size: 14px;
	line-height: 1.5;
	margin: 0 0 24px;
	padding: 14px 18px;
	list-style: none;
}
.snowfox-sr1 .woocommerce-message::before,
.snowfox-sr1 .woocommerce-info::before,
.snowfox-sr1 .woocommerce-error::before { content: none; display: none; }
.snowfox-sr1 .woocommerce-error { border-left-color: #C0736F; }
.snowfox-sr1 .woocommerce-message .button,
.snowfox-sr1 .woocommerce-info .button { margin-left: auto; padding: 11px 16px; font-size: 12px; }

/* --- Moss & Snow: destination not published -------------------------------*/

.snowfox-sr1 .sf-explore-card--pending { cursor: default; }
.snowfox-sr1 .sf-explore-card--pending:hover { transform: none; box-shadow: none; }
.snowfox-sr1 .sf-link-pending { color: var(--sf-muted); border-bottom: 0; font-size: 13px; line-height: 1.55; display: block; }

/* --- focus visibility ---------------------------------------------------- */

.snowfox-sr1 .sf-woo a:focus-visible,
.snowfox-sr1 .sf-woo button:focus-visible,
.snowfox-sr1 .sf-woo input:focus-visible,
.snowfox-sr1 .sf-woo select:focus-visible,
.snowfox-sr1 .sf-woo textarea:focus-visible,
.snowfox-sr1 ul.products li.product a:focus-visible {
	outline: 2px solid #0E7C92;
	outline-offset: 2px;
	border-radius: 4px;
}

/* --- responsive ---------------------------------------------------------- */

@media (max-width: 1024px) {
	.snowfox-sr1 .sf-woo-single div.product { grid-template-columns: minmax(0, 1fr); column-gap: 0; }
	.snowfox-sr1 .sf-woo-single .woocommerce-product-gallery,
	.snowfox-sr1 .sf-woo-single .summary.entry-summary { grid-column: 1; position: static; }
	.snowfox-sr1 .woocommerce form.checkout { grid-template-columns: minmax(0, 1fr); }
	.snowfox-sr1 .woocommerce form.checkout #customer_details,
	.snowfox-sr1 .woocommerce form.checkout #order_review_heading,
	.snowfox-sr1 .woocommerce form.checkout #order_review { grid-column: 1; grid-row: auto; }
	.snowfox-sr1 #order_review { position: static; margin-top: 8px; }
	.snowfox-sr1 ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
	.snowfox-sr1 .sf-woo { padding: 26px 0 64px; }
	.snowfox-sr1 ul.products { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	.snowfox-sr1 .sf-woo-toolbar { flex-direction: column; align-items: flex-start; gap: 10px; }
	.snowfox-sr1 .woocommerce .cart .actions { flex-direction: column; align-items: stretch; }
	.snowfox-sr1 .woocommerce .cart .actions .coupon { flex-direction: column; align-items: stretch; }
	.snowfox-sr1 .woocommerce .cart .actions .coupon .input-text { width: 100%; }
	.snowfox-sr1 .cart-collaterals .cart_totals { width: 100%; }
	.snowfox-sr1 .woocommerce table.shop_table.cart thead { display: none; }
	.snowfox-sr1 .woocommerce table.shop_table.cart,
	.snowfox-sr1 .woocommerce table.shop_table.cart tbody,
	.snowfox-sr1 .woocommerce table.shop_table.cart tr,
	.snowfox-sr1 .woocommerce table.shop_table.cart td { display: block; width: 100%; }
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item { position: relative; padding: 16px 18px; border-bottom: 1px solid var(--sf-line); }
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td {
		border: 0;
		padding: 4px 0;
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
	}
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td::before {
		content: attr(data-title);
		font-size: 10.5px;
		letter-spacing: .16em;
		text-transform: uppercase;
		color: var(--sf-muted);
	}
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td.product-remove,
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td.product-thumbnail { justify-content: flex-start; }
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td.product-remove::before,
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td.product-thumbnail::before { content: none; }
	.snowfox-sr1 .woocommerce table.shop_table.cart tr.cart_item td.product-remove { position: absolute; top: 12px; right: 12px; width: auto; padding: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.snowfox-sr1 ul.products li.product,
	.snowfox-sr1 .sf-prod-media img { transition: none; }
	.snowfox-sr1 ul.products li.product:hover { transform: none; }
	.snowfox-sr1 ul.products li.product:hover .sf-prod-media img { transform: none; }
}


/* ============================================================================
   SPECIFICITY BRIDGE — WooCommerce core places .woocommerce on <body>, the same
   element that carries .snowfox-sr1, so a descendant selector can never match
   it on shop and product pages. These selectors qualify with .sf-main instead,
   which is always an ancestor, and outrank the plugin without !important.
   ========================================================================= */

.snowfox-sr1 .sf-main a.button,
.snowfox-sr1 .sf-main button.button,
.snowfox-sr1 .sf-main input.button,
.snowfox-sr1 .sf-main .button.alt,
.snowfox-sr1 .sf-main #respond input#submit {
	background-color: var(--sf-navy);
	border-color: var(--sf-navy);
	color: #fff;
}
.snowfox-sr1 .sf-main a.button:hover,
.snowfox-sr1 .sf-main button.button:hover,
.snowfox-sr1 .sf-main input.button:hover,
.snowfox-sr1 .sf-main .button.alt:hover,
.snowfox-sr1 .sf-main #respond input#submit:hover {
	background-color: #142B42;
	border-color: #142B42;
	color: #fff;
}
.snowfox-sr1 .sf-main .button.alt.disabled,
.snowfox-sr1 .sf-main .button.disabled,
.snowfox-sr1 .sf-main .button:disabled { opacity: .5; }

.snowfox-sr1 .sf-main .cart .actions .button[name="update_cart"],
.snowfox-sr1 .sf-main a.button.wc-backward,
.snowfox-sr1 .sf-main .woocommerce-Button--next,
.snowfox-sr1 .sf-main .woocommerce-Button--previous {
	background-color: #fff;
	color: var(--sf-navy);
	border-color: var(--sf-line);
}
.snowfox-sr1 .sf-main .cart .actions .button[name="update_cart"]:hover,
.snowfox-sr1 .sf-main a.button.wc-backward:hover {
	background-color: var(--sf-ice);
	color: var(--sf-navy);
	border-color: var(--sf-cyan);
}

/* tab strip: core draws a rule, rounded tab chips and drop shadows */
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 30px; }
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs::before,
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs::after,
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li::before,
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li::after {
	content: none;
	display: none;
	border: 0;
	box-shadow: none;
}
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	padding: 0;
}
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li a { color: var(--sf-muted); font-weight: 600; text-shadow: none; }
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li.active a { color: #0E7C92; }

/* core floats and half-widths the two product columns */
.snowfox-sr1 .sf-main div.product .woocommerce-product-gallery,
.snowfox-sr1 .sf-main div.product .summary.entry-summary { float: none; width: 100%; margin-right: 0; }

/* cards whose product has no category keep the title on the same baseline */
.snowfox-sr1 .sf-prod-media + .woocommerce-loop-product__title { padding-top: 36px; }

/* WooCommerce pages rendered through page.php are not prose */
.snowfox-sr1 .sf-wc-content { max-width: none; width: 100%; }
.snowfox-sr1 .sf-woo-page .sf-article { max-width: none; }
.snowfox-sr1 .sf-woo-page h1.sf-h2 {
	font-family: Newsreader, Georgia, "Times New Roman", serif;
	font-weight: 400;
	font-size: clamp(30px, 4.2vw, 46px);
	line-height: 1.12;
	letter-spacing: -0.015em;
	color: var(--sf-navy);
	margin: 0 0 28px;
}

/* account tab strip: no visible scrollbar track on desktop */
.snowfox-sr1 .woocommerce-MyAccount-navigation { scrollbar-width: thin; }
.snowfox-sr1 .woocommerce-MyAccount-navigation::-webkit-scrollbar { height: 4px; }
.snowfox-sr1 .woocommerce-MyAccount-navigation::-webkit-scrollbar-thumb { background: var(--sf-line); border-radius: 999px; }

/* core sets a fixed table layout and tiny thumbnails on the cart */
.snowfox-sr1 .sf-main table.shop_table { width: 100%; table-layout: auto; }
.snowfox-sr1 .sf-main table.shop_table td.product-thumbnail { width: 100px; }
.snowfox-sr1 .sf-main table.shop_table td.product-remove { width: 54px; }
.snowfox-sr1 .sf-main table.shop_table td.product-name { min-width: 200px; }


/* ============================================================================
   LAYOUT CORRECTIONS — measured against the running site, not assumed.
   ========================================================================= */

/* WooCommerce 8+ lays .col2-set out as a flex pair; the checkout reads better
   as one column inside the 7/5 split. */
.snowfox-sr1 .sf-main #customer_details { display: block; }
.snowfox-sr1 .sf-main #customer_details .col-1,
.snowfox-sr1 .sf-main #customer_details .col-2 {
	display: block;
	width: 100%;
	max-width: none;
	float: none;
	flex: none;
	padding: 0;
}
.snowfox-sr1 .sf-main #customer_details .col-2 { margin-top: 34px; }

/* A spanning grid item inflates an auto row; a flexible second row stops it. */
.snowfox-sr1 .woocommerce form.checkout { grid-template-rows: auto 1fr; }

.snowfox-sr1 .sf-main #order_review table.shop_table tfoot th,
.snowfox-sr1 .sf-main #order_review table.shop_table tfoot td { background: transparent; }
.snowfox-sr1 .sf-main #order_review table.shop_table tfoot tr.order-total th,
.snowfox-sr1 .sf-main #order_review table.shop_table tfoot tr.order-total td {
	border-top: 1px solid var(--sf-line);
	background: transparent;
}

/* two-up name fields keep core's split; everything else is full width */
.snowfox-sr1 .sf-main form .form-row-first,
.snowfox-sr1 .sf-main form .form-row-last { width: 48.5%; float: none; display: inline-block; vertical-align: top; }
.snowfox-sr1 .sf-main form .form-row-first { margin-right: 2.4%; }
.snowfox-sr1 .sf-main form .form-row-wide { width: 100%; float: none; }

/* cart table: fixed columns so the remove cell cannot absorb the slack */
.snowfox-sr1 .sf-main table.shop_table.cart { table-layout: fixed; }
.snowfox-sr1 .sf-main table.shop_table.cart .product-remove { width: 58px; }
.snowfox-sr1 .sf-main table.shop_table.cart .product-thumbnail { width: 108px; }
.snowfox-sr1 .sf-main table.shop_table.cart .product-price { width: 116px; }
.snowfox-sr1 .sf-main table.shop_table.cart .product-quantity { width: 132px; }
.snowfox-sr1 .sf-main table.shop_table.cart .product-subtotal { width: 126px; }

.snowfox-sr1 .sf-main a.button,
.snowfox-sr1 .sf-main button.button,
.snowfox-sr1 .sf-main input.button { white-space: nowrap; }

@media (max-width: 640px) {
	.snowfox-sr1 .sf-main table.shop_table.cart { table-layout: auto; }
	.snowfox-sr1 .sf-main form .form-row-first,
	.snowfox-sr1 .sf-main form .form-row-last { width: 100%; margin-right: 0; }
}


/* --- STOCK + AVAILABILITY COLOURS ---------------------------------------- */

.snowfox-sr1 .sf-main p.stock,
.snowfox-sr1 .sf-main .summary p.stock,
.snowfox-sr1 .sf-main div.product p.stock {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--sf-muted);
	margin: 0 0 18px;
}
.snowfox-sr1 .sf-main div.product p.stock.in-stock::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: var(--sf-cyan);
	display: inline-block;
	flex: none;
}
.snowfox-sr1 .sf-main div.product p.stock.out-of-stock { color: #8A5B12; }
.snowfox-sr1 .sf-main div.product p.stock.available-on-backorder { color: #8A5B12; }


/* --- FOOTER COLUMNS (SR-1 five-column shape, four published) -------------- */

.snowfox-sr1 .sf-footer-cols {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px 34px;
}
@media (min-width: 900px) {
	.snowfox-sr1 .sf-footer-cols { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.snowfox-sr1 .sf-footer-col-title {
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .30em;
	text-transform: uppercase;
	color: rgba(127, 217, 236, .85);
	margin: 0 0 14px;
}
.snowfox-sr1 .sf-footer-list { list-style: none; margin: 0; padding: 0; }
.snowfox-sr1 .sf-footer-list li { margin: 0; }
.snowfox-sr1 .sf-footer-list a {
	display: flex;
	align-items: center;
	min-height: 38px;
	font-size: 14px;
	line-height: 1.35;
	color: rgba(255, 255, 255, .68);
	text-decoration: none;
	transition: color .15s ease;
}
.snowfox-sr1 .sf-footer-list a:hover { color: #7FD9EC; }
.snowfox-sr1 .sf-footer a:focus-visible,
.snowfox-sr1 .sf-header a:focus-visible,
.snowfox-sr1 .sf-header button:focus-visible {
	outline: 2px solid #7FD9EC;
	outline-offset: 3px;
	border-radius: 4px;
}


/* ============================================================================
   CONTRAST CORRECTION — WCAG AA on the small uppercase labels.
   The bright accent #21C3E0 is a 2.07:1 pair with the paper ground and 1.90:1
   with the ice panels: a clear AA failure at 10px. The frozen SR-1 source does
   not use the accent for label TEXT — its MicroLabel cyan tone is #0E7C92 — so
   this restores SR-1's intent. #0D6F83 is SR-1's own chip teal, one step darker
   than #0E7C92, and is used here because #0E7C92 measures 4.39:1 on the ice
   panels, just under the 4.5:1 threshold. The accent itself is unchanged where
   it is decoration (hairlines, dots, borders, focus rings on dark).
   ========================================================================= */

.snowfox-sr1 .sf-label-cyan,
.snowfox-sr1 .sf-woo-eyebrow,
.snowfox-sr1 .sf-single-eyebrow,
.snowfox-sr1 .sf-card-cta,
.snowfox-sr1 .required,
.snowfox-sr1 .woocommerce-MyAccount-navigation li.is-active a,
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li.active a,
.snowfox-sr1 .woocommerce-MyAccount-content a:not(.button) { color: #0D6F83; }

.snowfox-sr1 .sf-card-cta { border-bottom-color: rgba(13, 111, 131, .38); }
.snowfox-sr1 .woocommerce-MyAccount-navigation li.is-active a { border-bottom-color: #0D6F83; }
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li.active a,
.snowfox-sr1 .sf-main div.product .woocommerce-tabs ul.tabs li a:hover { border-bottom-color: #0D6F83; color: #0D6F83; }

.snowfox-sr1 .sf-woo a:focus-visible,
.snowfox-sr1 .sf-woo button:focus-visible,
.snowfox-sr1 .sf-woo input:focus-visible,
.snowfox-sr1 .sf-woo select:focus-visible,
.snowfox-sr1 .sf-woo textarea:focus-visible,
.snowfox-sr1 ul.products li.product a:focus-visible { outline-color: #0D6F83; }


/* --- ON-DARK LABEL TONE + PAGINATION ------------------------------------- */
/* SR-1's MicroLabel has an onDark tone (#7FD9EC). The navy Academy panel needs
   it: the light-ground teal measures 3.0:1 there. */

.snowfox-sr1 .sf-sec-navy .sf-label,
.snowfox-sr1 .sf-sec-navy .sf-label-cyan,
.snowfox-sr1 .sf-navy-panel .sf-label-cyan { color: #7FD9EC; }

.snowfox-sr1 .sf-main .woocommerce-pagination ul li span.current,
.snowfox-sr1 .sf-main .woocommerce-pagination ul li span.page-numbers.current {
	background: var(--sf-navy);
	border-color: var(--sf-navy);
	color: #fff;
}
.snowfox-sr1 .sf-main .woocommerce-pagination ul li a.page-numbers { color: var(--sf-text); background: #fff; }
.snowfox-sr1 .sf-main .woocommerce-pagination ul li a.page-numbers:hover { border-color: #0D6F83; color: var(--sf-navy); }


/* ============================================================================
   SR-1 STATIC PAGE SYSTEM — About, Contact, Wholesale Access, Moss & Snow,
   Quality & Documentation, Academy, Meet Snow and the support surfaces,
   ported from the frozen SR-1 source (commit c1d6efa).
   ========================================================================= */

.snowfox-sr1 .sf-page-pad { padding: 64px 0 72px; }
.snowfox-sr1 .sf-page-pad-lg { padding: 84px 0 96px; }

.snowfox-sr1 .sf-page-title { margin: 16px 0 0; }

.snowfox-sr1 .sf-serif-display {
	font-family: Newsreader, Georgia, "Times New Roman", serif;
	font-weight: 500;
	font-size: clamp(2.4rem, 5.4vw, 4.2rem);
	line-height: 1.08;
	letter-spacing: -0.035em;
	color: var(--sf-navy);
	margin: 22px 0 0;
}
.snowfox-sr1 .sf-academy-title { font-size: clamp(2.2rem, 4.8vw, 3.8rem); }

.snowfox-sr1 .sf-page-lede {
	margin: 24px 0 0;
	max-width: 62ch;
	font-size: 17px;
	line-height: 1.75;
	color: var(--sf-muted);
}
.snowfox-sr1 .sf-page-fineprint {
	margin: 28px 0 0;
	max-width: 74ch;
	font-size: 13.5px;
	line-height: 1.7;
	color: var(--sf-muted);
}
.snowfox-sr1 .sf-page-narrow { max-width: 720px; }

.snowfox-sr1 .sf-page-lede-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.75fr);
	gap: 40px;
	align-items: end;
}
.snowfox-sr1 .sf-page-aside { border-left: 2px solid var(--sf-line); padding-left: 18px; }
.snowfox-sr1 .sf-page-aside .sf-muted-copy { font-size: 13.5px; line-height: 1.7; margin: 0; }

.snowfox-sr1 .sf-page-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 44px;
	align-items: start;
	margin-top: 34px;
}
.snowfox-sr1 .sf-page-split-5-7 { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 52px; }
.snowfox-sr1 .sf-page-split-8-4 { grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: 48px; }

.snowfox-sr1 .sf-page-panel {
	border: 1px solid var(--sf-line);
	border-radius: 14px;
	background: #fff;
	padding: 26px;
}
.snowfox-sr1 .sf-page-panel .sf-muted-copy { margin: 12px 0 0; font-size: 14px; line-height: 1.7; }

.snowfox-sr1 .sf-page-cards {
	display: grid;
	gap: 20px;
	margin-top: 40px;
}
.snowfox-sr1 .sf-page-cards-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.snowfox-sr1 .sf-page-cards-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.snowfox-sr1 .sf-page-card {
	border: 1px solid var(--sf-line);
	border-radius: 14px;
	background: #fff;
	padding: 26px;
	scroll-margin-top: 110px;
}
.snowfox-sr1 .sf-page-card .sf-h3 { margin: 10px 0 0; }
.snowfox-sr1 .sf-page-card .sf-muted-copy { margin: 14px 0 0; font-size: 14px; line-height: 1.7; }
.snowfox-sr1 .sf-page-card .sf-hairline-top { display: block; margin-top: 22px; }

.snowfox-sr1 .sf-page-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 34px 0 0; }
.snowfox-sr1 .sf-page-stack { display: flex; flex-direction: column; gap: 10px; margin: 26px 0 0; max-width: 320px; }
.snowfox-sr1 .sf-btn-block { width: 100%; }

.snowfox-sr1 a.sf-btn-outline,
.snowfox-sr1 .sf-btn-outline {
	background: #fff;
	color: var(--sf-navy);
	border: 1px solid var(--sf-line);
}
.snowfox-sr1 a.sf-btn-outline:hover,
.snowfox-sr1 .sf-btn-outline:hover { border-color: var(--sf-cyan); background: var(--sf-ice); color: var(--sf-navy); }

.snowfox-sr1 .sf-page-quote {
	font-family: Newsreader, Georgia, serif;
	font-style: italic;
	font-size: clamp(1.5rem, 2.6vw, 2rem);
	line-height: 1.4;
	letter-spacing: -0.02em;
	color: var(--sf-navy);
	margin: 22px 0 0;
	border: 0;
	padding: 0;
}
.snowfox-sr1 .sf-page-quote-sm {
	font-family: Newsreader, Georgia, serif;
	font-size: 20px;
	line-height: 1.45;
	color: var(--sf-navy);
	margin: 10px 0 0;
}
.snowfox-sr1 .sf-snow-says {
	margin: 40px 0 0;
	padding: 24px 26px;
	border: 1px solid var(--sf-line);
	border-left: 3px solid var(--sf-cyan);
	border-radius: 12px;
	background: var(--sf-ice);
}

.snowfox-sr1 .sf-trait-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--sf-line); }
.snowfox-sr1 .sf-trait-list li {
	display: flex;
	align-items: baseline;
	gap: 24px;
	padding: 28px 0;
	border-bottom: 1px solid var(--sf-line);
	margin: 0;
}
.snowfox-sr1 .sf-trait-num {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	color: var(--sf-muted);
}
.snowfox-sr1 .sf-trait-name {
	font-family: Newsreader, Georgia, serif;
	font-weight: 500;
	font-size: clamp(1.5rem, 2.6vw, 2rem);
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--sf-navy);
}

.snowfox-sr1 .sf-path-list { list-style: none; margin: 20px 0 0; padding: 0; border-top: 1px solid var(--sf-line); }
.snowfox-sr1 .sf-path-list li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	padding: 13px 0;
	border-bottom: 1px solid var(--sf-line);
	margin: 0;
}
.snowfox-sr1 .sf-path-title { font-size: 14.5px; color: var(--sf-text); line-height: 1.45; }
.snowfox-sr1 .sf-path-min {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	color: var(--sf-muted);
	white-space: nowrap;
}

.snowfox-sr1 .sf-article-grid { margin-top: 30px; }
.snowfox-sr1 .sf-article-card { display: flex; flex-direction: column; }
.snowfox-sr1 .sf-article-topic { padding: 0; margin: 0 0 6px; }
.snowfox-sr1 .sf-article-meta {
	margin: 18px 0 0;
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 11px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--sf-muted);
}

.snowfox-sr1 .sf-guide-panel { border-color: rgba(33, 195, 224, .38); }
.snowfox-sr1 .sf-guide-name { font-size: 17px; font-weight: 500; color: var(--sf-navy); margin: 10px 0 0; }

.snowfox-sr1 .sf-hairline-short { max-width: 180px; }

.snowfox-sr1 .sf-price-gate {
	display: inline-block;
	font-size: 13.5px;
	font-weight: 500;
	color: #0D6F83;
	text-decoration: none;
	border-bottom: 1px solid rgba(13, 111, 131, .35);
}
.snowfox-sr1 .sf-price-gate:hover { color: var(--sf-navy); border-bottom-color: var(--sf-cyan); }

@media (max-width: 900px) {
	.snowfox-sr1 .sf-page-lede-grid,
	.snowfox-sr1 .sf-page-split,
	.snowfox-sr1 .sf-page-split-5-7,
	.snowfox-sr1 .sf-page-split-8-4 { grid-template-columns: minmax(0, 1fr); gap: 30px; }
	.snowfox-sr1 .sf-page-aside { border-left: 0; padding-left: 0; border-top: 1px solid var(--sf-line); padding-top: 16px; }
	.snowfox-sr1 .sf-page-cards-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.snowfox-sr1 .sf-page-pad { padding: 40px 0 48px; }
	.snowfox-sr1 .sf-page-pad-lg { padding: 48px 0 56px; }
	.snowfox-sr1 .sf-page-cards-2,
	.snowfox-sr1 .sf-page-cards-3 { grid-template-columns: minmax(0, 1fr); }
	.snowfox-sr1 .sf-page-actions .sf-btn { width: 100%; }
}


/* --- FIVE-COLUMN FOOTER (SR-1 shape, all five now published) ------------- */
.snowfox-sr1 .sf-footer-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 720px) {
	.snowfox-sr1 .sf-footer-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1100px) {
	.snowfox-sr1 .sf-footer-cols { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px 24px; }
}
.snowfox-sr1 .sf-footer-col-title { line-height: 1.5; }


/* ============================================================================
   SR-1 LABEL STUDY (LabelThumb) — category-tinted product artwork, ported
   from the frozen SR-1 source. Tint follows the product's real category.
   ========================================================================= */

.snowfox-sr1 .sf-lbl {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	overflow: hidden;
	padding: 20px;
	isolation: isolate;
}
.snowfox-sr1 .sf-lbl-43 { aspect-ratio: 4 / 3; }
.snowfox-sr1 .sf-lbl-11 { aspect-ratio: 1 / 1; }

.snowfox-sr1 .sf-lbl-a { background-image: linear-gradient(to bottom right, #061222, #0A2339, #0B4760); }
.snowfox-sr1 .sf-lbl-b { background-image: linear-gradient(to bottom right, #071D2D, #0A3442, #0B5963); }
.snowfox-sr1 .sf-lbl-c { background-image: linear-gradient(to bottom right, #101A31, #29364E, #60738A); }
.snowfox-sr1 .sf-lbl-d { background-image: linear-gradient(to bottom right, #DFF6FA, #A8E3EC, #5FBFD1); }

.snowfox-sr1 .sf-lbl-glare {
	position: absolute; inset: 0; opacity: .55; pointer-events: none;
	background: linear-gradient(112deg, transparent 0%, rgba(255,255,255,.2) 36%, transparent 52%, rgba(127,217,236,.16) 70%, transparent 100%);
}
.snowfox-sr1 .sf-lbl-ring { position: absolute; border-radius: 9999px; border: 1px solid rgba(33,195,224,.35); pointer-events: none; }
.snowfox-sr1 .sf-lbl-ring1 { right: -40px; top: -48px; width: 160px; height: 160px; }
.snowfox-sr1 .sf-lbl-ring2 { right: -16px; top: 8px; width: 96px; height: 96px; }
.snowfox-sr1 .sf-lbl-b .sf-lbl-ring { border-color: rgba(114,225,209,.35); }
.snowfox-sr1 .sf-lbl-c .sf-lbl-ring { border-color: rgba(255,255,255,.25); }
.snowfox-sr1 .sf-lbl-d .sf-lbl-ring { border-color: rgba(7,20,38,.25); }

.snowfox-sr1 .sf-lbl-mark { position: absolute; pointer-events: none; }
.snowfox-sr1 .sf-lbl-a .sf-lbl-mark {
	right: 48px; bottom: 0; width: 3px; height: 75%;
	background: linear-gradient(to bottom, transparent, #21C3E0, #7FD9EC);
}
.snowfox-sr1 .sf-lbl-b .sf-lbl-mark {
	left: -20px; bottom: 22px; width: 210px; height: 1px;
	transform: rotate(-12deg); background: rgba(114,225,209,.65);
}
.snowfox-sr1 .sf-lbl-c .sf-lbl-mark {
	right: 32px; top: 64px; width: 96px; height: 96px;
	transform: rotate(45deg); border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.04);
}
.snowfox-sr1 .sf-lbl-d .sf-lbl-mark {
	right: 24px; bottom: 20px; width: 56px; height: 80px;
	border: 2px solid rgba(7,20,38,.35); border-radius: 16px 16px 0 0; background: rgba(255,255,255,.15);
}

.snowfox-sr1 .sf-lbl-top,
.snowfox-sr1 .sf-lbl-foot { position: relative; z-index: 2; }
.snowfox-sr1 .sf-lbl-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.snowfox-sr1 .sf-lbl-foot { max-width: 88%; }

.snowfox-sr1 .sf-lbl-brand {
	font-size: 9.5px; font-weight: 600; letter-spacing: .24em; text-transform: uppercase; color: #7FD9EC;
}
.snowfox-sr1 .sf-lbl-code,
.snowfox-sr1 .sf-lbl-tech {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
	text-transform: uppercase; color: rgba(255,255,255,.5);
}
.snowfox-sr1 .sf-lbl-code { font-size: 10px; letter-spacing: .1em; }
.snowfox-sr1 .sf-lbl-cat {
	margin: 0 0 10px; font-size: 9.5px; font-weight: 600; letter-spacing: .18em;
	text-transform: uppercase; color: rgba(255,255,255,.55);
}
.snowfox-sr1 .sf-lbl-rule { display: block; height: 3px; width: 100%; margin-bottom: 10px; background: #21C3E0; }
.snowfox-sr1 .sf-lbl-b .sf-lbl-rule { background: #72E1D1; }
.snowfox-sr1 .sf-lbl-c .sf-lbl-rule { background: #C6F2F7; }
.snowfox-sr1 .sf-lbl-d .sf-lbl-rule { background: #071426; }
.snowfox-sr1 .sf-lbl-name {
	margin: 0; font-size: 15px; font-weight: 600; line-height: 1.15;
	letter-spacing: .06em; text-transform: uppercase; color: #fff;
}
.snowfox-sr1 .sf-lbl-tech { margin: 8px 0 0; font-size: 9.5px; letter-spacing: .08em; color: rgba(255,255,255,.45); }

.snowfox-sr1 .sf-lbl-d .sf-lbl-brand { color: var(--sf-navy); }
.snowfox-sr1 .sf-lbl-d .sf-lbl-code { color: rgba(7,20,38,.55); }
.snowfox-sr1 .sf-lbl-d .sf-lbl-cat  { color: rgba(7,20,38,.65); }
.snowfox-sr1 .sf-lbl-d .sf-lbl-name { color: var(--sf-navy); }
.snowfox-sr1 .sf-lbl-d .sf-lbl-tech { color: rgba(7,20,38,.55); }

.snowfox-sr1 .sf-pdp-media .sf-lbl { border-radius: 14px; }
.snowfox-sr1 ul.products li.product .sf-prod-media { overflow: hidden; border-radius: 12px 12px 0 0; }


/* ============================================================================
   SR-1 CATALOG BAR, CONTACT FORM AND EMPTY / ERROR STATES
   ========================================================================= */

.snowfox-sr1 .sf-sr-only {
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

.snowfox-sr1 .sf-cat-head { padding-top: 44px; }
.snowfox-sr1 .sf-cat-title { margin: 14px 0 0; }
.snowfox-sr1 .sf-cat-head .sf-page-lede { margin-top: 16px; }

.snowfox-sr1 .sf-cat-bar {
	margin: 30px 0 34px;
	padding: 22px 0 0;
	border-top: 1px solid var(--sf-line);
}
.snowfox-sr1 .sf-cat-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.snowfox-sr1 .sf-cat-row-tools { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--sf-line); gap: 20px; }
.snowfox-sr1 .sf-cat-legend {
	font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase;
	color: var(--sf-muted); white-space: nowrap;
}
.snowfox-sr1 .sf-pill-row { display: flex; flex-wrap: wrap; gap: 8px; }
.snowfox-sr1 a.sf-pill {
	display: inline-flex; align-items: center; gap: 7px;
	min-height: 38px; padding: 0 15px;
	border: 1px solid var(--sf-line); border-radius: 999px;
	background: #fff; color: var(--sf-text);
	font-size: 13.5px; line-height: 1; text-decoration: none;
	transition: border-color .15s ease, background .15s ease, color .15s ease;
}
.snowfox-sr1 a.sf-pill:hover { border-color: var(--sf-cyan); background: var(--sf-ice); color: var(--sf-navy); }
.snowfox-sr1 a.sf-pill.is-on { background: var(--sf-navy); border-color: var(--sf-navy); color: #fff; }
.snowfox-sr1 .sf-pill-n {
	font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; color: var(--sf-muted);
}
.snowfox-sr1 a.sf-pill.is-on .sf-pill-n { color: rgba(255,255,255,.6); }

.snowfox-sr1 .sf-cat-search { display: flex; gap: 8px; flex: 1 1 260px; max-width: 420px; }
.snowfox-sr1 .sf-cat-search input[type="search"] {
	flex: 1; min-height: 42px; padding: 0 13px;
	border: 1px solid var(--sf-line); border-radius: 8px; background: #fff;
	font-size: 14px; color: var(--sf-text);
}
.snowfox-sr1 .sf-cat-search input[type="search"]:focus { outline: none; border-color: var(--sf-cyan); }
.snowfox-sr1 .sf-cat-search-btn { min-height: 42px; }
.snowfox-sr1 .sf-cat-count {
	margin: 0; font-family: "JetBrains Mono", ui-monospace, monospace;
	font-size: 11.5px; letter-spacing: .08em; color: var(--sf-muted); white-space: nowrap;
}
.snowfox-sr1 .sf-cat-sort { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.snowfox-sr1 .sf-cat-sort select {
	min-height: 42px; padding: 0 12px; border: 1px solid var(--sf-line);
	border-radius: 8px; background: #fff; font-size: 14px; color: var(--sf-text);
}

.snowfox-sr1 .sf-loop-variants,
.snowfox-sr1 .sf-loop-stock {
	margin: 6px 0 0; font-size: 12.5px; color: var(--sf-muted);
}
.snowfox-sr1 .sf-loop-stock { font-weight: 500; }
.snowfox-sr1 .sf-stock-in-stock { color: #0E7C5A; }
.snowfox-sr1 .sf-stock-back-order { color: #8A5B12; }
.snowfox-sr1 .sf-stock-out-of-stock { color: var(--sf-muted); }
.snowfox-sr1 a.sf-loop-view { display: inline-flex; align-items: center; min-height: 40px; margin-top: 10px; font-size: 13.5px; }

.snowfox-sr1 .sf-contact-panel { padding: 26px; }
.snowfox-sr1 .sf-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.snowfox-sr1 .sf-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.snowfox-sr1 .sf-field { display: block; font-size: 13.5px; font-weight: 500; color: var(--sf-navy); }
.snowfox-sr1 .sf-field-wide { margin-top: 14px; }
.snowfox-sr1 .sf-field-opt { font-weight: 400; color: var(--sf-muted); }
.snowfox-sr1 .sf-field input,
.snowfox-sr1 .sf-field select,
.snowfox-sr1 .sf-field textarea {
	display: block; width: 100%; margin-top: 7px; padding: 11px 12px;
	border: 1px solid var(--sf-line); border-radius: 8px; background: #fff;
	font: inherit; font-size: 14px; font-weight: 400; color: var(--sf-text);
}
.snowfox-sr1 .sf-field input:focus,
.snowfox-sr1 .sf-field select:focus,
.snowfox-sr1 .sf-field textarea:focus { outline: none; border-color: var(--sf-cyan); box-shadow: 0 0 0 3px rgba(33,195,224,.14); }
.snowfox-sr1 .sf-field textarea { min-height: 132px; resize: vertical; }
.snowfox-sr1 .sf-form-submit { margin-top: 18px; }
.snowfox-sr1 .sf-form-note {
	margin: 0 0 18px; padding: 13px 15px; border-radius: 8px;
	border: 1px solid var(--sf-line); background: var(--sf-ice);
	font-size: 14px; line-height: 1.6; color: var(--sf-navy);
}
.snowfox-sr1 .sf-form-error { border-color: rgba(201,138,46,.5); background: #FDF6EC; color: #6B4410; }

/* Empty, no-result and error states */
.snowfox-sr1 .woocommerce-info,
.snowfox-sr1 .woocommerce-message,
.snowfox-sr1 .woocommerce-error,
.snowfox-sr1 .cart-empty,
.snowfox-sr1 .wc-empty-cart-message .cart-empty {
	list-style: none;
	margin: 0 0 22px;
	padding: 16px 18px;
	border: 1px solid var(--sf-line);
	border-left: 3px solid var(--sf-cyan);
	border-radius: 10px;
	background: var(--sf-ice);
	font-size: 14.5px;
	line-height: 1.65;
	color: var(--sf-navy);
}
.snowfox-sr1 .woocommerce-error { border-left-color: #C98A2E; background: #FDF6EC; color: #6B4410; }
.snowfox-sr1 .woocommerce-info a,
.snowfox-sr1 .woocommerce-message a,
.snowfox-sr1 .cart-empty + p a,
.snowfox-sr1 .return-to-shop a {
	color: var(--sf-navy); text-decoration: underline; text-underline-offset: 3px;
}
.snowfox-sr1 .return-to-shop { margin-top: 6px; }
.snowfox-sr1 .return-to-shop a.button { text-decoration: none; }
.snowfox-sr1 .sf-empty {
	margin: 26px 0 0; padding: 34px 30px;
	border: 1px solid var(--sf-line); border-radius: 14px; background: #fff;
}
.snowfox-sr1 .sf-empty h2 { margin: 12px 0 0; }
.snowfox-sr1 .sf-empty p { margin: 12px 0 0; color: var(--sf-muted); font-size: 14.5px; line-height: 1.7; }

@media (max-width: 900px) {
	.snowfox-sr1 .sf-cat-sort { margin-left: 0; }
	.snowfox-sr1 .sf-form-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
	.snowfox-sr1 .sf-cat-head { padding-top: 28px; }
	.snowfox-sr1 .sf-cat-search { max-width: none; }
	.snowfox-sr1 .sf-cat-row-tools { align-items: flex-start; }
}


/* --- CARD POLISH AFTER LABEL STUDY -------------------------------------- */
/* SR-1 states availability as plain text, not a boxed chip. */
.snowfox-sr1 ul.products li.product .sf-card-avail {
	border: 0;
	background: none;
	padding: 0;
	margin: 8px 0 0;
	font-size: 12.5px;
	font-weight: 500;
	letter-spacing: .02em;
	text-transform: none;
	text-align: left;
}
.snowfox-sr1 ul.products li.product .sf-card-avail--in { color: #0E7C5A; }
.snowfox-sr1 ul.products li.product .sf-card-avail--out { color: var(--sf-muted); }

/* The wishlist button is plugin chrome SR-1 has no equivalent for; keep it
   reachable but off the artwork. */
.snowfox-sr1 ul.products li.product button.woosw-btn {
	position: static;
	display: inline-block;
	margin: 10px 0 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	font-size: 12px;
	letter-spacing: .04em;
	color: var(--sf-muted);
}
.snowfox-sr1 ul.products li.product button.woosw-btn:hover { color: var(--sf-navy); text-decoration: underline; }

.snowfox-sr1 .sf-pdp-media .sf-lbl { max-height: 520px; }


/* ============================================================================
   SR-1 TYPE + CONTROL PARITY CORRECTIONS
   Every value below is taken from the frozen SR-1 index.css design system
   (commit c1d6efa) after a measured side-by-side against the built bundle.
   ========================================================================= */

/* Shell: SR-1 Shell is 1240px, Shell wide is 1380px; padding 20 / 32 / 48. */
.snowfox-sr1 .sf-shell { max-width: 1380px; padding-left: 20px; padding-right: 20px; }
@media (min-width: 640px)  { .snowfox-sr1 .sf-shell { padding-left: 32px; padding-right: 32px; } }
@media (min-width: 1024px) { .snowfox-sr1 .sf-shell { padding-left: 48px; padding-right: 48px; } }
.snowfox-sr1.sf-narrow .sf-shell { max-width: 1240px; }

/* Micro label: Inter, not mono. */
.snowfox-sr1 .sf-label {
	font-family: inherit;
	font-size: 11px;
	line-height: 1.2;
	letter-spacing: .18em;
	font-weight: 500;
	text-transform: uppercase;
}
.snowfox-sr1 .sf-label-cyan { color: #0E7C92; }

/* Editorial type scale. */
.snowfox-sr1 .sf-display,
.snowfox-sr1 .sf-hero-title,
.snowfox-sr1 main h1.sf-h1 {
	font-size: clamp(2.5rem, 6.2vw, 4.75rem);
	line-height: 1;
	letter-spacing: -.03em;
	font-weight: 600;
}
.snowfox-sr1 .sf-h2 {
	font-size: clamp(1.9rem, 3.9vw, 2.9rem);
	line-height: 1.06;
	letter-spacing: -.03em;
	font-weight: 600;
}
.snowfox-sr1 .sf-h3 {
	font-size: clamp(1.25rem, 2vw, 1.6rem);
	line-height: 1.15;
	letter-spacing: -.02em;
	font-weight: 600;
}
.snowfox-sr1 .sf-page-lede,
.snowfox-sr1 .sf-body {
	font-size: 1.0625rem;
	line-height: 1.75;
	color: var(--sf-muted);
	max-width: 68ch;
}

/* Buttons. */
.snowfox-sr1 .sf-btn,
.snowfox-sr1 a.sf-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	min-height: 46px;
	padding: 0 1.35rem;
	border-radius: 6px;
	font-size: .9375rem;
	font-weight: 500;
	letter-spacing: -.01em;
}
.snowfox-sr1 .sf-btn-primary,
.snowfox-sr1 a.sf-btn-primary { border: 1px solid var(--sf-navy); }
.snowfox-sr1 .sf-btn-outline,
.snowfox-sr1 a.sf-btn-outline {
	background: transparent;
	color: var(--sf-navy);
	border: 1px solid var(--sf-navy);
}
.snowfox-sr1 .sf-btn-outline:hover,
.snowfox-sr1 a.sf-btn-outline:hover {
	background: rgba(11, 27, 43, .05);
	border-color: var(--sf-navy);
	color: var(--sf-navy);
}

/* Cards. */
.snowfox-sr1 .sf-card,
.snowfox-sr1 .sf-page-card,
.snowfox-sr1 .sf-explore-card,
.snowfox-sr1 .sf-page-panel { border-radius: 14px; }

/* Header navigation sits in navy, not muted grey. */
.snowfox-sr1 .sf-nav-link { color: var(--sf-navy); font-weight: 500; font-size: 14px; }
.snowfox-sr1 .sf-nav-link:hover { color: var(--sf-navy); }


/* --- HERO SECTION RHYTHM (SR-1 measures 80px top / 112px bottom) --------- */
.snowfox-sr1.home main > .sf-sec:first-of-type { padding-top: 80px; padding-bottom: 112px; }
@media (max-width: 640px) {
	.snowfox-sr1.home main > .sf-sec:first-of-type { padding-top: 48px; padding-bottom: 64px; }
}


/* --- BODY-COPY SCALE ALIGNMENT ------------------------------------------- */
/* SR-1 section copy is .sf-body (17px / 1.75); SR-1 card copy is text-sm
   leading-relaxed (14px / 1.625). */
.snowfox-sr1 .sf-academy-copy { font-size: 1.0625rem; line-height: 1.75; }
.snowfox-sr1 .sf-explore-card .sf-muted-copy,
.snowfox-sr1 .sf-why-item .sf-muted-copy,
.snowfox-sr1 .sf-page-card .sf-muted-copy,
.snowfox-sr1 .sf-page-panel .sf-muted-copy { font-size: 14px; line-height: 1.625; }


/* --- SAFARI BACKDROP-FILTER PREFIX --------------------------------------- */
/* WebKit still requires the prefixed property; without it the sticky header
   and the drawer scrim lose their blur in Safari. Found by a cross-engine
   feature audit of this stylesheet. */
.snowfox-sr1 .sf-header { -webkit-backdrop-filter: blur(14px); }
.snowfox-sr1 .sf-drawer-scrim { -webkit-backdrop-filter: blur(2px); }
