/* ==========================================================================
   DecArt Gallery — Brand System v5
   Manba: DecArt Gallery Brend kitobi.
   Palitra 60 tun / 28 grafit / 12 tilla · Jost + Manrope · qo'shaloq tilla ramka.
   ========================================================================== */

:root{
  /* brend palitrasi — brend kitobidan aynan */
  --tun:#141312;
  --grafit:#222120;
  --grafit-2:#191817;
  --bronza:#655132;
  --tilla:#AC9161;
  --shampan:#DCC89A;
  --marmar:#F2EDE4;
  --dud:#8C867C;
  --gold-grad:linear-gradient(115deg,#655132 0%,#AC9161 22%,#DCC89A 48%,#AC9161 72%,#7A6440 100%);

  /* rollar — qora asos rejimi (asosiy) */
  --bg:var(--tun);
  --bg-2:var(--grafit-2);
  --surface:var(--grafit);
  --surface-2:#1D1C1B;
  --ink:var(--marmar);
  --ink-2:#C9C3B8;
  --muted:#ABA49A;            /* matn uchun — kontrast 5:1+ (dud faqat dekorativ) */
  --faint:#8C867C;
  --line:rgba(172,145,97,.22);
  --line-soft:rgba(172,145,97,.12);
  --plate:#F2EDE4;            /* mahsulot fotolari uchun doimiy yorug' taglik */

  --shadow-1:0 1px 2px rgba(0,0,0,.35);
  --shadow-2:0 22px 60px -28px rgba(0,0,0,.8);
  --shadow-3:0 44px 110px -44px rgba(0,0,0,.95);

  --r:2px;
  --wrap:1300px;
  --gut:clamp(20px,4vw,56px);
  --frame:14px;               /* ichki ramka ofseti */

  --font-display:'Jost', system-ui, sans-serif;
  --font-body:'Manrope', system-ui, sans-serif;

  --ease:cubic-bezier(.22,.9,.24,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --sec:clamp(84px,9.5vw,148px);
}

/* yorug' rejim — marmar oq asos (brend kitobining «on-light» versiyasi) */
body.dark-mode{
  --bg:var(--marmar);
  --bg-2:#EAE3D6;
  --surface:#FFFFFF;
  --surface-2:#F7F3EA;
  --ink:#1A1917;
  --ink-2:#3E3A34;
  --muted:#7A7367;
  --faint:#A39B8D;
  --line:rgba(101,81,50,.20);
  --line-soft:rgba(101,81,50,.10);
  --shadow-2:0 22px 60px -30px rgba(45,35,18,.22);
  --shadow-3:0 44px 100px -44px rgba(45,35,18,.32);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}

body{
  margin:0;
  font-family:var(--font-body);
  font-weight:300;
  font-size:16px;
  line-height:1.72;
  color:var(--ink-2);
  background:var(--bg);
  overflow-x:hidden;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  transition:background .55s var(--ease),color .55s var(--ease);
}
body>*{position:relative;z-index:1}

a{color:inherit;text-decoration:none;transition:color .3s var(--ease)}
a:hover{color:var(--shampan)}
body.dark-mode a:hover{color:var(--bronza)}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0}
::selection{background:var(--tilla);color:var(--tun)}
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-track{background:var(--bg-2)}
::-webkit-scrollbar-thumb{background:var(--bronza)}

/* --------------------------------------------------- ramka: brend imzosi */
/* qo'shaloq tilla ramka — bloklarda takrorlanadigan asosiy grafik element */
.framed{position:relative}
.framed::after{
  content:"";position:absolute;inset:var(--frame);
  border:1px solid var(--line);pointer-events:none;
}

/* --------------------------------------------------- layout */
.wrap{width:min(var(--wrap),calc(100% - var(--gut) * 2));margin-inline:auto}
.section{padding:var(--sec) 0;position:relative}
.surface-section{background:var(--bg-2);border-block:1px solid var(--line-soft)}

/* --------------------------------------------------- tipografika */
h1,h2,h3,h4{margin:0;color:var(--ink);font-family:var(--font-display);font-weight:500;letter-spacing:.01em}

.hero-copy h1,.page-hero h1,.about-page-hero h1,.section-head h2,.why-intro h2,
.cta-inner h2,.story-grid h2,.partner-benefit-grid h2,.about-cta h2,.detail-title,
.not-found h1,.request-panel-head h2,.contact-copy h2{
  font-weight:300;
  letter-spacing:-.005em;
  line-height:1.06;
  text-wrap:balance;
}
/* tilla gradient — faqat sarlavha urg'usi, logotip va ramkalarda */
.hero-copy h1 em,.page-hero h1 em,.section-head h2 em,.why-intro h2 em,
.cta-inner h2 em,.story-grid h2 em,.partner-benefit-grid h2 em,.about-cta h2 em{
  font-style:normal;font-weight:400;
  background:var(--gold-grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
p{margin:0 0 1em;text-wrap:pretty}
p:last-child{margin-bottom:0}

/* mikrotipografika — Jost, tracked caps */
.eyebrow,.section-label{
  display:flex;align-items:center;gap:14px;
  font-family:var(--font-display);font-weight:400;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--tilla);margin:0 0 24px;
}
/* brend kitobidagi raqamli kvadrat */
.section-label span{
  display:grid;place-items:center;flex:0 0 38px;
  width:38px;height:38px;border:1px solid var(--line);
  font-size:13px;font-weight:300;letter-spacing:.06em;color:var(--tilla);
}
.eyebrow span{display:block;width:52px;height:1px;background:currentColor;opacity:.55;flex:0 0 auto}
.section-label i{display:block;width:40px;height:1px;background:currentColor;opacity:.45;flex:0 0 auto}
.section-label.light,.hero-section .eyebrow{color:var(--shampan)}

.section-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:clamp(24px,4vw,64px);
  margin-bottom:clamp(40px,5vw,66px);
  padding-bottom:26px;border-bottom:1px solid var(--line-soft);
}
.section-head h2{font-size:clamp(32px,4.3vw,58px);max-width:22ch}
.section-head p{max-width:46ch;color:var(--muted);font-size:14.5px}

.text-link{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-display);font-weight:400;
  font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink);padding-bottom:6px;border-bottom:1px solid var(--line);
  white-space:nowrap;transition:.35s var(--ease);
}
.text-link:hover{color:var(--shampan);border-color:var(--tilla);gap:16px}
body.dark-mode .text-link:hover{color:var(--bronza)}

/* --------------------------------------------------- tugmalar */
.btn{
  position:relative;overflow:hidden;isolation:isolate;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:54px;padding:16px 32px;border:1px solid transparent;border-radius:var(--r);
  font-family:var(--font-display);font-weight:500;
  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;
  white-space:nowrap;transition:.4s var(--ease);
}
.btn::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.22) 50%,transparent 80%);
  transform:translateX(-120%);transition:transform .75s var(--ease-out);
}
.btn:hover::after{transform:translateX(120%)}

/* asosiy — tilla gradient, brend kitobidagi metall effekt */
.btn-primary{background:var(--gold-grad);color:var(--tun);box-shadow:var(--shadow-2)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-3)}

.btn-light{background:var(--marmar);color:var(--tun)}
.btn-light:hover{background:#fff;transform:translateY(-2px)}

.btn-outline-light{color:var(--shampan);border-color:var(--line);background:rgba(172,145,97,.06)}
.btn-outline-light:hover{border-color:var(--tilla);background:rgba(172,145,97,.14);transform:translateY(-2px)}

.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--tilla);color:var(--tilla)}
.full-btn{width:100%}

/* --------------------------------------------------- header */
.site-header{
  position:sticky;top:0;z-index:60;
  background:color-mix(in srgb,var(--bg) 88%,transparent);
  backdrop-filter:blur(22px) saturate(1.3);
  border-bottom:1px solid var(--line-soft);
  transition:box-shadow .4s var(--ease),background .4s var(--ease);
}
.site-header.scrolled{box-shadow:0 1px 34px -12px rgba(0,0,0,.55)}
.site-header.scrolled .topbar{max-height:0;opacity:0;border-color:transparent}

.topbar{
  max-height:44px;opacity:1;overflow:hidden;
  font-family:var(--font-display);font-weight:400;
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  border-bottom:1px solid var(--line-soft);color:var(--muted);
  transition:max-height .45s var(--ease),opacity .3s var(--ease);
}
.topbar-inner,.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.topbar-inner{min-height:40px}
.topbar-tags,.topbar-phones{display:flex;gap:26px;align-items:center;flex-wrap:nowrap;min-width:0}
.topbar-tags span,.topbar-phones a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar-tags span:first-child{color:var(--tilla)}
.topbar-phones a{color:var(--ink-2)}
@media(max-width:1180px){.topbar-tags span:last-child{display:none}}
@media(max-width:1000px){.topbar-tags span:nth-child(2){display:none}}

.navbar,.nav-inner{min-height:88px;transition:min-height .4s var(--ease)}
.site-header.scrolled .navbar,.site-header.scrolled .nav-inner{min-height:72px}

.brand-logo{display:flex;align-items:center;flex:0 0 auto}
.brand-logo img{width:auto;height:48px;object-fit:contain;transition:height .4s var(--ease),transform .5s var(--ease)}
.site-header.scrolled .brand-logo img{height:38px}
.brand-logo:hover img{transform:translateY(-1px)}
/* yorug' rejimda tilla logotip marmar fonga singdiriladi */
body.dark-mode .brand-logo img,body.dark-mode .mobile-logo{mix-blend-mode:multiply}

.nav-links{display:flex;align-items:center;gap:clamp(10px,1.7vw,30px);flex-wrap:nowrap;min-width:0}
.nav-links a{
  position:relative;padding:7px 0;white-space:nowrap;
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(10.5px,.85vw,12px);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
}
.nav-links a::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:var(--gold-grad);transform:scaleX(0);transform-origin:left;
  transition:transform .45s var(--ease);
}
.nav-links a:hover,.nav-links a.active{color:var(--ink)}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}

