:root{
  --bg:#ffffff;
  --paper:#ffffff;
  --ink:#0b0b0b;
  --muted:#666666;
  --gold:#d4af37;
  --gold-dark:#9b7a13;
  --black:#050505;
  --line:#e7dfc6;
  --danger:#b91c1c;
  --success:#16834a;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--ink)}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:1000;background:#050505;color:#fff;border-bottom:3px solid var(--gold);box-shadow:0 10px 28px rgba(0,0,0,.22)}
.header-inner{width:100%;padding:14px 6vw;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:23px;letter-spacing:.2px;color:#fff;white-space:nowrap}
.brand-mark{display:inline-grid;place-items:center;width:48px;height:48px;border:2px solid var(--gold);border-radius:50%;font-family:Georgia,serif;color:var(--gold);background:#000;box-shadow:0 0 0 4px rgba(212,175,55,.12)}
.nav-toggle{display:none;border:1px solid var(--gold);background:#000;color:var(--gold);border-radius:12px;font-size:24px;padding:6px 10px}
.main-nav{display:flex;align-items:center;justify-content:flex-end;flex:1}
.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:nowrap}
.nav-list>li{position:relative;display:block}
.nav-list>li>a{display:flex;align-items:center;gap:5px;min-height:42px;padding:10px 13px;border-radius:999px;font-weight:800;font-size:14px;color:#fff;white-space:nowrap;line-height:1.1}
.nav-list>li>a:hover,.nav-list>li:hover>a{background:var(--gold);color:#000}
.nav-list>li>a.login-link{border:1px solid var(--gold);color:var(--gold)}
.nav-list>li>a.login-link:hover{background:var(--gold);color:#000}
.chev{font-size:11px;color:inherit}.submenu-arrow{float:right;margin-left:18px;font-size:18px;line-height:10px}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;min-width:250px;background:#080808;color:#fff;border:1px solid var(--gold);box-shadow:0 24px 60px rgba(0,0,0,.35);border-radius:16px;padding:8px;z-index:1200}
.has-dropdown:hover>.dropdown-menu{display:block}
.dropdown-row{position:relative;display:block}
.dropdown-row>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;border-radius:12px;font-weight:700;color:#fff;line-height:1.2}
.dropdown-row>a:hover,.dropdown-row:hover>a{background:var(--gold);color:#000}
.sub-menu{display:none;position:absolute;left:100%;top:0;min-width:230px;background:#080808;color:#fff;border:1px solid var(--gold);box-shadow:0 24px 60px rgba(0,0,0,.35);border-radius:16px;padding:8px;z-index:1250}
.dropdown-row:hover>.sub-menu{display:block}
.sub-menu a{display:block;padding:10px 13px;border-radius:12px;color:#fff;font-weight:700;line-height:1.2}
.sub-menu a:hover{background:var(--gold);color:#000}
.hero{min-height:560px;display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center;padding:76px 6vw;background:radial-gradient(circle at 80% 20%,rgba(212,175,55,.22),transparent 32%),linear-gradient(135deg,#050505 0%,#151515 56%,#000 100%);border-bottom:4px solid var(--gold);color:#fff}
.hero h1{font-family:Georgia,serif;font-size:62px;line-height:1.03;margin:0 0 18px;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.3)}
.hero h1::after{content:"";display:block;width:120px;height:4px;background:var(--gold);border-radius:99px;margin-top:18px}
.hero p{font-size:18px;color:#e7dcc0;max-width:620px}.hero-card{background:#fff;border:3px solid var(--gold);border-radius:34px;padding:18px;box-shadow:0 28px 80px rgba(212,175,55,.22)}.hero-card img{width:100%;height:440px;object-fit:cover;border-radius:24px;background:#f7f7f7}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;border:1px solid var(--gold);background:var(--gold);color:#000;font-weight:900;margin:4px;cursor:pointer}.btn:hover{background:#000;color:var(--gold)}.btn.secondary{background:#fff;color:#000;border-color:var(--gold)}.btn.secondary:hover{background:var(--gold);color:#000}
.section{padding:46px 6vw;background:#fff}.section:nth-of-type(even){background:#fbfbfb}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px;gap:18px}.section-title h2{font-family:Georgia,serif;font-size:38px;margin:0;color:#000}.section-title h2::after{content:"";display:block;width:72px;height:3px;background:var(--gold);margin-top:8px;border-radius:99px}.section-title a{color:#000;font-weight:900;border-bottom:2px solid var(--gold)}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.07);position:relative;transition:.18s ease}.product-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(0,0,0,.14);border-color:var(--gold)}.product-card img{width:100%;height:285px;object-fit:cover;background:#f5f5f5}.product-body{padding:15px}.product-body h3{margin:0 0 7px;font-size:17px}.meta{color:var(--muted);font-size:13px}.price{font-weight:900;color:#000;font-size:19px}.old-price{text-decoration:line-through;color:#8a8a8a;margin-right:7px}.tag{position:absolute;top:12px;left:12px;background:var(--danger);color:#fff;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:900;letter-spacing:.5px}.tag.new{background:#000;color:var(--gold);border:1px solid var(--gold)}
.category-card img{height:245px}.category-card .product-body{background:linear-gradient(180deg,#fff,#fbf8ee);border-top:3px solid var(--gold)}
.carousel-wrap{position:relative;display:flex;align-items:center;gap:10px}.carousel{display:flex;gap:18px;overflow:auto;scroll-snap-type:x mandatory;padding:4px 0 12px;scroll-behavior:smooth;scrollbar-width:thin}.carousel .product-card{min-width:270px;scroll-snap-align:start}.carousel-btn{flex:0 0 42px;width:42px;height:42px;border-radius:50%;border:1px solid var(--gold);background:#000;color:var(--gold);font-size:28px;line-height:1;display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.16);cursor:pointer;z-index:3}.carousel-btn:hover{background:var(--gold);color:#000}.carousel-wrap:before,.carousel-wrap:after{content:"";position:absolute;top:0;bottom:12px;width:34px;z-index:2;pointer-events:none}.carousel-wrap:before{left:52px;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}.carousel-wrap:after{right:52px;background:linear-gradient(270deg,#fff,rgba(255,255,255,0))}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.filters a,.filters select,.filters input{border:1px solid var(--line);border-radius:999px;padding:11px 15px;background:#fff}.filters a.active{background:#000;color:var(--gold);border-color:#000}
.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:44px 6vw}.gallery-main img{width:100%;max-height:720px;object-fit:cover;border-radius:28px;background:#f5f5f5;border:1px solid var(--line)}.thumbs{display:flex;gap:10px;margin-top:10px;overflow:auto}.thumbs img{width:86px;height:104px;object-fit:cover;border-radius:14px;border:1px solid var(--line);cursor:pointer;background:#f5f5f5}.info-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 12px 35px rgba(0,0,0,.06)}.info-panel h1{font-family:Georgia,serif;font-size:42px;margin:0 0 10px;color:#000}
.appointment-form{max-width:900px;margin:36px auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 14px 36px rgba(0,0,0,.06)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit}label{font-weight:800;font-size:13px;color:#000}.site-footer{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:36px 6vw;background:#050505;color:#f7f1df;margin-top:40px;border-top:4px solid var(--gold)}.site-footer b{color:var(--gold)}.empty{padding:34px;border:1px dashed var(--line);border-radius:22px;text-align:center;color:var(--muted);background:#fff}.success-msg{padding:14px;border-radius:16px;background:#e8f6ef;color:#1d6b47;margin-bottom:15px}.danger-msg{padding:14px;border-radius:16px;background:#ffe8e8;color:#9b2929;margin-bottom:15px}.about-box{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 12px 36px rgba(0,0,0,.06)}
@media(max-width:1100px){.nav-list>li>a{padding:9px 8px;font-size:13px}.brand{font-size:20px}.header-inner{padding-left:4vw;padding-right:4vw}}
@media(max-width:900px){.hero,.product-detail{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.carousel-btn{width:38px;height:38px;flex-basis:38px}.carousel-wrap:before,.carousel-wrap:after{display:none}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#050505;padding:16px;border-bottom:2px solid var(--gold)}.nav-open .main-nav{display:block}.nav-list{display:block}.nav-list>li>a{border-radius:12px}.dropdown-menu,.sub-menu{position:static;display:block;box-shadow:none;border:0;padding:0 0 0 14px;margin:0;background:transparent}.dropdown-row:hover>.sub-menu{display:block}.hero h1{font-size:42px}}
@media(max-width:560px){.grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.hero{padding:40px 5vw}.hero-card img{height:300px}.site-footer{grid-template-columns:1fr}.section-title{align-items:flex-start;flex-direction:column}}
.brand-logo-img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);background:#000;box-shadow:0 0 0 4px rgba(212,175,55,.12)}
.section-subtitle{margin:7px 0 0;color:var(--muted);max-width:720px;line-height:1.55}.section-feature{display:grid;grid-template-columns:210px 1fr;gap:18px;align-items:center;margin:-4px 0 18px;background:linear-gradient(135deg,#fff,#fbf8ee);border:1px solid var(--line);border-radius:24px;padding:12px;box-shadow:0 10px 28px rgba(0,0,0,.04)}.section-feature img{width:100%;height:135px;object-fit:cover;border-radius:18px;background:#f5f5f5;border:1px solid var(--line)}.section-feature p{margin:0;color:var(--muted);font-size:16px;line-height:1.55}.sale-feature-section .section-feature{background:linear-gradient(135deg,#080808,#251d06);border-color:var(--gold)}.sale-feature-section .section-feature p{color:#f0e5c7}.page-banner{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;padding:54px 6vw;background:linear-gradient(135deg,#050505,#1b1b1b 62%,#000);color:#fff;border-bottom:4px solid var(--gold)}.page-banner h1{font-family:Georgia,serif;font-size:52px;line-height:1.05;margin:0 0 14px;color:#fff}.page-banner h1:after{content:"";display:block;width:90px;height:4px;background:var(--gold);border-radius:99px;margin-top:14px}.page-banner p{margin:0;color:#eadfbe;font-size:17px;line-height:1.55;max-width:720px}.page-banner img{width:100%;height:310px;object-fit:cover;border-radius:28px;border:3px solid var(--gold);background:#fff;box-shadow:0 20px 60px rgba(212,175,55,.18)}
@media(max-width:900px){.page-banner{grid-template-columns:1fr}.page-banner h1{font-size:40px}.section-feature{grid-template-columns:1fr}.section-feature img{height:220px}}

/* Automatic image framing update: every uploaded/site picture stays inside its frame without stretching. */
img{max-width:100%;height:auto}
.hero-card,.product-card,.category-card,.section-feature,.page-banner,.gallery-main,.thumbs{overflow:hidden}
.hero-card img,
.product-card>img,
.category-card>img,
.section-feature img,
.page-banner img,
.gallery-main img,
.thumbs img,
.brand-logo-img{
  display:block;
  width:100%;
  object-fit:contain;
  object-position:center center;
  background:#faf7ee;
}
.hero-card img{height:440px}
.product-card>img{height:285px;aspect-ratio:3/4}
.category-card>img{height:245px;aspect-ratio:4/3}
.section-feature img{height:135px;aspect-ratio:16/9}
.page-banner img{height:310px;aspect-ratio:16/9}
.gallery-main{height:min(720px,75vh);min-height:460px;border-radius:28px;background:#faf7ee;border:1px solid var(--line);display:grid;place-items:center}
.gallery-main img{height:100%;max-height:none;border:0;border-radius:0}
.thumbs img{height:104px;flex:0 0 86px}
.brand-logo-img{height:48px}
@media(max-width:900px){.section-feature img{height:220px}.gallery-main{height:520px;min-height:360px}.page-banner img{height:260px}}
@media(max-width:560px){.hero-card img{height:300px}.product-card>img{height:320px}.gallery-main{height:440px;min-height:320px}.page-banner img{height:220px}}


/* 2026-06-19 website carousel/banner cleanup
   New Arrival and Sale article banners are removed from the homepage markup.
   These rules make carousel cards sit directly below the headings and force images to fill their frames. */
.home-carousel-section .section-title{margin-bottom:16px}
.home-carousel-section .carousel-wrap{margin-top:0}
.home-carousel-section .empty{margin-top:0}
.product-card>img,
.product-card img,
.category-card>img,
.category-card img,
.hero-card img,
.page-banner img,
.gallery-main img,
.thumbs img,
.section-feature img{
  width:100%;
  height:100%;
  object-fit:cover !important;
  object-position:center center;
  display:block;
}
.product-card>img{height:285px !important; aspect-ratio:3/4}
.category-card>img{height:245px !important; aspect-ratio:4/3}
.hero-card img{height:440px !important}
.page-banner img{height:310px !important}
.gallery-main img{height:100% !important; max-height:none}
.thumbs img{height:104px !important; flex:0 0 86px}
@media(max-width:560px){
  .product-card>img{height:320px !important}
  .hero-card img{height:300px !important}
}

/* 2026-06-19 tighter image framing update
   Reduces blank space on homepage/category cards and makes images fill the visual frame more strongly. */
.section{padding:34px 6vw !important;}
.hero + .section{padding-top:30px !important;}
.section-title{margin-bottom:12px !important;}
.home-carousel-section .section-title{margin-bottom:10px !important;}
.carousel{padding-top:0 !important; padding-bottom:8px !important;}
.grid{gap:18px !important;}
.site-footer{margin-top:0 !important;}
.hero-card{padding:10px !important;background:#050505 !important;}
.hero-card img{border-radius:24px !important;}
.product-card,
.category-card{overflow:hidden !important;background:#fff;}
.product-card>img,
.category-card>img{
  width:100% !important;
  height:285px !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  background:#050505 !important;
  transform:scale(1.08);
  transform-origin:center center;
}
.category-card>img{height:225px !important; transform:scale(1.10);}
.product-card .product-body,
.category-card .product-body{position:relative;z-index:2;background:#fff;}
.category-card .product-body{background:linear-gradient(180deg,#fff,#fbf8ee) !important;}
.product-card>img[src*="assets/images/"],
.category-card>img[src*="assets/images/"]{object-fit:cover !important; transform:scale(1.12);}
.product-card:hover>img,
.category-card:hover>img{transform:scale(1.15);}
@media(max-width:900px){
  .section{padding:28px 5vw !important;}
  .category-card>img{height:220px !important;}
}
@media(max-width:560px){
  .product-card>img{height:300px !important;}
  .category-card>img{height:220px !important;}
  .hero-card{padding:7px !important;}
}

/* 2026-06-20 full background hero/banner update
   Home and all public page banners now use the selected website image as the full section background,
   not as a separate framed image. */
.hero-bg-section,
.page-bg-section{
  position:relative !important;
  overflow:hidden !important;
  background-color:#050505 !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  color:#fff !important;
  border-bottom:4px solid var(--gold) !important;
}
.hero-bg-section{
  min-height:560px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:86px 6vw !important;
  grid-template-columns:none !important;
  gap:0 !important;
}
.hero-bg-section > div:first-child,
.page-bg-section > div:first-child{
  position:relative !important;
  z-index:2 !important;
  max-width:760px !important;
}
.hero-bg-section .hero-card,
.page-bg-section > img{
  display:none !important;
}
.page-bg-section{
  min-height:430px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:74px 6vw !important;
  grid-template-columns:none !important;
  gap:0 !important;
}
.page-bg-section h1,
.hero-bg-section h1{
  color:#fff !important;
  text-shadow:0 4px 18px rgba(0,0,0,.45) !important;
}
.page-bg-section p,
.hero-bg-section p{
  color:#f1e8cf !important;
  text-shadow:0 2px 12px rgba(0,0,0,.38) !important;
}
@media(max-width:900px){
  .hero-bg-section{min-height:470px !important;padding:62px 5vw !important;}
  .page-bg-section{min-height:340px !important;padding:52px 5vw !important;}
  .hero-bg-section h1{font-size:44px !important;}
  .page-bg-section h1{font-size:40px !important;}
}
@media(max-width:560px){
  .hero-bg-section{min-height:430px !important;padding:46px 5vw !important;}
  .page-bg-section{min-height:300px !important;padding:42px 5vw !important;}
  .hero-bg-section h1{font-size:36px !important;}
  .page-bg-section h1{font-size:34px !important;}
}


/* 2026-06-20 hero visibility fix */
.hero-bg-section,
.page-bg-section{
  isolation:isolate;
}
.hero-bg-section{
  background-position:center right !important;
}
.hero-bg-section::after,
.page-bg-section::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:radial-gradient(circle at 78% 42%, rgba(212,175,55,.14), transparent 34%);
}
.hero-bg-section > div:first-child,
.page-bg-section > div:first-child{
  z-index:2 !important;
}
@media(max-width:900px){
  .hero-bg-section{background-position:center right !important;}
}


/* 2026-06-20 Humaira Ahsan gold wordmark logo update */
.brand-wordmark{gap:0;min-width:270px;max-width:440px;flex:0 0 auto;line-height:0;}
.brand-wordmark-img{display:block;height:76px;width:auto;max-width:min(430px,36vw);object-fit:contain;object-position:left center;background:transparent;border:0;border-radius:0;box-shadow:none;filter:brightness(1.25) saturate(1.18) drop-shadow(0 0 9px rgba(212,175,55,.42));}
.site-header .brand-mark{display:none;}
@media(max-width:1100px){.brand-wordmark-img{height:68px;max-width:min(350px,34vw)}.brand-wordmark{min-width:230px}}
@media(max-width:900px){.brand-wordmark-img{height:60px;max-width:min(310px,70vw)}.brand-wordmark{min-width:0}.main-nav{top:82px}}
@media(max-width:560px){.brand-wordmark-img{height:52px;max-width:min(250px,66vw)}.header-inner{padding-top:10px;padding-bottom:10px}}

/* 2026-07-19 checkout bank account selection */
.checkout-bank-list{display:grid;gap:10px;margin:12px 0}.checkout-bank-list>div{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbf8ee}.checkout-bank-list b{display:block;margin-bottom:5px}.checkout-bank-list span{display:block;font-size:13px;line-height:1.55;color:#343434}.bank-note{white-space:normal}

/* 2026-07-19 shopping-cart icon and compact header counter */
.cart-nav-link{position:relative;display:inline-flex !important;align-items:center;justify-content:center;min-width:48px;padding:9px 12px !important}
.cart-icon{width:25px;height:25px;display:block;color:currentColor}
.cart-count{position:absolute;top:2px;right:2px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--gold);color:#000;font-size:11px;font-weight:900;line-height:1;border:2px solid #050505}
.cart-nav-link:hover .cart-count{background:#000;color:var(--gold);border-color:var(--gold)}
.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important}


/* 2026-07-19 category workflow, About page and customer account redesign */
.luxury-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--gold);font-size:12px;font-weight:900;letter-spacing:2.4px;text-transform:uppercase;margin-bottom:14px}.luxury-eyebrow:before{content:"";width:34px;height:1px;background:currentColor}.luxury-eyebrow.dark{color:#8b6b0d}
.about-hero{min-height:520px !important}.about-hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 45%,rgba(0,0,0,.22) 100%)}.about-hero-content{max-width:760px !important}.about-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.about-outline-btn{background:transparent !important;color:#fff !important;border-color:rgba(255,255,255,.72) !important}.about-outline-btn:hover{background:#fff !important;color:#000 !important}
.about-story-section{padding:72px 6vw;background:#fff}.about-story-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}.about-story-image{position:relative;border-radius:32px;overflow:hidden;min-height:520px;background:#090909;box-shadow:0 24px 70px rgba(0,0,0,.16)}.about-story-image:after{content:"";position:absolute;inset:16px;border:1px solid rgba(212,175,55,.75);border-radius:24px;pointer-events:none}.about-story-image img{width:100%;height:520px;object-fit:cover;display:block}.about-story-copy h2,.about-cta h2{font-family:Georgia,serif;font-size:46px;line-height:1.08;margin:0 0 20px}.about-story-copy>p{font-size:17px;line-height:1.8;color:#555}.about-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.about-stat-row>div{padding:20px 14px;border:1px solid var(--line);border-radius:18px;background:#fbf8ee}.about-stat-row strong{display:block;font-family:Georgia,serif;font-size:21px;color:#000}.about-stat-row span{display:block;color:var(--muted);font-size:12px;margin-top:6px}
.about-values-section{padding:68px 6vw;background:#faf8f1}.about-section-title{max-width:1240px;margin:0 auto 24px !important}.about-values-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.about-value-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 14px 34px rgba(0,0,0,.05);transition:.2s ease}.about-value-card:hover{transform:translateY(-4px);border-color:var(--gold)}.about-value-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#050505;color:var(--gold);font-weight:900;margin-bottom:20px}.about-value-card h3{font-family:Georgia,serif;font-size:24px;margin:0 0 12px}.about-value-card p{color:#666;line-height:1.7;margin:0}.about-cta{margin:0;padding:56px 6vw;display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(120deg,#050505,#1b1608);color:#fff;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}.about-cta h2{margin-bottom:10px}.about-cta p{margin:0;color:#e7dcc0}.about-cta>div:last-child{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.customer-auth-page{padding:48px 4vw 64px;background:radial-gradient(circle at 15% 10%,rgba(212,175,55,.12),transparent 34%),#f6f3ea}.customer-auth-shell{max-width:1120px;margin:0 auto;min-height:650px;display:grid;grid-template-columns:.95fr 1.05fr;background:#fff;border:1px solid #dfd4af;border-radius:34px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.15)}.customer-auth-visual{position:relative;min-height:650px;background-size:cover;background-position:center}.customer-auth-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(0,0,0,.45),rgba(0,0,0,.92))}.customer-auth-visual-content{position:absolute;z-index:2;left:44px;right:44px;bottom:48px;color:#fff}.customer-auth-visual-content h1{font-family:Georgia,serif;font-size:48px;line-height:1.05;margin:0 0 14px}.customer-auth-visual-content p{font-size:17px;line-height:1.65;color:#eee3c5}.customer-auth-visual-content ul{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}.customer-auth-visual-content li{display:flex;align-items:center;gap:10px;font-weight:700}.customer-auth-visual-content li:before{content:"✓";display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#000;font-size:13px;font-weight:900}.customer-auth-panel{padding:46px 52px;display:flex;flex-direction:column;justify-content:center}.customer-auth-brand img{display:block;width:auto;height:68px;max-width:100%;object-fit:contain;object-position:left;margin-bottom:24px;filter:brightness(.72) saturate(1.3)}.auth-kicker{font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:#8b6b0d}.customer-auth-panel h2{font-family:Georgia,serif;font-size:38px;margin:8px 0 8px}.auth-intro{color:#777;margin:0 0 24px}.polished-auth-form{display:grid;gap:17px}.polished-auth-form label{display:block;margin-bottom:7px;font-size:13px}.polished-auth-form input,.polished-auth-form textarea{border-color:#d9d1b9;background:#fcfbf7;min-height:50px;transition:.18s ease}.polished-auth-form input:focus,.polished-auth-form textarea:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(212,175,55,.14);background:#fff}.password-field{position:relative}.password-field input{padding-right:72px}.password-toggle{position:absolute;right:7px;top:7px;bottom:7px;width:auto;padding:0 12px;border:0;border-radius:10px;background:#eee8d5;color:#3d3214;font-weight:900;cursor:pointer}.full-btn{width:100%;margin:0}.auth-primary-btn{min-height:52px;border-radius:14px;font-size:15px}.auth-create-btn{min-height:50px;border-radius:14px}.auth-divider{display:flex;align-items:center;gap:12px;color:#999;font-size:12px;margin:22px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e5dfcd;flex:1}.auth-back-link{display:block;text-align:center;margin-top:20px;color:#6f5a1c;font-weight:800;font-size:13px}.auth-switch{text-align:center;margin:20px 0 0;color:#777}.auth-switch a{color:#80630d;font-weight:900}.store-alert{padding:13px 15px;border-radius:13px;margin-bottom:17px;font-size:13px;line-height:1.5}.store-alert-error{background:#fff0f0;color:#9b2929;border:1px solid #f3caca}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.register-auth-shell{max-width:1260px;grid-template-columns:.8fr 1.2fr}.register-auth-panel{padding-top:34px;padding-bottom:34px}.register-auth-panel .customer-auth-brand img{height:56px;margin-bottom:15px}.register-auth-panel h2{font-size:34px}
.site-footer{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.about-story-grid,.customer-auth-shell,.register-auth-shell{grid-template-columns:1fr}.about-story-image{min-height:390px}.about-story-image img{height:390px}.about-values-grid{grid-template-columns:1fr}.about-cta{align-items:flex-start;flex-direction:column}.about-cta>div:last-child{justify-content:flex-start}.customer-auth-visual{min-height:360px}.customer-auth-shell{min-height:0}.customer-auth-visual-content{left:30px;right:30px;bottom:30px}.customer-auth-visual-content h1{font-size:38px}.customer-auth-panel{padding:38px 32px}.site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.about-story-section,.about-values-section{padding:46px 5vw}.about-story-copy h2,.about-cta h2{font-size:34px}.about-stat-row{grid-template-columns:1fr}.about-story-image,.about-story-image img{height:330px;min-height:330px}.customer-auth-page{padding:22px 4vw 40px}.customer-auth-shell{border-radius:24px}.customer-auth-visual{min-height:300px}.customer-auth-visual-content{left:22px;right:22px;bottom:24px}.customer-auth-visual-content h1{font-size:33px}.customer-auth-visual-content ul{display:none}.customer-auth-panel{padding:30px 22px}.customer-auth-panel h2{font-size:31px}.form-two{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}}

/* 2026-07-19 premium shopping cart redesign */
.cart-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 88% 20%,rgba(212,175,55,.22),transparent 28%),linear-gradient(118deg,#050505,#181305 68%,#050505);border-bottom:3px solid var(--gold);color:#fff;padding:42px 6vw}.cart-hero:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(212,175,55,.18);border-radius:50%;right:-70px;top:-155px}.cart-hero-inner{position:relative;z-index:1;max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.cart-hero h1{font-family:Georgia,serif;font-size:46px;line-height:1.05;margin:0 0 10px}.cart-hero p{margin:0;color:#e9dfc4;font-size:16px}.cart-hero-count{width:96px;height:96px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;align-content:center;background:rgba(0,0,0,.38);box-shadow:0 0 0 8px rgba(212,175,55,.08)}.cart-hero-count span{font-family:Georgia,serif;font-size:32px;color:var(--gold);line-height:1}.cart-hero-count small{text-transform:uppercase;letter-spacing:1.2px;font-size:10px;margin-top:5px;color:#fff}.cart-page{background:#f7f5ef !important;padding-top:40px !important;padding-bottom:56px !important}.cart-shell{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}.cart-products-card,.cart-summary-card{background:#fff;border:1px solid #e3dcc5;border-radius:26px;box-shadow:0 16px 50px rgba(0,0,0,.07)}.cart-products-card{overflow:hidden}.cart-card-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 26px;border-bottom:1px solid #ece7d8;background:linear-gradient(180deg,#fff,#fcfbf7)}.cart-card-heading>div,.cart-summary-heading{display:flex;align-items:center;gap:13px}.cart-card-heading h2,.cart-summary-heading h2{font-family:Georgia,serif;font-size:25px;margin:0 0 4px}.cart-card-heading p,.cart-summary-heading p{margin:0;color:#777;font-size:12px}.cart-step-number{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#050505;color:var(--gold);font-weight:900;border:1px solid var(--gold)}.cart-continue-link{font-size:13px;font-weight:900;color:#755b0b;border-bottom:1px solid #b79426;padding-bottom:3px}.cart-items-list{display:grid}.cart-product-row{display:grid;grid-template-columns:142px minmax(0,1fr) 126px 145px;gap:20px;align-items:center;padding:22px 26px;border-bottom:1px solid #eee9da}.cart-product-row:last-child{border-bottom:0}.cart-product-image{display:block;width:142px;height:172px;border-radius:18px;overflow:hidden;background:#f1eee5;border:1px solid #e4dcc4}.cart-product-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.cart-product-details{min-width:0}.cart-product-details h3{font-family:Georgia,serif;font-size:24px;line-height:1.16;margin:5px 0 12px;word-break:break-word}.cart-product-code{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f4f0e4;color:#6c5719;font-weight:900;font-size:10px;letter-spacing:.8px}.cart-option-pills{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.cart-option-pills span{display:inline-flex;align-items:center;gap:5px;border:1px solid #e6dfca;background:#fff;border-radius:999px;padding:6px 9px;color:#777;font-size:11px}.cart-option-pills b{color:#111}.cart-unit-price{font-size:17px;font-weight:900}.cart-unit-price small{font-weight:500;color:#8b8b8b;font-size:11px}.cart-product-controls label{display:block;margin-bottom:8px;color:#777;text-transform:uppercase;letter-spacing:.8px;font-size:10px}.cart-quantity-box{display:grid;grid-template-columns:34px 46px 34px;align-items:center;border:1px solid #dcd3b8;border-radius:12px;overflow:hidden;width:max-content;background:#fff}.cart-quantity-box input{height:38px;min-width:0;border:0;border-left:1px solid #eee7d3;border-right:1px solid #eee7d3;border-radius:0;padding:0;text-align:center;font-weight:900;-moz-appearance:textfield}.cart-quantity-box input::-webkit-outer-spin-button,.cart-quantity-box input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-button{height:38px;padding:0;border:0;border-radius:0;background:#fbf8ee;color:#111;font-size:19px;font-weight:700}.qty-button:hover{background:var(--gold);color:#000}.cart-stock-note{display:block;margin-top:7px;font-size:10px;color:#727272}.cart-product-total{text-align:right}.cart-product-total small{display:block;color:#888;text-transform:uppercase;letter-spacing:.7px;font-size:9px;margin-bottom:5px}.cart-product-total strong{display:block;font-size:20px;margin-bottom:22px;white-space:nowrap}.cart-remove-button{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#9e2e2e;padding:3px 0;font-size:11px;font-weight:900}.cart-remove-button:hover{background:transparent;color:#d11}.cart-remove-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cart-card-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 26px;background:#fcfbf7;border-top:1px solid #ece7d8}.cart-card-footer span{color:#777;font-size:11px}.cart-update-button{margin:0;min-width:150px}.cart-summary-card{position:sticky;top:118px;padding:25px}.cart-summary-heading{padding-bottom:20px;border-bottom:1px solid #ece7d8}.cart-summary-lines{padding:19px 0 12px;display:grid;gap:13px}.cart-summary-lines>div,.cart-summary-total{display:flex;justify-content:space-between;gap:20px;align-items:center}.cart-summary-lines span{color:#666}.cart-summary-total{border-top:1px solid #d8cfb4;padding:19px 0 20px}.cart-summary-total span{font-weight:900;font-size:17px}.cart-summary-total strong{font-family:Georgia,serif;font-size:27px}.cart-checkout-button{min-height:52px;border-radius:14px;margin:0;font-size:14px;justify-content:space-between;padding-left:20px;padding-right:20px}.cart-checkout-button span{font-size:20px}.cart-payment-note{display:flex;gap:10px;align-items:flex-start;margin:17px 0;padding:13px;border:1px solid #e7dfc8;border-radius:14px;background:#fbf8ee}.cart-payment-note svg{flex:0 0 23px;width:23px;height:23px;fill:none;stroke:#886b12;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cart-payment-note b,.cart-payment-note span{display:block}.cart-payment-note b{font-size:12px;margin-bottom:3px}.cart-payment-note span{font-size:10px;color:#6f6f6f;line-height:1.45}.cart-shopping-link{display:block;text-align:center;color:#5f4b0d;font-weight:900;font-size:12px;padding:7px}.cart-clear-form{text-align:center;border-top:1px solid #eee8d8;margin-top:10px;padding-top:13px}.cart-clear-form button{border:0;background:transparent;color:#9c3434;font-size:10px;text-transform:uppercase;letter-spacing:.6px;padding:4px}.cart-clear-form button:hover{background:transparent;color:#d11}.cart-empty-state{max-width:720px;margin:18px auto;background:#fff;border:1px solid #e2dbc4;border-radius:30px;padding:58px 30px;text-align:center;box-shadow:0 18px 55px rgba(0,0,0,.07)}.cart-empty-icon{width:88px;height:88px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;background:#050505;color:var(--gold);border:2px solid var(--gold)}.cart-empty-icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.cart-empty-state h2{font-family:Georgia,serif;font-size:35px;margin:0 0 10px}.cart-empty-state p{color:#777;margin:0 0 22px}.cart-shop-btn{min-width:190px}
@media(max-width:1100px){.cart-shell{grid-template-columns:minmax(0,1fr) 330px}.cart-product-row{grid-template-columns:118px minmax(0,1fr) 116px}.cart-product-image{width:118px;height:150px}.cart-product-total{grid-column:2/4;display:flex;align-items:center;justify-content:space-between;text-align:left;padding-top:2px}.cart-product-total strong{margin:0}.cart-product-total small{display:none}.cart-remove-button{margin-left:auto}}
@media(max-width:820px){.cart-hero{padding:34px 5vw}.cart-hero h1{font-size:38px}.cart-hero-count{width:78px;height:78px}.cart-shell{grid-template-columns:1fr}.cart-summary-card{position:static}.cart-product-row{grid-template-columns:122px minmax(0,1fr) 120px}.cart-products-card,.cart-summary-card{border-radius:22px}}
@media(max-width:620px){.cart-hero-inner{align-items:flex-start}.cart-hero-count{width:64px;height:64px;flex:0 0 64px}.cart-hero-count span{font-size:24px}.cart-hero-count small{font-size:8px}.cart-page{padding-left:4vw !important;padding-right:4vw !important}.cart-card-heading{align-items:flex-start;padding:20px}.cart-card-heading>div{align-items:flex-start}.cart-card-heading h2{font-size:22px}.cart-continue-link{display:none}.cart-product-row{grid-template-columns:92px minmax(0,1fr);gap:14px;padding:18px}.cart-product-image{width:92px;height:122px}.cart-product-details h3{font-size:20px;margin-bottom:9px}.cart-option-pills{gap:5px}.cart-option-pills span{padding:5px 7px}.cart-product-controls{grid-column:2}.cart-product-total{grid-column:1/3;border-top:1px dashed #e3dcc8;padding-top:13px}.cart-card-footer{padding:16px 18px;align-items:flex-start;flex-direction:column}.cart-card-footer span{order:-1}.cart-update-button{width:100%}.cart-summary-card{padding:21px}.cart-empty-state{padding:44px 20px}}

/* 2026-07-19 customized ordering, customer tracking and reviews */
.store-eyebrow{display:block;color:#b69224;font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px}.customize-banner{min-height:360px;background:linear-gradient(100deg,rgba(0,0,0,.95),rgba(0,0,0,.68)),url('../images/appointment-banner.svg') center/cover}.customize-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.7fr);gap:24px;align-items:start}.customize-layout aside{display:flex;flex-direction:column;gap:16px}.custom-info-card,.size-chart-public{background:#0a0a0a;color:#fff;border:1px solid #d4af37;border-radius:22px;padding:22px}.custom-info-card h2{color:#fff}.custom-info-card ol{padding-left:20px;line-height:1.8;color:#eee1be}.size-chart-public summary,.measurement-public summary{cursor:pointer;font-weight:900;color:#d4af37}.size-chart-public .store-table{margin-top:14px;color:#111;background:#fff;border-radius:12px;overflow:hidden}.measurement-public{border:1px solid #dfd4b5;border-radius:16px;padding:14px;background:#fbf8ee}.measurement-public[open] summary{margin-bottom:14px}.account-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.account-order-card small{display:block;color:#777;margin-top:4px}.quote-account-list{display:flex;flex-direction:column;gap:10px}.saved-measurement{border:1px solid #e0d6ba;border-radius:12px;padding:10px;margin-bottom:8px}.saved-measurement b,.saved-measurement span{display:block}.saved-measurement span{font-size:12px;color:#666;margin-top:4px}.customer-order-note{margin-top:18px;padding:15px;border:1px solid #e0d6ba;border-radius:14px;background:#fbf8ee}.public-measurement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.public-measurement-grid>div{border:1px solid #e1d8bf;border-radius:12px;padding:10px;background:#fff}.public-measurement-grid span{display:block;font-size:10px;text-transform:uppercase;color:#777}.public-measurement-grid b{display:block;font-size:17px;margin-top:4px}.delivery-track-box{display:flex;flex-direction:column;gap:5px;border:1px solid #d4af37;border-radius:14px;padding:14px;background:#fffaf0;margin:14px 0}.delivery-track-box span{font-size:10px;text-transform:uppercase;color:#776120}.delivery-track-box b{font-size:20px}.delivery-track-box small{color:#666}.review-form{border-top:1px solid #e2d8bd;padding-top:16px;margin-top:16px}.review-form h3{margin:0 0 8px}.review-summary{display:flex;gap:9px;align-items:center;margin:10px 0}.review-summary>span,.review-stars{color:#c79a13;letter-spacing:2px}.review-summary small{color:#777}.product-reviews-section{border-top:1px solid #e4dac0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.review-card{border:1px solid #dfd4b5;border-radius:20px;padding:20px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.05)}.review-card h3{margin:8px 0}.review-card>small{color:#777}.brand-reply{margin-top:14px;padding:12px;border-left:3px solid #d4af37;background:#fbf8ee}.brand-reply p{margin:5px 0 0}.meta{color:#777}
@media(max-width:950px){.customize-layout{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr 1fr}.public-measurement-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.review-grid,.public-measurement-grid{grid-template-columns:1fr 1fr}.custom-info-card,.size-chart-public{padding:16px}}
@media(max-width:430px){.public-measurement-grid,.review-grid{grid-template-columns:1fr}.account-action-row .btn{width:100%}}

/* 2026-07-19 category picture fit and preloaded thumbnail update.
   Category images use a fixed 4:3 frame without zooming, stretching or cutting. */
.category-card{
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  overflow:hidden !important;
}
.category-card > img,
.category-card > .category-card-image,
.category-card img.category-card-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  padding:0 !important;
  margin:0 !important;
  background:#f8f5ec !important;
  border-radius:0 !important;
  flex:0 0 auto !important;
}
.category-card:hover > img,
.category-card:hover > .category-card-image,
.category-card:hover img.category-card-image{
  transform:none !important;
}
.category-card .product-body{
  flex:1 1 auto !important;
  min-height:88px !important;
}
@media(max-width:900px){
  .category-card > img,
  .category-card > .category-card-image,
  .category-card img.category-card-image{height:auto !important;aspect-ratio:4 / 3 !important;}
}
@media(max-width:560px){
  .category-card > img,
  .category-card > .category-card-image,
  .category-card img.category-card-image{height:auto !important;aspect-ratio:4 / 3 !important;}
}


/* 2026-07-19 compact homepage category gallery and cancelled-order notice */
.category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:15px !important;
}
.category-grid .category-card{
  border-radius:18px !important;
  box-shadow:0 8px 22px rgba(0,0,0,.06) !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image{
  height:158px !important;
  min-height:158px !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#f8f5ec !important;
}
.category-grid .category-card .product-body{
  min-height:68px !important;
  padding:11px 13px !important;
}
.category-grid .category-card .product-body h3{font-size:15px !important;margin-bottom:4px !important}
.category-grid .category-card .product-body .meta{font-size:11px !important;margin:0 !important}
.order-cancelled-banner{
  display:flex;align-items:flex-start;gap:14px;
  border:1px solid #e6a7a7;border-left:6px solid #b91c1c;
  border-radius:18px;padding:17px 19px;margin-bottom:18px;
  background:linear-gradient(135deg,#fff1f1,#fff);color:#711c1c;
  box-shadow:0 10px 26px rgba(185,28,28,.08)
}
.order-cancelled-banner .cancel-icon{width:42px;height:42px;flex:0 0 42px;border-radius:50%;display:grid;place-items:center;background:#b91c1c;color:#fff;font-size:24px;font-weight:900}
.order-cancelled-banner h2{margin:0 0 5px;font-size:21px;color:#8e2020}
.order-cancelled-banner p{margin:0;line-height:1.5;color:#7b3b3b}
.account-order-card.cancelled-order-card{border-color:#e5b0b0;background:#fff7f7;opacity:.92}
.account-order-card.cancelled-order-card>div:first-child b{color:#9b2929}
@media(max-width:900px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .category-grid .category-card > img,.category-grid .category-card > .category-card-image,.category-grid .category-card img.category-card-image{height:150px !important;min-height:150px !important}
}
@media(max-width:560px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
  .category-grid .category-card > img,.category-grid .category-card > .category-card-image,.category-grid .category-card img.category-card-image{height:125px !important;min-height:125px !important}
  .category-grid .category-card .product-body{min-height:60px !important;padding:9px 10px !important}
  .category-grid .category-card .product-body h3{font-size:13px !important}
  .category-grid .category-card .product-body .meta{font-size:10px !important}
  .order-cancelled-banner{padding:14px;gap:10px}.order-cancelled-banner .cancel-icon{width:36px;height:36px;flex-basis:36px;font-size:20px}.order-cancelled-banner h2{font-size:18px}
}


/* 2026-07-20 separate customer and admin login access */
.admin-access-btn{background:#111 !important;color:var(--gold) !important;border:1px solid var(--gold) !important;box-shadow:none !important}
.admin-access-btn:hover{background:var(--gold) !important;color:#000 !important}
.login-choice-page{padding:58px 5vw 72px;background:radial-gradient(circle at 15% 10%,rgba(212,175,55,.12),transparent 34%),#f6f3ea;min-height:calc(100vh - 110px)}
.login-choice-shell{max-width:1050px;margin:0 auto}
.login-choice-heading{text-align:center;max-width:680px;margin:0 auto 30px}
.login-choice-heading h1{font-family:Georgia,serif;font-size:44px;margin:8px 0 10px}
.login-choice-heading p{margin:0;color:#706b5f;font-size:16px}
.login-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.login-choice-card{background:#fff;border:1px solid #dfd4af;border-radius:28px;padding:34px;box-shadow:0 22px 60px rgba(0,0,0,.10);display:flex;flex-direction:column;min-height:410px}
.login-choice-card.admin-choice-card{background:linear-gradient(145deg,#171717,#050505);border-color:var(--gold);color:#fff}
.login-choice-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#f4ecd1;color:#1a1a1a;font-size:27px;margin-bottom:21px}
.admin-choice-card .login-choice-icon{background:var(--gold);color:#000}
.login-choice-label{font-size:12px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;color:#8b6b0d}
.admin-choice-card .login-choice-label{color:var(--gold)}
.login-choice-card h2{font-family:Georgia,serif;font-size:31px;margin:9px 0 12px}
.login-choice-card p{line-height:1.7;color:#716c61;margin:0 0 26px;flex:1}
.admin-choice-card p{color:#d7d0be}
.login-choice-secondary,.login-choice-note{display:block;text-align:center;margin-top:15px;font-weight:800;font-size:13px;color:#745b14}
.login-choice-note{color:#aaa;font-weight:600}
@media(max-width:760px){.login-choice-page{padding:34px 4vw 48px}.login-choice-heading h1{font-size:35px}.login-choice-grid{grid-template-columns:1fr}.login-choice-card{padding:27px;min-height:0}}

/* 2026-07-20 automatic picture fitting
   Keep every uploaded picture fully visible inside its existing frame.
   Images are centred, never stretched, never zoomed and never cropped. */
.product-card > img,
.product-card img,
.category-card > img,
.category-card img,
.hero-card img,
.page-banner img,
.gallery-main img,
.thumbs img,
.section-feature img,
.about-story-image img,
.cart-product-image img{
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  background:#f8f5ec !important;
}
.product-card:hover > img,
.product-card:hover img,
.category-card:hover > img,
.category-card:hover img{
  transform:none !important;
}
.gallery-main{
  height:clamp(460px,65vw,720px);
  max-height:720px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:28px;
  background:#f8f5ec;
  border:1px solid var(--line);
}
.gallery-main img{
  width:100% !important;
  height:100% !important;
  max-height:100% !important;
  padding:8px;
  border:0 !important;
  border-radius:27px !important;
}
.thumbs img,
.cart-product-image img,
.product-card > img,
.category-card > img{
  padding:4px;
}
.hero-bg-section,
.page-bg-section,
.customer-auth-visual{
  background-size:cover,contain !important;
  background-repeat:no-repeat,no-repeat !important;
  background-color:#050505 !important;
}
@media(max-width:900px){
  .gallery-main{height:clamp(400px,78vw,620px);max-height:620px;}
}
@media(max-width:560px){
  .gallery-main{height:clamp(350px,112vw,520px);max-height:520px;}
}

/* 2026-07-20 public image/design right-click protection */
img,
picture,
.protected-image{
  -webkit-user-drag:none !important;
  -webkit-touch-callout:none !important;
  user-select:none !important;
  -webkit-user-select:none !important;
}
.image-protection-toast{
  position:fixed;
  left:50%;
  bottom:26px;
  z-index:99999;
  width:min(92vw,560px);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 18px;
  border:1px solid var(--gold,#d4af37);
  border-radius:14px;
  background:rgba(8,8,8,.96);
  color:#fff;
  font-size:14px;
  font-weight:800;
  line-height:1.4;
  text-align:center;
  box-shadow:0 16px 42px rgba(0,0,0,.35);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,18px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  pointer-events:none;
}
.image-protection-toast.is-visible{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}
.image-protection-icon{
  flex:0 0 auto;
  color:var(--gold,#d4af37);
  font-size:18px;
}
@media(max-width:560px){
  .image-protection-toast{bottom:18px;padding:12px 14px;font-size:13px}
}


/* 2026-07-20 product detail full-picture correction
   Product photos must remain completely visible inside the main gallery frame. */
.product-detail .product-gallery-frame{
  height:clamp(520px,68vw,760px) !important;
  max-height:760px !important;
  min-height:520px !important;
  padding:10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#f8f5ec !important;
}
.product-detail .product-gallery-frame .product-main-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:20px !important;
  transform:none !important;
}
.product-detail .thumbs img{
  object-fit:contain !important;
  object-position:center center !important;
}
@media(max-width:900px){
  .product-detail .product-gallery-frame{
    height:clamp(460px,86vw,680px) !important;
    min-height:460px !important;
  }
}
@media(max-width:560px){
  .product-detail .product-gallery-frame{
    height:clamp(400px,128vw,600px) !important;
    min-height:400px !important;
    padding:6px !important;
  }
}

/* 2026-07-20 homepage category tiles frame-fill only
   Keep product detail images fully visible, but make homepage category cards fill their picture frame. */
.category-grid .category-card,
.category-grid .category-card > .category-card-image,
.category-grid .category-card > img,
.category-grid .category-card img.category-card-image{
  overflow:hidden !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image{
  display:block !important;
  width:100% !important;
  height:158px !important;
  min-height:158px !important;
  object-fit:cover !important;
  object-position:center center !important;
  aspect-ratio:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:#f8f5ec !important;
}
@media(max-width:900px){
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image{
    height:150px !important;
    min-height:150px !important;
    object-fit:cover !important;
  }
}
@media(max-width:560px){
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image{
    height:125px !important;
    min-height:125px !important;
    object-fit:cover !important;
  }
}

/* 2026-07-20 couture-style login page redesign */
.fashion-login-page{
  padding:48px 5vw 72px;
  background:
    radial-gradient(circle at 8% 12%, rgba(212,175,55,.18), transparent 28%),
    radial-gradient(circle at 92% 18%, rgba(0,0,0,.08), transparent 26%),
    linear-gradient(180deg,#f8f4e8 0%, #f5f1e7 46%, #fbf8f0 100%);
  min-height:calc(100vh - 108px);
}
.fashion-login-shell{
  max-width:1280px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:30px;
  align-items:stretch;
}
.fashion-login-showcase{
  position:relative;
  min-height:640px;
  border-radius:34px;
  overflow:hidden;
  background:#080808;
  box-shadow:0 28px 80px rgba(0,0,0,.16);
  border:1px solid rgba(212,175,55,.45);
}
.fashion-login-media,
.fashion-login-media img{
  width:100%;
  height:100%;
}
.fashion-login-media img{
  display:block;
  object-fit:cover;
  object-position:center;
}
.fashion-login-media-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(8,8,8,.78) 0%,rgba(8,8,8,.28) 48%,rgba(8,8,8,.18) 100%);
}
.fashion-login-copy{
  position:absolute;
  left:42px;
  right:42px;
  bottom:40px;
  z-index:2;
  max-width:520px;
  color:#fff;
}
.auth-kicker{
  display:inline-block;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(212,175,55,.5);
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:1.8px;
  text-transform:uppercase;
}
.fashion-login-copy h1{
  margin:16px 0 12px;
  font-family:Georgia,serif;
  font-size:56px;
  line-height:1.02;
  color:#fff;
  text-shadow:0 4px 24px rgba(0,0,0,.28);
}
.fashion-login-copy p{
  margin:0;
  color:#efe7d4;
  font-size:17px;
  line-height:1.7;
}
.fashion-login-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.fashion-login-points span{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:13px;
  font-weight:700;
  backdrop-filter:blur(4px);
}
.fashion-login-panel{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(212,175,55,.34);
  border-radius:34px;
  padding:34px;
  box-shadow:0 26px 70px rgba(0,0,0,.08);
  backdrop-filter:blur(8px);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.fashion-login-heading{
  text-align:left;
  max-width:none;
  margin:0 0 22px;
}
.fashion-login-heading h2{
  font-family:Georgia,serif;
  font-size:46px;
  line-height:1.05;
  margin:14px 0 8px;
  color:#111;
}
.fashion-login-heading p{
  margin:0;
  color:#746d60;
  font-size:16px;
}
.fashion-login-grid{
  grid-template-columns:1fr;
  gap:18px;
}
.fashion-choice-card{
  min-height:0;
  padding:30px;
  border-radius:28px;
  box-shadow:0 18px 45px rgba(0,0,0,.06);
  position:relative;
  overflow:hidden;
}
.customer-choice-card{
  background:linear-gradient(180deg,#fff 0%, #fbf8ee 100%);
}
.fashion-choice-card::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,var(--gold),rgba(212,175,55,.08));
}
.fashion-choice-card h3{
  font-family:Georgia,serif;
  font-size:34px;
  margin:10px 0 12px;
  color:inherit;
}
.fashion-choice-card p{
  margin-bottom:18px;
}
.fashion-choice-features{
  list-style:none;
  padding:0;
  margin:0 0 22px;
  display:grid;
  gap:10px;
}
.fashion-choice-features li{
  position:relative;
  padding-left:22px;
  font-size:14px;
  color:inherit;
}
.fashion-choice-features li::before{
  content:"✦";
  position:absolute;
  left:0;
  top:0;
  color:var(--gold);
  font-size:13px;
}
.customer-choice-card .fashion-choice-features li{color:#595347}
.admin-choice-card .fashion-choice-features li{color:#ddd4c0}
.fashion-choice-btn{
  width:100%;
  min-height:52px;
  font-size:15px;
  margin-top:auto;
}
.fashion-choice-card .login-choice-secondary,
.fashion-choice-card .login-choice-note{
  margin-top:14px;
}
@media(max-width:1100px){
  .fashion-login-shell{grid-template-columns:1fr;}
  .fashion-login-showcase{min-height:540px;}
  .fashion-login-panel{padding:28px;}
}
@media(max-width:760px){
  .fashion-login-page{padding:26px 4vw 44px;}
  .fashion-login-showcase{min-height:420px;border-radius:26px;}
  .fashion-login-copy{left:24px;right:24px;bottom:24px;}
  .fashion-login-copy h1{font-size:40px;}
  .fashion-login-copy p{font-size:15px;}
  .fashion-login-panel{border-radius:26px;padding:22px;}
  .fashion-login-heading h2{font-size:34px;}
  .fashion-choice-card{padding:22px;border-radius:22px;}
  .fashion-choice-card h3{font-size:28px;}
}
@media(max-width:520px){
  .fashion-login-showcase{min-height:360px;}
  .fashion-login-copy h1{font-size:34px;}
  .fashion-login-points span{font-size:12px;padding:8px 12px;}
}

/* 2026-07-20 scope auth kicker styling so other auth pages stay unchanged */
.auth-kicker{
  font-size:12px;
  font-weight:900;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6b0d;
  background:none;
  border:0;
  padding:0;
  border-radius:0;
}
.fashion-login-page .auth-kicker{
  display:inline-block;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(212,175,55,.5);
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:1.8px;
  text-transform:uppercase;
}

/* 2026-07-20 equal product action buttons */
.polished-product-form{
  display:grid;
  gap:12px;
}
.product-action-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  align-items:stretch;
  margin-top:8px;
}
.product-action-btn{
  width:100% !important;
  min-height:54px;
  margin:0 !important;
  padding:12px 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  white-space:nowrap;
}
.out-of-stock-action-row{
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:10px;
}
@media(max-width:900px){
  .product-action-row{
    grid-template-columns:1fr;
  }
  .out-of-stock-action-row{
    grid-template-columns:1fr;
  }
}

/* 2026-07-20 mobile navigation: keep product subcategories collapsed until opened */
.category-menu-row{display:contents}
.submenu-toggle{display:none}

@media(max-width:900px){
  .main-nav{
    max-height:calc(100vh - 78px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .nav-list>li>a{
    width:100%;
    justify-content:space-between;
  }
  .nav-item.has-dropdown>.dropdown-menu,
  .dropdown-row.has-submenu>.sub-menu,
  .nav-item.has-dropdown:hover>.dropdown-menu,
  .dropdown-row.has-submenu:hover>.sub-menu{
    display:none !important;
  }
  .nav-item.has-dropdown.mobile-open>.dropdown-menu,
  .dropdown-row.has-submenu.mobile-open>.sub-menu{
    display:block !important;
  }
  .dropdown-menu,
  .sub-menu{
    position:static !important;
    box-shadow:none !important;
    border:0 !important;
    margin:0 !important;
    background:transparent !important;
  }
  .dropdown-menu{
    padding:4px 0 8px 14px !important;
  }
  .sub-menu{
    padding:3px 0 7px 18px !important;
  }
  .dropdown-menu>li>a,
  .category-menu-row>a,
  .sub-menu a{
    display:flex;
    align-items:center;
    min-height:42px;
    padding:9px 11px;
    border-radius:10px;
    color:#f5f0df;
    font-weight:700;
  }
  .sub-menu a{
    min-height:38px;
    color:#d9d1bb;
    font-size:13px;
  }
  .category-menu-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 42px;
    align-items:center;
  }
  .submenu-toggle{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    margin:3px;
    padding:0;
    border:1px solid rgba(212,175,55,.45);
    border-radius:10px;
    background:rgba(212,175,55,.08);
    color:var(--gold);
    font-size:22px;
    line-height:1;
    cursor:pointer;
    transition:transform .18s ease,background .18s ease;
  }
  .dropdown-row.mobile-open>.category-menu-row .submenu-toggle{
    transform:rotate(90deg);
    background:var(--gold);
    color:#000;
  }
  .products-menu-item.mobile-open>.products-menu-link .chev{
    transform:rotate(180deg);
  }
  .products-menu-link .chev{
    transition:transform .18s ease;
  }
}

/* 2026-07-20 improved desktop products dropdown and grouped products catalog */
@media(min-width:901px){
  .products-menu-item>.dropdown-menu{
    top:calc(100% + 12px);
    left:50%;
    transform:translateX(-34%);
    min-width:290px;
    padding:12px;
    border-radius:22px;
    border:1px solid rgba(212,175,55,.75);
    background:linear-gradient(180deg,rgba(6,6,6,.98),rgba(18,18,18,.98));
    box-shadow:0 22px 60px rgba(0,0,0,.42);
    backdrop-filter:blur(8px);
  }
  .products-menu-item>.dropdown-menu:before{
    content:"";
    position:absolute;
    top:-7px;
    left:54%;
    width:14px;
    height:14px;
    background:#0b0b0b;
    border-left:1px solid rgba(212,175,55,.75);
    border-top:1px solid rgba(212,175,55,.75);
    transform:rotate(45deg);
  }
  .products-menu-item>.dropdown-menu>li>a,
  .products-menu-item .category-menu-row>a{
    display:flex;
    align-items:center;
    min-height:48px;
    padding:12px 14px;
    border-radius:14px;
    font-weight:800;
    color:#fff;
  }
  .products-menu-item>.dropdown-menu>li>a{
    background:rgba(255,255,255,.02);
  }
  .products-menu-item>.dropdown-menu>li:first-child>a{
    margin-bottom:4px;
    border:1px solid rgba(212,175,55,.24);
    background:linear-gradient(90deg,rgba(212,175,55,.18),rgba(212,175,55,.05));
    color:var(--gold);
  }
  .products-menu-item .dropdown-row{position:relative;margin-top:4px;}
  .products-menu-item .category-menu-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 28px;
    align-items:center;
    gap:8px;
    border-radius:14px;
    transition:background .18s ease;
  }
  .products-menu-item .category-menu-row:after{
    content:"›";
    color:var(--gold);
    font-size:22px;
    line-height:1;
    justify-self:center;
  }
  .products-menu-item .dropdown-row:hover>.category-menu-row,
  .products-menu-item .dropdown-row:hover>a,
  .products-menu-item>.dropdown-menu>li>a:hover{
    background:linear-gradient(90deg,rgba(212,175,55,.18),rgba(212,175,55,.04));
    color:#fff;
  }
  .products-menu-item .sub-menu{
    left:calc(100% + 12px);
    top:-8px;
    min-width:260px;
    padding:12px;
    border-radius:20px;
    border:1px solid rgba(212,175,55,.75);
    background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(22,22,22,.98));
    box-shadow:0 22px 60px rgba(0,0,0,.42);
  }
  .products-menu-item .sub-menu:before{
    content:"";
    position:absolute;
    top:18px;
    left:-7px;
    width:14px;
    height:14px;
    background:#111;
    border-left:1px solid rgba(212,175,55,.75);
    border-bottom:1px solid rgba(212,175,55,.75);
    transform:rotate(45deg);
  }
  .products-menu-item .sub-menu a{
    padding:10px 12px;
    border-radius:12px;
    color:#f2ead1;
    font-weight:700;
  }
  .products-menu-item .sub-menu a:hover{
    background:rgba(212,175,55,.16);
    color:#fff;
  }
}

.products-catalog-section{background:#fbfaf6}
.products-filter-card{
  background:#fff;
  border:1px solid #e7dfc6;
  border-radius:26px;
  padding:18px;
  box-shadow:0 10px 28px rgba(0,0,0,.05);
  margin-bottom:24px;
}
.products-filter-form{margin-bottom:0 !important}
.catalog-group-list{display:grid;gap:24px}
.catalog-group-frame{
  background:#fff;
  border:1px solid #e8e0cb;
  border-radius:28px;
  padding:22px;
  box-shadow:0 14px 36px rgba(0,0,0,.05);
}
.catalog-group-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid #eee7d5;
}
.catalog-group-head h3{
  margin:6px 0 5px;
  font-family:Georgia,serif;
  font-size:32px;
  color:#111;
}
.catalog-group-head p{
  margin:0;
  color:#7a7468;
  font-size:13px;
}
.catalog-group-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid var(--gold);
  color:#111;
  font-weight:800;
  white-space:nowrap;
  background:#fff;
}
.catalog-group-link:hover{
  background:var(--gold);
  color:#000;
}
.category-product-grid{gap:18px !important}
.category-product-grid .product-card{
  border-radius:22px;
  box-shadow:0 10px 24px rgba(0,0,0,.06);
}
.category-product-grid .product-card .product-body{padding:14px}
.category-product-grid .product-card .meta{display:block;margin-top:2px;line-height:1.4}
@media(max-width:900px){
  .catalog-group-frame{padding:18px}
  .catalog-group-head{flex-direction:column;align-items:flex-start}
  .catalog-group-head h3{font-size:27px}
}
@media(max-width:560px){
  .products-filter-card{padding:14px;border-radius:20px}
  .catalog-group-frame{padding:14px;border-radius:22px}
  .catalog-group-head h3{font-size:24px}
}



/* 2026-07-21 final website beautification and image-framing correction
   All non-product visuals fill/stretch their frames cleanly.
   Product article photos remain fully visible and are not cropped. */

/* Elegant full-width inner page banners: no small centered picture with black side gaps. */
.page-bg-section{
  min-height:340px !important;
  padding:58px 6vw !important;
  background-size:100% 100% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-color:#050505 !important;
  color:#fff !important;
  border-bottom:4px solid var(--gold) !important;
}
.page-bg-section::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.90) 0%,rgba(0,0,0,.70) 38%,rgba(0,0,0,.30) 68%,rgba(0,0,0,.08) 100%) !important;
}
.page-bg-section > div:first-child{
  position:relative !important;
  z-index:2 !important;
}
.page-bg-section::after{
  z-index:1 !important;
  background:radial-gradient(circle at 78% 42%,rgba(212,175,55,.10),transparent 34%) !important;
}

/* Home hero stays natural and premium. */
.hero-bg-section{
  min-height:560px !important;
  background-size:cover !important;
  background-position:center right !important;
  background-repeat:no-repeat !important;
}

/* Product article photos: never cut the actual dress/fabric/design. */
.product-card:not(.category-card) > img,
.carousel .product-card > img,
.category-product-grid .product-card:not(.category-card) > img,
.gallery-main img,
.product-gallery-frame .product-main-image,
.thumbs img,
.cart-product-image img{
  object-fit:contain !important;
  object-position:center center !important;
  background:#f8f5ec !important;
  transform:none !important;
}
.product-card:not(.category-card) > img,
.carousel .product-card > img,
.category-product-grid .product-card:not(.category-card) > img{
  height:285px !important;
  padding:6px !important;
}

/* Category pictures and boutique/page visuals fill their frames as requested. */
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image{
  width:100% !important;
  height:170px !important;
  min-height:170px !important;
  object-fit:fill !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  background:#f8f5ec !important;
  transform:none !important;
}

.about-story-image{
  display:grid !important;
  place-items:stretch !important;
  background:#f8f5ec !important;
}
.about-story-image img{
  width:100% !important;
  height:100% !important;
  min-height:520px !important;
  object-fit:fill !important;
  object-position:center center !important;
  background:#f8f5ec !important;
  transform:none !important;
}

/* Softer premium boutique polish. */
.section{
  position:relative;
}
.product-card,
.category-card,
.catalog-group-frame,
.products-filter-card,
.about-story-image,
.info-panel,
.appointment-form,
.checkout-card,
.account-card{
  box-shadow:0 18px 46px rgba(0,0,0,.07) !important;
}
.product-card:hover,
.category-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.13) !important;
}
.product-card:not(.category-card):hover > img,
.carousel .product-card:hover > img,
.category-product-grid .product-card:not(.category-card):hover > img,
.category-card:hover > img{
  transform:none !important;
}

/* All Products category sections look like premium catalogue frames. */
.catalog-group-frame{
  background:linear-gradient(180deg,#fff,#fffaf0) !important;
  border:1px solid #e5d6a9 !important;
}
.catalog-group-head{
  border-bottom:1px solid #eadfbd !important;
}
.catalog-group-head h3::after{
  content:"";
  display:block;
  width:70px;
  height:3px;
  margin-top:8px;
  border-radius:99px;
  background:var(--gold);
}

/* Product dropdown beautification, with mobile collapsed subcategories preserved. */
@media(min-width:901px){
  .products-menu-item>.dropdown-menu{
    top:calc(100% + 12px) !important;
    left:50% !important;
    transform:translateX(-34%) !important;
    min-width:300px !important;
    padding:12px !important;
    border-radius:22px !important;
    border:1px solid rgba(212,175,55,.75) !important;
    background:linear-gradient(180deg,rgba(6,6,6,.98),rgba(18,18,18,.98)) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.44) !important;
    backdrop-filter:blur(8px);
  }
  .products-menu-item>.dropdown-menu:before{
    content:"";
    position:absolute;
    top:-7px;
    left:54%;
    width:14px;
    height:14px;
    background:#0b0b0b;
    border-left:1px solid rgba(212,175,55,.75);
    border-top:1px solid rgba(212,175,55,.75);
    transform:rotate(45deg);
  }
  .products-menu-item>.dropdown-menu>li>a,
  .products-menu-item .category-menu-row>a{
    display:flex !important;
    align-items:center !important;
    min-height:46px !important;
    padding:11px 14px !important;
    border-radius:14px !important;
    font-weight:800 !important;
    color:#fff !important;
  }
  .products-menu-item>.dropdown-menu>li:first-child>a{
    margin-bottom:4px !important;
    border:1px solid rgba(212,175,55,.24) !important;
    background:linear-gradient(90deg,rgba(212,175,55,.20),rgba(212,175,55,.05)) !important;
    color:var(--gold) !important;
  }
  .products-menu-item .category-menu-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 28px !important;
    align-items:center !important;
    gap:8px !important;
    border-radius:14px !important;
  }
  .products-menu-item .category-menu-row:after{
    content:"›";
    color:var(--gold);
    font-size:22px;
    line-height:1;
    justify-self:center;
  }
  .products-menu-item .dropdown-row:hover>.category-menu-row,
  .products-menu-item .dropdown-row:hover>a,
  .products-menu-item>.dropdown-menu>li>a:hover{
    background:linear-gradient(90deg,rgba(212,175,55,.18),rgba(212,175,55,.04)) !important;
    color:#fff !important;
  }
  .products-menu-item .sub-menu{
    left:calc(100% + 12px) !important;
    top:-8px !important;
    min-width:260px !important;
    padding:12px !important;
    border-radius:20px !important;
    border:1px solid rgba(212,175,55,.75) !important;
    background:linear-gradient(180deg,rgba(12,12,12,.98),rgba(22,22,22,.98)) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.44) !important;
  }
  .products-menu-item .sub-menu a{
    padding:10px 12px !important;
    border-radius:12px !important;
    color:#f2ead1 !important;
    font-weight:700 !important;
  }
  .products-menu-item .sub-menu a:hover{
    background:rgba(212,175,55,.16) !important;
    color:#fff !important;
  }
}

/* Responsive polish. */
@media(max-width:900px){
  .page-bg-section{
    min-height:290px !important;
    padding:48px 5vw !important;
    background-size:cover !important;
  }
  .hero-bg-section{
    min-height:460px !important;
    background-size:cover !important;
    background-position:center right !important;
  }
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image{
    height:150px !important;
    min-height:150px !important;
  }
}
@media(max-width:560px){
  .page-bg-section{
    min-height:250px !important;
    padding:38px 5vw !important;
    background-size:cover !important;
  }
  .hero-bg-section{
    min-height:410px !important;
  }
  .product-card:not(.category-card) > img,
  .carousel .product-card > img,
  .category-product-grid .product-card:not(.category-card) > img{
    height:300px !important;
  }
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image{
    height:130px !important;
    min-height:130px !important;
  }
}


/* 2026-07-21 correction: all page hero banners must match the home page hero style.
   Reverted the bad compact/banner-card experiment. */
.inner-page-hero,
.hero.inner-page-hero,
.cart-hero.inner-page-hero,
.store-small-banner.inner-page-hero,
.customize-banner.inner-page-hero,
.about-hero.inner-page-hero{
  min-height:560px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  grid-template-columns:none !important;
  gap:0 !important;
  padding:86px 6vw !important;
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  background-color:#050505 !important;
  background-size:cover !important;
  background-position:center right !important;
  background-repeat:no-repeat !important;
  color:#fff !important;
  border-bottom:4px solid var(--gold) !important;
  box-shadow:none !important;
}
.inner-page-hero > div:first-child,
.cart-hero.inner-page-hero .cart-hero-inner{
  position:relative !important;
  z-index:2 !important;
  max-width:760px !important;
  width:auto !important;
}
.cart-hero.inner-page-hero .cart-hero-inner{
  max-width:1280px !important;
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  margin:0 auto !important;
}
.inner-page-hero h1{
  font-family:Georgia,serif !important;
  font-size:62px !important;
  line-height:1.03 !important;
  margin:0 0 18px !important;
  color:#fff !important;
  text-shadow:0 3px 18px rgba(0,0,0,.30) !important;
}
.inner-page-hero h1::after{
  content:"" !important;
  display:block !important;
  width:120px !important;
  height:4px !important;
  background:var(--gold) !important;
  border-radius:99px !important;
  margin-top:18px !important;
}
.inner-page-hero p{
  font-size:18px !important;
  color:#e7dcc0 !important;
  max-width:620px !important;
  line-height:1.6 !important;
  text-shadow:0 2px 12px rgba(0,0,0,.35) !important;
}
.inner-page-hero::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:1 !important;
  background:radial-gradient(circle at 78% 42%, rgba(212,175,55,.14), transparent 34%) !important;
  border:0 !important;
}
.inner-page-hero::before{
  content:none !important;
}
.inner-page-hero .store-eyebrow,
.inner-page-hero .luxury-eyebrow{
  color:var(--gold) !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  border-radius:0 !important;
}

/* Keep previous image rule: only product photos stay fully visible and uncropped. */
.product-card:not(.category-card) > img,
.carousel .product-card:not(.category-card) > img,
.category-product-grid .product-card:not(.category-card) > img,
.product-gallery-frame .product-main-image,
.gallery-main img,
.thumbs img,
.cart-product-image img{
  object-fit:contain !important;
  object-position:center center !important;
  background:#f8f5ec !important;
  transform:none !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image,
.about-story-image img,
.section-feature img{
  object-fit:fill !important;
  object-position:center center !important;
  transform:none !important;
}

@media(max-width:900px){
  .inner-page-hero,
  .hero.inner-page-hero,
  .cart-hero.inner-page-hero,
  .store-small-banner.inner-page-hero,
  .customize-banner.inner-page-hero,
  .about-hero.inner-page-hero{
    min-height:470px !important;
    padding:62px 5vw !important;
    background-size:cover !important;
    background-position:center right !important;
  }
  .inner-page-hero h1{font-size:44px !important;}
}
@media(max-width:560px){
  .inner-page-hero,
  .hero.inner-page-hero,
  .cart-hero.inner-page-hero,
  .store-small-banner.inner-page-hero,
  .customize-banner.inner-page-hero,
  .about-hero.inner-page-hero{
    min-height:430px !important;
    padding:46px 5vw !important;
  }
  .inner-page-hero h1{font-size:36px !important;}
  .inner-page-hero p{font-size:16px !important;}
}



/* 2026-07-21 category section frame correction
   Category cards should look closer to product cards.
   Category pictures should FIT inside the frame, not stretch badly. */
.category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
}
.category-grid .category-card{
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  box-shadow:0 12px 32px rgba(0,0,0,.07) !important;
  overflow:hidden !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image{
  display:block !important;
  width:100% !important;
  height:285px !important;
  min-height:285px !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  padding:6px !important;
  margin:0 !important;
  background:#f8f5ec !important;
  transform:none !important;
  border-radius:0 !important;
}
.category-grid .category-card:hover > img,
.category-grid .category-card:hover > .category-card-image,
.category-grid .category-card:hover img.category-card-image{
  transform:none !important;
}
.category-grid .category-card .product-body{
  min-height:88px !important;
  padding:15px !important;
  background:linear-gradient(180deg,#fff,#fbf8ee) !important;
  border-top:3px solid var(--gold) !important;
}
.category-grid .category-card .product-body h3{
  font-size:17px !important;
  margin:0 0 7px !important;
}
.category-grid .category-card .product-body .meta{
  font-size:13px !important;
}
@media(max-width:900px){
  .category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
  }
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image{
    height:260px !important;
    min-height:260px !important;
    object-fit:contain !important;
  }
}
@media(max-width:560px){
  .category-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image{
    height:300px !important;
    min-height:300px !important;
    object-fit:contain !important;
  }
}



/* 2026-07-21 final category card frame fix
   Category uploads are 900 x 1200 portrait, so the website frame must also be portrait.
   This removes empty left/right sides without stretching the picture. */
.category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:start !important;
}
.category-grid .category-card{
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  box-shadow:0 12px 32px rgba(0,0,0,.07) !important;
  overflow:hidden !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:3/4 !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  background:#f8f5ec !important;
  transform:none !important;
  border-radius:0 !important;
}
.category-grid .category-card:hover > img,
.category-grid .category-card:hover > .category-card-image,
.category-grid .category-card:hover img.category-card-image{
  transform:none !important;
}
.category-grid .category-card .product-body{
  min-height:82px !important;
  padding:15px !important;
  background:linear-gradient(180deg,#fff,#fbf8ee) !important;
  border-top:3px solid var(--gold) !important;
}
.category-grid .category-card .product-body h3{
  font-size:17px !important;
  margin:0 0 7px !important;
}
.category-grid .category-card .product-body .meta{
  font-size:13px !important;
}
@media(max-width:1100px){
  .category-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:900px){
  .category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
  }
}
@media(max-width:560px){
  .category-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
}



/* 2026-07-21 premium boutique picture frames
   Goal: make product and category photos look luxurious, consistent and customer-facing. */

/* A softer boutique background improves the look of all picture cards. */
body{
  background:
    radial-gradient(circle at 12% 8%,rgba(212,175,55,.06),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fbfaf6 48%,#fff 100%) !important;
}
.section{
  background:linear-gradient(180deg,#ffffff 0%,#fffdf7 100%) !important;
}
.section:nth-of-type(even){
  background:linear-gradient(180deg,#fbfaf6 0%,#ffffff 100%) !important;
}
.section-title h2{
  letter-spacing:-.4px;
}
.section-title h2::after{
  box-shadow:0 2px 8px rgba(212,175,55,.28);
}

/* Product cards: portrait, premium frame, no product cutting. */
.product-card:not(.category-card){
  display:flex !important;
  flex-direction:column !important;
  border-radius:28px !important;
  border:1px solid rgba(212,175,55,.34) !important;
  background:linear-gradient(180deg,#fffdf7 0%,#ffffff 100%) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.08) !important;
  overflow:hidden !important;
  position:relative !important;
}
.product-card:not(.category-card)::before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(212,175,55,.18);
  border-radius:22px;
  pointer-events:none;
  z-index:2;
}
.product-card:not(.category-card):hover{
  transform:translateY(-5px) !important;
  box-shadow:0 26px 66px rgba(0,0,0,.16) !important;
  border-color:rgba(212,175,55,.75) !important;
}
.product-image-frame,
.product-card:not(.category-card) > img{
  display:grid !important;
  place-items:center !important;
  width:100% !important;
  aspect-ratio:3/4 !important;
  height:auto !important;
  min-height:0 !important;
  padding:12px !important;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,255,255,.92),rgba(248,245,236,.72) 58%,rgba(236,225,193,.42) 100%) !important;
  border-bottom:3px solid var(--gold) !important;
  overflow:hidden !important;
}
.product-image-frame img,
.product-card:not(.category-card) > img{
  max-width:100% !important;
  max-height:100% !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
  padding:0 !important;
  transform:none !important;
}
.product-card:not(.category-card) .product-body{
  padding:17px 17px 18px !important;
  background:linear-gradient(180deg,#fff 0%,#fffaf0 100%) !important;
  min-height:118px !important;
}
.product-card:not(.category-card) .product-body h3{
  font-family:Georgia,serif !important;
  font-size:20px !important;
  line-height:1.2 !important;
  margin:0 0 7px !important;
  color:#111 !important;
}
.product-card:not(.category-card) .meta{
  color:#7d7464 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}
.product-card:not(.category-card) .price{
  margin-top:6px !important;
  font-size:20px !important;
  letter-spacing:.1px !important;
}

/* Category cards: same luxury frame as products, picture fills the portrait frame beautifully. */
.category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}
.category-grid .category-card{
  display:flex !important;
  flex-direction:column !important;
  border-radius:28px !important;
  border:1px solid rgba(212,175,55,.34) !important;
  background:linear-gradient(180deg,#fffdf7,#ffffff) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.08) !important;
  overflow:hidden !important;
  position:relative !important;
}
.category-grid .category-card::before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(212,175,55,.18);
  border-radius:22px;
  pointer-events:none;
  z-index:2;
}
.category-grid .category-card:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 26px 66px rgba(0,0,0,.16) !important;
  border-color:rgba(212,175,55,.75) !important;
}
.category-image-frame{
  display:block !important;
  width:100% !important;
  aspect-ratio:3/4 !important;
  height:auto !important;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.92),rgba(248,245,236,.74) 58%,rgba(236,225,193,.42) 100%) !important;
  border-bottom:3px solid var(--gold) !important;
  overflow:hidden !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image,
.category-image-frame img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  aspect-ratio:3/4 !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  background:#f8f5ec !important;
  transform:none !important;
  border-radius:0 !important;
}
.category-grid .category-card .product-body{
  padding:17px 17px 18px !important;
  min-height:108px !important;
  background:linear-gradient(180deg,#fff 0%,#fffaf0 100%) !important;
  border-top:0 !important;
}
.category-grid .category-card .product-body h3{
  font-family:Georgia,serif !important;
  font-size:20px !important;
  line-height:1.2 !important;
  margin:0 0 7px !important;
}
.category-grid .category-card .product-body .meta{
  color:#7d7464 !important;
  font-size:13px !important;
  font-weight:700 !important;
}

/* Tags become cleaner boutique labels. */
.tag{
  z-index:5 !important;
  top:14px !important;
  left:14px !important;
  padding:7px 12px !important;
  box-shadow:0 8px 20px rgba(0,0,0,.18) !important;
}
.tag.new{
  background:#050505 !important;
  color:var(--gold) !important;
}
.tag:not(.new){
  background:#b91c1c !important;
}

/* Carousel cards should keep premium card proportions. */
.carousel .product-card{
  flex:0 0 clamp(235px,21vw,310px) !important;
  scroll-snap-align:start !important;
}
.carousel{
  padding:8px 2px 18px !important;
}

/* Product detail gallery becomes premium, without cutting the product. */
.gallery-main,
.product-gallery-frame{
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.94),rgba(248,245,236,.80) 60%,rgba(236,225,193,.50) 100%) !important;
  border:1px solid rgba(212,175,55,.42) !important;
  box-shadow:0 24px 66px rgba(0,0,0,.10) !important;
}
.gallery-main img,
.product-gallery-frame .product-main-image{
  object-fit:contain !important;
  padding:14px !important;
  background:transparent !important;
}
.thumbs img{
  border:1px solid rgba(212,175,55,.35) !important;
  background:#fffaf0 !important;
  object-fit:contain !important;
}

/* Mobile/tablet responsiveness */
@media(max-width:1200px){
  .category-grid,
  .grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:900px){
  .category-grid,
  .grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
  }
  .product-card:not(.category-card) .product-body h3,
  .category-grid .category-card .product-body h3{
    font-size:18px !important;
  }
}
@media(max-width:560px){
  .category-grid,
  .grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .carousel .product-card{
    flex-basis:min(82vw,330px) !important;
  }
}



/* 2026-07-21 category frame size correction
   Category cards should stay elegant but not oversized.
   This makes Shop by Category similar to the compact size shown by the user. */
.category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:start !important;
}
.category-grid .category-card{
  border-radius:22px !important;
  max-width:100% !important;
  box-shadow:0 14px 34px rgba(0,0,0,.08) !important;
}
.category-grid .category-card::before{
  inset:8px !important;
  border-radius:18px !important;
}
.category-image-frame{
  width:100% !important;
  aspect-ratio:16/10 !important;
  height:auto !important;
  max-height:210px !important;
  min-height:0 !important;
  background:#f8f5ec !important;
  border-bottom:3px solid var(--gold) !important;
  overflow:hidden !important;
}
.category-grid .category-card > img,
.category-grid .category-card > .category-card-image,
.category-grid .category-card img.category-card-image,
.category-image-frame img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:16/10 !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  background:#f8f5ec !important;
  transform:none !important;
}
.category-grid .category-card .product-body{
  min-height:78px !important;
  padding:13px 15px 14px !important;
}
.category-grid .category-card .product-body h3{
  font-size:17px !important;
  margin:0 0 5px !important;
}
.category-grid .category-card .product-body .meta{
  font-size:12px !important;
}
@media(max-width:1200px){
  .category-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}
@media(max-width:900px){
  .category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px !important;
  }
  .category-image-frame,
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image,
  .category-image-frame img{
    aspect-ratio:16/10 !important;
    max-height:210px !important;
  }
}
@media(max-width:560px){
  .category-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .category-image-frame,
  .category-grid .category-card > img,
  .category-grid .category-card > .category-card-image,
  .category-grid .category-card img.category-card-image,
  .category-image-frame img{
    aspect-ratio:16/10 !important;
    max-height:220px !important;
  }
}



/* 2026-07-21 customer login/register visual picture full-frame fix
   The login image should fill the complete left frame and should not be hidden by heavy black overlays. */
.customer-auth-visual{
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-color:#050505 !important;
}
.customer-auth-visual:before{
  background:
    linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.10) 38%,rgba(0,0,0,.60) 76%,rgba(0,0,0,.86) 100%) !important;
}
.customer-auth-visual-content{
  text-shadow:0 3px 16px rgba(0,0,0,.80) !important;
}
.customer-auth-visual-content p{
  color:#fff4d7 !important;
}
.customer-auth-visual-content li{
  color:#fff !important;
}



/* 2026-07-21 final boutique beautification upgrade */
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 8% 4%,rgba(212,175,55,.07),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fbfaf4 46%,#fff 100%) !important;
}
.section{
  position:relative;
}
.section:before{
  content:"";
  position:absolute;
  left:6vw;
  right:6vw;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(212,175,55,.28),transparent);
  pointer-events:none;
}
.hero-bg-section{
  box-shadow:inset 0 -3px 0 rgba(212,175,55,.95);
}
.hero h1{
  text-shadow:0 6px 28px rgba(0,0,0,.45);
}
.btn{
  box-shadow:0 12px 28px rgba(212,175,55,.18);
}
.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(0,0,0,.16);
}

/* Home boutique services strip */
.boutique-highlights{
  width:min(1180px,88vw);
  margin:-42px auto 34px;
  position:relative;
  z-index:8;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.boutique-highlight-card{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  column-gap:12px;
  row-gap:3px;
  padding:18px 16px;
  border-radius:22px;
  border:1px solid rgba(212,175,55,.46);
  background:linear-gradient(135deg,#fff 0%,#fffaf0 100%);
  box-shadow:0 18px 48px rgba(0,0,0,.10);
  min-height:98px;
}
.boutique-highlight-card .highlight-icon{
  grid-row:span 2;
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#050505;
  color:var(--gold);
  border:1px solid var(--gold);
  font-size:19px;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.boutique-highlight-card strong{
  display:block;
  font-family:Georgia,serif;
  font-size:18px;
  line-height:1.15;
  color:#111;
}
.boutique-highlight-card small{
  color:#716856;
  line-height:1.45;
  font-weight:600;
}
.boutique-highlight-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 60px rgba(0,0,0,.15);
  border-color:rgba(212,175,55,.85);
}

/* Product/category finishing */
.product-card,.category-card{
  will-change:transform;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}
.product-card img,.category-card img{
  filter:saturate(1.02) contrast(1.02);
}
.product-card:hover img,.category-card:hover img{
  filter:saturate(1.06) contrast(1.04);
}
.old-price{
  opacity:.75;
}

/* Footer + floating CTAs */
.premium-footer{
  grid-template-columns:1.45fr 1fr 1fr 1.1fr !important;
  background:
    radial-gradient(circle at 8% 10%,rgba(212,175,55,.18),transparent 28%),
    linear-gradient(135deg,#050505 0%,#111 58%,#050505 100%) !important;
}
.premium-footer b{
  color:var(--gold);
  letter-spacing:.3px;
}
.premium-footer p,.premium-footer a{
  color:#efe5c8;
  line-height:1.7;
}
.footer-whatsapp-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:8px;
  padding:10px 14px;
  border:1px solid var(--gold);
  border-radius:999px;
  color:var(--gold) !important;
  font-weight:900;
}
.footer-whatsapp-link:hover{
  background:var(--gold);
  color:#000 !important;
}
.floating-whatsapp{
  position:fixed;
  right:22px;
  bottom:24px;
  z-index:1100;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:13px 17px;
  border-radius:999px;
  background:#050505;
  color:var(--gold);
  border:1px solid var(--gold);
  box-shadow:0 18px 46px rgba(0,0,0,.28);
  font-weight:900;
}
.floating-whatsapp span{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--gold);
  color:#000;
}
.floating-whatsapp:hover{
  background:var(--gold);
  color:#000;
}
.floating-whatsapp:hover span{
  background:#000;
  color:var(--gold);
}
.back-to-top{
  position:fixed;
  right:22px;
  bottom:84px;
  z-index:1099;
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid var(--gold);
  background:#fffaf0;
  color:#000;
  box-shadow:0 14px 36px rgba(0,0,0,.18);
  font-weight:900;
  opacity:0;
  pointer-events:none;
  transform:translateY(8px);
  transition:.22s ease;
}
.back-to-top.is-visible{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
.image-protection-toast{
  box-shadow:0 18px 44px rgba(0,0,0,.26) !important;
}

/* More premium small-screen experience */
@media(max-width:1000px){
  .boutique-highlights{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:-28px;
  }
  .premium-footer{
    grid-template-columns:1fr 1fr !important;
  }
}
@media(max-width:650px){
  .boutique-highlights{
    width:92vw;
    grid-template-columns:1fr;
    margin:18px auto 18px;
  }
  .boutique-highlight-card{
    min-height:86px;
  }
  .floating-whatsapp{
    right:14px;
    bottom:14px;
    padding:12px 14px;
  }
  .floating-whatsapp b{
    display:none;
  }
  .back-to-top{
    right:14px;
    bottom:72px;
  }
  .premium-footer{
    grid-template-columns:1fr !important;
  }
}



/* 2026-07-21 critical review resolution: image consistency, trust, reviews, mobile polish */
.hero{
  min-height:clamp(410px,54vh,520px) !important;
  padding-top:58px !important;
  padding-bottom:58px !important;
}
.inner-page-hero{
  min-height:clamp(300px,42vh,420px) !important;
}
.product-card:not(.category-card){
  height:100% !important;
}
.product-card:not(.category-card) .product-image-frame{
  aspect-ratio:3/4 !important;
  padding:0 !important;
  background:#f8f5ec !important;
}
.product-card:not(.category-card) .product-image-frame img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  background:#f8f5ec !important;
}
.product-card:not(.category-card) .product-body{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  min-height:168px !important;
}
.product-card:not(.category-card) .product-body h3{
  min-height:46px !important;
}
.product-card:not(.category-card) .price{
  margin-top:auto !important;
}
.product-card-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:12px;
}
.mini-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  border-radius:999px;
  border:1px solid rgba(212,175,55,.55);
  background:#fff;
  color:#111;
  font-size:12px;
  font-weight:900;
  line-height:1;
  padding:9px 10px;
}
.mini-btn.gold{
  background:var(--gold);
  color:#000;
  border-color:var(--gold);
}
.mini-btn.outline{
  background:#050505;
  color:var(--gold);
  border-color:#050505;
}
.mini-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.stock-tag{
  left:auto !important;
  right:14px !important;
  background:#333 !important;
  color:#fff !important;
}
.product-card.is-unavailable{
  opacity:.92;
}
.product-trust-strip{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:14px 0 18px;
}
.product-trust-strip span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  border-radius:12px;
  border:1px solid rgba(212,175,55,.42);
  background:#fffaf0;
  color:#111;
  font-weight:900;
  font-size:12px;
  text-align:center;
}
.trust-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.trust-info-grid article{
  background:linear-gradient(180deg,#fff,#fffaf0);
  border:1px solid rgba(212,175,55,.42);
  border-radius:24px;
  padding:22px;
  box-shadow:0 18px 44px rgba(0,0,0,.08);
}
.trust-info-grid article span{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:#050505;
  color:var(--gold);
  font-weight:900;
  margin-bottom:12px;
}
.trust-info-grid article h3{
  font-family:Georgia,serif;
  margin:0 0 8px;
}
.trust-info-grid article p{
  margin:0;
  color:#625a4d;
  line-height:1.6;
}

/* Reviews with customer photos */
.customer-reviews-home{
  background:linear-gradient(180deg,#fffdf7,#fff) !important;
}
.customer-review-grid,
.review-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.review-card{
  border:1px solid rgba(212,175,55,.38) !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,#fff,#fffaf0) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.08) !important;
  padding:18px !important;
  overflow:hidden;
}
.review-card-image{
  display:block;
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center;
  border-radius:18px;
  margin:-4px 0 14px;
  background:#f8f5ec;
  border:1px solid rgba(212,175,55,.32);
}
.review-card-gallery,
.review-mini-gallery,
.admin-review-gallery{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:12px 0;
}
.review-card-gallery img,
.review-mini-gallery img{
  width:64px;
  height:84px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid rgba(212,175,55,.32);
  background:#f8f5ec;
}
.review-upload-preview{
  display:block;
  width:110px;
  height:146px;
  object-fit:cover;
  border-radius:14px;
  border:1px solid rgba(212,175,55,.35);
  margin-top:8px;
  background:#f8f5ec;
}
.review-submit-shell{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:24px;
  align-items:start;
}
.review-submit-copy{
  position:sticky;
  top:110px;
  background:linear-gradient(135deg,#050505,#221b0d);
  color:#fff;
  border:1px solid var(--gold);
  border-radius:28px;
  padding:28px;
  box-shadow:0 24px 66px rgba(0,0,0,.16);
}
.review-submit-copy h2{
  font-family:Georgia,serif;
  font-size:34px;
  line-height:1.1;
  margin:8px 0 12px;
}
.review-submit-copy p{
  color:#f0e5c8;
  line-height:1.65;
}

/* Admin review photos */
.admin-review-gallery img{
  width:98px;
  height:130px;
  object-fit:cover;
  border-radius:14px;
  border:1px solid var(--line);
  background:#f8f5ec;
}

/* Better mobile hierarchy */
@media(max-width:1100px){
  .customer-review-grid,.review-grid,.trust-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .hero{
    min-height:360px !important;
    padding-top:44px !important;
    padding-bottom:44px !important;
  }
  .hero h1{font-size:38px !important;}
  .hero p{font-size:15px !important;}
  .product-card:not(.category-card) .product-body{
    min-height:156px !important;
    padding:13px !important;
  }
  .product-card:not(.category-card) .product-body h3{
    font-size:16px !important;
    min-height:40px !important;
  }
  .product-card:not(.category-card) .meta{font-size:11px !important;}
  .product-card:not(.category-card) .price{font-size:16px !important;}
  .mini-btn{font-size:11px;min-height:32px;padding:8px;}
  .product-card-actions{gap:6px;}
  .review-submit-shell{grid-template-columns:1fr;}
  .review-submit-copy{position:static;}
  .customer-review-grid,.review-grid,.trust-info-grid{grid-template-columns:1fr;}
  .product-trust-strip{grid-template-columns:1fr;}
}
@media(max-width:480px){
  .grid:not(.category-grid){
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }
  .product-card:not(.category-card){
    border-radius:18px !important;
  }
  .product-card:not(.category-card)::before{display:none !important;}
  .product-card:not(.category-card) .product-body{
    min-height:160px !important;
  }
  .mini-btn.outline{
    display:none;
  }
}

.review-filter-bar{
  display:flex;
  align-items:end;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 22px;
  padding:14px;
  border:1px solid rgba(212,175,55,.36);
  border-radius:18px;
  background:#fffaf0;
}
.review-filter-bar label{
  font-size:12px;
  font-weight:900;
  color:#111;
}
.review-filter-bar select{
  min-width:150px;
}
.photo-filter-label{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:42px;
}
.photo-filter-label input{
  width:auto;
}


/* 2026-07-21 remove home luxury service cards */
.boutique-highlights{display:none !important;}



/* 2026-07-21 customer reviews displayed as proper cards */
.customer-reviews-home .review-grid,
.customer-review-page-section .review-grid,
.product-reviews-section .review-grid,
.customer-review-grid,
.home-review-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.customer-reviews-home .review-card,
.customer-review-page-section .review-card,
.product-reviews-section .review-card,
.customer-review-card{
  display:flex !important;
  flex-direction:column !important;
  min-height:100% !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:26px !important;
  border:1px solid rgba(212,175,55,.42) !important;
  background:linear-gradient(180deg,#ffffff 0%,#fffaf0 100%) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.10) !important;
  position:relative !important;
}
.customer-reviews-home .review-card::before,
.customer-review-page-section .review-card::before,
.product-reviews-section .review-card::before,
.customer-review-card::before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(212,175,55,.16);
  border-radius:20px;
  pointer-events:none;
  z-index:1;
}
.customer-reviews-home .review-card:hover,
.customer-review-page-section .review-card:hover,
.product-reviews-section .review-card:hover,
.customer-review-card:hover{
  transform:translateY(-4px);
  border-color:rgba(212,175,55,.78) !important;
  box-shadow:0 26px 66px rgba(0,0,0,.16) !important;
}
.review-card-image{
  width:100% !important;
  height:auto !important;
  aspect-ratio:4/3 !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  border-radius:0 !important;
  border:0 !important;
  border-bottom:3px solid var(--gold) !important;
  background:#f8f5ec !important;
}
.review-card .review-stars{
  padding:18px 20px 0 !important;
  color:var(--gold) !important;
  letter-spacing:2px !important;
  font-size:18px !important;
  line-height:1 !important;
}
.review-card h3{
  padding:10px 20px 0 !important;
  margin:0 !important;
  font-family:Georgia,serif !important;
  font-size:21px !important;
  line-height:1.25 !important;
  color:#111 !important;
}
.review-card > p{
  padding:10px 20px 0 !important;
  margin:0 !important;
  color:#5f574b !important;
  line-height:1.65 !important;
  flex:1 !important;
}
.review-card > small{
  display:block !important;
  margin-top:auto !important;
  padding:14px 20px 18px !important;
  color:#111 !important;
  font-weight:900 !important;
  border-top:1px solid rgba(212,175,55,.22) !important;
  background:rgba(255,250,240,.72) !important;
}
.review-card-gallery{
  padding:0 20px 18px !important;
  margin:0 !important;
  display:flex !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}
.review-card-gallery img{
  width:68px !important;
  height:86px !important;
  object-fit:cover !important;
  border-radius:12px !important;
  border:1px solid rgba(212,175,55,.36) !important;
  background:#f8f5ec !important;
}
.brand-reply{
  margin:0 20px 20px !important;
  padding:14px !important;
  border-radius:16px !important;
  background:#050505 !important;
  color:#fff !important;
  border:1px solid var(--gold) !important;
}
.brand-reply b{
  color:var(--gold) !important;
}
.brand-reply p{
  color:#f0e5c8 !important;
  margin:6px 0 0 !important;
  padding:0 !important;
}
.review-filter-bar{
  margin-bottom:24px !important;
}

/* If review has no picture, keep it as a beautiful text card */
.review-card:not(:has(.review-card-image)) .review-stars{
  padding-top:24px !important;
}
@media(max-width:1100px){
  .customer-reviews-home .review-grid,
  .customer-review-page-section .review-grid,
  .product-reviews-section .review-grid,
  .customer-review-grid,
  .home-review-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:650px){
  .customer-reviews-home .review-grid,
  .customer-review-page-section .review-grid,
  .product-reviews-section .review-grid,
  .customer-review-grid,
  .home-review-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .review-card h3{
    font-size:19px !important;
  }
}
