:root{--bg0:#12001b;--bg1:#2a0040;--ink:#fff7ff;--muted:rgba(255,247,255,.78);--gold:#ffd56a}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:radial-gradient(1200px 700px at 10% -10%, rgba(255,79,216,.40), transparent 60%),radial-gradient(900px 600px at 100% 0%, rgba(199,125,255,.38), transparent 55%),radial-gradient(900px 600px at 40% 110%, rgba(138,43,226,.35), transparent 55%),linear-gradient(160deg, #12001b, #2a0040);color:var(--ink)}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,92%);margin:0 auto}.announcement-bar{padding:10px 16px;text-align:center;background:linear-gradient(90deg,rgba(255,79,216,.20),rgba(138,43,226,.20));border-bottom:1px solid rgba(255,255,255,.12);font-weight:700}.site-header{position:sticky;top:0;z-index:30;background:rgba(18,0,27,.60);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 10px 26px rgba(255,79,216,.22))}.brand-name{font-weight:900;font-size:1.1rem;text-shadow:0 0 18px rgba(255,79,216,.18)}.brand-tag{font-size:.86rem;color:var(--muted)}.nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.nav a,.cart-btn{padding:10px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06)}.cart-btn{cursor:pointer;color:#fff}.cart-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#fff;color:#12001b;font-weight:900}.hero{padding:38px 0}.hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:16px;align-items:stretch}.kicker{display:inline-flex;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);font-weight:700}.hero h1{font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.03;margin:14px 0 12px;text-shadow:0 0 20px rgba(255,79,216,.18)}.hero p{font-size:1.04rem;line-height:1.6;color:var(--muted);max-width:680px}.hero-cta{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 12px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;cursor:pointer}.btn.primary{background:linear-gradient(135deg, rgba(255,79,216,.95), rgba(138,43,226,.95));box-shadow:0 18px 45px rgba(255,79,216,.18)}.badges{display:flex;gap:10px;flex-wrap:wrap}.badge,.tag{display:inline-flex;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);font-weight:700}.note{margin-top:12px;padding:12px;border-radius:16px;background:rgba(138,43,226,.16);border:1px solid rgba(255,255,255,.12)}.hero-card,.about-card,.card,.product{border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.14);box-shadow:0 18px 60px rgba(0,0,0,.30)}.hero-card{padding:18px}.hero-logo{max-width:100%;height:auto;display:block;margin:0 auto 10px;filter:drop-shadow(0 20px 40px rgba(255,79,216,.18))}.hero-card-title,.section-title{font-weight:900}.section{padding:26px 0}.section-head{margin-bottom:14px}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.controls{display:flex;gap:10px;flex-wrap:wrap}.input,.select,.textarea{padding:11px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.25);color:#fff}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.product{overflow:hidden}.img{height:180px;background:linear-gradient(135deg, rgba(255,79,216,.18), rgba(138,43,226,.18));display:grid;place-items:center;border-bottom:1px solid rgba(255,255,255,.10)}.img img{width:100%;height:100%;object-fit:cover}.ph{font-weight:900}.body{padding:14px;display:grid;gap:8px}.title{font-weight:900;font-size:1.05rem}.meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted)}.price{color:var(--gold);font-weight:900}.desc{color:var(--muted);line-height:1.45}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cart-drawer{position:fixed;inset:0;background:rgba(0,0,0,.48);opacity:0;pointer-events:none;transition:.22s ease}.cart-drawer.open{opacity:1;pointer-events:auto}.cart-panel{position:absolute;top:0;right:0;width:min(420px,96vw);height:100%;padding:18px;background:linear-gradient(180deg, rgba(18,0,27,.98), rgba(42,0,64,.98));border-left:1px solid rgba(255,255,255,.12);display:grid;grid-template-rows:auto 1fr auto auto;gap:12px}.cart-head,.sum-row{display:flex;justify-content:space-between;align-items:center}.icon-btn,.qty-btn,.remove-btn{padding:8px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.cart-items{display:grid;gap:10px;overflow:auto}.cart-item{padding:12px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);display:grid;gap:8px}.cart-item-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cart-summary{padding-top:10px;border-top:1px solid rgba(255,255,255,.10);display:grid;gap:8px}.cart-actions{display:flex;gap:10px}.admin-list{display:grid;gap:10px}.admin-item{padding:12px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10)}.hr{border:none;border-top:1px solid rgba(255,255,255,.12)}.sparkles{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(2px 2px at 15% 30%, rgba(255,255,255,.55), transparent 60%),radial-gradient(2px 2px at 35% 18%, rgba(255,255,255,.35), transparent 60%),radial-gradient(2px 2px at 70% 40%, rgba(255,255,255,.45), transparent 60%),radial-gradient(2px 2px at 85% 22%, rgba(255,255,255,.35), transparent 60%),radial-gradient(2px 2px at 25% 70%, rgba(255,255,255,.35), transparent 60%),radial-gradient(2px 2px at 60% 78%, rgba(255,255,255,.45), transparent 60%),radial-gradient(2px 2px at 90% 72%, rgba(255,255,255,.40), transparent 60%);opacity:.18}.toggle-switch{position:relative;width:50px;height:26px}.toggle-switch input{display:none}.slider{position:absolute;inset:0;background:#bbb;border-radius:34px;cursor:pointer;transition:.25s}.slider:before{content:'';position:absolute;height:20px;width:20px;left:3px;bottom:3px;background:white;border-radius:50%;transition:.25s}input:checked + .slider{background:#ff4fd8}input:checked + .slider:before{transform:translateX(24px)}@media (max-width:980px){.hero-inner,.split{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.grid{grid-template-columns:1fr}}

.script-brand{
  font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;
  font-size:1.45rem;
  letter-spacing:.3px;
}
.hero-logo-wrap{
  margin-bottom:16px;
}
.hero-main-logo{
  width:min(560px,96%);
  display:block;
  filter:drop-shadow(0 0 28px rgba(255,105,180,.34));
}
.hero-feature-panel{
  display:grid;
  gap:14px;
  align-content:start;
}
.feature-panel-head{
  display:grid;
  gap:8px;
}
.panel-kicker{
  display:inline-flex;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  font-weight:800;
  color:#fff3ff;
}
.feature-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.feature-mini-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:start;
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}
.feature-mini-card p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.93rem;
  line-height:1.45;
}
.feature-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg, rgba(255,79,216,.24), rgba(138,43,226,.24));
  border:1px solid rgba(255,255,255,.12);
  font-size:1.2rem;
}
.login-overlay{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  background:rgba(8,2,16,.78);
  backdrop-filter:blur(10px);
}
.login-overlay.hidden{
  display:none;
}
.login-card{
  width:min(520px,92vw);
  padding:24px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 70px rgba(0,0,0,.38);
  text-align:center;
}
.login-logo{
  width:min(360px,92%);
  display:block;
  margin:0 auto 10px;
  filter:drop-shadow(0 0 25px rgba(255,79,216,.30));
}
.login-form{
  display:grid;
  gap:12px;
  text-align:left;
  margin-top:14px;
}
.full-btn{
  width:100%;
}
.login-error{
  min-height:22px;
  color:#ffd6e8;
  font-weight:700;
  text-align:center;
}
@media (max-width:980px){
  .feature-grid{grid-template-columns:1fr;}
}