.nav-actions{display:flex;align-items:center;gap:14px}
.lang-switch,.mobile-lang-switch{display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.lang-switch button,.mobile-lang-switch button{
  padding:10px 12px;font-family:var(--font-display);font-weight:400;
  font-size:10.5px;letter-spacing:.12em;color:var(--muted);transition:.3s var(--ease);
}
.lang-switch button+button,.mobile-lang-switch button+button{border-left:1px solid var(--line)}
.lang-switch button:hover,.mobile-lang-switch button:hover{color:var(--ink)}
.lang-switch button.active,.mobile-lang-switch button.active{background:var(--gold-grad);color:var(--tun)}

.theme-toggle,.mobile-theme-toggle{
  width:44px;height:44px;border:1px solid var(--line);border-radius:var(--r);
  display:grid;place-items:center;font-size:13px;color:var(--muted);transition:.3s var(--ease);
}
.theme-toggle:hover,.mobile-theme-toggle:hover{border-color:var(--tilla);color:var(--shampan)}
/* qora asos rejimda «yorug'likka o'tish» belgisi ko'rinadi */
.theme-toggle span:last-child{display:none}
body.dark-mode .theme-toggle span:first-child{display:none}
body.dark-mode .theme-toggle span:last-child{display:block}

.burger{
  display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:var(--r);
  flex-direction:column;gap:5px;align-items:center;justify-content:center;color:var(--ink);
}
.burger span{width:17px;height:1px;background:currentColor}

.scroll-progress{
  position:fixed;top:0;left:0;height:2px;width:0;z-index:100;background:var(--gold-grad);
  transition:width .1s linear;
}

/* --------------------------------------------------- mobil menyu */
.mobile-menu{
  position:fixed;inset:0 0 0 auto;width:min(440px,100%);
  background:var(--bg);z-index:95;padding:26px var(--gut);
  transform:translateX(103%);transition:transform .55s var(--ease-out);
  box-shadow:-40px 0 110px rgba(0,0,0,.6);
  display:flex;flex-direction:column;gap:2px;overflow-y:auto;
  border-left:1px solid var(--line);
}
.mobile-menu.open{transform:translateX(0)}
body.menu-open{overflow:hidden}
.mobile-close{
  align-self:flex-end;border:1px solid var(--line);border-radius:var(--r);
  width:46px;height:46px;font-size:22px;line-height:1;color:var(--muted);
}
.mobile-close:hover{border-color:var(--tilla);color:var(--shampan)}
.mobile-logo{width:min(210px,60%);height:auto;margin:8px 0 28px}
.mobile-menu>a:not(.btn){
  padding:18px 0;border-bottom:1px solid var(--line-soft);
  font-family:var(--font-display);font-weight:300;font-size:26px;letter-spacing:.02em;color:var(--ink);
}
.mobile-menu>a:not(.btn):hover{color:var(--shampan);padding-left:8px}
.mobile-menu-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 16px}

/* --------------------------------------------------- HERO */
.hero-section{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:min(92vh,900px);display:flex;align-items:center;
  padding:clamp(80px,10vw,132px) 0 clamp(70px,8vw,112px);
  color:var(--marmar);background:var(--tun);
}
.hero-section::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background:
    radial-gradient(ellipse 60% 70% at 76% 16%,rgba(172,145,97,.20),transparent 70%),
    radial-gradient(ellipse 90% 100% at 6% 100%,rgba(101,81,50,.24),transparent 72%),
    var(--tun);
}
/* qo'shaloq tilla ramka — hero maydonining imzosi */
.hero-section::after{
  content:"";position:absolute;z-index:3;pointer-events:none;
  inset:clamp(16px,2.4vw,34px);
  border:1px solid rgba(172,145,97,.26);
}
.hero-ambient{
  position:absolute;z-index:0;left:6%;bottom:14%;width:190px;aspect-ratio:1;
  border:1px solid rgba(172,145,97,.16);border-radius:50%;pointer-events:none;
}

.hero-grid{
  position:relative;z-index:2;display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:clamp(36px,5vw,80px);align-items:center;
}
.hero-copy{max-width:780px}
.hero-copy h1{font-size:clamp(46px,6.8vw,104px);color:var(--marmar);margin:0 0 28px}
.hero-copy p,.hero-desc{
  font-size:clamp(15px,1.3vw,17.5px);color:rgba(242,237,228,.7);
  max-width:52ch;margin:0 0 40px;
}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:clamp(40px,5vw,64px)}

.hero-tags{
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(172,145,97,.2);padding-top:28px;gap:0;
}
.hero-tags div{padding:0 clamp(12px,2vw,26px);border-left:1px solid rgba(172,145,97,.14)}
.hero-tags div:first-child{padding-left:0;border-left:0}
.hero-tags strong{
  display:block;font-family:var(--font-display);font-weight:300;
  font-size:clamp(32px,3.4vw,48px);line-height:1;letter-spacing:.01em;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-tags span{
  display:block;margin-top:10px;font-family:var(--font-display);font-weight:400;
  font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--dud);
}

/* showroom vizuali */
.hero-showcase.showroom-visual{
  position:absolute;z-index:1;pointer-events:none;top:0;bottom:0;
  right:calc((100vw - min(var(--wrap),100vw - var(--gut) * 2)) / -2);
  width:min(58vw,1000px);
}
.showroom-banner{position:absolute;inset:0;display:block;overflow:hidden;isolation:isolate;pointer-events:auto}
.showroom-banner img{
  width:100%;height:100%;object-fit:cover;
  filter:saturate(.86) contrast(1.08) brightness(.72);
  transform:scale(1.05);
  transition:transform 1.4s var(--ease-out),filter .8s var(--ease);
  -webkit-mask-image:linear-gradient(95deg,transparent 0%,rgba(0,0,0,.35) 22%,rgba(0,0,0,.8) 40%,#000 56%,#000 100%);
  mask-image:linear-gradient(95deg,transparent 0%,rgba(0,0,0,.35) 22%,rgba(0,0,0,.8) 40%,#000 56%,#000 100%);
}
.showroom-banner::before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,rgba(20,19,18,.34) 0%,transparent 34%,rgba(20,19,18,.62) 100%);
}
.showroom-banner:hover img{transform:scale(1.1);filter:saturate(.95) contrast(1.04) brightness(.84)}
.showroom-badge{
  position:absolute;z-index:3;right:clamp(34px,4.6vw,72px);bottom:clamp(34px,4.6vw,72px);
  max-width:290px;padding:20px 24px;
  background:rgba(20,19,18,.62);border:1px solid rgba(172,145,97,.3);
  backdrop-filter:blur(18px);color:var(--marmar);
  transition:border-color .5s var(--ease);
}
.showroom-banner:hover .showroom-badge{border-color:var(--shampan)}
.showroom-badge span{
  display:block;margin-bottom:10px;font-family:var(--font-display);font-weight:400;
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--tilla);
}
.showroom-badge b{
  display:block;font-family:var(--font-display);font-weight:300;
  font-size:28px;line-height:1;letter-spacing:.02em;color:var(--marmar);
}
.showroom-visual .showcase-main,.showroom-visual .showcase-mini{display:none!important}

/* --------------------------------------------------- ticker */
.ticker{
  overflow:hidden;background:var(--grafit);border-block:1px solid var(--line-soft);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.ticker-track{display:flex;width:max-content;animation:ticker 46s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker span{
  display:flex;align-items:center;gap:36px;padding:20px 36px;
  font-family:var(--font-display);font-weight:300;
  font-size:15px;letter-spacing:.24em;text-transform:uppercase;white-space:nowrap;
  color:var(--shampan);
}
.ticker span::after{content:"";width:5px;height:5px;background:var(--tilla);flex:0 0 auto}
@keyframes ticker{to{transform:translateX(-50%)}}

/* --------------------------------------------------- kategoriyalar */
.category-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));
  gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);
}
.category-card{
  position:relative;overflow:hidden;min-height:262px;
  padding:clamp(26px,3vw,36px);
  display:flex;flex-direction:column;justify-content:space-between;
  background:var(--surface);transition:.55s var(--ease);
}
/* ichki tilla ramka hover'da ochiladi — brend imzosi */
.category-card::before{
  content:"";position:absolute;inset:12px;border:1px solid var(--line);
  opacity:0;transform:scale(1.03);
  transition:.6s var(--ease);pointer-events:none;
}
.category-card:hover::before{opacity:1;transform:none}
.category-card:hover{background:var(--surface-2)}
.category-card span{
  display:grid;place-items:center;width:38px;height:38px;
  border:1px solid var(--line);
  font-family:var(--font-display);font-weight:300;font-size:13px;
  letter-spacing:.06em;color:var(--tilla);
}
.category-card h3{
  margin:auto 0 10px;font-weight:300;
  font-size:clamp(23px,2.3vw,30px);letter-spacing:.01em;line-height:1.12;
}
.category-card p{color:var(--muted);font-size:14px;margin:0}

/* --------------------------------------------------- mahsulot kartalari */
.product-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(272px,1fr));
  gap:clamp(18px,2.2vw,32px);
}
.product-card{
  position:relative;background:var(--surface);
  border:1px solid var(--line-soft);border-radius:var(--r);
  overflow:hidden;transition:.5s var(--ease);
}
.product-card:hover{border-color:var(--line);box-shadow:var(--shadow-2);transform:translateY(-4px)}
.product-card a{display:flex;flex-direction:column;height:100%}

/* foto taglik — marmar plastina, ikki rejimda ham bir xil */
.product-image,.product-image-square{
  position:relative;overflow:hidden;aspect-ratio:1 / 1;
  padding:18px;background:var(--plate);
  display:grid;place-items:center;
}
.product-image::before{
  content:"";position:absolute;inset:10px;border:1px solid rgba(101,81,50,.14);
  z-index:2;pointer-events:none;
}
.product-image img{
  width:100%;height:100%;object-fit:contain;
  transition:transform 1.1s var(--ease-out);
}
.product-card:hover .product-image img{transform:scale(1.05)}

.product-badges{position:absolute;z-index:3;left:16px;right:16px;top:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}
.product-category,.product-status,.product-article{
  display:inline-flex;align-items:center;padding:7px 12px;border-radius:var(--r);
  font-family:var(--font-display);font-weight:500;
  font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;line-height:1.3;
}
.product-category{background:rgba(20,19,18,.9);color:var(--shampan);border:1px solid rgba(172,145,97,.3)}
.product-status,.product-article{background:var(--gold-grad);color:var(--tun)}

.product-body,.product-body-compact{padding:24px;display:flex;flex-direction:column;gap:14px;flex:1}
.product-body h3{
  font-weight:400;font-size:19px;line-height:1.28;letter-spacing:.01em;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  transition:color .35s var(--ease);
}
.product-card:hover .product-body h3{color:var(--shampan)}
body.dark-mode .product-card:hover .product-body h3{color:var(--bronza)}
.product-description{
  color:var(--muted);font-size:13.5px;line-height:1.62;margin:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.product-specs{display:flex;gap:7px;flex-wrap:wrap}
.product-specs span{
  font-family:var(--font-display);font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);border:1px solid var(--line-soft);padding:6px 10px;border-radius:var(--r);
}
.product-footer{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  margin-top:auto;padding-top:18px;border-top:1px solid var(--line-soft);
}
.product-price small{
  display:block;color:var(--faint);font-family:var(--font-display);
  font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:5px;
}
.product-price b{font-family:var(--font-display);font-weight:400;font-size:16px;color:var(--ink);letter-spacing:.02em}
.product-more{
  width:46px;height:46px;flex:0 0 auto;border-radius:var(--r);
  border:1px solid var(--line);display:grid;place-items:center;font-size:15px;color:var(--ink);
  transition:.45s var(--ease);
}
.product-card:hover .product-more{background:var(--gold-grad);color:var(--tun);border-color:transparent}

