
:root{
  --bg:#071019;
  --bg-soft:#0e1824;
  --panel:rgba(255,255,255,.06);
  --panel-2:rgba(255,255,255,.04);
  --text:#eef6ff;
  --muted:#a2b1c2;
  --line:rgba(255,255,255,.11);
  --teal:#36d2e5;
  --teal-deep:#127a8e;
  --silver:#dce7f4;
  --gold:#f1d88f;
  --gold-2:#b89131;
  --shadow:0 20px 50px rgba(0,0,0,.35);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter",system-ui,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top, rgba(54,210,229,.18), transparent 22%),
    radial-gradient(circle at 80% 12%, rgba(241,216,143,.10), transparent 18%),
    linear-gradient(180deg,#050b13 0%, #071019 30%, #08131e 100%);
  min-height:100vh;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px, calc(100% - 32px)); margin-inline:auto}
.narrow{width:min(760px, calc(100% - 32px))}
.center{text-align:center}

.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(16px);
  background:rgba(5,11,19,.78);
  border-bottom:1px solid var(--line);
}
.header-shell{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0}
.brand{display:flex;align-items:center;gap:14px}
.brand img{width:56px;height:56px;object-fit:contain}
.brand-copy{display:flex;flex-direction:column;gap:2px}
.brand-copy strong{font-size:1rem}
.eyebrow{letter-spacing:.2em;text-transform:uppercase;font-size:.73rem;color:var(--gold);display:inline-block}
.main-nav{display:flex;align-items:center;gap:18px}
.nav-link{color:var(--muted);font-size:.95rem}
.nav-link:hover,.nav-link.active{color:var(--text)}
.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:14px;color:var(--text);padding:8px 10px;font-size:1rem}