.standout-product{
  box-shadow:0 22px 70px rgba(0,0,0,.34), 0 0 0 1px rgba(255,79,216,.08);
}
.standout-product .img{
  height:220px;
}
.product-actions-wrap{
  flex-wrap:wrap;
}
.tiny{font-size:.84rem;}


.special-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.special-card,.page-card,.standout-info-card{
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 60px rgba(0,0,0,.30);
  overflow:hidden;
}
.special-image{
  height:240px;
  background:linear-gradient(135deg, rgba(255,79,216,.22), rgba(138,43,226,.22));
  display:grid;
  place-items:center;
}
.special-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.special-body{
  padding:18px;
  display:grid;
  gap:10px;
}
.page-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.page-card{
  padding:18px;
  display:grid;
  gap:10px;
}
.feature-list{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.feature-list-item{
  display:flex;
  gap:10px;
  align-items:center;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}
.accent-card{
  background:linear-gradient(180deg, rgba(255,79,216,.14), rgba(138,43,226,.10));
}
.page-hero-card,.page-content-card{
  padding:20px;
}
.page-hero-image{
  width:100%;
  max-height:360px;
  object-fit:cover;
  border-radius:20px;
  margin-bottom:14px;
}
.page-content{
  white-space:pre-wrap;
  line-height:1.7;
  color:var(--muted);
}
@media (max-width:980px){
  .special-grid,.page-grid{grid-template-columns:1fr;}
}


.brand-text-stack{
  display:grid;
  gap:2px;
}
.brand-eyebrow{
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:800;
  color:rgba(255,240,255,.82);
}
.script-brand{
  font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;
  font-size:1.7rem;
  line-height:1.02;
  letter-spacing:.02em;
  text-shadow:0 0 18px rgba(255,79,216,.16);
}
.brand-tag{
  font-size:.82rem;
  color:rgba(255,247,255,.72);
}
.welcome-block{
  display:grid;
  gap:10px;
  padding:18px 20px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 16px 50px rgba(0,0,0,.22);
  max-width:760px;
}
.welcome-label{
  display:inline-flex;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,79,216,.18), rgba(138,43,226,.18));
  border:1px solid rgba(255,255,255,.12);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.76rem;
  font-weight:900;
  color:#fff2fb;
}
.hero h1{
  margin:0;
}
.hero p{
  margin:0;
}
@media (max-width:640px){
  .script-brand{
    font-size:1.34rem;
  }
}


/* Boutique logo-style refinements */
body{
  letter-spacing:.01em;
}
.brand-name.script-brand,
.hero h1,
.section-title,
.hero-card-title,
.page-card h3,
.special-body h3{
  font-family:"Georgia","Palatino Linotype","Book Antiqua","Times New Roman",serif;
}
.brand-name.script-brand{
  font-family:"Brush Script MT","Segoe Script","Snell Roundhand","Lucida Handwriting",cursive;
  font-size:1.8rem;
  color:#fff6ff;
  text-shadow:0 0 18px rgba(255,79,216,.20), 0 0 30px rgba(199,125,255,.12);
}
.brand-eyebrow,
.panel-kicker,
.welcome-label{
  font-family:"Georgia","Palatino Linotype","Book Antiqua",serif;
}
.hero h1{
  font-size:clamp(2.4rem,4vw,3.7rem);
  letter-spacing:.01em;
  color:#fff8ff;
}
.hero p,
.muted,
.desc,
.about-card p,
.page-content{
  font-family:"Georgia","Palatino Linotype","Book Antiqua",serif;
}
.hero-card,
.special-card,
.page-card,
.about-card,
.card,
.product{
  backdrop-filter: blur(8px);
}
.special-body h3,
.page-card h3,
.title{
  font-family:"Georgia","Palatino Linotype","Book Antiqua",serif;
  letter-spacing:.01em;
}


.image-preview-wrap{
  min-height:160px;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  display:grid;
  place-items:center;
}
.product-image-preview{
  max-width:100%;
  max-height:240px;
  object-fit:contain;
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
}