.empty-products{
  grid-column:1/-1;padding:64px 34px;text-align:center;
  border:1px dashed var(--line);color:var(--muted);background:var(--surface);
}
.no-product-img{width:100%;height:100%;display:grid;place-items:center;background:var(--plate)}
.no-product-img>div{
  width:124px;aspect-ratio:1;border:1px solid rgba(101,81,50,.2);
  display:grid;place-content:center;text-align:center;gap:6px;
}
.no-product-img b{
  display:block;font-family:var(--font-display);font-weight:300;font-size:30px;letter-spacing:.1em;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.no-product-img span{font-family:var(--font-display);font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:#8C867C}

.product-grid.list-view{grid-template-columns:1fr}
.product-grid.list-view .product-card a{display:grid;grid-template-columns:minmax(200px,280px) 1fr}
.product-grid.list-view .product-image{aspect-ratio:auto;min-height:250px}
.product-grid.list-view .product-body h3{-webkit-line-clamp:3}

/* --------------------------------------------------- grafit bloklar */
.why-section,.cta-section,.partnership-dark{
  background:var(--grafit);color:var(--marmar);
  border-block:1px solid var(--line-soft);position:relative;overflow:hidden;
}
body.dark-mode .why-section,body.dark-mode .cta-section,body.dark-mode .partnership-dark{
  background:var(--tun);
}
.why-section::before,.cta-section::before,.partnership-dark::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 70% 90% at 84% 0%,rgba(172,145,97,.14),transparent 70%);
}
.why-section .wrap,.cta-section .wrap,.partnership-dark .wrap{position:relative;z-index:1}
.why-section h2,.cta-section h2,.partnership-dark h2,
.why-section h3,.cta-section h3,.partnership-dark h3{color:var(--marmar)}
.why-section p,.cta-section p,.partnership-dark p{color:rgba(242,237,228,.66)}
.why-section .section-label,.cta-section .section-label{color:var(--shampan)}
.why-section .section-label span,.cta-section .section-label span{border-color:rgba(172,145,97,.3);color:var(--shampan)}

.why-grid,.story-grid,.partner-benefit-grid{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(34px,5vw,80px);align-items:start;
}
.why-intro h2,.story-grid h2{font-size:clamp(29px,3.6vw,50px);margin-bottom:24px}
.why-intro p{margin-bottom:34px}

.benefits-grid,.steps,.offer-grid,.values-grid,.partner-types,.partner-steps{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);
}
.benefits-grid article,.steps article,.offer-grid article,.values-grid article,
.partner-types article,.partner-steps article{
  padding:clamp(26px,3vw,36px);background:var(--surface);transition:.5s var(--ease);
}
.why-section .benefits-grid article,.cta-section .benefits-grid article,
.partnership-dark .partner-types article,.partnership-dark .partner-steps article{background:var(--grafit)}
body.dark-mode .why-section .benefits-grid article,
body.dark-mode .partnership-dark .partner-types article,
body.dark-mode .partnership-dark .partner-steps article{background:var(--tun)}
.benefits-grid article:hover,.steps article:hover,.offer-grid article:hover,
.values-grid article:hover,.partner-types article:hover,.partner-steps article:hover{
  background:var(--surface-2);
}
.why-section .benefits-grid article:hover{background:var(--surface-2)}

.benefits-grid b,.benefits-grid article span,.steps article span,.offer-grid article span,
.values-grid article span,.partner-types article span,.partner-steps article span{
  display:grid;place-items:center;width:38px;height:38px;
  border:1px solid var(--line);margin-bottom:26px;
  font-family:var(--font-display);font-weight:300;font-size:13px;letter-spacing:.06em;color:var(--tilla);
}
.benefits-grid h3,.steps h3,.offer-grid h3,.values-grid h3,
.partner-types h3,.partner-steps h3,.info-block h3{
  font-weight:400;font-size:20px;line-height:1.22;letter-spacing:.01em;margin:0 0 10px;
}
.benefits-grid p,.steps p,.offer-grid p,.values-grid p,
.partner-types p,.partner-steps p,.info-block p{color:var(--muted);font-size:14px;margin:0}

/* --------------------------------------------------- lookbook */
.lookbook{display:grid;grid-template-columns:repeat(12,1fr);gap:1px;background:var(--line-soft)}
.lookbook figure{position:relative;margin:0;overflow:hidden;background:var(--plate);min-height:240px}
.lookbook figure:nth-child(1){grid-column:span 7;aspect-ratio:16/11}
.lookbook figure:nth-child(2){grid-column:span 5;aspect-ratio:4/3}
.lookbook figure:nth-child(3){grid-column:span 5;aspect-ratio:4/3}
.lookbook figure:nth-child(4){grid-column:span 7;aspect-ratio:16/11}
.lookbook img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--ease-out)}
.lookbook figure::after{
  content:"";position:absolute;inset:14px;border:1px solid rgba(242,237,228,.28);
  opacity:0;transition:opacity .5s var(--ease);pointer-events:none;z-index:2;
}
.lookbook figure:hover img{transform:scale(1.05)}
.lookbook figure:hover::after{opacity:1}
.lookbook figcaption{
  position:absolute;inset:auto 0 0 0;z-index:3;padding:28px;
  background:linear-gradient(transparent,rgba(20,19,18,.86));
  color:var(--marmar);font-family:var(--font-display);font-weight:300;
  font-size:22px;letter-spacing:.04em;
  opacity:0;transform:translateY(12px);transition:.5s var(--ease);
}
.lookbook figure:hover figcaption{opacity:1;transform:none}

/* --------------------------------------------------- showroomlar */
.showroom-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(262px,1fr));gap:1px;background:var(--line-soft);border:1px solid var(--line-soft)}
.showroom-list article{position:relative;padding:clamp(26px,3vw,36px);background:var(--surface);transition:.5s var(--ease)}
.showroom-list article:hover{background:var(--surface-2)}
.showroom-list h3{font-weight:300;font-size:25px;letter-spacing:.01em;margin:0 0 8px}
.showroom-list span{
  display:block;font-family:var(--font-display);font-weight:400;
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--tilla);margin-bottom:22px;
}
.showroom-list p{color:var(--muted);font-size:14px}
.showroom-list a{
  display:inline-flex;margin-top:18px;font-family:var(--font-display);
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);
  border-bottom:1px solid var(--line);padding-bottom:5px;
}
.showroom-list a:hover{color:var(--shampan);border-color:var(--tilla)}
body.dark-mode .showroom-list a:hover{color:var(--bronza)}

/* --------------------------------------------------- CTA */
.cta-inner,.about-cta{display:flex;align-items:center;justify-content:space-between;gap:clamp(28px,4vw,64px);flex-wrap:wrap}
.cta-inner h2,.about-cta h2{font-size:clamp(29px,3.8vw,54px);max-width:22ch}
.about-cta{position:relative;padding:clamp(32px,4vw,58px);border:1px solid var(--line);background:var(--surface)}
.about-cta::after{content:"";position:absolute;inset:12px;border:1px solid var(--line-soft);pointer-events:none}

/* --------------------------------------------------- page hero */
.page-hero,.about-page-hero{
  padding:clamp(70px,8vw,124px) 0 clamp(48px,5vw,76px);
  border-bottom:1px solid var(--line-soft);
  background:var(--bg-2);position:relative;overflow:hidden;
}
.page-hero::after{
  content:"";position:absolute;right:-6%;top:-40%;width:min(46vw,560px);aspect-ratio:1;border-radius:50%;
  background:repeating-radial-gradient(circle at center,transparent 0 58px,var(--line-soft) 58px 59px);
  pointer-events:none;
}
.page-hero .wrap,.about-page-hero .wrap{position:relative;z-index:1}
.page-hero h1,.about-page-hero h1{font-size:clamp(36px,5.2vw,76px);margin:0 0 24px}
.page-hero p{max-width:58ch;color:var(--muted);font-size:16px}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(30px,4vw,64px);align-items:end}
.breadcrumb,.detail-kicker{
  font-family:var(--font-display);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--faint);margin-bottom:24px;
}
.hero-metric-card{position:relative;padding:clamp(26px,3vw,36px);border:1px solid var(--line);background:var(--surface)}
.hero-metric-card::after{content:"";position:absolute;inset:11px;border:1px solid var(--line-soft);pointer-events:none}
.hero-metric-card strong{
  display:block;font-family:var(--font-display);font-weight:300;
  font-size:clamp(46px,5.6vw,72px);line-height:1;letter-spacing:.01em;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-metric-card span{
  display:block;margin-top:14px;font-family:var(--font-display);
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
}

/* --------------------------------------------------- katalog */
.catalog-toolbar{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  padding-bottom:24px;margin-bottom:clamp(28px,3vw,44px);border-bottom:1px solid var(--line-soft);
}
.catalog-search{
  position:relative;flex:1 1 320px;display:flex;align-items:center;
  border:1px solid var(--line);border-radius:var(--r);background:var(--surface);
  transition:border-color .35s var(--ease);
}
.catalog-search:focus-within{border-color:var(--tilla)}
.catalog-search svg{width:17px;height:17px;flex:0 0 auto;margin-left:16px;fill:none;stroke:var(--faint);stroke-width:1.6;stroke-linecap:round}
.catalog-search input{width:100%;border:0;background:transparent;outline:none;padding:16px;font-size:14.5px}
.catalog-toolbar select{
  border:1px solid var(--line);border-radius:var(--r);background:var(--surface);
  padding:16px 18px;font-family:var(--font-display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  outline:none;cursor:pointer;min-height:54px;
}
.catalog-toolbar select:focus{border-color:var(--tilla)}
.view-toggle{display:flex;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.view-toggle button{
  padding:16px 18px;font-family:var(--font-display);font-size:10.5px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--muted);transition:.3s var(--ease);
}
.view-toggle button+button{border-left:1px solid var(--line)}
.view-toggle button.active{background:var(--gold-grad);color:var(--tun)}

.catalog-layout{display:grid;grid-template-columns:292px minmax(0,1fr);gap:clamp(26px,3.4vw,56px);align-items:start}
.filter-panel{position:sticky;top:124px;border:1px solid var(--line);background:var(--surface);padding:28px}
.filter-title{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line-soft);
  font-family:var(--font-display);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);
}
.filter-title button{font-family:var(--font-display);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--tilla)}
.filters{display:flex;flex-direction:column;gap:1px}
.filters button{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;padding:14px;text-align:left;font-size:13.5px;color:var(--muted);
  border-left:2px solid transparent;transition:.3s var(--ease);
}
.filters button:hover{color:var(--ink);background:var(--surface-2)}
.filters button.active{color:var(--ink);background:var(--surface-2);border-left-color:var(--tilla)}
.filters button b{
  font-family:var(--font-display);font-size:10px;font-weight:400;color:var(--faint);
  border:1px solid var(--line-soft);padding:3px 9px;
}
.filters button.active b{color:var(--tilla);border-color:var(--line)}
.filter-note{margin-top:24px;padding-top:22px;border-top:1px solid var(--line-soft);font-size:13.5px;color:var(--muted)}
.filter-note strong{display:block;color:var(--ink);font-family:var(--font-display);font-weight:300;font-size:20px;margin-bottom:8px}
.catalog-result-head{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-bottom:26px;font-family:var(--font-display);font-size:11.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);
}

