/*
Theme Name: Natural Soap Supply
Theme URI: https://naturalsoap.supply
Author: Natural Soap Supply
Description: Minimal custom theme for NaturalSoap.Supply. Paper, ink, and kraft. WooCommerce-ready.
Version: 1.1.40
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: naturalsoap
WC requires at least: 8.0
*/

/* ============ Tokens ============ */
:root{
  --paper:#FAFAF8;
  --ink:#161616;
  --stone:#7C7A74;
  --mist:#E9E8E4;
  --kraft:#A9855D;
  --kraft-deep:#6E5334;
  --kraft-tint:#F1EAE0;
  --kraft-line:#E2D6C4;
  --max:1080px;
  --hero-pad:clamp(32px,5vh,48px);
  --section-gap:clamp(72px,10vh,104px);
}

/* ============ Reset / base ============ */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:64px}
body{background:var(--paper);color:var(--ink);font-family:'Inter',sans-serif;font-weight:400;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.display,h1,h2,h3.display{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase}
.eyebrow{font-family:'Oswald',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.35em;font-size:12px;color:var(--stone)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ============ Buttons (shared, incl. Woo) ============ */
.nss-btn,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #payment #place_order,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:inline-block;padding:14px 36px;border:1px solid var(--ink);background:none;color:var(--ink);
  font-family:'Oswald',sans-serif;font-weight:300;letter-spacing:.28em;font-size:13px;text-transform:uppercase;
  border-radius:0;transition:all .25s ease;line-height:1.4;
}
.nss-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.nss-btn--kraft,
.woocommerce .single_add_to_cart_button.button,
.woocommerce #payment #place_order,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  background:var(--kraft-deep);border-color:var(--kraft-deep);color:#fff;
}
.woocommerce .single_add_to_cart_button.button:hover,
.woocommerce #payment #place_order:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--kraft-deep);border-color:var(--kraft-deep);color:#fff}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background:var(--ink);border-color:var(--ink)}

/* ============ Header ============ */
.site-header{position:sticky;top:0;background:rgba(250,250,248,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--mist);z-index:100}
.site-header .nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{font-family:'Oswald',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.28em;font-size:14px}
.brand span{color:var(--kraft)}
.nav-links{display:flex;gap:32px;font-family:'Oswald',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.15em;font-size:12.5px;color:var(--ink);align-items:center}
.nav-links a:hover{color:var(--stone)}
.cart-link{display:inline-flex;align-items:center}
.cart-link .count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;line-height:1;border-radius:9px;background:var(--kraft-deep);color:#fff;font-family:'Inter',sans-serif;font-weight:400;font-size:10.5px;letter-spacing:0;margin-left:6px;padding:1px 4px 0}