/* LOGO-MATCHED FULL SITE REFINEMENT */
:root{
  --rose:#ff73d9;
  --rose2:#ffb0ea;
  --violet:#b04dff;
  --violet2:#7b2cff;
  --gold2:#f4c56a;
}
body{
  background:
    radial-gradient(1200px 700px at 15% -10%, rgba(255,115,217,.42), transparent 60%),
    radial-gradient(900px 620px at 95% 0%, rgba(176,77,255,.34), transparent 55%),
    radial-gradient(900px 620px at 50% 120%, rgba(123,44,255,.32), transparent 55%),
    linear-gradient(160deg,#2f0f5f 0%, #571a7a 35%, #24002f 100%);
}
.site-header{
  background:rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.20);
  box-shadow:0 16px 44px rgba(0,0,0,.18);
}
.brand-logo{
  width:64px;height:64px;border-radius:14px;
  background:rgba(255,255,255,.14);
  padding:4px;
}
.brand-name.script-brand{
  color:#fff9ff;
  text-shadow:0 0 16px rgba(255,115,217,.28), 0 0 28px rgba(176,77,255,.14);
}
.nav a,.cart-btn{
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.24);
}
.hero{
  padding-top:32px;
}
.hero-copy,.hero-card,.product,.about-card,.card,.special-card,.page-card{
  box-shadow:0 24px 70px rgba(25,0,40,.28);
}
.hero-main-logo{
  width:min(640px, 100%);
  margin-bottom:6px;
  filter:drop-shadow(0 0 24px rgba(255,115,217,.34)) drop-shadow(0 0 54px rgba(176,77,255,.22));
}
.hero-feature-panel{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08)),
    radial-gradient(circle at top right, rgba(255,115,217,.18), transparent 40%);
}
.feature-mini-card,.feature-list-item{
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);
}
.panel-kicker,.welcome-label{
  background:linear-gradient(135deg, rgba(255,115,217,.26), rgba(176,77,255,.20));
  color:#fff8ff;
}
.price{ color:var(--gold2); text-shadow:0 0 16px rgba(244,197,106,.16);}
.btn.primary{
  background:linear-gradient(135deg, #ff4fd8, #8a2be2);
}
.btn.ghost{
  background:rgba(255,255,255,.12);
}
.special-card{
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.08)),
    radial-gradient(circle at top left, rgba(255,115,217,.14), transparent 36%);
}
.special-image,.img{
  background:linear-gradient(135deg, rgba(255,115,217,.28), rgba(138,43,226,.24));
}
.announcement-bar{
  background:linear-gradient(90deg, rgba(255,115,217,.28), rgba(176,77,255,.24));
}
.login-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.10)),
    radial-gradient(circle at top center, rgba(255,115,217,.20), transparent 40%);
  border:1px solid rgba(255,255,255,.22);
}


.request-form-card,.request-info-card{
  padding:20px;
}


.design-tool-card{
  padding:16px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.14);
  display:grid;
  gap:12px;
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}

/* final live fixes */
.cart-drawer{opacity:0;pointer-events:none;overflow:hidden;}
.cart-drawer.open{opacity:1;pointer-events:auto;}
.request-form-card,.request-info-card{padding:20px;}
#reqMessage{min-height:240px;}



/* ===== Luxury radiant boutique upgrade ===== */
:root{
  --lux-pink:#ff7edb;
  --lux-pink-soft:#ffd4f3;
  --lux-purple:#8b37d7;
  --lux-violet:#6323bb;
  --lux-gold:#f3c86b;
  --lux-gold-soft:#ffe5a6;
  --lux-white:rgba(255,255,255,.96);
  --lux-card:rgba(255,255,255,.14);
  --lux-card-2:rgba(255,255,255,.08);
  --lux-border:rgba(255,255,255,.18);
  --lux-shadow:0 20px 50px rgba(37,0,56,.28);
}