.button-row{display:flex;flex-wrap:wrap;gap:12px}
.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 18px;border-radius:16px;font-weight:700;
  border:1px solid transparent;transition:.25s ease;box-shadow:var(--shadow)
}
.button:hover{transform:translateY(-1px)}
.button-sm{min-height:42px;padding:0 14px;font-size:.92rem}
.button-gold{background:linear-gradient(135deg,var(--gold), #f7e8b6); color:#081019}
.button-outline{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.03);color:var(--text)}
.text-link{color:var(--gold);font-weight:600}
.pill{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid rgba(241,216,143,.25);
  background:rgba(241,216,143,.08);
  color:var(--gold);
  border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:600
}

.hero{position:relative;overflow:hidden;padding:36px 0 34px;border-bottom:1px solid var(--line)}
.hero-backdrop{
  position:absolute;inset:0;
  background:
   radial-gradient(circle at 20% 20%, rgba(54,210,229,.18), transparent 28%),
   radial-gradient(circle at 80% 12%, rgba(220,231,244,.11), transparent 20%);
  pointer-events:none;
}
.hero-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
.hero-copy h1,.page-hero h1,.section-heading h2,.split-callout h2,.cta-inner h2{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(2.6rem,6vw,5.2rem);
  line-height:.96; letter-spacing:-.02em; margin:10px 0 14px
}
.hero-copy p,.page-hero p,.section-heading p, .split-callout p, .product-body p, .detail-copy p, .policy-card p{
  color:var(--muted);line-height:1.75;font-size:1.02rem
}
.hero-bullets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;color:#d8e5f1}
.glass{
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow)
}
.hero-panel{padding:18px}
.hero-panel-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.hero-before-after{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hero-before-after div{position:relative;overflow:hidden;border-radius:18px;background:var(--bg-soft)}
.hero-before-after img{width:100%;height:320px;object-fit:cover}
.hero-before-after label{
  position:absolute;left:12px;bottom:12px;background:rgba(5,11,19,.72);
  border:1px solid var(--line);padding:7px 10px;border-radius:999px;font-size:.8rem
}

.section,.page-hero{padding:74px 0}
.alt{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-heading{margin-bottom:24px}
.collection-grid,.testimonial-grid,.success-grid,.detail-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.collection-card,.flow-card,.policy-card,.upload-panel,.preview-panel,.compare-card,.detail-visual,.product-card,.note-card{padding:18px}
.collection-card,.flow-card,.policy-card,.upload-panel,.preview-panel,.compare-card,.detail-visual,.note-card{background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.collection-card h3,.product-body h3,.upload-panel h2,.preview-panel h2,.compare-card h2,.detail-copy h2,.policy-card h2,.success-grid h2{margin:10px 0 8px;font-size:1.24rem}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product-card{overflow:hidden;background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));border:1px solid var(--line);border-radius:28px}
.product-visual.split{display:grid;grid-template-columns:1fr 1fr;background:#09111a}
.product-visual.split img{width:100%;height:340px;object-fit:contain;object-position:center top;background:#08111a;padding:10px;border-radius:18px}
.single-visual{width:100%;height:340px;object-fit:contain;object-position:center top;background:#08111a;padding:10px;border-radius:18px}
.product-body{padding:18px}
.card-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px}
.product-body small{display:block;color:#86a0b8;margin-top:8px}
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.filter-btn{
  border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text);
  padding:10px 14px;border-radius:999px;cursor:pointer;font-weight:600
}
.filter-btn.active{background:rgba(241,216,143,.12);border-color:rgba(241,216,143,.3);color:var(--gold)}
.page-main{min-height:70vh}
.page-hero{border-bottom:1px solid var(--line)}
.upload-layout{display:grid;grid-template-columns:1fr .85fr;gap:18px}
.upload-form{display:grid;gap:14px}
.upload-form label{display:grid;gap:8px;color:#d8e5f1;font-size:.94rem}
.upload-form input,.upload-form select,.upload-form textarea{
  width:100%;background:#07111a;border:1px solid var(--line);border-radius:16px;color:var(--text);
  padding:14px 14px;font:inherit
}
.preview-box{
  aspect-ratio:4/5;background:#07111a;border:1px dashed rgba(255,255,255,.18);
  border-radius:22px;display:grid;place-items:center;overflow:hidden;margin-bottom:16px
}
.preview-box img{width:100%;height:100%;object-fit:cover;display:none}
.muted{color:var(--muted)}
.note-card ol{color:var(--muted);padding-left:18px;line-height:1.8}
.marquee-section{padding:8px 0 18px}
.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.02)}
.marquee-track{
  display:flex;gap:16px;width:max-content;padding:16px;
  animation:scrollBanner 42s linear infinite
}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-card{width:220px;min-width:220px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02))}
.marquee-card img{display:block;width:100%;height:320px;object-fit:contain;object-position:center top;background:#08111a;padding:8px}
.marquee-card span{
  position:absolute;left:12px;bottom:12px;padding:8px 10px;border-radius:999px;
  background:rgba(5,11,19,.76);border:1px solid var(--line);font-size:.83rem
}
@keyframes scrollBanner{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.split-callout{display:grid;grid-template-columns:1fr .85fr;gap:18px;align-items:center}
.flow-card{display:grid;gap:14px;font-size:1.03rem}
.flow-card strong{color:var(--gold)}
.testimonial-grid blockquote{margin:0;padding:22px;border-radius:var(--radius);border:1px solid var(--line)}
.testimonial-grid p{font-size:1.04rem;line-height:1.8}
.testimonial-grid footer{margin-top:16px;color:var(--gold)}
.cta-band{border-top:1px solid var(--line)}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:18px}
.site-footer{border-top:1px solid var(--line);background:rgba(3,8,13,.82);padding-top:24px}
.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:18px;padding-bottom:20px}
.footer-grid h4{margin:0 0 12px}
.footer-grid a,.footer-grid p{display:block;color:var(--muted);margin-bottom:10px}
.footer-brand{display:flex;align-items:flex-start;gap:14px}
.footer-brand img{width:64px;height:64px;object-fit:contain}
.footer-bottom{padding:14px 0 24px;color:#7f92a6;border-top:1px solid var(--line)}
.product-hero-grid,.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}
.detail-visual img,.compare-card img{width:100%;height:420px;border-radius:18px;object-fit:contain;object-position:center top;background:#08111a;padding:10px}
.meta-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.check-list{padding-left:20px;color:var(--muted);line-height:1.85}

@media (max-width: 980px){
  .hero-grid,.split-callout,.upload-layout,.product-hero-grid,.compare-grid,.cta-inner,.collection-grid,.product-grid,.testimonial-grid,.success-grid,.detail-copy,.footer-grid{grid-template-columns:1fr}
  .hero-copy h1,.page-hero h1,.section-heading h2,.split-callout h2,.cta-inner h2{font-size:clamp(2.3rem,9vw,4rem)}
  .single-visual,.product-visual.split img{height:260px}
}
@media (max-width: 760px){
  .menu-toggle{display:block}
  .main-nav{
    position:absolute;top:84px;left:16px;right:16px;display:none;flex-direction:column;align-items:flex-start;
    padding:16px;border:1px solid var(--line);border-radius:22px;background:rgba(5,11,19,.97)
  }
  .main-nav.open{display:flex}
  .hero{padding:18px 0 22px}
  .section,.page-hero{padding:52px 0}
  .container{width:min(100% - 24px,1180px)}
  .hero-panel,.collection-card,.flow-card,.policy-card,.upload-panel,.preview-panel,.compare-card,.detail-visual,.product-body,.note-card{padding:15px}
  .hero-before-after img{height:230px}
  .hero-bullets{grid-template-columns:1fr}
  .marquee-card{width:220px;min-width:220px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02))}
  .marquee-card img{display:block;width:100%;height:320px;object-fit:contain;object-position:center top;background:#08111a;padding:8px}
  .button{width:100%}
  .button-row .button,.button-row a.button{flex:1 1 100%}
}