/* --------------------------------------------------- mahsulot sahifasi */
.detail-hero{padding:clamp(40px,5vw,74px) 0 clamp(50px,6vw,92px);border-bottom:1px solid var(--line-soft)}
.product-detail{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(30px,4vw,72px);align-items:start}
.product-media{position:sticky;top:124px}
.product-gallery-main{
  position:relative;overflow:hidden;aspect-ratio:1 / 1;
  padding:clamp(18px,3vw,40px);background:var(--plate);border:1px solid var(--line);
}
.product-gallery-main::before{content:"";position:absolute;inset:12px;border:1px solid rgba(101,81,50,.14);z-index:2;pointer-events:none}
.product-gallery-main img{width:100%;height:100%;object-fit:contain;cursor:zoom-in;transition:transform .8s var(--ease-out)}
.product-gallery-main:hover img{transform:scale(1.03)}
.gallery-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:48px;height:48px;
  background:rgba(20,19,18,.86);border:1px solid rgba(172,145,97,.3);
  font-size:20px;line-height:1;color:var(--shampan);
  opacity:0;transition:.4s var(--ease);
}
.product-gallery-main:hover .gallery-arrow{opacity:1}
.gallery-prev{left:18px}
.gallery-next{right:18px}
.gallery-arrow:hover{background:var(--gold-grad);color:var(--tun);border-color:transparent}
.gallery-counter{
  position:absolute;z-index:4;right:18px;bottom:18px;padding:8px 13px;
  background:rgba(20,19,18,.86);color:var(--shampan);
  font-family:var(--font-display);font-size:10.5px;letter-spacing:.16em;
}
.product-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding-bottom:4px}
.product-thumb{
  flex:0 0 86px;width:86px;aspect-ratio:1;overflow:hidden;
  border:1px solid var(--line-soft);background:var(--plate);
  transition:.35s var(--ease);opacity:.6;
}
.product-thumb img{width:100%;height:100%;object-fit:contain;padding:7px}
.product-thumb:hover{opacity:1}
.product-thumb.active{border-color:var(--tilla);opacity:1}
.product-gallery-empty{aspect-ratio:1/1;border:1px solid var(--line)}

.product-info{display:flex;flex-direction:column}
.detail-title{font-size:clamp(30px,3.9vw,54px);margin:0 0 22px}
.detail-desc{color:var(--muted);font-size:15.5px;margin-bottom:34px}
.detail-main-meta,.detail-info-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));
  gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);
}
.detail-main-meta{margin-bottom:30px}
.detail-main-meta>div,.detail-info-grid>div{padding:22px;background:var(--surface)}
.detail-main-meta small,.detail-info-grid small{
  display:block;font-family:var(--font-display);font-size:9.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--faint);margin-bottom:9px;
}
.detail-main-meta b,.detail-info-grid b{font-family:var(--font-display);font-weight:300;font-size:23px;letter-spacing:.02em;color:var(--ink)}
.detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
.check-list{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:13px}
.check-list li{position:relative;padding-left:28px;font-size:14.5px;color:var(--ink-2)}
.check-list li::before{content:"";position:absolute;left:0;top:.66em;width:12px;height:1px;background:var(--tilla)}
.product-extra{padding-top:clamp(50px,6vw,92px)}
.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:clamp(16px,2vw,26px)}
.small-product{border:1px solid var(--line-soft);background:var(--surface);overflow:hidden;transition:.45s var(--ease)}
.small-product:hover{border-color:var(--line);transform:translateY(-3px);box-shadow:var(--shadow-2)}
.small-product-img{aspect-ratio:1;overflow:hidden;background:var(--plate)}
.small-product-img img{width:100%;height:100%;object-fit:contain;padding:14px;transition:transform 1s var(--ease-out)}
.small-product:hover .small-product-img img{transform:scale(1.05)}
.small-product h3{display:block;padding:18px 20px 0;font-weight:400;font-size:17px;line-height:1.3}
.small-product b{
  display:block;padding:8px 20px 18px;font-family:var(--font-display);font-weight:400;
  font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--tilla);
}

.dg-lightbox{
  position:fixed;inset:0;z-index:200;display:grid;place-items:center;
  background:rgba(20,19,18,.96);backdrop-filter:blur(10px);
  opacity:0;pointer-events:none;transition:opacity .4s var(--ease);
  padding:clamp(20px,5vw,72px);
}
.dg-lightbox.open{opacity:1;pointer-events:auto}
.dg-lightbox img{max-width:100%;max-height:100%;object-fit:contain;background:var(--plate);padding:clamp(14px,2vw,30px)}
.dg-lightbox button{
  position:absolute;top:26px;right:26px;width:48px;height:48px;
  border:1px solid rgba(172,145,97,.34);color:var(--shampan);font-size:22px;
}
.dg-lightbox button:hover{border-color:var(--shampan)}

/* --------------------------------------------------- formalar */
.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,4vw,72px);align-items:start}
.contact-copy h2{font-size:clamp(29px,3.8vw,50px);margin-bottom:22px}
.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);margin-top:34px}
.contact-cards a,.contact-cards>div{display:flex;flex-direction:column;gap:7px;padding:26px;background:var(--surface);font-size:14.5px;transition:.4s var(--ease)}
.contact-cards a:hover{background:var(--surface-2)}
.contact-cards small{font-family:var(--font-display);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}
.contact-cards b{font-family:var(--font-display);font-weight:300;font-size:20px;letter-spacing:.02em;color:var(--ink)}

.request-panel{position:relative;border:1px solid var(--line);background:var(--surface);padding:clamp(26px,3.4vw,46px)}
.request-panel-head{padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid var(--line-soft)}
.request-panel-head h2{font-size:clamp(25px,2.9vw,36px);margin-bottom:9px}
.request-panel-head p{color:var(--muted);font-size:14px}
.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:16px}
.request-panel label{
  display:block;font-family:var(--font-display);font-size:10px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--faint);margin-bottom:10px;
}
.request-panel input,.request-panel select,.request-panel textarea{
  width:100%;padding:16px;border:1px solid var(--line-soft);border-radius:var(--r);
  background:var(--bg-2);outline:none;font-size:14.5px;
  transition:border-color .3s var(--ease),background .3s var(--ease);
}
.request-panel input:focus,.request-panel select:focus,.request-panel textarea:focus{border-color:var(--tilla);background:var(--surface-2)}
.request-panel textarea{min-height:134px;resize:vertical}
.form-note,.confidential-note{font-size:12.5px;color:var(--faint);margin-top:18px}
.request-success{
  display:none;padding:24px;margin-bottom:22px;
  border:1px solid var(--line);background:rgba(172,145,97,.1);color:var(--ink);font-size:14.5px;
}
.request-success.show{display:block}
.center-action{display:flex;justify-content:center;margin-top:clamp(34px,4vw,56px)}
.info-block{position:relative;border:1px solid var(--line);background:var(--surface);padding:clamp(26px,3vw,36px)}

/* --------------------------------------------------- 404 */
.not-found{padding:clamp(80px,12vw,180px) 0;text-align:center}
.not-found span{
  display:block;font-family:var(--font-display);font-weight:300;
  font-size:clamp(90px,16vw,200px);line-height:.9;letter-spacing:.02em;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  opacity:.55;
}
.not-found h1{font-size:clamp(30px,4.6vw,58px);margin:-.15em 0 20px}
.not-found p{color:var(--muted);max-width:44ch;margin:0 auto 34px}

/* --------------------------------------------------- footer */
.site-footer{
  background:var(--tun);color:rgba(242,237,228,.62);
  padding:clamp(64px,7vw,112px) 0 34px;
  border-top:1px solid var(--line);position:relative;overflow:hidden;
}
.site-footer::before{
  content:"";position:absolute;left:50%;top:-42%;width:min(80vw,940px);aspect-ratio:1;
  transform:translateX(-50%);border-radius:50%;
  background:radial-gradient(circle,rgba(172,145,97,.1),transparent 66%);pointer-events:none;
}
.site-footer .wrap{position:relative;z-index:1}
.footer-grid{
  display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));
  gap:clamp(28px,4vw,64px);padding-bottom:clamp(40px,5vw,70px);
}
.footer-brand img{width:min(230px,70%);height:auto;margin-bottom:26px}
.footer-brand p{max-width:42ch;font-size:14px;line-height:1.85}
.footer-col h4{
  font-family:var(--font-display);font-weight:400;
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--tilla);margin:0 0 24px;
}
.footer-col a,.footer-col p{display:block;font-size:14px;color:rgba(242,237,228,.6);margin:0 0 13px}
.footer-col a:hover{color:var(--shampan)}

/* aloqa ustuni — ikonkali havolalar */
.contact-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.contact-links a{
  display:flex;align-items:center;gap:13px;margin:0;padding:9px 0;
  font-size:14px;color:rgba(242,237,228,.62);
}
.contact-links svg{
  width:34px;height:34px;flex:0 0 34px;padding:8px;
  fill:var(--tilla);border:1px solid var(--line-soft);border-radius:50%;
  transition:.4s var(--ease);
}
.contact-links a:hover{color:var(--shampan)}
.contact-links a:hover svg{
  fill:var(--tun);background:var(--gold-grad);border-color:transparent;
  transform:translateY(-2px) scale(1.06);
}
body.dark-mode .contact-links a:hover{color:var(--bronza)}
.footer-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding-top:28px;border-top:1px solid var(--line-soft);
  font-family:var(--font-display);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(242,237,228,.4);
}
.footer-bottom p{margin:0}

.float-contact{
  position:fixed;right:clamp(18px,3vw,34px);bottom:clamp(18px,3vw,34px);z-index:80;
  width:58px;height:58px;border-radius:50%;
  background:var(--gold-grad);color:var(--tun);
  display:grid;place-items:center;box-shadow:var(--shadow-3);transition:.45s var(--ease);
}
.float-contact::before{
  content:"";position:absolute;inset:-6px;border-radius:50%;
  border:1px solid rgba(172,145,97,.45);animation:pulse 2.8s var(--ease) infinite;
}
@keyframes pulse{0%{transform:scale(.9);opacity:.9}70%{transform:scale(1.2);opacity:0}100%{opacity:0}}
.float-contact svg{width:24px;height:24px;fill:currentColor}
.float-contact:hover{transform:translateY(-3px) scale(1.05)}

/* --------------------------------------------------- motion */
.reveal{
  opacity:0;transform:translateY(24px);
  transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);
  transition-delay:var(--d,0ms);
}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
  .reveal{opacity:1;transform:none}
}

/* --------------------------------------------------- responsive */
@media(max-width:1180px){
  .nav-cta{display:none}
  .hero-grid{display:block;min-height:0}
  .hero-copy{max-width:none;width:min(58%,720px)}
  .hero-showcase.showroom-visual{width:min(52vw,720px)}
  .why-grid,.story-grid,.partner-benefit-grid,.contact-layout,.product-detail,
  .catalog-layout,.page-hero-grid{grid-template-columns:1fr}
  .filter-panel,.product-media{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
  .lookbook figure:nth-child(n){grid-column:span 6}
}
@media(max-width:900px){
  .nav-links{display:none}
  .burger{display:flex}
  .hero-section{min-height:0;padding-bottom:0}
  .hero-section::after{inset:14px;bottom:auto;height:calc(100% - 28px)}
  .hero-copy{width:100%}
  .hero-showcase.showroom-visual{position:relative;top:auto;bottom:auto;right:auto;width:100%;margin-top:46px}
  .showroom-banner{position:relative;height:min(58vw,420px)}
  .showroom-banner img{-webkit-mask-image:none;mask-image:none}
  .showroom-badge{right:24px;bottom:24px}
  .hero-tags{grid-template-columns:repeat(2,1fr);gap:24px 0}
  .hero-tags div:nth-child(odd){padding-left:0;border-left:0}
  .section-head{flex-direction:column;align-items:flex-start}
  .lookbook figure:nth-child(n){grid-column:span 12}
  .product-grid.list-view .product-card a{grid-template-columns:1fr}
}
@media(max-width:820px){
  body{font-size:15.5px}
  .topbar{display:none}
  .navbar,.nav-inner{min-height:72px}
  .footer-grid{grid-template-columns:1fr}
  .cta-inner,.about-cta{flex-direction:column;align-items:flex-start}
  .catalog-toolbar select,.view-toggle{width:100%}
  .view-toggle button{flex:1}
}
@media(max-width:520px){
  :root{--gut:18px;--frame:10px}
  .lang-switch{display:none}
  .brand-logo img{height:36px}
  .btn{width:100%}
  .hero-actions{width:100%}
  .product-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}
  .mobile-menu>a:not(.btn){font-size:22px}
}