body{
  background:
    radial-gradient(1200px 700px at 12% -8%, rgba(255,126,219,.28), transparent 58%),
    radial-gradient(900px 620px at 92% 0%, rgba(139,55,215,.30), transparent 52%),
    radial-gradient(900px 720px at 50% 120%, rgba(243,200,107,.16), transparent 56%),
    linear-gradient(160deg,#23033b 0%, #4a1569 38%, #14001f 100%);
  color:var(--lux-white);
}

.sparkles{
  background-image:
    radial-gradient(circle at 15% 20%, rgba(255,255,255,.95) 0 1px, transparent 1.5px),
    radial-gradient(circle at 70% 12%, rgba(255,226,166,.9) 0 1.2px, transparent 1.7px),
    radial-gradient(circle at 35% 70%, rgba(255,180,235,.9) 0 1.1px, transparent 1.7px),
    radial-gradient(circle at 88% 58%, rgba(255,255,255,.9) 0 1px, transparent 1.5px);
  opacity:.45;
}

.site-header{
  backdrop-filter: blur(16px);
  background:linear-gradient(180deg, rgba(255,255,255,.15), rgba(255,255,255,.08));
  border-bottom:1px solid rgba(255,255,255,.14);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}

.header-inner{
  gap:16px;
}

.brand{
  min-width:0;
  gap:14px;
}

.brand-logo{
  filter: drop-shadow(0 0 18px rgba(255,126,219,.38));
}

.brand-name,
.script-brand,
.glow-script,
.inline-script{
  font-family: "Brush Script MT","Lucida Handwriting","Apple Chancery","Segoe Script",cursive;
}

.brand-name{
  font-size:clamp(1.15rem,2vw,1.6rem);
  line-height:1.05;
  color:#fff7ff;
  text-shadow:0 0 10px rgba(255,126,219,.35), 0 0 18px rgba(243,200,107,.14);
}

.brand-tag{
  color:var(--lux-gold-soft);
  letter-spacing:.08em;
}

.nav{
  flex-wrap:wrap;
  gap:8px 14px;
}

.nav a{
  color:#fff6fd;
  text-shadow:0 0 10px rgba(255,126,219,.24);
  white-space:nowrap;
}

.wrap{
  width:min(1220px, calc(100% - 28px));
}

.hero,
.hero-grid,
.split{
  align-items:start;
  gap:26px;
}

.luxury-copy{
  max-width:100%;
}

.glow-title{
  font-size:clamp(2.5rem, 6vw, 4.9rem);
  line-height:1.03;
  letter-spacing:-.03em;
  max-width:16ch;
  overflow-wrap:anywhere;
  text-wrap:balance;
  color:#fff7ff;
  text-shadow:
    0 0 14px rgba(255,126,219,.32),
    0 0 24px rgba(139,55,215,.22),
    0 0 40px rgba(243,200,107,.10);
}

.hero-accent{
  color:var(--lux-gold-soft);
  text-shadow:0 0 10px rgba(243,200,107,.28), 0 0 26px rgba(255,126,219,.18);
}

.glow-script{
  color:var(--lux-pink-soft);
  text-shadow:0 0 12px rgba(255,126,219,.38), 0 0 22px rgba(255,126,219,.22);
}

.inline-script{
  font-size:1.12em;
  padding-right:.08em;
}

.glow-sub,
.hero-sub{
  max-width:64ch;
  color:rgba(255,247,255,.88);
  line-height:1.7;
}

.panel-kicker,
.section-kicker{
  color:var(--lux-gold-soft);
  letter-spacing:.18em;
  text-shadow:0 0 10px rgba(243,200,107,.2);
}

.luxury-section-title{
  font-size:clamp(1.8rem, 4vw, 3rem);
  line-height:1.08;
  overflow-wrap:anywhere;
  color:#fff8ff;
  text-shadow:0 0 12px rgba(255,126,219,.25);
}

.card,
.about-card,
.feature-card,
.product-card,
.page-card,
.admin-item,
.cart-panel,
.drawer-panel,
.erp-chart-card{
  background:linear-gradient(180deg, var(--lux-card), var(--lux-card-2));
  border:1px solid var(--lux-border);
  box-shadow:var(--lux-shadow);
  backdrop-filter: blur(14px);
}

.hero-card,
.about-card,
.feature-card{
  border-radius:30px;
}

.hero-main-logo{
  filter: drop-shadow(0 0 30px rgba(255,126,219,.36));
}

.btn,
button.btn,
input[type="submit"],
a.btn{
  position:relative;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.18);
  padding:13px 20px;
  font-weight:900;
  letter-spacing:.02em;
  transform:translateY(0);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 10px 18px rgba(0,0,0,.18),
    0 4px 0 rgba(46,10,74,.9);
}

.btn:hover,
button.btn:hover,
a.btn:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);
}

.btn:active,
button.btn:active,
a.btn:active{
  transform:translateY(2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 4px 10px rgba(0,0,0,.18),
    0 1px 0 rgba(46,10,74,.8);
}

.btn.primary{
  color:#fff;
  background:linear-gradient(180deg, #ff78d8 0%, #d94aba 55%, #9c2dc0 100%);
  text-shadow:0 0 10px rgba(255,255,255,.15);
}

.btn.ghost{
  color:#fff8ff;
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.08));
}

.cta-row,
.row.gap{
  flex-wrap:wrap;
  gap:12px;
}

.product-grid,
.page-grid,
.feature-grid{
  gap:22px;
}

.product-card,
.page-card{
  overflow:hidden;
  border-radius:26px;
}

.product-media,
.page-media{
  background:
    linear-gradient(135deg, rgba(255,126,219,.24), rgba(139,55,215,.20)),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.05));
  min-height:220px;
}

.product-media img,
.page-media img{
  object-fit:cover;
  width:100%;
  height:100%;
}

.product-body,
.page-body,
.card .body{
  display:grid;
  gap:8px;
}

.product-title,
.page-title{
  color:#fff7ff;
  font-weight:900;
  line-height:1.15;
  overflow-wrap:anywhere;
}

.product-price{
  color:var(--lux-gold-soft);
  font-size:1.45rem;
  font-weight:900;
  text-shadow:0 0 10px rgba(243,200,107,.18);
}

.badge,
.tag,
.pill{
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,126,219,.18), rgba(255,255,255,.07));
  border:1px solid rgba(255,255,255,.16);
  color:#fff7ff;
}

.input,
.select,
.textarea,
input,
select,
textarea{
  border-radius:16px;
  background:rgba(255,255,255,.94);
  color:#2d1636;
  border:1px solid rgba(108,39,138,.18);
  min-width:0;
}

.field span{
  color:#fff3fb;
  font-weight:800;
}

form,
.form-stack{
  min-width:0;
}

textarea{
  resize:vertical;
}

.note{
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,248,252,.94), rgba(255,244,250,.86));
  color:#461e4f;
  border:1px solid rgba(139,55,215,.14);
}

.admin-list{
  display:grid;
  gap:12px;
}

.sum-row{
  color:#fff7ff;
}

hr.hr{
  border-color:rgba(255,255,255,.14);
}

footer,
.site-footer{
  border-top:1px solid rgba(255,255,255,.12);
}

@media (max-width: 1100px){
  .hero,
  .hero-grid,
  .split{
    grid-template-columns:1fr !important;
  }
  .glow-title{
    max-width:100%;
  }
}

@media (max-width: 760px){
  .wrap{
    width:min(100% - 20px, 1220px);
  }
  .header-inner{
    grid-template-columns:1fr;
  }
  .nav{
    justify-content:flex-start;
  }
  .glow-title{
    font-size:clamp(2.1rem, 10vw, 3.3rem);
  }
  .luxury-section-title{
    font-size:clamp(1.55rem, 7vw, 2.2rem);
  }
  .product-grid,
  .page-grid,
  .feature-grid{
    grid-template-columns:1fr !important;
  }
}