.inline-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}
.button-success{background:rgba(241,216,143,.12)!important;border-color:rgba(241,216,143,.35)!important;color:var(--gold)!important}
.is-disabled{pointer-events:none;opacity:.45}
.checkout-summary{display:grid;gap:16px;margin-top:22px}
.checkout-item{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:18px}
.checkout-item img{width:100%;height:220px;object-fit:cover;border-radius:18px}
.checkout-note{margin:16px 0 0;color:var(--muted);font-size:.95rem}
.hero-panel .button-row,.product-body .card-actions{align-items:stretch}
.product-card .card-actions{flex-wrap:wrap;justify-content:flex-start}
.product-card .card-actions .button{box-shadow:none}
.home-showcase .card-actions{display:none}
.only-home-links .button-row{margin-top:18px}
@media print{
  .site-header,.site-footer,.menu-toggle,.button-row,.upload-form,.filter-bar,.checkout-controls .button:not(.print-btn), .remove-btn {display:none!important}
  body{background:#fff;color:#000}
  .glass,.checkout-item,.upload-panel,.preview-panel{border:1px solid #bbb;box-shadow:none;background:#fff;color:#000}
  .pill{color:#000;border-color:#999;background:#fff}
}
@media (max-width: 760px){
  .checkout-item{grid-template-columns:1fr}
  .checkout-item img{height:260px}
}

.collection-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.collection-compare .compare-shot{position:relative;border-radius:18px;overflow:hidden;background:#08111a;padding:10px;min-height:340px;display:flex;align-items:flex-start;justify-content:center}
.collection-compare .compare-shot img{width:100%;height:320px;object-fit:contain;object-position:center top}
.collection-compare .shot-label{position:absolute;left:12px;bottom:12px;z-index:2}
@media (max-width: 720px){
  .collection-compare{gap:8px}
  .collection-compare .compare-shot{min-height:250px;padding:8px}
  .collection-compare .compare-shot img{height:230px}
  .detail-visual img,.compare-card img,.single-visual,.product-visual.split img{height:280px}
}

.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.pill-link{text-decoration:none;display:inline-block}
.button-large{padding:16px 22px;font-size:1rem}
.checkout-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.stack-on-mobile{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width: 1100px){.process-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 760px){.process-grid,.checkout-layout{grid-template-columns:1fr}}


.header-actions{display:flex;align-items:center;gap:16px}
.cart-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.04);color:var(--text);font-size:1.2rem;flex:0 0 auto}
.cart-count{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,var(--gold), #f7e8b6);color:#081019;font-size:.72rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;line-height:1}
.cart-count.is-empty{display:none}
@media (max-width: 760px){
  .header-actions{gap:10px;margin-left:auto}
  .brand-copy strong{font-size:.88rem}
  .cart-link{width:42px;height:42px;border-radius:14px}
}
@media print{
  .header-actions,.cart-link,.cart-count{display:none!important}
}


.step-top-nav{border-bottom:1px solid var(--line);background:rgba(255,255,255,.03)}
.step-top-nav-inner{display:flex;gap:10px;flex-wrap:wrap;padding:12px 0}
.step-chip,.step-card{text-decoration:none;color:var(--text)}
.step-chip{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);font-size:.92rem;font-weight:600;transition:transform .2s ease, border-color .2s ease, background .2s ease}
.step-chip:hover,.step-card:hover{border-color:rgba(241,216,143,.35);background:rgba(241,216,143,.08)}
.step-card{transition:transform .2s ease, border-color .2s ease, background .2s ease}
.step-card:hover{transform:translateY(-2px)}
.step-chip.is-disabled,.step-card.is-disabled{opacity:.45;pointer-events:none}
.step-chip.is-disabled:hover,.step-card.is-disabled:hover{transform:none;background:rgba(255,255,255,.04);border-color:var(--line)}
@media (max-width: 760px){.step-top-nav-inner{padding:10px 0}.step-chip{width:100%;justify-content:flex-start}}


.upload-form input[type="file"]{padding:12px;background:#07111a;border:1px solid var(--line);border-radius:16px;color:var(--muted)}
.upload-form input[type="file"]::file-selector-button{margin-right:12px;border:0;border-radius:12px;padding:10px 14px;background:linear-gradient(135deg,var(--gold), #f7e8b6);color:#081019;font-weight:700;cursor:pointer}
.success-grid #successOrderSummary{margin-top:10px}


.auth-slot{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.auth-button,.auth-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:14px;padding:10px 14px;color:var(--text);background:rgba(255,255,255,.04);font-weight:700;text-decoration:none}
.auth-link{padding:10px 12px;font-weight:600;background:transparent}
.auth-page .page-hero,.dashboard-page .page-hero{padding-bottom:34px}
.auth-shell{display:grid;grid-template-columns:1fr .9fr;gap:18px}
.auth-card,.auth-side{padding:24px}
.auth-form{margin-top:14px}
.auth-alt{margin-top:16px}
.form-alert,.form-success{padding:12px 14px;border-radius:14px;margin:14px 0;font-weight:600}
.form-alert{background:rgba(255,120,120,.12);border:1px solid rgba(255,120,120,.24);color:#ffd1d1}
.form-success{background:rgba(119,233,163,.12);border:1px solid rgba(119,233,163,.28);color:#d9ffe6}
.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dashboard-stat{padding:20px}
.dashboard-stat strong{display:block;font-size:1.4rem;margin-top:8px}
.dashboard-order-card{padding:22px}
.dashboard-order-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.dashboard-order-actions{justify-content:flex-end}
.empty-dashboard{padding:24px;text-align:center}
@media (max-width:980px){.auth-shell,.dashboard-grid{grid-template-columns:1fr}.dashboard-order-head{flex-direction:column}}
@media (max-width:760px){.auth-slot{width:100%;justify-content:flex-end}.auth-button,.auth-link{padding:9px 12px;border-radius:12px}}


/* PATCH START: V27.16 larger non-skewed header logo */
/* REASON: Replace distorted logo rendering with a larger contained header mark without changing layout structure. */
.brand .brand-logo{
  width:auto;
  height:82px;
  max-height:82px;
  object-fit:contain;
  object-position:center;
  transform:none;
  flex:0 0 auto;
}
@media (max-width: 760px){
  .brand .brand-logo{
    height:64px;
    max-height:64px;
  }
}
/* PATCH END */


/* PATCH START: V27.16 full header/default.php compatibility layer */
/* REASON: Ensure corrected default.php and header.php render with the existing premium theme without renaming backend-dependent classes. */

.site-bg-video{
  position:fixed;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-3;
}

.site-bg-overlay{
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
}

.brand-wrap{
  width:min(1180px, calc(100% - 32px));
  margin-inline:auto;
}

.primary-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}

.cart-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:0 14px;
  border:1px solid rgba(241,216,143,.28);
  border-radius:999px;
  background:rgba(241,216,143,.08);
  color:var(--gold)!important;
}

main.page-main > .hero,
main > .hero{
  width:min(1180px, calc(100% - 32px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:28px;
  align-items:center;
  border-radius:calc(var(--radius) + 8px);
  padding:34px;
}

main.page-main > section:not(.hero),
main > section:not(.hero){
  width:min(1180px, calc(100% - 32px));
  margin:34px auto;
}

.grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin-top:18px;
}

.card{
  padding:22px;
  border-radius:var(--radius);
}

.placeholder-img{
  min-height:160px;
  display:grid;
  place-items:center;
  text-align:center;
  border-radius:20px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:16px;
  font-weight:800;
  color:#081019;
  background:linear-gradient(135deg,var(--gold), #f7e8b6);
  border:1px solid rgba(241,216,143,.35);
}

.btn.ghost{
  color:var(--text);
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.16);
}

@media (max-width:980px){
  main.page-main > .hero,
  main > .hero,
  .grid{
    grid-template-columns:1fr;
  }
}

/* PATCH END */


/* PATCH START: V27.16 homepage banner restore */
/* REASON: Restore BANNER.mp4 on homepage and keep its frame compatible with the transparent glass system. */

.home-banner-wrap{
  width:min(1180px, calc(100% - 32px));
  margin:28px auto 0;
  border:1px solid rgba(255,255,255,.16);
  border-radius:30px;
  overflow:hidden;
}

.home-banner-video{
  display:block;
  width:100%;
  height:clamp(220px, 28vw, 390px);
  object-fit:cover;
  object-position:center;
}

.hero-info-panel h2{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1;
  margin:8px 0 14px;
}

@media (max-width:760px){
  .home-banner-wrap{
    width:min(100% - 24px, 1180px);
    margin-top:20px;
    border-radius:22px;
  }

  .home-banner-video{
    height:220px;
  }
}

/* PATCH END */

/* PATCH START: V27.16 sizing + SarDev Labs clear-glass restore */
/* REASON: Correct oversized banner/product media and restore transparent glass using sardev.io style proportions without changing backend logic. */

:root{
  --gold:#f4d36c;
  --gold-2:#b9892c;
  --text:#f8f6ef;
  --muted:rgba(248,246,239,.72);
  --line:rgba(255,255,255,.20);
  --panel:rgba(255,255,255,.02);
  --panel-2:rgba(255,255,255,.008);
  --shadow:0 18px 42px rgba(0,0,0,.22);
}

.site-bg-video{
  position:fixed!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  z-index:-3!important;
  opacity:.74!important;
  filter:saturate(1.05) contrast(1.08) brightness(1)!important;
}

.site-bg-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 72% 8%, rgba(244,211,108,.07), transparent 28%),
    linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.48) 72%, rgba(2,2,2,.76))!important;
}

.site-header{
  background:linear-gradient(180deg, rgba(2,2,2,.58), rgba(2,2,2,.34))!important;
  backdrop-filter:blur(16px)!important;
  border-bottom:1px solid rgba(255,255,255,.20)!important;
}

.brand .brand-logo,
.brand-logo{
  width:auto!important;
  height:48px!important;
  max-height:48px!important;
  max-width:120px!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  flex:0 0 auto!important;
  transform:none!important;
}

.home-banner-wrap,
.banner-frame{
  width:min(1180px, calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:24px auto 0!important;
  border-radius:30px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.20)!important;
  background:rgba(255,255,255,.02)!important;
  box-shadow:0 16px 46px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(10px)!important;
}

.home-banner-video,
.banner-video{
  display:block!important;
  width:100%!important;
  height:210px!important;
  max-height:210px!important;
  object-fit:cover!important;
  object-position:center!important;
}

.page-main{
  width:100%!important;
  overflow-x:hidden!important;
}

main.page-main > .hero,
main > .hero{
  width:min(1180px, calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:28px auto 0!important;
  display:grid!important;
  grid-template-columns:minmax(0, 1.05fr) minmax(280px, .95fr)!important;
  gap:24px!important;
  align-items:center!important;
  padding:30px!important;
  border-radius:30px!important;
  overflow:hidden!important;
}

main.page-main > section:not(.hero):not(.home-banner-wrap),
main > section:not(.hero):not(.home-banner-wrap){
  width:min(1180px, calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:30px auto!important;
}

.featured-offers-grid,
.product-grid,
main.page-main .grid,
main .grid{
  display:grid!important;
  grid-template-columns:repeat(3, minmax(0, 1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:1180px!important;
  margin:18px auto 0!important;
}

.featured-offer-card,
.product-card,
main.page-main .card,
main .card{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:18px!important;
  border-radius:28px!important;
  overflow:hidden!important;
}

.featured-offer-card > img.single-visual,
.card > img.single-visual,
.product-card > img,
.product-card img,
.single-visual{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:220px!important;
  max-height:220px!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:center top!important;
  margin:0 0 16px 0!important;
  padding:8px!important;
  border-radius:18px!important;
}

.product-visual.split img,
.collection-compare .compare-shot img,
.detail-visual img,
.compare-card img,
.marquee-card img,
.hero-before-after img,
.ba-pair img{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:315px!important;
  object-fit:contain!important;
  object-position:center top!important;
}

main.page-main > .hero,
main > .hero,
.glass,
.card,
.panel,
.hero-info-panel,
.collection-card,
.flow-card,
.policy-card,
.upload-panel,
.preview-panel,
.compare-card,
.detail-visual,
.product-card,
.note-card,
.dashboard-stat,
.dashboard-order-card,
.auth-card,
.auth-side,
.home-banner-wrap,
.marquee-card,
.checkout-item,
.cart-panel,
.checkout-panel,
.checkout-main,
.checkout-side,
.portal-card{
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.008))!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:
    0 16px 46px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.045)!important;
  backdrop-filter:blur(10px)!important;
}

.placeholder-img,
.preview-box,
.collection-compare .compare-shot,
.product-visual.split,
.featured-offer-card > img.single-visual,
.card > img.single-visual,
.product-card > img,
.ba-pair figure{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}

main.page-main > .hero::before,
main > .hero::before{
  display:none!important;
}

.site-footer{
  background:rgba(2,2,2,.16)!important;
  border-top:1px solid rgba(255,255,255,.20)!important;
  backdrop-filter:blur(12px)!important;
}

.btn,
.button,
.gold-btn,
.cart-pill{
  border-radius:999px!important;
}

.btn:not(.ghost),
.button-gold,
.gold-btn,
.cart-pill{
  background:linear-gradient(135deg,#ffe28a,#d6a840)!important;
  color:#080600!important;
  border-color:rgba(255,255,255,.18)!important;
}

.btn.ghost,
.button-outline,
.secondary-btn{
  background:rgba(255,255,255,.055)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.20)!important;
}

@media (max-width:980px){
  main.page-main > .hero,
  main > .hero{
    grid-template-columns:1fr!important;
  }

  .featured-offers-grid,
  .product-grid,
  main.page-main .grid,
  main .grid{
    grid-template-columns:1fr!important;
  }

  .featured-offer-card > img.single-visual,
  .card > img.single-visual,
  .product-card > img,
  .product-card img,
  .single-visual{
    height:240px!important;
    max-height:240px!important;
  }
}

@media (max-width:760px){
  .brand .brand-logo,
  .brand-logo{
    height:44px!important;
    max-height:44px!important;
    max-width:96px!important;
  }

  .home-banner-wrap,
  .banner-frame,
  main.page-main > .hero,
  main > .hero,
  main.page-main > section:not(.hero):not(.home-banner-wrap),
  main > section:not(.hero):not(.home-banner-wrap){
    width:min(100% - 24px, 1180px)!important;
  }

  .home-banner-video,
  .banner-video{
    height:180px!important;
    max-height:180px!important;
  }

  main.page-main > .hero,
  main > .hero{
    padding:20px!important;
  }
}

/* PATCH END */
/* PATCH START: V27.16 media visibility restore */
/* REASON: Restore visible banner, thumbnail logo, and Featured Offers images while preserving approved glass/transparency theme. */

.brand .brand-logo,
.brand-logo{
  width:auto!important;
  height:48px!important;
  max-height:48px!important;
  max-width:120px!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  flex:0 0 auto!important;
  transform:none!important;
}

.home-banner-wrap{
  width:min(1180px, calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:24px auto 0!important;
  border-radius:30px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.20)!important;
  background:rgba(255,255,255,.02)!important;
  box-shadow:0 16px 46px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(10px)!important;
}

.home-banner-video{
  display:block!important;
  width:100%!important;
  height:210px!important;
  max-height:210px!important;
  object-fit:cover!important;
  object-position:center!important;
}

.hero-info-panel img,
.panel.hero-info-panel img{
  display:none!important;
}

.featured-offers-grid{
  display:grid!important;
  grid-template-columns:repeat(3, minmax(0, 1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:1180px!important;
  margin:18px auto 0!important;
}

.featured-offer-card{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:18px!important;
  border-radius:28px!important;
  overflow:hidden!important;
}

.featured-offer-card > img.single-visual,
.featured-offer-image{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:220px!important;
  max-height:220px!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:center top!important;
  margin:0 0 16px 0!important;
  padding:8px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}

.featured-offer-label{
  margin:0 0 14px!important;
  color:#d8e5f1!important;
  font-weight:800!important;
  line-height:1.35!important;
}

@media (max-width:980px){
  .featured-offers-grid{
    grid-template-columns:1fr!important;
  }

  .featured-offer-card > img.single-visual,
  .featured-offer-image{
    height:240px!important;
    max-height:240px!important;
  }
}

@media (max-width:760px){
  .brand .brand-logo,
  .brand-logo{
    height:44px!important;
    max-height:44px!important;
    max-width:96px!important;
  }

  .home-banner-video{
    height:180px!important;
    max-height:180px!important;
  }
}

/* PATCH END */
/* PATCH START: V27.16 collections image containment fix */
/* REASON: Prevent /collections product/add-on images from being cut off inside glass cards. */

.collection-card img,
.product-card img,
.product-card > img,
.collection-card .single-visual,
.product-card .single-visual,
.card img.single-visual{
  width:100%!important;
  max-width:100%!important;
  height:220px!important;
  max-height:220px!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  margin:0 auto 16px!important;
  padding:8px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}

.collection-card picture,
.product-card picture{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}

.collection-card,
.product-card{
  overflow:hidden!important;
}

@media (max-width:980px){
  .collection-card img,
  .product-card img,
  .product-card > img,
  .collection-card .single-visual,
  .product-card .single-visual,
  .card img.single-visual{
    height:240px!important;
    max-height:240px!important;
  }
}

@media (max-width:760px){
  .collection-card img,
  .product-card img,
  .product-card > img,
  .collection-card .single-visual,
  .product-card .single-visual,
  .card img.single-visual{
    height:220px!important;
    max-height:220px!important;
  }
}

/* PATCH END */
/* PATCH START: V27.16 Pro Retouch Add-On image containment */
/* REASON: Only the Pro Retouch Add-On image is sitting too high/cut off; other collection images are displaying correctly. */

.product-card:has(img[src*="retouch"]) img,
.product-card:has(img[alt*="Retouch"]) img,
.product-card:has(img[alt*="retouch"]) img{
  object-fit:contain!important;
  object-position:center center!important;
  height:220px!important;
  max-height:220px!important;
  padding:18px 8px!important;
  margin:0 auto 16px!important;
}

/* PATCH END */

/* PATCH START: V27.16 dashboard issues refinement */
/* REASON: Fix dashboard typography hierarchy, image fallback sizing, editable profile fields, upload button layout, and order-history placeholder. */

.dashboard-shell{
  width:min(1280px, calc(100% - 32px));
  margin:32px auto 64px;
}

.dashboard-profile-form{
  display:flex;
  flex-direction:column;
  gap:24px;
}

.dashboard-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) 240px;
  gap:28px;
  padding:32px;
  border-radius:32px;
}

.dashboard-customer-name{
  width:100%;
  font-size:clamp(4.2rem, 7.5vw, 8.4rem)!important;
  line-height:.88!important;
  letter-spacing:-.075em!important;
  margin:0 0 24px!important;
  max-width:none!important;
}

.dashboard-meta-row{
  display:grid;
  grid-template-columns:minmax(260px, .52fr) minmax(320px, 1fr);
  gap:24px;
}

.dashboard-meta-card{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:22px;
}

.dashboard-key-details-card h3{
  font-size:clamp(4.2rem, 7.5vw, 8.4rem)!important;
  line-height:.88!important;
  letter-spacing:-.075em!important;
  margin:0 0 18px!important;
}

.newsletter-head{
  display:flex;
  align-items:center;
  gap:12px;
}

.newsletter-check{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  color:#9cff8c;
  font-weight:900;
}

.newsletter-check input{
  width:auto;
}

.dashboard-profile-photo{
  display:flex;
  align-items:flex-start;
  justify-content:center;
}

.dashboard-profile-photo img{
  width:220px;
  height:220px;
  border-radius:28px;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
}

.dashboard-details-grid{
  display:grid;
  grid-template-columns:1fr 1fr 320px;
  gap:24px;
}

.dashboard-detail-card,
.dashboard-order-history,
.dashboard-headshots,
.dashboard-remarks-wrap{
  padding:28px;
  border-radius:28px;
}

.dashboard-field-grid{
  display:grid;
  gap:14px;
}

.dashboard-field-grid label{
  display:grid;
  gap:7px;
  font-weight:800;
}

.dashboard-field-grid input,
.dashboard-remarks{
  width:100%;
  border-radius:16px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  padding:12px 14px;
}

.dashboard-order-placeholder{
  min-height:48px;
  border-radius:14px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  padding:14px;
  color:var(--muted);
}

.dashboard-headshots-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}

.dashboard-upload-more{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.dashboard-upload-more input[type="file"]{
  max-width:280px;
}

.dashboard-gallery-grid{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}

.dashboard-gallery-item{
  margin:0;
}

.dashboard-gallery-item figcaption{
  margin-bottom:10px;
  font-weight:800;
}

.dashboard-gallery-item img{
  width:100%;
  aspect-ratio:1/1.2;
  object-fit:cover;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);
}

.dashboard-remarks{
  min-height:180px;
}

.dashboard-save-actions{
  display:flex;
  justify-content:flex-end;
}

@media (max-width:1100px){
  .dashboard-details-grid,
  .dashboard-meta-row,
  .dashboard-top,
  .dashboard-gallery-grid{
    grid-template-columns:1fr;
  }

  .dashboard-customer-name,
  .dashboard-key-details-card h3{
    font-size:clamp(3rem, 12vw, 5.4rem)!important;
  }

  .dashboard-profile-photo{
    justify-content:flex-start;
  }
}

/* PATCH END */
/* // PATCH START: V27.16 stronger global panel translucency */
.dashboard-panel,
.dashboard-card,
.customer-dashboard,
.customer-dashboard .panel,
.customer-dashboard .card,
.portal-panel,
.portal-card,
.admin-panel,
.admin-card,
.checkout-panel,
.checkout-card,
.cart-panel,
.cart-card,
.upload-panel,
.upload-card,
.order-panel,
.order-card,
.product-panel,
.product-card,
.collection-panel,
.collection-card,
.pricing-panel,
.pricing-card,
.glass-panel,
.glass-card,
.panel,
.card,
.section-card,
.content-card,
.form-panel,
.form-card {
    background: rgba(8, 10, 16, 0.20) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-color: rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.18) !important;
}
/* // PATCH END */
/* // PATCH START: V27.16 customer dashboard replacement compatibility */
/* REASON: Support the replacement customer-dashboard.php and make dashboard panels readable, translucent, and compatible with the global background video. */
.customer-dashboard .dashboard-panel,
.customer-dashboard .dashboard-top,
.customer-dashboard .dashboard-detail-card,
.customer-dashboard .dashboard-order-history,
.customer-dashboard .dashboard-headshots,
.customer-dashboard .dashboard-remarks-wrap,
.customer-dashboard .dashboard-meta-card {
  background:rgba(8,10,16,.18)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}

.customer-dashboard .dashboard-key-details-card h2 {
  font-size:clamp(1.65rem, 2.6vw, 2.55rem)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
  margin:0 0 10px!important;
}

.customer-dashboard .dashboard-personal-details-label {
  font-size:clamp(.88rem, 1.05vw, 1rem)!important;
  color:var(--muted)!important;
  margin:0!important;
}

.customer-dashboard .dashboard-field-grid input[readonly] {
  cursor:not-allowed!important;
  opacity:.82!important;
}

.dashboard-profile-placeholder,
.dashboard-image-placeholder {
  width:100%;
  min-height:180px;
  display:grid;
  place-items:center;
  text-align:center;
  color:var(--muted);
  border-radius:20px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.10);
}