@media print{
  .site-header,.mobile-menu,.float-contact,.scroll-progress,.ticker{display:none}
  body{background:#fff;color:#1a1a1a}
}


/* ==========================================================================
   EFFEKT QATLAMI — 3D tilt, spotlight, kursor halqasi, parallaks reveal
   Struktura o'zgarmaydi; barchasi harakat va yorug'lik.
   ========================================================================== */

/* --- 3D tilt kartalar --- */
.tilt{transform-style:preserve-3d;will-change:transform}
.tilt.tilting{
  transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-5px) scale(1.012);
  transition:transform .16s linear;
}
.tilt:not(.tilting){transition:transform .7s var(--ease-out)}

/* kursorni kuzatuvchi tilla nur */
.card-glow{
  position:absolute;inset:0;z-index:4;pointer-events:none;opacity:0;
  transition:opacity .45s var(--ease);
  background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(220,200,154,.15),transparent 62%);
}
body.dark-mode .card-glow{background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(101,81,50,.12),transparent 62%)}
.tilt:hover .card-glow{opacity:1}

/* kartaning tilla qirrasi kursor tomonida yoritiladi */
.card-edge{
  position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;
  transition:opacity .5s var(--ease);
  background:
    linear-gradient(var(--eg,0deg),rgba(220,200,154,.5),rgba(172,145,97,0) 42%);
  -webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;
  border:1px solid transparent;padding:1px;
}
.tilt:hover .card-edge{opacity:1}

/* --- kursor halqasi --- */
.dg-cursor{
  position:fixed;top:0;left:0;z-index:150;pointer-events:none;
  width:32px;height:32px;margin:-16px 0 0 -16px;
  border:1px solid var(--tilla);border-radius:50%;opacity:0;
  transition:opacity .35s var(--ease),width .35s var(--ease),height .35s var(--ease),
             margin .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease);
}
.dg-cursor.on{opacity:.65}
.dg-cursor.active{
  width:58px;height:58px;margin:-29px 0 0 -29px;
  background:rgba(172,145,97,.09);border-color:var(--shampan);opacity:.9;
}
.dg-cursor.zoom::after{
  content:"+";position:absolute;inset:0;display:grid;place-items:center;
  font-family:var(--font-display);font-size:18px;color:var(--shampan);
}
@media(pointer:coarse){.dg-cursor{display:none}}

/* --- hero sarlavha: so'z-bo'yi ochilish --- */
.hw{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.06em}
.hw>i{
  display:inline-block;font-style:inherit;font-weight:inherit;
  transform:translateY(112%);opacity:0;
  transition:transform 1.05s var(--ease-out),opacity 1.05s var(--ease-out);
  transition-delay:var(--wd,0ms);
}
.hero-copy h1.words-in .hw>i{transform:none;opacity:1}

/* hero chuqurlik qatlamlari — sichqoncha parallaksi */
.hero-ambient{
  transform:translate3d(calc(var(--px,0) * -22px),calc(var(--py,0) * -22px),0);
  transition:transform .5s var(--ease-out);
}
.hero-ambient::before{
  content:"";position:absolute;inset:-78px;border:1px solid rgba(172,145,97,.08);border-radius:50%;
}
.hero-ambient::after{
  content:"";position:absolute;inset:38px;border:1px solid rgba(172,145,97,.22);border-radius:50%;
}
.hero-section .hero-copy{
  transform:translate3d(calc(var(--px,0) * 7px),calc(var(--py,0) * 5px),0);
  transition:transform .6s var(--ease-out);
}
.showroom-visual{
  transform:translate3d(calc(var(--px,0) * -14px),0,0);
  transition:transform .6s var(--ease-out);
}
.showroom-badge{
  transform:translate3d(calc(var(--px,0) * -20px),calc(var(--py,0) * -12px),0);
  transition:transform .6s var(--ease-out),border-color .5s var(--ease);
}

/* --- bo'lim sarlavhasi ostidagi tilla chiziq o'zini chizadi --- */
.section-head{position:relative}
.section-head::after{
  content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1px;
  background:var(--gold-grad);transform:scaleX(0);transform-origin:left;
  transition:transform 1.3s var(--ease-out) .12s;
}
.section-head.in::after{transform:scaleX(1)}

/* raqamli kvadratlar reveal'da aylanib chiqadi */
.section-label span,.category-card span,.benefits-grid b,
.benefits-grid article span,.steps article span,.offer-grid article span,
.values-grid article span,.partner-types article span,.partner-steps article span{
  transition:transform .8s var(--ease-out),border-color .5s var(--ease),color .5s var(--ease);
}
.reveal .section-label span,.reveal.category-card span,.reveal .benefits-grid b{transform:rotate(-8deg) scale(.85)}
.reveal.in .section-label span,.reveal.in.category-card span,.reveal.in .benefits-grid b{transform:none}
.category-card:hover span,.benefits-grid article:hover b,.benefits-grid article:hover span{
  border-color:var(--tilla);color:var(--shampan);
}
body.dark-mode .category-card:hover span,body.dark-mode .benefits-grid article:hover b{color:var(--bronza)}

/* --- lookbook: kadr ichida skroll parallaksi --- */
.lookbook figure{perspective:1000px}
.lookbook img{will-change:transform;transform:translate3d(0,var(--ly,0px),0) scale(1.12)}
.lookbook figure:hover img{transform:translate3d(0,var(--ly,0px),0) scale(1.17)}

/* --- magnit tugmalar --- */
.btn{will-change:transform}
.btn.mag{transform:translate3d(var(--bx,0px),var(--by,0px),0)}
.btn.mag:hover{transform:translate3d(var(--bx,0px),calc(var(--by,0px) - 2px),0)}

/* --- ticker'da yengil perspektiv --- */
.ticker{perspective:600px}
.ticker-track{transform:rotateX(4deg)}

/* --- mahsulot fotosi tilt'da chuqurlikka chiqadi --- */
.product-card.tilting .product-image img{transform:scale(1.06) translateZ(28px)}
.product-card .product-image img{transform-style:preserve-3d}

@media(prefers-reduced-motion:reduce){
  .tilt.tilting{transform:none}
  .hero-ambient,.hero-copy,.showroom-visual,.showroom-badge,.lookbook img,.ticker-track{transform:none}
  .hw>i{transform:none;opacity:1}
  .dg-cursor{display:none}
}


/* ==========================================================================
   SKROLL-BOG'LIQ 3D QATLAM
   Har bir element o'z viewport progressini --sp (-1..1) sifatida oladi.
   Barchasi compositor'da (transform/opacity), bitta rAF halqasidan boshqariladi.
   ========================================================================== */

/* umumiy 3D sahna — perspektiv ota-elementlarda, transform bolalarda */
.scene-3d{perspective:1400px;perspective-origin:50% 42%}

/* --- kartalar skrollda chuqurlikdan ko'tariladi --- */
.z-card{
  will-change:transform,opacity;
  transform:
    translate3d(0,calc(var(--sp,0) * 44px),calc(var(--spa,0) * -130px))
    rotateX(calc(var(--sp,0) * 7deg))
    scale(calc(1 - var(--spa,0) * .045));
  opacity:calc(1 - var(--spa,0) * .42);
}

/* --- mahsulot fotosi kartaning ichida alohida qatlam bo'lib suriladi --- */
.z-card .product-image img,.z-card .small-product-img img{
  will-change:transform;
  transform:translate3d(0,calc(var(--sp,0) * -13px),0) scale(calc(1 + var(--spa,0) * .03));
}
/* tilt paytida skroll qatlami o'chadi — ikki effekt urishmasin */
.tilt.tilting.z-card{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-5px) scale(1.012)}
.product-card.tilting .product-image img{transform:scale(1.06) translateZ(28px)}

/* --- bo'lim sarlavhasi: chuqurlikdan chiqadi --- */
.z-head{
  will-change:transform,opacity;
  transform:translate3d(0,calc(var(--sp,0) * 26px),calc(var(--spa,0) * -90px)) rotateX(calc(var(--sp,0) * 4deg));
  opacity:calc(1 - var(--spa,0) * .5);
}

/* --- lookbook: kadr 3D burчакda ochiladi --- */
.lookbook{perspective:1500px;perspective-origin:50% 50%}
.lookbook figure{
  will-change:transform;
  transform-style:preserve-3d;
  transform:
    translate3d(0,calc(var(--sp,0) * 30px),calc(var(--spa,0) * -110px))
    rotateX(calc(var(--sp,0) * 6deg))
    rotateY(calc(var(--sp,0) * var(--dir,1) * 4deg));
}
.lookbook figcaption{transform:translate3d(0,calc(var(--sp,0) * -16px),40px)}
.lookbook figure:hover figcaption{transform:translate3d(0,0,40px)}

/* --- hero: skrollda orqaga chekinadi (depth exit) --- */
.hero-section{perspective:1600px}
.hero-copy{
  will-change:transform,opacity;
  transform:
    translate3d(calc(var(--px,0) * 7px),calc(var(--hp,0) * 60px),calc(var(--hp,0) * -180px))
    rotateX(calc(var(--hp,0) * -5deg));
  opacity:calc(1 - var(--hp,0) * .75);
}
.hero-tags{transform:translate3d(0,calc(var(--hp,0) * 34px),0)}
.showroom-visual{
  transform:translate3d(calc(var(--px,0) * -14px),calc(var(--hp,0) * -40px),calc(var(--hp,0) * -80px));
}
.hero-section::after{transform:translateZ(calc(var(--hp,0) * -60px));opacity:calc(1 - var(--hp,0) * .8)}

/* --- kategoriya kartalari: navbatma-navbat 3D ochilish --- */
.category-grid{perspective:1500px;perspective-origin:50% 40%}
.category-card.z-card{
  transform-origin:50% 100%;
  transform:
    translate3d(0,calc(var(--sp,0) * 38px),calc(var(--spa,0) * -140px))
    rotateX(calc(var(--sp,0) * 9deg));
}
.category-card.z-card::before{transform:translateZ(26px)}
.category-card.z-card:hover::before{transform:translateZ(26px) scale(1)}
.category-card.z-card h3{transform:translateZ(calc(18px - var(--spa,0) * 18px))}
.category-card.z-card span{transform:translateZ(calc(30px - var(--spa,0) * 30px))}
.category-card.z-card:hover span{transform:translateZ(30px) rotate(0deg)}

/* --- ticker: skroll tezligiga bog'langan burilish --- */
.ticker-track{
  transform:rotateX(calc(4deg + var(--vel,0) * 3deg)) translate3d(calc(var(--vel,0) * -22px),0,0);
  transition:transform .35s var(--ease-out);
}