/* ===== Final professional boutique design refinements ===== */
.hero-logo-frame,
.hero-logo-wrap,
.hero-main-logo{
  max-width:100%;
}
.brand-text-stack,
.brand-text{
  min-width:0;
}
.brand-eyebrow{
  font-family:"Brush Script MT","Lucida Handwriting","Segoe Script",cursive;
  font-size:1.05rem;
  color:#ffe6f7;
  text-shadow:0 0 10px rgba(255,126,219,.28);
}
.script-brand,
.glow-script,
.inline-script{
  font-family:"Brush Script MT","Lucida Handwriting","Apple Chancery","Segoe Script",cursive !important;
}
.hero-main-logo{
  border-radius:28px;
}
.hero-logo-frame{
  padding:18px;
  border-radius:30px;
  background:
    radial-gradient(circle at top, rgba(255,255,255,.18), transparent 42%),
    linear-gradient(135deg, rgba(255,126,219,.18), rgba(139,55,215,.12));
  border:1px solid rgba(255,255,255,.14);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.06) inset,
    0 18px 50px rgba(29,0,44,.28),
    0 0 40px rgba(255,126,219,.14);
}
.hero-copy{
  display:grid;
  gap:14px;
}
.hero-copy .kicker,
.hero-copy .panel-kicker{
  width:max-content;
  max-width:100%;
}
.hero-copy h1,
.hero-copy .glow-title{
  margin:0;
}
.hero-copy p,
.hero-copy .hero-sub{
  margin:0;
}
.glow-title,
#heroTitle{
  font-family: Georgia, "Times New Roman", serif;
  font-weight:900;
}
#heroTitle{
  display:block;
}
.hero-title-rich{
  display:block;
  font-size:clamp(2.4rem,6vw,4.8rem);
  line-height:1.02;
  letter-spacing:-.03em;
  color:#fff8ff;
  text-wrap:balance;
  text-shadow:
    0 0 14px rgba(255,126,219,.22),
    0 0 36px rgba(139,55,215,.16),
    0 0 46px rgba(243,200,107,.10);
}
.hero-title-rich .hero-script{
  display:inline;
  color:#ffdff3;
  font-family:"Brush Script MT","Lucida Handwriting","Segoe Script",cursive;
  font-weight:700;
  text-shadow:
    0 0 14px rgba(255,126,219,.30),
    0 0 24px rgba(255,126,219,.18);
}
.hero-title-rich .hero-gold{
  color:#ffe4a3;
  text-shadow:
    0 0 10px rgba(243,200,107,.24),
    0 0 18px rgba(255,126,219,.10);
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.08), transparent 12%),
    radial-gradient(circle at 77% 18%, rgba(255,215,155,.08), transparent 11%),
    radial-gradient(circle at 56% 70%, rgba(255,126,219,.07), transparent 15%);
}
.hero{
  position:relative;
}
.section-title,
.luxury-section-title{
  text-wrap:balance;
}
.product-card,
.page-card,
.feature-card,
.about-card,
.hero-card{
  overflow:hidden;
}
.product-body,
.page-body,
.about-card,
.feature-card,
.card .body{
  padding-bottom:2px;
}
.product-title,
.page-title,
.card h3,
.card h4{
  margin:0;
  overflow-wrap:anywhere;
}
.page-card .btn,
.product-card .btn{
  width:100%;
}
.form-shell,
.request-form-shell{
  padding:22px;
  border-radius:28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.08)),
    radial-gradient(circle at top right, rgba(255,126,219,.12), transparent 34%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 54px rgba(20,0,31,.22);
}
form,
.form-stack{
  display:grid;
  gap:14px;
}
.field{
  min-width:0;
}
.field span{
  display:block;
  margin-bottom:4px;
  font-size:.96rem;
}
.input,.select,.textarea,input,select,textarea{
  width:100%;
  max-width:100%;
  padding:13px 14px;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.04);
}
textarea{
  min-height:130px;
}
.row.gap{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.row.gap > *{
  min-width:0;
}
.feature-grid,
.product-grid,
.page-grid{
  align-items:stretch;
}
.feature-grid > *,
.product-grid > *,
.page-grid > *{
  height:100%;
}
.cart-btn,
.nav a,
.btn{
  white-space:nowrap;
}
@media (max-width:900px){
  .hero-title-rich{
    font-size:clamp(2.05rem,10vw,3.3rem);
  }
  .hero-copy .kicker,
  .hero-copy .panel-kicker{
    width:100%;
  }
}


/* ===== WOW boutique upgrade ===== */
.site-header{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08)),
    radial-gradient(circle at top left, rgba(255,126,219,.16), transparent 28%);
}
.hero{
  position:relative;
  overflow:hidden;
}
.hero::after{
  content:"";
  position:absolute;
  inset:auto -10% -18% -10%;
  height:260px;
  background:
    radial-gradient(circle at 15% 50%, rgba(255,126,219,.26), transparent 28%),
    radial-gradient(circle at 50% 35%, rgba(243,200,107,.18), transparent 24%),
    radial-gradient(circle at 82% 48%, rgba(139,55,215,.24), transparent 28%);
  filter:blur(22px);
  pointer-events:none;
}
.hero-card,
.about-card,
.special-card,
.page-card,
.product,
.product-card{
  box-shadow:
    0 18px 55px rgba(29,0,44,.30),
    0 0 0 1px rgba(255,255,255,.06) inset,
    0 0 26px rgba(255,126,219,.10);
}
.hero-card-title,
.section-title,
.product .title,
.page-card h3{
  color:#fff8ff;
  text-shadow:0 0 14px rgba(255,126,219,.18);
}
.btn.primary{
  background:linear-gradient(180deg, #ff82dd 0%, #db56be 54%, #9b2fc0 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 20px rgba(53,0,82,.28),
    0 4px 0 rgba(72,18,102,.95),
    0 0 24px rgba(255,126,219,.18);
}
.btn.ghost{
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
  color:#fff9ff;
}
.badge{
  color:#fff9ff;
  background:linear-gradient(135deg, rgba(255,126,219,.26), rgba(255,255,255,.08));
}
.nav a, .cart-btn{
  color:#fff8ff;
}


.quick-access-section{padding-top:0}
.quick-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.quick-access-card{display:block;padding:20px;border-radius:22px;border:1px solid rgba(155,102,193,.18);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(249,242,255,.96));box-shadow:0 15px 35px rgba(77,31,102,.08);text-decoration:none;color:#2f1b3b}
.quick-access-card strong{display:block;font-size:1rem;margin-bottom:6px}
.quick-access-card span{display:block;color:#6e5a7d;font-size:.94rem;line-height:1.45}
.quick-access-card:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(77,31,102,.14)}


/* ===== Wave 9.4.7 theme + toggle corrections ===== */
.btn,button.btn,input[type="submit"],input[type="button"],a.btn,.nav a,.cart-btn,.icon-btn,.qty-btn,.remove-btn,.warehouse-shortcut-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:18px;border:1px solid rgba(255,223,161,.34)!important;background:linear-gradient(180deg,#ff89df 0%,#df5dbf 55%,#8a2eb7 100%)!important;color:#fff8ff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 10px 22px rgba(53,0,82,.24),0 4px 0 rgba(72,18,102,.94)}
.btn.ghost{background:linear-gradient(180deg,#f39adf 0%,#cd61c2 55%,#7e3ab7 100%)!important}
.btn.primary{background:linear-gradient(180deg,#ff89df 0%,#df5dbf 55%,#8a2eb7 100%)!important}
.btn::before,button.btn::before,input[type="submit"]::before,input[type="button"]::before,a.btn::before,.nav a::before,.cart-btn::before,.icon-btn::before,.qty-btn::before,.remove-btn::before,.warehouse-shortcut-btn::before{content:"";display:inline-block;width:20px;height:20px;flex:0 0 20px;background-position:center;background-repeat:no-repeat;background-size:contain;filter:drop-shadow(0 2px 4px rgba(52,0,48,.35))}
.brush-style-1::before{background-image:url('assets/button-brushes/brush-1.png')!important}
.brush-style-2::before{background-image:url('assets/button-brushes/brush-2.png')!important}
.brush-style-3::before{background-image:url('assets/button-brushes/brush-3.png')!important}
.toggle-switch{position:relative;width:58px;height:30px;display:inline-flex;align-items:center}
.toggle-switch input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;display:block!important}
.toggle-switch .slider{position:absolute;inset:0;border-radius:999px;cursor:pointer;transition:.22s ease;background:linear-gradient(135deg, rgba(255,91,91,.98), rgba(168,22,22,.92));border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 4px rgba(0,0,0,.28)}
.toggle-switch .slider:before{content:'';position:absolute;height:24px;width:24px;left:3px;top:2px;background:#fff;border-radius:50%;box-shadow:0 4px 12px rgba(0,0,0,.28);transition:transform .18s ease}
.toggle-switch input:checked + .slider{background:linear-gradient(135deg, rgba(75,212,126,.98), rgba(14,163,74,.94))}
.toggle-switch input:checked + .slider:before{transform:translateX(27px)}



/* Wave 9.4.9 storefront button theme repair */
.btn,
button.btn,
input[type="submit"],
input[type="button"],
a.btn,
button,
.hero-cta .btn,
.feature-card .btn,
.page-card .btn,
.order-actions .btn,
.track-order .btn{
  color:#fff8ff!important;
}


/* ===== Wave 9.7.6 theme flow stabilization ===== */
html,body{min-height:100%;background:
  radial-gradient(1200px 700px at 10% -10%, rgba(255,79,216,.40), transparent 60%),
  radial-gradient(900px 600px at 100% 0%, rgba(199,125,255,.38), transparent 55%),
  radial-gradient(900px 600px at 40% 110%, rgba(138,43,226,.35), transparent 55%),
  linear-gradient(160deg, #12001b, #2a0040) !important;color:var(--ink) !important;}
.site-header,.admin-shell,.site-footer,.section,.hero,.cart-panel,.cart-item,.hero-card,.about-card,.card,.product,
.checkout-shell,.checkout-card,.thankyou-shell,.status-shell,.invoice-shell,.report-shell,.label-shell,
.panel,.modal-panel,.drawer-panel,.summary-card,.customer-card,.faq-card,.feature-card{
  color:#fff8ff;
}
.input,.select,.textarea,input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  background:rgba(255,255,255,.08) !important;
  color:#fff8ff !important;
  border:1px solid rgba(255,225,155,.24) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 10px 24px rgba(0,0,0,.12);
}
.input::placeholder,.textarea::placeholder,input::placeholder,textarea::placeholder{color:rgba(255,241,255,.66) !important;}
.table-wrap,table{
  color:#fff8ff;
}
th{background:rgba(255,255,255,.10);}
tr:nth-child(even) td{background:rgba(255,255,255,.03);}
.site-header,.announcement-bar,.card,.product,.hero-card,.about-card,.admin-item,.stat-box,.checkout-card,.thankyou-card,.status-card{
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06)) !important;
  border:1px solid rgba(255,225,155,.16) !important;
  box-shadow:0 18px 60px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.08);
}
.note,.muted,.desc,.meta,.help-text,.tiny{color:rgba(255,241,255,.78) !important;}


/* Wave 10.1.2 readability hotfix */
.report-card,.schedule-card,.payroll-card,.timeclock-card,.admin-item,.card{backdrop-filter:saturate(125%) blur(2px);}
.input,.select,.textarea,input,select,textarea{color:#251336;}
input::placeholder,textarea::placeholder{color:#6b4c7e;}
.note.warn,.warn{color:#4b3200;}
.ok,.okbox{color:#155b31;}


/* ===== Wave 10.1.3 image-import intelligence + catalog readability ===== */
.catalog-card-readable{
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-radius:28px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(66,17,99,.96), rgba(41,10,63,.98)) !important;
  border:1px solid rgba(255,220,150,.24) !important;
}
.catalog-card-readable .img{
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04)) !important;
  padding:14px;
}
.catalog-card-readable .img img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  border-radius:22px;
  border:1px solid rgba(255,225,155,.20);
  background:rgba(255,255,255,.04);
}
.catalog-card-readable .body{
  display:grid;
  gap:10px;
  padding:18px 18px 20px;
}
.catalog-card-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.catalog-chip{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:6px 12px;
  font-size:.85rem;
  font-weight:800;
  letter-spacing:.03em;
  color:#fff8ff;
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.08));
  border:1px solid rgba(255,225,155,.18);
}
.catalog-price{
  font-size:1.35rem;
  font-weight:900;
  color:#ffe7a5;
  text-shadow:0 0 10px rgba(255,223,132,.18);
}
.catalog-title{
  font-size:1.12rem;
  line-height:1.28;
  color:#fffafc !important;
}
.catalog-desc{
  color:rgba(255,244,252,.88) !important;
  line-height:1.58;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:4.7em;
}
.catalog-meta-line{
  font-size:.88rem;
  color:rgba(255,235,250,.78);
  letter-spacing:.02em;
}
#shopGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:22px;
}
#shopGrid .product-actions-wrap .btn{
  width:100%;
}
@media (max-width:640px){
  .catalog-card-readable .body{
    padding:16px;
  }
  .catalog-title{
    font-size:1.02rem;
  }
}