.dashboard-profile-placeholder {
  width:220px;
  height:220px;
  min-height:220px;
  border-radius:28px;
}

.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;
}
/* // PATCH END */
/* PATCH START: V27.16 customer dashboard final compatibility patch */
/* REASON: Support full replacement customer-dashboard.php with correct typography, readonly fields, upload isolation styling, and translucent dashboard panels. */

.customer-dashboard .dashboard-panel,
.customer-dashboard .dashboard-top,
.customer-dashboard .dashboard-meta-card,
.customer-dashboard .dashboard-detail-card,
.customer-dashboard .dashboard-order-history,
.customer-dashboard .dashboard-remarks-wrap,
.customer-dashboard .dashboard-headshots,
.customer-dashboard .glass {
  background:rgba(8,10,16,.20)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}

.dashboard-key-details-card h2 {
  font-size:clamp(2.2rem, 4.4vw, 4.6rem)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  margin:0 0 14px!important;
}

.dashboard-personal-details-label {
  font-size:clamp(.9rem, 1.1vw, 1rem)!important;
  color:var(--muted)!important;
  margin:0!important;
}

.customer-dashboard input[readonly] {
  cursor:not-allowed!important;
  opacity:.82!important;
}

.customer-dashboard .dashboard-field-grid input,
.customer-dashboard .dashboard-remarks {
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.14)!important;
}