/* --- grafit bloklardagi raqamli kartalar --- */
.benefits-grid{perspective:1400px}
.benefits-grid article.z-card{
  transform:translate3d(0,calc(var(--sp,0) * 30px),calc(var(--spa,0) * -100px)) rotateX(calc(var(--sp,0) * 6deg));
}
.benefits-grid article.z-card b,.benefits-grid article.z-card span{transform:translateZ(calc(24px - var(--spa,0) * 24px))}

/* --- showroom qatori --- */
.showroom-list{perspective:1400px}
.showroom-list article.z-card h3{transform:translateZ(calc(16px - var(--spa,0) * 16px))}

/* mobil va reduced-motion: 3D butunlay o'chadi */
@media(max-width:900px){
  .z-card,.z-head,.lookbook figure,.hero-copy,.showroom-visual,.hero-tags{
    transform:none!important;opacity:1!important;
  }
  .z-card .product-image img,.category-card.z-card h3,.category-card.z-card span,
  .benefits-grid article.z-card b,.showroom-list article.z-card h3,.lookbook figcaption{transform:none!important}
}
@media(prefers-reduced-motion:reduce){
  .z-card,.z-head,.lookbook figure,.hero-copy,.showroom-visual,.hero-tags,
  .ticker-track,.hero-section::after{transform:none!important;opacity:1!important}
}

/* Single active flagship showroom. */
.showroom-list > article:only-child { grid-column: 1 / -1; }
[hidden] { display: none !important; }

/* Calm catalog: stable geometry, short fade and restrained hover. */
.calm-catalog .product-grid { perspective: none; }
.calm-catalog .product-card,
.calm-catalog .product-card.reveal,
.calm-catalog .product-card.reveal.in {
  opacity: 1;
  transform: none;
  transform-style: flat;
  will-change: auto;
  transition: transform 280ms cubic-bezier(.2,.65,.3,1),
              border-color 280ms ease, box-shadow 280ms ease;
  transition-delay: 0ms;
  animation: catalog-soft-in 320ms ease-out both;
  animation-delay: var(--d, 0ms);
}
.calm-catalog .product-card .product-image img {
  transform: none;
  transform-style: flat;
  will-change: auto;
  transition: transform 420ms cubic-bezier(.2,.65,.3,1);
}
.calm-catalog .product-card:focus-within {
  border-color: var(--tilla);
}
@keyframes catalog-soft-in {
  from { opacity: .65; }
  to { opacity: 1; }
}
@media (hover: hover) and (pointer: fine) {
  .calm-catalog .product-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(0,0,0,.09);
  }
  .calm-catalog .product-card:hover .product-image img {
    transform: scale(1.015);
  }
}
@media (prefers-reduced-motion: reduce) {
  .calm-catalog .product-card,
  .calm-catalog .product-card.reveal,
  .calm-catalog .product-card.reveal.in,
  .calm-catalog .product-card .product-image img {
    animation: none;
    transition: none;
    transform: none;
  }
  .calm-catalog .product-card:hover,
  .calm-catalog .product-card:hover .product-image img { transform: none; }
}

/* Compact homepage hero: readable text without scroll fading. */
.hero-section.compact-hero {
  min-height: 0;
  padding: clamp(40px, 4vw, 64px) 0;
  perspective: none;
}
.compact-hero .hero-grid {
  width: calc(100% - var(--gut) * 2);
  max-width: 1320px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  gap: clamp(28px, 4vw, 56px);
  min-height: 0;
}
.hero-section.compact-hero .hero-copy,
.compact-hero .hero-tags,
.compact-hero .showroom-visual,
.compact-hero .showroom-badge {
  transform: none;
  opacity: 1;
  will-change: auto;
}
.compact-hero .hero-copy { width: 100%; max-width: none; }
.compact-hero .hero-copy h1 {
  font-size: clamp(34px, 4.1vw, 62px);
  line-height: 1.12;
  margin-bottom: 22px;
  color: #f2ede4;
}
.compact-hero .hero-copy h1 em { color: #d5bb80; }
.compact-hero .hero-copy p { color: #d9d3c8; margin-bottom: 26px; }
.compact-hero .hero-actions { margin-bottom: 30px; }
.compact-hero .hero-tags { padding-top: 22px; }
.compact-hero .hero-tags strong {
  font-size: clamp(24px, 2.4vw, 34px);
  white-space: nowrap;
  color: #d5bb80;
  background: none;
}
.compact-hero .hero-tags span { color: #c9c1b2; letter-spacing: .12em; }
.compact-hero .hero-showcase.showroom-visual {
  position: relative;
  inset: auto;
  width: 100%;
  height: clamp(340px, 34vw, 460px);
  margin: 0;
}
.compact-hero .showroom-banner { position: absolute; inset: 0; height: 100%; }
.compact-hero .showroom-banner img,
.compact-hero .showroom-banner:hover img {
  transform: none !important;
  mask-image: none;
  -webkit-mask-image: none;
  filter: saturate(.95) contrast(1.02) brightness(.95);
}
.compact-hero .showroom-banner::before {
  background: linear-gradient(180deg, transparent 55%, rgba(20,19,18,.4));
}
.compact-hero .showroom-badge { right: 20px; bottom: 20px; padding: 16px 20px; }
@media (max-width: 800px) {
  .compact-hero .hero-grid { grid-template-columns: minmax(0, 1fr); }
  .compact-hero .hero-showcase.showroom-visual { height: clamp(240px, 60vw, 380px); }
  .compact-hero .hero-tags { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 0; }
  .compact-hero .hero-tags div:nth-child(odd) { padding-left: 0; border-left: 0; }
}

/* Blend into the actual hero background, keeping the facade clear. */
.compact-hero .showroom-banner {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.08) 3%, rgba(0,0,0,.38) 9%, rgba(0,0,0,.78) 17%, #000 26%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.08) 3%, rgba(0,0,0,.38) 9%, rgba(0,0,0,.78) 17%, #000 26%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
@media (min-width: 801px) {
  .compact-hero .hero-showcase.showroom-visual {
    width: calc(100% + clamp(28px, 4vw, 56px));
    margin-left: calc(-1 * clamp(28px, 4vw, 56px));
  }
}

/* Optional catalog image: crossfade only after the second image has loaded. */
.catalog-layout .product-image { position: relative; }
.catalog-layout .product-image img.catalog-hover-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
  pointer-events: none;
  background: inherit;
}
.catalog-layout .product-card .product-image img {
  transition: opacity 280ms ease, transform 420ms cubic-bezier(.2,.65,.3,1);
}
@media (hover: hover) and (pointer: fine) {
  .catalog-layout .product-card:hover .hover-image-ready img[data-product-image] { opacity: 0; }
  .catalog-layout .product-card:hover .hover-image-ready img.catalog-hover-image { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .catalog-layout .product-card .product-image img { transition: none; }
}

/* Quiet luxury refinements: restrained shine, compact gallery and details. */
.btn-primary::after {
  background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,.16) 50%, transparent 65%);
  transition: transform 650ms cubic-bezier(.22,.61,.36,1);
}
.btn-primary:focus-visible::after { transform: translateX(120%); }
a:focus-visible, button:focus-visible, summary:focus-visible, [role="button"]:focus-visible {
  outline: 2px solid var(--tilla); outline-offset: 4px;
}
#productDetailRoot .detail-hero { padding: 36px 0 48px; }
#productDetailRoot .product-detail {
  max-width: 1320px; margin-inline: auto;
  grid-template-columns: minmax(0,1.08fr) minmax(0,1fr);
  gap: clamp(28px,3.4vw,56px);
}
/* Mahsulot sahifasida chapdagi rasm kattaroq kvadrat bo‘lib turadi */
#productDetailRoot .product-media { width: 100%; max-width: 680px; }
#productDetailRoot .product-gallery-main {
  height: auto; aspect-ratio: 1 / 1;
  padding: clamp(10px,1.4vw,20px);
}
#productDetailRoot .product-gallery-main img { transform: none; }
#productDetailRoot .product-thumb { width: 80px; height: 80px; flex: 0 0 80px; }
#productDetailRoot .gallery-arrow { opacity: 1; width: 38px; height: 38px; }
.luxury-details { margin: 24px 0; border-block: 1px solid var(--line); }
.luxury-details summary {
  padding: 18px 0; cursor: pointer; list-style: none;
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
  font-size: 14px; color: var(--ink);
}
.luxury-details summary::-webkit-details-marker { display: none; }
.luxury-details summary::after { content: '+'; color: var(--tilla); font-size: 22px; }
.luxury-details[open] summary::after { content: '−'; }
.luxury-details dl { margin: 0 0 18px; animation: details-soft-in 220ms ease-out; }
.luxury-details dl > div { display: grid; grid-template-columns: 1fr 1.5fr; gap: 18px; padding: 9px 0; }
.luxury-details dt { color: var(--muted); }
.luxury-details dd { margin: 0; color: var(--ink); overflow-wrap: anywhere; }
@keyframes details-soft-in { from { opacity: .5; } to { opacity: 1; } }
dialog.dg-lightbox {
  inset: 0; margin: auto; width: min(760px, calc(100vw - 32px));
  height: auto; max-height: 86dvh; padding: 52px 20px 20px;
  border: 1px solid var(--line); background: var(--plate); overflow: auto;
}
dialog.dg-lightbox:not([open]) { display: none; }
dialog.dg-lightbox::backdrop { background: rgba(12,11,10,.8); backdrop-filter: blur(6px); }
dialog.dg-lightbox img { width: 100%; height: min(62dvh,580px); max-height: 62dvh; padding: 8px; }
dialog.dg-lightbox button { top: 8px; right: 12px; width: 36px; height: 36px; color: var(--ink); }
@media(max-width: 800px) {
  #productDetailRoot .product-detail { grid-template-columns: minmax(0,1fr); }
  #productDetailRoot .product-media { position: static; margin-inline: auto; max-width: 560px; }
  #productDetailRoot .product-gallery-main { height: auto; aspect-ratio: 1 / 1; }
}
@media(prefers-reduced-motion: reduce) {
  .btn-primary::after { transition: none; }
  .luxury-details dl { animation: none; }
}