/* WAVE 10.1.7 STOREFRONT CONTRAST + NEATNESS PATCH */
:root{--card-solid:linear-gradient(180deg, rgba(72,24,102,.96), rgba(47,14,71,.98));}
.card,.product,.about-card,.hero-card,.admin-item,.cart-item{background:var(--card-solid)!important;color:#fff8ff!important;border-color:rgba(255,225,155,.18)!important;}
.meta,.desc,.brand-tag,.note,.tiny,.muted{color:rgba(255,241,255,.84)!important;}
.price{font-size:1.25rem;color:#ffd86e!important;text-shadow:0 1px 0 rgba(63,16,78,.5);}
.title{font-size:1.08rem;line-height:1.35;}
.body{gap:10px;}


/* WAVE 10.1.7 FULL SYSTEM B MODERN CATALOG AND SITEWIDE STABILITY */
.catalog-shell{display:grid;gap:18px}
.catalog-toolbar{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:18px 20px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.14);box-shadow:0 18px 50px rgba(0,0,0,.24)}
.catalog-summary{display:grid;gap:5px}
.catalog-pill-row{display:flex;flex-wrap:wrap;gap:10px}
.catalog-pill{border:none;border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.10);color:#fff8ff;font-weight:800;cursor:pointer;border:1px solid rgba(255,255,255,.14)}
.catalog-pill.active,.catalog-pill:hover{background:linear-gradient(135deg, rgba(255,79,216,.28), rgba(138,43,226,.30));border-color:rgba(255,225,155,.26)}
.catalog-pill.limited{background:linear-gradient(135deg, rgba(255,210,120,.26), rgba(255,79,216,.24));}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.catalog-card-modern{border-radius:26px;overflow:hidden;background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.16);box-shadow:0 22px 70px rgba(0,0,0,.28);transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;height:100%}
.catalog-card-modern:hover{transform:translateY(-6px);box-shadow:0 26px 80px rgba(0,0,0,.34);border-color:rgba(255,225,155,.24)}
.catalog-card-modern .img{height:250px;background:linear-gradient(135deg, rgba(255,79,216,.22), rgba(138,43,226,.16));}
.catalog-card-modern .body{display:grid;gap:12px;padding:18px}
.catalog-badge-row{display:flex;flex-wrap:wrap;gap:8px}
.catalog-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:.76rem;font-weight:900;letter-spacing:.03em}
.catalog-badge.subtle{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff8ff}
.catalog-badge.limited{background:linear-gradient(135deg, rgba(255,225,155,.34), rgba(255,79,216,.24));border:1px solid rgba(255,225,155,.34);color:#fff7d3}
.catalog-price-wrap{display:flex;align-items:flex-end;gap:10px}
.catalog-compare{text-decoration:line-through;color:rgba(255,241,255,.70);font-size:.9rem}
.catalog-card-limited{box-shadow:0 22px 72px rgba(0,0,0,.30), 0 0 0 1px rgba(255,220,150,.14)}
#shop .controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
#shop .controls .input,#shop .controls .select{min-width:180px}
button,.btn,input[type='button'],input[type='submit'],.cart-btn,.icon-btn,.qty-btn,.remove-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px}
.card,.about-card,.special-card,.page-card,.standout-info-card,.request-form-card,.request-info-card{overflow:visible}
@media (max-width:900px){.catalog-toolbar{padding:16px}.catalog-grid{grid-template-columns:1fr 1fr}.catalog-card-modern .img{height:220px}}
@media (max-width:640px){.catalog-grid{grid-template-columns:1fr}.catalog-toolbar{align-items:flex-start}#shop .controls{width:100%}#shop .controls .input,#shop .controls .select{width:100%}}


.admin-product-row{align-items:flex-start;gap:14px;flex-wrap:wrap}
.admin-product-left{align-items:flex-start;gap:14px;flex:1 1 420px;min-width:260px}
.admin-product-thumb{width:92px;height:92px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);flex:0 0 92px;box-shadow:0 12px 26px rgba(0,0,0,.22)}
.admin-product-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.product-card-zoom{overflow:hidden;cursor:zoom-in}
.product-card-zoom img{transition:transform .24s ease;transform-origin:center center}
.product-card-zoom img.zoomed{transform:scale(1.34)}