.dashboard-profile-placeholder,
.dashboard-image-placeholder {
  width:100%;
  min-height:180px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  color:var(--muted);
  font-weight:800;
}

.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;
}

.upload-submit-button.is-disabled,
button.is-disabled {
  pointer-events:none!important;
  opacity:.55!important;
}

/* PATCH END */

/* PATCH START: V27.16 live dashboard final cleanup */
/* REASON: Ensure dashboard.php patched fields and separated upload form display correctly without changing sitewide layout. */

.dashboard-upload-more form {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.dashboard-upload-more form label {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.customer-dashboard input[readonly],
.dashboard-page input[readonly] {
  cursor:not-allowed!important;
  opacity:.82!important;
}

.customer-dashboard .dashboard-key-details-card h3,
.dashboard-page .dashboard-key-details-card h3 {
  font-size:clamp(2.2rem, 4.4vw, 4.6rem)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  margin:0 0 14px!important;
}

.upload-submit-button.is-disabled,
button.is-disabled {
  pointer-events:none!important;
  opacity:.55!important;
}

/* PATCH END */

/* PATCH START: V27.16 live dashboard final behavior support */
/* REASON: Supports dashboard.php upload isolation, read-only account fields, disabled upload button state, and Key Details typography hierarchy. */

.dashboard-upload-more form {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.dashboard-upload-more form label {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.dashboard-page input[readonly],
.customer-dashboard input[readonly] {
  cursor:not-allowed!important;
  opacity:.82!important;
}

.dashboard-page .dashboard-key-details-card h3,
.customer-dashboard .dashboard-key-details-card h3 {
  font-size:clamp(2.2rem, 4.4vw, 4.6rem)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  margin:0 0 14px!important;
}

.upload-submit-button.is-disabled,
button.is-disabled {
  pointer-events:none!important;
  opacity:.55!important;
}

/* PATCH END */


/* PATCH START: V27.16 active customer dashboard upload support */
/* REASON: Keep the active /customer/dashboard.php upload form aligned and show disabled upload state without changing sitewide layout. */
.dashboard-upload-more form {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.dashboard-upload-more form label {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.dashboard-page input[readonly],
.customer-dashboard input[readonly] {
  cursor:not-allowed!important;
  opacity:.82!important;
}

.upload-submit-button.is-disabled,
button.is-disabled {
  pointer-events:none!important;
  opacity:.55!important;
}
/* PATCH END */

/* PATCH START: V27.16 dashboard Key Details font refinement */
/* REASON: Key Details must be smaller than Customer Name but larger than Personal Details without changing dashboard layout. */
.dashboard-page .dashboard-key-details-card h3,
.customer-dashboard .dashboard-key-details-card h3,
.dashboard-key-details-card h3{
  font-size:clamp(2.4rem, 4vw, 4.4rem)!important;
  line-height:.95!important;
  letter-spacing:-.05em!important;
  margin:0 0 14px!important;
}
/* PATCH END */
