/* ==========================================================================
   Panuwear design, 2026. Loaded after style.css; every rule hangs off body.pw2
   so switching the option store_child_design to "v1" brings the old look back.

   Light pages (warm off-white, white cards, near-black text) with a dark header
   and footer. Haldi (#FFA41B) for the main action, rani (#E0335F) for offers and
   the odd shout, forest and navy for whole-width bands on the home page.
   Sarpanch for display, Anek Devanagari for reading, Kalam for handwritten notes.
   ========================================================================== */

.pw2 {
  --pw-night: #141416;
  --pw-night-2: #1C1C20;
  --pw-rule-dark: #2E2E33;
  --pw-page: #F7F4EE;
  --pw-card-bg: #FFFFFF;
  --pw-ink: #17171A;
  --pw-text: #2E2C28;
  --pw-soft: #5F5A52;
  --pw-faint: #8A847A;
  --pw-rule: #E3DDD2;
  --pw-paper: #F3EEE4;
  --pw-haldi: #FFA41B;
  --pw-haldi-2: #FFB64A;
  --pw-rani: #E0335F;
  --pw-navy: #1C2340;
  --pw-forest: #2F4A36;
  --pw-display: "Sarpanch", "Anek Devanagari", system-ui, sans-serif;
  --pw-hand: "Kalam", "Anek Devanagari", cursive;
  --pw-pill: 999px;
  --pw-card: 18px;

  /* Kadence palette: light pages */
  --global-palette1: var(--pw-ink);
  --global-palette2: #3A3A40;
  --global-palette3: var(--pw-ink);
  --global-palette4: #26252A;
  --global-palette5: var(--pw-text);
  --global-palette6: var(--pw-soft);
  --global-palette7: var(--pw-rule);
  --global-palette8: #F1ECE3;
  --global-palette9: #FFFFFF;
  --global-palette9rgb: 255, 255, 255;
  --global-palette-highlight: var(--pw-ink);
  --global-palette-highlight-alt: var(--pw-rani);
  --global-palette-highlight-alt2: #FFFFFF;
  --global-palette-btn-bg: var(--pw-ink);
  --global-palette-btn-bg-hover: #3A3A40;
  --global-palette-btn: #FFFFFF;
  --global-palette-btn-hover: #FFFFFF;

  /* The child theme's own tokens */
  --neel: var(--pw-ink);
  --neel-2: #3A3A40;
  --heading: var(--pw-ink);
  --ink: var(--pw-text);
  --muted: var(--pw-soft);
  --subtle: var(--pw-faint);
  --studio: #EDEDED;
  --wash: #F1ECE3;
  --line: var(--pw-rule);
  --rani: var(--pw-rani);
  --radius: 12px;

  background: var(--pw-page);
  color: var(--pw-text);
}

/* ---------------------------------------------------------------- Type */
.pw2 h1, .pw2 h2, .pw2 .page-title, .pw2 .entry-title, .pw2 .product_title,
.pw2 .related.products > h2, .pw2 .upsells.products > h2 {
  font-family: var(--pw-display);
  font-weight: 900;
  font-variation-settings: normal;
  letter-spacing: 0;
  line-height: 1.04;
  color: var(--heading);
}
.pw2 h3, .pw2 h4 { color: var(--heading); }
.pw2 ::selection { background: var(--pw-haldi); color: var(--pw-ink); }
.pw2 .entry-content a:where(:not(.button):not(.pw-btn):not(.wp-block-button__link)) { color: var(--pw-ink); text-decoration: underline; text-underline-offset: 3px; }
.pw2 .entry-content a:where(:not(.button):not(.pw-btn):not(.wp-block-button__link)):hover { color: var(--pw-rani); }
.pw2 :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--pw-haldi); outline-offset: 3px; }

