/*
Theme Name: Shobana Collection UI
Author: Shobana Collection Team
Description: Pixel-faithful UI design theme for Shobana Collection - an elegant Indian ethnic-wear ecommerce interface (Home, Shop, Product, Cart, Checkout) in a maroon & gold palette. Built with HTML, CSS, JS and PHP. Includes editable menus, WooCommerce integration and Customizer options for colours, hero, contact and footer.
Version: 1.37.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: shobana-collection-ui
Tags: e-commerce, fashion, custom-menu, featured-images, translation-ready, full-width-template, block-styles, rtl-language-support
*/

:root{
  --maroon:#7a1a2f;
  --maroon-dark:#5e1223;
  --gold:#c9a227;
  --gold-dark:#a8861a;
  --cream:#faf5ef;
  --cream-2:#f4ece2;
  --ink:#2b2426;
  --muted:#8a7f7f;
  --line:#e7ddd2;
  --rose:#f3d9de;
  --white:#fff;
  --radius:10px;
  --shadow:0 8px 30px rgba(90,20,40,.08);
  --maxw:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--white);line-height:1.6;font-size:15px}
h1,h2,h3,h4{font-family:'Playfair Display',Georgia,serif;margin:0;color:var(--ink);font-weight:600}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0;list-style:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}
.sc-ic{vertical-align:middle}
.sc-container{max-width:var(--maxw);margin:0 auto;padding-left:22px;padding-right:22px;width:100%}

