/*
Theme Name: Branded Starr Western Boutique
Theme URI: https://brandedstarrshop.com/
Author: Branded Starr Western Boutique LLC
Description: An editorial Western boutique theme created for Branded Starr.
Version: 1.0.0
Text Domain: branded-starr
*/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=Montserrat:wght@400;500;600;700&display=swap');

:root {
  --bs-ink: #1f2933;
  --bs-denim: #2c3e50;
  --bs-rust: #8b3a3a;
  --bs-cognac: #a8643a;
  --bs-sand: #f4ebd0;
  --bs-cream: #fbf7ec;
  --bs-white: #fffdf8;
  --bs-brass: #bd8c45;
  --bs-line: rgba(44, 62, 80, .18);
  --bs-shadow: 0 18px 45px rgba(31, 41, 51, .12);
  --bs-serif: 'Cormorant Garamond', Georgia, serif;
  --bs-sans: 'Montserrat', Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bs-white);
  color: var(--bs-ink);
  font-family: var(--bs-sans);
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .15;
  z-index: 9999;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");
}
a { color: var(--bs-rust); text-underline-offset: 3px; }
a:hover { color: var(--bs-cognac); }
img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { clip: auto; width: auto; height: auto; padding: 12px 18px; margin: 8px; background: var(--bs-white); color: var(--bs-ink); z-index: 10000; }
:focus-visible { outline: 3px solid var(--bs-brass); outline-offset: 3px; }

.announcement { background: var(--bs-denim); color: var(--bs-white); padding: 9px 20px; text-align: center; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.site-header { position: sticky; top: 0; z-index: 100; background: rgba(255,253,248,.96); border-bottom: 1px solid var(--bs-line); backdrop-filter: blur(12px); }
.header-inner { max-width: 1240px; min-height: 88px; margin: 0 auto; padding: 12px 32px; display: grid; grid-template-columns: 300px 1fr 300px; align-items: center; gap: 20px; }
.announcement, .header-inner, .hero-content, .button-row, .button-row .button { box-sizing: border-box !important; }
.brand-lockup { display: flex; align-items: center; gap: 12px; color: var(--bs-denim); text-decoration: none; }
.brand-lockup img { width: 54px; height: 54px; }
.brand-name { display: block; font-family: var(--bs-serif); font-weight: 700; font-size: 25px; letter-spacing: .02em; line-height: .9; }
.brand-sub { display: block; margin-top: 5px; color: var(--bs-cognac); font-size: 8px; font-weight: 700; letter-spacing: .23em; text-transform: uppercase; }
.primary-nav { display: flex; justify-content: center; gap: 28px; }
.primary-nav a { color: var(--bs-denim); text-decoration: none; text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 700; padding: 12px 2px; }
.primary-nav a:hover { color: var(--bs-rust); }
.header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 18px; }
.header-actions a { color: var(--bs-denim); text-decoration: none; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.header-actions svg { width: 20px; height: 20px; vertical-align: middle; }
.header-actions .social-icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: -12px; }
.mobile-nav-only { display: none; }
.menu-toggle { display: none; min-width: 44px; min-height: 44px; border: 0; background: transparent; color: var(--bs-denim); cursor: pointer; }