/* Touch-first layout and input accessibility. */
.mobile-menu { visibility: hidden; pointer-events: none; }
.mobile-menu.open { visibility: visible; pointer-events: auto; }
.mobile-close, .mobile-menu-tools { flex-shrink: 0; }
.scroll-progress, .float-contact::before { pointer-events: none; }
@media (max-width: 900px) {
  :root { --gut: 18px; }
  .nav-inner { gap: 12px; }
  .brand-logo { min-width: 0; flex: 1; }
  .brand-logo img { width: auto; max-width: 100%; height: 34px; object-fit: contain; }
  .nav-actions { flex: 0 0 auto; gap: 8px; }
  .nav-actions .lang-switch { display: none; }
  .burger, .theme-toggle, .mobile-theme-toggle { min-width: 44px; min-height: 44px; }
  .mobile-menu {
    width: min(400px,100%); height: 100dvh;
    padding: max(16px,env(safe-area-inset-top)) 22px max(24px,env(safe-area-inset-bottom));
    overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
  }
  .mobile-menu > a:not(.btn) { padding: 13px 0; font-size: 22px; }
  .mobile-logo { width: 160px; margin: 4px 0 16px; }
  .mobile-lang-switch { display: flex; gap: 8px; }
  .mobile-lang-switch button { min-width: 46px; min-height: 44px; border: 1px solid var(--line); color: var(--ink); }
  .mobile-lang-switch button.active { background: var(--gold-grad); color: var(--tun); }
  .mobile-menu-tools { margin-block: 18px; }
  .catalog-layout, .contact-layout, .story-grid, .why-grid,
  .partner-benefit-grid, .page-hero-grid { grid-template-columns: minmax(0,1fr); }
  .catalog-layout > *, .contact-layout > *, .product-detail > *, .catalog-toolbar > * { min-width: 0; }
  .catalog-toolbar { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; }
  .catalog-search { min-width: 0; width: 100%; }
  .catalog-toolbar select { max-width: 100%; }
  .filter-panel { position: static; padding: 18px; }
  .filters { display: flex; flex-wrap: wrap; gap: 8px; }
  .filters button { width: auto; flex: 0 1 auto; min-height: 44px; gap: 10px; padding: 10px 12px; font-size: 13px; }
  .filter-note { display: none; }
  .catalog-result-head { margin-bottom: 18px; }
  .product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .product-body { padding: 16px; }
  .product-body h3 { font-size: 18px; overflow-wrap: anywhere; }
  .product-footer { gap: 8px; flex-wrap: wrap; }
  .product-more { min-width: 44px; min-height: 44px; }
  .field-grid { grid-template-columns: minmax(0,1fr); }
  input, select, textarea, .catalog-search input { font-size: 16px; }
  .request-panel { padding: 20px; min-width: 0; }
  .contact-cards b, .contact-links a { overflow-wrap: anywhere; }
  .detail-actions { display: flex; flex-direction: column; gap: 10px; }
  .detail-actions .btn { width: 100%; white-space: normal; }
  #productDetailRoot .product-detail { grid-template-columns: minmax(0,1fr); }
  #productDetailRoot .product-media { position: static; margin-inline: auto; }
  .product-thumbs { touch-action: pan-x; }
  .gallery-arrow { opacity: 1; min-width: 44px; min-height: 44px; }
  .gallery-prev { left: 6px; } .gallery-next { right: 6px; }
  .float-contact { width: 46px; height: 46px; right: 14px; bottom: calc(14px + env(safe-area-inset-bottom)); }
  .site-footer { padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
  .section { padding-block: 40px; }
  .section-head h2 { font-size: clamp(28px,7vw,40px); }
}
@media (max-width: 560px) {
  .product-grid { grid-template-columns: minmax(0,1fr); }
  .product-grid .product-card { width: 100%; }
  .hero-actions .btn, .cta-inner .btn { white-space: normal; min-height: 48px; }
  .detail-main-meta { grid-template-columns: minmax(0,1fr); }
  .related-grid, .benefits-grid, .values-grid, .partner-types, .offer-grid { grid-template-columns: minmax(0,1fr); }
}
@media (hover: none), (pointer: coarse) {
  a, button, summary { touch-action: manipulation; }
  .dg-cursor, .card-glow { display: none; }
  .reveal, .z-card, .z-head { opacity: 1; transform: none; }
  .product-card:hover, .product-card:hover .product-image img,
  .small-product:hover, .category-card:hover, .btn:hover { transform: none; }
  .catalog-layout .product-card .product-image img.catalog-hover-image { display: none; }
  .catalog-layout .product-card:hover .hover-image-ready img[data-product-image] { opacity: 1; }
}

/* Consistent catalog and favorites. */
.product-card { position: relative; }
.product-card > a { min-width: 0; }
.product-card .product-body { flex: 1; display: flex; flex-direction: column; }
.product-card .product-body h3 { min-height: 3em; line-height: 1.5; }
.product-card .product-footer { margin-top: auto; padding-top: 18px; }
.product-card .product-image { background: #f1eee7; padding: 18px; }
.catalog-layout .product-card .product-image img.catalog-hover-image {
  inset: 18px; width: calc(100% - 36px); height: calc(100% - 36px); object-fit: contain;
}
.favorite-button {
  position: absolute; z-index: 8; top: 24px; right: 24px;
  width: 44px; height: 44px; display: grid; place-items: center;
  background: #f6f2e9; color: #39352e; border: 1px solid #c8bfae;
  font-size: 25px; border-radius: 50%;
}
.favorite-button[aria-pressed="true"] { background: var(--gold-grad); color: #141312; }
#extraFilters { display: grid; gap: 14px; margin-top: 20px; }
#extraFilters label { display: grid; gap: 6px; font-size: 14px; color: var(--ink); min-width: 0; }
#extraFilters select { width: 100%; min-width: 0; max-width: 100%; min-height: 44px; font-size: 16px; padding: 10px; background: var(--bg); color: var(--ink); border: 1px solid var(--line); }
.favorite-filter { min-height: 48px; padding: 12px; border: 1px solid var(--line); color: var(--ink); }
.favorite-filter[aria-pressed="true"] { background: var(--gold-grad); color: #141312; }
.product-price small, .catalog-result-head { color: var(--ink); }
.calm-catalog .product-card.reveal { animation: none; }
@media(max-width:900px) {
  #extraFilters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .favorite-filter { grid-column: 1 / -1; }
  .detail-actions .btn-primary { font-size: 12px; letter-spacing: .08em; }
}
@media(max-width:380px) { #extraFilters { grid-template-columns: minmax(0,1fr); } }

/* Existing theme switch uses dark-mode for the light palette. */
body.dark-mode .hero-section.compact-hero { background: var(--bg); color: var(--ink); }
body.dark-mode .compact-hero::before {
  background: radial-gradient(ellipse at 80% 15%, rgba(172,145,97,.12), transparent 65%), var(--bg);
}
body.dark-mode .compact-hero .hero-copy h1 { color: var(--ink); }
body.dark-mode .compact-hero .hero-copy h1 em,
body.dark-mode .compact-hero .eyebrow,
body.dark-mode .compact-hero .hero-tags strong { color: #796039; }
body.dark-mode .compact-hero .hero-copy p,
body.dark-mode .compact-hero .hero-tags span { color: #514b41; }
body.dark-mode .compact-hero .btn-outline-light { color: #655132; border-color: #aa9674; }
body.dark-mode .compact-hero .showroom-badge {
  background: rgba(242,237,228,.95); color: #1a1917; border-color: rgba(101,81,50,.3);
}
body.dark-mode .compact-hero .showroom-badge span { color: #796039; }
body.dark-mode .compact-hero .showroom-badge b { color: #1a1917; }
body.dark-mode .compact-hero + .ticker { background: var(--bg-2); color: #655132; }
body.dark-mode .compact-hero + .ticker span { color: #655132; }

.sale-badge { position:absolute; top:24px; left:24px; z-index:6; padding:8px 12px; background:#655132; color:#fff; font-weight:600; letter-spacing:.04em; pointer-events:none; }
.product-price del, .detail-sale-price del { display:block; color:var(--muted); font-size:14px; }
.sale-current { display:block; color:var(--ink); font-size:20px; }
.product-price strong { display:block; }
.nav-links { gap:clamp(12px,1.5vw,26px); }
@media(min-width:901px) and (max-width:1100px) { .nav-links a { font-size:11px; letter-spacing:.04em; } .nav-actions { gap:6px; } }

.sale-saving { display:block; margin-top:8px; color:var(--ink); font-size:13px; font-weight:500; line-height:1.5; }

.detail-icon { width:20px; height:20px; flex:0 0 20px; color:var(--tilla); }
.luxury-details dt { display:flex; align-items:center; gap:8px; }
/* Rang va material ikonkalari — to'rtburchak (kvadrat) plitka, dumaloq emas */
.color-swatches { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:8px; }
.color-swatch { display:inline-block; width:22px; height:22px; border-radius:5px; background:var(--swatch,#888); border:1px solid var(--line); box-shadow:inset 0 0 0 1px rgba(255,255,255,.28); }
.color-swatch-empty { background:repeating-linear-gradient(45deg,var(--surface-2) 0 4px,transparent 4px 8px); }
.color-swatch-sm { width:14px; height:14px; border-radius:4px; }

.decor-chips { display:flex; flex-wrap:wrap; gap:8px; }
.decor-chip { display:inline-flex; align-items:center; gap:8px; padding:5px 10px 5px 5px; border:1px solid var(--line); border-radius:6px; background:var(--surface-2); }
.decor-chip b { font-weight:500; font-size:.92rem; color:var(--ink); letter-spacing:.01em; }
.decor-chip .color-swatch { width:20px; height:20px; border-radius:4px; }
.material-tile { display:inline-grid; place-items:center; width:26px; height:26px; border-radius:5px; border:1px solid var(--line); background:linear-gradient(160deg,rgba(172,145,97,.18),rgba(172,145,97,.04)); color:var(--tilla); }
.material-icon { width:17px; height:17px; }

.decor-chip-icononly { padding:5px; }
.card-swatches { display:flex; flex-wrap:wrap; gap:5px; margin:6px 0 2px; }
@media (max-width:640px){ .decor-chip b { font-size:.86rem; } }

/* ==========================================================================
   MOBIL ADAPTATSIYA v2 — kompyuter effektlari saqlanadi, telefon uchun optimal
   ========================================================================== */

/* --- umumiy: gorizontal siljish va uzun so'zlar --- */
@media (max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}
  h1,h2,h3,h4,p,li,dd,dt,b,strong{overflow-wrap:break-word}
  :root{--sec:clamp(46px,8.5vw,70px);--frame:10px}
  .section{padding-block:var(--sec)}
  .section-head{padding-bottom:16px;margin-bottom:26px;gap:12px}
  .section-head h2{font-size:clamp(25px,6.6vw,36px);max-width:none}
  .section-head p{font-size:13.5px;max-width:none}
  .eyebrow,.section-label{margin-bottom:16px;font-size:9.5px;letter-spacing:.16em;gap:10px}
  .section-label span{flex:0 0 32px;width:32px;height:32px;font-size:11px}
  .section-label i{width:24px}
  .eyebrow span{width:32px}
  .btn{min-height:50px;padding:14px 22px;font-size:11px;letter-spacing:.14em}
  .text-link{font-size:10.5px;letter-spacing:.14em}
  .framed::after{inset:10px}
}
@media (hover:none){
  *{-webkit-tap-highlight-color:rgba(172,145,97,.16)}
}

/* --- header va mobil menyu --- */
@media (max-width:900px){
  .navbar,.nav-inner{min-height:66px}
  .site-header.scrolled .navbar,.site-header.scrolled .nav-inner{min-height:58px}
  .brand-logo img,.site-header.scrolled .brand-logo img{height:32px}
  .nav-actions{gap:6px}
  .theme-toggle{width:42px;height:42px}
  .burger{width:44px;height:44px}
  .mobile-menu>a:not(.btn){padding:12px 0;font-size:20px}
  .mobile-logo{width:150px;margin:2px 0 12px}
  .mobile-menu-tools{margin:14px 0 12px}
  .mobile-contact{display:grid;gap:2px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line-soft)}
  .mobile-contact a{
    display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 0;
    font-family:var(--font-display);font-size:13px;letter-spacing:.08em;color:var(--ink);
  }
  .mobile-contact a i{
    display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;
    border:1px solid var(--line);border-radius:var(--r);
    color:var(--tilla);font-style:normal;font-size:14px;
  }
}
/* iOS uchun menyu ochilganda orqa fon siljimasligi */
body.menu-open{position:fixed;inset-inline:0;width:100%;overflow:hidden}

/* --- hero --- */
@media (max-width:900px){
  .hero-section{padding:52px 0 42px;min-height:0}
  .hero-section::after{inset:12px;height:calc(100% - 24px)}
  .hero-ambient{display:none}
  .hero-copy h1{font-size:clamp(33px,8.6vw,54px);margin-bottom:16px}
  .hero-copy p,.hero-desc{font-size:15px;margin-bottom:24px;max-width:none}
  .hero-actions{gap:10px;margin-bottom:30px;width:100%}
  .hero-actions .btn{flex:1 1 100%}
  .hero-tags{padding-top:20px;gap:18px 0}
  .hero-tags strong{font-size:clamp(25px,7.6vw,36px)}
  .hero-tags span{font-size:9px;letter-spacing:.16em;margin-top:6px}
  .hero-showcase.showroom-visual{margin-top:28px}
  .showroom-banner{height:min(64vw,360px)}
  .showroom-badge{left:14px;right:14px;bottom:14px;max-width:none;padding:14px 16px}
  .showroom-badge b{font-size:20px}
  .showroom-badge span{font-size:9px;margin-bottom:6px}
}

/* --- ticker --- */
@media (max-width:900px){
  .ticker span{font-size:11.5px;letter-spacing:.18em;padding:13px 18px;gap:18px}
  .ticker-track{animation-duration:28s}
}

/* --- kategoriya kartalari --- */
@media (max-width:900px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .category-card{min-height:164px;padding:16px}
  .category-card::before{inset:8px}
  .category-card span{width:30px;height:30px;font-size:11px}
  .category-card h3{font-size:16.5px;line-height:1.2;margin:auto 0 6px}
  .category-card p{font-size:12.5px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}
@media (max-width:380px){
  .category-grid{grid-template-columns:minmax(0,1fr)}
  .category-card{min-height:0}
}

/* --- katalog asboblari va filtrlar (chipsimon gorizontal lenta) --- */
@media (max-width:900px){
  .catalog-toolbar{gap:10px;padding-bottom:14px;margin-bottom:18px}
  .catalog-search input{padding:13px 14px;font-size:16px}
  .catalog-toolbar select,.view-toggle button{min-height:48px;padding:13px 14px}
  .filter-panel{border:0;background:transparent;padding:0;margin-bottom:4px}
  .filter-title{padding-bottom:10px;margin-bottom:12px;font-size:9.5px}
  .filters{
    display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;
    padding-bottom:8px;scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;
  }
  .filters::-webkit-scrollbar{display:none}
  .filters button{
    flex:0 0 auto;width:auto;white-space:nowrap;scroll-snap-align:start;
    min-height:42px;padding:9px 14px;gap:8px;font-size:13px;
    border:1px solid var(--line);border-left-width:1px;border-radius:999px;
    background:var(--surface);color:var(--muted);
  }
  .filters button.active{background:var(--gold-grad);color:var(--tun);border-color:transparent}
  .filters button.active b{color:var(--tun);border-color:rgba(20,19,18,.25)}
  .catalog-result-head{margin-bottom:14px;font-size:10.5px;flex-wrap:nowrap;align-items:center;gap:10px}
  .catalog-result-head p{margin:0;min-width:0}
  .view-toggle{width:auto;flex:0 0 auto}
  .view-toggle button{flex:0 0 auto;min-height:42px;padding:10px 14px}
  #extraFilters{gap:10px;margin-top:14px}
}

/* --- mahsulot kartalari: telefonda 2 ustun --- */
@media (max-width:900px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .product-grid.list-view{grid-template-columns:minmax(0,1fr)}
  .product-card .product-image{padding:10px}
  .product-image::before{inset:6px}
  .catalog-layout .product-card .product-image img.catalog-hover-image{inset:10px;width:calc(100% - 20px);height:calc(100% - 20px)}
  .product-body,.product-body-compact{padding:12px;gap:7px}
  .product-body h3{font-size:14.5px;line-height:1.35;min-height:2.7em}
  .product-card .product-body h3{min-height:2.7em;line-height:1.35}
  .product-footer{padding-top:10px;gap:6px}
  .product-price small{font-size:8.5px;letter-spacing:.14em;margin-bottom:3px}
  .product-price b,.product-price strong{font-size:13.5px}
  .product-price del{font-size:11.5px}
  .sale-current{font-size:14px}
  .sale-saving{font-size:10.5px;margin-top:4px;line-height:1.4}
  .product-more{width:34px;height:34px;min-width:34px;min-height:34px;font-size:12px}
  .favorite-button{top:8px;right:8px;width:36px;height:36px;font-size:19px}
  .sale-badge{top:8px;left:8px;padding:5px 8px;font-size:11px}
  .card-swatches{gap:4px;margin:2px 0}
  .color-swatch-sm{width:12px;height:12px}
  .empty-products{padding:36px 18px}
}
@media (max-width:380px){
  .product-grid{grid-template-columns:minmax(0,1fr)}
  .product-body h3{min-height:0}
}

/* --- mahsulot sahifasi --- */
@media (max-width:900px){
  .detail-hero,#productDetailRoot .detail-hero{padding:20px 0 32px}
  .breadcrumb,.detail-kicker{margin-bottom:12px;font-size:9.5px;letter-spacing:.16em}
  .detail-title{font-size:clamp(25px,7.2vw,38px);margin-bottom:14px}
  .detail-desc{font-size:14.5px;margin-bottom:20px}
  #productDetailRoot .product-media{max-width:100%}
  .product-thumbs{gap:8px;margin-top:10px}
  #productDetailRoot .product-thumb,.product-thumb{flex:0 0 62px;width:62px;height:62px}
  .gallery-counter{right:10px;bottom:10px;padding:6px 10px;font-size:9.5px}
  .detail-main-meta,.detail-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}
  .detail-main-meta>div:last-child,.detail-info-grid>div:last-child{grid-column:1/-1}
  .detail-main-meta>div,.detail-info-grid>div{padding:14px}
  .detail-main-meta small,.detail-info-grid small{font-size:8.5px;margin-bottom:5px}
  .detail-main-meta b,.detail-info-grid b{font-size:17px}
  .luxury-details{margin:18px 0}
  .luxury-details dl>div{grid-template-columns:minmax(0,1fr);gap:6px;padding:11px 0}
  .luxury-details dt{font-size:12.5px}
  .detail-actions{margin-bottom:24px}
  .related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .small-product h3{padding:12px 12px 0;font-size:14px}
  .small-product b{padding:6px 12px 12px;font-size:9.5px;letter-spacing:.1em}
  .small-product-img img{padding:10px}
  .product-extra{padding-top:40px}
}
@media (max-width:380px){
  .detail-main-meta,.detail-info-grid{grid-template-columns:minmax(0,1fr)}
  .related-grid{grid-template-columns:minmax(0,1fr)}
}

/* --- kontent bloklari --- */
@media (max-width:900px){
  .benefits-grid,.steps,.offer-grid,.values-grid,.partner-types,.partner-steps,
  .showroom-list,.contact-cards{grid-template-columns:minmax(0,1fr)}
  .benefits-grid article,.steps article,.offer-grid article,.values-grid article,
  .partner-types article,.partner-steps article,.showroom-list article,.info-block{padding:20px}
  .benefits-grid h3,.steps h3,.offer-grid h3,.values-grid h3,
  .partner-types h3,.partner-steps h3,.info-block h3{font-size:17px}
  .benefits-grid b,.benefits-grid article span,.steps article span,.offer-grid article span,
  .values-grid article span,.partner-types article span,.partner-steps article span{width:32px;height:32px;margin-bottom:16px}
  .why-intro h2,.story-grid h2,.contact-copy h2,.cta-inner h2,.about-cta h2{font-size:clamp(24px,6.4vw,34px);max-width:none;margin-bottom:16px}
  .why-intro p{margin-bottom:22px}
  .about-cta{padding:22px}
  .about-cta::after{inset:8px}
  .hero-metric-card{padding:20px}
  .hero-metric-card strong{font-size:clamp(36px,10vw,52px)}
  .page-hero,.about-page-hero{padding:40px 0 32px}
  .page-hero h1,.about-page-hero h1{font-size:clamp(28px,7.6vw,44px);margin-bottom:14px}
  .page-hero p{font-size:14.5px;max-width:none}
  .page-hero::after{display:none}
  .not-found{padding:60px 0}
  .check-list li{font-size:14px}
}

/* --- lookbook: teginishda sarlavha doim ko'rinadi --- */
@media (max-width:900px){
  .lookbook figure:nth-child(n){aspect-ratio:4/3;min-height:0}
  .lookbook figcaption{opacity:1;transform:none;padding:14px;font-size:16px}
  .lookbook figure::after{inset:10px}
}

/* --- forma va kontakt --- */
@media (max-width:900px){
  .request-panel{padding:18px}
  .request-panel-head{padding-bottom:16px;margin-bottom:18px}
  .request-panel-head h2{font-size:21px}
  .request-panel input,.request-panel select,.request-panel textarea{padding:13px;font-size:16px}
  .request-panel textarea{min-height:110px}
  .request-panel label{margin-bottom:7px;font-size:9.5px}
  .field-grid{gap:12px;margin-bottom:12px}
  .contact-cards{margin-top:22px}
  .contact-cards a,.contact-cards>div{padding:16px}
  .contact-cards b{font-size:17px}
}

/* --- footer --- */
@media (max-width:900px){
  .site-footer{padding-top:44px}
  .site-footer::before{display:none}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;padding-bottom:24px}
  .footer-brand{grid-column:1/-1}
  .footer-brand img{width:min(170px,58%);margin-bottom:16px}
  .footer-brand p{font-size:13px;line-height:1.7;max-width:none}
  .footer-col h4{margin-bottom:14px}
  .footer-col a,.footer-col p{margin-bottom:9px;font-size:13.5px}
  .contact-links a{padding:7px 0;font-size:13px}
  .contact-links svg{width:30px;height:30px;flex:0 0 30px;padding:7px}
  .footer-bottom{font-size:9.5px;gap:8px;padding-top:20px}
}
@media (max-width:420px){
  .footer-grid{grid-template-columns:minmax(0,1fr)}
}

/* --- gorizontal (landscape) telefonlar --- */
@media (max-height:520px) and (orientation:landscape){
  .mobile-menu>a:not(.btn){padding:8px 0;font-size:17px}
  .mobile-logo{width:118px;margin-bottom:8px}
  .mobile-menu-tools{margin:10px 0 8px}
  .hero-section{padding:38px 0 32px}
}

/* --- ranglar / materiallar chiplari telefonda --- */
@media (max-width:560px){
  .decor-chips{gap:6px}
  .decor-chip{padding:4px 9px 4px 4px;gap:7px}
  .material-tile{width:24px;height:24px}
  .material-icon{width:15px;height:15px}
  .decor-chip .color-swatch{width:18px;height:18px}
}

/* yopishqoq header havolalarni toʻsmasligi uchun */
:target{scroll-margin-top:124px}
@media (max-width:900px){:target{scroll-margin-top:84px}}