/* Catalog gallery overhaul */
.product-image-launch{
  position:relative;
  display:block;
  width:100%;
  border:0;
  background:transparent;
  padding:0;
  cursor:zoom-in;
}
.product-image-launch img{
  display:block;
  width:100%;
  height:auto;
  border-radius:18px;
}
.product-image-launch-badge{
  position:absolute;
  right:12px;
  bottom:12px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(20,20,24,.75);
  color:#fff;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.02em;
}
.catalog-thumb-row{
  display:flex;
  gap:8px;
  padding-top:10px;
  align-items:center;
  flex-wrap:wrap;
}
.catalog-thumb{
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.7);
  border-radius:12px;
  padding:3px;
  width:52px;
  height:52px;
  overflow:hidden;
  cursor:pointer;
}
.catalog-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:9px;
  display:block;
}
.catalog-thumb-more{
  font-size:.85rem;
  font-weight:700;
  opacity:.82;
}
.image-modal-open{
  overflow:hidden;
}
.product-image-modal{
  position:fixed;
  inset:0;
  display:none;
  z-index:9999;
}
.product-image-modal.open{
  display:block;
}
.product-image-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(10,10,14,.86);
  backdrop-filter:blur(4px);
}
.product-image-modal-dialog{
  position:relative;
  z-index:2;
  max-width:min(96vw,1100px);
  max-height:92vh;
  margin:3vh auto;
  padding:18px 58px 18px;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.product-image-modal-main{
  max-width:100%;
  max-height:72vh;
  width:auto;
  height:auto;
  border-radius:20px;
  box-shadow:0 20px 60px rgba(0,0,0,.35);
  background:#fff;
}
.product-image-modal-close,
.product-image-nav{
  position:absolute;
  border:0;
  border-radius:999px;
  width:44px;
  height:44px;
  cursor:pointer;
  font-size:1.35rem;
  line-height:1;
  background:rgba(255,255,255,.92);
}
.product-image-modal-close{
  top:4px;
  right:4px;
}
.product-image-nav.prev{
  left:6px;
  top:50%;
  transform:translateY(-50%);
}
.product-image-nav.next{
  right:6px;
  top:50%;
  transform:translateY(-50%);
}
.product-image-modal-caption{
  color:#fff;
  font-weight:700;
  margin-top:12px;
  text-align:center;
}
.product-image-modal-thumbs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
  margin-top:14px;
}
.product-image-thumb{
  width:64px;
  height:64px;
  padding:4px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.12);
  cursor:pointer;
}
.product-image-thumb.active{
  outline:2px solid rgba(255,255,255,.85);
}
.product-image-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:10px;
  display:block;
}
@media (max-width: 720px){
  .product-image-modal-dialog{
    padding:14px 14px 22px;
    margin:4vh auto;
  }
  .product-image-nav{
    top:auto;
    bottom:88px;
    transform:none;
  }
  .product-image-nav.prev{ left:14px; }
  .product-image-nav.next{ right:14px; }
  .product-image-modal-main{
    max-height:64vh;
  }
}