/* ============ Hero ============ */
.hero{padding:var(--hero-pad) 0 var(--section-gap);text-align:left}
.hero-split{background:var(--paper)}
.hero-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(38px,5.5vw,64px);letter-spacing:.18em;line-height:1.12}
.hero h1 .tld{color:var(--kraft)}
.hero .tag{margin-top:28px;font-size:18px}
.hero .sub{margin-top:8px;font-size:13px;letter-spacing:.12em;color:var(--stone);text-transform:uppercase}
.hero .nss-btn{margin-top:36px}
.hero-media{aspect-ratio:4/5;border:1px solid var(--kraft-line);overflow:hidden}
.hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.hero-media .photo-slot{width:100%;height:100%;padding:24px;text-align:center;background:repeating-linear-gradient(45deg,#E4DACB,#E4DACB 12px,#E9E0D3 12px,#E9E0D3 24px);color:#8A7452;display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-family:'Oswald',sans-serif;font-weight:300}

/* ============ Story ============ */
.story{padding:96px 0;text-align:center;background:var(--kraft-tint);border-top:1px solid var(--kraft-line);border-bottom:1px solid var(--kraft-line)}
.story .lede{max-width:620px;margin:24px auto 0;font-size:17px;color:#3A3936}
.story .fine{max-width:620px;margin:16px auto 0}

/* ============ Product grids (front page + shop) ============ */
.section-head{text-align:center;padding:0 0 48px}
.section-head h2,.story h2{font-size:clamp(26px,4vw,36px);letter-spacing:.22em;margin-top:12px}
.price-note,.story .fine{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.15em;font-size:12px;color:var(--stone)}
.price-note{margin-top:10px}
.story .fine{color:#6E6A62}
.nss-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none}
.nss-grid--2{grid-template-columns:repeat(2,1fr);max-width:560px;margin:0 auto}
.nss-card{text-align:center}
.nss-card .ph{aspect-ratio:1/1;background:var(--mist);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background .25s ease;position:relative}
.nss-card:hover .ph{background:var(--kraft-tint)}
.nss-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.nss-card:hover .ph img{transform:scale(1.03)}
.nss-card h3{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:14px;margin-top:16px}
.nss-card .meta,ul.products li.product .nss-spec{font-size:12.5px;color:var(--stone);margin:4px 0 0}
.nss-card .price{display:block;font-family:'Oswald',sans-serif;font-weight:300;color:var(--ink);font-size:14px;letter-spacing:.06em;margin-top:4px}
.front-products{padding:var(--section-gap) 0 96px}
.front-products.subrange{padding-bottom:96px}

/* ============ Trust strip ============ */
.trust{background:var(--ink);color:var(--paper);padding:72px 0}
.trust .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
.trust h4{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.24em;font-size:14px}
.trust p{font-size:13.5px;color:#A6A49E;margin-top:10px;max-width:260px;margin-inline:auto}
.trust .rule{width:28px;height:1px;background:var(--kraft);margin:0 auto 20px}

/* ============ Signup ============ */
.signup{background:var(--kraft-tint);padding:88px 0;text-align:center;border-top:1px solid var(--kraft-line)}
.signup h2{font-size:clamp(24px,3.5vw,32px);letter-spacing:.2em}
.signup p{margin-top:12px;font-size:14px;color:#6E6A62}
.signup .form-holder{margin-top:32px}
.signup form,.signup .nss-fallback-form{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.signup input[type=email],.signup input[type=text]{width:min(360px,80vw);padding:14px 18px;border:1px solid #C9B899;background:var(--paper);font-family:'Inter',sans-serif;font-size:14px;color:var(--ink)}
.signup input:focus{outline:2px solid var(--kraft-deep);outline-offset:1px}
.signup button,.signup input[type=submit]{padding:14px 36px;border:1px solid var(--kraft-deep);background:var(--kraft-deep);color:#fff;font-family:'Oswald',sans-serif;font-weight:300;letter-spacing:.25em;font-size:13px;text-transform:uppercase;transition:background .25s}
.signup button:hover,.signup input[type=submit]:hover{background:var(--ink);border-color:var(--ink)}
/* MailPoet form (shortcode-injected). !important is required: MailPoet
   inlines width/padding/margin/border-color on the fields themselves. */
.signup .mailpoet_form{display:flex;justify-content:center;align-items:stretch;gap:12px;flex-wrap:wrap;margin:0}
.signup .mailpoet_paragraph{margin:0!important;display:flex}
.signup .mailpoet_text,.signup .mailpoet_submit{height:56px;box-sizing:border-box;margin:0!important}
.signup .mailpoet_text{width:min(340px,75vw)!important;padding:0 20px!important;border:1px solid #C9B899;background:var(--paper);font-family:'Inter',sans-serif;font-size:15px;color:var(--ink)}
.signup .mailpoet_submit{width:auto!important;padding:0 48px!important;border:1px solid var(--kraft-deep)!important;background:var(--kraft-deep);color:#fff;font-family:'Oswald',sans-serif;font-weight:300;letter-spacing:.25em;font-size:13px;text-transform:uppercase;transition:background .25s;cursor:pointer}
.signup .mailpoet_submit:hover{background:var(--ink);border-color:var(--ink)!important}
.signup .mailpoet_text::placeholder{color:var(--stone)}
.signup .mailpoet_message{flex-basis:100%;text-align:center}

/* ============ Footer ============ */
.site-footer{padding:56px 0 32px;border-top:1px solid var(--mist)}
.foot-brand{text-align:center}
.foot-brand .brand{display:inline-block}
.foot-tagline{margin-top:10px;font-size:13px;color:var(--stone)}
.foot-ig{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:13px;color:var(--stone)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;border-top:1px solid var(--mist);margin-top:36px;padding-top:24px;font-size:12.5px;color:var(--stone)}
.foot-copy a{text-decoration:none;color:inherit}
.foot-copy a:hover{color:var(--kraft-deep)}
.foot-links{display:flex;gap:24px}
.site-footer a:hover{color:var(--ink)}

/* ============ Generic page content ============ */
.page-body{padding:64px 0 96px}
.page-body .entry{max-width:680px;margin:0 auto}
.page-body h1{font-size:clamp(28px,4vw,40px);letter-spacing:.18em;text-align:center;margin-bottom:40px}
.page-body p{margin-bottom:1.2em}

/* ============ WooCommerce: general ============ */
.woocommerce-page .wrap>.woocommerce{padding:96px 0 96px}
.wc-wrap{padding-top:64px;padding-bottom:96px}
.woocommerce .woocommerce-breadcrumb{font-family:'Oswald',sans-serif;font-weight:400;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin:24px 0 0;padding:0}
.woocommerce .woocommerce-breadcrumb a{color:var(--stone)}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--ink)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top:2px solid var(--kraft-deep);background:var(--kraft-tint);color:var(--ink);font-size:14px}
.woocommerce-message::before,.woocommerce-info::before{color:var(--kraft-deep)}
.woocommerce-error{border-top-color:#8A2E2E}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single{
  padding:13px 14px;border:1px solid #D8D5CE;background:#fff;font-family:'Inter',sans-serif;font-size:14.5px;color:var(--ink);border-radius:0;height:auto;line-height:1.4;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{outline:2px solid var(--kraft-deep);outline-offset:1px;border-color:#D8D5CE}
.woocommerce form .form-row label{font-size:12px;letter-spacing:.08em;color:var(--stone);text-transform:uppercase;font-family:'Oswald',sans-serif;font-weight:400}
.select2-container--default .select2-selection--single{display:flex;align-items:center}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}

/* ============ WooCommerce: shop archive ============ */
ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:0;padding:0;list-style:none}
.woocommerce ul.products[class*=columns-]::before,.woocommerce ul.products[class*=columns-]::after,ul.products::before,ul.products::after{content:none}
.woocommerce ul.products[class*=columns-] li.product,ul.products li.product{margin:0;width:auto;float:none;text-align:center}
.woocommerce ul.products li.product a img{margin:0;aspect-ratio:1/1;object-fit:cover;background:var(--mist)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:14px;padding-top:16px}
.woocommerce ul.products li.product .price{font-family:'Oswald',sans-serif;font-weight:300;color:var(--ink);font-size:14px;letter-spacing:.06em;margin:4px 0 0}
.woocommerce ul.products li.product .button{margin-top:12px;padding:10px 22px;font-size:11.5px;letter-spacing:.22em}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{font-size:13px;color:var(--stone)}
.woocommerce nav.woocommerce-pagination ul{border:none}
.woocommerce nav.woocommerce-pagination ul li{border:none}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{font-family:'Oswald',sans-serif;font-weight:300;letter-spacing:.1em}
.woocommerce span.onsale{background:var(--kraft-deep);border-radius:0;font-family:'Oswald',sans-serif;font-weight:400;letter-spacing:.15em;text-transform:uppercase;font-size:11px;line-height:2.4;min-height:0;min-width:0;padding:0 12px}

/* ============ WooCommerce: single product ============ */
.single-product div.product{display:block}
.woocommerce div.product::after,
.woocommerce .woocommerce::after{content:"";display:table;clear:both}
.nss-long-desc{margin-top:24px;font-size:14.5px;color:#4A4844;max-width:48ch}
.nss-long-desc p{margin-bottom:1em}
.woocommerce #content div.product div.images,.woocommerce div.product div.images{width:52%;margin-bottom:0}
.woocommerce #content div.product div.summary,.woocommerce div.product div.summary{width:42%}
.woocommerce div.product .product_title{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(30px,4.5vw,44px);letter-spacing:.14em;line-height:1.15}
.woocommerce div.product p.price{font-family:'Oswald',sans-serif;font-weight:300;font-size:26px;letter-spacing:.06em;color:var(--ink);margin:20px 0 0}
.woocommerce div.product .woocommerce-product-details__short-description{margin-top:20px;font-size:15px;color:#3A3936;max-width:44ch}
.woocommerce div.product div.images .woocommerce-product-gallery__image{background:var(--mist)}
.woocommerce div.product{display:flow-root}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}
.woocommerce div.product div.images .flex-control-thumbs::before,.woocommerce div.product div.images .flex-control-thumbs::after{content:none}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto;float:none;margin:0}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto;float:none}
.woocommerce div.product div.images .flex-control-thumbs li img{border:1px solid transparent;opacity:1}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs li img:hover{border-color:var(--kraft)}
.nss-accordion .tagline{color:var(--stone);font-size:12.5px;display:block;margin-top:8px}
.woocommerce div.product form.cart{margin:32px 0 0;display:flex;gap:14px;align-items:stretch}
.woocommerce div.product form.cart div.quantity{display:flex;border:1px solid var(--ink);float:none;margin:0}
.woocommerce .quantity .qty{width:64px;border:none;background:none;font-size:15px;font-family:'Inter',sans-serif;text-align:center;height:auto}
.woocommerce div.product form.cart .button{flex:1;padding:16px 24px}
.nss-ship-note{margin-top:16px;font-size:13px;color:var(--stone)}
.nss-ship-note b{font-weight:500;color:var(--ink)}
.nss-accordion{margin-top:36px;border-top:1px solid var(--mist)}
.nss-accordion details{border-bottom:1px solid var(--mist)}
.nss-accordion summary{padding:16px 0;cursor:pointer;font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.22em;font-size:14px;list-style:none;display:flex;justify-content:space-between;align-items:center}
.nss-accordion summary::-webkit-details-marker{display:none}
.nss-accordion summary::after{content:"+";font-size:16px;color:var(--stone)}
.nss-accordion details[open] summary::after{content:"\2013"}
.nss-accordion .body{padding:0 0 18px;font-size:14px;color:#4A4844;max-width:56ch}
.woocommerce div.product .product_meta{display:none}
.woocommerce div.product .woocommerce-tabs{display:none}
.related.products{clear:both;display:flow-root;padding-top:72px}
.related.products>h2{text-align:center;font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(22px,3vw,30px);letter-spacing:.22em;margin-bottom:40px}

/* ============ WooCommerce: cart ============ */
.woocommerce-cart .shop_table{border:1px solid var(--mist);border-radius:0}
.woocommerce-cart .shop_table th,.woocommerce-account .shop_table th{font-family:'Oswald',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.15em;font-size:12px;color:var(--stone)}
.woocommerce-cart table.cart img{width:64px;background:var(--mist)}
.woocommerce-cart table.cart td.product-name a{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.1em;font-size:14px}
.woocommerce-cart .cart-collaterals .cart_totals{width:100%;max-width:420px;float:right;background:#fff;border:1px solid var(--mist);padding:28px}
.woocommerce-cart .cart-collaterals .cart_totals h2{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.24em;font-size:14px}
.woocommerce-cart .cart-collaterals .cart_totals table{border:none}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;text-align:center}
.woocommerce table.shop_table td{border-top:1px solid var(--mist)}
.woocommerce #coupon_code{width:140px;padding:11px 13px;border:1px solid #D8D5CE;font-size:13.5px;height:auto}

/* ============ WooCommerce: checkout ============ */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}
.woocommerce-checkout #customer_details{width:auto;float:none}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:100%;float:none}
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{grid-column:2}
.woocommerce-checkout #customer_details{grid-column:1;grid-row:1 / span 2}
.woocommerce-checkout #order_review_heading{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.24em;font-size:14px;background:#fff;border:1px solid var(--mist);border-bottom:none;padding:24px 28px 0;margin:0}
.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--mist);border-top:none;padding:12px 28px 28px}
.woocommerce-checkout h3{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.24em;font-size:14px;margin:0 0 16px}
.woocommerce-checkout #payment{background:none;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border:1px solid #D8D5CE;background:#fff;padding:0}
.woocommerce-checkout #payment ul.payment_methods li{padding:14px 18px;border-bottom:1px solid var(--mist);font-size:14.5px;list-style:none}
.woocommerce-checkout #payment ul.payment_methods li:last-child{border-bottom:none}
.woocommerce-checkout #payment div.payment_box{background:var(--kraft-tint);border-radius:0;font-size:13.5px}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--kraft-tint)}
.woocommerce-checkout #payment #place_order{width:100%;margin-top:16px}
.nss-stripe-note{display:none;align-items:center;gap:6px;font-family:'Inter',sans-serif;font-size:12px;color:var(--stone);margin:12px 0 4px}
#payment:has(input[name="payment_method"][value^="stripe"]:checked) .nss-stripe-note{display:flex}
.nss-stripe-note svg{flex:0 0 auto}
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option:has(input[value^="stripe"]:checked)+.wc-block-components-radio-control-accordion-content::after{content:"Powered by Stripe";display:block;margin-top:12px;font-family:'Inter',sans-serif;font-size:12px;color:var(--stone)}
.wc-block-components-product-metadata__description{display:none}
.woocommerce-checkout-review-order-table{border:none}
.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{border-top:1px solid var(--mist);font-size:14px}
.woocommerce-checkout-review-order-table .order-total td,.woocommerce-checkout-review-order-table .order-total th{border-top:1px solid var(--ink);font-size:16px}
.woocommerce form.checkout_coupon{border:1px solid var(--kraft-line);background:var(--kraft-tint);border-radius:0}

/* ============ My account ============ */
.woocommerce-account .page-body .entry{max-width:none}
.woocommerce-account .page-body h1{font-size:clamp(20px,2.5vw,26px);letter-spacing:.24em;margin-bottom:32px}
.logged-in.woocommerce-account .entry>.woocommerce{display:grid;grid-template-columns:240px 1fr;gap:24px 40px;align-items:start}
.woocommerce-account .entry>.woocommerce>*{grid-column:1/-1}
.woocommerce-account .entry>.woocommerce>p:empty{display:none}
.woocommerce-account .entry>.woocommerce>.woocommerce-notices-wrapper:not(:has(*)){display:none}
.logged-in.woocommerce-account .woocommerce-MyAccount-navigation{grid-column:1;grid-row:2;float:none;width:auto;min-width:0}
.logged-in.woocommerce-account .woocommerce-MyAccount-content{grid-column:2;grid-row:2;float:none;width:auto;min-width:0}
.woocommerce-account .woocommerce-MyAccount-navigation{border:1px solid var(--mist);background:#fff;padding:20px 24px}
.woocommerce-account .woocommerce-MyAccount-content{border:1px solid var(--mist);background:#fff;padding:32px 36px}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-MyAccount-navigation li a{display:block;padding:8px 0;border-left:2px solid transparent;font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.15em;font-size:13px;color:var(--stone);transition:color .2s,padding .2s}
.woocommerce-MyAccount-navigation li a:hover{color:var(--ink)}
.woocommerce-MyAccount-navigation li.is-active a{border-left-color:var(--kraft);padding-left:10px;color:var(--ink);font-weight:400}
.woocommerce-MyAccount-content{font-size:15px}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font-size:17px;letter-spacing:.18em;margin:28px 0 14px}
.woocommerce-MyAccount-content>*:first-child{margin-top:0}
.woocommerce-MyAccount-content p a{color:var(--kraft-deep);text-decoration:underline;text-underline-offset:3px}
.nss-account-dashboard .woocommerce-MyAccount-content>p:nth-of-type(1),.nss-account-dashboard .woocommerce-MyAccount-content>p:nth-of-type(2){display:none}
.woocommerce-account table.shop_table{border:none;border-radius:0;border-collapse:collapse;width:100%}
.woocommerce-account table.shop_table th{padding:12px 16px;border-bottom:1px solid var(--mist)}
.woocommerce-account table.shop_table td{padding:16px;border:none;border-bottom:1px solid var(--mist);background:transparent}
.woocommerce-account .woocommerce-Address{border:1px solid var(--mist);padding:24px}
.woocommerce-account fieldset legend{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:.2em;font-size:15px;margin:24px 0 12px}
.woocommerce-account form.login,.woocommerce-account form.lost_reset_password,.woocommerce-account form.register{border:1px solid var(--mist);border-radius:0;padding:32px;max-width:480px;margin:0 auto}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:12px 14px;border:1px solid var(--kraft-line);background:var(--paper);font-family:'Inter',sans-serif;font-size:14px;color:var(--ink);box-sizing:border-box}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{outline:2px solid var(--kraft-deep);outline-offset:1px}
.woocommerce form .form-row{margin:0 0 16px}

/* ============ Woo notices ============ */
.woocommerce-page .woocommerce-message,.woocommerce-page .woocommerce-info{background:var(--kraft-tint);border-top-color:var(--kraft);color:#4A4844}
.woocommerce-page .woocommerce-message::before,.woocommerce-page .woocommerce-info::before{color:var(--kraft)}
.woocommerce-page .woocommerce-error{background:#F4E6E4;border-top-color:#A65D51;color:#5B3A34}
.woocommerce-page .woocommerce-error::before{color:#A65D51}

/* ============ Order received ============ */
.woocommerce-order-received .woocommerce-thankyou-order-received{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(22px,3vw,30px);letter-spacing:.18em;text-align:center;margin:32px 0}

/* ============ Responsive ============ */
@media (max-width:900px){
  .woocommerce-checkout form.checkout{grid-template-columns:1fr;gap:40px}
  .woocommerce-checkout #customer_details,.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:1}
  .woocommerce-checkout #customer_details{grid-row:auto}
  .woocommerce #content div.product div.images,.woocommerce div.product div.images,
  .woocommerce #content div.product div.summary,.woocommerce div.product div.summary{width:100%;float:none}
  .woocommerce div.product div.summary{margin-top:36px}
}
@media (max-width:820px){
  .nss-grid,.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:20px}
  .nav-links{gap:20px}
  .hero-inner{grid-template-columns:1fr;gap:40px}
  .hero-text{text-align:center}
  .hero-media{aspect-ratio:4/3}
  .trust .cols{grid-template-columns:1fr;gap:36px}
  .foot-bottom{flex-direction:column-reverse;justify-content:center;text-align:center}
  .foot-links{justify-content:center;flex-wrap:wrap}
  .woocommerce-cart .cart-collaterals .cart_totals{float:none;max-width:none}
  body{overflow-x:clip}
  .page-body .entry .alignfull,.page-body .entry .alignwide,.page-body .entry .wp-block-woocommerce-cart,.page-body .entry .wp-block-woocommerce-checkout{margin-left:0!important;margin-right:0!important;width:auto;max-width:none}
  .logged-in.woocommerce-account .entry>.woocommerce{grid-template-columns:1fr;gap:24px;overflow-x:hidden}
  .logged-in.woocommerce-account .woocommerce-MyAccount-navigation{grid-column:1;grid-row:auto}
  .logged-in.woocommerce-account .woocommerce-MyAccount-content{grid-column:1;grid-row:auto}
  .woocommerce-account .woocommerce-MyAccount-navigation{padding:16px 20px}
  .woocommerce-account .woocommerce-MyAccount-content{padding:24px 20px}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important}
  html{scroll-behavior:auto}
}