/* ---------- Warm placeholder tiles (stand-ins for photography) ---------- */
.ph{background:linear-gradient(135deg,#7a1a2f,#a83c50);position:relative;overflow:hidden}
.ph::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18),transparent 45%);}
.ph-1{background:linear-gradient(135deg,#7a1a2f,#b0475b)}
.ph-2{background:linear-gradient(135deg,#a8863a,#e0c982)}
.ph-3{background:linear-gradient(135deg,#5e7d63,#a9c4ac)}
.ph-4{background:linear-gradient(135deg,#b06a2c,#e0a86a)}
.ph-5{background:linear-gradient(135deg,#7a3a52,#c58aa0)}
.ph-6{background:linear-gradient(135deg,#243b6b,#6b81b8)}
.ph-7{background:linear-gradient(135deg,#8a2b3f,#c98aa0)}
.ph-8{background:linear-gradient(135deg,#96702a,#d8bd7a)}

/* ---------- Buttons ---------- */
.sc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border:2px solid transparent;border-radius:6px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;transition:.2s}
.sc-btn--primary{background:var(--maroon);color:#fff;border-color:var(--maroon)}
.sc-btn--primary:hover{background:var(--maroon-dark);border-color:var(--maroon-dark)}
.sc-btn--gold{background:var(--gold);color:#fff;border-color:var(--gold)}
.sc-btn--gold:hover{background:var(--gold-dark);border-color:var(--gold-dark)}
.sc-btn--ghost{background:transparent;color:var(--maroon);border-color:var(--maroon)}
.sc-btn--ghost:hover{background:var(--maroon);color:#fff}
.sc-btn--outline{background:#fff;color:var(--ink);border-color:var(--line)}
.sc-btn--outline:hover{border-color:var(--maroon);color:var(--maroon)}
.sc-btn--block{width:100%}

/* ---------- Topbar ---------- */
.sc-topbar{background:var(--maroon);color:#fff;text-align:center;font-size:12px;letter-spacing:.14em;padding:8px 10px;text-transform:uppercase}

/* ---------- Header ---------- */
.sc-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.sc-header__inner{display:flex;align-items:center;gap:18px;padding-top:16px;padding-bottom:16px}
.sc-logo{display:flex;flex-direction:column;line-height:1;margin-right:8px}
.sc-logo--custom img{max-width:240px;max-height:56px;width:auto;height:auto;object-fit:contain;display:block}
.sc-logo__name{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;letter-spacing:.16em;color:var(--maroon)}
.sc-logo__sub{font-size:9.5px;letter-spacing:.42em;color:var(--gold);font-weight:600;margin-top:2px;text-align:center}
.sc-nav{margin-left:auto}
.sc-nav ul{display:flex;gap:22px}
.sc-nav a{font-size:13.5px;font-weight:500;color:var(--ink);padding:6px 0;position:relative;transition:.2s}
.sc-nav a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--gold);transition:.25s}
.sc-nav a:hover,.sc-nav a.is-active{color:var(--maroon)}
.sc-nav a:hover::after,.sc-nav a.is-active::after{width:100%}
.sc-actions{display:flex;align-items:center;gap:6px;margin-left:12px}
.sc-iconbtn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--ink);border-radius:50%;transition:.2s;position:relative}
.sc-iconbtn:hover{background:var(--cream);color:var(--maroon)}
.sc-cart__count{position:absolute;top:2px;right:2px;background:var(--maroon);color:#fff;font-size:10px;font-weight:600;min-width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 3px}
.sc-burger{display:none;flex-direction:column;gap:4px;background:none;border:none;padding:6px}
.sc-burger span{width:22px;height:2px;background:var(--ink);border-radius:2px}

/* ---------- Hero ---------- */
.sc-hero{background:linear-gradient(100deg,#f7ede2 0%,#f2dfe4 45%,#7a1a2f 100%);position:relative;overflow:hidden}
.sc-hero::before{content:"";position:absolute;right:0;top:0;bottom:0;width:52%;background:linear-gradient(135deg,#7a1a2f,#3f0d1c);clip-path:polygon(22% 0,100% 0,100% 100%,0% 100%);opacity:.92}
.sc-hero::after{content:"";position:absolute;right:8%;top:50%;transform:translateY(-50%);width:230px;height:230px;border:2px solid rgba(201,162,39,.5);border-radius:50%}
.sc-hero__inner{position:relative;z-index:2;min-height:440px;display:flex;align-items:center}
.sc-hero__text{max-width:520px;padding:50px 0}
.sc-hero__text h1{font-size:clamp(34px,5vw,56px);line-height:1.12;color:#4a1020}
.sc-hero__text p{font-size:16px;color:#5c3540;margin:18px 0 28px;max-width:430px}
.sc-hero__cta{display:flex;gap:14px;flex-wrap:wrap}
.sc-hero--align-center .sc-hero__inner{justify-content:center}
.sc-hero--align-center .sc-hero__text{text-align:center}
.sc-hero--align-center .sc-hero__text p{margin-left:auto;margin-right:auto}
.sc-hero--align-center .sc-hero__cta{justify-content:center}
.sc-hero--align-right .sc-hero__inner{justify-content:flex-end}
.sc-hero--align-right .sc-hero__text{text-align:right}
.sc-hero--align-right .sc-hero__text p{margin-left:auto}
.sc-hero--align-right .sc-hero__cta{justify-content:flex-end}

/* ---------- Feature bar ---------- */
.sc-features{background:var(--cream);border-bottom:1px solid var(--line)}
.sc-features__row{display:flex;flex-wrap:wrap;gap:10px;padding:22px 22px}
.sc-feature{flex:1 1 220px;display:flex;align-items:center;gap:14px;padding:6px 14px;border-right:1px solid var(--line)}
.sc-feature:last-child{border-right:none}
.sc-feature__ic{color:var(--maroon);flex:none}
.sc-feature strong{display:block;font-size:13px;letter-spacing:.05em;text-transform:uppercase}
.sc-feature span{font-size:12.5px;color:var(--muted)}

/* ---------- Sections & headings ---------- */
.sc-section{padding:58px 0}
.sc-section--cream{background:var(--cream)}
.sc-heading{text-align:center;font-size:30px;color:var(--maroon);margin-bottom:34px;position:relative;padding-bottom:16px}
.sc-heading::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:64px;height:3px;background:var(--gold)}
.sc-heading--tight{margin-bottom:6px}

/* ---------- Grids ---------- */
.sc-grid{display:grid;gap:24px}
.sc-grid--4{grid-template-columns:repeat(4,1fr)}
.sc-grid--3{grid-template-columns:repeat(3,1fr)}

/* ---------- Category tiles ---------- */
.sc-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.sc-cat{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.sc-cat__img{width:100%;aspect-ratio:3/4;border-radius:var(--radius);box-shadow:var(--shadow)}
.sc-cat__name{font-weight:600;font-size:13px;letter-spacing:.04em}
.sc-cat__link{font-size:12px;color:var(--gold-dark);font-weight:500}
.sc-cat:hover .sc-cat__link{color:var(--maroon)}

/* ---------- Tabs (new arrivals) ---------- */
.sc-tabs-row{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:28px;position:relative}
.sc-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.sc-tab{background:none;border:none;padding:7px 16px;font-size:13px;font-weight:500;color:var(--muted);border-radius:20px;transition:.2s}
.sc-tab:hover{color:var(--maroon)}
.sc-tab.is-active{background:var(--maroon);color:#fff}
.sc-viewall{position:absolute;right:0;font-size:12.5px;font-weight:600;letter-spacing:.06em;color:var(--maroon);border-bottom:1px solid var(--gold);padding-bottom:2px}

/* ---------- Product card ---------- */
.sc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.sc-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.sc-card__media{aspect-ratio:3/4;position:relative}
.sc-badge{position:absolute;top:10px;left:10px;background:var(--gold);color:#fff;font-size:10px;font-weight:600;letter-spacing:.08em;padding:4px 9px;border-radius:3px;z-index:2}
.sc-card__wish,.sc-card__add{position:absolute;right:10px;width:34px;height:34px;border-radius:50%;border:none;background:rgba(255,255,255,.92);color:var(--maroon);display:flex;align-items:center;justify-content:center;transition:.2s}
.sc-card__wish{top:10px}
.sc-card__add{bottom:10px;opacity:0;transform:translateY(6px)}
.sc-card:hover .sc-card__add{opacity:1;transform:translateY(0)}
.sc-card__wish:hover,.sc-card__add:hover{background:var(--maroon);color:#fff}
.sc-card__body{padding:14px 15px 16px;text-align:center}
.sc-card__title{font-family:'Poppins',sans-serif;font-size:14px;font-weight:500;color:var(--ink)}
.sc-card__price{color:var(--maroon);font-weight:600;font-size:15px;margin-top:5px}
.sc-swatches{display:flex;gap:6px;justify-content:center;margin-top:9px}
.sc-swatches span{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}

/* ---------- Festive sale ---------- */
.sc-festive{margin:12px 0 4px;border-radius:14px;overflow:hidden;background:linear-gradient(100deg,#f3d9de,#e9b6c1 60%,#7a1a2f);min-height:260px;display:flex;align-items:center;padding:40px 6%}
.sc-festive__text{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.sc-festive__label{font-family:'Playfair Display',serif;font-size:26px;color:var(--maroon);font-weight:700;letter-spacing:.04em}
.sc-festive__upto{font-size:14px;letter-spacing:.28em;color:#7a1a2f}
.sc-festive__big{font-family:'Playfair Display',serif;font-size:66px;line-height:1;color:var(--maroon);font-weight:700}
.sc-festive__sub{font-size:13px;letter-spacing:.16em;color:#5c3540;margin-bottom:16px}

/* ---------- Featured collections ---------- */
.sc-collections{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.sc-collection{aspect-ratio:4/5;border-radius:var(--radius);position:relative;overflow:hidden;display:flex;align-items:flex-end}
.sc-collection__overlay{position:relative;z-index:2;width:100%;padding:22px 18px;text-align:center;background:linear-gradient(to top,rgba(45,10,20,.82),transparent);display:flex;flex-direction:column;gap:4px}
.sc-collection__name{color:#fff;font-family:'Playfair Display',serif;font-size:17px;font-weight:600;letter-spacing:.04em}
.sc-collection__link{color:var(--gold);font-size:12px;font-weight:600}
.sc-collection:hover .sc-collection__link{color:#fff}

/* ---------- Why shop with us ---------- */
.sc-why{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.sc-why__item{text-align:center;padding:26px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.sc-why__ic{display:inline-flex;width:64px;height:64px;align-items:center;justify-content:center;border-radius:50%;background:var(--cream-2);color:var(--maroon);margin-bottom:14px}
.sc-why__item strong{display:block;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.sc-why__item span{font-size:13px;color:var(--muted)}

/* ---------- Reviews ---------- */
.sc-stars{color:var(--gold);display:inline-flex;gap:2px}
.sc-review{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow)}
.sc-review p{font-style:italic;color:#4a4040;margin:14px 0 18px}
.sc-review__author{display:flex;align-items:center;gap:12px;font-weight:600;font-size:13.5px;color:var(--maroon)}
.sc-review__avatar{width:44px;height:44px;border-radius:50%;flex:none}

/* ---------- Instagram ---------- */
.sc-instagram{text-align:center}
.sc-insta-handle{color:var(--gold-dark);font-weight:500;margin:0 0 26px}
.sc-insta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.sc-insta-item{aspect-ratio:1;border-radius:8px;display:flex;align-items:center;justify-content:center;position:relative}
.sc-insta-ic{position:relative;z-index:2;color:#fff;opacity:0;transition:.2s}
.sc-insta-item:hover .sc-insta-ic{opacity:1}
.sc-insta-item:hover::before{content:"";position:absolute;inset:0;background:rgba(45,10,20,.4);border-radius:8px;z-index:1}

/* ---------- Footer ---------- */
.sc-footer{background:var(--maroon-dark);color:#e9d9dd}
.sc-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr 1.2fr;gap:30px;padding:54px 22px 40px}
.sc-logo--light .sc-logo__name{color:#fff}
.sc-logo--light .sc-logo__sub{color:var(--gold)}
.sc-footer__brand p{font-size:13px;color:#d9c3c8;margin:16px 0}
.sc-social{display:flex;gap:10px}
.sc-social a{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;transition:.2s}
.sc-social a:hover{background:var(--gold)}
.sc-footer__col h4{color:#fff;font-size:14px;letter-spacing:.08em;margin-bottom:16px;font-family:'Poppins',sans-serif;font-weight:600}
.sc-footer__col li{margin-bottom:9px}
.sc-footer__col a{font-size:13px;color:#d9c3c8;transition:.2s}
.sc-footer__col a:hover{color:var(--gold)}
.sc-contact li{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:#d9c3c8}
.sc-contact .sc-ic{color:var(--gold);flex:none;margin-top:2px}
.sc-newsletter p{font-size:13px;color:#d9c3c8;margin:0 0 14px}
.sc-news-form{display:flex;background:rgba(255,255,255,.1);border-radius:6px;overflow:hidden}
.sc-news-form input{flex:1;border:none;background:transparent;padding:11px 13px;color:#fff;font-size:13px;outline:none}
.sc-news-form input::placeholder{color:#c7aeb4}
.sc-news-form button{border:none;background:var(--gold);color:#fff;padding:0 16px;font-size:18px}
.sc-footer__bar{border-top:1px solid rgba(255,255,255,.12)}
.sc-footer__bar-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;gap:14px;flex-wrap:wrap}
.sc-footer__bar p{margin:0;font-size:12.5px;color:#c7aeb4}
.sc-pay{display:flex;gap:8px;flex-wrap:wrap}
.sc-pay__chip{background:#fff;color:#333;font-size:10px;font-weight:700;letter-spacing:.04em;padding:5px 8px;border-radius:4px}

/* ---------- Page head ---------- */
.sc-pagehead{background:var(--cream);padding:34px 0;border-bottom:1px solid var(--line)}
.sc-pagehead h1{font-size:34px;color:var(--maroon)}
.sc-crumbs{font-size:13px;color:var(--muted);margin-top:6px}
.sc-crumbs a:hover{color:var(--maroon)}
.sc-crumbs span{margin:0 6px;color:var(--gold)}
.sc-pagehead__sub{margin-top:8px;font-size:16px;color:var(--muted);max-width:70ch}
.sc-pagehead--center{text-align:center}
.sc-pagehead--center .sc-pagehead__sub{margin-left:auto;margin-right:auto}
.sc-page--full{max-width:100%;width:100%}

/* ---------- Shop layout ---------- */
.sc-shop{display:grid;grid-template-columns:260px 1fr;gap:34px;padding-top:40px;padding-bottom:60px;align-items:start}
.sc-filters__title{font-size:16px;letter-spacing:.06em;color:var(--maroon);margin-bottom:16px;font-family:'Poppins',sans-serif;font-weight:600}
.sc-filter{border-bottom:1px solid var(--line);padding:14px 0}
.sc-filter__head{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;font-size:13px;font-weight:600;letter-spacing:.05em;color:var(--ink);padding:0}
.sc-filter__head .sc-ic{transition:.2s}
.sc-filter.is-collapsed .sc-filter__head .sc-ic{transform:rotate(-90deg)}
.sc-filter__body{margin-top:14px}
.sc-filter.is-collapsed .sc-filter__body{display:none}
.sc-filter__body li{margin-bottom:9px}
.sc-filter__body label{display:flex;align-items:center;gap:8px;font-size:13px;color:#514848;cursor:pointer}
.sc-filter__body label em{color:var(--muted);font-style:normal;margin-left:auto}
.sc-range{width:100%;accent-color:var(--maroon)}
.sc-price-row{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);margin-top:8px}
.sc-color-list{display:flex;gap:9px;flex-wrap:wrap}
.sc-color-dot{width:24px;height:24px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line);transition:.15s}
.sc-color-dot.is-active,.sc-color-dot:hover{box-shadow:0 0 0 2px var(--maroon)}
.sc-size-list{display:flex;gap:8px;flex-wrap:wrap}
.sc-size{min-width:38px;padding:7px 4px;border:1px solid var(--line);background:#fff;border-radius:5px;font-size:12.5px;transition:.15s}
.sc-size.is-active,.sc-size:hover{background:var(--maroon);color:#fff;border-color:var(--maroon)}
.sc-attribute-choice{cursor:pointer;display:inline-flex}
.sc-attribute-choice>input{height:1px;opacity:0;overflow:hidden;position:absolute;width:1px}
.sc-attribute-choice>input:checked+.sc-color-dot,.sc-attribute-choice>input:focus-visible+.sc-color-dot{box-shadow:0 0 0 2px var(--maroon)}
.sc-attribute-choice>input:checked+.sc-size,.sc-attribute-choice>input:focus-visible+.sc-size{background:var(--maroon);border-color:var(--maroon);color:#fff;outline:2px solid var(--gold);outline-offset:2px}
.sc-shop__bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:10px}
.sc-shop__count{font-size:13px;color:var(--muted)}
.sc-sort select{border:1px solid var(--line);border-radius:6px;padding:9px 12px;font-family:inherit;font-size:13px;background:#fff;color:var(--ink)}
.sc-pagination{display:flex;gap:8px;justify-content:center;margin-top:36px}
.sc-pagination button{width:40px;height:40px;border:1px solid var(--line);background:#fff;border-radius:6px;font-size:14px;transition:.15s}
.sc-pagination button.is-active,.sc-pagination button:hover{background:var(--maroon);color:#fff;border-color:var(--maroon)}
/* [shobana_shop] shortcode helpers */
.sc-filter-clear{display:inline-block;margin-top:12px;font-size:13px;color:var(--muted);text-decoration:underline}
.sc-filter-clear:hover{color:var(--maroon)}
.sc-filter-apply{margin-top:10px;cursor:pointer;background:var(--maroon);color:#fff;border:none;padding:10px 14px;border-radius:6px;font-size:13px;font-family:'Poppins',sans-serif}

/* ---------- Product page ---------- */
.sc-product{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding-top:44px;padding-bottom:20px;align-items:start}
.sc-gallery{display:grid;grid-template-columns:76px 1fr;gap:14px}
.sc-gallery__thumbs{display:flex;flex-direction:column;gap:12px}
.sc-thumb{aspect-ratio:3/4;border-radius:8px;border:2px solid transparent}
.sc-thumb.is-active{border-color:var(--maroon)}
.sc-gallery__main{aspect-ratio:3/4;border-radius:12px;position:relative;overflow:hidden;background:#f3ece1}
.sc-gallery__main img{width:100%;height:100%;object-fit:cover;display:block}
.sc-thumb{overflow:hidden;padding:0;cursor:pointer;background:#f3ece1}
.sc-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sc-summary__title{font-size:30px;color:var(--ink)}
.sc-summary__price{font-size:24px;color:var(--maroon);font-weight:600;margin:8px 0 14px}
.sc-summary__desc{color:#5c5252;margin:0 0 22px}
.sc-opt{margin-bottom:18px}
.sc-opt__label{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;margin-bottom:9px}
.sc-buyrow{display:flex;gap:14px;flex-wrap:wrap;align-items:stretch;margin:0 0 22px}
.sc-qtyrow{display:flex;align-items:center;gap:16px;margin:22px 0 18px}
.sc-qty__title{font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.sc-qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.sc-qty__label{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--muted);padding:0 10px}
.sc-qty button{width:38px;height:44px;border:none;background:var(--cream);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s}
.sc-qty button:hover{background:var(--maroon);color:#fff}
.sc-qty input{width:44px;height:44px;border:none;text-align:center;font-size:15px;font-family:inherit}
.sc-qty--sm button{width:30px;height:34px}
.sc-qty--sm input{width:36px;height:34px}
/* Attractive pill quantity selector (product page) */
.sc-qty--pill{border:1.5px solid var(--line);border-radius:40px;overflow:visible;padding:3px;background:#fff;box-shadow:0 3px 12px rgba(122,26,47,.08)}
.sc-qty--pill button{width:42px;height:42px;border-radius:50%;background:var(--cream);color:var(--maroon)}
.sc-qty--pill button:hover{background:var(--maroon);color:#fff;transform:translateY(-1px);box-shadow:0 4px 10px rgba(122,26,47,.25)}
.sc-qty--pill input{width:50px;height:42px;font-size:16px;font-weight:600;color:var(--maroon)}
/* Product action buttons — Add to Cart + Buy Now, side by side */
.sc-btn--buy{flex:1 1 0;min-width:150px;justify-content:center;display:inline-flex;align-items:center;gap:8px;padding:15px 22px;font-size:13.5px;letter-spacing:.09em;font-weight:600}
.sc-summary__meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}
.sc-wishlink{display:inline-flex;align-items:center;gap:6px;color:#5c5252}
.sc-wishlink:hover{color:var(--maroon)}
.sc-sharelink{display:inline-flex;align-items:center;gap:8px;color:#5c5252}
.sc-sharelink a{color:var(--maroon)}
.sc-trust{display:flex;gap:14px;margin-top:22px;flex-wrap:wrap}
.sc-trust__item{flex:1 1 140px;display:flex;align-items:center;gap:10px;background:var(--cream);border-radius:8px;padding:14px;font-size:12px;color:#5c5252}
.sc-trust__item .sc-ic{color:var(--maroon);flex:none}
.sc-ptabs{padding-top:20px;padding-bottom:60px}
.sc-ptabs__nav{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:22px;flex-wrap:wrap}
.sc-ptab{background:none;border:none;padding:12px 2px;font-size:13px;font-weight:600;letter-spacing:.05em;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}
.sc-ptab.is-active{color:var(--maroon);border-color:var(--maroon)}
.sc-ppanel{display:none}
.sc-ppanel.is-active{display:block}
.sc-specs{max-width:520px}
.sc-specs li{padding:9px 0;border-bottom:1px dashed var(--line);font-size:14px}
.sc-specs strong{display:inline-block;width:90px;color:var(--maroon)}

/* ---------- Cart ---------- */
.sc-cart{display:grid;grid-template-columns:1fr 320px;gap:34px;padding-top:44px;padding-bottom:60px;align-items:start}
.sc-carttable{width:100%;border-collapse:collapse}
.sc-carttable th{text-align:left;font-family:'Poppins',sans-serif;font-size:12px;letter-spacing:.06em;color:var(--muted);border-bottom:2px solid var(--line);padding:0 10px 14px}
.sc-carttable td{padding:18px 10px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle}
.sc-carttable__prod{display:flex;align-items:center;gap:12px}
.sc-cart-remove{border:none;background:none;color:var(--muted)}
.sc-cart-remove:hover{color:var(--maroon)}
.sc-cart-thumb{width:58px;height:72px;border-radius:6px;flex:none}
.sc-cart-name{font-weight:500}
.sc-cart__actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px;flex-wrap:wrap}
.sc-coupon{display:flex;gap:10px}
.sc-coupon input{border:1px solid var(--line);border-radius:6px;padding:11px 14px;font-family:inherit;font-size:13px}
.sc-totals{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px}
.sc-totals h3{font-size:16px;letter-spacing:.06em;color:var(--maroon);margin-bottom:18px;font-family:'Poppins',sans-serif;font-weight:600}
.sc-totals__row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.sc-totals__row em{display:block;font-style:normal;font-size:11px;color:var(--muted);text-align:right}
.sc-totals__row--total{font-weight:700;color:var(--maroon);font-size:17px;border-bottom:none}
.sc-totals .sc-btn{margin-top:18px}

/* ---------- Checkout ---------- */
.sc-checkout{display:grid;grid-template-columns:1fr 360px;gap:34px;padding-top:44px;padding-bottom:60px;align-items:start}
.sc-block-title{font-size:16px;letter-spacing:.06em;color:var(--maroon);margin:0 0 18px;font-family:'Poppins',sans-serif;font-weight:600}
.sc-checkout__left .sc-block-title:not(:first-child){margin-top:34px}
.sc-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sc-field{display:flex;flex-direction:column;gap:6px}
.sc-field--full{grid-column:1/-1}
.sc-field span{font-size:13px;font-weight:500}
.sc-field i{color:var(--maroon);font-style:normal}
.sc-field input{border:1px solid var(--line);border-radius:6px;padding:11px 13px;font-family:inherit;font-size:14px;outline:none;transition:.15s}
.sc-field input:focus{border-color:var(--maroon)}
.sc-radios{display:flex;flex-direction:column;gap:10px}
.sc-radio{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;font-size:14px;cursor:pointer}
.sc-radio:has(input:checked){border-color:var(--maroon);background:var(--cream)}
.sc-radio input{accent-color:var(--maroon)}
.sc-radio__main{font-weight:500}
.sc-radio__main em{display:block;font-style:normal;font-size:12px;color:var(--muted)}
.sc-radio__price{margin-left:auto;font-weight:600;color:var(--maroon)}
.sc-order{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px}
.sc-order h3{font-size:16px;letter-spacing:.06em;color:var(--maroon);margin-bottom:16px;font-family:'Poppins',sans-serif;font-weight:600}
.sc-order__head{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.05em;color:var(--muted);padding-bottom:12px;border-bottom:2px solid var(--line)}
.sc-order__row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px;gap:10px}
.sc-order__row--total{font-weight:700;color:var(--maroon);font-size:17px;border-bottom:none}
.sc-terms{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:#5c5252;margin:16px 0 18px}
.sc-terms input{accent-color:var(--maroon);margin-top:3px}
.sc-terms a{color:var(--maroon);text-decoration:underline}

/* ---------- Toast ---------- */
.sc-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:var(--maroon);color:#fff;padding:13px 22px;border-radius:8px;font-size:13.5px;box-shadow:0 10px 30px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:.3s;z-index:200}
.sc-toast.is-show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
  .sc-footer__grid{grid-template-columns:1fr 1fr 1fr}
  .sc-cats{grid-template-columns:repeat(3,1fr)}
  .sc-insta-grid{grid-template-columns:repeat(6,1fr)}
}
@media(max-width:900px){
  .sc-burger{display:flex}
  .sc-nav{position:fixed;top:0;left:0;bottom:0;width:80%;max-width:320px;background:#fff;padding:80px 26px 26px;transform:translateX(-105%);transition:.3s;box-shadow:0 0 40px rgba(0,0,0,.2);z-index:60;margin-left:0}
  .sc-nav.is-open{transform:translateX(0)}
  .sc-nav ul{flex-direction:column;gap:4px}
  .sc-nav a{display:block;padding:11px 0;border-bottom:1px solid var(--line)}
  .sc-logo{margin-right:auto}
  body.sc-menu-open::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:55}
  .sc-shop{grid-template-columns:1fr}
  .sc-product{grid-template-columns:1fr;gap:28px}
  .sc-cart{grid-template-columns:1fr}
  .sc-checkout{grid-template-columns:1fr}
  .sc-grid--4{grid-template-columns:repeat(3,1fr)}
  .sc-collections{grid-template-columns:repeat(2,1fr)}
  .sc-why{grid-template-columns:repeat(2,1fr)}
  .sc-features__row{gap:16px}
  .sc-feature{flex-basis:45%;border-right:none}
  .sc-festive__big{font-size:52px}
}
@media(max-width:640px){
  .sc-grid--4,.sc-grid--3{grid-template-columns:repeat(2,1fr)}
  .sc-cats{grid-template-columns:repeat(2,1fr)}
  .sc-insta-grid{grid-template-columns:repeat(3,1fr)}
  .sc-fields{grid-template-columns:1fr}
  .sc-hero__inner{min-height:auto}
  .sc-hero::before{width:100%;clip-path:none;opacity:.14}
  .sc-heading{font-size:24px}
  .sc-nav ul{gap:0}
  .sc-gallery{grid-template-columns:1fr}
  .sc-gallery__thumbs{flex-direction:row;order:2}
  .sc-carttable thead{display:none}
  .sc-carttable,.sc-carttable tbody,.sc-carttable tr,.sc-carttable td{display:block;width:100%}
  .sc-carttable tr{border:1px solid var(--line);border-radius:8px;margin-bottom:16px;padding:8px}
  .sc-carttable td{border:none;padding:8px 10px;display:flex;justify-content:space-between;align-items:center}
  .sc-carttable td[data-label]::before{content:attr(data-label);font-weight:600;color:var(--muted);font-size:12px}
  .sc-carttable__prod{justify-content:flex-start}
  .sc-viewall{position:static;display:inline-block;margin-top:10px}
  .sc-tabs-row{flex-direction:column}
}

/* ===================================================================
   v1.1.0 additions: menus, WooCommerce hooks, page templates
   =================================================================== */

/* Nav menu active states (works for both custom menus and fallback) */
.sc-nav .current-menu-item > a,
.sc-nav .current_page_item > a,
.sc-nav a.is-active{color:var(--gold)}
.sc-nav .sc-menu{display:flex;list-style:none;gap:26px;margin:0;padding:0;align-items:center}
.sc-nav .sub-menu{list-style:none;margin:0;padding:8px 0;position:absolute;background:#fff;min-width:190px;box-shadow:0 12px 28px rgba(94,18,35,.14);border-radius:10px;display:none;z-index:60}
.sc-nav .menu-item-has-children{position:relative}
.sc-nav .menu-item-has-children:hover > .sub-menu{display:block}
.sc-nav .sub-menu li a{display:block;padding:8px 18px;color:#2e2e2e}
.sc-nav .sub-menu li a:hover{background:var(--cream,#faf5ef);color:var(--maroon)}

/* Custom logo */
.sc-logo--custom img{max-height:56px;width:auto;display:block}

/* Header search bar */
.sc-searchbar{border-top:1px solid #eee;background:#fff;padding:14px 0}
.sc-searchbar[hidden]{display:none}
.sc-searchform{display:flex;gap:8px;max-width:560px;margin:0 auto}
.sc-searchform input[type=search]{flex:1;border:1px solid #e0d3bf;border-radius:30px;padding:11px 18px;font:inherit}
.sc-searchform button{background:var(--maroon);color:#fff;border:none;border-radius:50%;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}

/* Image-based product cards (real WooCommerce products on home) */
.sc-card__media--img{display:block;position:relative;overflow:hidden;background:#f3ece1}
.sc-card__media--img img{display:block;width:100%;height:auto;transition:transform .4s}
.sc-card:hover .sc-card__media--img img{transform:scale(1.05)}
.sc-card__imglink{display:block;line-height:0}
.sc-badge--sale{background:var(--maroon)}

/* Generic page / article */
.sc-page{padding:36px 0 60px}
.sc-article__thumb img{width:100%;height:auto;border-radius:14px;margin-bottom:22px}
.sc-article__body{line-height:1.8;color:#3a3a3a;font-size:16px}
.sc-article__body h2,.sc-article__body h3{font-family:'Playfair Display',serif;color:var(--maroon);margin-top:1.4em}
.sc-article__body a{color:var(--maroon);text-decoration:underline}
.sc-article__meta,.sc-post__meta{color:#8a7f70;font-size:13px;letter-spacing:.04em;margin-bottom:10px}
.sc-post__title{font-family:'Playfair Display',serif;font-size:20px;margin:6px 0}
.sc-post__title a{color:#2e2e2e}
.sc-post__thumb img{width:100%;height:auto;border-radius:12px}
.sc-readmore{color:var(--maroon);font-weight:600;font-size:13px;letter-spacing:.05em}
.sc-tags{margin-top:18px;font-size:13px;color:#8a7f70}

/* Pagination links (WP) */
.sc-pagination .page-numbers{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;border:1px solid #e0d3bf;border-radius:8px;color:var(--maroon);text-decoration:none;margin:0 3px;padding:0 10px}
.sc-pagination .page-numbers.current{background:var(--maroon);color:#fff;border-color:var(--maroon)}

/* Comments */
.sc-comments{margin-top:40px;border-top:1px solid #eadfce;padding-top:26px}
.sc-comments__title{font-family:'Playfair Display',serif;color:var(--maroon)}
.sc-commentlist{list-style:none;padding:0}
.sc-commentlist .comment-body{padding:14px 0;border-bottom:1px solid #f0e8db}

/* 404 */
.sc-404{text-align:center;padding:70px 20px}
.sc-404__code{font-family:'Playfair Display',serif;font-size:110px;line-height:1;color:var(--maroon);margin:0}
.sc-404__title{font-family:'Playfair Display',serif;color:#2e2e2e;margin:6px 0 12px}
.sc-404__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:22px 0}
.sc-404__search{max-width:460px;margin:20px auto 0}

/* Shop sidebar widgets */
.sc-widget{margin-bottom:26px}
.sc-widget__title{font-family:'Playfair Display',serif;color:var(--maroon);font-size:16px;margin-bottom:10px}

@media(max-width:768px){
	.sc-nav .sc-menu{flex-direction:column;align-items:flex-start;gap:0}
	.sc-nav .sub-menu{position:static;box-shadow:none;display:block;padding-left:14px}
}

/* ============================================================
   Category-wise home + Unique mobile products view (v1.4.0)
   ============================================================ */

/* Real category tiles with photos */
.sc-cat__img--photo{background-size:cover;background-position:center;background-repeat:no-repeat}

/* Category-wise product showcase */
.sc-catshow__block{margin-bottom:44px}
.sc-catshow__block:last-child{margin-bottom:0}
.sc-catshow__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:10px}
.sc-heading--left{text-align:left;margin:0;padding-bottom:0;font-size:22px}
.sc-heading--left::after{left:0;transform:none;bottom:-11px;width:48px}
.sc-viewall--static{position:static}

/* ---------- UNIQUE MOBILE PRODUCTS VIEW ---------- */
/* On phones, product rows become a snap-scroll carousel with a peek of the
   next card, hidden scrollbar and a gold progress hint. Desktop stays a grid. */
.sc-swipe{scroll-behavior:smooth}
@media(max-width:640px){
  .sc-swipe{
    display:flex;flex-wrap:nowrap;gap:14px;
    overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
    padding:2px 22px 16px;margin-left:-22px;margin-right:-22px;
    scrollbar-width:none;
  }
  .sc-swipe::-webkit-scrollbar{height:0;display:none}
  .sc-swipe>*{
    scroll-snap-align:start;flex:0 0 74%;max-width:74%;
  }
  .sc-swipe .sc-card{box-shadow:0 8px 22px rgba(90,20,40,.10)}
  .sc-swipe .sc-card__media,
  .sc-swipe .sc-card__media--img{aspect-ratio:3/4}
  /* Reveal the add-to-cart affordance on touch (no hover on mobile) */
  .sc-swipe .sc-card__add{opacity:1;transform:none}
  /* subtle “swipe” hint bar under each carousel */
  .sc-catshow__block .sc-swipe,
  section .sc-swipe{position:relative}
}
/* Extra-small phones: show a bit more of the next card */
@media(max-width:400px){
  .sc-swipe>*{flex-basis:82%;max-width:82%}
}

/* Featured Collections — custom image tiles (v1.7.0) */
.sc-collection--photo{background-size:cover;background-position:center;background-repeat:no-repeat}

/* Header action icons — guarantee order: search, account, then cart (v1.8.0) */
/* v1.9.1: renamed header cart icon class to .sc-act-cart so it no longer
   inherits the cart PAGE grid rule (.sc-cart), which broke header alignment
   and made the cart icon overlap the nav/Contact link. */
.sc-actions{display:flex;align-items:center;gap:6px;flex:none}
.sc-actions .sc-act-search{order:1}
.sc-actions .sc-act-account{order:2}
.sc-actions .sc-act-cart{order:3}
.sc-actions .sc-iconbtn{flex:none}

/* Collection page shortcode note */
.sc-note{background:var(--cream);border:1px dashed var(--line);border-radius:var(--radius);padding:22px;text-align:center;color:var(--muted);font-size:14px;margin:8px 0}

/* ============================================================
   v1.11.0 — Hero & Festive background images + photo-mode buttons
   ============================================================ */
.sc-hero--photo{background-size:cover !important;background-position:center;background-repeat:no-repeat}
.sc-hero--photo::before{width:100%;clip-path:none;opacity:1;background:linear-gradient(90deg,rgba(40,8,16,.72) 0%,rgba(40,8,16,.38) 55%,rgba(40,8,16,.18) 100%)}
.sc-hero--photo::after{display:none}
.sc-hero--photo .sc-hero__text h1,.sc-hero--photo .sc-hero__text p{color:#fff}
.sc-hero--photo .sc-btn--ghost{color:#fff;border-color:#fff}
.sc-hero--photo .sc-btn--ghost:hover{background:#fff;color:var(--maroon)}
.sc-festive--photo{background-size:cover !important;background-position:center;background-repeat:no-repeat;position:relative}
.sc-festive--photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,8,16,.72),rgba(40,8,16,.22));z-index:1}
.sc-festive--photo .sc-festive__text{position:relative;z-index:2}
.sc-festive--photo .sc-festive__label,.sc-festive--photo .sc-festive__upto,.sc-festive--photo .sc-festive__big,.sc-festive--photo .sc-festive__sub{color:#fff}

/* ===== v1.21.0: Customer Love + Instagram customization support ===== */
.sc-grid--1{grid-template-columns:1fr}
.sc-grid--2{grid-template-columns:repeat(2,1fr)}
.sc-star--off{opacity:.28}
img.sc-review__avatar--img{object-fit:cover;border-radius:50%}
.sc-review__role{display:block;font-style:normal;font-weight:400;font-size:11.5px;color:var(--muted);margin-top:2px}
.sc-insta-item--img{overflow:hidden}
.sc-insta-item--img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}
.sc-insta-item--img .sc-insta-ic{color:#fff}
@media(max-width:600px){.sc-grid--2{grid-template-columns:1fr}}


/* =====================================================================
   v1.26.0 - UI/UX REFINEMENT PASS
   Global tokens, accessibility, focus states, footer polish.
   ===================================================================== */
:root{
  --focus:#1d5fbf;
  --ok:#1f5c3d;
  --warn:#8a6d0b;
  --err:#a3323f;
  --ok-bg:#e7f2ec;
  --warn-bg:#fbf3da;
  --err-bg:#f7e3e6;
  --radius-sm:8px;
  --radius-lg:14px;
  --shadow-sm:0 4px 16px rgba(94,18,35,.05);
  --shadow-md:0 8px 24px rgba(94,18,35,.09);
  --tap:44px;
  --space-1:6px;
  --space-2:12px;
  --space-3:18px;
  --space-4:26px;
  --space-5:40px;
}

/* ---- overflow / media safety ---- */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,iframe,table{max-width:100%}
img,video{height:auto}
*,*::before,*::after{min-width:0}

/* ---- screen-reader utility (was missing) ---- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.screen-reader-text:focus{position:fixed!important;top:12px;left:12px;width:auto;height:auto;clip:auto;clip-path:none;background:var(--white);color:var(--maroon);padding:12px 18px;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100000}

/* ---- visible focus for keyboard users everywhere ---- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
	outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}
.sc-footer a:focus-visible,.sc-header a:focus-visible{outline-color:var(--gold)}

/* ---- disabled + busy states ---- */
button[disabled],.button[disabled],input[disabled],select[disabled],
.sc-btn[disabled],.sc-btn.is-disabled,a.sc-btn[aria-disabled=true]{
	opacity:.55;cursor:not-allowed;box-shadow:none;filter:grayscale(.25)}
button[disabled]:hover,.sc-btn[disabled]:hover{transform:none}

/* ---- contrast: never brand-on-brand text ---- */
.sc-btn,.button,button.button,input[type=submit].button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
	min-height:var(--tap);display:inline-flex;align-items:center;justify-content:center;gap:8px;
	border-radius:var(--radius-sm);font-weight:600;letter-spacing:.02em;line-height:1.2;text-decoration:none}
.sc-btn--primary,.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce input.button.alt,.woocommerce #respond input#submit.alt{
	background:var(--maroon);color:var(--white);border:1px solid var(--maroon)}
.sc-btn--primary:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{background:var(--maroon-dark);color:var(--white);border-color:var(--maroon-dark)}
.sc-btn--gold{background:var(--gold);color:var(--ink);border:1px solid var(--gold-dark)}
.sc-btn--gold:hover{background:var(--gold-dark);color:var(--ink)}
.sc-btn--ghost{background:transparent;color:var(--maroon);border:1px solid var(--maroon)}
.sc-btn--ghost:hover{background:var(--maroon);color:var(--white)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
	background:var(--cream-2);color:var(--maroon);border:1px solid var(--line)}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{
	background:var(--maroon);color:var(--white);border-color:var(--maroon)}

/* ---- WooCommerce notices: readable, on-brand, never black ---- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{
	border-radius:var(--radius-sm);border:1px solid var(--line);border-top-width:3px;
	background:var(--cream);color:var(--ink);padding:14px 18px;list-style:none}
.woocommerce-message{border-top-color:var(--ok);background:var(--ok-bg);color:var(--ok)}
.woocommerce-info{border-top-color:var(--maroon);background:var(--cream-2);color:var(--ink)}
.woocommerce-error{border-top-color:var(--err);background:var(--err-bg);color:var(--err)}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{color:inherit}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:var(--err);box-shadow:0 0 0 3px rgba(163,50,63,.12)}
.woocommerce form .form-row.woocommerce-validated input.input-text{border-color:var(--ok)}
.woocommerce form .form-row label{font-weight:600;font-size:13.5px;color:var(--ink);margin-bottom:5px;display:block}
.required{color:var(--err);text-decoration:none}

/* =====================  FOOTER  ===================== */
.sc-footer{background:var(--maroon-dark);color:#efe2e5}
.sc-footer__grid{gap:34px;padding:var(--space-5) 22px var(--space-4)}

/* logo alignment - was inheriting inline/centre behaviour */
.sc-footer__brand{display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.sc-footer__brand .sc-logo{display:inline-flex;flex-direction:column;align-items:flex-start;
	text-align:left;line-height:1.05;text-decoration:none;margin:0}
.sc-footer__brand .sc-logo__name{font-size:23px;letter-spacing:.16em;color:var(--white);font-weight:600}
.sc-footer__brand .sc-logo__sub{font-size:10.5px;letter-spacing:.42em;color:var(--gold);margin-top:3px}
.sc-footer__brand .sc-logo--custom img{max-height:54px;width:auto;display:block}
.sc-footer__brand p{font-size:13.5px;line-height:1.75;color:#e2ccd1;margin:14px 0 18px;max-width:34ch}

.sc-footer__col h4{font-size:12.5px;letter-spacing:.12em;margin-bottom:var(--space-3);color:var(--white)}
.sc-footer__col ul{list-style:none;margin:0;padding:0}
.sc-footer__col li{margin-bottom:10px;line-height:1.5}
.sc-footer__col a{font-size:13.5px;color:#e2ccd1;text-decoration:none;display:inline-block;padding:2px 0}
.sc-footer__col a:hover,.sc-footer__col a:focus-visible{color:var(--gold);text-decoration:underline;text-underline-offset:3px}

.sc-contact{list-style:none;margin:0;padding:0}
.sc-contact li{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;font-size:13.5px;line-height:1.6;color:#e2ccd1}
.sc-contact li .sc-ic{flex:0 0 auto;margin-top:2px;color:var(--gold)}

.sc-social{display:flex;gap:10px;flex-wrap:wrap}
.sc-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.12);
	display:inline-flex;align-items:center;justify-content:center;color:var(--white);transition:background .18s ease,transform .18s ease}
.sc-social a:hover{background:var(--gold);color:var(--ink);transform:translateY(-2px)}

.sc-newsletter p{font-size:13.5px;line-height:1.7;color:#e2ccd1}
.sc-news-form{background:rgba(255,255,255,.12);border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.18);overflow:hidden}
.sc-news-form input{padding:12px 14px;font-size:13.5px;min-height:var(--tap);color:var(--white)}
.sc-news-form input::placeholder{color:#d3b9bf}
.sc-news-form button{background:var(--gold);color:var(--ink);min-width:52px;min-height:var(--tap);
	font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s ease}
.sc-news-form button:hover{background:var(--gold-dark)}
.sc-news-status{margin:0 0 10px!important;padding:8px 10px;border-radius:6px;background:rgba(255,255,255,.1)}
.sc-news-status--success{color:#d8f5df!important}
.sc-news-status--invalid,.sc-news-status--error{color:#ffd9de!important}
.sc-empty--wide{grid-column:1/-1;width:100%}

/* payment marks - uniform tiles, equal optical weight */
.sc-footer__bar-inner{padding:var(--space-3) 22px}
.sc-footer__bar p{font-size:12.5px;color:#d3b9bf}
.sc-pay{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.sc-pay__chip{display:inline-flex;align-items:center;justify-content:center;
	width:46px;height:29px;padding:0;background:var(--white);border-radius:5px;
	box-shadow:0 1px 3px rgba(0,0,0,.22);overflow:hidden;flex:0 0 auto}
.sc-pay__chip svg{width:100%;height:100%;display:block}

@media(max-width:900px){
	.sc-footer__grid{grid-template-columns:1fr 1fr;gap:28px;padding:var(--space-4) 20px}
	.sc-footer__brand{grid-column:1/-1}
	.sc-newsletter{grid-column:1/-1}
}
@media(max-width:560px){
	.sc-footer__grid{grid-template-columns:1fr;gap:24px;text-align:left}
	.sc-footer__brand p{max-width:none}
	.sc-footer__bar-inner{flex-direction:column;align-items:flex-start;gap:12px}
	.sc-pay{justify-content:flex-start}
}

/* =====================  ACCOUNT: LOGIN / REGISTER  ===================== */
.sc-auth{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin:6px 0 40px}
.sc-auth--single{grid-template-columns:minmax(0,470px);justify-content:center}
.woocommerce .sc-auth form.login,.woocommerce .sc-auth form.register{
	background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);
	padding:26px 26px 28px;box-shadow:var(--shadow-sm);margin:0;width:auto;float:none}
.sc-auth__head{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.sc-auth__head h2{margin:0 0 4px;color:var(--maroon);font-size:20px}
.sc-auth__head p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.6}
.woocommerce .sc-auth .form-row{padding:0;margin:0 0 14px;display:block}
.woocommerce .sc-auth input.input-text,.woocommerce .sc-auth input[type=password]{
	width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:11px 13px;
	font-size:14.5px;min-height:var(--tap);background:var(--white);color:var(--ink)}
.woocommerce .sc-auth input.input-text:focus{border-color:var(--maroon);box-shadow:0 0 0 3px rgba(122,26,47,.12);outline:none}
.woocommerce .sc-auth .woocommerce-form-login__rememberme{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);margin:0 0 16px}
.woocommerce .sc-auth button.button{width:100%;background:var(--maroon);color:var(--white);border-color:var(--maroon)}
.woocommerce .sc-auth button.button:hover{background:var(--maroon-dark);color:var(--white)}
.sc-auth__lost{display:block;margin-top:14px;font-size:13.5px;color:var(--maroon);text-align:center}
.sc-auth__perks{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:9px}
.sc-auth__perks li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;color:var(--ink);line-height:1.55}
.sc-auth__perks .sc-ic{flex:0 0 auto;color:var(--ok);margin-top:1px}
@media(max-width:820px){
	.sc-auth{grid-template-columns:1fr}
	.sc-auth--single{grid-template-columns:1fr}
}

/* password strength + lost password page */
.woocommerce-password-strength{border-radius:6px;padding:7px 11px;font-size:12.5px;font-weight:600;margin-top:8px}
.woocommerce-password-strength.strong{background:var(--ok-bg);color:var(--ok)}
.woocommerce-password-strength.good{background:#e8ecf6;color:#243b6b}
.woocommerce-password-strength.short,.woocommerce-password-strength.bad{background:var(--err-bg);color:var(--err)}
.woocommerce-password-hint{display:block;margin-top:6px;font-size:12.5px;color:var(--muted);line-height:1.55}
.woocommerce .sc-page form.lost_reset_password{background:var(--white);border:1px solid var(--line);
	border-radius:var(--radius-lg);padding:26px;box-shadow:var(--shadow-sm);max-width:470px;margin-inline:auto}

/* ---- account: tighten oversized native bits ---- */
.woocommerce .sc-acct__content .woocommerce-Button,
.woocommerce .sc-acct__content button.button{min-height:var(--tap)}
.woocommerce .sc-acct__content .woocommerce-orders-table__cell-order-actions .button{margin:2px 4px 2px 0}
.woocommerce .sc-acct__content .woocommerce-Addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.woocommerce .sc-acct__content .woocommerce-Addresses .woocommerce-Address{width:auto;float:none;padding:16px 18px}
.woocommerce .sc-acct__content fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px 18px;margin:18px 0 0}
.woocommerce .sc-acct__content fieldset legend{padding:0 8px;font-weight:600;color:var(--maroon);font-size:14px}
.woocommerce .sc-acct__content .woocommerce-info a.button{margin-left:10px}
@media(max-width:700px){
	.woocommerce .sc-acct__content .woocommerce-Addresses{grid-template-columns:1fr}
}

/* ---- generic empty state ---- */
.sc-empty{text-align:center;padding:36px 18px;background:var(--cream);border:1px dashed var(--line);border-radius:var(--radius-lg)}
.sc-empty p{color:var(--muted);margin:0 0 16px}

/* ---- touch targets on small screens ---- */
@media(max-width:768px){
	.sc-header a,.sc-footer a,.sc-acct__menu a{min-height:40px}
	.sc-btn,.button{width:auto}
}

/* ---- respect reduced motion ---- */
@media(prefers-reduced-motion:reduce){
	*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}


/* ===== v1.30.0 - PRODUCT CARD AS A PADDED BORDERED BOX =====
   The card had a border, but the image and text sat flush against it. Content
   is now inset with even padding on all four sides, and the image gets its own
   rounded corners inside that frame. Applies everywhere the card is used:
   Shop, category and tag archives, collections, New Arrivals, related
   products, up-sells and the home page strips. */
.sc-card{
	background:var(--white);
	border:1px solid var(--line);
	border-radius:var(--radius-lg);
	padding:12px;
	overflow:visible;
	box-shadow:var(--shadow-sm);
	transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.sc-card:hover{border-color:var(--maroon);box-shadow:var(--shadow-md);transform:translateY(-3px)}

/* image sits inside the padded frame with its own radius */
.sc-card__media,
.sc-card__media--img{border-radius:var(--radius-sm);overflow:hidden}
.sc-card__imglink{border-radius:var(--radius-sm);overflow:hidden}

/* badges and action buttons inset from the image edge, not the card edge */
.sc-card__wish{top:8px;right:8px}
.sc-card__add{bottom:8px;right:8px}
.sc-card .sc-badge{top:8px;left:8px}

/* card text: horizontal padding now comes from the card itself */
.sc-card__body{padding:14px 4px 4px;text-align:center;display:flex;flex-direction:column;gap:6px}
.sc-card__title{margin:0;line-height:1.45}
.sc-card__title a{color:var(--ink);text-decoration:none}
.sc-card__title a:hover{color:var(--maroon);text-decoration:underline;text-underline-offset:3px}
.sc-card__price{margin:0;line-height:1.3}
.sc-card__body .sc-swatches{justify-content:center;margin-top:2px}

@media(max-width:600px){
	.sc-card{padding:10px;border-radius:var(--radius-sm)}
	.sc-card__body{padding:12px 2px 2px}
}


/* ===== v1.31.0 - MEDIUM PRODUCT CARD SIZE =====
   Cards were stretching to fill their grid column (about 380px wide and 500px
   tall in a 3-up related row on a 1200px container). Cards are now capped at a
   medium width so they stay a comfortable size no matter how few products are
   in the row, and rows with only one or two products pack from the left
   instead of stretching. */
.sc-card{width:100%;max-width:300px;margin-inline:auto}

/* medium image frame: slightly shorter than the old 3/4 crop */
.sc-card__media,
.sc-card__media--img{aspect-ratio:4/5}

/* related products, up-sells and New Arrivals: fixed medium columns that pack
   left, so a two-product store does not render two giant cards */
.sc-related .sc-grid{grid-template-columns:repeat(auto-fill,minmax(220px,260px));justify-content:start}
.sc-related .sc-card{max-width:260px;margin-inline:0}

@media(max-width:900px){
	.sc-related .sc-grid{grid-template-columns:repeat(auto-fill,minmax(180px,230px))}
}
@media(max-width:600px){
	/* on phones let the card use the full column width again */
	.sc-card{max-width:none}
	.sc-related .sc-grid{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}
	.sc-related .sc-card{max-width:none}
}


/* ===== v1.32.0 - SEARCH RESULTS SHOW PRODUCT CARDS ===== */
.sc-searchpage__form{margin:0 0 34px}
.sc-searchpage .sc-searchform{margin:0}
.sc-searchsec{margin:0 0 46px}
.sc-searchsec__title{margin:0 0 20px;color:var(--maroon);font-size:20px;line-height:1.3;text-transform:uppercase;letter-spacing:.06em}
.sc-searchlist{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sc-searchitem{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px 18px}
.sc-searchitem__link{display:flex;align-items:baseline;justify-content:space-between;gap:14px;text-decoration:none}
.sc-searchitem__title{color:var(--maroon);font-weight:600;font-size:16px}
.sc-searchitem__link:hover .sc-searchitem__title{text-decoration:underline;text-underline-offset:3px}
.sc-searchitem__type{flex:none;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:3px 10px}
.sc-searchitem__text{margin:8px 0 0;color:var(--ink);opacity:.8;font-size:14px;line-height:1.6}
@media(max-width:600px){
	.sc-searchsec__title{font-size:17px}
	.sc-searchitem__link{flex-direction:column;gap:6px}
}


/* ===== v1.33.0 - RESPONSIVE FIXED-WIDTH CONTAINER (BOOTSTRAP 5 SPEC) =====
   Every page now uses the Bootstrap 5 container system and nothing else: the
   same --bs-gutter-x of 1.5rem (12px each side) and the same fixed max-widths
   at the five Bootstrap breakpoints - 540 / 720 / 960 / 1140 / 1320px - going
   fluid only below 576px.

   Bootstrap is NOT loaded from a CDN: its full stylesheet would override the
   theme buttons, forms, tables and WooCommerce layouts. Only the container
   spec is implemented, byte-for-byte, so no other Bootstrap rule can conflict.

   .sc-container is aliased to .container, and the real Bootstrap class names
   (.container, .container-fluid, .container-sm/md/lg/xl/xxl) also work, so
   Bootstrap markup can be pasted into any page or shortcode.

   This drives every page: header, footer, home sections, Shop, product, cart,
   checkout, My Account, search, category and collection archives, 404, blog
   and static pages - they all wrap in .sc-container. */
:root{
	--bs-gutter-x:1.5rem;
	--maxw:1140px;   /* kept in sync with the Bootstrap lg container */
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl,
.sc-container{
	width:100%;
	padding-right:calc(var(--bs-gutter-x) * .5);
	padding-left:calc(var(--bs-gutter-x) * .5);
	margin-right:auto;
	margin-left:auto}

@media(min-width:576px){
	.container,.container-sm,.sc-container{max-width:540px}
}
@media(min-width:768px){
	.container,.container-sm,.container-md,.sc-container{max-width:720px}
}
@media(min-width:992px){
	.container,.container-sm,.container-md,.container-lg,.sc-container{max-width:960px}
}
@media(min-width:1200px){
	.container,.container-sm,.container-md,.container-lg,.container-xl,.sc-container{max-width:1140px}
}
@media(min-width:1400px){
	.container,.container-sm,.container-md,.container-lg,.container-xl,.container-xxl,.sc-container{max-width:1320px}
}

/* container-fluid always spans the viewport, per Bootstrap */
.container-fluid{max-width:100%}

/* a container nested inside another must not double the gutter */
.sc-container .sc-container,
.container .container{max-width:none;padding-left:0;padding-right:0}

/* pages opted into full width behave as container-xxl so text is still bounded */
.sc-page--full{width:100%;max-width:1320px;margin-inline:auto}

/* full-bleed section backgrounds stay edge to edge; only their inner
   .sc-container is constrained, which is already the markup everywhere */
.sc-section,.sc-pagehead,.sc-hero,.sc-features,.sc-footer{width:100%}


/* ===== v1.35.0 - RESPONSIVE CONTAINER ON EVERY PAGE BODY =====
   <main class="sc-main"> wraps the body of every page (opened in header.php,
   closed in footer.php). Until now the container was applied per template, so
   anything printed straight into the body - block editor output, plugin
   markup, WooCommerce notices, a shortcode dropped on a blank page - escaped
   to the viewport edge.

   Every direct child of .sc-main now inherits the Bootstrap 5 container
   (540 / 720 / 960 / 1140 / 1320px, 1.5rem gutter) unless it is already a
   container or an intentionally full-bleed section: heroes, cream sections,
   page heads, the search bar and .alignfull blocks stay edge to edge while
   their inner container keeps the text aligned. */
.sc-main{width:100%;min-width:0}

.sc-main > *:not(.sc-container):not(.container):not(.container-fluid):not(.sc-section):not(.sc-hero):not(.sc-features):not(.sc-pagehead):not(.sc-footer):not(.sc-searchbar):not(.sc-reviews-sec):not(.sc-instagram):not(.sc-catshow):not(.alignfull):not(.sc-full){
	width:100%;
	margin-left:auto;
	margin-right:auto;
	padding-left:calc(var(--bs-gutter-x, 1.5rem) * .5);
	padding-right:calc(var(--bs-gutter-x, 1.5rem) * .5)}

@media(min-width:576px){
	.sc-main > *:not(.sc-container):not(.container):not(.container-fluid):not(.sc-section):not(.sc-hero):not(.sc-features):not(.sc-pagehead):not(.sc-footer):not(.sc-searchbar):not(.sc-reviews-sec):not(.sc-instagram):not(.sc-catshow):not(.alignfull):not(.sc-full){max-width:540px}
}
@media(min-width:768px){
	.sc-main > *:not(.sc-container):not(.container):not(.container-fluid):not(.sc-section):not(.sc-hero):not(.sc-features):not(.sc-pagehead):not(.sc-footer):not(.sc-searchbar):not(.sc-reviews-sec):not(.sc-instagram):not(.sc-catshow):not(.alignfull):not(.sc-full){max-width:720px}
}
@media(min-width:992px){
	.sc-main > *:not(.sc-container):not(.container):not(.container-fluid):not(.sc-section):not(.sc-hero):not(.sc-features):not(.sc-pagehead):not(.sc-footer):not(.sc-searchbar):not(.sc-reviews-sec):not(.sc-instagram):not(.sc-catshow):not(.alignfull):not(.sc-full){max-width:960px}
}
@media(min-width:1200px){
	.sc-main > *:not(.sc-container):not(.container):not(.container-fluid):not(.sc-section):not(.sc-hero):not(.sc-features):not(.sc-pagehead):not(.sc-footer):not(.sc-searchbar):not(.sc-reviews-sec):not(.sc-instagram):not(.sc-catshow):not(.alignfull):not(.sc-full){max-width:1140px}
}
@media(min-width:1400px){
	.sc-main > *:not(.sc-container):not(.container):not(.container-fluid):not(.sc-section):not(.sc-hero):not(.sc-features):not(.sc-pagehead):not(.sc-footer):not(.sc-searchbar):not(.sc-reviews-sec):not(.sc-instagram):not(.sc-catshow):not(.alignfull):not(.sc-full){max-width:1320px}
}

/* full-bleed sections keep their own width; their inner container aligns text */
.sc-main > .sc-section,
.sc-main > .sc-hero,
.sc-main > .sc-features,
.sc-main > .sc-pagehead,
.sc-main > .sc-searchbar{width:100%;max-width:none;padding-left:0;padding-right:0}

/* block editor alignment support inside the container */
.sc-main .alignfull{width:100%;max-width:100%;margin-left:0;margin-right:0}
.sc-main .alignwide{width:100%;max-width:1320px;margin-left:auto;margin-right:auto}
.sc-main .aligncenter{margin-left:auto;margin-right:auto}

/* WooCommerce output printed straight into the body still lines up */
.sc-main > .woocommerce,
.sc-main > .woocommerce-notices-wrapper{min-width:0}