/* ===== 10.8.0 mobile storefront polish ===== */
@media (max-width: 980px){
  .wrap{width:min(94%,1180px)}
  .header-inner{padding:10px 0; align-items:flex-start}
  .brand{align-items:flex-start}
  .nav{width:100%; justify-content:flex-start}
  .hero-inner,
  .two-col,
  .split,
  .feature-grid,
  .request-grid,
  .checkout-grid,
  .account-grid,
  .support-grid{
    grid-template-columns:1fr !important;
  }
  .hero{padding:24px 0}
  .hero-copy,.hero-card,.panel,.card,.product,.special-card{border-radius:20px}
  .grid.products,
  .product-grid,
  .catalog-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .cart-drawer,
  .modal-card{
    width:min(94vw,680px) !important;
    max-width:94vw !important;
  }
}
@media (max-width: 760px){
  .announcement-bar{padding:8px 10px; font-size:.9rem}
  .site-header{position:sticky}
  .header-inner{gap:10px}
  .brand-logo{width:42px; height:42px}
  .brand-name{font-size:1rem}
  .brand-tag{font-size:.78rem}
  .nav a,.cart-btn{padding:9px 10px; border-radius:12px; font-size:.88rem}
  .hero-copy h1,.hero h1{font-size:1.7rem !important; line-height:1.08}
  .hero-copy p,.hero p{font-size:.96rem}
  .hero-inner,.feature-grid,.request-grid,.checkout-grid,.support-grid,.account-grid{gap:14px !important}
  .grid.products,.product-grid,.catalog-grid{grid-template-columns:1fr !important}
  .product .img,.special-image{aspect-ratio:1/1}
  .row,.toolbar,.topbar{gap:8px}
  .row.gap{flex-direction:column; align-items:stretch}
  .row.gap > *{width:100%}
  .field input,.field textarea,.field select,input,textarea,select{min-height:42px}
  .btn{min-height:42px}
  .cart-drawer,.modal-card{border-radius:18px !important}
  table{display:block; overflow:auto; white-space:nowrap}
}
@media (max-width: 420px){
  .wrap{width:95%}
  .nav{gap:6px}
  .nav a,.cart-btn{padding:8px 9px; font-size:.82rem}
  .hero-copy h1,.hero h1{font-size:1.45rem !important}
}
