/* Banuk storefront v3 — editorial luxury, mobile first */
:root{
  --bn-canvas:#f7f3ee;
  --bn-paper:#fffdf9;
  --bn-ink:#161317;
  --bn-plum:#3e2346;
  --bn-plum-dark:#29162f;
  --bn-forest:#1f4d43;
  --bn-pearl:#efe7dd;
  --bn-gold:#b79a68;
  --bn-muted:#756d72;
  --bn-line:rgba(62,35,70,.14);
  --bn-gutter:clamp(20px,4vw,64px);
  --bn-radius:clamp(18px,2vw,30px);
  --bn-ease:cubic-bezier(.22,.61,.36,1);
}

html{background:var(--bn-canvas)}
body{background:var(--bn-canvas);color:var(--bn-ink);overflow-x:clip}
.bn-wrap{width:min(1480px,calc(100% - (var(--bn-gutter) * 2)))}

/* Header */
.bn-header{
  background:color-mix(in srgb,var(--bn-canvas) 91%,transparent);
  border-bottom:1px solid var(--bn-line);
  box-shadow:none;
}
.bn-header-row{min-height:90px;gap:clamp(24px,4vw,62px)}
.bn-header-logo{height:58px!important;max-height:58px!important}
.bn-desktop-nav{gap:clamp(22px,2.4vw,40px);font-size:13px}
.bn-desktop-nav a{padding-block:31px;color:var(--bn-ink)}
.bn-desktop-nav a:after{bottom:24px;background:var(--bn-plum)}
.bn-tools>a,.bn-tools summary{border:1px solid transparent}
.bn-tools>a:hover,.bn-tools summary:hover{
  border-color:var(--bn-line);background:var(--bn-paper);color:var(--bn-plum)
}

