/* NAKSHA's supplied red / black / white identity. The original logo is unaltered. */
:root{--paper:#fff;--ink:#191919;--accent:#c5121b;--line:#e5e1e1;--muted:#686366;--brand-red:#ed1c24;--brand-action:#c5121b;--brand-dark:#111;--brand-surface:#f7f5f5}
body{background:var(--paper);color:var(--ink)}
:focus-visible{outline-color:var(--brand-action)}
.wordmark.brand-mark{display:block;flex:0 0 164px;width:164px;max-width:100%;line-height:0;font-size:0;letter-spacing:0;text-decoration:none}
.brand-mark .brand-logo{display:block;width:100%;height:auto;aspect-ratio:8001/4506;object-fit:contain;object-position:center;background:#111;border:0;border-radius:2px}
.announcement{background:var(--brand-action);color:white;letter-spacing:.05em;padding:9px 16px}
.site-header,.desk-header,.admin-topbar{background:var(--brand-dark);color:white;border-bottom:3px solid var(--brand-red);gap:18px;min-height:120px}
.site-header{margin:0;padding:12px 5%}
.desk-header{padding:12px 4%}.admin-topbar{padding:12px 5%}
.site-header nav{margin-left:auto;flex:1 1 460px;flex-wrap:wrap;justify-content:center;gap:4px 24px;min-width:0}
.site-header nav a,.desk-header nav a,.admin-topbar>div a{color:#f8f8f8}
.site-header nav a:hover,.desk-header nav a:hover,.admin-topbar>div a:hover{color:#ff9ca3;text-decoration:underline;text-underline-offset:6px}
.site-header nav a[aria-current=page],.desk-header nav a[aria-current=page]{color:white;text-decoration:underline;text-decoration-color:var(--brand-red);text-decoration-thickness:2px;text-underline-offset:7px}
.site-header .header-cta{color:white;border-color:var(--brand-red)}
.site-header .menu-toggle{background:transparent;color:white;border-color:#777}
.site-header .language-switch,.desk-header .language-switch,.admin-topbar .language-switch{margin-left:0;border-color:#666;background:#202020}
.language-switch button{color:#fff;background:transparent}
.language-switch button[aria-pressed=true]{background:var(--brand-action);color:white}
.language-switch button:hover{background:#3a2728;color:white}.language-switch button[aria-pressed=true]:hover{background:#a60d16}
.button,.desk-btn{background:var(--brand-action);color:white;border-color:var(--brand-action)}
.button:hover,.desk-btn:hover{background:#9f0e17;color:white;border-color:#9f0e17}
.desk-btn.secondary,.reset-button,.small-button{color:var(--ink);background:white;border-color:#b7adae}
.desk-btn.secondary:hover,.reset-button:hover,.small-button:hover{background:#fff0f1;color:#9f0e17;border-color:var(--brand-action)}
.desk-btn.danger{background:#84242b;color:white;border-color:#84242b}
.text-link,.account-text-button,.admin-text-button{color:var(--brand-action)}
.eyebrow{color:var(--brand-action)}
.hero{background:linear-gradient(115deg,#fff 12%,#fff5f5 100%)}
.hero h1 em,.heritage-note>span{color:var(--brand-action)}
.hero-visual{border-bottom:4px solid var(--brand-red)}
.brand-values{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.brand-values>p{color:var(--brand-action)}.brand-values>p span{color:var(--ink)}
.photo-label,.product-tag{background:#fff;color:#262020}
.card-action{background:#171717ee;color:white}
.collection-custom,.story-art{background:#191919;color:white}
.collection-custom .eyebrow,.story-art .eyebrow,.collection-custom .text-link{color:#ff9ca3}
.collection-custom h3,.story-art p,.story-art .story-number{color:white}
.collection-custom .custom-card-number{color:#ff9ca3}
.coming-soon{background:#fff3f4;border-color:#f0c2c5}
.filter-panel,.atelier-guide,.guide-note,.order-summary,.checkout-summary,.checkout-review,.account-sidebar,.admin-callout,.banner-preview{background:var(--brand-surface)}
.catalog-notice,.desk-notice{background:#fff5f5;border-color:#efdbdd;border-left:3px solid var(--brand-action)}
.desk-stat{background:#f7f5f5;border-top:2px solid var(--brand-red)}
.desk-card,.admin-panel,.record-panel,.account-card{background:#fff;border-color:var(--line)}
.desk-table th,.admin-table th{background:#f4f1f1}
.desk-nav button[aria-pressed=true]{background:var(--brand-action);color:white}
.desk-nav button:not([aria-pressed=true]):hover{background:#fff0f1;color:#9f0e17}
.desk-note{background:#fffafa;border-left-color:var(--brand-action)}.desk-note.read{background:white;border-left-color:#d7d1d1}
.desk-tag,.admin-badge{background:#f4f1f1;border-color:#d9d2d3;color:#292425}
.desk-tag.warn{background:#fff0f1;border-color:#e4a8ad;color:#8c1119}
.desk-message{background:#f5f5f5;border-color:#a9a2a2;color:#222}.desk-message.is-error{background:#fff0f1;border-color:#c5121b;color:#8c1119}
.desk-dark,.admin-sidebar{background:#191919;color:white}.admin-sidebar .eyebrow{color:#ff9ca3}
.admin-menu button{color:#ececec;border-color:#ffffff26}.admin-menu button[aria-pressed=true]{color:white;border-color:var(--brand-red)}
.dark-callout{background:#f3eeee}
input,select,textarea,.desk-form input,.desk-form select,.desk-form textarea,.desk-tools input,.desk-tools select,.desk-search{background:white;border-color:#cbc4c5;color:var(--ink)}
input:disabled,select:disabled{background:#f0eded;color:#777}
.confirmation-symbol{background:#fff0f1;color:var(--brand-action);border-color:#edb8bd}
footer{background:#141414;color:#f3f3f3;border-top:3px solid var(--brand-red)}
footer .brand-mark{width:210px;flex-basis:210px;margin-bottom:20px}
footer .eyebrow{color:#ff9ca3}footer .footer-bottom{border-color:#ffffff2b;color:#ddd}
footer .footer-contact small,footer .section-footnote{color:#d4d4d4}footer a:hover{color:#ff9ca3}
.desk-foot{background:#141414;color:#ddd;border-top:3px solid var(--brand-red)}
@media(max-width:1450px){.site-header .header-cta{display:none}}
@media(max-width:1000px){.site-header{gap:16px;padding-top:12px;padding-bottom:12px}.site-header nav{flex-basis:400px;gap:2px 18px}.brand-mark .brand-logo{border-radius:1px}}
@media(max-width:720px){
 .wordmark.brand-mark{width:144px;flex-basis:144px}.site-header,.desk-header,.admin-topbar{min-height:0}
 .desk-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;padding:12px 4%}
 .desk-header>.brand-mark{grid-column:1;grid-row:1;width:144px}.desk-header>.language-switch{grid-column:2;grid-row:1;align-self:center}
 .desk-header nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;flex-basis:auto;padding:0}
 .desk-header nav a{padding:4px 0;color:white}
 .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;margin:0;padding:10px 5%;gap:10px}
 .site-header>.brand-mark{grid-column:1;grid-row:1;width:138px}.site-header>.menu-toggle{grid-column:2;grid-row:1;padding:7px 9px;font-size:12px}
 .site-header>.language-switch{grid-column:3;grid-row:1;align-self:center}.language-switch button{padding:8px 9px;font-size:12px}
 .site-header nav{grid-column:1/-1;grid-row:2;flex-basis:auto;justify-content:flex-start;gap:0;padding:6px 0;min-width:0}
 .site-header nav a{flex:0 0 50%;padding:9px 0}.site-header .header-cta{display:none}
 .admin-topbar{gap:14px;padding:12px 5%}.admin-topbar>div:not(.language-switch){flex-wrap:wrap;gap:12px}
 footer .brand-mark{width:180px;flex-basis:180px}
}
@media(max-width:370px){.site-header>.brand-mark{width:112px}.site-header{gap:7px}.site-header .language-switch button{padding:7px 6px}.site-header .menu-toggle{padding:7px 6px}}

/* Larger, classical storefront navigation in both languages. */
.site-header nav a{font-family:Georgia,"Noto Serif Bengali","Nirmala UI",serif;font-size:17px;font-weight:400;line-height:1.65;letter-spacing:.01em;padding-top:9px;padding-bottom:9px}
@media(max-width:1000px){.site-header nav{gap:2px 20px}.site-header nav a{font-size:16px}}
@media(max-width:720px){.site-header nav a{font-size:16px;line-height:1.7;padding:10px 0}}

/* Touch targets and consistent mobile navigation. */
@media (max-width:720px) {
 .js-ready .site-header nav:not(.is-open){display:none}
 .js-ready .site-header nav.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}
 .site-header nav a,.site-header .menu-toggle,.site-header .language-switch button{min-height:44px}
 .site-header nav a{overflow-wrap:anywhere}
 .site-header>.brand-mark{max-width:100%;min-width:0}
 .site-header .menu-toggle{white-space:nowrap}
 .hero-actions a,.collection-caption a,.product-card a,.footer-links a{touch-action:manipulation}
 .footer-bottom{row-gap:12px}
}
@media (max-width:380px) {
 .site-header>.brand-mark{width:105px}
 .site-header{gap:6px;padding-inline:4%}
 .site-header .language-switch button{padding-inline:6px}
}
@media (max-width:720px) {
 .js-ready .site-header .menu-toggle:not([hidden]){display:inline-flex;align-items:center;justify-content:center}
}

/* Keep the sign-in link at the far right, after the language control. */
.site-header > .header-login {
  order: 2;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 8px 15px;
  border: 1px solid #bd7379;
  border-radius: 4px;
  color: #fff;
  font-size: 14px;
  white-space: nowrap;
}
.site-header > .header-login:hover { background: #3a2728; }
@media (max-width: 720px) {
  .site-header:has(> .header-login) { grid-template-columns: minmax(0,1fr) auto auto auto; }
  .site-header > .header-login { grid-column: 4; grid-row: 1; padding: 7px 9px; font-size: 12px; }
}
@media (max-width: 380px) {
  .site-header > .header-login { padding-inline: 6px; }
}

#new-arrivals { padding-bottom: 36px; }
#shop-categories { padding-top: 36px; padding-bottom: 36px; }
#occasion-collections { padding-top: 36px; }
@media (max-width: 700px) {
  #new-arrivals, #shop-categories { padding-bottom: 20px; }
  #shop-categories, #occasion-collections { padding-top: 20px; }
}
.category-photo-placeholder {
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  background: #f5eceb;
  color: #972731;
  font-size: 2.5rem;
}
#shop-categories[hidden] { display: none !important; }
.category-photo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(160px, 100%), 1fr));
  gap: 14px;
}
.category-photo-grid a {
  display: block;
  min-width: 0;
  background: #faf5f3;
  color: var(--ink);
  border: 1px solid #e9ddda;
}
.category-photo-grid img { display: block; aspect-ratio: 1; width: 100%; height: auto; object-fit: cover; }
.category-photo-grid span { display: block; padding: .65rem .75rem; overflow-wrap: anywhere; }
.category-photo-grid a:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (max-width: 700px) {
  .category-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
}
@media (prefers-reduced-motion: no-preference) {
  .catalog-revealed { animation: naksha-catalog-reveal 240ms ease-out both; }
  @keyframes naksha-catalog-reveal {
    from { opacity: .72; transform: translateY(7px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

/* Shared storefront navigation */
.site-header.naksha-shop-header {
  display: block;
  position: relative;
  z-index: 5;
  padding: 0;
  min-height: 0;
}
.naksha-header-top {
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto;
  align-items: center;
  gap: clamp(12px, 2.5vw, 38px);
  padding: 12px clamp(16px, 5vw, 80px);
}
.naksha-shop-header .brand-mark { width: clamp(112px, 11vw, 170px); }
.naksha-header-search {
  display: flex;
  justify-self: end;
  width: min(100%, 295px);
  min-width: 0;
  background: transparent;
  color: #fff;
  border-bottom: 1px solid #a99da0;
}
.naksha-header-search input {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 8px 12px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}
.naksha-header-search button, .naksha-header-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 44px;
  min-height: 44px;
  padding: 5px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
}
.naksha-header-search button { order: -1; }
.naksha-header-search input { padding-inline: 3px 8px; }
.naksha-header-search input::placeholder { color: #d4cbd0; opacity: 1; }
.naksha-header-search:focus-within { border-bottom-color: #ff9ca3; }
.naksha-header-search svg, .naksha-header-action svg { width: 22px; height: 22px; flex: 0 0 auto; }
.naksha-header-tools { display: flex; gap: clamp(5px, 1vw, 16px); align-items: center; color: white; }
.naksha-header-action strong { font-size: .8rem; color: #fff; padding-inline: 5px; border-radius: 9px; background: #a3121b; }
.naksha-shop-header :is(a, button, summary):focus-visible { outline: 2px solid #ff9ca3; outline-offset: 3px; }
.naksha-shop-header #main-nav {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 0;
  padding: 0 clamp(16px, 5vw, 80px);
  gap: 0 clamp(12px, 2.1vw, 32px);
  border-top: 1px solid #444;
}
.naksha-shop-header #main-nav a, .naksha-header-menu summary {
  padding: 10px 0;
  min-height: 44px;
  font-size: 1rem;
  line-height: 1.5;
}
.naksha-header-featured { display: flex; gap: 0 clamp(12px, 2vw, 30px); flex-wrap: wrap; }
.naksha-header-featured:empty { display: none; }
.naksha-header-menu { position: relative; color: white; }
.naksha-header-menu summary { cursor: pointer; }
.naksha-header-menu > div {
  position: absolute;
  inset: 100% auto auto 0;
  z-index: 2;
  display: grid;
  min-width: 195px;
  max-height: min(60vh, 420px);
  overflow-y: auto;
  padding: 8px 14px;
  background: #221d1e;
  border: 1px solid #624348;
  box-shadow: 0 12px 24px #0003;
}
.naksha-header-menu:last-child > div { inset-inline: auto 0; }
.naksha-header-category-scroll { display: none; }
.naksha-shopping-help { margin-block: 24px; }
.naksha-shopping-help summary { cursor: pointer; font-weight: 600; }
@media (min-width: 721px) {
  .naksha-shop-header .menu-toggle { display: none; }
}
@media (max-width: 720px) {
  .naksha-header-top { grid-template-columns: auto minmax(0, 1fr) auto; gap: 7px; padding: 8px 10px; }
  .naksha-header-top .menu-toggle { grid-column: 1; grid-row: 1; min-width: 44px; min-height: 44px; padding: 4px 6px; }
  .naksha-shop-header .brand-mark { grid-column: 2; grid-row: 1; width: min(100%, 110px); }
  .naksha-header-tools { grid-column: 3; grid-row: 1; gap: 3px; }
  .naksha-header-tools .language-switch button { min-height: 44px; font-size: 11px; padding-inline: 4px; }
  .naksha-header-action { padding-inline: 2px; }
  .naksha-header-action > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .naksha-header-search { grid-column: 1 / -1; grid-row: 2; width: 100%; }
  .naksha-shop-header #main-nav { padding: 6px 12px; gap: 0 12px; }
  .js-ready .naksha-shop-header #main-nav:not(.is-open) { display: none; }
  .js-ready .naksha-shop-header #main-nav.is-open { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .naksha-header-featured { display: none; }
  .naksha-header-menu > div, .naksha-header-menu:last-child > div { position: static; min-width: 0; padding: 0 8px; box-shadow: none; }
  .naksha-header-category-scroll:not([hidden]) { display: flex; gap: 8px; overflow-x: auto; padding: 6px 10px; border-top: 1px solid #444; }
  .naksha-header-category-scroll a {
    display: inline-flex; align-items: center; flex: 0 0 auto; min-height: 44px;
    padding: 0 12px; color: #fff; border: 1px solid #77565a; border-radius: 3px;
  }
  .naksha-header-category-scroll a[aria-current="page"] { background: #a3121b; }
}
.naksha-header-menu:not([open]) > div { display: none; }

.naksha-footer-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding: 14px clamp(16px, 5vw, 80px);
  color: #eee;
  background: #090909;
  border-top: 1px solid #ffffff28;
}
.naksha-footer-bar small { font-size: .82rem; }
.naksha-footer-social, .naksha-footer-apps, .naksha-footer-right {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.naksha-footer-social { justify-content: center; }
.naksha-footer-right { justify-content: end; }
.naksha-footer-apps[hidden] { display: none !important; }
.naksha-footer-bar a { color: #ddd; text-decoration: none; }
.naksha-footer-bar a:hover { color: #ffadb2; }
.naksha-footer-social a, .naksha-footer-apps a, .naksha-footer-track {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}
.naksha-footer-social a {
  border: 1px solid #ffffff32;
  border-radius: 5px;
  font-size: 1.1rem;
  font-weight: 600;
}
.naksha-footer-apps a { padding: 0 .65rem; border: 1px solid #888; border-radius: 5px; }
.naksha-footer-social svg { width: 22px; height: 22px; }
.naksha-footer-bar a:focus-visible { outline: 2px solid #ffadb2; outline-offset: 3px; }
@media (max-width: 720px) {
  .naksha-footer-bar { grid-template-columns: 1fr; justify-items: center; gap: 7px; text-align: center; }
  .naksha-footer-right { justify-content: center; }
  .naksha-footer-bar small { order: 1; }
}

/* Square footer logo and a compact mobile storefront header. */
footer .brand-mark .brand-logo { aspect-ratio: 1; background: white; }
.naksha-admin-page .content-header img { width: 120px; height: auto; }
footer .brand-mark { width: 110px; flex-basis: 110px; }
.naksha-mobile-navigation[hidden] { display: none !important; }
@media (max-width: 720px) {
  .storefront-announcement { display: none; }
  .naksha-shop-header .naksha-header-top {
    grid-template-columns: 70px minmax(0, 1fr) auto;
    gap: 8px;
    padding: 8px 12px;
  }
  .js-ready .naksha-shop-header .menu-toggle:not([hidden]),
  .naksha-shop-header #main-nav { display: none; }
  .naksha-shop-header .brand-mark { grid-column: 1; width: 70px; }
  .naksha-header-search { grid-column: 2; grid-row: 1; }
  .naksha-header-search input { font-size: 16px; padding-inline: 0 4px; }
  .naksha-header-search button { min-width: 38px; }
  .naksha-header-tools { grid-column: 3; gap: 0; }
  .naksha-mobile-navigation { padding: 12px 16px; border-top: 1px solid #ffffff28; }
  .js-ready .naksha-mobile-navigation #main-nav, .naksha-mobile-navigation #main-nav {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; margin: 0 0 12px;
  }
  .naksha-mobile-navigation #main-nav a, .naksha-mobile-navigation summary {
    display: block; padding: 8px 0; min-height: 44px; overflow-wrap: anywhere;
  }
  .naksha-mobile-navigation .language-switch { display: inline-flex; margin-left: 0; }
}

.naksha-footer-identity { display: flex; align-items: center; gap: 10px; }
.naksha-footer-logo { flex: 0 0 48px; }
.naksha-footer-logo img { display: block; width: 48px; height: 48px; object-fit: contain; background: white; }
@media (max-width: 720px) { .naksha-footer-identity { justify-content: center; } }

/* Homepage footer layout based on the split brand artwork. */
footer.naksha-art-footer {
  padding: 0;
  background: #000;
  color: #fffaf7;
}
.naksha-art-footer .footer-main {
  grid-template-columns: minmax(0, 29fr) minmax(0, 47fr) minmax(0, 24fr);
  grid-template-rows: 1fr auto;
  column-gap: clamp(16px, 3vw, 48px);
  row-gap: 12px;
  padding: 0 clamp(16px, 2.5vw, 48px) 0 0;
}
.naksha-art-footer-home {
  display: block;
  grid-row: 1 / 3;
  min-height: clamp(215px, 16vw, 300px);
  background: #fff url("../images/naksha-footer-art.jpg") left center / auto 140% no-repeat;
}
.naksha-art-footer .footer-links {
  grid-area: 1 / 2 / 3;
  align-self: end;
  flex-flow: row wrap;
  gap: .5rem 1.25rem;
  padding-bottom: clamp(16px, 2vw, 30px);
  font-size: .95rem;
}
.naksha-art-footer .footer-links .eyebrow { flex-basis: 100%; }
.naksha-art-footer .footer-contact {
  grid-area: 1 / 3;
  align-self: end;
  padding-top: 24px;
}
.naksha-art-footer .footer-main .eyebrow {
  color: #ffd4d5;
  font-size: .9rem;
  font-weight: 600;
  margin: 0 0 .5rem;
}
.naksha-art-footer .footer-main a { color: inherit; overflow-wrap: anywhere; }
.naksha-art-footer .footer-main .footer-contact p:not(.eyebrow) {
  color: inherit;
  font-size: .95rem;
  margin: .3rem 0;
}
.naksha-art-footer .footer-main .footer-brand-note {
  grid-area: 2 / 3;
  color: #fff;
  font-size: clamp(1rem, 1.25vw, 1.3rem);
  font-weight: 500;
  line-height: 1.65;
  margin: 0 0 clamp(16px, 2vw, 30px);
}
html[lang="bn"] .naksha-art-footer {
  font-family: "Noto Serif Bengali", "Nirmala UI", serif;
  line-height: 1.65;
}
html[lang="bn"] .naksha-art-footer .footer-main .eyebrow { letter-spacing: normal; }
.naksha-art-footer .naksha-footer-bar {
  background: #fffaf7;
  border-color: #49242f33;
  color: #342326;
}
.naksha-art-footer .naksha-footer-bar a { color: inherit; }
.naksha-art-footer .naksha-footer-social a { border-color: #49242f66; }
.naksha-art-footer a:hover { text-decoration: underline; }
.naksha-art-footer a:focus-visible, .naksha-art-footer summary:focus-visible {
  outline: 2px solid #dd727d;
  outline-offset: 3px;
}
@media (max-width: 720px) {
  .naksha-art-footer .footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
    gap: 14px;
    padding: 0 14px 16px;
  }
  .naksha-art-footer-home {
    grid-area: 1 / 1 / 2 / -1;
    background-size: auto 100%;
    min-height: clamp(160px, 52vw, 235px);
    margin-inline: -14px;
  }
  .naksha-art-footer .footer-links, .naksha-art-footer .footer-contact {
    grid-area: auto;
    align-self: start;
    padding: 0;
  }
  .naksha-art-footer .footer-links { flex-direction: column; gap: .45rem; }
  .naksha-art-footer .footer-main .footer-brand-note { grid-area: auto / 1 / auto / -1; margin: 0; }
}

/* Active sale prices and homepage spotlight. */
.sale-badge { display: inline-block; border-radius: 4px; padding: .15em .45em; background: #a31325; color: #fff; font-size: .8em; white-space: nowrap; }
.price del, #product-price del { color: #65565a; }
.price strong, #product-price strong { color: #a31325; }
.storefront-sale { background: #fff3f3; border-top: 3px solid #a31325; scroll-margin-top: 24px; }
.sale-heading { margin-bottom: 1.5rem; }
.naksha-shop-header #main-nav .storefront-sale-link, .naksha-mobile-navigation .storefront-sale-link { color: #fff; background: #a31325; border-radius: 4px; padding-inline: .65rem; }

/* Make the full catalogue easy to find on desktop and touch screens. */
.section-heading .browse-all-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  min-height: 44px;
  padding: .55rem .9rem;
  border: 1px solid #9c1424;
  border-radius: 4px;
  background: #9c1424;
  color: #fff;
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  font-weight: 650;
  line-height: 1.35;
  text-decoration: none;
}
.section-heading .browse-all-button:hover {
  background: #76101c;
  color: #fff;
}
.naksha-art-footer .footer-links .browse-all-button {
  display: inline-flex;
  align-items: center;
  gap: .5em;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ff737d;
  font-weight: 650;
}
.naksha-art-footer .footer-links .browse-all-button:hover {
  background: transparent;
  color: #ffadb2;
}
.naksha-art-footer .footer-links .browse-all-button:focus-visible { outline-color: currentColor; }
.browse-all-button:focus-visible { outline: 2px solid #a31325; outline-offset: 3px; }
@media (max-width: 700px) {
  #new-arrivals .section-heading, #shop-categories .section-heading { flex-wrap: wrap; gap: 10px; }
  .section-heading .browse-all-button { width: 100%; }
  .naksha-art-footer .footer-links .browse-all-button { align-self: flex-start; }
}

/* Keep the shop navigation available while customers browse. */
.site-header.naksha-shop-header { position: sticky; top: 0; }
html:has(.naksha-shop-header) { scroll-padding-top: 175px; }
.naksha-department-links {
  display: flex;
  align-items: center;
  gap: clamp(12px, 2vw, 30px);
  flex-wrap: wrap;
}
.naksha-shop-header .naksha-department-links a { font-weight: 600; }
.naksha-mobile-departments { display: none; }
@media (max-width: 720px) {
  html:has(.naksha-shop-header) { scroll-padding-top: 116px; }
  .naksha-mobile-navigation .naksha-department-links { display: none; }
  .site-header.naksha-shop-header nav.naksha-mobile-departments:not([hidden]) {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    gap: clamp(12px, 5vw, 36px);
    border-top: 1px solid #444;
    padding: 0 10px;
  }
  .site-header .naksha-mobile-departments a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; }
}

@media (min-width: 721px) {
  .naksha-shop-header .naksha-department-links {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-inline: 4px;
  }
  .naksha-shop-header #main-nav > :is(a, details),
  .naksha-shop-header .naksha-department-links > :is(a, button) { flex: 0 0 auto; white-space: nowrap; }
}
@media (max-width: 720px) {
  .site-header.naksha-shop-header nav.naksha-mobile-departments:not([hidden]) {
    justify-content: safe center;
    overflow-x: auto;
  }
  .naksha-mobile-departments a { white-space: nowrap; }
}
.shop-department-directory {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-block: 0 12px;
}
.shop-department-directory a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  border: 1px solid var(--line);
  padding: 6px 12px;
}
.shop-department-directory a:hover { color: var(--accent); border-color: var(--accent); }

/* Homepage department cards */
#shop-departments[hidden] { display: none; }
#shop-departments { padding-block: clamp(24px, 3vw, 48px); }
#shop-departments h2 { margin: 0 0 clamp(14px, 2vw, 26px); }
.department-photo-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.department-photo-grid a {
  background: #fff;
  text-align: center;
  box-shadow: 0 2px 6px rgb(0 0 0 / 8%);
}
.department-photo-grid a:hover span { color: var(--accent); }
.department-photo-grid :is(img, .category-photo-placeholder) { aspect-ratio: 7 / 6; }
.department-photo-grid span { font-weight: 600; padding: .8rem .5rem; }
@media (max-width: 700px) {
  .department-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Homepage new arrivals carousel */
#new-arrivals h2, #occasion-collections h2 { text-align: center; margin: 0 0 clamp(16px, 2.5vw, 36px); }
#new-arrivals .arrivals-carousel { display: grid; grid-template-columns: 32px minmax(0, 1fr) 32px; gap: 8px; align-items: center; }
#arrival-products {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: none;
  grid-auto-columns: calc((100% - 30px) / 4);
  gap: 10px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
#arrival-products .product-card { scroll-snap-align: start; min-width: 0; max-width: none; grid-column: auto; }
#arrival-products .product-image { display: block; position: relative; aspect-ratio: 3 / 4; }
#arrival-products .product-image img { width: 100%; height: 100%; object-fit: cover; }
#arrival-products .product-image:focus-visible { outline-offset: -3px; }
#arrival-products .product-meta { padding-inline: 3px; overflow-wrap: anywhere; }
.arrivals-plus {
  position: absolute;
  inset: auto auto 8px 8px;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgb(0 0 0 / 58%);
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
}
.arrivals-arrow, .arrivals-motion {
  background: transparent;
  color: var(--ink, #171717);
  border: 0;
  cursor: pointer;
  min-height: 44px;
}
.arrivals-arrow { font-size: 2rem; padding: 0; grid-row: 1; }
.arrivals-arrow:first-child { grid-column: 1; }
.arrivals-arrow:last-child { grid-column: 3; }
#arrival-products { grid-column: 2; grid-row: 1; }
.arrivals-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 16px; margin-top: 22px; }
.arrivals-more { display: inline-flex; align-items: center; padding: .55rem 1.15rem; background: #151515; color: #fff; min-height: 44px; }
.arrivals-more:hover { color: #fff; background: #a21728; }
.arrivals-motion { text-decoration: underline; }
@media (max-width: 700px) {
  #new-arrivals .arrivals-carousel { grid-template-columns: 26px minmax(0, 1fr) 26px; gap: 3px; }
  #arrival-products { grid-auto-columns: calc((100% - 10px) / 2); }
  #arrival-products .product-meta { margin-top: 7px; }
  #arrival-products .product-meta h3 { font-size: .95rem; }
  .arrivals-more, .arrivals-more:hover { color: #a21728; background: transparent; text-decoration: underline; }
  .arrivals-plus { width: 30px; height: 30px; font-size: 1.25rem; }
}
/* Department navigation */
.naksha-shop-header .naksha-department-links button,
.naksha-shop-header .naksha-mobile-departments button {
  flex: 0 0 auto;
  min-height: 44px;
  border: 0;
  border-bottom: 2px solid transparent;
  padding: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
}
.naksha-shop-header [data-department][aria-expanded="true"],
.naksha-shop-header [data-department][aria-current="page"] { border-bottom-color: #df2636; }
.naksha-department-panel[hidden] { display: none; }
.naksha-department-panel {
  position: absolute;
  inset: 100% 0 auto;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(20px, 4vw, 60px);
  max-height: 60dvh;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: clamp(18px, 3vw, 44px) clamp(16px, 4vw, 72px);
  background: #fff;
  color: #1b1717;
  border-bottom: 2px solid #a31325;
  box-shadow: 0 12px 24px rgb(0 0 0 / 15%);
}
.naksha-department-panel:has(.naksha-department-cover) {
  grid-template-columns: minmax(0, 1fr) minmax(180px, 26%);
}
.naksha-shop-header .naksha-department-panel a { color: #1b1717; }
.naksha-shop-header .naksha-department-panel a:hover { color: #a31325; text-decoration: underline; }
.naksha-department-view-all { display: inline-block; padding-block: 10px; font-weight: 700; }
.naksha-department-groups {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  columns: 3 150px;
  column-gap: 32px;
  column-rule: 1px solid #eadfe0;
}
.naksha-department-groups li { break-inside: avoid; }
.naksha-department-groups a { display: flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; }
.naksha-department-cover img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
@media (max-width: 720px) {
  .naksha-department-panel:has(.naksha-department-cover) { grid-template-columns: minmax(0, 1fr); }
  .naksha-department-cover { display: none; }
  .naksha-department-groups { columns: 2 110px; column-gap: 20px; }
}

#main-nav > [hidden],
.naksha-department-links > [hidden],
.naksha-mobile-departments > [hidden] { display: none !important; }

/* Shared storefront header typography */
.naksha-shop-header #main-nav :is(a, summary, button),
.naksha-shop-header .naksha-mobile-departments :is(a, button),
.naksha-shop-header .naksha-department-panel a,
.naksha-mobile-navigation #main-nav :is(a, summary, button),
.naksha-shop-header .naksha-header-search input,
.naksha-shop-header .naksha-header-action {
  font-family: "Segoe UI", "Nirmala UI", system-ui, sans-serif;
  font-weight: 500;
  letter-spacing: .015em;
  line-height: 1.45;
}
.naksha-shop-header #main-nav :is(a, summary, button),
.naksha-shop-header .naksha-department-panel a { font-size: 17px; }
.naksha-shop-header :is(.naksha-header-search input, .naksha-header-action) { font-size: 16px; }
html[lang="en"] .naksha-shop-header #main-nav > a,
html[lang="en"] .naksha-shop-header #main-nav > details > summary,
html[lang="en"] .naksha-shop-header .naksha-department-links > :is(a, button),
html[lang="en"] .naksha-shop-header .naksha-mobile-departments > :is(a, button) {
  text-transform: uppercase;
}
@media (max-width: 720px) {
  .naksha-shop-header .naksha-mobile-departments :is(a, button),
  .naksha-mobile-navigation #main-nav :is(a, summary, button),
  .naksha-shop-header .naksha-department-panel a { font-size: 14px; }
}

/* Storefront footer image tiles */
footer.naksha-art-footer.footer-with-menus { border-top: 0; }
.naksha-art-footer.footer-with-menus .footer-main {
  display: block;
  padding: 0;
}
.naksha-art-footer.footer-with-menus .footer-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding: 0;
}
.footer-menu-group {
  position: relative;
  isolation: isolate;
  min-width: 0;
  height: clamp(180px, 17vw, 320px);
  background: #262020;
  overflow: hidden;
}
.footer-menu-image {
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.footer-menu-group::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgb(0 0 0 / 38%);
}
.footer-menu-group[open]::before { background: rgb(0 0 0 / 67%); }
.footer-menu-group summary {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  padding: .7rem;
  cursor: pointer;
  list-style: none;
  text-align: center;
  color: #fff;
  font-size: clamp(.9rem, 1.05vw, 1.15rem);
  font-weight: 700;
}
html[lang="en"] .footer-menu-group summary { text-transform: uppercase; }
.footer-menu-group summary::-webkit-details-marker { display: none; }
.footer-menu-group[open] summary {
  height: auto;
  min-height: 44px;
  border-bottom: 1px solid #ffffff44;
}
.footer-menu-group summary:focus-visible { outline-offset: -4px; }
.footer-menu-content {
  position: absolute;
  inset: 44px 0 0;
  display: grid;
  align-content: start;
  gap: .2rem;
  padding: .5rem clamp(12px, 2vw, 32px) .8rem;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.footer-menu-group:not([open]) .footer-menu-content { display: none; }
.footer-menu-content :is(a,p) { margin: 0; line-height: 1.5; }
.footer-menu-content a { display: inline-block; padding-block: .35rem; }
.naksha-art-footer.footer-with-menus .footer-brand-note {
  margin: .35rem 0;
  font-size: .9rem;
  color: #fff;
}
.naksha-art-footer .footer-menu-content .footer-product-highlight {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}
.footer-product-highlight img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.footer-product-highlight :is(strong, span, small) { display: block; }
.footer-product-highlight small { color: #ffd4d5; }
.naksha-art-footer.footer-with-menus .naksha-footer-bar {
  background: #000;
  color: #fff;
  border-color: #363032;
}
.naksha-art-footer.footer-with-menus .naksha-footer-social a { border-color: #ffffff55; }
@media (max-width: 720px) {
  .naksha-art-footer.footer-with-menus .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-menu-group { height: clamp(165px, 45vw, 230px); }
}

/* Published occasion links in the storefront navigation */
.naksha-shop-header #main-nav > a[data-header-occasion],
.naksha-mobile-navigation #main-nav > a[data-header-occasion] {
  color: #ff646c;
}

/* Scheduled homepage campaign */
.home-campaign-popup {
  position: fixed;
  inset: 0;
  margin: auto;
  width: min(680px, calc(100% - 32px));
  max-height: calc(100dvh - 32px);
  padding: 0;
  overflow: auto;
  border: 0;
  background: #921427;
  color: #fff;
  box-shadow: 0 14px 48px #0006;
  text-align: center;
}
.home-campaign-popup::backdrop { background: #000a; }
.home-campaign-popup > img { display: block; width: 100%; max-height: 45dvh; object-fit: contain; background: #251217; }
.campaign-popup-copy { padding: clamp(22px, 5vw, 54px); }
.campaign-popup-copy h2 { margin: 0; color: inherit; font-size: clamp(24px, 4vw, 42px); }
.campaign-popup-copy p { margin: 12px 0; white-space: pre-line; }
.home-campaign-popup .campaign-popup-copy a { display: inline-flex; margin-top: 12px; background: #fff; color: #811123; }
.campaign-popup-close {
  position: absolute;
  inset: 8px 8px auto auto;
  min-width: 44px;
  min-height: 44px;
  border: 1px solid #ffffff70;
  border-radius: 50%;
  color: #fff;
  background: #251217;
  font: 26px/1 system-ui;
  cursor: pointer;
}

@media (max-width: 720px) {
  .site-header.naksha-shop-header nav.naksha-home-mobile-menu:not([hidden]) {
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 12px;
    overflow: visible;
    padding-inline: 8px;
  }
  .site-header.naksha-shop-header .naksha-home-mobile-menu :is(a, button) {
    font-size: clamp(11px, 3.1vw, 14px);
    letter-spacing: 0;
    text-transform: none;
  }
  .naksha-home-mobile-menu [data-header-occasion] { color: #ff646c; }
  .naksha-mobile-navigation #main-nav > a[data-header-occasion] {
    display: flex;
    align-items: center;
    justify-content: center;
    grid-column: 1 / -1;
    padding-inline: 12px;
    border: 1px solid #71363c;
    border-radius: 4px;
    background: #211317;
  }
  .naksha-mobile-navigation .language-switch { background: #202020; border-color: #777; }
  .naksha-mobile-navigation .language-switch button { background: #202020; color: #fff; }
  .naksha-mobile-navigation .language-switch button[aria-pressed="true"] { background: #b51623; color: #fff; }
}

[data-seasonal-theme="eid"] {
  --paper:#fffdf3; --ink:#14372c; --muted:#4b5e51; --line:#dad8bd;
  --brand-dark:#123e31; --brand-action:#176447; --accent:#176447;
  --brand-red:#bd943d; --brand-surface:#f5efd8;
}
[data-seasonal-theme="puja"] {
  --paper:#fffbf0; --ink:#461e2b; --muted:#685057; --line:#e7d1c2;
  --brand-dark:#471b29; --brand-action:#842d43; --accent:#842d43;
  --brand-red:#bd764f; --brand-surface:#f9ebdf;
}
[data-seasonal-theme="boishakh"] {
  --paper:#fffdf8; --ink:#3d211b; --muted:#654d42; --line:#eddbc5;
  --brand-dark:#531c22; --brand-action:#a8232d; --accent:#a8232d;
  --brand-red:#d18b20; --brand-surface:#fff1d5;
}
html[data-seasonal-theme] body { background:var(--paper); color:var(--ink); }
html[data-seasonal-theme] .hero { background:linear-gradient(115deg,var(--paper),var(--brand-surface)); }
[data-seasonal-theme] { --seasonal-header-bg:var(--brand-dark); --seasonal-heading-text:var(--ink); --seasonal-header-text:#ffffff; }
html[data-seasonal-theme] :is(.catalog-notice,.custom-card,.custom-note) { background:var(--brand-surface); border-color:var(--line); }
html[data-seasonal-theme] .naksha-art-footer.footer-with-menus .naksha-footer-bar { background:var(--brand-dark); }
html[data-seasonal-theme] .story.story-classic { background:var(--brand-dark); }
html[data-seasonal-theme] :is(.coming-soon,.collections .collection-ready) { background:var(--brand-surface); }

[data-seasonal-theme][data-seasonal-font="sans"] { --serif:"Segoe UI","Nirmala UI",sans-serif; }
html[data-seasonal-theme][data-seasonal-font="sans"] main :is(h1,h2,h3) { font-family:var(--serif); }

html[data-seasonal-theme] :is(.site-header,.naksha-shop-header,.naksha-mobile-navigation) { background:var(--seasonal-header-bg,var(--brand-dark)); }
html[data-seasonal-theme] .naksha-shop-header :is(.naksha-header-tools,.naksha-header-search,.naksha-header-menu summary,[data-department]),
html[data-seasonal-theme] .naksha-shop-header .naksha-header-search input::placeholder,
html[data-seasonal-theme] .naksha-shop-header #main-nav > a:not([data-header-occasion],.storefront-sale-link) { color:var(--seasonal-header-text,#fff); }
html[data-seasonal-theme] main :is(.hero h1,.section-heading h2,.process-intro h2) { color:var(--seasonal-heading-text,var(--ink)); }

[data-seasonal-theme] { --seasonal-footer-text:#ffffff; }
html[data-seasonal-theme][data-seasonal-footer-colour] .naksha-art-footer .footer-menu-group::before { background:rgb(0 0 0 / 72%); }
html[data-seasonal-theme][data-seasonal-footer-colour] .naksha-art-footer :is(.footer-menu-group summary,.footer-menu-content a,.footer-brand-note,.naksha-footer-bar) { color:var(--seasonal-footer-text); }

.occasion-product-grid a { text-align:center; }
.occasion-collection-links { display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem 1rem; margin:1.25rem 0 0; }
.occasion-feature + .occasion-feature { margin-top:clamp(2rem,5vw,4.5rem); }


#main > [data-layout-hidden], [data-layout-link-hidden] { display:none !important; }