/* ---------------------------------------------------------------- Buttons */
.pw2 .button, .pw2 button.button, .pw2 input[type="submit"], .pw2 .wp-block-button__link,
.pw2 .wc-block-components-button:not(.is-link), .pw2 .single_add_to_cart_button {
  border-radius: var(--pw-pill);
  font-weight: 800;
}
.pw-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 52px; padding: 0 28px;
  border-radius: var(--pw-pill); border: 2px solid transparent;
  font-family: inherit; font-weight: 800; font-size: 18px; line-height: 1.1;
  text-decoration: none !important; cursor: pointer;
  transition: background-color .15s ease, color .15s ease, transform .15s ease;
}
.pw-btn:active { transform: translateY(1px); }
.pw2 .pw-btn--haldi { background: var(--pw-haldi); color: var(--pw-ink); }
.pw2 .pw-btn--haldi:hover { background: var(--pw-haldi-2); color: var(--pw-ink); }
.pw2 .pw-btn--rani { background: var(--pw-rani); color: #fff; }
.pw2 .pw-btn--rani:hover { background: #C42050; color: #fff; }
.pw2 .pw-btn--ink { background: var(--pw-ink); color: #fff; }
.pw2 .pw-btn--ink:hover { background: #3A3A40; color: #fff; }
.pw2 .pw-btn--paper { background: var(--pw-paper); color: var(--pw-ink); }
.pw2 .pw-btn--paper:hover { background: #fff; color: var(--pw-ink); }
.pw2 .pw-btn--ghost { border-color: var(--pw-ink); color: var(--pw-ink); background: transparent; }
.pw2 .pw-btn--ghost:hover { background: var(--pw-ink); color: #fff; }
.pw2 .pw-link { font-weight: 800; font-size: 17px; color: var(--pw-ink) !important; text-decoration: underline !important; text-decoration-thickness: 2px !important; text-decoration-color: var(--pw-haldi) !important; text-underline-offset: 6px; }
.pw2 .pw-link:hover { color: var(--pw-rani) !important; }
.pw2 .pw-link--light { color: var(--pw-paper) !important; }
.pw-hand { font-family: var(--pw-hand); font-weight: 700; }

/* ==========================================================================
   Home page
   ========================================================================== */
.pw-home { width: 100%; overflow-x: clip; }
.pw-wrap { max-width: 1280px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
.pw-h2 { margin: 0; font-size: clamp(34px, 5vw, 60px); }
.pw-sub { margin: 10px 0 32px; font-size: 19px; color: var(--pw-soft); }
.pw-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 28px; }

/* Hero */
.pw-hero { background: var(--pw-page); }
.pw-hero__inner { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .9fr); gap: 48px; align-items: center; padding-top: 56px; padding-bottom: 80px; }
.pw-hero__kicker { display: inline-block; margin: 0 0 16px; font-size: 26px; color: #C2410C; transform: rotate(-2deg); }
.pw-hero__title { margin: 0; font-size: clamp(50px, 5.8vw, 86px); line-height: .98; color: var(--pw-ink); }
.pw-hero__title span { color: var(--pw-rani); }
.pw-hero__lede { margin: 24px 0 0; font-size: 20px; line-height: 1.55; color: var(--pw-text); max-width: 36ch; }
.pw-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
.pw-hero__facts { list-style: none; margin: 32px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.pw-hero__facts li { padding: 7px 14px; border: 1px solid var(--pw-rule); background: #fff; border-radius: var(--pw-pill); font-size: 15px; color: var(--pw-soft); }

.pw-hero__art { position: relative; height: 540px; }
.pw-hero__card { position: absolute; display: block; overflow: hidden; border-radius: 20px; background: #EDEDED; box-shadow: 0 24px 50px rgba(40, 30, 10, .18); border: 1px solid var(--pw-rule); transition: transform .3s ease; }
.pw-hero__card img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pw-hero__card--1 { left: 2%; top: 40px; width: 52%; aspect-ratio: 4 / 5; transform: rotate(-6deg); z-index: 2; }
.pw-hero__card--2 { right: 2%; top: 0; width: 46%; aspect-ratio: 4 / 5; transform: rotate(5deg); z-index: 1; }
.pw-hero__card--3 { right: 14%; bottom: 0; width: 42%; aspect-ratio: 4 / 5; transform: rotate(-2deg); z-index: 3; }
.pw-hero__card:hover { transform: rotate(0) scale(1.02); z-index: 4; }
.pw-hero__note { position: absolute; left: 0; bottom: 8px; margin: 0; font-size: 22px; color: var(--pw-rani); transform: rotate(-4deg); z-index: 5; }

/* Moods (categories) on white */
.pw-moods { background: #fff; color: var(--pw-ink); border-top: 1px solid var(--pw-rule); border-bottom: 1px solid var(--pw-rule); }
.pw-moods .pw-wrap { padding-top: 72px; padding-bottom: 80px; }
.pw-moods__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.pw-mood { display: flex; flex-direction: column; height: 100%; border-radius: 22px; overflow: hidden; background: var(--card); color: #F3EEE4 !important; text-decoration: none !important; transition: transform .2s ease; }
.pw-mood:hover { transform: translateY(-4px); }
.pw-mood__img { display: block; aspect-ratio: 1 / 1; overflow: hidden; }
.pw-mood__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.pw-mood:hover .pw-mood__img img { transform: scale(1.04); }
.pw-mood__name { display: block; padding: 18px 20px 0; font-family: var(--pw-display); font-weight: 900; font-size: 27px; line-height: 1.05; color: #F3EEE4; }
.pw-mood__line { display: block; padding: 6px 20px 22px; font-size: 15.5px; line-height: 1.4; color: #D9D3C7; }

/* Favourites grid */
.pw-new .pw-wrap { padding-top: 80px; padding-bottom: 88px; }

/* Price band (haldi) */
.pw-bundle { background: var(--pw-haldi); color: var(--pw-ink); }
.pw-bundle__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 24px 48px; align-items: center; padding-top: 64px; padding-bottom: 64px; }
.pw-bundle .pw-h2 { color: var(--pw-ink); line-height: 1; }
.pw-bundle__copy p { margin: 14px 0 0; font-size: 19px; line-height: 1.5; color: #2A2310; }
.pw-bundle__tiers { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; }
.pw-bundle__tiers li { background: var(--pw-ink); color: #F3EEE4; border-radius: var(--pw-card); padding: 22px; display: flex; flex-direction: column; gap: 2px; transition: box-shadow .15s ease; }
.pw2 .pw-bundle__tiers li:hover { box-shadow: inset 0 0 0 3px var(--pw-rani); }
.pw2 .pw-bundle__link { display: flex; flex-direction: column; gap: 2px; color: inherit !important; text-decoration: none !important; }
.pw-bundle__qty { font-size: 15.5px; color: #C9C3B8; }
.pw-bundle__price { font-family: var(--pw-display); font-weight: 900; font-size: clamp(30px, 3vw, 40px); line-height: 1.1; color: #F3EEE4; }
.pw-bundle__code { grid-column: 1 / -1; margin: 0; font-size: 17px; color: #2A2310; }
.pw-bundle__code strong { font-weight: 800; background: var(--pw-ink); color: var(--pw-haldi); padding: 2px 10px; border-radius: 8px; letter-spacing: .04em; }

/* Why */
.pw-why .pw-wrap { padding-top: 80px; padding-bottom: 80px; }
.pw-why .pw-h2 { margin-bottom: 32px; font-size: clamp(32px, 4.5vw, 52px); }
.pw-why__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.pw-why__grid li { background: #fff; border: 1px solid var(--pw-rule); border-radius: var(--pw-card); padding: 24px; }
.pw-why__grid h3 { margin: 0; font-size: 21px; font-weight: 800; color: var(--pw-ink); }
.pw-why__grid p { margin: 8px 0 0; font-size: 16px; line-height: 1.5; color: var(--pw-soft); }

/* Story (forest band) */
.pw-story { background: var(--pw-forest); }
.pw-story__inner { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 48px; align-items: center; padding-top: 80px; padding-bottom: 80px; }
.pw-story__mark { width: min(380px, 90%); justify-self: center; border-radius: 22px; overflow: hidden; transform: rotate(-4deg); box-shadow: 0 30px 60px rgba(0, 0, 0, .3); }
.pw-story__mark img { display: block; width: 100%; height: auto; }
.pw2 .pw-story .pw-h2 { color: #F3EEE4; font-size: clamp(34px, 5vw, 56px); line-height: 1.05; }
.pw-story p { margin: 18px 0 26px; font-size: 19px; line-height: 1.6; color: #E4DDCC; max-width: 46ch; }

/* Design your own (navy box) */
.pw-diy .pw-wrap { padding-top: 80px; padding-bottom: 80px; }
.pw-diy__box { border-radius: 28px; background: var(--pw-navy); padding: 48px 40px; display: flex; flex-wrap: wrap; gap: 28px; align-items: center; justify-content: space-between; }
.pw-diy__box > div { flex: 1 1 420px; }
.pw2 .pw-diy .pw-h2 { font-size: clamp(32px, 4.5vw, 52px); color: #F3EEE4; }
.pw-diy p { margin: 12px 0 0; font-size: 19px; color: #CFD3E6; max-width: 44ch; }

/* WhatsApp help */
.pw-help { border-top: 1px solid var(--pw-rule); background: #fff; }
.pw-help__inner { display: flex; flex-wrap: wrap; gap: 20px 32px; align-items: center; justify-content: space-between; padding-top: 44px; padding-bottom: 44px; }
.pw-help__title { margin: 0; font-size: clamp(26px, 3vw, 34px); }
.pw-help p { margin: 6px 0 0; font-size: 17px; color: var(--pw-soft); }
.pw2 .pw-help .pw-btn--paper { background: var(--pw-ink); color: #fff; }
.pw2 .pw-help .pw-btn--paper:hover { background: #3A3A40; }

@media (max-width: 960px) {
  .pw-moods__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pw-hero__inner { grid-template-columns: 1fr; gap: 28px; padding-top: 32px; padding-bottom: 56px; }
  .pw-hero__art { height: auto; aspect-ratio: 1 / .95; max-width: 520px; width: 100%; margin: 0 auto; }
  .pw-bundle__inner { grid-template-columns: 1fr; }
  .pw-story__inner { grid-template-columns: 1fr; gap: 24px; }
  .pw-story__mark { width: min(300px, 80%); justify-self: start; }
}
@media (max-width: 600px) {
  .pw-wrap { padding-left: 16px; padding-right: 16px; }
  .pw-hero__title { font-size: clamp(40px, 11.5vw, 58px); }
  .pw-hero__lede { font-size: 18px; }
  .pw-hero__actions .pw-btn { flex: 1 1 100%; }
  .pw-hero__note { font-size: 18px; }
  .pw-moods .pw-wrap, .pw-new .pw-wrap, .pw-why .pw-wrap, .pw-diy .pw-wrap { padding-top: 56px; padding-bottom: 56px; }
  .pw-moods__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .pw-mood__name { font-size: 21px; padding: 14px 14px 0; }
  .pw-mood__line { font-size: 14px; padding: 4px 14px 16px; }
  .pw-bundle__tiers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pw-bundle__tiers li { padding: 16px 18px; }
  .pw-diy__box { padding: 32px 22px; }
  .pw-diy__box .pw-btn, .pw-help .pw-btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .pw-hero__card, .pw-mood, .pw-mood__img img { transition: none; }
}

/* ==========================================================================
   Whole site
   ========================================================================== */
.pw2 #wrapper, .pw2 .site, .pw2 #inner-wrap { background: var(--pw-page); }
.pw2 .content-bg, .pw2 .entry.single-entry, .pw2 .entry.loop-entry { background: transparent; box-shadow: none; }

/* ---------------------------------------------------------------- Header (dark) */
.pw2 #masthead,
.pw2 #masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start):not(.site-header-row-container):not(.site-main-header-wrap),
.pw2 #masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) > .site-header-row-container-inner,
.pw2 .site-main-header-wrap .site-header-row-container-inner,
.pw2 #mobile-header .site-main-header-wrap .site-header-row-container-inner { background: rgba(20, 20, 22, .97); }
.pw2 .site-main-header-wrap .site-header-row-container-inner { border-bottom: 1px solid var(--pw-rule-dark); }
.pw2 .site-top-header-wrap .site-header-row-container-inner { background: var(--pw-rani); color: #fff; }
.pw2 .site-top-header-wrap .header-html, .pw2 .site-top-header-wrap .mobile-html { color: #fff; font-weight: 700; }
.pw2 .main-navigation .primary-menu-container > ul > li.menu-item > a { color: #E4DED3; font-weight: 600; }
.pw2 .main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.pw2 .main-navigation .primary-menu-container > ul > li.current-menu-item > a { color: var(--pw-haldi); }
.pw2 .main-navigation .primary-menu-container > ul > li.menu-item > a::after { background: var(--pw-haldi); }
.pw2 #secondary-navigation .secondary-menu-container ul li.nav-icon > a,
.pw2 .search-toggle-open, .pw2 .header-cart-button, .pw2 .menu-toggle-open { color: #F3EEE4; }
.pw2 #secondary-navigation .secondary-menu-container ul li.nav-icon > a:hover,
.pw2 .search-toggle-open:hover, .pw2 .header-cart-button:hover { color: var(--pw-haldi); }
.pw2 .header-cart-wrap .header-cart-button .header-cart-total,
.pw2 .header-mobile-cart-wrap .header-cart-button .header-cart-total { background: var(--pw-haldi); color: var(--pw-ink); }
.pw2 .header-navigation .header-menu-container ul ul.sub-menu { background: var(--pw-night-2); }
.pw2 .header-navigation .header-menu-container ul ul.sub-menu a { color: #E4DED3; }
/* Phone menu and search open as light panels */
.pw2 #mobile-drawer .drawer-inner { background: #fff; }
.pw2 #mobile-drawer .mobile-navigation ul li > a, .pw2 #mobile-drawer .drawer-header .menu-toggle-close { color: var(--pw-ink); }
.pw2 #mobile-drawer .mobile-navigation ul li { border-color: var(--pw-rule); }
.pw2 #mobile-drawer .mobile-navigation ul.menu > li:nth-child(n+7) > a { color: var(--pw-soft); }
.pw2 #search-drawer .drawer-inner { background: rgba(20, 20, 22, .97); }
.pw2 #search-drawer .search-field { border-bottom-color: var(--pw-haldi); color: #F3EEE4; background: transparent; }

/* ---------------------------------------------------------------- Footer (dark) */
.pw2 .site-middle-footer-wrap .site-footer-row-container-inner,
.pw2 .site-bottom-footer-wrap .site-footer-row-container-inner { background: var(--pw-night); color: #B8B3AA; }
.pw2 .site-bottom-footer-wrap .site-footer-row-container-inner { border-top: 1px solid var(--pw-rule-dark); }
.pw2 .site-footer .footer-brand { font-family: var(--pw-display); font-weight: 900; font-variation-settings: normal; color: #F3EEE4; font-size: 32px; letter-spacing: 0; }
.pw2 .site-footer .footer-about { color: #B8B3AA; }
.pw2 .site-footer .footer-title { font-family: inherit; font-weight: 700; color: #8D887F; font-size: 14px; line-height: 1.3; }
.pw2 .site-footer .site-middle-footer-wrap a:where(:not(.button)),
.pw2 .site-footer .footer-links a { color: #E4DED3; text-decoration: none; }
.pw2 .site-footer .site-middle-footer-wrap a:where(:not(.button)):hover,
.pw2 .site-footer .footer-links a:hover,
.pw2 #colophon .footer-navigation .footer-menu-container > ul li a:hover { color: var(--pw-haldi); }
.pw2 #colophon .footer-html, .pw2 #colophon .footer-navigation .footer-menu-container > ul > li > a,
.pw2 .site-footer .site-bottom-footer-wrap a:where(:not(.button)) { color: #8D887F; }

/* ---------------------------------------------------------------- Page titles */
.pw2 .entry-header .entry-title, .pw2 .woocommerce-products-header .page-title { font-size: clamp(38px, 5.5vw, 68px); }
.pw2 .kadence-breadcrumbs, .pw2 .woocommerce-breadcrumb { color: var(--pw-faint); }
.pw2 .woocommerce-ordering select { background-color: #fff; color: var(--pw-ink); border-color: var(--pw-rule); }

/* Shop: Ready designs / Design your own, and category chips */
.pw2 .sf-choice__card { background: #fff; border-color: var(--pw-rule); border-radius: var(--pw-card); }
.pw2 .sf-choice__card[aria-current] { border-color: var(--pw-ink); box-shadow: inset 0 0 0 1px var(--pw-ink); }
.pw2 .sf-choice__img { border-radius: 10px; overflow: hidden; }
.pw2 .chip-row a, .pw2 .archive-description p:last-child a { background: #fff; border-color: var(--pw-rule); color: var(--pw-ink); font-weight: 700; min-height: 40px; display: inline-flex; align-items: center; }
.pw2 .chip-row a:hover, .pw2 .archive-description p:last-child a:hover { border-color: var(--pw-ink); color: var(--pw-ink); }
.pw2 .chip-row a[aria-current="page"],
.pw2.term-oversized-t-shirts .archive-description a[href*="/oversized-t-shirts/"],
.pw2.term-t-shirts .archive-description a[href$="/product-category/t-shirts/"],
.pw2.term-sweatshirts .archive-description a[href*="/sweatshirts/"],
.pw2.term-hoodies .archive-description a[href*="/hoodies/"] { background: var(--pw-ink); border-color: var(--pw-ink); color: #fff; }

/* ---------------------------------------------------------------- Product cards */
.pw2 .woocommerce-loop-product__title, .pw2 .wc-block-grid__product-title { font-family: inherit !important; font-weight: 700; line-height: 1.3; }
.pw2 .woocommerce ul.products li.product .woocommerce-loop-image-link,
.pw2 ul.wc-block-grid__products .woocommerce-loop-image-link { border-radius: 16px; background: #EDEDED; }
.pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 17px; }
.pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title a { color: var(--pw-ink); }
.pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title a:hover { color: var(--pw-rani); }
.pw2 .woocommerce ul.products li.product .price { color: var(--pw-ink); font-size: 17px; font-weight: 800; }
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn {
  background: var(--pw-ink) !important; border: 1.5px solid var(--pw-ink) !important; color: #fff !important; border-radius: var(--pw-pill) !important; font-weight: 800;
}
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn:hover { background: var(--pw-haldi) !important; border-color: var(--pw-haldi) !important; color: var(--pw-ink) !important; }
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn.sf-card-btn--design { background: #fff !important; border-color: var(--pw-rani) !important; color: var(--pw-rani) !important; }
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn.sf-card-btn--design:hover { background: var(--pw-rani) !important; color: #fff !important; }
.pw2 .woocommerce span.onsale { background: var(--pw-rani); color: #fff; border-radius: var(--pw-pill); }
.pw2 .woocommerce ul.products li.product .yith-wcwl-add-to-wishlist-button { background: rgba(255, 255, 255, .95); color: var(--pw-ink); }

/* Block product grids (empty cart and similar): an even grid that never overflows */
.pw2 .wc-block-grid .wc-block-grid__products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 28px !important; margin: 0 !important; padding: 0 !important; }
.pw2 .wc-block-grid__product { width: auto !important; max-width: none !important; flex: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; text-align: left; position: relative; }
.pw2 .wc-block-grid__product .woocommerce-loop-image-link { display: block; overflow: hidden; }
.pw2 .wc-block-grid__product img { width: 100%; height: auto; display: block; }
.pw2 .wc-block-grid__product .product-details { background: transparent !important; padding: 12px 0 0 !important; }
.pw2 .wc-block-grid__product-title { font-size: 16px; color: var(--pw-ink); }
.pw2 .wc-block-grid__product-price { font-weight: 800; margin: 2px 0 10px; }
.pw2 .wc-block-grid__product-add-to-cart .wp-block-button__link { font-size: 14px; padding: 9px 16px; }
@media (max-width: 767px) { .pw2 .wc-block-grid .wc-block-grid__products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 24px 12px !important; } }

/* ---------------------------------------------------------------- Single product */
.pw2.single-product .product_title { font-size: clamp(30px, 3.6vw, 46px); }
.pw2.single-product div.product .woocommerce-product-gallery { background: #EDEDED; border-radius: 20px; overflow: hidden; }
.pw2.single-product div.product .summary .price { color: var(--pw-ink); font-size: 26px; font-weight: 800; }
.pw2.single-product .cfvsw-label-option { background: #fff; color: var(--pw-ink); border-radius: 12px !important; }
.pw2.single-product form.cart .single_add_to_cart_button { min-height: 56px; font-size: 18px; background: var(--pw-haldi); color: var(--pw-ink); }
.pw2.single-product form.cart .single_add_to_cart_button:hover { background: var(--pw-haldi-2); color: var(--pw-ink); }
.pw2.single-product form.cart .quantity input.qty { border-radius: 12px; height: 56px; }
.pw2.single-product .single-product-extras { background: #fff; border: 1px solid var(--pw-rule); border-radius: var(--pw-card); }
.pw2 .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { box-shadow: inset 0 -2px 0 var(--pw-ink); }

/* ---------------------------------------------------------------- Fields */
.pw2 input[type="text"], .pw2 input[type="email"], .pw2 input[type="tel"], .pw2 input[type="password"],
.pw2 input[type="number"], .pw2 input[type="search"], .pw2 textarea, .pw2 select {
  background-color: #fff; color: var(--pw-ink); border-color: #CFC8BA; border-radius: 12px;
}
.pw2 ::placeholder { color: var(--pw-faint); opacity: 1; }

/* ---------------------------------------------------------------- Cart, checkout, account */
.pw2.woocommerce-cart .entry-content-wrap,
.pw2.woocommerce-checkout .entry-content-wrap,
.pw2.woocommerce-account .entry-content-wrap {
  background: #fff; border: 1px solid var(--pw-rule); border-radius: 28px; padding: clamp(20px, 4vw, 48px) !important; margin: 32px 0 72px;
}
.pw2.woocommerce-cart .entry-content-wrap .alignwide,
.pw2.woocommerce-checkout .entry-content-wrap .alignwide,
.pw2.woocommerce-account .entry-content-wrap .alignwide { margin-left: 0 !important; margin-right: 0 !important; width: auto !important; max-width: 100% !important; }
.pw2.woocommerce-checkout .entry-header .entry-title, .pw2.woocommerce-cart .entry-header .entry-title, .pw2.woocommerce-account .entry-header .entry-title { font-size: clamp(32px, 4vw, 48px); }
.pw2.woocommerce-account .woocommerce form.login, .pw2.woocommerce-account .woocommerce form.register {
  background: var(--pw-page); border: 1px solid var(--pw-rule); border-radius: 20px; padding: 24px;
}
.pw2.woocommerce-cart .wc-block-cart .wc-block-components-sidebar, .pw2.woocommerce-checkout .wc-block-components-sidebar { border-radius: 18px; }
.pw2 .wc-block-components-checkout-place-order-button, .pw2 .wc-block-cart__submit-button { background: var(--pw-haldi) !important; color: var(--pw-ink) !important; }

/* Store Features notes: always dark text on a light tint */
.pw2 .sf-offer { background: #FFF1F5; border-color: var(--pw-rani); color: var(--pw-text); border-radius: 12px; }
.pw2 .sf-offer strong, .pw2 .sf-offer__main { color: var(--pw-ink); }
.pw2 .sf-offer code { background: #fff; border-color: #F3B5C6; color: var(--pw-rani); }
.pw2 .sf-offer a { color: var(--pw-ink); }
.pw2 .sf-custom-notice { background: #FFF7E8; border-left-color: var(--pw-haldi); color: var(--pw-text); }
.pw2 .sf-custom-notice strong { color: var(--pw-ink); }
.pw2 .sf-sticky { background: rgba(255, 255, 255, .98); border-top-color: var(--pw-rule); }

/* Dialogs */
.pw2 .sf-qa, .pw2 .sf-dialog { background: #fff; color: var(--pw-text); border-radius: 22px; }
.pw2 .sf-qa::backdrop, .pw2 .sf-dialog::backdrop { background: rgba(20, 20, 22, .6); }
.pw2 .sf-qa .sf-qa__size input:checked + span { color: #fff; }

/* Mini cart drawer */
.pw2 #cart-drawer .drawer-inner { background: #fff; }
.pw2 #cart-drawer .woocommerce-mini-cart__buttons .button:not(.checkout) { background: #fff; color: var(--pw-ink); box-shadow: inset 0 0 0 1.5px var(--pw-ink); }
.pw2 #cart-drawer .woocommerce-mini-cart__buttons .button.checkout { background: var(--pw-haldi); color: var(--pw-ink); }

/* Notices */
.pw2 .woocommerce-message, .pw2 .woocommerce-info { background: #fff; color: var(--pw-text); border-top-color: var(--pw-haldi); }

/* FAQ */
.pw2 .wp-block-details summary::after { border-color: var(--pw-ink); }

/* Account icon in the phone header (added next to the cart) */
.pw-m-account { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; color: #F3EEE4 !important; }
.pw-m-account:hover { color: var(--pw-haldi) !important; }
.pw-m-account svg { width: 22px; height: 22px; }
.pw2 .wc-block-grid__product .product-details { border: 0 !important; box-shadow: none !important; border-radius: 0 !important; }
.pw2 .wc-block-grid__product a { text-decoration: none !important; }

/* Header and footer are dark: give them a dark palette of their own, so every Kadence
   item inside (cart, search, account, menu toggle, any future item) is light on dark. */
.pw2 #masthead, .pw2 .site-header, .pw2 #mobile-header, .pw2 .site-footer {
  --global-palette1: #FFA41B;
  --global-palette2: #FFB64A;
  --global-palette3: #F3EEE4;
  --global-palette4: #ECE6DB;
  --global-palette5: #E4DED3;
  --global-palette6: #B8B3AA;
  --global-palette7: #2E2E33;
  --global-palette8: #1C1C20;
  --global-palette9: #141416;
  --global-palette9rgb: 20, 20, 22;
  --global-palette-highlight: #FFA41B;
  --global-palette-highlight-alt: #FFB64A;
}
.pw2 #masthead .header-cart-wrap .header-cart-button,
.pw2 #mobile-header .header-cart-wrap .header-cart-button,
.pw2 #masthead .header-mobile-cart-wrap .header-cart-button,
.pw2 #mobile-header .header-mobile-cart-wrap .header-cart-button,
.pw2 #masthead .search-toggle-open-container .search-toggle-open,
.pw2 #mobile-header .search-toggle-open-container .search-toggle-open,
.pw2 #mobile-header .mobile-toggle-open-container .menu-toggle-open { color: #F3EEE4 !important; }
.pw2 #masthead .header-cart-wrap .header-cart-button:hover,
.pw2 #mobile-header .header-mobile-cart-wrap .header-cart-button:hover { color: #FFA41B !important; }

/* Category strip at the top of the home page */
.pw-cats { background: #fff; border-bottom: 1px solid var(--pw-rule); }
.pw-cats__row { list-style: none; margin: 0 auto; padding: 18px 16px 14px; display: flex; gap: 22px; justify-content: center; max-width: 1240px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.pw-cats__row::-webkit-scrollbar { display: none; }
.pw-cats__row > li { flex: 0 0 auto; }
.pw-cat { display: flex; flex-direction: column; align-items: center; gap: 8px; width: 96px; color: var(--pw-ink) !important; text-decoration: none !important; }
.pw-cat__img { display: block; width: 84px; height: 84px; border-radius: 50%; overflow: hidden; background: #EFEAE1; box-shadow: 0 0 0 2px #fff, 0 0 0 3px var(--pw-rule); transition: box-shadow .2s ease; }
.pw-cat:hover .pw-cat__img, .pw-cat:focus-visible .pw-cat__img { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--pw-haldi); }
.pw-cat__img img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; transform: scale(1.35); }
.pw-cat__name { font-size: 13.5px; font-weight: 700; line-height: 1.2; text-align: center; }
@media (max-width: 960px) { .pw-cats__row { justify-content: flex-start; gap: 14px; padding: 14px 16px 12px; } .pw-cat { width: 74px; } .pw-cat__img { width: 66px; height: 66px; } .pw-cat__name { font-size: 12.5px; } }

/* Fit badge on product cards */
.woocommerce ul.products li.product { position: relative; }
.pw-fit { position: absolute; top: 10px; left: 10px; z-index: 3; padding: 4px 9px; border-radius: 6px; background: rgba(255,255,255,.92); color: var(--pw-ink); font-size: 11px; font-weight: 800; letter-spacing: .02em; line-height: 1.3; pointer-events: none; }

/* A colour row with a single colour says nothing: hide it */
.cfvsw-shop-container:not(:has(.cfvsw-swatches-option + .cfvsw-swatches-option)) { display: none !important; }


/* ==========================================================================
   Panuwear premium refinement: restrained colour, calmer controls, responsive shop
   Loaded after the original design rules so every page shares the same system.
   ========================================================================== */
.pw2 {
  --pw-night: #20221F;
  --pw-night-2: #292C27;
  --pw-rule-dark: #3B3E37;
  --pw-page: #F7F5F0;
  --pw-card-bg: #FFFFFF;
  --pw-ink: #22251F;
  --pw-text: #3D4039;
  --pw-soft: #686C63;
  --pw-faint: #858A80;
  --pw-rule: #E3E1D8;
  --pw-paper: #EEECE4;
  --pw-haldi: #D1A15A;
  --pw-haldi-2: #B9853E;
  --pw-rani: #A96546;
  --pw-accent: #A96546;
  --pw-accent-soft: #F3E9E1;
  --pw-navy: #242924;
  --pw-forest: #293D32;
  --pw-display: "Anek Devanagari", system-ui, sans-serif;
  --pw-hand: "Anek Devanagari", system-ui, sans-serif;
  --pw-card: 14px;
  --pw-pill: 10px;
  --studio: #F0EEE8;
  --wash: #F1EEE7;
  --line: var(--pw-rule);
  --radius: 10px;
  --neel: var(--pw-ink);
  --neel-2: #383D35;
  --heading: var(--pw-ink);
  --ink: var(--pw-text);
  --muted: var(--pw-soft);
  --subtle: var(--pw-faint);
  --rani: var(--pw-accent);
  --global-palette1: var(--pw-ink);
  --global-palette2: #3A3D36;
  --global-palette3: var(--pw-ink);
  --global-palette4: #30332D;
  --global-palette5: var(--pw-text);
  --global-palette6: var(--pw-soft);
  --global-palette7: var(--pw-rule);
  --global-palette8: var(--pw-paper);
  --global-palette9: #FFFFFF;
  --global-palette9rgb: 255, 255, 255;
  --global-palette-highlight: var(--pw-ink);
  --global-palette-highlight-alt: var(--pw-accent);
  --global-palette-btn-bg: var(--pw-ink);
  --global-palette-btn-bg-hover: #383D35;
  --global-palette-btn: #FFFFFF;
  --global-palette-btn-hover: #FFFFFF;
}

/* Typography: less compressed and less shouty. */
.pw2 h1,
.pw2 h2,
.pw2 h3,
.pw2 .page-title,
.pw2 .entry-title,
.pw2 .product_title,
.pw2 .related.products > h2,
.pw2 .upsells.products > h2 {
  font-family: var(--pw-display);
  letter-spacing: -0.025em;
  font-weight: 750;
}
.pw2 h1, .pw2 .product_title { line-height: 1.08; }
.pw2 h2, .pw2 .pw-h2 { line-height: 1.12; }
.pw2 p { text-wrap: pretty; }
.pw2 .entry-content a:where(:not(.button):not(.pw-btn):not(.wp-block-button__link)):hover { color: var(--pw-accent); }

/* One consistent button language: high contrast, clear states, comfortable touch targets. */
.pw2 .button,
.pw2 button.button,
.pw2 input[type="submit"],
.pw2 .wp-block-button__link,
.pw2 .wc-block-components-button:not(.is-link),
.pw2 .single_add_to_cart_button,
.pw2 .pw-btn {
  border-radius: 10px !important;
  font-weight: 700;
  min-height: 46px;
  box-shadow: none;
}
.pw2 .button:not(:disabled):hover,
.pw2 input[type="submit"]:not(:disabled):hover,
.pw2 .wc-block-components-button:not(:disabled):not(.is-link):hover {
  transform: translateY(-1px);
}
.pw2 .pw-btn { font-size: 16px; padding: 0 24px; }
.pw2 .pw-btn--haldi,
.pw2 .pw-btn--rani,
.pw2 .pw-diy .pw-btn--rani {
  background: var(--pw-ink) !important;
  border-color: var(--pw-ink) !important;
  color: #FFFFFF !important;
}
.pw2 .pw-btn--haldi:hover,
.pw2 .pw-btn--rani:hover,
.pw2 .pw-diy .pw-btn--rani:hover {
  background: #3A3E36 !important;
  border-color: #3A3E36 !important;
  color: #FFFFFF !important;
}
.pw2 .pw-btn--ghost { border-width: 1px; }
.pw2 :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--pw-haldi);
  outline-offset: 3px;
}

/* Header/footer stay dark; the top message bar uses the same muted forest colour. */
.pw2 .site-top-header-wrap .site-header-row-container-inner { background: var(--pw-forest); }
.pw2 .site-top-header-wrap .header-html,
.pw2 .site-top-header-wrap .mobile-html { color: #F7F5F0; }
.pw2 #masthead .header-cart-wrap .header-cart-button:hover,
.pw2 #mobile-header .header-mobile-cart-wrap .header-cart-button:hover,
.pw2 #mobile-header .header-cart-wrap .header-cart-button:hover { color: var(--pw-haldi) !important; }
.pw2 #masthead, .pw2 #mobile-header {
  --global-palette1: var(--pw-haldi);
  --global-palette2: #E3BC7E;
  --global-palette-highlight: var(--pw-haldi);
  --global-palette-highlight-alt: #E3BC7E;
}

/* Hero: editorial spacing and an intentional product collage instead of playful rotation. */
.pw2 .pw-wrap { max-width: 1320px; padding-left: 28px; padding-right: 28px; }
.pw2 .pw-hero__inner {
  gap: clamp(30px, 4.4vw, 64px);
  padding-top: clamp(42px, 5vw, 68px);
  padding-bottom: clamp(48px, 6vw, 80px);
}
.pw2 .pw-hero__kicker {
  margin-bottom: 16px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .13em;
  color: var(--pw-accent);
  transform: none;
}
.pw2 .pw-hero__title {
  font-size: clamp(44px, 5.4vw, 76px);
  letter-spacing: -0.035em;
  line-height: 1.04;
  font-weight: 800;
}
.pw2 .pw-hero__title span { color: var(--pw-accent); }
.pw2 .pw-hero__lede {
  max-width: 40ch;
  margin-top: 20px;
  color: var(--pw-soft);
  font-size: clamp(17px, 1.35vw, 19px);
  line-height: 1.65;
}
.pw2 .pw-hero__actions { gap: 12px; margin-top: 26px; }
.pw2 .pw-hero__facts { gap: 8px; margin-top: 24px; }
.pw2 .pw-hero__facts li {
  padding: 7px 11px;
  border-color: var(--pw-rule);
  border-radius: 8px;
  color: var(--pw-soft);
  font-size: 13px;
}
.pw2 .pw-hero__art { height: 500px; }
.pw2 .pw-hero__card {
  border: 1px solid rgba(34, 37, 31, .08);
  border-radius: 16px;
  background: #F0EEE8;
  box-shadow: 0 18px 38px rgba(34, 37, 31, .12);
  transform: none;
}
.pw2 .pw-hero__card--1 { left: 4%; top: 28px; width: 53%; }
.pw2 .pw-hero__card--2 { right: 2%; top: 0; width: 45%; }
.pw2 .pw-hero__card--3 { right: 12%; bottom: 0; width: 36%; }
.pw2 .pw-hero__card img { box-sizing: border-box; object-fit: contain; padding: 8px; background: #F0EEE8; }
.pw2 .pw-hero__card:hover { transform: translateY(-3px); }
.pw2 .pw-hero__note { display: none; }

/* Category shortcuts: tidy rounded-rectangle images and consistent labels. */
.pw2 .pw-cats { background: #FFFFFF; border-color: var(--pw-rule); }
.pw2 .pw-cats__row { gap: 18px; padding-top: 16px; padding-bottom: 16px; }
.pw2 .pw-cat { width: 86px; gap: 8px; }
.pw2 .pw-cat__img {
  width: 76px; height: 76px; border-radius: 14px;
  box-shadow: none; background: #F0EEE8;
}
.pw2 .pw-cat:hover .pw-cat__img,
.pw2 .pw-cat:focus-visible .pw-cat__img { box-shadow: 0 0 0 2px var(--pw-haldi); }
.pw2 .pw-cat__img img { box-sizing: border-box; object-fit: contain; object-position: center; background: #F0EEE8; transform: none; }
.pw2 .pw-cat__name { color: var(--pw-ink); font-size: 12.5px; font-weight: 700; }

/* Clean section surfaces: accents are details, never full-screen competing colours. */
.pw2 .pw-new .pw-wrap,
.pw2 .pw-why .pw-wrap,
.pw2 .pw-diy .pw-wrap { padding-top: clamp(48px, 6vw, 76px); padding-bottom: clamp(48px, 6vw, 76px); }
.pw2 .pw-h2 { font-size: clamp(30px, 4vw, 52px); }
.pw2 .pw-head { align-items: center; margin-bottom: 24px; }
.pw2 .pw-link {
  font-size: 15px; text-decoration-thickness: 1px !important;
  text-decoration-color: var(--pw-haldi) !important; text-underline-offset: 5px;
}
.pw2 .pw-link:hover { color: var(--pw-accent) !important; }
.pw2 .pw-bundle { background: var(--pw-paper); color: var(--pw-ink); }
.pw2 .pw-bundle__inner { padding-top: clamp(42px, 5vw, 64px); padding-bottom: clamp(42px, 5vw, 64px); }
.pw2 .pw-bundle .pw-h2 { color: var(--pw-ink); }
.pw2 .pw-bundle__copy p { color: var(--pw-soft); font-size: 17px; }
.pw2 .pw-bundle__tiers { gap: 12px; }
.pw2 .pw-bundle__tiers li {
  background: #FFFFFF; border: 1px solid var(--pw-rule);
  border-radius: 12px; padding: 20px; box-shadow: none;
}
.pw2 .pw-bundle__qty { color: var(--pw-soft); }
.pw2 .pw-bundle__price { color: var(--pw-ink); font-size: clamp(27px, 2.5vw, 36px); }
.pw2 .pw-bundle__tiers li:hover { border-color: #CBB58E; }
.pw2 .pw-bundle__code { color: var(--pw-soft); font-size: 15px; line-height: 1.7; }
.pw2 .pw-bundle__code strong { background: var(--pw-ink); color: #FFFFFF; border-radius: 6px; }
.pw2 .pw-why__grid { gap: 14px; }
.pw2 .pw-why__grid li {
  padding: 22px; border-color: var(--pw-rule);
  border-radius: 14px; background: #FFFFFF;
}
.pw2 .pw-why__grid h3 { font-family: var(--pw-display); font-size: 20px; font-weight: 700; }
.pw2 .pw-why__grid p { color: var(--pw-soft); font-size: 15.5px; }
.pw2 .pw-story { background: var(--pw-forest); }
.pw2 .pw-story__inner { padding-top: clamp(48px, 6vw, 76px); padding-bottom: clamp(48px, 6vw, 76px); }
.pw2 .pw-story__mark { border-radius: 14px; transform: none; box-shadow: 0 16px 34px rgba(0,0,0,.16); }
.pw2 .pw-story .pw-h2 { font-size: clamp(32px, 4.5vw, 54px); }
.pw2 .pw-story p { color: #E0E5DC; font-size: 17px; }
.pw2 .pw-diy__box {
  background: var(--pw-ink); border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px; padding: clamp(26px, 4vw, 44px);
}
.pw2 .pw-diy p { color: #DADDD5; font-size: 17px; }
.pw2 .pw-help { background: #FFFFFF; border-color: var(--pw-rule); }
.pw2 .pw-help__inner { padding-top: 36px; padding-bottom: 36px; }
.pw2 .pw-help p { color: var(--pw-soft); font-size: 15.5px; }

/* Product cards: consistent image ratio, spacing and one restrained accent. */
.pw2 .pw-new ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 20px !important;
  margin: 0 !important; padding: 0 !important;
}
.pw2 .pw-new ul.products::before,
.pw2 .pw-new ul.products::after { display: none !important; content: none !important; }
.pw2 .pw-new ul.products li.product {
  float: none !important; width: auto !important; max-width: none !important;
  margin: 0 !important; min-width: 0;
}
.pw2 .woocommerce ul.products li.product .woocommerce-loop-image-link,
.pw2 ul.wc-block-grid__products .woocommerce-loop-image-link {
  display: block; overflow: hidden; aspect-ratio: 4 / 5;
  border-radius: 14px; background: #F0EEE8;
}
.pw2 .woocommerce ul.products li.product .woocommerce-loop-image-link img,
.pw2 ul.wc-block-grid__products .woocommerce-loop-image-link img {
  display: block; width: 100%; height: 100%; box-sizing: border-box; object-fit: contain;
  padding: 8px; background: #F0EEE8; transition: transform .25s ease;
}
.pw2 .woocommerce ul.products li.product .woocommerce-loop-image-link:hover img { transform: scale(1.025); }
.pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title,
.pw2 .wc-block-grid__product-title {
  margin-top: 12px; font-family: var(--pw-display) !important;
  font-size: 16px; font-weight: 650; line-height: 1.35;
}
.pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title a { color: var(--pw-ink); }
.pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title a:hover { color: var(--pw-accent); }
.pw2 .woocommerce ul.products li.product .price { color: var(--pw-ink); font-size: 16px; font-weight: 750; }
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn {
  min-height: 44px; margin-top: 8px; border-radius: 9px !important;
  background: var(--pw-ink) !important; border-color: var(--pw-ink) !important; color: #FFFFFF !important;
}
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn:hover {
  background: #3A3E36 !important; border-color: #3A3E36 !important; color: #FFFFFF !important;
}
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn.sf-card-btn--design {
  background: transparent !important; border-color: var(--pw-rule) !important; color: var(--pw-ink) !important;
}
.pw2 ul.products li.product .product-action-wrap .button.sf-card-btn.sf-card-btn--design:hover {
  border-color: var(--pw-ink) !important; background: var(--pw-ink) !important; color: #FFFFFF !important;
}
.pw2 .woocommerce span.onsale { background: var(--pw-accent); color: #FFFFFF; border-radius: 7px; }
.pw2 .pw-fit { border-radius: 6px; background: rgba(255,255,255,.96); border: 1px solid rgba(34,37,31,.08); }
.pw2 .wc-block-grid__product .product-details { padding-top: 12px !important; }

/* Shop navigation and quick-add panels use the same neutral component system. */
.pw2 .sf-choice__card {
  border-radius: 13px; border-color: var(--pw-rule); box-shadow: none;
  transition: border-color .15s ease, transform .15s ease;
}
.pw2 .sf-choice__card:hover { border-color: #C5B89B; transform: translateY(-1px); }
.pw2 .sf-choice__card[aria-current] { border-color: var(--pw-ink); box-shadow: inset 0 0 0 1px var(--pw-ink); }
.pw2 .sf-choice__img { border-radius: 10px; background: #F0EEE8; object-fit: contain; }
.pw2 .chip-row a,
.pw2 .archive-description p:last-child a {
  min-height: 40px; border-radius: 8px; border-color: var(--pw-rule);
  background: #FFFFFF; color: var(--pw-ink); font-weight: 650;
}
.pw2 .chip-row a:hover,
.pw2 .archive-description p:last-child a:hover { border-color: var(--pw-ink); }
.pw2 .sf-qa, .pw2 .sf-dialog {
  border-radius: 16px; box-shadow: 0 22px 60px rgba(25,29,24,.18);
}
.pw2 .sf-qa__size span { border-radius: 8px; min-width: 46px; min-height: 44px; }
.pw2 .sf-qa__size input:checked + span {
  background: var(--pw-ink); border-color: var(--pw-ink); color: #FFFFFF;
}
.pw2 .sf-qa__colour input:checked + .sf-qa__dot {
  box-shadow: 0 0 0 3px #FFFFFF, 0 0 0 5px var(--pw-ink);
}
.pw2 .sf-qa__add.button { background: var(--pw-ink); border-color: var(--pw-ink); color: #FFFFFF; }
.pw2 .sf-qa__add.button:hover { background: #3A3E36; color: #FFFFFF; }

/* Product detail: options are clear, selected values are obvious, buttons feel consistent. */
.pw2.single-product .product_title { font-size: clamp(30px, 3.3vw, 44px); line-height: 1.12; }
.pw2.single-product div.product .woocommerce-product-gallery {
  background: #F0EEE8; border: 1px solid rgba(34,37,31,.05); border-radius: 16px;
}
.pw2.single-product div.product .summary .price { color: var(--pw-ink); font-size: 25px; font-weight: 750; }
.pw2.single-product .cfvsw-swatches-container { gap: 8px; }
.pw2.single-product .cfvsw-swatches-option { margin: 3px 5px 5px 3px; }
.pw2.single-product .cfvsw-label-option {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 44px; min-height: 44px; padding: 8px 11px;
  border: 1px solid var(--pw-rule) !important; border-radius: 8px !important;
  background: #FFFFFF !important; color: var(--pw-ink) !important;
}
.pw2.single-product .cfvsw-swatches-option.cfvsw-selected-swatch .cfvsw-label-option {
  border-color: var(--pw-ink) !important; background: var(--pw-ink) !important;
  color: #FFFFFF !important; box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 3px var(--pw-ink) !important;
}
.pw2.single-product table.variations tr.sf-needs-choice .cfvsw-swatches-container {
  border-radius: 8px; box-shadow: none;
}
.pw2.single-product table.variations tr.sf-needs-choice label { color: var(--pw-accent); }
.pw2.single-product form.cart .single_add_to_cart_button {
  min-height: 54px; font-size: 16px; background: var(--pw-ink); color: #FFFFFF; border-color: var(--pw-ink);
}
.pw2.single-product form.cart .single_add_to_cart_button:hover { background: #3A3E36; color: #FFFFFF; }
.pw2.single-product form.cart .quantity input.qty { border-radius: 9px; height: 54px; }
.pw2.single-product .single-product-extras { border-radius: 12px; box-shadow: none; }
.pw2 .sf-sections { border-color: var(--pw-rule); }
.pw2 .sf-section { border-color: var(--pw-rule); }
.pw2 .sf-section > summary { min-height: 54px; font-weight: 650; }
.pw2 .sf-section > summary:focus-visible { outline-color: var(--pw-haldi); }

/* Coupon and fulfilment notices: warm neutral, with red reserved for actual errors. */
.pw2 .sf-offer {
  background: #F4ECE4 !important; border: 1px solid #E5D5C7;
  color: var(--pw-text); border-radius: 10px;
}
.pw2 .sf-offer strong, .pw2 .sf-offer__main { color: var(--pw-ink); }
.pw2 .sf-offer code { background: #FFFFFF; border-color: #DEC7B4; color: var(--pw-accent); }
.pw2 .sf-offer a { color: var(--pw-ink); }
.pw2 .sf-custom-notice { background: #F4F1E9; border-left-color: var(--pw-haldi); color: var(--pw-text); border-radius: 10px; }
.pw2 .woocommerce-message,
.pw2 .woocommerce-info,
.pw2 .woocommerce-error,
.pw2 .wc-block-components-notice-banner {
  border-radius: 10px; box-shadow: none;
}
.pw2 .woocommerce-message, .pw2 .woocommerce-info { background: #FFFFFF; border-top-color: var(--pw-haldi); color: var(--pw-text); }
.pw2 .woocommerce-error { background: #FDF1EF; border-top-color: #B43C35; color: #732B26; }

/* Cart, checkout, payment selection and account: clear cards, not a patchwork of boxes. */
.pw2.woocommerce-cart .entry-content-wrap,
.pw2.woocommerce-checkout .entry-content-wrap,
.pw2.woocommerce-account .entry-content-wrap {
  background: #FFFFFF; border: 1px solid var(--pw-rule);
  border-radius: 16px; padding: clamp(18px, 3.5vw, 40px) !important;
  margin: 24px 0 56px; box-shadow: 0 10px 28px rgba(34,37,31,.035);
}
.pw2.woocommerce-checkout .entry-header .entry-title,
.pw2.woocommerce-cart .entry-header .entry-title,
.pw2.woocommerce-account .entry-header .entry-title {
  font-size: clamp(30px, 4vw, 46px); letter-spacing: -.025em;
}
.pw2 input[type="text"], .pw2 input[type="email"], .pw2 input[type="tel"],
.pw2 input[type="password"], .pw2 input[type="number"], .pw2 input[type="search"],
.pw2 textarea, .pw2 select {
  background: #FFFFFF; color: var(--pw-ink); border: 1px solid #D8D7CF;
  border-radius: 8px; min-height: 46px; box-shadow: none;
}
.pw2 input:focus, .pw2 select:focus, .pw2 textarea:focus,
.pw2 .wc-block-components-text-input input:focus {
  border-color: var(--pw-ink); box-shadow: 0 0 0 1px var(--pw-ink);
}
.pw2 .wc-block-components-text-input input,
.pw2 .wc-block-components-text-input select {
  border-radius: 8px;
}
.pw2 .wc-block-components-totals-wrapper,
.pw2 .wc-block-components-order-summary,
.pw2 .woocommerce-checkout-review-order-table { border-color: var(--pw-rule); }
.pw2 .wc-block-components-radio-control__option,
.pw2 .wc-block-components-radio-control-accordion-option {
  border: 1px solid var(--pw-rule); border-radius: 10px;
  background: #FFFFFF; margin: 8px 0; overflow: hidden;
}
.pw2 .wc-block-components-radio-control__option[aria-checked="true"],
.pw2 .wc-block-components-radio-control-accordion-option[aria-checked="true"] {
  border-color: var(--pw-ink); box-shadow: inset 0 0 0 1px var(--pw-ink);
  background: #F9F8F4;
}
.pw2 .wc-block-components-checkout-place-order-button,
.pw2 .wc-block-cart__submit-button,
.pw2.woocommerce-checkout #place_order {
  min-height: 52px; border-radius: 10px !important;
  background: var(--pw-ink) !important; border-color: var(--pw-ink) !important;
  color: #FFFFFF !important; font-weight: 750;
}
.pw2 .wc-block-components-checkout-place-order-button:hover,
.pw2 .wc-block-cart__submit-button:hover,
.pw2.woocommerce-checkout #place_order:hover {
  background: #3A3E36 !important; border-color: #3A3E36 !important; color: #FFFFFF !important;
}
.pw2.woocommerce-checkout #payment ul.payment_methods { border: 0; padding: 0; }
.pw2.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
  margin: 8px 0; padding: 14px; border: 1px solid var(--pw-rule);
  border-radius: 10px; background: #FFFFFF;
}
.pw2.woocommerce-checkout #payment div.payment_box { border-radius: 8px; background: #F5F3ED; }
.pw2 .wc-block-components-checkout-step__heading { margin-bottom: 14px; }
.pw2 #cart-drawer .drawer-inner { background: #FFFFFF; }
.pw2 #cart-drawer .woocommerce-mini-cart__buttons .button.checkout {
  background: var(--pw-ink); color: #FFFFFF;
}

/* Tablet and mobile: stable two-column product cards, readable spacing, no sideways scroll. */
@media (max-width: 960px) {
  .pw2 .pw-wrap { padding-left: 22px; padding-right: 22px; }
  .pw2 .pw-hero__inner { gap: 24px; padding-top: 36px; padding-bottom: 48px; }
  .pw2 .pw-hero__art { height: auto; aspect-ratio: 1 / .86; max-width: 520px; width: 100%; margin: 0 auto; }
  .pw2 .pw-story__inner { gap: 32px; }
  .pw2 .pw-new ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 16px !important; }
  .pw2 .pw-cats__row { justify-content: flex-start; gap: 14px; }
  .pw2 .pw-cat { width: 76px; }
  .pw2 .pw-cat__img { width: 66px; height: 66px; }
}
@media (max-width: 767px) {
  .pw2 .pw-wrap { padding-left: 16px; padding-right: 16px; }
  .pw2 .pw-hero__title { font-size: clamp(38px, 10.5vw, 54px); }
  .pw2 .pw-hero__lede { font-size: 16px; line-height: 1.62; }
  .pw2 .pw-hero__actions { gap: 10px; }
  .pw2 .pw-hero__actions .pw-btn { flex: 1 1 calc(50% - 6px); padding: 0 12px; min-height: 48px; font-size: 14px; }
  .pw2 .pw-hero__facts li { font-size: 12px; }
  .pw2 .pw-new ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 12px !important; }
  .pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 15px; }
  .pw2 .woocommerce ul.products li.product .price { font-size: 15px; }
  .pw2 .pw-head { align-items: flex-end; gap: 12px; }
  .pw2 .pw-head .pw-h2 { font-size: clamp(27px, 7vw, 36px); }
  .pw2 .pw-head .pw-link { flex: 0 0 auto; font-size: 13px; }
  .pw2 .pw-bundle__tiers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pw2 .pw-bundle__tiers li { padding: 16px; }
  .pw2 .pw-bundle__price { font-size: 27px; }
  .pw2 .pw-story__inner { grid-template-columns: 1fr; gap: 24px; }
  .pw2 .pw-story__mark { width: min(280px, 82%); }
  .pw2 .pw-diy__box { padding: 24px 20px; gap: 20px; }
  .pw2 .pw-diy__box .pw-btn { width: 100%; }
  .pw2 .pw-help .pw-btn { width: 100%; }
  .pw2.woocommerce-cart .entry-content-wrap,
  .pw2.woocommerce-checkout .entry-content-wrap,
  .pw2.woocommerce-account .entry-content-wrap {
    padding: 18px !important; margin: 14px 0 38px; border-radius: 12px;
  }
  .pw2 .sf-choice { grid-template-columns: 1fr; gap: 10px; }
  .pw2 .sf-choice__card { min-height: 84px; padding: 12px; gap: 14px; }
  .pw2 .sf-choice__img { width: 76px; }
}
@media (max-width: 380px) {
  .pw2 .pw-hero__actions .pw-btn { flex-basis: 100%; }
  .pw2 .pw-bundle__tiers li { padding: 13px; }
  .pw2 .pw-bundle__qty { font-size: 13px; }
  .pw2 .pw-bundle__price { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .pw2 *, .pw2 *::before, .pw2 *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* ---------------------------------------------------------------- Product colour swatches and card finishing
   Keep the actual colour visible, but give the controls a deliberate, premium finish. */
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  min-height: 26px;
  margin: 10px 0 4px;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option) {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 23px;
  width: 23px !important;
  min-width: 23px !important;
  height: 23px !important;
  min-height: 23px !important;
  padding: 2px !important;
  margin: 0 !important;
  border: 1px solid #D9D6CE !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option) .cfvsw-swatch-inner {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 50% !important;
  box-shadow: none !important;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option):hover {
  border-color: var(--pw-ink) !important;
  transform: translateY(-1px);
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option).cfvsw-selected-swatch {
  border-color: var(--pw-ink) !important;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 3px var(--pw-ink) !important;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option):focus-visible {
  outline: 2px solid var(--pw-haldi) !important;
  outline-offset: 3px;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option .cfvsw-swatch-inner:empty {
  overflow: hidden;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-label-option {
  min-width: 25px !important;
  min-height: 25px !important;
  padding: 3px 6px !important;
  margin: 0 !important;
  border: 1px solid var(--pw-rule) !important;
  border-radius: 6px !important;
  background: #FFFFFF !important;
  color: var(--pw-ink) !important;
  font-size: 11px;
  line-height: 1;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-label-option.cfvsw-selected-swatch {
  border-color: var(--pw-ink) !important;
  background: var(--pw-ink) !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
}
/* Keep homepage product cards aligned when titles or swatch counts differ. */
.pw2 .pw-new ul.products li.product {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.pw2 .pw-new ul.products li.product .woocommerce-loop-image-link {
  flex: 0 0 auto;
}
.pw2 .pw-new ul.products li.product .woocommerce-loop-product__title {
  min-height: 2.7em;
  margin-bottom: 4px;
}
.pw2 .pw-new ul.products li.product .price {
  margin: 0 0 2px;
}
.pw2 .pw-new ul.products li.product .product-action-wrap {
  margin-top: auto;
}
.pw2 .pw-new ul.products li.product .product-action-wrap .button {
  width: 100%;
}
@media (max-width: 767px) {
  .pw2 .pw-new ul.products li.product .woocommerce-loop-product__title {
    min-height: 2.7em;
    font-size: 14px;
    line-height: 1.35;
  }
  .pw2 .woocommerce ul.products li.product .cfvsw-shop-container {
    gap: 6px;
    margin-top: 8px;
  }
  .pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option) {
    flex-basis: 21px;
    width: 21px !important;
    min-width: 21px !important;
    height: 21px !important;
    min-height: 21px !important;
  }
}


/* Final mobile product-card polish: single-ring colour selection and compact rhythm. */
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container {
  min-height: 24px;
  gap: 8px;
  margin: 12px 0 10px;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option) {
  box-sizing: border-box !important;
  flex: 0 0 22px;
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  min-height: 22px !important;
  padding: 2px !important;
  border: 1px solid #D7D5CE !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  outline: none !important;
  transform: none;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option)::before,
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option)::after {
  content: none !important;
  display: none !important;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option) .cfvsw-swatch-inner {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  box-shadow: none !important;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option).cfvsw-selected-swatch {
  border: 2px solid var(--pw-ink) !important;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 3px var(--pw-ink) !important;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option):hover {
  transform: translateY(-1px);
}
.pw2 .pw-new ul.products li.product .woocommerce-loop-product__title {
  min-height: 2.7em;
  margin-top: 10px;
  margin-bottom: 3px;
}
.pw2 .pw-new ul.products li.product .price {
  margin: 0 0 2px;
  line-height: 1.3;
}
.pw2 .pw-new ul.products li.product .product-action-wrap {
  margin-top: 12px;
}
.pw2 .pw-new ul.products li.product .product-action-wrap .button.sf-card-btn {
  min-height: 46px;
  padding: 12px 14px;
  border-radius: 9px !important;
  font-size: 15px;
  line-height: 1.25;
}
@media (max-width: 767px) {
  .pw2 .woocommerce ul.products li.product .cfvsw-shop-container {
    min-height: 23px;
    gap: 7px;
    margin: 10px 0 8px;
  }
  .pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option:not(.cfvsw-label-option) {
    flex-basis: 21px;
    width: 21px !important;
    min-width: 21px !important;
    height: 21px !important;
    min-height: 21px !important;
  }
  .pw2 .pw-new ul.products li.product .product-action-wrap {
    margin-top: 10px;
  }
  .pw2 .pw-new ul.products li.product .product-action-wrap .button.sf-card-btn {
    min-height: 44px;
    padding: 11px 10px;
    font-size: 14px;
  }
}


/* Stability + polish hotfix: keep colour swatches inside each product card. */
.pw2 .pw-new ul.products,
.pw2 .pw-new ul.products li.product { min-width: 0; }
.pw2 .pw-new ul.products li.product .cfvsw-shop-container {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  flex-wrap: wrap !important;
  align-content: flex-start;
}
.pw2 .pw-new ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option {
  box-sizing: border-box;
  flex-shrink: 0;
}
.pw2 .pw-cats { max-width: 100%; overflow: hidden; }
.pw2 .pw-cats__row { box-sizing: border-box; width: 100%; max-width: 1240px; }
.pw2 .pw-cat { flex: 0 0 76px; min-width: 0; }
.pw2 .pw-cat__img { display: flex; align-items: center; justify-content: center; overflow: hidden; }
.pw2 .pw-cat__img img { max-width: 100%; max-height: 100%; }
.pw2 .pw-hero__art { contain: layout paint; }
.pw2 .pw-hero__card { backface-visibility: hidden; }
.pw2 .pw-new ul.products li.product .woocommerce-loop-image-link { contain: layout paint; }
@media (max-width: 767px) {
  .pw2 .pw-hero__inner { grid-template-columns: minmax(0, 1fr); }
  .pw2 .pw-hero__art { width: 100%; aspect-ratio: 1 / .78; min-height: 250px; }
  .pw2 .pw-cats__row { padding-left: 16px; padding-right: 16px; }
}


/* Product card swatch containment: override plugin offsets and prevent clipping. */
.pw2 .pw-new ul.products li.product .cfvsw-shop-container {
  display: flex !important; align-items: center; justify-content: flex-start;
  gap: 8px !important; padding: 4px 2px 6px !important; margin: 0 !important;
  overflow: visible !important; position: relative; inset-inline-start: 0 !important; transform: none !important;
}
.pw2 .pw-new ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option {
  position: relative !important; inset-inline-start: auto !important; inset-inline-end: auto !important;
  margin: 0 !important; transform: none !important; flex: 0 0 26px !important;
  width: 26px !important; min-width: 26px !important; height: 26px !important; min-height: 26px !important;
  border-radius: 50%;
}
.pw2 .pw-new ul.products li.product .product-action-wrap { margin-top: 12px; }
.pw2 .pw-new ul.products li.product .product-action-wrap .button.sf-card-btn {
  width: 100%; min-height: 48px; display: inline-flex; align-items: center; justify-content: center;
}
.pw2 .sf-card-btn.sf-is-loading { position: relative; pointer-events: none; opacity: .8; }
.pw2 .sf-card-btn.sf-is-loading::after {
  content: ""; display: inline-block; width: 14px; height: 14px; margin-inline-start: 9px;
  border: 2px solid currentColor; border-inline-end-color: transparent; border-radius: 50%;
  animation: sf-card-spin .7s linear infinite;
}
@keyframes sf-card-spin { to { transform: rotate(360deg); } }
@media (max-width: 767px) {
  .pw2 .pw-new ul.products li.product .cfvsw-shop-container { gap: 7px !important; }
  .pw2 .pw-new ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option {
    flex-basis: 24px !important; width: 24px !important; min-width: 24px !important;
    height: 24px !important; min-height: 24px !important;
  }
}


/* Premium wordmark sizing: crisp, legible header logo on dark navigation. */
.pw2 .site-branding .custom-logo,
.pw2 .site-branding .site-logo img,
.pw2 .site-branding .custom-logo-link img {
  display: block;
  width: 232px !important;
  max-width: 100%;
  height: auto !important;
  max-height: none !important;
  object-fit: contain;
}
.pw2 .site-branding .custom-logo-link {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}
@media (max-width: 1024px) {
  .pw2 .site-branding .custom-logo,
  .pw2 .site-branding .site-logo img,
  .pw2 .site-branding .custom-logo-link img {
    width: 205px !important;
  }
}
@media (max-width: 767px) {
  .pw2 .site-branding .custom-logo,
  .pw2 .site-branding .site-logo img,
  .pw2 .site-branding .custom-logo-link img {
    width: 178px !important;
  }
}


/* Brand refinement: quieter luxury, less playful UI chrome. */
.pw2 {
  --pw-ink: #171615;
  --pw-paper: #f7f5f0;
  --pw-gold: #c59a4a;
  --pw-burgundy: #7b1938;
}
.pw2 #masthead .site-main-header-wrap .site-header-row-container-inner,
.pw2 #mobile-header .site-main-header-wrap .site-header-row-container-inner {
  background: #171615 !important;
  border-bottom: 1px solid rgba(197,154,74,.32) !important;
}
.pw2 .site-branding .custom-logo,
.pw2 .site-branding .site-logo img,
.pw2 .site-branding .custom-logo-link img {
  width: 260px !important;
  max-width: 100%;
  height: auto !important;
  max-height: none !important;
  filter: none;
}
.pw2 .primary-menu-container > ul > li > a,
.pw2 .header-navigation .header-menu-container ul ul li a {
  letter-spacing: .015em;
}
.pw2 .primary-menu-container > ul > li > a {
  font-weight: 600;
  font-size: 14px;
}
.pw2 .pw-cats {
  background: #fff;
  border-bottom: 1px solid #e9e3d9;
}
.pw2 .pw-cats__row { gap: 22px; }
.pw2 .pw-cat__img {
  border-radius: 3px !important;
  background: #f3f0ea !important;
  overflow: hidden;
}
.pw2 .pw-cat__img img {
  transition: transform .35s ease;
}
@media (hover:hover) {
  .pw2 .pw-cat:hover .pw-cat__img img { transform: scale(1.035); }
}
.pw2 .pw-cat__name {
  color: #28231f !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .01em;
}
.pw2 .pw-hero {
  background: #f5f1e9 !important;
}
.pw2 .pw-hero__kicker {
  color: #86642c !important;
  letter-spacing: .16em !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}
.pw2 .pw-hero__title {
  color: #171615 !important;
  letter-spacing: -.035em !important;
  line-height: 1.05 !important;
}
.pw2 .pw-hero__title span { color: #7b1938 !important; }
.pw2 .pw-btn {
  border-radius: 2px !important;
  letter-spacing: .025em;
  font-weight: 650;
}
.pw2 .pw-btn--haldi {
  background: #171615 !important;
  color: #fff !important;
  border: 1px solid #171615 !important;
}
.pw2 .pw-btn--ghost {
  background: transparent !important;
  color: #171615 !important;
  border: 1px solid #9c8a70 !important;
}
.pw2 .pw-new, .pw2 .pw-bundle, .pw2 .pw-story, .pw2 .pw-diy, .pw2 .pw-help {
  --pw-card-radius: 3px;
}
.pw2 .pw-h2 {
  color: #211d19 !important;
  letter-spacing: -.025em !important;
}
.pw2 .pw-link {
  color: #7b1938 !important;
  text-underline-offset: 4px;
}
.pw2 .pw-new ul.products li.product {
  border-radius: 3px !important;
  box-shadow: none !important;
}
.pw2 .pw-new ul.products li.product .woocommerce-loop-product__title {
  color: #211d19 !important;
  font-weight: 650 !important;
  letter-spacing: -.01em;
}
.pw2 .pw-new ul.products li.product .price {
  color: #211d19 !important;
  font-weight: 700 !important;
}
.pw2 .pw-new ul.products li.product .button,
.pw2 .pw-new ul.products li.product .sf-card-btn {
  border-radius: 2px !important;
  background: #211f1b !important;
  color: #fff !important;
  letter-spacing: .015em;
  font-weight: 650 !important;
}
@media (max-width: 767px) {
  .pw2 .site-branding .custom-logo,
  .pw2 .site-branding .site-logo img,
  .pw2 .site-branding .custom-logo-link img { width: 190px !important; }
  .pw2 .pw-cats__row { gap: 14px; }
}


/* International fashion direction: consistent iconography, restrained geometry and typography. */
.pw2 .site-header-item .kadence-svg-iconset,
.pw2 .site-header-item svg,
.pw2 .pw-m-account svg {
  width: 20px;
  height: 20px;
  stroke-width: 1.6;
}
.pw2 .site-header-item button,
.pw2 .site-header-item a,
.pw2 .pw-m-account {
  transition: color .18s ease, opacity .18s ease, border-color .18s ease;
}
.pw2 .search-toggle-open,
.pw2 .header-cart-button,
.pw2 .pw-m-account,
.pw2 .header-wishlist-button {
  color: #f7f3eb !important;
}
.pw2 .search-toggle-open:hover,
.pw2 .header-cart-button:hover,
.pw2 .pw-m-account:hover,
.pw2 .header-wishlist-button:hover {
  color: #c59a4a !important;
}
.pw2 .header-cart-wrap .header-cart-button .header-cart-total,
.pw2 .header-mobile-cart-wrap .header-cart-button .header-cart-total {
  background: #c59a4a !important;
  color: #171615 !important;
  border-radius: 2px !important;
  font-size: 10px !important;
  font-weight: 700;
}
.pw2 .pw-cats__row { align-items: start; }
.pw2 .pw-cat__img {
  width: 88px !important;
  height: 104px !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: #f2eee7 !important;
}
.pw2 .pw-cat__img img { width: 100%; height: 100%; object-fit: cover; }
.pw2 .pw-cat__name {
  margin-top: 10px;
  font-size: 11px !important;
  letter-spacing: .045em !important;
  text-transform: uppercase;
}
.pw2 .site-top-header-wrap .header-html,
.pw2 .site-top-header-wrap .mobile-html {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .055em;
}
.pw2 .pw-h2 {
  font-weight: 650 !important;
  letter-spacing: -.035em !important;
}
.pw2 .pw-hero__lede,
.pw2 .pw-story p,
.pw2 .pw-diy p,
.pw2 .pw-help p {
  color: #625c54 !important;
  line-height: 1.75;
}
.pw2 .pw-new ul.products li.product .woocommerce-loop-product__title {
  font-size: 15px !important;
  line-height: 1.45 !important;
}
.pw2 .pw-new ul.products li.product .button,
.pw2 .pw-new ul.products li.product .sf-card-btn,
.pw2 .pw-btn {
  min-height: 46px;
  text-transform: none;
}
.pw2 a:focus-visible,
.pw2 button:focus-visible {
  outline: 2px solid #c59a4a;
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .pw2 .pw-cat__img { width: 72px !important; height: 88px !important; }
  .pw2 .pw-cat__name { font-size: 10px !important; }
}


/* Contrast and readability repair across all custom homepage sections. */
.pw2 .pw-diy__box,
.pw2 .pw-diy__box h2,
.pw2 .pw-diy__box .pw-h2 {
  color: #f8f5ef !important;
}
.pw2 .pw-diy__box p,
.pw2 .pw-diy__box .pw-diy__lede {
  color: #d9d3c9 !important;
}
.pw2 .pw-diy__box h2 *,
.pw2 .pw-diy__box .pw-h2 * {
  color: inherit !important;
}
.pw2 .pw-story .pw-h2,
.pw2 .pw-story .pw-h2 *,
.pw2 .pw-story p,
.pw2 .pw-story li,
.pw2 .pw-story .pw-link {
  color: #f7f3eb !important;
}
.pw2 .pw-story .pw-link { text-decoration-color: #c59a4a !important; }
.pw2 .pw-hero__title,
.pw2 .pw-hero__title *,
.pw2 .pw-hero__lede,
.pw2 .pw-hero__kicker {
  text-shadow: none !important;
}
.pw2 .pw-hero__title { color: #171615 !important; }
.pw2 .pw-hero__lede { color: #514b43 !important; }
.pw2 .pw-hero__kicker { color: #765622 !important; }
.pw2 .pw-diy__box .pw-btn--rani {
  background: #c59a4a !important;
  border-color: #c59a4a !important;
  color: #171615 !important;
}
.pw2 .pw-diy__box .pw-btn--rani:hover {
  background: #e0bd78 !important;
  border-color: #e0bd78 !important;
  color: #171615 !important;
}
.pw2 .pw-help,
.pw2 .pw-help__inner,
.pw2 .pw-help__title {
  color: #211d19 !important;
}
.pw2 .pw-help p { color: #514b43 !important; }
.pw2 .pw-help .pw-btn--paper {
  background: #211d19 !important;
  border-color: #211d19 !important;
  color: #fff !important;
}
.pw2 .pw-new .pw-h2,
.pw2 .pw-bundle .pw-h2,
.pw2 .pw-diy .pw-h2,
.pw2 .pw-help .pw-h2 {
  color: #211d19;
}
.pw2 .pw-diy .pw-diy__box .pw-h2 { color: #f8f5ef !important; }
.pw2 .pw-diy .pw-diy__box p { color: #d9d3c9 !important; }
.pw2 .site-footer,
.pw2 .site-footer .footer-title,
.pw2 .site-footer .footer-about,
.pw2 .site-footer .footer-links a { color: #f0ece4; }


/* Product gallery: keep WooCommerce's gallery thumbnails visible on the storefront.
   This is CSS-only and adds no extra image requests or gallery plugin. */
.pw2.single-product div.product .woocommerce-product-gallery {
  overflow: visible;
}
.pw2.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.pw2.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
  float: none !important;
  width: 68px !important;
  flex: 0 0 68px;
  margin: 0 !important;
}
.pw2.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 4;
  object-fit: contain;
  border: 1px solid var(--pw-rule, #dedbd3);
  border-radius: 8px;
  cursor: pointer;
}
.pw2.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
  border-color: var(--pw-ink, #242820);
}
@media (max-width: 767px) {
  .pw2.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
    gap: 7px;
    margin-top: 10px !important;
  }
  .pw2.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
    width: 56px !important;
    flex-basis: 56px;
  }
}


/* Responsive shop-grid hotfix: keep colour dots fully visible and align card actions. */
.pw2 .woocommerce ul.products li.product,
.pw2 .pw-new ul.products li.product {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container,
.pw2 .pw-new ul.products li.product .cfvsw-shop-container {
  overflow: visible !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
}
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option,
.pw2 .pw-new ul.products li.product .cfvsw-shop-container .cfvsw-swatches-option {
  flex-shrink: 0 !important;
  inset-inline-start: auto !important;
  inset-inline-end: auto !important;
}
.pw2 .woocommerce ul.products li.product .sf-card-btn,
.pw2 .pw-new ul.products li.product .sf-card-btn {
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  align-items: center;
  justify-content: center;
  white-space: normal;
  text-align: center;
}
@media (max-width: 767px) {
  .pw2 .woocommerce ul.products,
  .pw2 .woocommerce-page ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 12px !important;
    row-gap: 24px !important;
    width: 100% !important;
    margin-inline: 0 !important;
  }
  .pw2 .woocommerce ul.products li.product,
  .pw2 .woocommerce-page ul.products li.product {
    float: none !important;
    clear: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
  }
  .pw2 .woocommerce ul.products li.product img,
  .pw2 .woocommerce-page ul.products li.product img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto;
    object-fit: contain;
  }
  .pw2 .woocommerce ul.products li.product .woocommerce-loop-product__title {
    overflow-wrap: anywhere;
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
  .pw2 .woocommerce ul.products li.product .price {
    font-size: 15px;
    line-height: 1.35;
  }
  .pw2 .woocommerce ul.products li.product .cfvsw-shop-container {
    gap: 6px !important;
    margin: 8px 0 !important;
    padding: 4px 0 6px !important;
  }
  .pw2 .woocommerce ul.products li.product .sf-card-btn {
    min-height: 44px !important;
    padding: 10px 8px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }
}


/* Launch polish: consistent fallback colour choices and legible product-page options. */
.pw2 .sf-card-colour-fallback{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:26px;margin:10px 0 8px;max-width:100%;overflow:visible}
.pw2 .sf-card-colour-fallback__dot{display:inline-block;flex:0 0 22px;width:22px;height:22px;box-sizing:border-box;border-radius:50%;background:var(--sf-colour,#D8D8D8);border:1px solid rgba(23,23,23,.22);box-shadow:inset 0 0 0 2px #fff;text-decoration:none}
.pw2 .sf-card-colour-fallback__dot:focus-visible{outline:2px solid var(--pw-ink);outline-offset:3px}
.pw2 .single-product table.variations .cfvsw-swatches-option[data-slug="black"],
.pw2 .single-product table.variations .cfvsw-swatches-option[ data-slug="black" ]{background:#171717!important;border-color:#171717!important}
.pw2.single-product table.variations .cfvsw-label-option,
.pw2.single-product table.variations .cfvsw-swatches-option .cfvsw-label-option{color:#171717!important;background:#fff!important;text-shadow:none!important;opacity:1!important}
.pw2.single-product table.variations .cfvsw-swatches-option[title="Black"],
.pw2.single-product table.variations .cfvsw-swatches-option[aria-label="Black"]{background:#171717!important;color:#fff!important;border-color:#171717!important}
.pw2.single-product table.variations .cfvsw-swatches-option[title="Off White"],
.pw2.single-product table.variations .cfvsw-swatches-option[aria-label="Off White"]{background:#fff!important;color:#171717!important}
@media(max-width:767px){
 .pw2 .sf-card-colour-fallback{gap:7px;margin:8px 0}
 .pw2 .sf-card-colour-fallback__dot{flex-basis:22px;width:22px;height:22px}
 .pw2.single-product .cfvsw-swatches-container{display:flex!important;flex-wrap:wrap!important;gap:8px!important;max-width:100%;overflow:visible!important}
 .pw2.single-product .cfvsw-swatches-option{flex:0 0 auto!important;max-width:100%;color:#171717!important}
 .pw2.single-product table.variations td.value{max-width:100%;overflow:visible!important}
}

/* Selected size/colour choice on the product page: always dark with white text, never white on white. */
.pw2.single-product table.variations .cfvsw-swatches-option.cfvsw-label-option.cfvsw-selected-swatch,
.pw2.single-product table.variations .cfvsw-selected-swatch .cfvsw-label-option {
  background: #171717 !important; border-color: #171717 !important; color: #FFFFFF !important;
}
.pw2.single-product table.variations .cfvsw-selected-swatch .cfvsw-swatch-inner,
.pw2.single-product table.variations .cfvsw-label-option.cfvsw-selected-swatch .cfvsw-swatch-inner { color: #FFFFFF !important; }
.pw2.single-product table.variations .cfvsw-label-option:not(.cfvsw-selected-swatch) .cfvsw-swatch-inner { color: #171717 !important; }

/* Cards: the shop's own colour dots are used; the swatch plugin's row (blank for new products) is hidden. */
.pw2 .woocommerce ul.products li.product .cfvsw-shop-container,
.pw2 .pw-new ul.products li.product .cfvsw-shop-container,
.pw2 ul.products li.product .cfvsw-shop-container,
.pw2 li.product .cfvsw-shop-variations { display: none !important; }
.pw2 .sf-card-colour-fallback { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; min-height: 28px; margin: 10px 0 12px; }
.pw2 .sf-card-colour-fallback__dot { flex: 0 0 24px; width: 24px; height: 24px; border-radius: 50%; border: 1px solid rgba(23,23,23,.28); box-shadow: inset 0 0 0 2px #fff; transition: transform .15s ease, box-shadow .15s ease; }
.pw2 .sf-card-colour-fallback__dot:hover { transform: scale(1.12); }
.pw2 .sf-card-colour-fallback__dot.is-active { border-color: #171717; box-shadow: inset 0 0 0 2px #fff, 0 0 0 2px #171717; }
.pw2 .sf-card-colour-more { font-size: 13px; color: var(--pw-muted, #5b5b57); }

/* Colour options shown as names (e.g. "Navy Blue", "Black White"): each name gets its own
   pill that grows with the text and wraps to the next line, instead of fixed boxes where the
   names overlapped on phones. */
body.single-product table.variations .cfvsw-swatches-container.cfvsw-product-container[swatches-attr*="color" i],
body.single-product table.variations .cfvsw-swatches-container.cfvsw-product-container[swatches-attr*="colour" i] {
  display: flex !important; flex-wrap: wrap !important; width: 100% !important; gap: 8px !important;
}
body.single-product table.variations .cfvsw-swatches-container.cfvsw-product-container[swatches-attr*="color" i] .cfvsw-label-option,
body.single-product table.variations .cfvsw-swatches-container.cfvsw-product-container[swatches-attr*="colour" i] .cfvsw-label-option {
  flex: 0 0 auto !important; width: auto !important; min-width: 0 !important; max-width: 100% !important;
  height: auto !important; min-height: 44px !important; margin: 0 !important; padding: 8px 14px !important;
  white-space: nowrap; text-transform: capitalize; line-height: 1.2;
}
body.single-product table.variations .cfvsw-swatches-container.cfvsw-product-container[swatches-attr*="color" i] .cfvsw-label-option .cfvsw-swatch-inner,
body.single-product table.variations .cfvsw-swatches-container.cfvsw-product-container[swatches-attr*="colour" i] .cfvsw-label-option .cfvsw-swatch-inner {
  width: auto !important; overflow: visible !important; white-space: nowrap; font-size: 14.5px;
}