/* Hero: stable two-column editorial composition */
.bn-slideshow{padding-top:clamp(16px,2vw,32px);padding-bottom:0}
.bn-slideshow-frame{
  height:clamp(610px,48vw,760px);
  border-radius:var(--bn-radius);
  background:var(--bn-pearl);
  box-shadow:0 26px 80px rgba(32,18,36,.10);
  overflow:hidden;
}
.bn-slide{grid-template-columns:minmax(340px,39%) minmax(0,61%)}
.bn-slide-copy{
  padding:clamp(42px,5vw,82px);
  background:var(--bn-plum-dark);
  justify-content:center;
  overflow:hidden;
}
.bn-slide-copy:before{
  display:block;opacity:1;
  background:
    radial-gradient(circle at 20% 10%,rgba(183,154,104,.20),transparent 26%),
    linear-gradient(145deg,transparent 42%,rgba(255,255,255,.035));
}
.bn-slide-copy>div{position:relative;z-index:1;max-width:450px}
.bn-slide-index{margin-bottom:clamp(42px,7vh,86px);color:#c9b4c8;font-size:10px;letter-spacing:.26em}
.bn-slide-eyebrow{margin-bottom:16px;color:#d9c5d7;font-size:11px;letter-spacing:.07em}
.bn-slide-copy h1,.bn-slide-copy h2{
  margin:0 0 22px;color:#fffaf4;
  font-family:Vazirmatn,Tahoma,sans-serif!important;
  font-size:clamp(38px,4vw,64px);font-weight:520;line-height:1.38;letter-spacing:-.045em;
}
html[lang^=en] .bn-slide-copy h1,html[lang^=en] .bn-slide-copy h2{
  font-family:Georgia,"Times New Roman",serif!important;font-weight:400;line-height:1.05;letter-spacing:-.03em;
}
.bn-slide-intro{max-width:390px;margin-bottom:32px;color:#e6dbe4;font-size:14px;line-height:2}
.bn-slide-cta{
  width:max-content;min-width:176px;min-height:52px;padding:12px 22px;
  justify-content:space-between;border-color:rgba(255,255,255,.42);background:transparent;
}
.bn-slide-cta:hover{background:#fffaf4;color:var(--bn-plum-dark);transform:translateY(-1px)}
.bn-slide-visual{isolation:isolate;background:#d8cec8}
.bn-slide-photo{object-position:center 26%;transform:none!important;transition:opacity .55s var(--bn-ease),scale 7s var(--bn-ease)}
.bn-slide.is-active .bn-slide-photo{scale:1.025}
.bn-slide-visual:after{background:linear-gradient(to top,rgba(19,13,20,.24),transparent 34%)}
.bn-slide-visual-label{display:none!important}
.bn-slide-controls{
  inset-inline-start:clamp(44px,5vw,82px);left:auto;right:auto;bottom:38px;
  gap:10px;color:#fff;
}
.bn-slide-controls>button{width:38px;height:38px;border-color:rgba(255,255,255,.36);font-size:23px}
.bn-slide-dots span{height:2px;background:rgba(255,255,255,.35)}
.bn-slide-dots [aria-current=true] span{background:#fff}

/* Category rail */
.bn-categories{
  padding-block:22px 64px;gap:0;border:0;background:transparent;
  grid-template-columns:repeat(4,1fr);
}
.bn-categories a{
  min-height:72px;padding:16px 24px;border:0!important;border-bottom:1px solid var(--bn-line)!important;
  border-radius:0;background:transparent;font-size:13px;
}
.bn-categories a+a{border-inline-start:1px solid var(--bn-line)!important}
.bn-categories a:hover{transform:none;background:var(--bn-paper);border-bottom-color:var(--bn-plum)!important}

/* Sections */
.bn-section{padding-block:clamp(72px,8vw,124px)}
.bn-section-head{margin-bottom:clamp(28px,3vw,48px);align-items:flex-end}
.bn-section-head h2{font-size:clamp(32px,3.5vw,52px);font-weight:550;line-height:1.35;letter-spacing:-.045em}
html[lang^=en] .bn-section-head h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.05}
.bn-eyebrow{color:var(--bn-forest);font-size:11px;font-weight:650;letter-spacing:.09em}
.bn-link{font-size:12px;border-bottom-color:var(--bn-gold)}

/* Product cards */
.woocommerce ul.products,.woocommerce-page ul.products{gap:clamp(34px,4vw,62px) clamp(12px,2vw,28px)!important}
.woocommerce ul.products li.product{overflow:visible}
.woocommerce ul.products li.product>a:first-of-type{position:relative;overflow:hidden;border-radius:0}
.woocommerce ul.products li.product a img{
  margin:0 0 18px!important;border-radius:0;background:var(--bn-pearl);box-shadow:none;
  transition:filter .45s var(--bn-ease),scale .7s var(--bn-ease)!important;
}
.woocommerce ul.products li.product:hover a img{transform:none;scale:1.018;filter:saturate(.95);box-shadow:none}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:0;padding:0 0 5px!important;font-size:14px!important;font-weight:520;line-height:1.75!important;
}
.woocommerce ul.products li.product .price{margin:0 0 13px!important;color:var(--bn-muted)!important;font-size:12px!important}
.woocommerce ul.products li.product .button{
  min-height:0;padding:4px 0 5px!important;border:0!important;border-bottom:1px solid var(--bn-plum)!important;
  border-radius:0!important;background:transparent!important;color:var(--bn-plum)!important;font-size:11px!important;
}
.woocommerce ul.products li.product .button:hover{background:transparent!important;color:var(--bn-ink)!important;border-color:var(--bn-ink)!important}
.bn-wish{
  z-index:4;top:14px;inset-inline-end:14px;width:42px;height:42px;
  border:1px solid rgba(62,35,70,.10);background:rgba(255,253,249,.92);box-shadow:none;
}
.woocommerce span.onsale{
  z-index:4;top:14px!important;inset-inline-start:14px!important;inset-inline-end:auto!important;
  min-width:0;min-height:0;margin:0!important;padding:7px 11px!important;
  border-radius:999px;background:var(--bn-plum)!important;color:#fff;font-size:10px;line-height:1.4;
}

/* Brand story */
.bn-editorial{padding-block:0;background:transparent;color:var(--bn-ink)}
.bn-editorial-inner{
  width:min(1480px,calc(100% - (var(--bn-gutter) * 2)));
  grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);gap:0;
  background:var(--bn-forest);border-radius:var(--bn-radius);overflow:hidden;
}
.bn-story-image{height:clamp(600px,53vw,780px);border-radius:0;box-shadow:none}
.bn-story-image img{object-position:center 28%}
.bn-editorial-copy{max-width:none;padding:clamp(48px,6vw,96px);align-self:center}
.bn-editorial-copy .bn-eyebrow{color:#d9c69e}
.bn-editorial-copy h2{color:#fffaf4;font-size:clamp(44px,5vw,72px);font-weight:500;line-height:1.35;letter-spacing:-.05em}
html[lang^=en] .bn-editorial-copy h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.03}
.bn-editorial-copy>p:not(.bn-eyebrow){max-width:460px;color:#dce8e3;font-size:15px;line-height:2.05}
.bn-editorial .bn-button-green{background:#fffaf4!important;color:var(--bn-forest)!important}

/* Trust and gallery */
.bn-trust{padding-block:clamp(62px,7vw,104px);gap:0;border:0}
.bn-trust>div{min-height:160px;padding:26px;border:0;border-radius:0;background:transparent}
.bn-trust>div+div{border-inline-start:1px solid var(--bn-line)}
.bn-trust svg{color:var(--bn-gold)}
.bn-trust h3{font-size:14px;font-weight:600}
.bn-gallery-grid{grid-template-columns:1.15fr .85fr 1.15fr;gap:10px}
.bn-gallery-grid a{border-radius:0}
.bn-gallery-grid a:nth-child(2){margin-top:clamp(32px,5vw,80px)}
.bn-gallery-grid img{aspect-ratio:4/5}

/* Footer */
.bn-footer{padding-top:clamp(56px,7vw,94px);background:var(--bn-pearl)}
.bn-footer-grid{padding-bottom:clamp(48px,6vw,78px)}
.bn-footer-bottom{border-color:var(--bn-line)}

/* Product detail */
.woocommerce div.product{display:flow-root}
.woocommerce div.product div.images img{border-radius:0;background:var(--bn-pearl)}
.woocommerce div.product div.summary{padding-top:clamp(16px,3vw,44px)}
.woocommerce div.product .product_title{font-size:clamp(34px,4vw,58px);font-weight:520;line-height:1.45}
html[lang^=en] .woocommerce div.product .product_title{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.08}
.woocommerce div.product p.price{font-size:20px}

@media(max-width:1023px){
  .bn-slide{grid-template-columns:43% 57%}
  .bn-slide-copy{padding:38px}
  .bn-slide-controls{inset-inline-start:38px}
  .bn-editorial-inner{grid-template-columns:1.05fr .95fr}
  .bn-editorial-copy{padding:44px}
}

@media(max-width:767px){
  :root{--bn-gutter:12px}
  .bn-wrap{width:calc(100% - 24px)}
  .bn-header-row{min-height:70px}
  .bn-header-logo{height:49px!important;max-height:49px!important}
  .bn-tools>a,.bn-tools summary{border:0;width:38px;min-width:38px}
  .bn-search form{top:70px}

  .bn-slideshow{padding-top:10px}
  .bn-slideshow-frame{height:min(720px,calc(100svh - 88px));min-height:560px;border-radius:18px}
  .bn-slide{display:block}
  .bn-slide-visual{position:absolute;inset:0}
  .bn-slide-photo{object-position:center 22%}
  .bn-slide-visual:after{
    background:linear-gradient(to top,rgba(22,13,24,.97) 0%,rgba(22,13,24,.70) 34%,rgba(22,13,24,.12) 70%,transparent 100%)
  }
  .bn-slide-copy{position:absolute;inset:0;display:flex;justify-content:flex-end;padding:24px 22px 88px;background:transparent}
  .bn-slide-copy>div{max-width:100%}
  .bn-slide-index{margin-bottom:12px}
  .bn-slide-eyebrow{margin-bottom:8px}
  .bn-slide-copy h1,.bn-slide-copy h2{max-width:95%;margin-bottom:10px;font-size:clamp(32px,9.2vw,43px);line-height:1.38}
  html[lang^=en] .bn-slide-copy h1,html[lang^=en] .bn-slide-copy h2{font-size:clamp(38px,11vw,52px);line-height:1.02}
  .bn-slide-intro{max-width:94%;margin-bottom:17px;font-size:12px;line-height:1.85}
  .bn-slide-cta{min-width:164px;min-height:46px;padding:9px 16px;font-size:11px}
  .bn-slide-controls{inset-inline-start:22px;bottom:22px}

  .bn-categories{grid-template-columns:1fr 1fr;padding-block:14px 46px}
  .bn-categories a{min-height:58px;padding:11px 12px;font-size:11px}
  .bn-categories a+a{border-inline-start:0!important}
  .bn-categories a:nth-child(even){border-inline-start:1px solid var(--bn-line)!important}

  .bn-section{padding-block:66px}
  .bn-section-head{margin-bottom:25px;align-items:flex-end}
  .bn-section-head h2{font-size:31px}
  .bn-section-head .bn-link{max-width:112px;font-size:10px;line-height:1.7}
  .woocommerce ul.products,.woocommerce-page ul.products{gap:34px 10px!important}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px!important;line-height:1.8!important}
  .woocommerce ul.products li.product .price{font-size:10px!important;line-height:1.7}
  .woocommerce ul.products li.product .button{font-size:10px!important}
  .bn-wish{top:8px;inset-inline-end:8px;width:38px;height:38px}
  .woocommerce span.onsale{top:8px!important;inset-inline-start:8px!important;padding:6px 9px!important;font-size:9px}

  .bn-editorial-inner{width:calc(100% - 24px);grid-template-columns:1fr;border-radius:18px}
  .bn-story-image{height:auto;aspect-ratio:4/5}
  .bn-editorial-copy{padding:38px 24px 44px}
  .bn-editorial-copy h2{font-size:42px}
  .bn-editorial-copy>p:not(.bn-eyebrow){font-size:13px}

  .bn-trust{grid-template-columns:1fr 1fr;padding-block:52px}
  .bn-trust>div{min-height:142px;padding:20px 14px;border-bottom:1px solid var(--bn-line)}
  .bn-trust>div+div{border-inline-start:0}
  .bn-trust>div:nth-child(even){border-inline-start:1px solid var(--bn-line)}
  .bn-gallery-grid{grid-template-columns:1fr 1fr;gap:7px}
  .bn-gallery-grid a:nth-child(2){margin-top:36px}
  .bn-gallery-grid a:nth-child(3){grid-column:1/-1;width:calc(50% - 4px);justify-self:center;margin-top:0}

  .bn-footer-grid{gap:30px 20px}
  .woocommerce div.product .product_title{font-size:31px}
}

@media(max-width:380px){
  .bn-slideshow-frame{min-height:540px}
  .bn-slide-copy{padding-inline:18px}
  .bn-slide-controls{inset-inline-start:18px}
}

@media(prefers-reduced-motion:reduce){
  .bn-slide-photo,.woocommerce ul.products li.product a img{transition:none!important;scale:1!important}
}