.hero { min-height: min(690px, calc(100vh - 116px)); position: relative; display: flex; align-items: center; overflow: hidden; background: var(--bs-denim); }
.hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(19,30,39,.93) 0%, rgba(31,46,58,.72) 39%, rgba(31,46,58,.08) 73%); }
.hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-content { position: relative; z-index: 2; max-width: 1240px; width: 100%; margin: 0 auto; padding: 92px 32px; color: var(--bs-white); }
.eyebrow { margin: 0 0 18px; color: var(--bs-brass); font-size: 11px; font-weight: 700; letter-spacing: .28em; text-transform: uppercase; }
.hero h1 { max-width: 670px; margin: 0 0 22px; color: var(--bs-white); font-family: var(--bs-serif); font-size: clamp(55px, 7vw, 104px); font-weight: 600; line-height: .88; letter-spacing: -.035em; }
.hero h1 em { color: var(--bs-sand); font-weight: 500; }
.hero-copy { max-width: 575px; margin: 0 0 34px; font-family: var(--bs-serif); font-size: 22px; line-height: 1.45; color: rgba(255,253,248,.9); }
.button-row { display: flex; flex-wrap: wrap; gap: 14px; }
.button, .wp-element-button, button, input[type='submit'] { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 13px 25px; border: 1px solid var(--bs-rust); border-radius: 0; background: var(--bs-rust); color: var(--bs-white); font-family: var(--bs-sans); font-size: 11px; font-weight: 700; letter-spacing: .15em; line-height: 1.2; text-decoration: none; text-transform: uppercase; cursor: pointer; transition: .2s ease; }
.button:hover, .wp-element-button:hover, button:hover, input[type='submit']:hover { background: #713030; border-color: #713030; color: var(--bs-white); transform: translateY(-2px); }
.button-outline { border-color: rgba(255,255,255,.7); background: transparent; color: var(--bs-white); }
.button-outline:hover { border-color: var(--bs-white); background: var(--bs-white); color: var(--bs-denim); }

.trust-bar { background: var(--bs-sand); border-bottom: 1px solid rgba(139,58,58,.15); }
.trust-inner { max-width: 1240px; margin: auto; padding: 16px 32px; display: grid; grid-template-columns: repeat(3,1fr); }
.trust-item { display: flex; justify-content: center; align-items: center; gap: 10px; border-right: 1px solid rgba(139,58,58,.16); color: var(--bs-denim); font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.trust-item:last-child { border: 0; }
.trust-item svg { width: 18px; height: 18px; color: var(--bs-rust); }

.section { padding: 100px 32px; }
.section-cream { background: var(--bs-cream); }
.section-denim { background: var(--bs-denim); color: var(--bs-white); }
.container { max-width: 1180px; margin: 0 auto; }
.section-heading { max-width: 730px; margin: 0 auto 54px; text-align: center; }
.section-heading h2 { margin: 0 0 18px; color: var(--bs-denim); font-family: var(--bs-serif); font-size: clamp(42px,5vw,66px); font-weight: 600; line-height: 1; }
.section-heading p { max-width: 660px; margin: auto; color: #56616a; }
.section-heading-row { max-width: none; display: flex; justify-content: space-between; align-items: end; gap: 36px; text-align: left; }
.section-heading-row h2 { margin-bottom: 0; }
.section-heading-row .eyebrow { margin-bottom: 12px; }
.text-link { flex: 0 0 auto; color: var(--bs-denim); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.text-link:hover { color: var(--bs-rust); }
.section-denim .section-heading h2, .section-denim .section-heading p { color: var(--bs-white); }
.section-denim .section-heading p { opacity: .78; }

.collection-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.collection-card { position: relative; min-height: 410px; overflow: hidden; background: var(--bs-denim); color: white; box-shadow: var(--bs-shadow); }
.collection-card::before { content: ''; position: absolute; inset: 0; opacity: .95; transition: transform .35s ease, opacity .35s ease; }
.collection-card:nth-child(1)::before { background: linear-gradient(165deg, rgba(44,62,80,.12), rgba(31,41,51,.9)), url('assets/images/branded-starr-feature-500.jpg') center/cover; }
.collection-card:nth-child(2)::before { background: linear-gradient(165deg, rgba(139,58,58,.25), rgba(31,41,51,.91)), url('assets/images/branded-starr-banner-1111x252.jpg') 72% center/cover; }
.collection-card:nth-child(3)::before { background: linear-gradient(165deg, rgba(168,100,58,.18), rgba(31,41,51,.92)), url('assets/images/branded-starr-feature-500.jpg') 78% center/cover; filter: sepia(.15); }
.collection-card:hover::before { transform: scale(1.035); opacity: .82; }
.collection-card-content { position: absolute; inset: auto 0 0; padding: 36px; }
.collection-number { display: block; margin-bottom: 12px; color: var(--bs-sand); font-size: 10px; font-weight: 700; letter-spacing: .25em; }
.collection-card h3 { margin: 0 0 8px; font-family: var(--bs-serif); font-size: 37px; font-weight: 600; line-height: 1; }
.collection-card p { margin: 0; color: rgba(255,255,255,.78); font-size: 13px; }

.story-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 72px; align-items: center; }
.story-image-wrap { position: relative; }
.story-image-wrap::before { content: ''; position: absolute; inset: -18px 18px 18px -18px; border: 1px solid var(--bs-brass); }
.story-image-wrap img { position: relative; display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover; box-shadow: var(--bs-shadow); }
.story-content h2 { margin: 0 0 24px; color: var(--bs-denim); font-family: var(--bs-serif); font-size: clamp(45px,5vw,68px); font-weight: 600; line-height: .98; }
.story-content .signature { margin: 28px 0 30px; color: var(--bs-rust); font-family: var(--bs-serif); font-size: 28px; font-style: italic; }

.values { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.18); }
.value { padding: 42px 34px; background: var(--bs-denim); }
.value-mark { color: var(--bs-brass); font-family: var(--bs-serif); font-size: 40px; }
.value h3 { margin: 9px 0 12px; color: white; font-family: var(--bs-serif); font-size: 28px; }
.value p { margin: 0; color: rgba(255,255,255,.72); font-size: 14px; }

.wholesale-callout { padding: 80px 40px; background: var(--bs-rust); color: white; text-align: center; position: relative; overflow: hidden; }
.wholesale-callout::before, .wholesale-callout::after { content: '✦'; position: absolute; color: rgba(255,255,255,.12); font-size: 170px; line-height: 1; }
.wholesale-callout::before { left: 5%; top: -30px; }
.wholesale-callout::after { right: 5%; bottom: -40px; }
.wholesale-callout h2 { position: relative; margin: 0 0 15px; font-family: var(--bs-serif); font-size: clamp(42px,5vw,64px); line-height: 1; }
.wholesale-callout p { position: relative; max-width: 680px; margin: 0 auto 28px; color: rgba(255,255,255,.85); }
.wholesale-callout .button { position: relative; border-color: var(--bs-white); background: var(--bs-white); color: var(--bs-rust); }

.page-hero { padding: 92px 32px 74px; background: var(--bs-denim); color: var(--bs-white); text-align: center; }
.page-hero h1 { max-width: 920px; margin: 0 auto; font-family: var(--bs-serif); font-size: clamp(50px,7vw,80px); font-weight: 600; line-height: 1; }
.page-hero p { max-width: 650px; margin: 18px auto 0; color: rgba(255,255,255,.75); }
.page-content { max-width: 920px; margin: 0 auto; padding: 78px 32px 110px; }
.page-content > *:first-child { margin-top: 0; }
.page-content h2 { margin: 48px 0 14px; color: var(--bs-denim); font-family: var(--bs-serif); font-size: 36px; line-height: 1.15; }
.page-content h3 { margin: 30px 0 10px; color: var(--bs-rust); font-family: var(--bs-serif); font-size: 24px; }
.page-content p, .page-content li { color: #3f4a53; }
.page-content ul, .page-content ol { padding-left: 24px; }
.page-content .lead { font-family: var(--bs-serif); font-size: 25px; line-height: 1.45; color: var(--bs-denim); }
.legal-meta { padding: 16px 20px; border-left: 3px solid var(--bs-rust); background: var(--bs-cream); font-size: 13px; }
.contact-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin: 36px 0; }
.contact-card { padding: 28px; border: 1px solid var(--bs-line); background: var(--bs-cream); }
.contact-card h3 { margin-top: 0; }
.contact-card p { margin-bottom: 0; font-size: 14px; }

/* WooCommerce catalog */
.featured-products-section { background: var(--bs-white); }
.woocommerce .woocommerce-notices-wrapper { max-width: 1180px; margin: 0 auto 24px; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { margin: 0 0 24px; padding: 16px 20px; border: 1px solid var(--bs-line); border-left: 4px solid var(--bs-cognac); background: var(--bs-cream); color: var(--bs-ink); list-style: none; }
.shop-shell { padding: 72px 32px 110px; background: var(--bs-white); }
.shop-shell .container { max-width: 1180px; }
.shop-shell > .container > .page-title { display: none; }
.shop-shell .woocommerce-breadcrumb { margin: 0 0 28px; color: #69737b; font-size: 12px; }
.shop-shell .woocommerce-breadcrumb a { color: var(--bs-denim); text-decoration: none; }
.woocommerce .woocommerce-result-count { float: left; margin: 5px 0 32px; color: #69737b; font-size: 13px; }
.woocommerce .woocommerce-ordering { float: right; margin: 0 0 32px; }
.woocommerce .woocommerce-ordering select { min-height: 44px; padding: 8px 38px 8px 13px; border: 1px solid var(--bs-line); background: var(--bs-white); color: var(--bs-ink); font: 13px var(--bs-sans); }
.woocommerce ul.products { clear: both; display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 40px 22px; margin: 0; padding: 0; list-style: none; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; padding: 0; position: relative; }
.woocommerce ul.products li.product a { color: var(--bs-ink); text-decoration: none; }
.woocommerce ul.products li.product a img { display: block; width: 100%; aspect-ratio: 4/5; margin: 0 0 18px; object-fit: cover; background: var(--bs-cream); transition: opacity .25s ease; }
.woocommerce ul.products li.product a:hover img { opacity: .88; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { margin: 0 0 7px; padding: 0; color: var(--bs-denim); font-family: var(--bs-serif); font-size: 21px; font-weight: 600; line-height: 1.18; }
.woocommerce ul.products li.product .price { display: block; margin: 0 0 15px; color: var(--bs-rust); font-family: var(--bs-sans); font-size: 13px; font-weight: 700; }
.woocommerce ul.products li.product .price del { color: #7b8389; opacity: .7; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { width: 100%; min-height: 44px; margin-top: 0; padding: 11px 12px; }
.woocommerce span.onsale { position: absolute; z-index: 2; top: 12px; left: 12px; min-width: auto; min-height: auto; margin: 0; padding: 6px 10px; border-radius: 0; background: var(--bs-rust); color: white; font-size: 9px; font-weight: 700; letter-spacing: .12em; line-height: 1.2; text-transform: uppercase; }
.woocommerce nav.woocommerce-pagination { margin-top: 56px; text-align: center; }
.woocommerce nav.woocommerce-pagination ul { display: inline-flex; gap: 8px; margin: 0; padding: 0; border: 0; list-style: none; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { display: grid; min-width: 44px; min-height: 44px; place-items: center; border: 1px solid var(--bs-line); color: var(--bs-denim); text-decoration: none; }
.woocommerce nav.woocommerce-pagination ul li span.current, .woocommerce nav.woocommerce-pagination ul li a:hover { border-color: var(--bs-rust); background: var(--bs-rust); color: white; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr); gap: 70px; }
.woocommerce div.product .woocommerce-product-gallery, .woocommerce div.product .summary { float: none !important; width: auto !important; }
.woocommerce div.product .woocommerce-product-gallery img { width: 100%; }
.woocommerce div.product .product_title { margin: 0 0 16px; color: var(--bs-denim); font-family: var(--bs-serif); font-size: clamp(42px,5vw,62px); font-weight: 600; line-height: 1; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--bs-rust); font-size: 20px; font-weight: 700; }
.woocommerce div.product .woocommerce-product-details__short-description { margin: 24px 0; color: #46515a; }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; gap: 12px; margin: 28px 0; }
.woocommerce .quantity .qty { width: 76px; min-height: 48px; border: 1px solid var(--bs-line); text-align: center; }
.woocommerce div.product .product_meta { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--bs-line); color: #69737b; font-size: 12px; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: 26px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; gap: 8px; margin: 0 0 26px; padding: 0; border-bottom: 1px solid var(--bs-line); list-style: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 13px 16px; color: var(--bs-denim); font-size: 11px; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--bs-rust); color: var(--bs-rust); }
.woocommerce-cart .page-content, .woocommerce-checkout .page-content { max-width: 1180px; }
.woocommerce table.shop_table { width: 100%; border-collapse: collapse; border: 1px solid var(--bs-line); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 14px; border-bottom: 1px solid var(--bs-line); text-align: left; }

.social-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.social-links a { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.2); color: white; font-size: 10px; font-weight: 700; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
.social-links a:hover { border-color: var(--bs-sand); color: var(--bs-sand); }
.social-links svg { width: 18px; height: 18px; }

.site-footer { background: #17232d; color: rgba(255,255,255,.75); }
.footer-top { max-width: 1180px; margin: auto; padding: 76px 32px 58px; display: grid; grid-template-columns: 1.4fr repeat(3,1fr); gap: 58px; }
.footer-brand img { width: 90px; filter: brightness(0) invert(1); opacity: .94; }
.footer-brand h2 { margin: 16px 0 9px; color: white; font-family: var(--bs-serif); font-size: 31px; line-height: 1; }
.footer-brand p { max-width: 340px; font-size: 13px; }
.footer-column h3 { margin: 0 0 18px; color: var(--bs-sand); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.footer-column a { display: block; margin: 9px 0; color: rgba(255,255,255,.72); font-size: 13px; text-decoration: none; }
.footer-column a:hover { color: white; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.1); }
.footer-bottom-inner { max-width: 1180px; margin: auto; padding: 22px 32px; display: flex; justify-content: space-between; gap: 20px; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }

@media (max-width: 980px) {
  .header-inner { position: relative; width: 100%; grid-template-columns: minmax(0,1fr); padding: 10px 72px 10px 20px; }
  .brand-lockup { min-width: 0; }
  .primary-nav { position: absolute; display: none; inset: 100% 0 auto; flex-direction: column; gap: 0; padding: 18px 28px 28px; background: var(--bs-white); border-bottom: 1px solid var(--bs-line); }
  .primary-nav.is-open { display: flex; }
  .primary-nav a { padding: 13px 0; }
  .primary-nav .mobile-nav-only { display: block; }
  .header-actions { display: none; }
  .menu-toggle { position: absolute; right: 14px; top: 50%; display: flex !important; align-items: center; justify-content: center; width: 48px; min-width: 48px; height: 48px; min-height: 48px; padding: 0 !important; border: 0 !important; background: transparent !important; color: var(--bs-denim) !important; transform: translateY(-50%) !important; }
  .collection-grid, .values { grid-template-columns: 1fr; }
  .collection-card { min-height: 360px; }
  .story-grid { grid-template-columns: 1fr; gap: 50px; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .woocommerce div.product { grid-template-columns: 1fr; gap: 42px; }
}

@media (max-width: 620px) {
  .announcement { min-height: 33px; padding: 8px 14px; font-size: 8px; letter-spacing: .1em; line-height: 1.35; white-space: normal; }
  .brand-name { font-size: 21px; }
  .brand-lockup img { width: 46px; height: 46px; }
  .hero { width: 100%; max-width: 100vw; min-height: 670px; align-items: flex-end; }
  .hero-image { object-position: 70% center; }
  .hero::after { background: linear-gradient(0deg, rgba(19,30,39,.98) 0%, rgba(31,46,58,.73) 56%, rgba(31,46,58,.22) 100%); }
  .hero-content { width: 100%; max-width: 100vw; padding: 220px 22px 58px; overflow-wrap: break-word; }
  .hero h1 { font-size: 58px; }
  .hero h1 em { display: block; }
  .hero-copy { max-width: 100%; font-size: 19px; overflow-wrap: anywhere; }
  .button-row { width: 100%; flex-direction: column; align-items: stretch; }
  .button-row .button { width: 100%; max-width: 100%; padding-left: 12px; padding-right: 12px; }
  .trust-inner { padding: 14px 18px; grid-template-columns: 1fr; gap: 10px; }
  .trust-item { border: 0; justify-content: flex-start; }
  .section { padding: 72px 20px; }
  .section-heading { margin-bottom: 38px; }
  .section-heading-row { align-items: flex-start; flex-direction: column; gap: 18px; }
  .collection-card-content { padding: 28px; }
  .story-image-wrap::before { inset: -10px 10px 10px -10px; }
  .page-hero { padding: 68px 20px 54px; }
  .page-content { padding: 56px 20px 76px; }
  .footer-top { padding: 58px 22px 38px; grid-template-columns: 1fr; gap: 32px; }
  .footer-bottom-inner { padding: 20px 22px; flex-direction: column; }
  .shop-shell { padding: 50px 18px 76px; }
  .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { float: none; width: 100%; margin: 0 0 16px; }
  .woocommerce .woocommerce-ordering select { width: 100%; }
  .woocommerce ul.products { gap: 30px 12px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 18px; }
  .woocommerce ul.products li.product .button { font-size: 9px; letter-spacing: .1em; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { overflow-x: auto; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
