html {
  scroll-behavior: smooth;
}

:root {
    --bl-scrollbar-size: 10px;
    --bl-scrollbar-thumb: rgba(17, 17, 17, 0.34);
    --bl-scrollbar-thumb-hover: rgba(17, 17, 17, 0.52);
}

/* Auto-hide scrollbars until the page is hovered or actively scrolling. */
* {
    scrollbar-width: none;
    scrollbar-color: transparent transparent;
    -ms-overflow-style: none;
}

html.bl-scrollbars-visible,
html.bl-scrollbars-visible *,
html:hover,
html:hover * {
    scrollbar-width: thin;
    scrollbar-color: var(--bl-scrollbar-thumb) transparent;
    -ms-overflow-style: auto;
}

*::-webkit-scrollbar {
    width: 0;
    height: 0;
}

html.bl-scrollbars-visible::-webkit-scrollbar,
html.bl-scrollbars-visible *::-webkit-scrollbar,
html:hover::-webkit-scrollbar,
html:hover *::-webkit-scrollbar {
    width: var(--bl-scrollbar-size);
    height: var(--bl-scrollbar-size);
}

*::-webkit-scrollbar-track {
    background: transparent;
}

*::-webkit-scrollbar-thumb {
    background: transparent;
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: padding-box;
}

html.bl-scrollbars-visible::-webkit-scrollbar-thumb,
html.bl-scrollbars-visible *::-webkit-scrollbar-thumb,
html:hover::-webkit-scrollbar-thumb,
html:hover *::-webkit-scrollbar-thumb {
    background: var(--bl-scrollbar-thumb);
}

html.bl-scrollbars-visible::-webkit-scrollbar-thumb:hover,
html.bl-scrollbars-visible *::-webkit-scrollbar-thumb:hover,
html:hover::-webkit-scrollbar-thumb:hover,
html:hover *::-webkit-scrollbar-thumb:hover {
    background: var(--bl-scrollbar-thumb-hover);
}

/* Currency selector pill style (all pages) */
.currency-inline {
  position: static !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

body > .currency-inline {
  position: fixed !important;
  left: 12px !important;
  bottom: 12px !important;
  z-index: 1400 !important;
}

.currency-inline span {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.currency-inline select {
  min-width: 68px;
  padding: 8px 28px 8px 14px;
  border: 1px solid #d9d5ce;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 600;
  color: #1a1a1a;
  background: #fff;
  cursor: pointer;
}

.currency-inline select:focus {
  outline: none;
  border-color: #1a1a1a;
}

[hidden]
{
  display: none !important;
}
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.navbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 72px;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color:#d3d3d3;
}
nav{
    position: absolute;
    left: 50%;
    text-align: center;
    transform: translateX(-50%);
    
}
nav ul{
    display: inline-block;
    list-style-type: none;
    margin: 0;
}
nav ul li{
    display: inline-block;
    margin: 10px;
}
nav ul li a{
    text-decoration: none;
    color: #111;
    font-weight: normal;
    font-family: Lucida Handwriting, cursive;

}
nav ul li a:hover{
    color: #000;
}
nav ul li a:active{
    color: #000;
    border-bottom: 2px solid #000;
}
nav ul li p{
    color: #555;
}
.nav-links {
    display: flex;
    gap: 18px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-search-item,
.nav-theme-item,
.nav-currency-item,
.bl-theme-toggle--mobile {
  display: none !important;
}

.bl-theme-toggle--desktop {
  display: inline-flex !important;
}

.mobile-currency-picker {
  display: none;
}

.nav-links a {
  position: relative;
  text-decoration: none;
  color: #111;
  padding-bottom: 6px;
  transition: color 0.25s ease;
}

.nav-links a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
  background: #111;
  transition: width 0.3s ease;
}

.nav-links a:hover::after,
.nav-links a:focus-visible::after,
.nav-links a.active::after {
  width: 100%;
}

.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a.active {
  color: #000;
}
.nav-right {
    display: flex;
    position: absolute;
    right: 200px;
    gap: 12px;
    align-items: center;
    top: 50%;
    transform: translateY(-50%);
}
.nav-right img {
    width: 30px;
    height: 30px;
}

.nav-currency select {
  height: 30px;
  border: 1px solid #999;
  background: #fff;
  font-size: 0.78rem;
  padding: 0 6px;
}

.cart-link {
  position: relative;
  display: inline-flex;
}

.cart-badge {
  position: absolute;
  top: -7px;
  right: -7px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: #d40000;
  color: #fff;
  border: 1px solid #fff;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
  pointer-events: none;
}

.has-dropdown {
  position: relative;
}
.dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  min-width: 150px;
  background-color: #d3d3d3;
  border-radius: 8px;
  list-style-type: none;
  padding: 4px 0;
  margin: 0px;
  z-index: 1200;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
}
.dropdown li {
  margin: 9px;
}
.dropdown li a {
  display: block;
  padding: 5px 8px;
  color: #111;
  text-decoration: none;
  font-family: Lucida Handwriting, cursive;
  font-size: 0.95rem;
  line-height: 1.2;
}

.dropdown li a:hover {
  background: #f3f3f3;
}

/* Hide mobile-only submenu back item on desktop/tablet */
.submenu-back-item {
  display: none !important;
}

.has-dropdown:hover .dropdown,
.has-dropdown:focus-within .dropdown {
  display: block;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
:root { --nav-bg: #d3d3d3; }

.navbar { background-color: var(--nav-bg); }
.dropdown { background-color: var(--nav-bg); }

.shop-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.chevron {
  display: inline-block;
  font-size: 1.35em;
  line-height: 1;
  transition: transform 0.25s ease;
}

.has-dropdown:hover .chevron,
.has-dropdown.open .chevron {
  transform: rotate(180deg);
}

.logo {
  position: absolute;
  left: 200px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
}
.logo-main {
  height: 42px;
  width: auto;
  filter: brightness(0) invert(1);
}
.logo-blx {
  height: 85px;
  width: auto;
  margin-left: 10px;
  filter: brightness(0) invert(1);
}
.logo img + img {
  margin-left: 5px; /* space between the two logos */
}

.nav-menu-toggle {
  display: none;
  width: 40px;
  height: 40px;
  border: 1px solid #bcbcbc;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-direction: column;
}

.nav-menu-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  background: #111;
}

.loading-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color:red; /* You can change this to match your website's background color */
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    z-index: 9999; /* Ensure it covers all other content */
    transition: opacity 1s ease; /* Smooth fade-out transition */
} 
.loading-screen img{
    width: 300px; /* Adjust the size of the loading GIF as needed */
    height: 300px;
}
   .loading-screen.hidden {
    opacity: 0;
    visibility: hidden; /* Hide the element from the layout */
}
.video-bg {
      position: fixed;
      top: 0; 
      left: 0;
      width: 100%;
      height: 100vh;
      object-fit: cover;
      z-index: 0;
}
html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  overflow-x: hidden;
}

.hero {
  position: relative;
  display: flex;
  text-align: center;
  padding: 80px 20px;
  width: 100%;
  min-height: 100vh;
  justify-content: center;
  align-items: center;
  z-index: 1; /* Ensure it appears above the video */
}
.hero h1 {
  color: #fff;
  font-size: 3.2rem;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 14px;
  letter-spacing: 1px;
  
}

.hero h1[data-site-homepage-title] {
  color: #b8b8b8;
}
.hero .hero-kicker {
  margin: 0 0 12px;
  color: #f1dfc5;
  font-size: 0.82rem;
  font-weight: 900;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}
.hero p {
  font-size: 1.35rem;
  margin-bottom: 25px;
  color: #ddd;
  font-weight: 400;
  line-height: 1.6;
  margin-bottom: 22px;
}
.hero-content{
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1;
}
.hero-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  text-transform: uppercase;
  font-family: 'Times New Roman', serif;
  font-size: 1.4rem;
  font-weight: 900;
  letter-spacing: normal;
  border: 2px solid #fff;
  border-radius: 50px;
  background: #fff;
  color: #000;
  text-decoration: none;
  transition: all 0.3s ease;
}
.hero-btn:hover {
  background-color: transparent;
  color: #fff;
  transform: scale(1.05);
}
.hero-btn img {
  width: 28px;
  height: 28px;
  filter: brightness(0);              /* black on white button */
  transition: filter 0.3s ease;
}

.hero-btn:hover img {
  filter: brightness(0) invert(1);    /* white on transparent hover */
}
@media (max-width: 992px) {
  .logo { left: 24px; }
  .logo-main { height: 36px; }
  .logo-blx { height: 56px; }

  .nav-links { gap: 14px; }
  nav ul li a { font-size: 0.95rem; }
  .nav-right { right: 24px; }

  .hero h1 { font-size: 2.2rem; }
  .hero p { font-size: 1.15rem; }
  .hero-btn { font-size: 1.05rem; padding: 10px 16px; }
}


@media (max-width: 768px) {
  .submenu-back-item {
    display: block !important;
  }

  .navbar {
    height: auto;
    min-height: 72px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    justify-content: space-between;
  }

  .logo {
    position: absolute;
    left: 50%;
    top: 36px;
    transform: translate(-50%, -50%);
    margin-right: 0;
    z-index: 1;
  }

  .logo-main {
    height: 30px;
  }

  .logo-blx {
    height: 42px;
    margin-left: 6px;
  }

  nav {
    display: none;
    order: 4;
    position: static;
    left: auto;
    transform: none;
    width: 100%;
    margin-top: 6px;
    text-align: left;
    border-top: 1px solid #c7c7c7;
    padding-top: 8px;
    overflow: visible;
    position: relative;
  }

  .navbar.is-mobile-open nav {
    display: block;
  }

  .nav-links {
    display: flex;
    flex-direction: column;
    gap: 2px;
    overflow: visible;
    white-space: normal;
  }

  .nav-links li {
    display: block;
    margin: 0;
    width: 100%;
  }

  .nav-links a {
    display: block;
    width: 100%;
    padding: 10px 4px;
  }

  .nav-right {
    order: 3;
    position: static;
    right: auto;
    top: auto;
    transform: none;
    margin-left: 0;
    gap: 8px;
  }

  .nav-right img {
    width: 24px;
    height: 24px;
  }

  .nav-menu-toggle {
    order: 1;
    display: inline-flex;
  }

  .has-dropdown {
    width: 100%;
    position: static;
  }

  .dropdown {
    display: none;
    position: static;
    width: 100%;
    min-width: 0;
    margin: 0;
    border-radius: 0;
    padding: 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    z-index: 2;
    overflow: visible;
  }

  .has-dropdown:hover .dropdown,
  .has-dropdown:focus-within .dropdown {
    display: none;
  }

  .has-dropdown.open .dropdown {
    display: block;
  }

  nav.submenu-open .nav-links > li:not(.has-dropdown) {
    display: none;
  }

  nav.submenu-open .has-dropdown > .shop-toggle {
    display: none;
  }

  nav.submenu-open .has-dropdown.open .dropdown {
    display: block;
    background: var(--nav-bg);
    border: 1px solid #bcbcbc;
    border-radius: 8px;
    padding: 4px 8px;
  }

  .submenu-back-item {
    margin: 0;
    border-bottom: 1px solid #c8c8c8;
  }

  .submenu-back-btn {
    width: 100%;
    border: 0;
    background: transparent;
    text-align: left;
    padding: 10px 4px;
    color: #111;
    font-size: 0.92rem;
    cursor: pointer;
    font-weight: 700;
    font-family: Lucida Handwriting, cursive;
    transition: none;
  }

  .submenu-back-btn:hover,
  .submenu-back-btn:focus-visible,
  .submenu-back-btn:active {
    transform: none;
    padding-left: 4px;
  }

  .dropdown li {
    margin: 0;
  }

  .dropdown li a {
    padding: 10px 4px;
    display: block;
    color: #111 !important;
    font-size: 0.95rem;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .dropdown li a:hover,
  .dropdown li a:focus-visible,
  .dropdown li a:active {
    padding-left: 4px;
    background-color: transparent;
  }

  .hero {
    padding: 100px 16px 40px;
  }

  .hero h1 { font-size: 1.8rem; }
  .hero p { font-size: 1.05rem; }
}

/* Currency selector fixed bottom-left (desktop + mobile) */
body > .currency-inline {
  position: fixed;
  left: 12px;
  bottom: 12px;
  z-index: 1400;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #bcbcbc;
  border-radius: 6px;
  padding: 6px 8px;
}

body > .currency-inline select {
  min-width: 74px;
}

.chat-widget {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 1500;
}

.chat-with-us-float {
  border: 1px solid rgba(255, 255, 255, 0.18);
  cursor: pointer;
  position: relative;
  z-index: 1502;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  height: 48px;
  width: 52px;
  overflow: hidden;
  padding: 0 14px 0 12px;
  border-radius: 999px;
  background: rgba(51, 52, 58, 0.96);
  color: #fff;
  text-decoration: none;
  font-size: 0.93rem;
  font-weight: 600;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
  transition: width 0.28s ease, background-color 0.2s ease;
}

.chat-widget.is-peek .chat-with-us-float,
.chat-with-us-float:hover,
.chat-with-us-float:focus-visible {
  width: 168px;
}

.chat-trigger-icon {
  width: 22px;
  height: 22px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  flex-shrink: 0;
}

.chat-trigger-label {
  white-space: nowrap;
  opacity: 0;
  transform: translateX(6px);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.chat-widget.is-peek .chat-trigger-label,
.chat-with-us-float:hover .chat-trigger-label,
.chat-with-us-float:focus-visible .chat-trigger-label {
  opacity: 1;
  transform: translateX(0);
}

.chat-widget-popup {
  position: absolute;
  right: 0;
  bottom: 62px;
  width: min(88vw, 376px);
  height: 498px;
  background: #ececef;
  color: #17181d;
  font-family: Segoe UI, Tahoma, Arial, sans-serif;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 14px 30px rgba(9, 10, 14, 0.28);
  display: grid;
  grid-template-rows: auto auto 1fr auto;
}

.chat-widget-head {
  background: #1d1e24;
  color: #fff;
  padding: 18px 24px 12px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.chat-widget-head h4 {
  margin: 0;
  font-size: 1.85rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.2px;
}

.chat-widget-head p {
  margin: 12px 0 0;
  color: #c8cad3;
  font-size: 0.9rem;
}

.chat-widget-close {
  border: 0;
  background: transparent;
  color: #fff;
  font-size: 1.55rem;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}

.chat-widget-subhead {
  background: #1d1e24;
  color: #fff;
  font-size: 0.92rem;
  font-weight: 600;
  margin-top: 0;
  padding: 12px 24px 10px;
  position: relative;
  z-index: 2;
}

.chat-widget-subhead::after {
  content: "";
  position: absolute;
  left: -12%;
  right: -12%;
  bottom: -16px;
  height: 30px;
  background: #1d1e24;
  border-radius: 0 0 56% 56%;
  z-index: -1;
  pointer-events: none;
}

.chat-widget-body {
  background: #ececef;
  padding: 34px 20px 14px;
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  align-items: start;
  align-content: start;
}

.chat-widget-badge {
  width: 30px;
  height: 30px;
  object-fit: cover;
  object-position: center;
  margin-top: 6px;
  filter: brightness(0) saturate(100%);
}

.chat-widget-message {
  background: #daddE5;
  border-radius: 10px;
  padding: 14px 16px;
  color: #2e3340;
  font-size: 0.88rem;
  line-height: 1.45;
}

.chat-widget-input-row {
  border-top: 1px solid #d3d5db;
  background: #ececef;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 12px 16px;
  min-height: 58px;
  position: relative;
}

.chat-widget-input {
  border: 0;
  background: transparent;
  color: #191c22;
  font-size: 0.92rem;
  outline: none;
}

.chat-widget-input::placeholder {
  color: #72809d;
  opacity: 1;
}

.chat-widget-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.chat-widget-emoji {
  border: 0;
  background: transparent;
  color: #626a79;
  font-size: 1.05rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.chat-widget-emoji:hover {
  opacity: 0.75;
}

.chat-widget-send {
  border: 0;
  background: transparent;
  color: #4c5260;
  font-size: 1.25rem;
  font-weight: 700;
  cursor: pointer;
}

.chat-emoji-panel {
  position: absolute;
  right: 10px;
  bottom: calc(100% + 8px);
  width: 292px;
  max-height: 320px;
  background: #ffffff;
  border: 1px solid #d2d6df;
  border-radius: 10px;
  padding: 0;
  box-shadow: 0 10px 24px rgba(8, 10, 14, 0.18);
  z-index: 4;
  overflow: hidden;
}

.chat-emoji-tabs {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  border-bottom: 1px solid #e3e6ee;
  background: #f7f8fb;
}

.chat-emoji-tab {
  border: 0;
  background: transparent;
  height: 32px;
  font-size: 0.95rem;
  cursor: pointer;
  color: #677084;
}

.chat-emoji-tab.is-active {
  background: #ffffff;
  color: #2f3748;
}

.chat-emoji-grid {
  padding: 8px;
  max-height: 264px;
  overflow-y: auto;
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 4px;
}

.chat-emoji-item {
  border: 0;
  background: transparent;
  height: 28px;
  border-radius: 6px;
  font-size: 1.03rem;
  cursor: pointer;
}

.chat-emoji-item:hover {
  background: #f0f3f9;
}

.chat-widget-fab-close {
  position: absolute;
  right: 8px;
  bottom: -80px;
  width: 58px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  background: #1f2026;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 10px 18px rgba(0, 0, 0, 0.3);
}

.chat-with-us-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #2dd85e;
  box-shadow: 0 0 0 2px rgba(44, 44, 44, 0.95);
  margin-left: auto;
}

@media (max-width: 768px) {
  .chat-widget {
    right: 12px;
    bottom: 12px;
  }

  .chat-with-us-float {
    width: 48px;
    height: 44px;
    padding: 0 12px 0 10px;
    font-size: 0.86rem;
  }

  .chat-widget-popup {
    width: min(90vw, 376px);
    height: 498px;
    bottom: 54px;
  }

  .chat-widget-head h4 {
    font-size: 1.9rem;
  }

  .chat-widget-head p,
  .chat-widget-subhead,
  .chat-widget-message,
  .chat-widget-input {
    font-size: 0.88rem;
  }

  .about-hero {
    grid-template-columns: 1fr;
    min-height: calc(100vh - 72px);
  }

  .about-hero-image {
    min-height: calc(50vh - 36px);
  }

  .about-hero-content h1 {
    font-size: clamp(1.2rem, 7vw, 1.9rem);
  }

  .about-marquee-track {
    padding: 12px 0;
  }

  .about-marquee-set {
    gap: 28px;
    padding-right: 28px;
  }

  .about-marquee-track span {
    font-size: clamp(1.05rem, 6vw, 1.65rem);
  }

  .about-story-block div {
    padding: 22px 18px;
  }

  .about-gallery {
    grid-template-columns: 1fr;
  }

  .about-gallery img {
    height: 34vh;
  }
}

.search-page {
  min-height: 100vh;
  padding: clamp(92px, 11vh, 128px) 24px 48px;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0) 28%),
    radial-gradient(circle at 82% 14%, rgba(204, 179, 142, 0.24) 0%, rgba(204, 179, 142, 0) 26%),
    linear-gradient(180deg, #f5f1ea 0%, #ece6dd 52%, #e0dad2 100%);
}

.search-shell {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  gap: 24px;
}

.search-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.95fr);
  gap: 20px;
  align-items: stretch;
}

.search-copy,
.search-status-card,
.search-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(17, 17, 17, 0.08);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 20px 40px rgba(33, 26, 20, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.search-copy {
  padding: clamp(28px, 4vw, 44px);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 247, 236, 0.54)),
    radial-gradient(circle at top right, rgba(196, 166, 121, 0.18), rgba(196, 166, 121, 0));
}

.search-kicker,
.search-status-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  color: #61594f;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.search-copy h1 {
  color: #111;
  font-size: clamp(2.6rem, 5vw, 4.8rem);
  line-height: 0.94;
  max-width: 10ch;
  margin: 0 0 14px;
}

.search-copy p {
  margin: 0 0 24px;
  max-width: 56ch;
  color: #453f38;
  font-size: 1rem;
  line-height: 1.72;
}

.search-presets,
.search-shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.search-preset {
  border: 0;
  background: #111;
  color: #fff;
  border-radius: 999px;
  padding: 10px 16px;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.search-preset:hover,
.search-preset:focus-visible {
  background: #fff;
  color: #111;
  transform: translateY(-1px);
}

.search-status-card {
  padding: clamp(26px, 3vw, 34px);
  display: flex;
  flex-direction: column;
  background:
    linear-gradient(180deg, rgba(34, 29, 25, 0.96), rgba(19, 18, 16, 0.92)),
    radial-gradient(circle at top left, rgba(212, 176, 129, 0.18), rgba(212, 176, 129, 0));
  color: #f4ede4;
}

.search-status-card .search-status-kicker {
  color: rgba(244, 237, 228, 0.72);
}

.search-status-card h2 {
  margin: 0 0 12px;
  font-size: clamp(1.6rem, 3vw, 2.3rem);
  line-height: 1.02;
}

.search-status-card p {
  margin: 0 0 22px;
  color: rgba(244, 237, 228, 0.82);
  line-height: 1.7;
}

.search-shortcuts {
  margin-top: auto;
}

.search-shortcuts a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid rgba(244, 237, 228, 0.22);
  border-radius: 999px;
  color: #f4ede4;
  text-decoration: none;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.search-shortcuts a:hover,
.search-shortcuts a:focus-visible {
  border-color: #f4ede4;
  background: #f4ede4;
  color: #111;
}

.search-panel {
  padding: clamp(24px, 4vw, 34px);
}

.search-label {
  display: block;
  margin-bottom: 10px;
  color: #60594f;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.search-input-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  padding: 8px 10px 8px 18px;
  border: 1px solid rgba(17, 17, 17, 0.12);
  border-radius: 18px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.search-input-wrap:focus-within {
  border-color: #111;
  box-shadow: 0 0 0 4px rgba(17, 17, 17, 0.06);
}

.search-input-wrap input {
  flex: 1 1 auto;
  width: 100%;
  max-width: none;
  min-width: 0;
  height: 52px;
  border: 0;
  border-radius: 0;
  padding: 0;
  font-size: 1rem;
  outline: none;
  background: transparent;
}

.search-input-wrap input:focus {
  border-color: transparent;
}

.search-input-wrap input::placeholder {
  color: #7a736a;
}

.search-clear-btn {
  flex: 0 0 auto;
  border: 0;
  background: #111;
  color: #fff;
  border-radius: 999px;
  padding: 10px 16px;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.search-clear-btn:hover,
.search-clear-btn:focus-visible {
  background: #2b2b2b;
  transform: translateY(-1px);
}

.search-meta {
  color: #4e493f;
  margin-bottom: 18px;
  font-size: 0.96rem;
}

.search-history {
  margin-bottom: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(17, 17, 17, 0.08);
}

.search-history-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.search-history-head h2 {
  margin: 0;
  font-size: 0.98rem;
  color: #111;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.search-history-head button {
  border: 1px solid rgba(17, 17, 17, 0.14);
  background: transparent;
  border-radius: 999px;
  padding: 8px 12px;
  color: #111;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.search-history-head button:hover,
.search-history-head button:focus-visible {
  border-color: #111;
  background: rgba(17, 17, 17, 0.05);
}

.history-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.history-chip {
  border: 1px solid rgba(17, 17, 17, 0.12);
  background: #fff;
  color: #111;
  border-radius: 999px;
  padding: 7px 12px;
  cursor: pointer;
  font-size: 0.84rem;
  text-transform: capitalize;
  transition: border-color 0.2s ease, transform 0.2s ease;
}

.history-chip:hover,
.history-chip:focus-visible {
  border-color: #111;
  transform: translateY(-1px);
}

.search-results-wrap {
  display: grid;
  gap: 18px;
}

.search-results-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  padding-top: 18px;
  border-top: 1px solid rgba(17, 17, 17, 0.08);
}

.search-results-head h2 {
  margin: 0;
  font-size: 0.98rem;
  color: #111;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.search-results-note {
  margin: 0;
  color: #6d675f;
  font-size: 0.9rem;
}

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

.search-card {
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(17, 17, 17, 0.08);
  border-radius: 22px;
  padding: 14px;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
  position: relative;
  cursor: pointer;
  --quick-top: 208px;
  --quick-inset: 14px;
  min-width: 0;
  box-shadow: 0 12px 26px rgba(28, 22, 16, 0.06);
}

.search-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 36px rgba(28, 22, 16, 0.1);
}

.product-card-media {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.product-card-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: opacity 0.36s ease, transform 0.36s ease;
  will-change: opacity, transform;
  display: block;
}

.product-card-image.hover-img {
  opacity: 0;
  pointer-events: none;
}

.search-card .product-card-media {
  height: min(25vw, 280px);
  min-height: 220px;
  aspect-ratio: 1 / 1;
  background: linear-gradient(180deg, rgba(247, 244, 239, 0.96), rgba(236, 230, 222, 0.92));
  border-radius: 18px;
}

.search-card .product-card-image {
  padding: 12px;
  border-radius: 18px;
}

.search-card h3 {
  margin-top: 14px;
  color: #111;
  font-size: 1.08rem;
  letter-spacing: 0.02em;
}

.search-card p {
  margin: 4px 0 0;
  color: #555;
  font-size: 0.92rem;
}

.product-price {
  color: #000;
  font-weight: 800;
  font-size: 1.08rem;
  text-align: center;
  margin-top: 6px;
}

.product-price.is-sale,
.product-detail-price.is-sale,
.quick-v.is-sale,
.product-related-card p.is-sale {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
}

.product-price-sale {
  color: #111;
  font-weight: 900;
}

.product-price-compare {
  color: #8a8177;
  font-size: 0.82em;
  font-weight: 700;
  text-decoration: line-through;
}

.product-quick-view {
  position: absolute;
  top: auto;
  left: var(--quick-inset);
  right: var(--quick-inset);
  bottom: var(--quick-inset);
  margin: 0;
  border: 0;
  background: rgba(17, 17, 17, 0.92);
  color: #fff;
  text-transform: uppercase;
  font-size: 0.72rem;
  letter-spacing: 0.6px;
  cursor: pointer;
  height: 34px;
  padding: 0 10px;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.22s ease, transform 0.22s ease, background-color 0.22s ease, color 0.22s ease;
  z-index: 3;
}

.shop-card:hover .product-quick-view,
.search-card:hover .product-quick-view {
  opacity: 1;
  transform: translateY(0);
}

.product-quick-view:hover {
  background: #111;
  color: #fff;
}

.search-empty {
  color: #111;
  margin: 0;
  padding: 20px 22px;
  border-radius: 18px;
  background: rgba(17, 17, 17, 0.05);
}

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

  .search-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .search-page {
    padding-inline: 18px;
  }

  .search-copy,
  .search-status-card,
  .search-panel {
    border-radius: 22px;
  }

  .search-input-wrap {
    flex-direction: column;
    align-items: stretch;
    padding: 14px;
  }

  .search-input-wrap input {
    height: 46px;
  }

  .search-clear-btn {
    width: 100%;
  }

  .search-results-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 600px) {
  .search-results {
    grid-template-columns: 1fr;
  }

  .search-card .product-card-media {
    min-height: 240px;
  }
}

.shop-page {
  min-height: 100vh;
  padding: 108px 24px 40px;
  background: #e7e7e7;
}

.shop-page.shop-home-mode {
  padding: 0;
  background: #000;
}

body.shop-home-mode .navbar {
  background: transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.shop-home-mode .logo-main {
  height: 42px;
}

body.shop-home-mode .logo-blx {
  height: 58px;
}

.shop-home-landing {
  position: relative;
  min-height: calc(100vh - 72px);
  overflow: hidden;
  margin: 0;
  background: #efefef;
}

.shop-page.shop-home-mode .shop-home-landing {
  min-height: 100vh;
  margin: 0;
}

.shop-home-hero {
  position: relative;
  height: calc(100vh - 72px);
  overflow: hidden;
  background: #111;
}

.shop-home-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 28%;
  transition: opacity 0.44s ease;
  display: block;
}

.shop-home-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.58));
}

.shop-home-content {
  position: relative;
  z-index: 2;
  height: calc(100vh - 72px);
  display: grid;
  place-content: end center;
  text-align: center;
  gap: 10px;
  padding: 36px 20px 58px;
}

.shop-home-eyebrow {
  margin: 0;
  color: #f1f1f1;
  font-size: 0.62rem;
  text-transform: uppercase;
  letter-spacing: 1.8px;
  font-weight: 700;
}

.shop-home-content h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(0.9rem, 1.7vw, 1.15rem);
  text-transform: uppercase;
  letter-spacing: 0.85px;
  line-height: 1.2;
  position: absolute;
  left: 50%;
  top: 70%;
  transform: translateX(-50%);
  width: min(92vw, 900px);
  text-align: center;
}

.shop-home-content h1 {
  display: none;
}

.shop-home-content.is-slide-middle h1 {
  display: block;
}

.shop-home-content p {
  margin: 0;
  color: #e7e7e7;
  font-size: 0.78rem;
  line-height: 1.45;
}

.shop-home-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  min-width: 160px;
  padding: 0 18px;
  border: 1px solid #ffffff;
  background: #ffffff;
  color: #111111;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.95rem;
  letter-spacing: 0.8px;
  font-weight: 700;
  transition: background-color 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.shop-home-cta-row {
  position: absolute;
  left: 50%;
  top: 54%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}

.shop-home-btn-ghost,
.shop-home-btn-solid {
  display: none;
}

.shop-home-content.is-slide-first .shop-home-btn-ghost,
.shop-home-content.is-slide-first .shop-home-btn-solid {
  display: inline-flex;
}

.shop-home-content.is-slide-last .shop-home-btn-solid {
  display: inline-flex;
}

.shop-home-btn-ghost {
  min-width: 152px;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid transparent;
  background: transparent;
  color: #ffffff;
}

.shop-home-btn-solid {
  min-width: 168px;
  min-height: 44px;
}

.shop-home-btn:hover {
  background: transparent;
  color: #ffffff;
  opacity: 1;
}

.shop-home-hero-dots {
  position: absolute;
  left: 50%;
  bottom: 32px;
  transform: translateX(-50%);
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.shop-home-hero-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 0;
  background: rgba(255, 255, 255, 0.82);
  cursor: pointer;
  padding: 0;
  opacity: 0.9;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.shop-home-hero-dot:hover {
  opacity: 1;
  transform: scale(1.08);
}

.shop-home-hero-dot:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.9);
  outline-offset: 4px;
}

.shop-home-hero-dot.is-active {
  width: 14px;
  height: 14px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  background: transparent;
  position: relative;
  opacity: 1;
}

.shop-home-hero-dot.is-active::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  transform: translate(-50%, -50%);
}

.shop-home-hero-dot.is-active::after {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: 50%;
  background: conic-gradient(from -90deg, #ffffff 0 74deg, transparent 74deg 360deg);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 1px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 1px));
  animation: shop-home-dot-spin var(--shop-hero-slide-ms, 4.8s) linear infinite;
}

@keyframes shop-home-dot-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.shop-home-section {
  padding: 28px 34px 20px;
  background: #efefef;
}

.shop-home-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.shop-home-section-head-newin {
  align-items: flex-end;
}

.shop-home-mini {
  margin: 0;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 800;
  color: #1a1a1a;
}

.shop-home-section-head h2 {
  margin: 4px 0 0;
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.9px;
  font-weight: 700;
  color: #191919;
}

.shop-home-link {
  color: #161616;
  text-decoration: underline;
  text-underline-offset: 3px;
  font-size: 0.64rem;
  text-transform: uppercase;
  letter-spacing: 0.9px;
}

.shop-home-section-head-standard {
  justify-content: flex-start;
  text-align: left;
  margin-bottom: 16px;
}

.shop-home-title-link {
  display: inline-block;
  margin-top: 8px;
  color: #161616;
  text-decoration: underline;
  text-underline-offset: 3px;
  font-size: 1.04rem;
  letter-spacing: 0;
  line-height: 1.25;
  font-weight: 500;
}

.shop-home-section-head-standard .shop-home-mini {
  font-size: 0.8rem;
  letter-spacing: 1.2px;
  font-weight: 800;
}

.shop-home-grid {
  display: grid;
  gap: 18px;
}

.shop-home-grid-four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.shop-home-card {
  text-decoration: none;
  color: inherit;
}

.shop-home-card img {
  width: 100%;
  height: 320px;
  object-fit: contain;
  background: #efefef;
}

.shop-home-card h3 {
  margin: 9px 0 0;
  text-align: center;
  font-size: 0.6rem;
  text-transform: uppercase;
  letter-spacing: 0.65px;
  line-height: 1.35;
}

.shop-home-card p {
  margin: 3px 0 0;
  text-align: center;
  font-size: 0.66rem;
  color: #222;
  line-height: 1.35;
}

.shop-home-card .shop-home-card-sub {
  font-size: 0.62rem;
  color: #4a4a4a;
}

.shop-home-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  margin-top: 14px;
}

.shop-home-split-card {
  min-height: 0;
  aspect-ratio: 498 / 746.72;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 8px;
  padding: 24px 30px;
  text-decoration: none;
  color: #fff;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #efefef;
}

.shop-home-split-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.58));
}

.shop-home-split-card span,
.shop-home-split-card strong {
  position: relative;
  z-index: 1;
}

.shop-home-split-card span {
  font-size: 0.64rem;
  text-transform: uppercase;
  letter-spacing: 1.8px;
}

.shop-home-split-card strong {
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.9px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.85);
  width: fit-content;
}

.shop-home-footer {
  margin-top: 0;
  background: #0d0e12;
  color: #f2f2f2;
  padding: 56px 54px 46px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-areas:
    brand quick shop news
    meta meta meta news
    copy copy copy copy;
  gap: 46px 34px;
}

.shop-home-footer-logo {
  width: 118px;
  height: auto;
  margin-bottom: 18px;
  filter: brightness(0) invert(1);
}

.shop-home-footer h3 {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 1.8px;
  margin-bottom: 16px;
  color: #ffffff;
}

.shop-home-footer p,
.shop-home-footer a {
  font-size: 0.96rem;
  color: #ffffff;
  line-height: 1.7;
}

.shop-home-footer a {
  display: block;
  text-decoration: none;
  margin-bottom: 10px;
}

.shop-home-newsletter {
  margin-top: 12px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  display: grid;
  grid-template-columns: 1fr 56px;
  align-items: center;
}

.shop-home-newsletter input {
  height: 46px;
  border: 0;
  background: transparent;
  color: #f4f4f4;
  padding: 0 16px;
  font-size: 1rem;
}

.shop-home-newsletter button {
  height: 46px;
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  font-size: 1.4rem;
}

.shop-home-footer-brand {
  grid-area: brand;
}

.shop-home-footer-brand p {
  max-width: 420px;
  margin: 0 0 22px;
}

.shop-home-footer-social {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0;
  overflow: hidden;
}

.shop-home-footer-socials {
  display: flex;
  align-items: center;
  gap: 10px;
}

.shop-home-footer-social img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shop-home-footer-links:nth-of-type(2) {
  grid-area: quick;
}

.shop-home-footer-links:nth-of-type(3) {
  grid-area: shop;
}

.shop-home-footer-links a {
  text-transform: uppercase;
  font-size: 0.92rem;
}

.shop-home-footer-news {
  grid-area: news;
  align-self: start;
}

.shop-home-footer-news p {
  font-size: 0.9rem;
  text-transform: uppercase;
  margin: 0;
}

.shop-home-footer-news p a {
  display: inline;
  text-decoration: underline;
  text-underline-offset: 2px;
  margin: 0;
}

.shop-home-footer-meta {
  grid-area: meta;
  align-self: start;
  padding-top: 6px;
}

.shop-home-footer-meta p {
  margin: 0 0 12px;
  text-transform: uppercase;
  font-size: 0.95rem;
}

.shop-home-hours {
  font-weight: 700;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

.shop-home-footer-brand .shop-home-hours {
  margin: 14px 0 0;
  text-transform: uppercase;
  font-size: 0.9rem;
  max-width: 460px;
}

.shop-home-directions {
  text-transform: uppercase;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  letter-spacing: 0.9px;
}

.shop-home-footer-copy {
  grid-area: copy;
  margin: 8px 0 0;
  opacity: 0.62;
  font-size: 0.9rem !important;
}

.shop-home-cta-band {
  background: #efefef;
  text-align: center;
  padding: 32px 14px 34px;
}

.shop-home-cta-band p {
  margin: 0;
  font-size: 0.64rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
}

.shop-home-cta-band a {
  display: inline-block;
  margin-top: 12px;
  color: #141414;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-size: 0.66rem;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}

.shop-home-section-tight {
  padding-top: 0;
  padding-bottom: 24px;
}

.shop-home-split-secondary {
  margin-top: 0;
}

body.shop-collection-mode .navbar {
  background: rgba(15, 15, 16, 0.78);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

body.shop-collection-mode .nav-links a,
body.shop-collection-mode .dropdown li a {
  color: #f7f1e7;
}

body.shop-collection-mode .nav-links a::after {
  background: #f7f1e7;
}

body.shop-collection-mode .dropdown {
  background: rgba(18, 18, 20, 0.96);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

body.shop-collection-mode .dropdown li a:hover {
  background: rgba(255, 255, 255, 0.08);
}

.shop-page.shop-collection-mode {
  padding-top: 96px;
  background:
    radial-gradient(circle at 10% 10%, rgba(184, 149, 96, 0.18), transparent 28%),
    radial-gradient(circle at 92% 6%, rgba(42, 31, 20, 0.08), transparent 20%),
    linear-gradient(180deg, #f6f0e7 0%, #efe7db 48%, #f8f4ee 100%);
}

.shop-category-shell {
  display: grid;
  gap: 18px;
  margin: 0 auto 22px;
}

.shop-category-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.16fr) minmax(280px, 0.74fr);
  gap: 24px;
  align-items: start;
  padding: 28px;
  border: 1px solid rgba(42, 31, 20, 0.12);
  border-radius: 32px;
  overflow: hidden;
  background:
    radial-gradient(circle at top left, rgba(197, 158, 103, 0.16), transparent 34%),
    linear-gradient(140deg, rgba(255, 255, 255, 0.96), rgba(244, 236, 225, 0.94));
  box-shadow: 0 20px 46px rgba(58, 38, 16, 0.1);
}

.shop-category-hero::after {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  right: -120px;
  top: -160px;
  border-radius: 50%;
  border: 1px solid rgba(114, 84, 49, 0.08);
  pointer-events: none;
}

.shop-category-copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 18px;
  justify-content: center;
  min-width: 0;
}

.shop-category-kicker {
  margin: 0;
  color: #8e6540;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.3em;
  text-transform: uppercase;
}

.shop-category-breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.82rem;
  color: #68584a;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.shop-category-title {
  margin: 0;
  color: #1d1610;
  font-family: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Garamond, Georgia, serif;
  font-size: clamp(2.8rem, 6vw, 4.8rem);
  line-height: 0.96;
  letter-spacing: -0.05em;
  text-transform: uppercase;
}

.shop-category-description {
  max-width: 58ch;
  margin: 0;
  color: #4f4337;
  font-size: 1rem;
  line-height: 1.72;
}

.shop-category-featured {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.shop-category-feature-pill {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 15px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(255, 255, 255, 0.7);
  color: #241b14;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.shop-category-feature-pill.is-muted {
  color: #6a5b4f;
  background: rgba(255, 255, 255, 0.5);
}

.shop-category-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.shop-category-metric {
  padding: 16px 18px;
  border-radius: 22px;
  border: 1px solid rgba(46, 35, 24, 0.1);
  background: rgba(255, 255, 255, 0.62);
  min-width: 0;
}

.shop-category-metric span {
  display: block;
  margin-bottom: 8px;
  color: #786759;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-weight: 700;
}

.shop-category-metric strong {
  display: block;
  color: #19120d;
  font-size: 1.08rem;
  line-height: 1.3;
}

.shop-category-media {
  position: relative;
  width: min(100%, 420px);
  height: clamp(340px, 30vw, 460px);
  border-radius: 28px;
  overflow: hidden;
  background: #141414;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  justify-self: end;
}

.shop-category-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.58));
}

.shop-category-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 28%;
  display: block;
}

.shop-category-media-card {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 1;
  padding: 20px 22px;
  border-radius: 24px;
  background: rgba(17, 17, 18, 0.64);
  border: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.shop-category-shell[data-category="accessories"] .shop-category-media-card {
  padding: 16px 18px;
  border-radius: 20px;
}

.shop-category-shell[data-category="accessories"] .shop-category-media-label {
  margin-bottom: 6px;
  font-size: 0.68rem;
}

.shop-category-shell[data-category="accessories"] .shop-category-media-card strong {
  margin-bottom: 8px;
  font-size: 1.08rem;
}

.shop-category-shell[data-category="accessories"] .shop-category-media-card p:last-child {
  font-size: 0.88rem;
  line-height: 1.52;
}

.shop-category-media-label {
  margin: 0 0 8px;
  color: rgba(255, 244, 230, 0.74);
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-weight: 700;
}

.shop-category-media-card strong {
  display: block;
  margin-bottom: 10px;
  color: #fff7ec;
  font-size: 1.22rem;
  font-family: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Garamond, Georgia, serif;
  letter-spacing: 0.01em;
}

.shop-category-media-card p:last-child {
  margin: 0;
  color: rgba(255, 244, 230, 0.84);
  font-size: 0.94rem;
  line-height: 1.62;
}

.shop-category-curation {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.shop-category-curation-card {
  padding: 20px 22px;
  border-radius: 24px;
  border: 1px solid rgba(46, 35, 24, 0.1);
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 12px 24px rgba(58, 38, 16, 0.06);
}

.shop-category-curation-label {
  margin: 0 0 12px;
  color: #8a6442;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  font-weight: 800;
}

.shop-category-curation-card strong {
  display: block;
  margin-bottom: 10px;
  color: #1d1610;
  font-size: 1.08rem;
  line-height: 1.4;
}

.shop-category-curation-card p:last-child {
  margin: 0;
  color: #5e5246;
  line-height: 1.68;
}

.shop-category-palette {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 12px;
}

.shop-category-swatch {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(248, 243, 236, 0.92);
  color: #261d16;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.shop-category-swatch i {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--swatch-fill, #d8d0c5);
  border: 1px solid var(--swatch-border, #928578);
  flex: 0 0 auto;
}

.shop-category-swatch.is-empty {
  color: #6e6256;
}

.shop-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid rgba(42, 31, 20, 0.12);
  border-radius: 24px;
  padding: 16px 20px;
  margin-bottom: 14px;
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 12px 24px rgba(58, 38, 16, 0.06);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.shop-toolbar-copy {
  display: grid;
  gap: 6px;
}

.shop-products-count {
  margin: 0;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  color: #21170f;
  font-weight: 800;
  white-space: nowrap;
}

.shop-filter-summary {
  margin: 0;
  color: #5f5347;
  font-size: 0.9rem;
  line-height: 1.55;
}

.shop-sort-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.shop-sort-copy {
  display: grid;
  gap: 4px;
}

.shop-sort-kicker {
  margin: 0;
  color: #8a6442;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  font-weight: 800;
}

.shop-sort-caption {
  margin: 0;
  color: #64584d;
  font-size: 0.9rem;
  line-height: 1.55;
}

.shop-sort-wrap {
  display: block;
  width: min(320px, 100%);
  position: relative;
  border: 1px solid rgba(42, 31, 20, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.72);
  overflow: hidden;
  box-shadow: 0 12px 24px rgba(58, 38, 16, 0.06);
}

.shop-sort-wrap::after {
  content: "\25BE";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #111;
  font-size: 0.9rem;
  pointer-events: none;
}

.shop-sort-wrap select {
  width: 100%;
  height: 48px;
  border: 0;
  border-radius: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  color: #111;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-weight: 800;
  padding: 0 42px 0 16px;
  cursor: pointer;
}

.shop-header {
  width: 100%;
  margin: 0 0 16px;
}

.shop-header h1 {
  color: #111;
  font-size: 2rem;
  margin-bottom: 6px;
}

.shop-header p {
  color: #333;
}

.shop-grid {
  width: 100%;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  min-width: 0;
}

.shop-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  align-items: start;
}

.shop-filters {
  background:
    radial-gradient(circle at top left, rgba(197, 158, 103, 0.12), transparent 34%),
    linear-gradient(180deg, #f7f0e6 0%, #f2e9dc 100%);
  border: 0;
  border-right: 1px solid rgba(46, 35, 24, 0.1);
  border-radius: 0 28px 28px 0;
  padding: 22px 18px 18px;
  position: fixed;
  left: 0;
  top: 72px;
  width: min(388px, 34vw);
  height: calc(100vh - 72px);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  z-index: 1600;
  transform: translateX(-105%);
  transition: transform 0.28s ease;
  box-shadow: 26px 0 54px rgba(25, 17, 12, 0.16);
}

.shop-filters-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 10px;
}

.shop-filters-title-wrap {
  display: grid;
  gap: 6px;
}

.shop-filters-kicker {
  margin: 0;
  color: #8a6442;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.26em;
  font-weight: 800;
}

.shop-filters-head strong {
  color: #1c140e;
  font-size: 1.6rem;
  line-height: 1;
  font-family: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Garamond, Georgia, serif;
  letter-spacing: 0.02em;
  text-transform: none;
}

.shop-filters-caption {
  margin: 0 0 18px;
  color: #67584b;
  font-size: 0.9rem;
  line-height: 1.65;
  max-width: 29ch;
}

.shop-layout.filters-open .shop-filters {
  transform: translateX(0);
}

body.shop-filters-open::before {
  content: "";
  position: fixed;
  inset: 0;
  background: rgba(13, 10, 8, 0.36);
  backdrop-filter: blur(2.6px);
  -webkit-backdrop-filter: blur(2.6px);
  z-index: 1500;
  pointer-events: auto;
}

body.shop-filters-open {
  overflow: hidden;
}

.shop-filter-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0;
  border: 0;
  background: transparent;
  color: #17110c;
  height: auto;
  padding: 0;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 0.73rem;
  font-weight: 800;
  cursor: pointer;
}

.shop-filter-toggle::before {
  content: "+";
  display: inline-block;
  margin-right: 8px;
  font-size: 0.94rem;
  line-height: 1;
}

.shop-filter-close {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.62);
  color: #17110c;
  font-size: 1.3rem;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.shop-filter-close:hover,
.shop-filter-close:focus-visible {
  background: rgba(255, 255, 255, 0.92);
  border-color: rgba(46, 35, 24, 0.22);
  transform: translateY(-1px);
}

.shop-filters h3 {
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  color: #222;
  margin-bottom: 8px;
  margin-top: 10px;
}

.shop-filter-group {
  margin-bottom: 16px;
  padding: 16px 15px;
  border-radius: 24px;
  border: 1px solid rgba(46, 35, 24, 0.08);
  background: rgba(255, 255, 255, 0.56);
  box-shadow: 0 12px 26px rgba(58, 38, 16, 0.04);
}

.filter-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: #21170f;
  cursor: pointer;
  font-weight: 800;
}

.filter-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(23, 17, 12, 0.06);
  font-size: 1rem;
  line-height: 1;
}

.filter-body[hidden] {
  display: none;
}

.filter-body {
  margin-top: 14px;
}

.filter-check {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  font-size: 0.82rem;
  color: #44382d;
  font-weight: 700;
}

.filter-check input[type=checkbox] {
  appearance: none;
  width: 40px;
  height: 22px;
  border-radius: 999px;
  background: #d9d1c6;
  position: relative;
  cursor: pointer;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.filter-check input[type=checkbox]::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  top: 3px;
  left: 3px;
  box-shadow: 0 4px 8px rgba(17, 17, 17, 0.16);
  transition: left 0.2s ease;
}

.filter-check input[type=checkbox]:checked {
  background: #17110c;
  box-shadow: 0 8px 18px rgba(23, 17, 12, 0.16);
}

.filter-check input[type=checkbox]:checked::after {
  left: 21px;
}

.filter-price-note {
  font-size: 0.82rem;
  color: #5c5044;
  margin: 0 0 16px;
  font-weight: 700;
  line-height: 1.55;
}

.filter-price-labels {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 12px 2px 10px;
  color: #7a6c5f;
  font-size: 0.66rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-weight: 800;
}

.shop-filters .filter-price {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 0;
}

.price-input-wrap {
  position: relative;
  display: block;
}

.currency-prefix {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.74rem;
  color: #5a4a3d;
  pointer-events: none;
}

.shop-filters .filter-price input {
  height: 46px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  border-radius: 16px;
  padding: 0 12px 0 34px;
  background: rgba(255, 255, 255, 0.88);
  font-size: 0.82rem;
  font-weight: 700;
  color: #21170f;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.shop-filters .filter-price input:focus {
  outline: none;
  border-color: rgba(23, 17, 12, 0.32);
  box-shadow: 0 0 0 3px rgba(197, 158, 103, 0.16);
}

.shop-filters-footer {
  position: sticky;
  bottom: -18px;
  margin: 18px -18px -18px;
  padding: 16px 18px 18px;
  background: linear-gradient(180deg, rgba(247, 240, 230, 0.86), #f3ebde 32%);
  border-top: 1px solid rgba(46, 35, 24, 0.08);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 -12px 28px rgba(46, 35, 24, 0.08);
}

.shop-filters-hint {
  margin: 0 0 12px;
  color: #6b5d50;
  font-size: 0.82rem;
  line-height: 1.55;
}

.filter-reset {
  width: 100%;
  height: 48px;
  border: 1px solid #17110c;
  border-radius: 16px;
  background: #17110c;
  color: #fff7ec;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  cursor: pointer;
  font-weight: 800;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.filter-reset:hover {
  transform: translateY(-1px);
  background: #fff7ec;
  color: #17110c;
}

.shop-card {
  background: transparent;
  border-radius: 0;
  padding: 0;
  transition: transform 0.2s ease;
  position: relative;
  cursor: pointer;
  --quick-top: auto;
  --quick-inset: 0;
}

.shop-card:hover {
  transform: translateY(-1px);
}

body.shop-collection-mode .shop-card {
  border-radius: 26px;
  padding: 12px 12px 16px;
  border: 1px solid rgba(46, 35, 24, 0.08);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 16px 30px rgba(58, 38, 16, 0.07);
  overflow: hidden;
}

body.shop-collection-mode .shop-card:hover {
  transform: translateY(-6px);
}

.shop-card .product-card-media {
  height: 320px;
  aspect-ratio: 1 / 1;
  background: linear-gradient(180deg, #151a20 0%, #0e1217 100%);
}

body.shop-collection-mode .shop-card .product-card-media {
  border-radius: 20px;
  background: linear-gradient(180deg, #171d24 0%, #0f141a 100%);
}

.shop-card .product-card-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: transparent;
  padding: 12px;
  border-radius: 0;
  display: block;
}

body.shop-collection-mode .shop-card .product-card-image {
  padding: 18px;
  background: transparent;
}

body.shop-collection-mode .shop-card .product-quick-view {
  top: 22px;
  bottom: auto;
  left: auto;
  right: 22px;
  min-width: 126px;
  height: 38px;
  padding: 0 14px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  background: rgba(17, 17, 18, 0.92);
  color: #fff;
  font-size: 0.74rem;
  letter-spacing: 0.2em;
}

body.shop-collection-mode .shop-card .product-quick-view:hover {
  background: rgba(17, 17, 18, 0.98);
  color: #fff;
}

@media (hover: hover) and (pointer: fine) {
  .search-card:hover .product-card-image,
  .shop-card:hover .product-card-image {
    transform: scale(1.05);
  }

  .search-card:hover .product-card-media.has-secondary-image .main-img,
  .shop-card:hover .product-card-media.has-secondary-image .main-img {
    opacity: 0;
  }

  .search-card:hover .product-card-media.has-secondary-image .hover-img,
  .shop-card:hover .product-card-media.has-secondary-image .hover-img {
    opacity: 1;
  }

}

@media (hover: none), (pointer: coarse) {
  .product-card-media .hover-img {
    display: none;
  }

  .shop-card .product-quick-view,
  .search-card .product-quick-view {
    opacity: 1;
    transform: translateY(0);
  }

  .product-card-media.has-secondary-image {
    cursor: pointer;
  }
}

.shop-card h3 {
  margin-top: 10px;
  color: #111;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.75px;
  text-align: center;
  font-weight: 700;
}

body.shop-collection-mode .shop-card h3 {
  margin-top: 14px;
  color: #1d1610;
  font-size: 0.98rem;
  letter-spacing: 0.08em;
}

.shop-card p {
  margin-top: 4px;
  color: #555;
  font-size: 0.92rem;
}

body.shop-collection-mode .product-price {
  color: #000;
  font-size: 1.28rem;
  font-weight: 800;
}

body.shop-collection-mode .product-stock {
  color: #6a5d50;
}

.product-stock {
  font-size: 0.82rem;
  margin-top: 4px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: #3f3f3f;
}

.quick-view-modal {
  position: fixed;
  inset: 0;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  z-index: 2200;
  pointer-events: none;
}

.quick-view-modal[hidden] {
  display: none;
}

.quick-view-modal.is-active {
  pointer-events: auto;
}

.quick-view-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(1.5px);
  -webkit-backdrop-filter: blur(1.5px);
  opacity: 0;
  transition: opacity 0.28s ease;
}

.quick-view-modal.is-active .quick-view-backdrop {
  opacity: 1;
}

.quick-view-panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: min(860px, 100vw);
  background: #fff;
  display: grid;
  grid-template-columns: 0.56fr 0.44fr;
  overflow: hidden;
  transform: translateX(100%);
  transition: transform 0.34s ease;
}

.quick-view-modal.is-active .quick-view-panel {
  transform: translateX(0);
}

.quick-view-media-wrap {
  background: #ededed;
  padding: 8px;
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 8px;
  overflow-y: auto;
  opacity: 0;
  transform: translateX(20px);
  transition: opacity 0.24s ease, transform 0.24s ease;
}

.quick-view-media {
  background: #f3f3f3;
  display: grid;
  place-items: center;
  min-height: 0;
}

.quick-view-media img {
  width: 100%;
  max-height: 240px;
  object-fit: contain;
}

.quick-view-thumbs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.quick-thumb {
  border: 0;
  background: #f2f2f2;
  padding: 8px;
  cursor: pointer;
}

.quick-thumb.active {
  outline: 1px solid #111;
}

.quick-thumb img {
  width: 100%;
  height: 120px;
  object-fit: contain;
}

.quick-view-details {
  display: grid;
  align-content: start;
  gap: 16px;
  padding: 34px 28px;
  overflow-y: auto;
  opacity: 0;
  transform: translateX(14px);
  transition: opacity 0.24s ease, transform 0.24s ease;
}

.quick-view-modal.is-active .quick-view-details {
  opacity: 1;
  transform: translateX(0);
  transition-delay: 0.08s;
}

.quick-view-modal.is-active .quick-view-media-wrap {
  opacity: 1;
  transform: translateX(0);
  transition-delay: 0.16s;
}

.quick-view-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.quick-view-eyebrow {
  font-size: 0.64rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  color: #8a6442;
  margin: 0;
  font-weight: 800;
}

.quick-status-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin: 0;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(255, 255, 255, 0.74);
  color: #1f1812;
  font-size: 0.66rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 800;
}

.quick-status-chip.is-in-stock {
  background: rgba(18, 98, 46, 0.08);
  border-color: rgba(18, 98, 46, 0.18);
  color: #12622e;
}

.quick-status-chip.is-out-of-stock {
  background: rgba(140, 28, 28, 0.08);
  border-color: rgba(140, 28, 28, 0.18);
  color: #8c1c1c;
}

.quick-view-details h3 {
  color: #1b140f;
  font-family: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Garamond, Georgia, serif;
  font-size: clamp(1.7rem, 3vw, 2.6rem);
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 0;
}

.quick-view-details p {
  margin: 0;
  color: #222;
}

.quick-view-details .quick-status-chip.is-in-stock {
  color: #12622e;
}

.quick-view-details .quick-status-chip.is-out-of-stock {
  color: #8c1c1c;
}

.quick-detail-grid {
  display: grid;
  grid-template-columns: minmax(86px, 0.42fr) minmax(0, 1fr);
  column-gap: 16px;
  row-gap: 0;
  margin: 0;
  padding: 4px 0;
  background: transparent;
  border-top: 1px solid rgba(46, 35, 24, 0.1);
}

.quick-k {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 12px 0;
  border-bottom: 1px solid rgba(46, 35, 24, 0.1);
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: #7a685a;
  font-weight: 700;
}

.quick-v {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 0;
  margin: 0;
  padding: 12px 0;
  border-bottom: 1px solid rgba(46, 35, 24, 0.1);
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #241a12;
  font-weight: 800;
  text-align: right;
  overflow-wrap: anywhere;
}

#quick-view-sku {
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.08em;
}

.quick-view-copy {
  font-size: 0.94rem;
  color: #56493d;
  line-height: 1.7;
  margin: 0;
}

.quick-option {
  margin-top: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(46, 35, 24, 0.1);
}

.quick-option p {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  margin: 0 0 8px;
  color: #241a12;
  font-weight: 800;
}

.quick-swatch-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.quick-swatch {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #111;
  background: #d0d0d0;
  cursor: pointer;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.1);
}

.quick-swatch:nth-child(2) {
  background: #111;
}

.quick-swatch.active {
  outline: 2px solid #111;
  outline-offset: 3px;
}

.quick-size-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.quick-size {
  min-width: 46px;
  height: 40px;
  border: 1px solid rgba(46, 35, 24, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.76);
  font-size: 0.72rem;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

.quick-size.active {
  border-color: #17110c;
  background: #17110c;
  color: #f8f2e9;
}

.quick-view-actions {
  display: flex;
  gap: 10px;
  margin-top: 16px;
  flex-wrap: wrap;
}

.quick-view-add {
  min-width: 140px;
  height: 36px;
  border: 1px solid #111;
  background: #111;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  font-size: 0.68rem;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.quick-view-add:hover {
  background: #fff;
  color: #111;
}

.quick-view-add.added {
  background: #fff;
  color: #111;
}

.quick-view-add:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.quick-view-buy {
  min-width: 140px;
  height: 36px;
  border: 1px solid #111;
  background: #111;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  font-size: 0.68rem;
  cursor: pointer;
}

.quick-view-buy:hover {
  background: #fff;
  color: #111;
}

.quick-view-buy:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.quick-view-qty-wrap {
  margin-top: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: #241a12;
  font-weight: 800;
}

.quick-view-qty-wrap input {
  width: 64px;
  height: 34px;
  border: 0;
  padding: 0 8px;
  background: #fff;
  text-align: center;
}

.quick-view-qty-box {
  display: inline-grid;
  grid-template-columns: 34px 56px 34px;
  align-items: center;
  align-self: flex-start;
  border: 1px solid #111;
  background: #fff;
  overflow: hidden;
}

.quick-qty-btn {
  width: 34px;
  height: 34px;
  border: 0;
  background: #fff;
  cursor: pointer;
  font-size: 1rem;
  line-height: 1;
}

#quick-qty-minus {
  border-right: 1px solid #111;
}

#quick-qty-plus {
  border-left: 1px solid #111;
}

.quick-view-add.is-adding,
.product-add-main.is-adding {
  animation: addToCartPulse 0.42s ease;
}

@keyframes addToCartPulse {
  0% {
    transform: scale(1);
  }
  35% {
    transform: scale(0.97);
  }
  100% {
    transform: scale(1);
  }
}

.quick-view-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  height: 36px;
  border: 1px solid #111;
  text-decoration: none;
  color: #111;
  font-size: 0.66rem;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  width: 100%;
}

.quick-stock {
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.35px;
}

.quick-view-close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  border: 0;
  background: transparent;
  font-size: 1.1rem;
  cursor: pointer;
  z-index: 5;
}

.shop-card .product-quick-view {
  top: auto;
  left: 0;
  right: 0;
  bottom: 0;
  height: 34px;
  background: rgba(17, 17, 17, 0.95);
  color: #fff;
  letter-spacing: 0.9px;
}

body.quick-view-open {
  overflow: hidden;
}

.product-page {
  min-height: 100vh;
  padding: 108px 24px 52px;
  background:
    radial-gradient(circle at 10% 8%, rgba(197, 158, 103, 0.16), transparent 26%),
    radial-gradient(circle at 92% 10%, rgba(51, 35, 20, 0.08), transparent 20%),
    linear-gradient(180deg, #f7f1e8 0%, #eee5d7 48%, #f8f4ee 100%);
}

.product-page-intro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.product-back-link {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.14);
  background: rgba(255, 255, 255, 0.72);
  color: #201710;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 0.72rem;
  font-weight: 800;
  box-shadow: 0 12px 24px rgba(58, 38, 16, 0.06);
  transition: transform 0.22s ease, background-color 0.22s ease, border-color 0.22s ease;
}

.product-back-link:hover,
.product-back-link:focus-visible {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.92);
  border-color: rgba(32, 23, 16, 0.2);
}

.product-page-intro-meta {
  display: grid;
  gap: 10px;
  justify-items: end;
}

.product-kicker {
  margin: 0;
  color: #8e6540;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.28em;
  font-weight: 800;
}

.product-page-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.product-page-badge {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(255, 255, 255, 0.64);
  color: #281d15;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.product-page-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr);
  gap: 28px;
  align-items: start;
}

.product-gallery-shell {
  display: grid;
  gap: 14px;
}

.product-gallery-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding: 0 4px;
}

.product-gallery-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.product-gallery-chip {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(255, 255, 255, 0.68);
  color: #241a12;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.product-gallery-kicker {
  margin: 0;
  color: #8a6442;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  font-weight: 800;
}

.product-gallery-note {
  margin: 0;
  color: #65584d;
  font-size: 0.9rem;
  line-height: 1.55;
}

.product-gallery {
  display: grid;
  gap: 14px;
}

.product-main-wrap {
  position: relative;
  background: linear-gradient(180deg, #f8f3ec 0%, #ebe1d3 100%);
  min-height: 620px;
  display: grid;
  place-items: center;
  padding: 26px;
  border-radius: 32px;
  border: 1px solid rgba(46, 35, 24, 0.08);
  box-shadow: 0 18px 38px rgba(58, 38, 16, 0.08);
}

.product-main-wrap img {
  width: 100%;
  max-height: 560px;
  object-fit: contain;
}

.product-main-overlay {
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 1;
}

.product-main-image-caption {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(17, 17, 18, 0.66);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #fff7ec;
  font-size: 0.68rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 800;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.product-thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.product-thumb {
  border: 1px solid rgba(46, 35, 24, 0.1);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.82);
  padding: 10px;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(58, 38, 16, 0.05);
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.product-thumb.active {
  border-color: #17110c;
  transform: translateY(-2px);
}

.product-thumb img {
  width: 100%;
  height: 104px;
  object-fit: contain;
}

.product-purchase-card {
  position: sticky;
  top: 104px;
  border-radius: 32px;
  border: 1px solid rgba(46, 35, 24, 0.1);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 20px 42px rgba(58, 38, 16, 0.08);
  padding: 26px 28px;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.product-info {
  display: grid;
  gap: 18px;
}

.product-info-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.product-collection-label {
  margin: 0;
  color: #8a6442;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  font-weight: 800;
}

.product-status-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(255, 255, 255, 0.74);
  color: #1f1812;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 800;
}

.product-status-chip.is-in-stock {
  background: rgba(18, 98, 46, 0.08);
  border-color: rgba(18, 98, 46, 0.18);
  color: #12622e;
}

.product-status-chip.is-out-of-stock {
  background: rgba(140, 28, 28, 0.08);
  border-color: rgba(140, 28, 28, 0.18);
  color: #8c1c1c;
}

.product-info h1 {
  margin: 0;
  color: #1b140f;
  font-family: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Garamond, Georgia, serif;
  font-size: clamp(2.2rem, 4vw, 3.8rem);
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.product-price-cluster {
  display: grid;
  gap: 6px;
}

.product-detail-price {
  margin: 0;
  font-size: clamp(1.5rem, 2.4vw, 2.2rem);
  color: #17110c;
  font-weight: 700;
}

.product-detail-price.is-sale {
  justify-content: flex-start;
}

.product-detail-stock {
  margin: 0;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
}

.product-detail-meta {
  margin: 0;
  font-size: 0.74rem;
  color: #5f5347;
  text-transform: uppercase;
  letter-spacing: 0.16em;
}

.product-description {
  margin: 0;
  color: #56493d;
  line-height: 1.75;
  font-size: 0.98rem;
}

.product-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.product-highlight {
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(46, 35, 24, 0.1);
  background: rgba(248, 243, 236, 0.92);
}

.product-highlight span {
  display: block;
  margin-bottom: 8px;
  color: #7a685a;
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-weight: 700;
}

.product-highlight strong {
  display: block;
  color: #201710;
  font-size: 0.9rem;
  line-height: 1.45;
}

.product-configurator {
  display: grid;
  gap: 14px;
}

.product-option {
  margin-top: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(46, 35, 24, 0.1);
}

.product-configurator .product-option:first-child {
  padding-top: 0;
  border-top: 0;
}

.product-option p {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  margin-bottom: 8px;
  color: #241a12;
  font-weight: 800;
}

.product-swatch-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.product-swatch {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #111;
  background: #d0d0d0;
  cursor: pointer;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.1);
}

.product-swatch.active {
  outline: 2px solid #111;
  outline-offset: 3px;
}

.product-size-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.product-size-note {
  margin: 10px 0 0;
  color: #6a5c4f;
  font-size: 0.84rem;
  line-height: 1.55;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
}

.product-size-row.is-single .product-size {
  min-width: 120px;
}

.product-size {
  min-width: 46px;
  height: 40px;
  border: 1px solid rgba(46, 35, 24, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.76);
  font-size: 0.72rem;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

.product-size.active {
  border-color: #17110c;
  background: #17110c;
  color: #f8f2e9;
}

.product-qty-wrap {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: #241a12;
  font-weight: 800;
}

.product-qty-box {
  display: inline-grid;
  grid-template-columns: 42px 72px 42px;
  align-items: center;
  align-self: flex-start;
  border: 1px solid rgba(46, 35, 24, 0.16);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.9);
  overflow: hidden;
}

.product-qty-btn {
  width: 42px;
  height: 42px;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 1.1rem;
}

#product-qty-minus {
  border-right: 1px solid #111;
}

#product-qty-plus {
  border-left: 1px solid #111;
}

.product-qty-wrap input {
  width: 72px;
  height: 42px;
  border: 0;
  padding: 0 8px;
  text-align: center;
  background: transparent;
  font-weight: 700;
}

.product-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.product-trust-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(248, 243, 236, 0.92);
  color: #241a12;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 800;
}

.product-main-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.product-add-main {
  height: 50px;
  width: 100%;
  border: 1px solid #17110c;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  color: #111;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.74rem;
  font-weight: 800;
  cursor: pointer;
  transition: transform 0.18s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.product-add-main:hover {
  background: #17110c;
  color: #fff7ec;
}

.product-buy-main {
  height: 50px;
  width: 100%;
  border: 1px solid #17110c;
  border-radius: 16px;
  background: #17110c;
  color: #fff7ec;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.74rem;
  font-weight: 800;
  cursor: pointer;
}

.product-buy-main:hover {
  background: #fff7ec;
  color: #17110c;
}

.product-add-main.added {
  background: #f3eadc;
  color: #17110c;
}

.product-add-main:disabled,
.product-buy-main:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
}

.product-checkout-note {
  margin: -2px 0 0;
  color: #6a5c4f;
  font-size: 0.82rem;
  line-height: 1.55;
}

.product-accordions {
  border-top: 1px solid rgba(46, 35, 24, 0.12);
}

.product-acc-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 0;
  border: 0;
  border-bottom: 1px solid rgba(46, 35, 24, 0.12);
  background: transparent;
  text-transform: uppercase;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  font-weight: 800;
  cursor: pointer;
}

.product-acc-body {
  font-size: 0.9rem;
  color: #56493d;
  line-height: 1.7;
  padding: 10px 0 16px;
  border-bottom: 1px solid rgba(46, 35, 24, 0.12);
}

.product-related {
  margin-top: 42px;
  display: grid;
  gap: 18px;
}

.product-related-head {
  display: grid;
  gap: 6px;
}

.product-related-kicker {
  margin: 0;
  color: #8a6442;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  font-weight: 800;
}

.product-related h2 {
  margin: 0;
  color: #1b140f;
  font-family: "Baskerville Old Face", "Palatino Linotype", "Book Antiqua", Garamond, Georgia, serif;
  font-size: clamp(1.6rem, 2.4vw, 2.3rem);
}

.product-related-summary {
  margin: 0;
  color: #605347;
  line-height: 1.65;
}

.product-related-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.product-related-card {
  background: rgba(255, 255, 255, 0.82);
  padding: 12px;
  border-radius: 26px;
  border: 1px solid rgba(46, 35, 24, 0.08);
  box-shadow: 0 16px 30px rgba(58, 38, 16, 0.06);
}

.product-related-card a {
  text-decoration: none;
  color: inherit;
}

.product-related-card img {
  width: 100%;
  height: 220px;
  object-fit: contain;
  background: linear-gradient(180deg, #faf4ec 0%, #eee6d8 100%);
  border-radius: 18px;
}

.product-related-card h4 {
  margin-top: 12px;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
}

.product-related-card p {
  margin-top: 6px;
  font-size: 0.92rem;
  color: #221911;
  font-weight: 700;
}

.stock-in {
  color: #12622e;
}

.stock-out {
  color: #8c1c1c;
}

.shop-empty {
  width: 100%;
  margin: 14px 0 0;
  padding: 18px 20px;
  border-radius: 22px;
  border: 1px solid rgba(46, 35, 24, 0.12);
  background: rgba(255, 255, 255, 0.72);
  color: #1d1610;
  box-shadow: 0 12px 24px rgba(58, 38, 16, 0.06);
}

.filter-range-wrap {
  position: relative;
  --range-start: 0%;
  --range-width: 100%;
  height: 28px;
  margin-bottom: 0;
  margin-top: 6px;
}

.filter-range-shell {
  position: relative;
  height: 100%;
  margin: 0 8px;
}

.filter-range-shell::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 3px;
  border-radius: 999px;
  background: rgba(92, 80, 68, 0.16);
}

.filter-range-shell::after {
  content: "";
  position: absolute;
  left: var(--range-start);
  width: var(--range-width);
  top: 50%;
  transform: translateY(-50%);
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #a17348 0%, #d1ad77 100%);
}

.filter-range {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 28px;
  margin: 0;
  pointer-events: none;
  appearance: none;
  background: transparent;
}

.filter-range::-webkit-slider-runnable-track {
  height: 28px;
  background: transparent;
  border: 0;
}

.filter-range::-webkit-slider-thumb {
  pointer-events: auto;
  appearance: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid #fff8ef;
  background: #17110c;
  cursor: pointer;
  box-shadow: 0 5px 12px rgba(23, 17, 12, 0.16);
}

.filter-range::-moz-range-track {
  height: 28px;
  background: transparent;
  border: 0;
}

.filter-range::-moz-range-thumb {
  pointer-events: auto;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid #fff8ef;
  background: #17110c;
  cursor: pointer;
  box-shadow: 0 5px 12px rgba(23, 17, 12, 0.16);
}

@media (max-width: 900px) {
  body.shop-home-mode .navbar {
    background: rgba(0, 0, 0, 0.52);
  }

  .shop-category-hero {
    grid-template-columns: 1fr;
    padding: 18px;
    border-radius: 24px;
  }

  .shop-category-copy {
    gap: 16px;
  }

  .shop-category-description {
    max-width: none;
  }

  .shop-category-metrics {
    grid-template-columns: 1fr;
  }

  .shop-category-media {
    height: 400px;
  }

  .shop-category-shell[data-category="accessories"] .shop-category-media-card {
    padding: 14px 16px;
  }

  .shop-category-curation {
    grid-template-columns: 1fr;
  }

  .shop-home-section {
    padding: 18px 14px 8px;
  }

  .shop-home-grid-four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .shop-home-card img {
    height: 220px;
  }

  .shop-home-split {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .shop-home-split-card {
    min-height: 0;
    aspect-ratio: 498 / 746.72;
    padding: 16px;
  }

  .shop-home-footer {
    grid-template-columns: 1fr;
    grid-template-areas:
      brand
      quick
      shop
      news
      meta
      copy;
    gap: 26px;
    padding: 30px 16px;
  }

  .shop-home-footer p,
  .shop-home-footer a {
    font-size: 0.82rem;
  }

  .shop-home-footer-logo {
    width: 92px;
    margin-bottom: 14px;
  }

  .shop-home-title-link {
    font-size: 1rem;
  }

  .shop-home-newsletter {
    grid-template-columns: 1fr 52px;
  }

  .shop-toolbar {
    margin-bottom: 10px;
    position: sticky;
    top: 70px;
    z-index: 30;
    background: rgba(255, 255, 255, 0.82);
  }

  .shop-sort-row {
    flex-direction: column;
    align-items: stretch;
  }

  .shop-sort-wrap {
    width: 100%;
  }

  .shop-filters {
    width: min(356px, 92vw);
    padding: 20px 16px 16px;
    border-radius: 0 24px 24px 0;
  }

  .shop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .shop-sort-wrap {
    max-width: 100%;
  }

  .quick-view-panel {
    width: 100%;
    height: 100vh;
    height: 100dvh;
    max-height: 100dvh;
    right: 0;
    top: 0;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    transform: translateX(100%);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: max(16px, env(safe-area-inset-bottom));
  }

  .quick-view-modal.is-active .quick-view-panel {
    transform: translateX(0);
  }

  .quick-view-media-wrap {
    grid-template-rows: minmax(220px, 36vh) auto;
    padding: 0;
    background: #efefef;
    overflow: visible;
  }

  .quick-view-media {
    background: #efefef;
    border-bottom: 1px solid #d9d9d9;
  }

  .quick-view-media img {
    max-height: 34vh;
  }

  .quick-view-thumbs {
    display: flex;
    gap: 6px;
    padding: 8px;
    overflow-x: auto;
    overflow-y: hidden;
  }

  .quick-thumb {
    min-width: 72px;
    flex: 0 0 auto;
  }

  .quick-thumb img {
    height: 70px;
  }

  .quick-view-details {
    padding: 14px 12px 18px;
    overflow: visible;
  }

  .quick-view-actions {
    margin-top: 14px;
    padding-top: 8px;
    background: transparent;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .quick-view-add,
  .quick-view-buy {
    width: 100%;
    min-width: 0;
  }

  .quick-view-link {
    grid-column: 1 / -1;
    width: 100%;
  }

  .quick-view-close {
    top: max(10px, env(safe-area-inset-top));
    right: max(10px, env(safe-area-inset-right));
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid #d4d4d4;
    border-radius: 999px;
  }

  .product-page-shell {
    grid-template-columns: 1fr;
  }

  .product-page-intro {
    flex-direction: column;
    align-items: stretch;
  }

  .product-page-intro-meta {
    justify-items: start;
  }

  .product-page-badges {
    justify-content: flex-start;
  }

  .product-purchase-card {
    position: static;
  }

  .product-gallery-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .product-gallery-meta {
    justify-content: flex-start;
  }

  .product-main-wrap {
    min-height: 420px;
  }

  .product-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .shop-page {
    padding: 96px 14px 28px;
  }

  .shop-page.shop-home-mode {
    padding: 0;
  }

  .shop-page.shop-collection-mode {
    padding-top: 92px;
  }

  .shop-category-shell {
    gap: 14px;
    margin-bottom: 18px;
  }

  .shop-category-kicker,
  .shop-sort-kicker,
  .shop-category-curation-label {
    letter-spacing: 0.2em;
  }

  .shop-category-title {
    font-size: clamp(2.2rem, 11vw, 3.3rem);
  }

  .shop-category-description,
  .shop-filter-summary,
  .shop-sort-caption {
    font-size: 0.86rem;
  }

  .shop-category-feature-pill,
  .shop-category-swatch {
    width: 100%;
    justify-content: center;
  }

  .shop-category-media {
    height: 320px;
  }

  .shop-category-shell[data-category="accessories"] .shop-category-media-card {
    padding: 12px 14px;
  }

  .shop-category-media-card {
    left: 16px;
    right: 16px;
    bottom: 16px;
    padding: 16px 18px;
  }

  .shop-category-curation-card {
    padding: 18px;
  }

  .shop-filters {
    top: 64px;
    width: min(94vw, 360px);
    height: calc(100vh - 64px);
    padding: 18px 14px 14px;
    border-radius: 0 22px 22px 0;
  }

  .shop-filters-head strong {
    font-size: 1.42rem;
  }

  .shop-filters-caption {
    font-size: 0.84rem;
    margin-bottom: 16px;
  }

  .shop-filter-group {
    padding: 14px 12px;
    border-radius: 20px;
  }

  .shop-filters .filter-price {
    grid-template-columns: 1fr;
  }

  .shop-filters-footer {
    bottom: -14px;
    margin: 18px -14px -14px;
    padding: 14px 14px 16px;
  }

  .shop-filters-hint {
    font-size: 0.78rem;
  }

  .shop-home-content {
    padding: 24px 14px 44px;
  }

  .shop-home-cta-row {
    top: 57%;
    gap: 12px;
  }

  .shop-home-btn-ghost,
  .shop-home-btn-solid {
    min-width: 128px;
    min-height: 40px;
    font-size: 0.82rem;
    padding: 0 12px;
  }

  .shop-home-hero-dots {
    bottom: 22px;
    gap: 10px;
  }

  .shop-home-content h1 {
    font-size: 0.85rem;
    top: 72%;
    width: min(92vw, 520px);
  }

  .shop-home-video {
    object-position: center 34%;
  }

  .shop-home-grid-four {
    grid-template-columns: 1fr;
  }

  .shop-home-card img {
    height: 260px;
  }

  .shop-home-cta-band {
    padding: 26px 12px 28px;
  }

  .shop-products-count {
    font-size: 0.66rem;
  }

  .shop-toolbar {
    align-items: stretch;
    flex-direction: column;
    padding: 16px;
  }

  .shop-toolbar-copy {
    gap: 8px;
  }

  .product-page {
    padding: 96px 14px 34px;
  }

  .product-back-link,
  .product-page-badge {
    width: 100%;
    justify-content: center;
  }

  .product-purchase-card {
    padding: 20px 18px;
    border-radius: 24px;
  }

  .product-info {
    gap: 16px;
  }

  .product-info-topline {
    align-items: stretch;
  }

  .product-collection-label,
  .product-status-chip {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .product-description,
  .product-gallery-note,
  .product-related-summary,
  .product-size-note,
  .product-checkout-note {
    font-size: 0.88rem;
  }

  .product-highlights {
    grid-template-columns: 1fr;
  }

  .product-main-wrap {
    min-height: 360px;
    padding: 18px;
    border-radius: 24px;
  }

  .shop-grid {
    grid-template-columns: 1fr;
  }

  .shop-home-split {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    width: 100% !important;
  }

  .shop-home-split-card {
    aspect-ratio: 498 / 746.72 !important;
    padding: 14px 10px;
    background-size: cover !important;
    background-position: center top !important;
  }

  .shop-home-split-card span {
    font-size: 0.54rem;
    line-height: 1.25;
    letter-spacing: 0.12em;
  }

  .shop-home-split-card strong {
    font-size: 0.64rem;
    line-height: 1.2;
    letter-spacing: 0.08em;
  }

  .shop-card .product-quick-view {
    opacity: 1;
    transform: none;
  }

  .quick-view-thumbs {
    display: flex;
  }

  .quick-view-media-wrap {
    grid-template-rows: minmax(200px, 32vh) auto;
  }

  .quick-view-details h3 {
    font-size: 0.92rem;
  }

  .product-thumbs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .product-thumb {
    border-radius: 16px;
    padding: 8px;
  }

  .product-thumb img {
    height: 84px;
  }

  .product-main-actions {
    grid-template-columns: 1fr;
  }

  .product-trust-row {
    display: grid;
    gap: 8px;
  }

  .product-trust-pill {
    width: 100%;
    justify-content: center;
  }

  .product-related-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-height: 820px) {
  .shop-home-video {
    object-fit: cover;
    object-position: center 40%;
  }
}
.account-admin-link {
  display: inline-block;
  margin-top: 6px;
  border: 1px solid #111;
  padding: 8px 12px;
  text-decoration: none;
  color: #111;
}

.account-admin-link:hover {
  background: #111;
  color: #fff;
}

.account-page {
  min-height: 100vh;
  padding: clamp(84px, 10vh, 110px) 20px 28px;
  background:
    radial-gradient(circle at 12% 8%, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0) 30%),
    linear-gradient(180deg, #efefef 0%, #e6e6e6 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.account-shell {
  width: min(560px, 100%);
  max-width: 560px;
  width: 100%;
  margin: 0;
}

.account-card {
  background: #ffffff;
  border: 1px solid #d7d7d7;
  border-radius: 14px;
  padding: clamp(20px, 3.2vw, 30px) clamp(16px, 3vw, 28px) clamp(18px, 2.8vw, 24px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.08);
  display: grid;
  justify-items: stretch;
  row-gap: 12px;
}

.account-brand {
  text-align: center;
  margin-bottom: 10px;
}

.account-blx-logo {
  height: 112px;
  width: auto;
  margin-bottom: 4px;
  filter: contrast(1.3);
  display: block;
  margin-left: auto;
  margin-right: auto;
  transform: scale(1.7);
  transform-origin: center center;
  animation: blxFloatPulse 3.2s ease-in-out infinite;
}

@keyframes blxFloatPulse {
  0% {
    transform: scale(1.7) translateY(0);
    filter: contrast(1.3) drop-shadow(0 0 0 rgba(0, 0, 0, 0));
  }
  50% {
    transform: scale(1.74) translateY(-4px);
    filter: contrast(1.3) drop-shadow(0 8px 14px rgba(0, 0, 0, 0.16));
  }
  100% {
    transform: scale(1.7) translateY(0);
    filter: contrast(1.3) drop-shadow(0 0 0 rgba(0, 0, 0, 0));
  }
}

.account-brand h1 {
  font-size: 1.35rem;
  font-weight: 800;
  letter-spacing: 0.2px;
  margin-bottom: 0;
}

.account-auth {
  display: grid;
  gap: 12px;
  width: 100%;
  justify-items: stretch;
}

.account-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 6px;
}

.account-mode-tabs {
  margin: 0;
  width: min(460px, 100%);
  grid-template-columns: 1fr;
  gap: 12px;
}

.account-signin-title,
.account-signin-copy {
  text-align: left;
}

.account-signin-title {
  font-size: 1.75rem;
  font-weight: 700;
  color: #111;
  letter-spacing: 0.2px;
}

.account-signin-copy {
  color: #5c5c5c;
  font-size: 0.9rem;
  margin-bottom: 0;
  line-height: 1.45;
}

.account-form {
  width: min(460px, 100%);
}

@media (max-width: 640px) {
  .account-mode-tabs {
    width: 100%;
  }
}

.account-auth-panel {
  display: grid;
  gap: 10px;
}

.account-auth-tabs {
  margin-top: 2px;
}

.account-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  width: 100%;
  min-height: 48px;
  border: 1px solid #d2d2d2;
  border-radius: 10px;
  background: #fff;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  cursor: pointer;
  text-transform: none;
  font-size: 0.94rem;
  font-weight: 600;
  letter-spacing: 0;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

.account-tab::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 20%, rgba(255, 255, 255, 0.55) 50%, transparent 80%);
  transform: translateX(-130%);
  opacity: 0;
  pointer-events: none;
}

.account-tab.active {
  background: #0064ff;
  color: #fff;
  border-color: #0064ff;
}

.account-tab.active:visited {
  color: #fff;
}

.account-tab.active::before {
  background: linear-gradient(120deg, transparent 20%, rgba(255, 255, 255, 0.35) 50%, transparent 80%);
  opacity: 1;
  animation: accountTabShine 2.4s linear infinite;
}

.account-tab:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 14px rgba(0, 0, 0, 0.1);
  }

@keyframes accountTabShine {
  0% {
    transform: translateX(-130%);
  }
  100% {
    transform: translateX(130%);
  }
}

.account-form {
  display: grid;
  gap: 11px;
}

.account-form label {
  display: grid;
  gap: 6px;
  font-size: 0.78rem;
  color: #222;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.35px;
}

.account-form input {
  height: 46px;
  border: 1px solid #cfcfcf;
  border-radius: 8px;
  padding: 0 13px;
  font-size: 0.9rem;
  background: #fff;
}

.account-form input:focus {
  outline: none;
  border-color: #0064ff;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(0, 100, 255, 0.14);
}

.account-password-wrap {
  position: relative;
  display: block;
}

.account-password-wrap input {
  width: 100%;
  padding-right: 46px;
}

.account-password-toggle {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  cursor: pointer;
  font-size: 1rem;
  line-height: 1;
}

.account-password-toggle:hover {
  background: #f0f0f0;
}

.account-btn {
  height: 44px;
  border: 1px solid #0064ff;
  border-radius: 8px;
  background: #0064ff;
  color: #fff;
  text-transform: none;
  letter-spacing: 0;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}

.account-btn:hover {
  background: #0556d6;
  border-color: #0556d6;
  color: #fff;
  transform: translateY(-1px);
}

.account-btn.ghost {
  background: #fff;
  color: #111;
  border-color: #bdbdbd;
}

.account-btn.ghost:hover {
  background: #111;
  color: #fff;
  border-color: #111;
}

.account-btn-primary {
  margin-top: 2px;
}

.account-mini-note {
  font-size: 0.78rem;
  color: #666;
  line-height: 1.4;
  margin-top: 0;
}

.account-actions {
  display: grid;
  gap: 8px;
}

.account-link-btn {
  height: 36px;
  border: 1px solid #111;
  border-radius: 7px;
  color: #111;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-transform: none;
  font-size: 0.84rem;
}

.account-link-btn:hover {
  background: #111;
  color: #fff;
}

.account-msg {
  min-height: 16px;
  margin-top: 4px;
  font-size: 0.8rem;
  color: #222;
  text-align: center;
  width: 100%;
  font-weight: 500;
}

@media (max-width: 640px) {
  .account-page {
    padding: 90px 12px 20px;
  }

  .account-card {
    padding: 18px 14px 16px;
  }

  .account-blx-logo {
    height: 92px;
    transform: scale(1.45);
  }
  
  .account-tab {
    min-height: 46px;
    font-size: 0.9rem;
  }
}

.search-results[hidden] {
  display: none;
}

.cart-page {
  min-height: 100vh;
  padding: 110px 24px 36px;
  background: #efefef;
}

/* ================================================
   ADMIN DASHBOARD — LUXURY UI
   ================================================ */
.admin-body {
  margin: 0;
  padding: 0;
  background: #f4f2ef;
  display: flex;
  min-height: 100vh;
}

/* Sidebar */
.adm-sidebar {
  width: 230px;
  height: 100vh;
  background: #13110e;
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  flex-shrink: 0;
  overflow: hidden;
}

.adm-sidebar-logo {
  padding: 28px 24px 22px;
  border-bottom: 1px solid rgba(255,255,255,0.07);
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
  height: 90px;
  box-sizing: border-box;
}

.adm-logo-img {
  height: 36px;
  width: auto;
  object-fit: contain;
  filter: brightness(0) invert(1) sepia(1) saturate(0.5) brightness(1.4);
  opacity: 0.9;
}

.adm-logo-label {
  font-size: 0.68rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(220,200,165,0.6);
}

.adm-nav {
  flex: 1;
  padding: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  min-height: 0;
  overflow-y: auto;
}

.adm-nav-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 24px;
  font-size: 0.78rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  text-decoration: none;
  transition: color 0.15s, background 0.15s;
  border-left: 3px solid transparent;
  white-space: nowrap;
  overflow: hidden;
  flex-shrink: 0;
  height: 48px;
}

.adm-nav-link:hover {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.04);
}

.adm-nav-active {
  color: #d4ab73 !important;
  border-left-color: #d4ab73;
  background: rgba(212,171,115,0.08) !important;
}

.adm-nav-icon {
  font-size: 0.5rem;
  opacity: 0.7;
}

.adm-sidebar-footer {
  padding: 18px 24px;
  border-top: 1px solid rgba(255,255,255,0.07);
  flex-shrink: 0;
  height: 80px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.adm-sidebar-user {
  font-size: 0.72rem;
  color: rgba(255,255,255,0.4);
  margin-bottom: 10px;
  letter-spacing: 0.5px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.adm-logout-btn {
  width: 100%;
  height: 34px;
  background: none;
  border: 1px solid rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.55);
  font-size: 0.72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  border-radius: 6px;
  transition: background 0.15s, color 0.15s;
  font-family: inherit;
}

.adm-logout-btn:hover {
  background: rgba(255,255,255,0.06);
  color: #fff;
}

/* Main area */
.adm-main {
  margin-left: 230px;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.adm-topbar {
  background: #fff;
  border-bottom: 1px solid #e8e3da;
  padding: 20px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: 0;
  z-index: 50;
}

.adm-page-title {
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.3rem;
  font-weight: normal;
  color: #13110e;
  margin: 0 0 2px;
}

.adm-page-sub {
  font-size: 0.8rem;
  color: #8a7b68;
  margin: 0;
}

.adm-reset-btn {
  height: 36px;
  padding: 0 18px;
  border: 1.5px solid #d4ab73;
  background: transparent;
  color: #8a6c3c;
  font-size: 0.72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  border-radius: 8px;
  font-family: inherit;
  transition: background 0.15s, color 0.15s;
}

.adm-reset-btn:hover {
  background: #d4ab73;
  color: #fff;
}

.adm-content {
  padding: 28px 32px 40px;
}

/* Keep admin-shell for the orders section */
.admin-page {
  min-height: auto;
  padding: 0;
  background: transparent;
}

.admin-shell {
  max-width: none;
  margin-top: 28px;
}

.admin-head {
  margin-bottom: 16px;
}

.admin-head h1 {
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.15rem;
  font-weight: normal;
  color: #13110e;
  margin-bottom: 4px;
}

.admin-head p {
  font-size: 0.8rem;
  color: #8a7b68;
  margin-bottom: 10px;
}

.admin-reset {
  display: none; /* replaced by adm-reset-btn in topbar */
}

/* Product grid */
.admin-list {
  margin-top: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}

.adm-products-grid {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.admin-card {
  border: 1px solid #e4dfd6;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 0;
  transition: box-shadow 0.2s;
}

.admin-card:hover {
  box-shadow: 0 6px 20px rgba(19,17,14,0.1);
}

.admin-card img {
  width: 120px;
  height: 120px;
  object-fit: contain;
  background: #f7f5f1;
}

.admin-fields {
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.admin-fields h3 {
  font-size: 0.76rem;
  font-weight: 600;
  margin-bottom: 2px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #13110e;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-fields p {
  font-size: 0.71rem;
  color: #8a7b68;
  margin-bottom: 8px;
}

.admin-fields label {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 0.68rem;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #7a7167;
  margin-bottom: 6px;
}

.admin-fields input[type=text] {
  height: 30px;
  border: 1.5px solid #ddd9d1;
  border-radius: 6px;
  padding: 0 8px;
  font-size: 0.82rem;
  font-family: inherit;
  color: #13110e;
  transition: border-color 0.15s;
}

.admin-fields input[type=text]:focus {
  outline: none;
  border-color: #b8976a;
}

.admin-save {
  margin-top: 4px;
  height: 30px;
  border: none;
  border-radius: 6px;
  background: #13110e;
  color: #fff;
  font-size: 0.68rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  font-family: inherit;
  transition: background 0.15s;
}

.admin-save:hover {
  background: #2a2620;
}

/* Orders section */
#admin-orders-list .admin-card {
  grid-template-columns: 1fr;
}

/* Responsive */
@media (max-width: 900px) {
  .adm-sidebar {
    width: 60px;
  }
  .adm-logo-label,
  .adm-nav-link span:not(.adm-nav-icon),
  .adm-sidebar-footer { display: none; }
  .adm-nav-link { padding: 14px; justify-content: center; }
  .adm-main { margin-left: 60px; }
  .adm-topbar { padding: 16px 20px; }
  .adm-content { padding: 20px; }
}

@media (max-width: 600px) {
  .adm-sidebar { display: none; }
  .adm-main { margin-left: 0; }
  .admin-list { grid-template-columns: 1fr; }
}

/* ============================================
   NEW ADMIN DASHBOARD - Modern Horizontal Layout
   ============================================ */

.dash-body {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: #f5f5f5;
  min-height: 100vh;
}

/* Top Navigation Bar */
.dash-navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
  padding: 0 32px;
  background: #1a1a1a;
  position: sticky;
  top: 0;
  z-index: 100;
}

.dash-nav-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dash-logo {
  height: 32px;
  width: auto;
}

.dash-brand {
  color: #fff;
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.5px;
}

.dash-nav-center {
  display: flex;
  gap: 8px;
}

.dash-tab {
  background: transparent;
  border: none;
  color: #888;
  padding: 10px 20px;
  font-size: 0.9rem;
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  gap: 8px;
}

.dash-tab:hover {
  color: #ccc;
  background: rgba(255,255,255,0.05);
}

.dash-tab.active {
  color: #d4ab73;
  background: rgba(212, 171, 115, 0.1);
}

.dash-tab-icon {
  font-size: 0.6rem;
}

.dash-nav-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

.dash-user {
  color: #aaa;
  font-size: 0.85rem;
}

.dash-logout {
  background: transparent;
  border: 1px solid #444;
  color: #ccc;
  padding: 8px 16px;
  font-size: 0.8rem;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.dash-logout:hover {
  background: #d4ab73;
  border-color: #d4ab73;
  color: #1a1a1a;
}

/* Stats Cards */
.dash-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 24px 32px;
  background: #fff;
  border-bottom: 1px solid #eee;
}

.dash-stat-card {
  background: #fff;
  border-radius: 8px;
  padding: 20px;
  text-align: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  border: 1px solid #f0f0f0;
}

.dash-stat-num {
  font-size: 2rem;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1;
}

.dash-stat-label {
  font-size: 0.8rem;
  color: #666;
  margin-top: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Page Header */
.dash-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 32px;
  background: #fff;
}

.dash-header-left {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dash-title {
  font-size: 1.5rem;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0;
}

.dash-subtitle {
  font-size: 0.85rem;
  color: #666;
  margin: 0;
}

.dash-reset-btn {
  background: #fff;
  border: 1px solid #ddd;
  color: #555;
  padding: 10px 20px;
  font-size: 0.85rem;
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.2s ease;
}

.dash-reset-btn:hover {
  background: #d4ab73;
  border-color: #d4ab73;
  color: #fff;
}

/* Main Content */
.dash-content {
  padding: 24px 32px 60px;
}

.dash-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px;
}

/* Responsive */
@media (max-width: 1100px) {
  .dash-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .dash-navbar {
    padding: 0 16px;
    flex-wrap: wrap;
    height: auto;
    padding: 12px 16px;
    gap: 12px;
  }
  .dash-nav-center {
    order: 3;
    width: 100%;
    justify-content: center;
  }
  .dash-stats {
    grid-template-columns: repeat(2, 1fr);
    padding: 16px;
    gap: 12px;
  }
  .dash-stat-card {
    padding: 16px;
  }
  .dash-stat-num {
    font-size: 1.5rem;
  }
  .dash-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
  }
  .dash-content {
    padding: 16px;
  }
  .dash-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .dash-stats {
    grid-template-columns: 1fr 1fr;
  }
  .dash-brand {
    display: none;
  }
}

/* Cart Shell (original styles preserved) */

.cart-shell {
  max-width: 1100px;
  margin: 0 auto;
}

.cart-shell h1 {
  color: #111;
  font-size: 2rem;
  margin-bottom: 6px;
}

.cart-shell > p {
  color: #333;
  margin-bottom: 16px;
}

.cart-items {
  display: grid;
  gap: 14px;
}

.cart-item {
  display: grid;
  grid-template-columns: 120px 1fr auto;
  gap: 14px;
  align-items: center;
  background: #fff;
  border-radius: 10px;
  padding: 12px;
}

.cart-item img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border-radius: 8px;
}

.cart-item-info h3 {
  color: #111;
  margin-bottom: 4px;
}

.cart-item-cat {
  color: #666;
  font-size: 0.9rem;
  margin-bottom: 6px;
}

.cart-item-price {
  color: #111;
  font-weight: 700;
  margin-bottom: 8px;
}

.cart-remove {
  border: 1px solid #bbb;
  background: #fff;
  border-radius: 6px;
  padding: 5px 10px;
  cursor: pointer;
}

.cart-qty {
  display: flex;
  align-items: center;
  gap: 6px;
}

.qty-btn {
  width: 30px;
  height: 30px;
  border: 1px solid #aaa;
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
}

.qty-input {
  width: 52px;
  height: 30px;
  border: 1px solid #aaa;
  border-radius: 6px;
  text-align: center;
}

.cart-summary {
  margin-top: 18px;
  background: #fff;
  border-radius: 10px;
  padding: 14px;
  max-width: 420px;
  margin-left: auto;
}

.summary-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  color: #222;
}

.summary-row.total {
  padding-top: 10px;
  border-top: 1px solid #ddd;
  font-size: 1.05rem;
}

.checkout-btn {
  margin-top: 10px;
  width: 100%;
  height: 42px;
  border: 0;
  border-radius: 8px;
  background: #111;
  color: #fff;
  cursor: pointer;
}

.cart-empty {
  color: #111;
  margin: 12px 0;
}

@media (max-width: 700px) {
  .cart-item {
    grid-template-columns: 1fr;
  }

  .cart-item img {
    width: 100%;
    height: 200px;
  }

  .cart-summary {
    max-width: 100%;
  }
}

/* Cart v2 */
.cart-page-v2 {
  background: #f2f2f2;
}

.cart-shell-v2 {
  max-width: 1200px;
}

.cart-topbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.cart-topbar h1 {
  margin: 0 0 6px;
}

.currency-wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: #111;
  font-size: 0.92rem;
}

.currency-wrap select {
  min-width: 150px;
  height: 36px;
  border: 1px solid #aaa;
  border-radius: 8px;
  background: #fff;
  padding: 0 8px;
}

.cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 18px;
}

.cart-items-v2 {
  gap: 12px;
}

.cart-item-v2 {
  grid-template-columns: 96px minmax(0, 1fr) auto;
  border: 1px solid #e5e5e5;
}

.cart-item-v2 img {
  width: 96px;
  height: 96px;
}

.cart-item-right {
  min-width: 150px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}

.item-total {
  font-weight: 700;
  color: #111;
}

.cart-summary-v2 {
  margin-top: 0;
  align-self: start;
  position: sticky;
  top: 90px;
}

@media (max-width: 900px) {
  .cart-layout {
    grid-template-columns: 1fr;
  }

  .cart-summary-v2 {
    position: static;
  }
}

@media (max-width: 640px) {
  .cart-topbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .cart-item-v2 {
    grid-template-columns: 1fr;
  }

  .cart-item-v2 img {
    width: 100%;
    height: 200px;
  }

  .cart-item-right {
    align-items: flex-start;
    min-width: 0;
  }
}

/* Cart reference style */
.cart-ref-page {
  min-height: 100vh;
  padding: 110px 24px 40px;
  background: #efefef;
  color: #111;
}

.cart-ref-shell {
  max-width: 960px;
  margin: 0 auto;
}

.cart-ref-shell h1 {
  font-size: 2rem;
  margin-bottom: 20px;
  font-weight: 500;
}

.cart-ref-head,
.cart-ref-item {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 130px 170px 130px;
  gap: 14px;
}

.cart-ref-head {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  color: #555;
  padding-bottom: 10px;
  border-bottom: 1px solid #cfcfcf;
}

.cart-ref-items {
  border-bottom: 1px solid #cfcfcf;
}

.cart-ref-item {
  padding: 18px 0;
  align-items: center;
  border-bottom: 1px solid #d8d8d8;
}

.cart-ref-item:last-child {
  border-bottom: 0;
}

.product-col {
  display: flex;
  align-items: center;
  gap: 14px;
}

.product-col img {
  width: 110px;
  height: 130px;
  object-fit: contain;
  background: #f7f7f7;
  image-rendering: auto;
}

.product-meta h3 {
  font-size: 0.95rem;
  margin-bottom: 6px;
  font-weight: 600;
}

.product-meta p {
  margin: 0;
  font-size: 0.8rem;
  color: #666;
}

.price-col {
  font-size: 0.92rem;
}

.qty-col {
  display: flex;
  align-items: center;
  gap: 10px;
}

.qty-box {
  display: inline-flex;
  align-items: center;
  border: 1px solid #c8c8c8;
  height: 34px;
}

.qty-btn {
  width: 30px;
  height: 32px;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.qty-input {
  width: 34px;
  border: 0;
  text-align: center;
  background: transparent;
}

.qty-input:focus {
  outline: none;
}

.remove-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 0;
  background: transparent;
  color: #a33;
  cursor: pointer;
  padding: 0;
}

.remove-link svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

.total-col {
  text-align: right;
  font-size: 0.92rem;
}

.cart-ref-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 14px;
}

.continue-link {
  color: #111;
  text-decoration: underline;
  font-size: 0.9rem;
}

.right-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.currency-inline {
  font-size: 0.82rem;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.currency-inline select {
  height: 30px;
  border: 1px solid #bcbcbc;
  background: #fff;
  padding: 0 8px;
}

.notes-toggle {
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 0.9rem;
}

.notes-wrap {
  margin-top: 10px;
}

.notes-wrap textarea {
  width: 100%;
  min-height: 88px;
  border: 1px solid #c8c8c8;
  background: #fff;
  padding: 10px;
  resize: vertical;
}

.cart-ref-checkout {
  margin-top: 12px;
  text-align: right;
}

.coupon-row {
  margin-bottom: 12px;
}

.coupon-label {
  display: block;
  font-size: 0.82rem;
  margin-bottom: 6px;
  color: #222;
}

.coupon-input-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.coupon-input {
  width: 230px;
  max-width: 100%;
  height: 38px;
  border: 1px solid #bcbcbc;
  background: #fff;
  padding: 0 10px;
  font-size: 0.9rem;
}

.coupon-btn {
  height: 38px;
  padding: 0 14px;
  border: 1px solid #111;
  background: #111;
  color: #fff;
  cursor: pointer;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.coupon-btn:hover {
  background: #fff;
  color: #111;
}

.totals-mini {
  display: flex;
  justify-content: flex-end;
  gap: 14px;
  font-size: 0.9rem;
  margin-bottom: 10px;
}

.checkout-btn-ref {
  position: relative;
  width: 310px;
  max-width: 100%;
  height: 42px;
  border: 1px solid #111;
  background: linear-gradient(to right, #111 50%, #fff 50%);
  background-size: 200% 100%;
  background-position: left center;
  color: #fff;
  cursor: pointer;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.82rem;
  letter-spacing: 0.6px;
  transition: transform 0.22s ease, box-shadow 0.22s ease, background-position 0.38s ease, color 0.22s ease;
}

.checkout-btn-ref:hover {
  background-position: right center;
  color: #111;
  transform: translateY(-2px);
  box-shadow: 0 10px 18px rgba(0, 0, 0, 0.24);
}

.checkout-btn-ref:focus-visible {
  background-position: right center;
  color: #111;
}

.checkout-btn-ref:active {
  color: #111;
  transform: translateY(0);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.22);
}

.checkout-btn-ref.is-processing {
  animation: checkoutPulse 0.45s ease;
}

@keyframes checkoutPulse {
  0% {
    transform: scale(1);
  }
  35% {
    transform: scale(0.98);
  }
  100% {
    transform: scale(1);
  }
}

.cart-ref-checkout p {
  margin-top: 10px;
  color: #666;
  font-size: 0.78rem;
}

.recommend-ref {
  max-width: 960px;
  margin: 60px auto 0;
  text-align: center;
}

.recommend-ref h2 {
  font-size: 2rem;
  margin-bottom: 6px;
}

.recommend-ref p {
  color: #666;
  margin-bottom: 16px;
}

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

.recommend-grid article {
  background: #f8f8f8;
  padding: 10px;
}

.recommend-grid img {
  width: 100%;
  height: 280px;
  object-fit: cover;
}

.recommend-grid h4 {
  margin-top: 8px;
  font-size: 0.9rem;
}

@media (max-width: 900px) {
  .cart-ref-head,
  .cart-ref-item {
    grid-template-columns: 1fr;
  }

  .total-col {
    text-align: left;
  }

  .cart-ref-actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .right-actions {
    width: 100%;
    justify-content: space-between;
  }

  .cart-ref-checkout {
    text-align: left;
  }

  .coupon-input-wrap {
    width: 100%;
    display: flex;
  }

  .coupon-input {
    flex: 1;
    width: auto;
  }

  .totals-mini {
    justify-content: flex-start;
  }

  .recommend-grid {
    grid-template-columns: 1fr;
  }
}

.recently-ref {
  margin-top: 36px;
  text-align: left;
}

.recently-empty {
  color: #666;
  font-size: 0.9rem;
}

.recently-link {
  color: inherit;
  text-decoration: none;
  display: block;
}

.recently-ref .recommend-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.recently-ref .recommend-grid img {
  height: 180px;
}

.recently-more {
  border: 1px dashed #bbb;
  background: #fafafa;
  min-height: 235px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #444;
}

.recently-more span {
  font-size: 1.8rem;
  font-weight: 700;
}

.recently-more small {
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

@media (max-width: 1100px) {
  .recently-ref .recommend-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .recently-ref .recommend-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .recently-ref .recommend-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.recently-ref h2 { text-align: left; }
.recently-ref p { text-align: left; }


.recently-page {
  min-height: 100vh;
  padding: 110px 24px 40px;
  background: #efefef;
}

.recently-shell {
  max-width: 1100px;
  margin: 0 auto;
}

.recently-shell h1 {
  font-size: 2rem;
  margin-bottom: 6px;
}

.recently-shell p {
  color: #666;
  margin-bottom: 14px;
}

.recently-all-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

@media (max-width: 1100px) {
  .recently-all-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .recently-all-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .recently-all-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* Login page specific refinement */
.login-page .account-shell {
  max-width: 500px;
}

.login-page .account-card {
  padding: 24px 22px 20px;
}

.login-page .account-brand {
  margin-bottom: 10px;
}

.login-page .account-blx-logo {
  height: 96px;
  transform: scale(1.35);
  animation: none;
}

.login-page .account-auth {
  gap: 10px;
}

.login-page .account-form {
  width: 100%;
}

@media (max-width: 640px) {
  .login-page .account-card {
    padding: 18px 14px 16px;
  }

  .login-page .account-blx-logo {
    height: 80px;
    transform: scale(1.25);
  }
}

/* Account selector (Host/Resident) */
.account-selector-page .account-shell {
  max-width: 460px;
}

.account-selector-page .account-card {
  padding: 26px 22px 20px;
}

.account-selector-page .account-brand {
  margin-bottom: 8px;
}

.account-selector-page .account-blx-logo {
  height: 110px;
  transform: scale(1.5);
}

.account-selector-page .account-auth {
  gap: 10px;
}

.account-selector-page .account-mode-tabs {
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
  gap: 10px;
}

.account-selector-page .account-tab {
  min-height: 48px;
  font-size: 0.92rem;
}

.account-selector-page .account-msg {
  margin-top: 10px;
}

/* Account selector UI refresh */
.account-selector-page {
  background:
    radial-gradient(circle at 12% 14%, rgba(186, 160, 118, 0.2), transparent 32%),
    radial-gradient(circle at 88% 18%, rgba(54, 45, 35, 0.12), transparent 28%),
    linear-gradient(180deg, #efe7dc 0%, #ddd0c2 100%);
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.account-selector-page .account-shell {
  max-width: 860px;
}

.account-selector-page .account-card {
  background: rgba(248, 245, 240, 0.92);
  border: 1px solid rgba(126, 108, 86, 0.16);
  border-radius: 28px;
  padding: 40px 38px 32px;
  box-shadow: 0 24px 60px rgba(31, 24, 17, 0.14);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  position: relative;
  overflow: hidden;
}

.account-selector-page .account-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(110, 88, 57, 0.45), transparent);
}

.account-selector-layout {
  max-width: 720px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.account-selector-content {
  display: grid;
  align-content: start;
}

.account-selector-page .account-brand {
  margin-bottom: 28px;
  display: grid;
  gap: 12px;
  justify-items: center;
  text-align: center;
  position: relative;
  z-index: 1;
}

.account-brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  gap: 16px;
  justify-self: center;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  padding: 12px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.64);
  border: 1px solid rgba(132, 112, 88, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.account-selector-page .account-blx-logo {
  display: block;
  width: auto;
  height: 64px;
  object-fit: contain;
  transform: none;
  filter: contrast(1.1);
}

.account-brand-chip {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 14px;
  border-radius: 999px;
  background: #17120e;
  color: #f3ece2;
  font-family: "Manrope", sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.account-selector-overline {
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #796a58;
}

.account-selector-title {
  margin: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.2rem, 5vw, 3.2rem);
  line-height: 0.95;
  letter-spacing: 0.02em;
  color: #17120e;
}

.account-selector-copy {
  width: min(460px, 100%);
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: 0.97rem;
  line-height: 1.7;
  color: #5c5144;
}

.account-selector-benefits {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.account-selector-benefits span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(132, 112, 88, 0.14);
  font-family: "Manrope", sans-serif;
  font-size: 0.76rem;
  font-weight: 600;
  color: #51463a;
}

.account-access-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.account-selector-page .account-access-card {
  min-height: unset;
  padding: 22px 22px 20px;
  border-radius: 22px;
  border: 1px solid rgba(114, 99, 82, 0.18);
  background: rgba(255, 255, 255, 0.92);
  display: grid;
  justify-items: start;
  align-content: start;
  gap: 12px;
  text-align: left;
  box-shadow: 0 10px 26px rgba(31, 24, 17, 0.08);
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease,
    color 0.2s ease;
  position: relative;
  overflow: hidden;
}

.account-selector-page .account-access-card::before {
  display: none;
}

.account-selector-page .account-tab.active {
  background: linear-gradient(135deg, #15120f 0%, #27201a 100%);
  border-color: #15120f;
  color: #ffffff;
  box-shadow: 0 18px 32px rgba(18, 14, 11, 0.22);
}

.account-selector-page .account-tab:hover {
  transform: translateY(-3px);
  border-color: rgba(74, 60, 45, 0.36);
  box-shadow: 0 18px 32px rgba(31, 24, 17, 0.14);
}

.account-selector-page .account-tab:visited {
  color: inherit;
}

.account-selector-page .account-tab:focus-visible {
  outline: 3px solid rgba(81, 57, 28, 0.25);
  outline-offset: 4px;
}

.account-access-index {
  position: absolute;
  top: 16px;
  right: 18px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 3.2rem;
  line-height: 1;
  color: rgba(29, 21, 14, 0.12);
  pointer-events: none;
}

.account-selector-page .account-tab.active .account-access-index {
  color: rgba(255, 245, 229, 0.12);
}

.account-access-label {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(24, 18, 12, 0.06);
  font-family: "Manrope", sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #665847;
}

.account-selector-page .account-tab.active .account-access-label {
  background: rgba(255, 255, 255, 0.12);
  color: #f8e7c7;
}

.account-access-title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(1.5rem, 3vw, 2rem);
  line-height: 1;
  font-weight: 600;
  color: inherit;
}

.account-access-copy {
  font-family: "Manrope", sans-serif;
  font-size: 0.93rem;
  line-height: 1.7;
  color: #5f5448;
}

.account-selector-page .account-tab.active .account-access-copy {
  color: rgba(255, 255, 255, 0.78);
}

.account-access-points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  width: 100%;
}

.account-access-points li {
  position: relative;
  padding-left: 18px;
  font-family: "Manrope", sans-serif;
  font-size: 0.82rem;
  line-height: 1.55;
  color: #574d41;
}

.account-access-points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #aa8b62;
  transform: translateY(-50%);
}

.account-selector-page .account-tab.active .account-access-points li {
  color: rgba(255, 255, 255, 0.76);
}

.account-selector-page .account-tab.active .account-access-points li::before {
  background: #f0c98b;
}

.account-access-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: auto;
  padding-top: 14px;
  width: 100%;
  font-family: "Manrope", sans-serif;
  font-size: 0.79rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: inherit;
  border-top: 1px solid rgba(69, 58, 45, 0.12);
}

.account-access-cta::after {
  content: "\2192";
  font-size: 1rem;
  line-height: 1;
}

.account-selector-page .account-tab.active .account-access-cta {
  border-top-color: rgba(255, 255, 255, 0.16);
}

.account-selector-support {
  margin-top: 16px;
  padding: 15px 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.58);
  border: 1px solid rgba(132, 112, 88, 0.14);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.account-selector-support-label {
  font-family: "Manrope", sans-serif;
  font-size: 0.86rem;
  color: #5d5145;
}

.account-selector-support-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  background: #17120e;
  color: #ffffff;
  text-decoration: none;
  font-family: "Manrope", sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  transition: transform 0.18s ease, background-color 0.18s ease;
}

.account-selector-support-link:hover {
  transform: translateY(-1px);
  background: #000000;
}

.account-selector-support-link:focus-visible {
  outline: 3px solid rgba(81, 57, 28, 0.22);
  outline-offset: 4px;
}

.account-selector-page .account-msg {
  text-align: center;
  margin-top: 12px;
}

@media (max-width: 860px) {
  .account-selector-page .account-card {
    padding: 30px 24px 24px;
  }

  .account-selector-support {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
  }
}

@media (max-width: 640px) {
  .account-selector-page .account-card {
    padding: 22px 16px 18px;
  }

  .account-brand-mark {
    gap: 12px;
    padding: 10px 12px;
  }

  .account-selector-page .account-blx-logo {
    height: 52px;
  }

  .account-brand-chip {
    min-height: 28px;
    padding: 0 12px;
    font-size: 0.66rem;
  }

  .account-selector-title {
    font-size: 2.1rem;
  }

  .account-selector-copy {
    font-size: 0.92rem;
  }

  .account-selector-page .account-access-card {
    padding: 17px 16px;
    border-radius: 18px;
  }

  .account-access-index {
    top: 14px;
    right: 14px;
    font-size: 2.5rem;
  }

  .account-access-title {
    font-size: 1.55rem;
  }

  .account-access-points li {
    font-size: 0.8rem;
  }

  .account-selector-support {
    padding: 14px;
  }

  .account-selector-support-link {
    width: 100%;
  }
}


/* Final currency pin override */
.currency-inline {
  position: fixed !important;
  left: 12px !important;
  bottom: 12px !important;
  z-index: 1400 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid #bcbcbc !important;
  border-radius: 6px !important;
  padding: 6px 8px !important;
}

.currency-inline select {
  min-width: 74px;
}

/* Style nav override (font preserved) */
:root { --nav-bg: #000000; }

.navbar {
  background: var(--nav-bg);
  height: 80px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.nav-links a,
.shop-toggle,
.dropdown li a,
.submenu-back-btn {
  color: #ffffff !important;
}

.nav-links a::after {
  background: #ffffff;
}

.dropdown {
  background: var(--nav-bg);
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.dropdown li a:hover,
.dropdown li a:focus-visible,
.dropdown li a:active {
  background: rgba(255, 255, 255, 0.1) !important;
}

.nav-right img {
  width: 24px;
  height: 24px;
  filter: brightness(0) invert(1) drop-shadow(0 0 0.6px #fff);
}

.logo {
  left: 46px;
}

.logo-main {
  height: 56px;
}

.logo-blx {
  height: 72px;
  margin-left: 6px;
}

nav {
  left: 50%;
  transform: translateX(-50%);
}

.nav-right {
  right: 46px;
}

.nav-links {
  gap: 14px;
}

@media (max-width: 1200px) {
  .logo { left: 24px; }
  .nav-right { right: 24px; }
  .nav-links { gap: 12px; }
  nav ul li a { font-size: 0.88rem; }
}

@media (max-width: 768px) {
  .navbar {
    min-height: 72px;
    height: 72px;
    padding: 8px 12px;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    overflow: visible;
  }

  .navbar > .nav-menu-toggle {
    display: inline-flex;
    grid-column: 1;
    justify-self: start;
    align-self: center;
    border-color: rgba(255, 255, 255, 0.28);
    background: transparent;
    position: static !important;
    margin: 0 !important;
    z-index: 1102;
  }

  .nav-menu-toggle span {
    background: #ffffff;
  }

  .navbar > .logo {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    grid-column: 2;
    justify-self: center;
    align-self: center;
    margin: 0;
    z-index: 1101;
  }

  .logo-main { height: 42px; }
  .logo-blx { height: 56px; margin-left: 4px; }

  .navbar > .nav-right {
    grid-column: 3;
    position: static !important;
    right: auto;
    top: auto;
    transform: none;
    display: inline-flex !important;
    justify-self: end;
    align-self: center;
    gap: 8px;
    margin: 0 !important;
    z-index: 1102;
  }

  .nav-right a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .navbar > nav {
    order: initial;
    grid-column: 1 / -1;
    position: absolute;
    left: 0;
    right: 0;
    top: 72px;
    transform: none;
    width: auto;
    margin-top: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    padding: 8px 12px 10px;
    background: var(--nav-bg);
    display: none;
  }

  .navbar.is-mobile-open nav {
    display: block;
  }

  .nav-links {
    flex-direction: column;
    gap: 2px;
  }

  .nav-links li {
    width: 100%;
    margin: 0;
  }

  .nav-links a,
  .shop-toggle,
  .submenu-back-btn,
  .dropdown li a {
    display: block;
    width: 100%;
    padding: 10px 4px;
    text-align: left;
  }

  .has-dropdown:hover .dropdown,
  .has-dropdown:focus-within .dropdown {
    display: none;
  }

  .dropdown {
    display: none;
    position: static;
    border: 0;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0;
    margin: 2px 0 4px 8px;
    padding: 0 0 0 8px;
  }

  .has-dropdown.open .dropdown,
  nav.submenu-open .has-dropdown.open .dropdown {
    display: block;
  }

  nav.submenu-open .nav-links > li:not(.has-dropdown) {
    display: none;
  }

  nav.submenu-open .has-dropdown > .shop-toggle {
    display: none;
  }

  .submenu-back-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    margin-bottom: 2px;
  }
}

/* Strong mobile nav row lock: left menu, center logo, right icons */
@media (max-width: 768px) {
  .navbar {
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    display: block !important;
    height: 72px !important;
    min-height: 72px !important;
    background: var(--nav-bg) !important;
    z-index: 1200 !important;
  }

  .navbar > .nav-menu-toggle {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    z-index: 1202 !important;
  }

  .navbar > .logo {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    z-index: 1201 !important;
  }

  .navbar > .nav-right {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    z-index: 1202 !important;
  }

  .navbar > nav {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 72px !important;
    display: none !important;
    background: var(--nav-bg) !important;
    z-index: 1199 !important;
  }

  .navbar.is-mobile-open > nav {
    display: block !important;
  }
}

/* Shop-only navbar interaction animation */
body.shop-page-nav .navbar {
  background: transparent !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.24);
  transition: background-color 0.28s ease, border-color 0.28s ease, backdrop-filter 0.28s ease, box-shadow 0.28s ease;
  backdrop-filter: blur(0);
  -webkit-backdrop-filter: blur(0);
}

body.shop-page-nav .navbar:hover,
body.shop-page-nav .navbar:focus-within,
body.shop-page-nav .navbar.is-nav-active,
body.shop-page-nav .navbar.is-nav-scrolled {
  background: rgba(0, 0, 0, 0.96) !important;
  border-bottom-color: rgba(255, 255, 255, 0.34);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  box-shadow: none;
}

body.shop-page-nav .nav-links a {
  position: relative;
  overflow: visible;
  border-radius: 0;
  padding: 0 0 6px;
  transition: color 0.2s ease;
}

body.shop-page-nav .nav-links a::before {
  display: none;
}

body.shop-page-nav .nav-links a::after {
  left: 0;
  bottom: 0;
  width: 0%;
  transition: width 0.3s ease;
}

body.shop-page-nav .nav-links a:hover::after,
body.shop-page-nav .nav-links a:focus-visible::after,
body.shop-page-nav .nav-links a:active::after,
body.shop-page-nav .nav-links a.active::after {
  width: 100%;
}

body.shop-page-nav .dropdown {
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  min-width: 150px;
  border-radius: 8px;
  padding: 4px 0;
}

body.shop-page-nav .dropdown li a {
  padding: 5px 8px;
  font-size: 0.95rem;
  text-transform: none;
  letter-spacing: normal;
}

@media (max-width: 768px) {
  body.shop-page-nav .navbar {
    background: transparent !important;
    border-bottom-color: rgba(255, 255, 255, 0.2);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  body.shop-page-nav .navbar:hover,
  body.shop-page-nav .navbar:focus-within,
  body.shop-page-nav .navbar.is-nav-active,
  body.shop-page-nav .navbar.is-nav-scrolled,
  body.shop-page-nav .navbar.is-mobile-open {
    background: rgba(0, 0, 0, 0.96) !important;
  }

  body.shop-page-nav .nav-links a {
    padding: 11px 6px;
  }

  body.shop-page-nav .dropdown {
    left: 50%;
    transform: translateX(-50%) translateY(8px);
    min-width: 150px;
    border-radius: 0;
    padding: 4px 0;
    margin: 0;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    border-top: 0;
  }

  body.shop-page-nav .dropdown li a {
    padding: 10px 4px;
    font-size: 0.95rem;
  }
}



.policy-page {
  background:
    radial-gradient(circle at 8% 12%, rgba(170, 148, 112, 0.18), transparent 38%),
    radial-gradient(circle at 89% 15%, rgba(84, 76, 63, 0.14), transparent 34%),
    linear-gradient(180deg, #f0efeb 0%, #e6e4de 100%);
}

.policy-shell {
  max-width: 1040px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #d2cdc2;
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 18px 38px rgba(16, 12, 8, 0.1);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.policy-hero {
  background: linear-gradient(150deg, #f9f8f4 0%, #f2efe8 100%);
  border: 1px solid #d9d2c5;
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 14px;
}

.policy-kicker {
  margin: 0 0 6px;
  text-transform: uppercase;
  letter-spacing: 1.6px;
  font-size: 0.72rem;
  color: #6a5f4e;
  font-weight: 700;
}

.policy-shell h1 {
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: clamp(1.4rem, 3vw, 2.2rem);
  margin: 0 0 8px;
}

.policy-updated {
  margin: 0 0 8px;
  color: #4f473a;
}

.policy-section {
  background: #fff;
  border: 1px solid #ddd6ca;
  border-radius: 12px;
  padding: 14px;
  margin-bottom: 10px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.policy-section:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.policy-shell h2 {
  margin: 0 0 8px;
  font-size: 1rem;
  color: #111;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.policy-shell p,
.policy-shell li {
  color: #2f2b23;
  line-height: 1.68;
  font-size: 0.95rem;
}

.policy-shell ul {
  margin: 6px 0 10px 18px;
}

.policy-acknowledge {
  margin-top: 14px;
  padding: 12px;
  border-radius: 10px;
  background: #f5f2ec;
  border: 1px solid #dad3c7;
  font-weight: 700;
}

/* Contact links in policy */
.policy-shell .policy-section a {
  color: #6a5f4e;
  text-decoration: underline;
  text-decoration-color: #d9d2c5;
  transition: color 0.2s ease;
}

.policy-shell .policy-section a:hover {
  color: #111;
}

@media (max-width: 768px) {
  .policy-page {
    padding: 95px 14px 26px;
  }

  .policy-shell {
    border-radius: 12px;
    padding: 14px;
  }

  .policy-hero {
    padding: 14px;
  }

  .policy-section {
    padding: 12px;
  }
}

.profile-page {
  --profile-bg: #ecebe7;
  --profile-surface: #f7f6f3;
  --profile-line: #d7d2c8;
  --profile-ink: #111111;
  --profile-muted: #615b4e;
  min-height: 100vh;
  padding: 104px 18px 42px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 10%, rgba(173, 148, 106, 0.24), transparent 38%),
    radial-gradient(circle at 88% 16%, rgba(97, 84, 60, 0.16), transparent 34%),
    linear-gradient(180deg, #efeeea 0%, var(--profile-bg) 100%);
}

.profile-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(24px);
  pointer-events: none;
  opacity: 0.5;
  animation: profileOrbFloat 7s ease-in-out infinite;
}

.profile-orb-left {
  width: 250px;
  height: 250px;
  background: rgba(188, 165, 127, 0.34);
  top: 100px;
  left: -80px;
}

.profile-orb-right {
  width: 210px;
  height: 210px;
  background: rgba(95, 82, 63, 0.25);
  right: -70px;
  bottom: 48px;
  animation-delay: 1.1s;
}

.profile-shell {
  max-width: 1160px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.profile-card {
  display: grid;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  gap: 16px;
  border: 1px solid var(--profile-line);
  border-radius: 22px;
  padding: 16px;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: 0 18px 46px rgba(22, 18, 12, 0.12);
}

.profile-identity-panel {
  border: 1px solid var(--profile-line);
  border-radius: 16px;
  padding: 0;
  background: #efefef;
  overflow: hidden;
}

.profile-dashboard-title {
  margin: 0;
  padding: 16px 18px;
  color: #fff;
  font-size: 1.5rem;
  font-family: Georgia, Times New Roman, serif;
  background: linear-gradient(90deg, #111b2b 0%, #20344d 100%);
}

.profile-menu {
  display: grid;
}

.profile-menu-item {
  appearance: none;
  width: 100%;
  text-align: left;
  border: 0;
  border-top: 1px solid #d9d9d9;
  background: #efefef;
  color: #163154;
  font-size: 1.02rem;
  font-weight: 700;
  padding: 14px 18px;
  cursor: pointer;
}

.profile-menu-item:hover {
  background: #e8e8e8;
}

.profile-menu-item.active {
  background: #f8f8f8;
  color: #0f2744;
}

.profile-content-panel {
  border: 1px solid var(--profile-line);
  border-radius: 16px;
  padding: 18px;
  background: var(--profile-surface);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.profile-summary {
  grid-column: 1 / -1;
  border: 1px solid var(--profile-line);
  border-radius: 14px;
  background: #ffffff;
  padding: 14px;
}

.profile-panel-stack {
  grid-column: 1 / -1;
  display: grid;
}

.profile-panel {
  display: none;
}

.profile-panel.is-active {
  display: block;
}

.profile-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 8px;
}

.profile-avatar {
  width: 66px;
  height: 66px;
  border-radius: 50%;
  border: 1px solid #bfb7a9;
  background: #ffffff;
  padding: 9px;
  box-shadow: 0 6px 20px rgba(17, 17, 17, 0.14);
}

.profile-kicker {
  margin: 0 0 6px;
  text-transform: uppercase;
  letter-spacing: 1.8px;
  font-size: 0.67rem;
  color: #6c6558;
  font-weight: 700;
}

.profile-head h1 {
  margin: 0 0 4px;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(1.3rem, 2.3vw, 2rem);
  color: var(--profile-ink);
}

.profile-head p {
  margin: 0;
  color: #554f43;
  font-size: 0.9rem;
}

.profile-msg {
  min-height: 18px;
  margin: 0 0 12px;
  font-size: 0.88rem;
}

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

.profile-stat {
  border: 1px solid #cfc8bb;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
  padding: 12px;
}

.profile-stat h2 {
  margin: 0 0 7px;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 1.1px;
  color: var(--profile-muted);
}

.profile-stat strong {
  font-size: 1.28rem;
  color: var(--profile-ink);
}

.profile-edit,
.profile-orders,
.profile-addresses,
.profile-payments,
.profile-wallet {
  border: 1px solid var(--profile-line);
  border-radius: 14px;
  background: #ffffff;
  padding: 14px;
}

.profile-edit {
  margin: 0 0 14px;
}

.profile-edit h2,
.profile-orders h2,
.profile-addresses h2,
.profile-payments h2,
.profile-wallet h2 {
  margin: 0 0 11px;
  color: var(--profile-ink);
  font-size: 0.86rem;
  text-transform: uppercase;
  letter-spacing: 1.2px;
}

.profile-edit {
  grid-column: 1 / -1;
}

.profile-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 11px;
}

.profile-form label {
  font-size: 0.73rem;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  color: var(--profile-muted);
  margin-top: 3px;
}

.profile-form input {
  height: 42px;
  border: 1px solid #d0cabf;
  border-radius: 10px;
  background: #fbfaf8;
  color: var(--profile-ink);
  padding: 0 10px;
  font-size: 0.88rem;
  transition: border-color 0.22s ease, background-color 0.22s ease;
}

.profile-form input:focus {
  outline: none;
  border-color: #77674e;
  background: #fff;
}

.profile-form #profile-address,
.profile-form label[for=profile-address],
.profile-form #profile-email-readonly,
.profile-form label[for=profile-email-readonly],
.profile-form #profile-save {
  grid-column: 1 / -1;
}

.profile-form #profile-email-readonly {
  background: #f0ede6;
  color: #61594a;
}

.profile-form #profile-save {
  width: fit-content;
  margin-top: 8px;
}

.profile-mini-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.profile-mini-form input {
  height: 40px;
  border: 1px solid #d0cabf;
  border-radius: 10px;
  background: #fbfaf8;
  color: var(--profile-ink);
  padding: 0 10px;
  font-size: 0.85rem;
}

.profile-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #50493d;
  font-size: 0.79rem;
}

.profile-mini-form .profile-btn {
  min-height: 40px;
}

.profile-addresses-list,
.profile-payments-list,
.profile-wallet-tx {
  display: grid;
  gap: 8px;
}

.profile-address-item,
.profile-payment-item,
.profile-wallet-item {
  border: 1px solid #dad3c7;
  border-radius: 10px;
  background: #faf8f4;
  padding: 10px;
}

.profile-address-item p,
.profile-payment-item p,
.profile-wallet-item p {
  margin: 0;
  color: #4e473b;
  font-size: 0.82rem;
}

.profile-wallet-balance-row {
  margin: 0 0 10px;
  color: #4e473b;
}

.profile-wallet-balance-row strong {
  color: #111;
}

.profile-wallet-form {
  grid-template-columns: 1fr auto;
}

.profile-wallet-form .profile-btn {
  width: auto;
}

.profile-logout-panel p {
  margin: 0 0 12px;
  color: #4e473b;
}

.profile-orders-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.profile-order-item {
  border: 1px solid #dad3c7;
  border-radius: 11px;
  background: #faf8f4;
  padding: 12px;
}

.profile-order-item h3 {
  margin: 0 0 7px;
  font-size: 0.86rem;
  letter-spacing: 0.3px;
}

.profile-order-item p {
  margin: 0 0 5px;
  font-size: 0.8rem;
  color: #4e473b;
}

.profile-order-item strong {
  display: inline-block;
  margin-top: 3px;
  font-size: 0.9rem;
}

.profile-empty {
  margin: 0;
  color: var(--profile-muted);
  font-size: 0.9rem;
}

.profile-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.profile-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border: 1px solid #1a1916;
  border-radius: 999px;
  background: #1a1916;
  color: #fff;
  padding: 10px 16px;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.9px;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.profile-btn.ghost {
  background: transparent;
  color: #1a1916;
}

.profile-btn:hover {
  transform: translateY(-1px);
}

@keyframes profileOrbFloat {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
  100% { transform: translateY(0px); }
}

@media (max-width: 980px) {
  .profile-card {
    grid-template-columns: 1fr;
  }

  .profile-grid {
    grid-template-columns: 1fr;
  }

  .profile-content-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .profile-page {
    padding: 94px 12px 24px;
  }

  .profile-card {
    border-radius: 14px;
    padding: 12px;
  }

  .profile-identity-panel,
  .profile-content-panel {
    padding: 14px;
  }

  .profile-grid {
    grid-template-columns: 1fr;
  }

  .profile-orders-list,
  .profile-form,
  .profile-mini-form {
    grid-template-columns: 1fr;
  }

  .profile-form #profile-save {
    width: 100%;
  }
}

/* Profile UI Refresh */
.profile-card {
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 22px 46px rgba(22, 18, 12, 0.14);
}

.profile-identity-panel {
  background: #ececec;
  border-color: #d5d5d5;
}

.profile-dashboard-title {
  padding: 18px 20px;
  font-size: 1.28rem;
  letter-spacing: 0.3px;
  background: linear-gradient(90deg, #0f1f35 0%, #1c334d 100%);
}

.profile-menu-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 1.08rem;
  padding: 15px 18px;
  color: #163257;
  background: #ececec;
}

.profile-menu-label {
  line-height: 1.2;
}

.profile-menu-icon {
  width: 18px;
  min-width: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #111;
  opacity: 0.85;
}

.profile-menu-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.profile-menu-item.active {
  background: #f7f7f7;
  border-left: 4px solid #1c334d;
  padding-left: 14px;
}

.profile-content-panel {
  background: #f9f8f5;
  border-color: #d7d2c8;
}

.profile-summary,
.profile-edit,
.profile-orders,
.profile-addresses,
.profile-payments,
.profile-wallet,
.profile-logout-panel {
  border-color: #ddd7cc;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.04);
}

.profile-summary {
  background: linear-gradient(160deg, #ffffff 0%, #f5f2ec 100%);
}

.profile-stat {
  background: #fff;
}

.profile-btn {
  min-height: 42px;
}

.profile-btn.ghost {
  border-color: #1a1916;
}

@media (max-width: 760px) {
  .profile-identity-panel {
    padding: 0;
  }

  .profile-dashboard-title {
    font-size: 1.12rem;
  }

  .profile-menu-item {
    font-size: 0.98rem;
    padding: 13px 14px;
  }
}

/* Profile Arrangement Override */
.profile-page.profile-arranged .profile-shell {
  max-width: 1180px;
}

.profile-page.profile-arranged .profile-card {
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.profile-page.profile-arranged .profile-identity-panel {
  position: sticky;
  top: 92px;
}

.profile-page.profile-arranged .profile-content-panel {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  align-content: start;
}

.profile-page.profile-arranged .profile-summary {
  margin: 0;
}

.profile-page.profile-arranged .profile-panel-stack {
  display: grid;
  gap: 0;
}

.profile-page.profile-arranged .profile-panel {
  margin: 0;
}

.profile-page.profile-arranged .profile-panel .profile-orders,
.profile-page.profile-arranged .profile-panel.profile-addresses,
.profile-page.profile-arranged .profile-panel.profile-payments,
.profile-page.profile-arranged .profile-panel.profile-edit,
.profile-page.profile-arranged .profile-panel.profile-wallet,
.profile-page.profile-arranged .profile-panel.profile-logout-panel {
  margin: 0;
}

.profile-page.profile-arranged .profile-orders-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.profile-page.profile-arranged .profile-actions {
  margin-top: 12px;
  justify-items: start;
}

.profile-page.profile-arranged .profile-actions .profile-btn {
  width: auto;
  min-width: 190px;
}

@media (max-width: 980px) {
  .profile-page.profile-arranged .profile-card {
    grid-template-columns: 1fr;
  }

  .profile-page.profile-arranged .profile-identity-panel {
    position: static;
    top: auto;
  }
}

@media (max-width: 760px) {
  .profile-page.profile-arranged .profile-content-panel {
    padding: 12px;
    gap: 12px;
  }

  .profile-page.profile-arranged .profile-summary {
    padding: 12px;
  }

  .profile-page.profile-arranged .profile-orders-list {
    grid-template-columns: 1fr;
  }

  .profile-page.profile-arranged .profile-actions .profile-btn {
    width: 100%;
    min-width: 0;
  }
}

/* ================================================
   LOGIN PAGE — LUXURY SPLIT LAYOUT
   ================================================ */
.login-body {
  --login-ink: #20130d;
  --login-muted: #6c5849;
  --login-line: rgba(78, 52, 34, 0.14);
  --login-accent-deep: #8c5b34;
  margin: 0;
  min-height: 100vh;
  font-family: "Space Grotesk", sans-serif;
  color: var(--login-ink);
  background:
    radial-gradient(circle at 14% 16%, rgba(196, 147, 91, 0.22), transparent 26%),
    radial-gradient(circle at 85% 18%, rgba(120, 151, 193, 0.18), transparent 28%),
    linear-gradient(135deg, #07090d 0%, #0d1119 38%, #17110d 100%);
  padding: clamp(16px, 3vw, 34px);
}

.login-split {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  min-height: calc(100vh - clamp(32px, 6vw, 68px));
  max-width: 1480px;
  margin: 0 auto;
  border-radius: 34px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(7, 11, 18, 0.5);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(18px);
}

.login-brand-panel {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  min-height: 760px;
  padding: clamp(30px, 4vw, 58px);
}

.host-brand-panel {
  background:
    linear-gradient(180deg, rgba(7, 11, 18, 0.18) 0%, rgba(7, 11, 18, 0.82) 72%, rgba(7, 11, 18, 0.95) 100%),
    linear-gradient(135deg, rgba(14, 21, 33, 0.84), rgba(8, 10, 17, 0.55)),
    url("/Model shoot/IMG_0064.JPG") center center / cover no-repeat;
}

.login-brand-pattern,
.login-brand-glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.login-brand-pattern {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    repeating-linear-gradient(
      45deg,
      rgba(201, 166, 104, 0.08) 0,
      rgba(201, 166, 104, 0.08) 1px,
      transparent 1px,
      transparent 52px
    );
  background-size: 110px 110px, 110px 110px, auto;
  opacity: 0.32;
}

.login-brand-glow {
  inset: auto auto -120px -90px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(217, 179, 106, 0.3) 0%, rgba(217, 179, 106, 0) 70%);
  filter: blur(10px);
}

.login-brand-inner {
  position: relative;
  z-index: 1;
  width: min(100%, 620px);
  display: grid;
  gap: 24px;
  color: #f7f1e7;
}

.login-brand-chip {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
  font-size: 0.74rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #f3d6ad;
  backdrop-filter: blur(14px);
}

.login-brand-logo {
  width: clamp(68px, 6vw, 92px);
  height: clamp(68px, 6vw, 92px);
  object-fit: contain;
  padding: 14px;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.2);
}

.login-brand-copy {
  display: grid;
  gap: 12px;
}

.login-brand-kicker {
  margin: 0;
  font-size: 0.82rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(243, 214, 173, 0.92);
}

.login-brand-title {
  margin: 0;
  max-width: 11ch;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.7rem, 8vw, 6.2rem);
  font-weight: 700;
  line-height: 0.92;
  letter-spacing: -0.04em;
}

.login-brand-tagline {
  margin: 0;
  max-width: 34ch;
  font-size: 1rem;
  line-height: 1.8;
  color: rgba(247, 241, 231, 0.82);
}

.login-brand-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.login-brand-stat {
  display: grid;
  gap: 10px;
  padding: 18px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(16px);
}

.login-brand-stat strong {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.45rem;
  font-weight: 600;
  color: #fff9f2;
}

.login-brand-stat span {
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(247, 241, 231, 0.76);
}

.login-brand-note {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: 0.88rem;
  color: rgba(247, 241, 231, 0.78);
}

.login-brand-note-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #d9b36a;
  box-shadow: 0 0 20px rgba(217, 179, 106, 0.55);
}

.login-form-panel {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(22px, 4vw, 42px);
  background:
    radial-gradient(circle at top right, rgba(217, 179, 106, 0.15), transparent 32%),
    linear-gradient(180deg, rgba(255, 251, 246, 0.98) 0%, rgba(245, 235, 223, 0.96) 100%);
}

.login-form-panel::before {
  content: "";
  position: absolute;
  right: -56px;
  top: -56px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: rgba(217, 179, 106, 0.18);
  filter: blur(10px);
}

.login-form-inner {
  position: relative;
  z-index: 1;
  width: min(100%, 500px);
  display: flex;
  flex-direction: column;
  gap: 22px;
  padding: clamp(24px, 3.2vw, 36px);
  border-radius: 30px;
  border: 1px solid var(--login-line);
  background: rgba(255, 252, 248, 0.72);
  box-shadow: 0 22px 55px rgba(60, 35, 14, 0.12);
  backdrop-filter: blur(18px);
}

.login-form-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.login-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.68);
  border: 1px solid rgba(78, 52, 34, 0.12);
  font-size: 0.76rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--login-muted);
  text-decoration: none;
  transition: transform 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.login-back-btn:hover {
  color: var(--login-ink);
  transform: translateY(-1px);
  border-color: rgba(78, 52, 34, 0.22);
}

.login-back-arrow {
  font-size: 1rem;
  line-height: 1;
}

.login-form-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(78, 52, 34, 0.12);
  background: rgba(255, 255, 255, 0.55);
  font-size: 0.8rem;
  color: var(--login-muted);
}

.login-form-status::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.72;
}

.login-form-status[data-tone="active"] {
  color: #8c5b34;
}

.login-form-status[data-tone="success"] {
  color: #1f7a51;
}

.login-form-status[data-tone="error"] {
  color: #b84f3a;
}

.login-form-header {
  display: grid;
  gap: 10px;
}

.login-eyebrow {
  margin: 0;
  font-size: 0.76rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--login-accent-deep);
}

.host-eyebrow {
  color: #8f6845;
}

.login-title {
  margin: 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3rem, 5vw, 4.5rem);
  font-weight: 700;
  line-height: 0.95;
  letter-spacing: -0.04em;
  color: var(--login-ink);
}

.login-subtitle {
  margin: 0;
  max-width: 34ch;
  font-size: 0.97rem;
  line-height: 1.75;
  color: var(--login-muted);
}

.login-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.login-trust-row span {
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(78, 52, 34, 0.08);
  font-size: 0.8rem;
  color: #5f4d40;
}

.login-fields {
  display: grid;
}

.lx-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.lx-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lx-field-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.lx-label,
.lx-field-note {
  font-size: 0.75rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.lx-label {
  color: #6e5848;
  font-weight: 500;
}

.lx-field-note {
  color: #9c8777;
}

.lx-input {
  width: 100%;
  height: 56px;
  padding: 0 18px;
  border: 1px solid rgba(99, 70, 48, 0.14);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.84);
  font-size: 0.97rem;
  color: var(--login-ink);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, transform 0.18s ease;
  font-family: inherit;
}

.lx-input::placeholder {
  color: #bdaea0;
}

.lx-input:focus {
  outline: none;
  border-color: rgba(140, 91, 52, 0.55);
  box-shadow: 0 0 0 4px rgba(196, 147, 91, 0.12);
  background: #fffaf4;
  transform: translateY(-1px);
}

.lx-password-wrap {
  position: relative;
  display: flex;
  align-items: center;
}

.lx-password-wrap .lx-input {
  padding-right: 92px;
}

.lx-show-btn {
  position: absolute;
  right: 16px;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 0.74rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #8b6a4d;
  padding: 0;
  transition: color 0.18s ease;
}

.lx-show-btn:hover {
  color: var(--login-ink);
}

.login-link {
  color: var(--login-accent-deep);
  text-decoration: none;
  transition: color 0.18s ease;
}

.login-link:hover {
  color: #653d20;
}

.lx-submit {
  margin-top: 8px;
  width: 100%;
  min-height: 58px;
  padding: 16px 22px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #201711 0%, #382318 48%, #171c28 100%);
  color: #fff9f1;
  font-size: 0.8rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 18px 35px rgba(23, 18, 14, 0.2);
  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
  font-family: inherit;
}

.lx-submit:hover {
  transform: translateY(-1px);
  box-shadow: 0 22px 40px rgba(23, 18, 14, 0.26);
  filter: saturate(1.05);
}

.lx-submit:active {
  transform: translateY(0);
}

.lx-submit:disabled {
  cursor: wait;
  opacity: 0.92;
}

.lx-submit.is-loading {
  background: linear-gradient(135deg, #382318 0%, #8c5b34 100%);
}

.login-help-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 4px;
  border-top: 1px solid rgba(78, 52, 34, 0.08);
  color: var(--login-muted);
  font-size: 0.88rem;
}

.lx-msg {
  min-height: 22px;
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
}

.lx-msg[data-state="error"] {
  color: #b84f3a;
}

.lx-msg[data-state="success"] {
  color: #1f7a51;
}

.host-submit {
  background: linear-gradient(135deg, #1d130f 0%, #3f291e 48%, #101822 100%);
}

.host-submit:hover {
  filter: brightness(1.03);
}

@media (max-width: 1180px) {
  .login-split {
    grid-template-columns: 1fr;
  }

  .login-brand-panel {
    min-height: 520px;
  }

  .login-brand-inner {
    width: min(100%, 760px);
  }

  .login-brand-title {
    max-width: 12ch;
  }
}

@media (max-width: 760px) {
  .login-body {
    padding: 0;
  }

  .login-split {
    min-height: 100vh;
    border-radius: 0;
  }

  .login-brand-panel,
  .login-form-panel {
    padding: 22px;
  }

  .login-brand-panel {
    min-height: 420px;
    align-items: flex-end;
  }

  .login-brand-chip,
  .login-form-status,
  .login-trust-row span,
  .login-back-btn {
    font-size: 0.72rem;
  }

  .login-brand-metrics {
    grid-template-columns: 1fr;
  }

  .login-form-inner {
    width: 100%;
    padding: 24px 20px;
    border-radius: 24px;
  }

  .login-form-topbar,
  .lx-field-head,
  .login-help-strip {
    flex-direction: column;
    align-items: flex-start;
  }

  .login-title {
    font-size: clamp(2.5rem, 13vw, 3.6rem);
  }

  .login-subtitle,
  .login-brand-tagline {
    font-size: 0.94rem;
  }
}

/* Premium Account + Login UI */
.account-luxe {
  --account-bg: #e9e7e1;
  --account-surface: #f8f6f2;
  --account-line: #d3ccbf;
  --account-ink: #121212;
  --account-muted: #5c5649;
  min-height: 100vh;
  padding: 106px 16px 30px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 10%, rgba(184, 161, 122, 0.24), transparent 40%),
    radial-gradient(circle at 88% 18%, rgba(108, 91, 65, 0.16), transparent 36%),
    linear-gradient(180deg, #efede8 0%, var(--account-bg) 100%);
}

.account-luxe .account-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(22px);
  pointer-events: none;
  opacity: 0.42;
  animation: accountOrbFloat 7.2s ease-in-out infinite;
}

.account-luxe .account-orb-left {
  width: 230px;
  height: 230px;
  background: rgba(191, 168, 128, 0.35);
  left: -78px;
  top: 86px;
}

.account-luxe .account-orb-right {
  width: 210px;
  height: 210px;
  background: rgba(93, 78, 55, 0.26);
  right: -72px;
  bottom: 34px;
  animation-delay: 1.2s;
}

.account-luxe .account-shell {
  max-width: 1020px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.account-luxe .account-card {
  width: min(100%, 780px);
  margin: 0 auto;
  border: 1px solid var(--account-line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: 0 18px 44px rgba(27, 22, 14, 0.12);
  padding: 28px 28px 24px;
}

.account-luxe .account-brand {
  margin-bottom: 20px;
}

.account-luxe .account-blx-logo {
  height: 84px;
  width: auto;
  object-fit: contain;
}

.account-luxe .account-auth {
  margin-top: 0;
}

.account-luxe .account-signin-title {
  font-family: Georgia, Times New Roman, serif;
  color: var(--account-ink);
  letter-spacing: 0.6px;
  font-size: clamp(1.3rem, 2.8vw, 2rem);
}

.account-luxe .account-signin-copy {
  color: var(--account-muted);
  font-size: 0.93rem;
  margin-top: 4px;
}

.account-luxe .account-mode-tabs {
  width: 100%;
  max-width: 440px;
  margin-inline: auto;
  border: 1px solid var(--account-line);
  border-radius: 999px;
  background: #fbfaf8;
  padding: 4px;
  gap: 6px;
}

.account-luxe .account-tab {
  border-radius: 999px;
  border: 0;
  font-size: 0.76rem;
  letter-spacing: 0.9px;
  text-transform: uppercase;
  color: #3f3a31;
  background: transparent;
  min-height: 42px;
}

.account-luxe .account-tab::before {
  display: none;
}

.account-luxe .account-tab.active {
  background: #1c1a16;
  color: #fff !important;
}

.account-luxe .account-form {
  gap: 11px;
}

.account-luxe .account-form label {
  color: #4f493d;
  font-size: 0.74rem;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.account-luxe .account-form input {
  height: 44px;
  border-radius: 11px;
  border: 1px solid #d4cebf;
  background: #fcfbf9;
  font-size: 0.93rem;
}

.account-luxe .account-form input:focus {
  border-color: #6e5f49;
}

.account-luxe .account-password-toggle {
  border-left: 1px solid #d3cdbf;
  color: #4a4337;
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.7px;
}

.account-luxe .account-password-toggle:hover {
  color: #111;
}

.account-luxe .account-btn {
  border-radius: 999px;
  min-height: 44px;
  text-transform: uppercase;
  letter-spacing: 0.9px;
  font-size: 0.76rem;
}

.account-luxe .account-btn-primary {
  background: #1a1814;
}

.account-luxe .account-btn-primary:hover {
  background: #000;
}

.account-luxe .account-msg {
  margin-top: 12px;
  min-height: 18px;
  font-size: 0.88rem;
}

@keyframes accountOrbFloat {
  0% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
  100% { transform: translateY(0); }
}

@media (max-width: 760px) {
  .account-luxe {
    padding: 94px 12px 24px;
  }

  .account-luxe .account-card {
    border-radius: 14px;
    padding: 18px 14px 16px;
  }

  .account-luxe .account-blx-logo {
    height: 70px;
  }

  .account-luxe .account-mode-tabs {
    max-width: 100%;
  }
}
/* ================================================
   ADMIN DASHBOARD — LUXURY UI
   ================================================ */
.admin-body {
  margin: 0;
  padding: 0;
  background: #f4f2ef;
  min-height: 100vh;
}

/* Sidebar */
.adm-sidebar {
  width: 230px;
  height: 100vh;
  background: #13110e;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}

.adm-sidebar-logo {
  height: 90px;
  border-bottom: 1px solid rgba(255,255,255,0.07);
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 24px;
}

.adm-logo-img {
  height: 36px;
  width: auto;
  object-fit: contain;
  filter: brightness(0) invert(1) sepia(1) saturate(0.5) brightness(1.4);
  opacity: 0.9;
}

.adm-logo-label {
  font-size: 0.68rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(220,200,165,0.6);
}

.adm-nav {
  height: calc(100vh - 90px - 80px);
  overflow-y: auto;
  padding: 16px 0;
}

.adm-nav-link {
  display: block;
  padding: 14px 24px;
  font-size: 0.78rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  text-decoration: none;
  transition: color 0.15s, background 0.15s;
  border-left: 3px solid transparent;
}

.adm-nav-link:hover {
  color: rgba(255,255,255,0.85);
  background: rgba(255,255,255,0.04);
}

.adm-nav-active {
  color: #d4ab73 !important;
  border-left-color: #d4ab73;
  background: rgba(212,171,115,0.08) !important;
}

.adm-nav-icon {
  font-size: 0.5rem;
  opacity: 0.7;
  margin-right: 10px;
}

.adm-sidebar-footer {
  height: 80px;
  border-top: 1px solid rgba(255,255,255,0.07);
  padding: 18px 24px;
}

.adm-sidebar-user {
  font-size: 0.72rem;
  color: rgba(255,255,255,0.4);
  margin-bottom: 10px;
  letter-spacing: 0.5px;
}

.adm-logout-btn {
  width: 100%;
  height: 34px;
  background: none;
  border: 1px solid rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.55);
  font-size: 0.72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  border-radius: 6px;
  transition: background 0.15s, color 0.15s;
  font-family: inherit;
}

.adm-logout-btn:hover {
  background: rgba(255,255,255,0.06);
  color: #fff;
}

/* Main area */
.adm-main {
  margin-left: 230px;
  min-height: 100vh;
}

.adm-topbar {
  background: #fff;
  border-bottom: 1px solid #e8e3da;
  padding: 20px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: 0;
  z-index: 50;
}

.adm-page-title {
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.3rem;
  font-weight: normal;
  color: #13110e;
  margin: 0 0 2px;
}

.adm-page-sub {
  font-size: 0.8rem;
  color: #8a7b68;
  margin: 0;
}

.adm-reset-btn {
  height: 36px;
  padding: 0 18px;
  border: 1.5px solid #d4ab73;
  background: transparent;
  color: #8a6c3c;
  font-size: 0.72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  border-radius: 8px;
  font-family: inherit;
  transition: background 0.15s, color 0.15s;
}

.adm-reset-btn:hover {
  background: #d4ab73;
  color: #fff;
}

.adm-content {
  padding: 28px 32px 40px;
}

/* Keep admin-shell for the orders section */
.admin-page {
  min-height: auto;
  padding: 0;
  background: transparent;
}

.admin-shell {
  max-width: none;
  margin-top: 28px;
}

.admin-head {
  margin-bottom: 16px;
}

.admin-head h1 {
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.15rem;
  font-weight: normal;
  color: #13110e;
  margin-bottom: 4px;
}

.admin-head p {
  font-size: 0.8rem;
  color: #8a7b68;
  margin-bottom: 10px;
}

.admin-reset {
  display: none; /* replaced by adm-reset-btn in topbar */
}

/* Product grid */
.admin-list {
  margin-top: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}

.adm-products-grid {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.admin-card {
  border: 1px solid #e4dfd6;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 0;
  transition: box-shadow 0.2s;
}

.admin-card:hover {
  box-shadow: 0 6px 20px rgba(19,17,14,0.1);
}

.admin-card img {
  width: 120px;
  height: 120px;
  object-fit: contain;
  background: #f7f5f1;
}

.admin-fields {
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.admin-fields h3 {
  font-size: 0.76rem;
  font-weight: 600;
  margin-bottom: 2px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #13110e;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-fields p {
  font-size: 0.71rem;
  color: #8a7b68;
  margin-bottom: 8px;
}

.admin-fields label {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 0.68rem;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #7a7167;
  margin-bottom: 6px;
}

.admin-fields input[type=text] {
  height: 30px;
  border: 1.5px solid #ddd9d1;
  border-radius: 6px;
  padding: 0 8px;
  font-size: 0.82rem;
  font-family: inherit;
  color: #13110e;
  transition: border-color 0.15s;
}

.admin-fields input[type=text]:focus {
  outline: none;
  border-color: #b8976a;
}

.admin-save {
  margin-top: 4px;
  height: 30px;
  border: none;
  border-radius: 6px;
  background: #13110e;
  color: #fff;
  font-size: 0.68rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  font-family: inherit;
  transition: background 0.15s;
}

.admin-save:hover {
  background: #2a2620;
}

/* Orders section */
#admin-orders-list .admin-card {
  grid-template-columns: 1fr;
}

/* Responsive */
@media (max-width: 900px) {
  .adm-sidebar {
    width: 60px;
  }
  .adm-logo-label,
  .adm-nav-link span:not(.adm-nav-icon),
  .adm-sidebar-footer { display: none; }
  .adm-nav-link { padding: 14px; justify-content: center; }
  .adm-main { margin-left: 60px; }
  .adm-topbar { padding: 16px 20px; }
  .adm-content { padding: 20px; }
}

@media (max-width: 600px) {
  .adm-sidebar { display: none; }
  .adm-main { margin-left: 0; }
  .admin-list { grid-template-columns: 1fr; }
}


/* ===== Merged: dashboard.css ===== */
/* ============================================
   ADMIN DASHBOARD - Modern Sidebar Layout
   ============================================ */

:root {
  --dash-sidebar-width: 260px;
  --dash-primary: #d4ab73;
  --dash-primary-dark: #b8925a;
  --dash-bg: #f8f9fc;
  --dash-surface: #ffffff;
  --dash-sidebar-bg: #1a1a2e;
  --dash-sidebar-hover: #252542;
  --dash-text-primary: #1a1a2e;
  --dash-text-secondary: #6b7280;
  --dash-text-muted: #9ca3af;
  --dash-border: #e5e7eb;
  --dash-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --dash-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --dash-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);
  --dash-radius-sm: 8px;
  --dash-radius-md: 12px;
  --dash-radius-lg: 16px;
  --dash-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

* {
  box-sizing: border-box;
}

.dash-body {
  margin: 0;
  padding: 0;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: var(--dash-bg);
  min-height: 100vh;
  display: flex;
}

/* ============================================
   SIDEBAR
   ============================================ */

.dash-sidebar {
  width: var(--dash-sidebar-width);
  height: 100vh;
  background: var(--dash-sidebar-bg);
  position: fixed;
  left: 0;
  top: 0;
  display: flex;
  flex-direction: column;
  z-index: 100;
  box-shadow: 4px 0 24px rgba(0, 0, 0, 0.15);
}

.dash-sidebar-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 24px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.dash-sidebar-logo {
  height: 36px;
  width: auto;
  border-radius: 8px;
}

.dash-sidebar-brand {
  color: #fff;
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  white-space: nowrap;
}

.dash-sidebar-nav {
  flex: 1;
  padding: 20px 12px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dash-nav-section {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dash-nav-label {
  color: var(--dash-text-muted);
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 0 8px;
  margin-bottom: 8px;
}

.dash-nav-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: transparent;
  border: none;
  border-radius: var(--dash-radius-sm);
  color: var(--dash-text-muted);
  font-size: 0.9rem;
  font-weight: 500;
  cursor: pointer;
  transition: var(--dash-transition);
  width: 100%;
  text-align: left;
}

.dash-nav-item:hover {
  background: var(--dash-sidebar-hover);
  color: #fff;
}

.dash-nav-item.active {
  background: linear-gradient(135deg, var(--dash-primary) 0%, var(--dash-primary-dark) 100%);
  color: #1a1a2e;
  box-shadow: 0 4px 12px rgba(212, 171, 115, 0.3);
}

.dash-nav-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.dash-sidebar-footer {
  padding: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.dash-user-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dash-user-avatar {
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, var(--dash-primary) 0%, var(--dash-primary-dark) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1a1a2e;
  font-weight: 700;
  font-size: 1rem;
}

.dash-user-details {
  display: flex;
  flex-direction: column;
}

.dash-user-name {
  color: #fff;
  font-size: 0.9rem;
  font-weight: 600;
}

.dash-user-role {
  color: var(--dash-text-muted);
  font-size: 0.75rem;
}

.dash-logout-btn {
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.08);
  border: none;
  border-radius: var(--dash-radius-sm);
  color: var(--dash-text-muted);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--dash-transition);
}

.dash-logout-btn:hover {
  background: #e74c3c;
  color: #fff;
}

.dash-logout-btn svg {
  width: 18px;
  height: 18px;
}

/* ============================================
   MAIN CONTENT
   ============================================ */

.dash-main {
  flex: 1;
  margin-left: var(--dash-sidebar-width);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Top Bar */
.dash-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 32px;
  background: var(--dash-surface);
  border-bottom: 1px solid var(--dash-border);
  position: sticky;
  top: 0;
  z-index: 50;
}

.dash-topbar-left {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dash-page-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--dash-text-primary);
  margin: 0;
  letter-spacing: -0.5px;
}

.dash-page-subtitle {
  font-size: 0.875rem;
  color: var(--dash-text-secondary);
  margin: 0;
}

.dash-topbar-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

.dash-current-time {
  background: var(--dash-bg);
  padding: 8px 16px;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--dash-text-secondary);
}

/* Stats Cards */
.dash-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 24px 32px;
  background: transparent;
}

.dash-stat-card {
  background: var(--dash-surface);
  border-radius: var(--dash-radius-lg);
  padding: 24px;
  box-shadow: var(--dash-shadow-sm);
  border: 1px solid var(--dash-border);
  transition: var(--dash-transition);
  position: relative;
  overflow: hidden;
}

.dash-stat-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--dash-primary) 0%, var(--dash-primary-dark) 100%);
  opacity: 0;
  transition: var(--dash-transition);
}

.dash-stat-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--dash-shadow-lg);
}

.dash-stat-card:hover::before {
  opacity: 1;
}

.dash-stat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.dash-stat-icon {
  width: 44px;
  height: 44px;
  border-radius: var(--dash-radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
}

.dash-stat-icon svg {
  width: 22px;
  height: 22px;
}

.dash-stat-icon-products {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #fff;
}

.dash-stat-icon-orders {
  background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
  color: #fff;
}

.dash-stat-icon-pending {
  background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
  color: #fff;
}

.dash-stat-icon-shipped {
  background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
  color: #fff;
}

.dash-stat-trend {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 12px;
}

.dash-stat-trend-up {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
}

.dash-stat-trend-down {
  background: rgba(239, 68, 68, 0.1);
  color: #ef4444;
}

.dash-stat-num {
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--dash-text-primary);
  line-height: 1;
  letter-spacing: -1px;
}

.dash-stat-label {
  font-size: 0.85rem;
  color: var(--dash-text-secondary);
  margin-top: 12px;
  font-weight: 500;
}

/* Content Wrapper */
.dash-content-wrapper {
  flex: 1;
  padding: 0 32px 32px;
}

.dash-content-header {
  margin-bottom: 20px;
}

.dash-content-tabs {
  display: flex;
  gap: 8px;
  background: var(--dash-surface);
  padding: 6px;
  border-radius: var(--dash-radius-md);
  width: fit-content;
  box-shadow: var(--dash-shadow-sm);
  border: 1px solid var(--dash-border);
}

.dash-content-tab {
  padding: 10px 24px;
  background: transparent;
  border: none;
  border-radius: var(--dash-radius-sm);
  color: var(--dash-text-secondary);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--dash-transition);
}

.dash-content-tab:hover {
  color: var(--dash-text-primary);
}

.dash-content-tab.active {
  background: var(--dash-sidebar-bg);
  color: #fff;
  box-shadow: 0 2px 8px rgba(26, 26, 46, 0.3);
}

/* Main Content */
.dash-content {
  padding: 0;
}

.dash-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 20px;
}

.admin-users-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 16px;
}

.admin-user-card {
  background: var(--dash-surface);
  border: 1px solid var(--dash-border);
  border-radius: var(--dash-radius-md);
  padding: 16px;
  box-shadow: var(--dash-shadow-sm);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.admin-user-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.admin-user-email {
  margin: 4px 0 0;
  font-size: 0.85rem;
  color: var(--dash-text-secondary);
}

.admin-user-meta {
  display: grid;
  gap: 6px;
  font-size: 0.8rem;
  color: var(--dash-text-secondary);
}

.admin-user-actions {
  display: flex;
  justify-content: flex-end;
}

.admin-user-pill {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(79, 172, 254, 0.12);
  color: #3b82f6;
  font-weight: 600;
}

.admin-user-pill-host {
  background: rgba(16, 185, 129, 0.15);
  color: #10b981;
}

.admin-user-delete {
  border: none;
  background: #ef4444;
  color: #fff;
  font-size: 0.75rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 8px 14px;
  border-radius: 999px;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.admin-user-delete:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(239, 68, 68, 0.3);
}

.admin-user-delete:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none;
}

.admin-head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.admin-action {
  border: 1px solid var(--dash-border);
  background: #fff;
  color: var(--dash-text-primary);
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--dash-transition);
}

.admin-action:hover {
  background: var(--dash-sidebar-bg);
  color: #fff;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 1400px) {
  .dash-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 1024px) {
  :root {
    --dash-sidebar-width: 80px;
  }
  
  .dash-sidebar-brand,
  .dash-nav-label,
  .dash-nav-item span,
  .dash-user-details {
    display: none;
  }
  
  .dash-sidebar-header {
    justify-content: center;
    padding: 20px 12px;
  }
  
  .dash-nav-item {
    justify-content: center;
    padding: 14px;
  }
  
  .dash-sidebar-footer {
    flex-direction: column;
    gap: 12px;
  }
  
  .dash-logout-btn {
    width: 100%;
  }
  
  .dash-user-avatar {
    width: 36px;
    height: 36px;
    font-size: 0.9rem;
  }
}

@media (max-width: 768px) {
  .dash-sidebar {
    transform: translateX(-100%);
    transition: transform 0.3s ease;
  }
  
  .dash-sidebar.open {
    transform: translateX(0);
  }
  
  .dash-main {
    margin-left: 0;
  }
  
  .dash-stats {
    grid-template-columns: 1fr 1fr;
    padding: 16px;
    gap: 12px;
  }
  
  .dash-stat-card {
    padding: 16px;
  }
  
  .dash-stat-num {
    font-size: 1.75rem;
  }
  
  .dash-topbar {
    padding: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  
  .dash-content-wrapper {
    padding: 0 16px 16px;
  }
  
  .dash-content-tabs {
    width: 100%;
  }
  
  .dash-content-tab {
    flex: 1;
    text-align: center;
  }
  
  .dash-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .dash-stats {
    grid-template-columns: 1fr;
  }
  
  .dash-stat-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  
  .dash-stat-trend {
    align-self: flex-end;
  }
}


/* ===== Merged: cart-styles.css ===== */
/* ========================================
   BENZY LUXURY - CART PAGE STYLES
   Enhanced Modern Design
   ======================================== */

/* CSS Variables */
:root {
  --primary-color: #1a1a1a;
  --secondary-color: #333333;
  --accent-gold: #c9a962;
  --accent-gold-light: #e5d4a1;
  --accent-gold-dark: #a68b4b;
  --text-dark: #1a1a1a;
  --text-light: #666666;
  --text-muted: #999999;
  --bg-light: #f8f8f8;
  --bg-white: #ffffff;
  --border-light: #e5e5e5;
  --border-radius: 12px;
  --border-radius-lg: 16px;
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --font-primary: 'Playfair Display', Georgia, serif;
  --font-secondary: 'Inter', -apple-system, sans-serif;
}

/* Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body.cart-body {
  font-family: var(--font-secondary);
  background: #ffffff;
  min-height: 100vh;
}

/* Cart Page Container */
.cart-page {
  min-height: 100vh;
  padding: 100px 40px 60px;
  max-width: 1400px;
  margin: 0 auto;
}

/* Cart Header */
.cart-header {
  text-align: center;
  margin-bottom: 48px;
}

.cart-header h1 {
  font-family: var(--font-primary);
  font-size: 2.5rem;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.cart-header p {
  color: var(--text-light);
  font-size: 1rem;
}

/* Cart Layout */
.cart-layout {
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: 40px;
  align-items: start;
}

/* Cart Items Section */
.cart-items-section {
  background: transparent;
  border-radius: var(--border-radius-lg);
  box-shadow: none;
  border: 1px solid var(--border-light);
  overflow: hidden;
}

/* Cart Table Header */
.cart-table-header {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 16px;
  padding: 20px 24px;
  background: transparent;
  border-bottom: 1px solid var(--border-light);
  font-weight: 600;
  color: var(--text-light);
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.cart-table-header span {
  text-align: center;
}

.cart-table-header span:first-child {
  text-align: left;
}

/* Cart Item */
.cart-item {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 16px;
  padding: 24px;
  border-bottom: 1px solid var(--border-light);
  align-items: center;
  transition: var(--transition);
}

body.cart-body .cart-ref-item {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 16px;
  padding: 24px;
  border-bottom: 1px solid var(--border-light);
  align-items: center;
}

body.cart-body .cart-ref-item:last-child {
  border-bottom: none;
}

body.cart-body .cart-ref-item .product-col {
  display: flex;
  gap: 16px;
  align-items: center;
}

body.cart-body .cart-ref-item .price-col,
body.cart-body .cart-ref-item .qty-col,
body.cart-body .cart-ref-item .total-col {
  text-align: center;
  font-variant-numeric: tabular-nums;
}

body.cart-body .cart-ref-item .qty-col {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.cart-item:last-child {
  border-bottom: none;
}

.cart-item:hover {
  background: rgba(201, 169, 98, 0.03);
}

/* Product Info */
.cart-product {
  display: flex;
  gap: 16px;
  align-items: center;
}

.cart-product-image {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: var(--border-radius);
  background: var(--bg-light);
}

.cart-product-details h3 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.cart-product-meta {
  display: flex;
  gap: 12px;
  font-size: 0.875rem;
  color: var(--text-muted);
}

.cart-product-meta span {
  display: flex;
  align-items: center;
  gap: 4px;
}

/* Price */
.cart-price {
  text-align: center;
  font-weight: 600;
  color: var(--text-dark);
}

/* Quantity */
.cart-quantity {
  display: flex;
  justify-content: center;
}

.qty-box {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  overflow: hidden;
  background: var(--bg-light);
}

.qty-btn {
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  color: var(--text-dark);
  font-size: 1.25rem;
  cursor: pointer;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
}

.qty-btn:hover {
  background: var(--accent-gold);
  color: white;
}

.qty-input {
  width: 50px;
  height: 36px;
  border: none;
  background: transparent;
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-dark);
}

.qty-input:focus {
  outline: none;
}

/* Total */
.cart-total {
  text-align: center;
  font-weight: 700;
  font-size: 1.125rem;
  color: var(--accent-gold-dark);
}

/* Remove Button */
.cart-remove {
  width: 40px;
  height: 40px;
  border: none;
  background: transparent;
  color: var(--text-muted);
  cursor: pointer;
  border-radius: 50%;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
}

.cart-remove:hover {
  background: rgba(220, 38, 38, 0.1);
  color: #dc2626;
}

.cart-remove svg {
  width: 20px;
  height: 20px;
}

/* Empty Cart State */
.cart-empty {
  text-align: center;
  padding: 80px 40px;
}

.cart-empty-icon {
  width: 120px;
  height: 120px;
  margin: 0 auto 24px;
  opacity: 0.3;
}

.cart-empty h2 {
  font-family: var(--font-primary);
  font-size: 1.5rem;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.cart-empty p {
  color: var(--text-light);
  margin-bottom: 24px;
}

.continue-shopping-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 32px;
  background: var(--primary-color);
  color: white;
  text-decoration: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  transition: var(--transition);
}

.continue-shopping-btn:hover {
  background: var(--secondary-color);
  transform: translateY(-2px);
}

/* Cart Actions */
.cart-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  background: transparent;
  border-top: 1px solid var(--border-light);
}

.continue-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--text-light);
  text-decoration: none;
  font-weight: 500;
  transition: var(--transition);
}

.continue-link:hover {
  color: var(--accent-gold);
}

.continue-link svg {
  width: 18px;
  height: 18px;
}

/* Order Notes */
.notes-section {
  margin-top: 24px;
  padding: 24px;
  background: transparent;
  border-radius: var(--border-radius-lg);
  box-shadow: none;
  border: 1px solid var(--border-light);
}

.notes-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: transparent;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  color: var(--text-light);
  font-size: 0.9375rem;
  cursor: pointer;
  transition: var(--transition);
}

.notes-toggle:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold-dark);
}

.notes-wrap {
  margin-top: 16px;
}

.notes-wrap textarea,
.notes-section textarea {
  width: 100%;
  min-height: 120px;
  padding: 16px;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  resize: vertical;
  transition: var(--transition);
}

.notes-wrap textarea:focus,
.notes-section textarea:focus {
  outline: none;
  border-color: var(--accent-gold);
  box-shadow: 0 0 0 3px rgba(201, 169, 98, 0.15);
}

/* Cart Summary Sidebar */
.cart-summary {
  background: transparent;
  border-radius: var(--border-radius-lg);
  box-shadow: none;
  border: 1px solid var(--border-light);
  padding: 32px;
  position: sticky;
  top: 100px;
}

.summary-header {
  text-align: center;
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--border-light);
}

.summary-header h2 {
  font-family: var(--font-primary);
  font-size: 1.5rem;
  color: var(--text-dark);
}

/* Coupon Section */
.coupon-section {
  margin-bottom: 24px;
}

.coupon-label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.coupon-input-wrap {
  display: flex;
  gap: 8px;
}

.coupon-input {
  flex: 1;
  padding: 12px 16px;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  font-size: 0.9375rem;
  transition: var(--transition);
}

.coupon-input:focus {
  outline: none;
  border-color: var(--accent-gold);
}

.coupon-btn {
  padding: 12px 20px;
  background: var(--primary-color);
  color: white;
  border: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.coupon-btn:hover {
  background: var(--secondary-color);
}

/* Order Summary */
.order-summary {
  margin-bottom: 24px;
}

.summary-row {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  color: var(--text-light);
  font-size: 0.9375rem;
}

.summary-row strong {
  color: var(--text-dark);
}

.summary-row.total {
  border-top: 2px solid var(--border-light);
  margin-top: 12px;
  padding-top: 16px;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text-dark);
}

.summary-row.total span:last-child {
  color: var(--accent-gold-dark);
  font-size: 1.5rem;
}

/* Shipping Info */
.shipping-info {
  background: transparent;
  padding: 16px;
  border-radius: var(--border-radius);
  border: 1px solid var(--border-light);
  margin-bottom: 24px;
  text-align: center;
}

.shipping-info svg {
  width: 24px;
  height: 24px;
  color: var(--accent-gold);
  margin-bottom: 8px;
}

.shipping-info p {
  font-size: 0.875rem;
  color: var(--text-light);
}

/* Checkout Button */
.checkout-btn {
  width: 100%;
  padding: 18px 32px;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  color: white;
  border: none;
  border-radius: var(--border-radius);
  font-size: 1.125rem;
  font-weight: 700;
  cursor: pointer;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.checkout-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(201, 169, 98, 0.4);
}

.checkout-btn:disabled {
  background: var(--text-muted);
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.checkout-note {
  text-align: center;
  margin-top: 16px;
  font-size: 0.8125rem;
  color: var(--text-muted);
}

/* Trust Badges */
.trust-badges {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid var(--border-light);
}

.trust-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-size: 0.75rem;
  color: var(--text-muted);
}

.trust-badge svg {
  width: 24px;
  height: 24px;
  color: var(--accent-gold);
}

/* Currency Selector */
.currency-inline {
  display: flex;
  align-items: center;
  gap: 8px;
}

.currency-inline select {
  padding: 8px 12px;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  font-size: 0.875rem;
  background: white;
  cursor: pointer;
}

/* Responsive Design */
@media (max-width: 1024px) {
  .cart-layout {
    grid-template-columns: 1fr;
  }
  
  .cart-summary {
    position: static;
  }
  
  .cart-table-header {
    display: none;
  }
  
  .cart-item,
  body.cart-body .cart-ref-item {
    grid-template-columns: 1fr;
    gap: 16px;
    text-align: center;
  }
  
  .cart-product {
    flex-direction: column;
    text-align: center;
  }
  
  .cart-product-meta {
    justify-content: center;
    flex-wrap: wrap;
  }
  
  .cart-price,
  .cart-quantity,
  .cart-total {
    text-align: center;
  }
}

@media (max-width: 768px) {
  .cart-page {
    padding: 90px 16px 40px;
  }
  
  .cart-header h1 {
    font-size: 1.75rem;
  }
  
  .cart-summary {
    padding: 24px;
  }
  
  .cart-actions {
    flex-direction: column;
    gap: 16px;
  }
}

/* Animations */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cart-item {
  animation: fadeIn 0.3s ease;
}

.cart-item:nth-child(2) { animation-delay: 0.05s; }
.cart-item:nth-child(3) { animation-delay: 0.1s; }
.cart-item:nth-child(4) { animation-delay: 0.15s; }
.cart-item:nth-child(5) { animation-delay: 0.2s; }


/* ===== Merged: profile.css ===== */
/* ========================================
   BENZY LUXURY - PROFILE PAGE STYLES
   Modern Professional Design
   ======================================== */

/* CSS Variables */
:root {
  --primary-color: #1a1a1a;
  --secondary-color: #333333;
  --accent-gold: #c9a962;
  --accent-gold-light: #e5d4a1;
  --accent-gold-dark: #a68b4b;
  --text-dark: #1a1a1a;
  --text-light: #666666;
  --text-muted: #999999;
  --bg-light: #f8f8f8;
  --bg-white: #ffffff;
  --border-light: #e5e5e5;
  --border-radius: 12px;
  --border-radius-lg: 16px;
  --border-radius-xl: 24px;
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.15);
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --font-primary: 'Playfair Display', Georgia, serif;
  --font-secondary: 'Inter', -apple-system, sans-serif;
  --sidebar-bg: #fcfbf8;
  --sidebar-border: #e7dfcf;
  --sidebar-shadow: 8px 0 26px rgba(16, 14, 10, 0.06);
  --success: #059669;
  --error: #dc2626;
  --warning: #d97706;
}

/* Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body.profile-body {
  font-family: var(--font-secondary);
  background: linear-gradient(135deg, #fafafa 0%, #f0f0f0 100%);
  min-height: 100vh;
}

/* Main Container */
.profile-container {
  display: grid;
  min-height: 100vh;
  margin-top: 72px;
  background: linear-gradient(135deg, #fafafa 0%, #f5f5f5 100%);
}

/* ========================================
   AUTH SECTION STYLES
   ======================================== */

.auth-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  min-height: calc(100vh - 72px);
  width: 100%;
}

.auth-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px 80px;
  background: var(--bg-white);
}

.auth-brand {
  text-align: center;
  margin-bottom: 40px;
}

.auth-logo {
  width: 100px;
  height: 100px;
  margin: 0 auto 28px;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  padding: 12px;
  background: var(--bg-white);
  border: 2px solid rgba(201, 169, 98, 0.3);
}

.auth-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.auth-brand h1 {
  font-family: var(--font-primary);
  font-size: 2rem;
  color: var(--text-dark);
  margin-bottom: 12px;
  letter-spacing: -0.5px;
}

.auth-brand p {
  color: var(--text-light);
  font-size: 0.9375rem;
  max-width: 400px;
  margin: 0 auto;
}

/* Auth Tabs */
.auth-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 32px;
  background: var(--bg-light);
  padding: 6px;
  border-radius: var(--border-radius);
}

.auth-tab {
  flex: 1;
  padding: 14px 24px;
  border: none;
  background: transparent;
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--text-light);
  border-radius: 8px;
  cursor: pointer;
  transition: var(--transition);
}

.auth-tab:hover {
  color: var(--text-dark);
}

.auth-tab.active {
  background: var(--bg-white);
  color: var(--text-dark);
  box-shadow: var(--shadow-sm);
}

/* Auth Forms */
.auth-form {
  display: none;
  animation: fadeIn 0.4s ease;
}

.auth-form.active {
  display: block;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Form Groups */
.auth-form .form-group {
  margin-bottom: 20px;
}

.auth-form .form-group label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.input-wrapper {
  position: relative;
}

.input-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  color: var(--text-muted);
  pointer-events: none;
}

.auth-form input {
  width: 100%;
  padding: 16px 16px 16px 48px;
  border: 2px solid var(--border-light);
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  transition: var(--transition);
  background: var(--bg-light);
  color: var(--text-dark);
}

.auth-form input::placeholder {
  color: var(--text-muted);
  opacity: 1;
}

.auth-form input:focus {
  outline: none;
  border-color: var(--accent-gold);
  background: var(--bg-white);
  box-shadow: 0 0 0 4px rgba(201, 169, 98, 0.15);
}

.password-toggle {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}

.password-toggle svg {
  width: 20px;
  height: 20px;
  color: var(--text-muted);
  transition: var(--transition);
}

.password-toggle:hover svg {
  color: var(--text-dark);
}

.password-hint {
  display: block;
  font-size: 0.75rem;
  color: var(--text-muted);
  margin-top: 6px;
}

/* Form Options */
.form-options {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

.checkbox-container {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.875rem;
  color: var(--text-light);
  cursor: pointer;
}

.checkbox-container input {
  display: none;
}

.checkmark {
  width: 20px;
  height: 20px;
  border: 2px solid var(--border-light);
  border-radius: 4px;
  position: relative;
  transition: var(--transition);
}

.checkbox-container input:checked + .checkmark {
  background: var(--accent-gold);
  border-color: var(--accent-gold);
}

.checkbox-container input:checked + .checkmark::after {
  content: '';
  position: absolute;
  left: 6px;
  top: 2px;
  width: 5px;
  height: 10px;
  border: solid var(--primary-color);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.checkbox-container.terms a {
  color: var(--accent-gold);
  text-decoration: none;
}

.checkbox-container.terms a:hover {
  text-decoration: underline;
}

.forgot-link {
  font-size: 0.875rem;
  color: var(--accent-gold);
  text-decoration: none;
  font-weight: 500;
}

.forgot-link:hover {
  text-decoration: underline;
}

/* Auth Button */
.btn-auth {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 16px 32px;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  color: var(--primary-color);
  border: none;
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
  box-shadow: 0 4px 14px rgba(201, 169, 98, 0.4);
}

.btn-auth:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(201, 169, 98, 0.5);
}

.btn-auth svg {
  width: 20px;
  height: 20px;
  transition: var(--transition);
}

.btn-auth:hover svg {
  transform: translateX(4px);
}

/* Social Divider */
.social-divider {
  display: flex;
  align-items: center;
  margin: 28px 0;
  color: var(--text-muted);
  font-size: 0.8125rem;
}

.social-divider::before,
.social-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--border-light);
}

.social-divider span {
  padding: 0 16px;
}

/* Social Buttons */
.social-buttons {
  display: flex;
  gap: 12px;
}

.social-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px;
  border: 2px solid var(--border-light);
  border-radius: var(--border-radius);
  background: var(--bg-white);
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-dark);
  text-decoration: none;
  cursor: pointer;
  transition: var(--transition);
}

.social-btn:hover {
  border-color: var(--text-dark);
  background: var(--bg-light);
}

.social-btn svg {
  width: 20px;
  height: 20px;
}

/* Auth Switch */
.auth-switch {
  text-align: center;
  margin-top: 28px;
  color: var(--text-light);
  font-size: 0.9375rem;
}

.auth-switch a {
  color: var(--accent-gold);
  text-decoration: none;
  font-weight: 600;
  margin-left: 6px;
}

.auth-switch a:hover {
  text-decoration: underline;
}

/* Auth Features */
.auth-features {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px;
  background: linear-gradient(135deg, var(--primary-color) 0%, #2a2a2a 100%);
  color: var(--bg-white);
}

.feature-item {
  text-align: center;
  padding: 32px;
}

.feature-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 20px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.feature-icon svg {
  width: 28px;
  height: 28px;
  color: var(--accent-gold);
}

.feature-item h3 {
  font-family: var(--font-primary);
  font-size: 1.25rem;
  margin-bottom: 10px;
}

.feature-item p {
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.6;
}

/* ========================================
   DASHBOARD SECTION STYLES
   ======================================== */

.dashboard-section {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  width: 100%;
  min-height: calc(100vh - 72px);
}

/* Sidebar Styles */
.profile-sidebar {
  width: 280px;
  background: var(--sidebar-bg);
  border-right: 1px solid var(--sidebar-border);
  padding: 32px 0;
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 88px;
  max-height: calc(100vh - 96px);
  overflow-y: auto;
  box-shadow: var(--sidebar-shadow);
  z-index: 90;
  align-self: start;
}

.sidebar-header {
  text-align: center;
  padding: 8px 20px 28px;
  border-bottom: 1px solid var(--sidebar-border);
  margin: 0 16px 20px;
}

.user-avatar {
  width: 80px;
  height: 80px;
  margin: 0 auto 16px;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid var(--accent-gold);
  padding: 3px;
  background: #fff;
  position: relative;
}

.user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.avatar-status {
  position: absolute;
  bottom: 4px;
  right: 4px;
  width: 14px;
  height: 14px;
  background: var(--success);
  border: 2px solid var(--bg-white);
  border-radius: 50%;
}

.sidebar-header h2 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.sidebar-header p {
  font-size: 0.8125rem;
  color: var(--text-light);
}

/* Sidebar Navigation */
.sidebar-nav {
  padding: 8px 14px 20px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  position: static;
  left: auto;
  top: auto;
  transform: none;
  text-align: left;
  width: 100%;
}

.nav-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: none;
  background: transparent;
  border-radius: var(--border-radius);
  cursor: pointer;
  transition: var(--transition);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  color: #4f4f4f;
  text-align: left;
}

.nav-item svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.nav-item span:not(.badge) {
  flex: 1;
}

.nav-item:hover {
  background: rgba(201, 169, 98, 0.1);
  color: var(--text-dark);
}

.nav-item.active {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-light) 100%);
  color: var(--primary-color);
  font-weight: 600;
}

.nav-item .badge {
  background: var(--primary-color);
  color: var(--accent-gold);
  padding: 2px 8px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
}

.nav-divider {
  height: 1px;
  background: var(--sidebar-border);
  margin: 12px 8px;
}

.nav-item.logout {
  color: #b42318;
}

.nav-item.logout:hover {
  background: rgba(220, 38, 38, 0.1);
  color: #dc2626;
}

/* Main Content Area */
.profile-main {
  flex: 1;
  margin-left: 0;
  padding: 40px;
  max-width: 100%;
  min-width: 0;
}

/* Dashboard Layout */
.dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: start;
}

.dashboard-primary {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.dashboard-side {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Dashboard layout modes */
.profile-container[data-profile-layout=classic] .dashboard-grid {
  grid-template-columns: 1fr;
}

.profile-container[data-profile-layout=classic] .dashboard-side {
  display: none;
}

.profile-container[data-profile-layout=single] .dashboard-section {
  grid-template-columns: 1fr;
}

.profile-container[data-profile-layout=single] .profile-sidebar {
  display: none;
}

.profile-container[data-profile-layout=single] .dashboard-grid {
  grid-template-columns: 1fr;
}

.profile-container[data-profile-layout=single] .dashboard-side {
  position: static;
}

.panel-card {
  background: var(--bg-white);
  border-radius: var(--border-radius-lg);
  padding: 24px;
  border: 1px solid var(--border-light);
  box-shadow: var(--shadow-sm);
}

.panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.panel-header h3 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  color: var(--text-dark);
}

.panel-badge {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 600;
  background: rgba(201, 169, 98, 0.2);
  color: var(--accent-gold-dark);
}

.profile-progress {
  background: var(--bg-light);
  border-radius: var(--border-radius);
  padding: 16px;
  border: 1px dashed var(--border-light);
  margin-bottom: 16px;
}

.progress-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-light);
}

.progress-value {
  color: var(--text-dark);
}

.progress-bar {
  height: 8px;
  background: #e9e9e9;
  border-radius: 999px;
  overflow: hidden;
  margin: 10px 0 8px;
}

.progress-fill {
  display: block;
  height: 100%;
  width: var(--progress, 60%);
  background: linear-gradient(90deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  border-radius: 999px;
}

.progress-note {
  font-size: 0.8125rem;
  color: var(--text-light);
  line-height: 1.4;
}

.overview-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.dashboard-action {
  width: 100%;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid var(--border-light);
  background: var(--bg-white);
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  cursor: pointer;
  transition: var(--transition);
  text-align: center;
}

.dashboard-action:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold-dark);
  background: #fffdf7;
}

.dashboard-action.primary {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  color: var(--primary-color);
  border: none;
  box-shadow: 0 4px 12px rgba(201, 169, 98, 0.3);
}

.dashboard-action.primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(201, 169, 98, 0.4);
}

.quick-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.support-text {
  color: var(--text-light);
  font-size: 0.875rem;
  line-height: 1.5;
  margin-bottom: 14px;
}

/* Activity Card */
.activity-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.activity-item {
  display: grid;
  grid-template-columns: 10px 1fr;
  gap: 12px;
  align-items: start;
}

.activity-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent-gold);
  margin-top: 6px;
  box-shadow: 0 0 0 6px rgba(201, 169, 98, 0.15);
}

.activity-dot.accent {
  background: var(--primary-color);
  box-shadow: 0 0 0 6px rgba(26, 26, 26, 0.12);
}

.activity-dot.muted {
  background: var(--text-muted);
  box-shadow: 0 0 0 6px rgba(153, 153, 153, 0.12);
}

.activity-content p {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.activity-content span {
  font-size: 0.75rem;
  color: var(--text-light);
}

/* Profile Header */
.profile-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 40px;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.welcome-section h1 {
  font-family: var(--font-primary);
  font-size: 2rem;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.welcome-section p {
  color: var(--text-light);
}

.header-actions .btn-shop-now {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--primary-color);
  color: var(--bg-white);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  transition: var(--transition);
}

.header-actions .btn-shop-now:hover {
  background: var(--secondary-color);
  transform: translateY(-2px);
}

.header-actions .btn-shop-now svg {
  width: 18px;
  height: 18px;
}

.layout-switcher {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px;
  border-radius: 999px;
  background: var(--bg-light);
  border: 1px solid var(--border-light);
}

.layout-btn {
  border: none;
  background: transparent;
  color: var(--text-light);
  font-family: var(--font-secondary);
  font-size: 0.8125rem;
  font-weight: 600;
  padding: 8px 12px;
  border-radius: 999px;
  cursor: pointer;
  transition: var(--transition);
}

.layout-btn:hover {
  color: var(--text-dark);
}

.layout-btn.active {
  background: var(--bg-white);
  color: var(--text-dark);
  box-shadow: var(--shadow-sm);
}

/* Stats Grid */
.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  margin-bottom: 0;
}

.stat-card {
  background: linear-gradient(180deg, #ffffff 0%, #fcfaf6 100%);
  padding: 24px;
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  display: flex;
  align-items: center;
  gap: 16px;
  transition: var(--transition);
  border: 1px solid var(--border-light);
}

.stat-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
}

.stat-icon {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.stat-icon svg {
  width: 24px;
  height: 24px;
}

.stat-icon.orders {
  background: rgba(201, 169, 98, 0.15);
  color: var(--accent-gold);
}

.stat-icon.pending {
  background: rgba(217, 119, 6, 0.15);
  color: var(--warning);
}

.stat-icon.delivered {
  background: rgba(5, 150, 105, 0.15);
  color: var(--success);
}

.stat-icon.wallet {
  background: rgba(79, 70, 229, 0.15);
  color: #4f46e5;
}

.stat-icon .currency-symbol {
  font-family: var(--font-primary);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.5px;
}

.stat-content {
  display: flex;
  flex-direction: column;
}

.stat-number {
  font-family: var(--font-primary);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-dark);
}

.stat-label {
  font-size: 0.8125rem;
  color: var(--text-light);
}

/* Section Header */
.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

.section-header h2 {
  font-family: var(--font-primary);
  font-size: 1.5rem;
  color: var(--text-dark);
}

.section-header p {
  color: var(--text-light);
  font-size: 0.9375rem;
  margin-top: 4px;
}

.view-all-btn {
  background: none;
  border: none;
  color: var(--accent-gold);
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.view-all-btn:hover {
  text-decoration: underline;
}

/* Recent Section */
.recent-section {
  background: var(--bg-white);
  border-radius: var(--border-radius-lg);
  padding: 24px;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--border-light);
}

.recent-orders,
.orders-container {
  display: grid;
  gap: 16px;
}

.order-card {
  background: var(--bg-white);
  border-radius: var(--border-radius-lg);
  padding: 20px 22px;
  border: 1px solid var(--border-light);
  box-shadow: var(--shadow-sm);
  display: grid;
  gap: 16px;
}

.order-card-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  flex-wrap: wrap;
}

.order-label {
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.68rem;
  color: var(--text-muted);
  display: block;
  margin-bottom: 6px;
}

.order-id {
  font-family: var(--font-primary);
  font-size: 1.15rem;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.order-date {
  font-size: 0.85rem;
  color: var(--text-light);
}

.order-items-summary {
  font-size: 0.95rem;
  color: var(--text-dark);
}

.order-address,
.order-estimate {
  font-size: 0.85rem;
  color: var(--text-light);
}

.order-card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-top: 14px;
  border-top: 1px dashed var(--border-light);
  flex-wrap: wrap;
}

.order-total {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 0.82rem;
  color: var(--text-light);
}

.order-total strong {
  font-size: 1rem;
  color: var(--text-dark);
}

.order-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.order-action-btn {
  padding: 8px 16px;
  border-radius: 999px;
  border: 1px solid var(--border-light);
  background: var(--bg-white);
  color: var(--text-dark);
  font-family: var(--font-secondary);
  font-size: 0.8rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.order-action-btn:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold);
  transform: translateY(-1px);
}

.order-action-btn.btn-order-again {
  background: rgba(184, 134, 11, 0.08);
  border-color: rgba(184, 134, 11, 0.24);
  color: #9a6a00;
}

.order-action-btn.btn-order-again:hover {
  border-color: #b8860b;
  color: #7a5200;
}

.order-action-btn.btn-cancel {
  background: rgba(185, 28, 28, 0.06);
  border-color: rgba(185, 28, 28, 0.2);
  color: #b42318;
}

.order-action-btn.btn-cancel:hover {
  border-color: #b42318;
  color: #8f1b13;
}

.order-card .tracking-status-badge {
  font-size: 0.75rem;
  padding: 6px 12px;
}

.order-card[data-variant=compact] {
  padding: 16px 18px;
}

.order-card[data-variant=compact] .order-card-footer {
  border-top: none;
  padding-top: 0;
}

.order-card[data-variant=compact] .order-address,
.order-card[data-variant=compact] .order-estimate {
  display: none;
}

/* Payment Status Badge */
.order-payment-status {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.order-payment-status.payment-paid {
  background: #d4edda;
  color: #155724;
}

.order-payment-status.payment-pending {
  background: #fff3cd;
  color: #856404;
}

.order-payment-status.payment-failed {
  background: #f8d7da;
  color: #721c24;
}

/* Order Items Preview */
.order-items-preview {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px;
  background: #f9f8f6;
  border-radius: 10px;
}

.order-item-image {
  width: 60px;
  height: 60px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #e5e2dc;
}

.order-item-details {
  flex: 1;
}

.order-item-name {
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 4px;
  font-size: 0.95rem;
}

.order-item-qty {
  color: #6b6560;
  font-size: 0.85rem;
}

/* Order Status Badge */
.order-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: capitalize;
}

.order-status-badge .status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: currentColor;
}

.order-status-badge.status-processing {
  background: #e3f2fd;
  color: #1565c0;
}

.order-status-badge.status-shipped {
  background: #fff3e0;
  color: #e65100;
}

.order-status-badge.status-delivered {
  background: #e8f5e9;
  color: #2e7d32;
}

.order-status-badge.status-cancelled {
  background: #ffebee;
  color: #c62828;
}

.order-status-badge.status-pending {
  background: #fff8e1;
  color: #f9a825;
}

/* Order Action Buttons */
.order-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.order-action-btn {
  padding: 8px 14px;
  border-radius: 8px;
  border: 1px solid #d5d0c8;
  background: #fff;
  color: #3d3832;
  font-family: var(--font-secondary);
  font-size: 0.78rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

.order-action-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.order-action-btn.btn-view {
  background: #1a1a1a;
  color: #fff;
  border-color: #1a1a1a;
}

.order-action-btn.btn-view:hover {
  background: #333;
}

.order-action-btn.btn-track {
  background: #e8f4fd;
  color: #1565c0;
  border-color: #bbdefb;
}

.order-action-btn.btn-track:hover {
  background: #bbdefb;
}

.order-action-btn.btn-reorder {
  background: #f5f5f5;
  color: #333;
  border-color: #ddd;
}

.order-action-btn.btn-reorder:hover {
  background: #eee;
}

.order-action-btn.btn-download {
  background: #f0f7f0;
  color: #2e7d32;
  border-color: #c8e6c9;
}

.order-action-btn.btn-download:hover {
  background: #c8e6c9;
}

.order-detail-modal {
  position: fixed;
  inset: 0;
  background: rgba(15, 15, 15, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 999;
}

.order-detail-modal[hidden] {
  display: none;
}

.order-detail-dialog {
  width: min(720px, 100%);
  background: var(--bg-white);
  border-radius: var(--border-radius-lg);
  padding: 28px;
  position: relative;
  box-shadow: var(--shadow-lg);
  display: grid;
  gap: 20px;
}

.order-detail-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid var(--border-light);
  background: var(--bg-white);
  font-size: 1.4rem;
  color: var(--text-dark);
  cursor: pointer;
  transition: var(--transition);
}

.order-detail-close:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold);
}

.order-detail-label {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 0.65rem;
  color: var(--text-muted);
  margin-bottom: 8px;
}

.order-detail-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.order-detail-title-row h3 {
  font-family: var(--font-primary);
  font-size: 1.3rem;
  color: var(--text-dark);
}

.order-detail-meta {
  color: var(--text-light);
  font-size: 0.9rem;
}

.order-detail-body {
  display: grid;
  gap: 16px;
}

.order-detail-section {
  background: var(--bg-light);
  border-radius: var(--border-radius);
  padding: 16px;
  border: 1px solid var(--border-light);
}

.order-detail-section h4 {
  font-family: var(--font-primary);
  font-size: 1rem;
  margin-bottom: 10px;
  color: var(--text-dark);
}

.order-detail-items {
  display: grid;
  gap: 10px;
}

.order-detail-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.9rem;
  color: var(--text-dark);
}

.order-detail-item span:last-child {
  font-weight: 600;
}

.order-detail-totals {
  display: grid;
  gap: 8px;
}

.order-detail-total-row {
  display: flex;
  justify-content: space-between;
  font-size: 0.9rem;
  color: var(--text-dark);
}

.order-detail-total-row strong {
  font-size: 1rem;
}

.order-detail-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 16px;
}

/* Content Sections */
.content-section {
  display: none;
  animation: fadeIn 0.4s ease;
}

.content-section.active {
  display: block;
}

/* Order Filters */
.order-filters {
  display: flex;
  gap: 8px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}

.filter-btn {
  padding: 10px 20px;
  border: 2px solid var(--border-light);
  border-radius: var(--border-radius);
  background: var(--bg-white);
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  color: var(--text-light);
  cursor: pointer;
  transition: var(--transition);
}

.filter-btn:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold);
}

.filter-btn.active {
  background: var(--accent-gold);
  border-color: var(--accent-gold);
  color: var(--primary-color);
  font-weight: 600;
}

/* ========================================
   ORDER TRACKING STYLES
   ======================================== */

.tracking-form {
  background: var(--bg-white);
  padding: 32px;
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  margin-bottom: 24px;
}

.tracking-input-group {
  display: flex;
  gap: 12px;
}

.tracking-input-group input {
  flex: 1;
  padding: 16px 20px;
  border: 2px solid var(--border-light);
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 1rem;
  transition: var(--transition);
}

.tracking-input-group input:focus {
  outline: none;
  border-color: var(--accent-gold);
}

.btn-track {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 28px;
  background: var(--primary-color);
  color: var(--bg-white);
  border: none;
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.btn-track:hover {
  background: var(--secondary-color);
}

.btn-track svg {
  width: 18px;
  height: 18px;
}

/* Tracking Result */
.tracking-result {
  background: var(--bg-white);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.tracking-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  background: linear-gradient(135deg, var(--primary-color) 0%, #2a2a2a 100%);
  color: var(--bg-white);
}

.tracking-order-info h3 {
  font-family: var(--font-primary);
  font-size: 1.25rem;
  margin-bottom: 4px;
}

.tracking-order-info p {
  font-size: 0.875rem;
  opacity: 0.8;
}

.tracking-status-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 20px;
  font-weight: 600;
  font-size: 0.875rem;
}

.tracking-status-badge .status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  animation: pulse 2s infinite;
}

.tracking-status-badge.placed,
.tracking-status-badge.confirmed,
.tracking-status-badge.pending {
  background: rgba(217, 119, 6, 0.2);
  color: #f59e0b;
}

.tracking-status-badge.placed .status-dot,
.tracking-status-badge.confirmed .status-dot,
.tracking-status-badge.pending .status-dot {
  background: #f59e0b;
}

.tracking-status-badge.processing {
  background: rgba(79, 70, 229, 0.2);
  color: #6366f1;
}

.tracking-status-badge.processing .status-dot {
  background: #6366f1;
}

.tracking-status-badge.shipped {
  background: rgba(59, 130, 246, 0.2);
  color: #3b82f6;
}

.tracking-status-badge.shipped .status-dot {
  background: #3b82f6;
}

.tracking-status-badge.delivered {
  background: rgba(5, 150, 105, 0.2);
  color: #10b981;
}

.tracking-status-badge.delivered .status-dot {
  background: #10b981;
}

.tracking-status-badge.cancelled,
.tracking-status-badge.failed {
  background: rgba(185, 28, 28, 0.14);
  color: #b42318;
}

.tracking-status-badge.cancelled .status-dot,
.tracking-status-badge.failed .status-dot {
  background: #b42318;
}

@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}

/* Order Progress */
.order-progress {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 40px 24px;
  position: relative;
}

.progress-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 1;
}

.step-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--bg-light);
  border: 2px solid var(--border-light);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  transition: var(--transition);
}

.step-icon svg {
  width: 22px;
  height: 22px;
  color: var(--text-muted);
}

.progress-step.completed .step-icon {
  background: var(--accent-gold);
  border-color: var(--accent-gold);
}

.progress-step.completed .step-icon svg {
  color: var(--primary-color);
}

.progress-step.active .step-icon {
  background: var(--primary-color);
  border-color: var(--primary-color);
  animation: pulse 2s infinite;
}

.progress-step.active .step-icon svg {
  color: var(--accent-gold);
}

.step-content {
  text-align: center;
}

.step-content h4 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.step-content p {
  font-size: 0.75rem;
  color: var(--text-muted);
  white-space: nowrap;
}

.progress-line {
  flex: 1;
  height: 2px;
  background: var(--border-light);
  margin-top: 24px;
  position: relative;
}

.progress-line::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background: var(--accent-gold);
  transition: width 0.5s ease;
}

.progress-step.completed + .progress-line::after {
  width: 100%;
}

/* Tracking Items */
.tracking-items {
  padding: 24px;
  border-top: 1px solid var(--border-light);
}

.tracking-items h4 {
  font-size: 1rem;
  margin-bottom: 16px;
  color: var(--text-dark);
}

.tracking-items-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tracking-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px;
  background: var(--bg-light);
  border-radius: var(--border-radius);
}

.tracking-item-image {
  width: 60px;
  height: 60px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--bg-white);
}

.tracking-item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tracking-item-info h5 {
  font-size: 0.9375rem;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.tracking-item-info p {
  font-size: 0.8125rem;
  color: var(--text-light);
}

/* Delivery Info */
.delivery-info {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 24px;
  border-top: 1px solid var(--border-light);
  background: var(--bg-light);
}

.delivery-address h4,
.delivery-contact h4 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.delivery-address p,
.delivery-contact p {
  font-size: 0.9375rem;
  color: var(--text-light);
  line-height: 1.5;
}

/* ========================================
   WALLET STYLES
   ======================================== */

.wallet-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  flex-wrap: wrap;
}

.wallet-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(201, 169, 98, 0.18), rgba(17, 17, 17, 0.08));
  border: 1px solid rgba(201, 169, 98, 0.32);
  color: var(--text-dark);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.wallet-overview-grid,
.wallet-lower-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap: 22px;
  margin-bottom: 22px;
}

.wallet-lower-grid {
  align-items: start;
}

.wallet-balance-card,
.wallet-status-card,
.wallet-form-section,
.wallet-transactions-card {
  border-radius: calc(var(--border-radius-lg) + 2px);
  position: relative;
  overflow: hidden;
}

.wallet-balance-card {
  background:
    radial-gradient(circle at top right, rgba(201, 169, 98, 0.26), transparent 38%),
    linear-gradient(145deg, #111111 0%, #1d1d1d 55%, #2a2a2a 100%);
  padding: 34px;
  color: var(--bg-white);
  min-height: 100%;
  border: 1px solid rgba(201, 169, 98, 0.18);
  box-shadow: 0 22px 44px rgba(0, 0, 0, 0.14);
  isolation: isolate;
}

.wallet-balance-card::before {
  content: '';
  position: absolute;
  inset: auto -16% -28% auto;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201, 169, 98, 0.14), transparent 68%);
  pointer-events: none;
}

.wallet-balance-card > * {
  position: relative;
  z-index: 1;
}

.wallet-card-eyebrow {
  display: inline-block;
  margin-bottom: 20px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.7);
}

.wallet-status-card .wallet-card-eyebrow,
.wallet-form-section .wallet-card-eyebrow,
.wallet-transactions-card .wallet-card-eyebrow {
  color: var(--text-muted);
}

.balance-icon {
  width: 64px;
  height: 64px;
  margin-bottom: 20px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.balance-icon svg {
  width: 28px;
  height: 28px;
  color: var(--accent-gold);
}

.balance-label {
  display: block;
  font-size: 0.92rem;
  opacity: 0.72;
  margin-bottom: 10px;
}

.balance-amount {
  display: block;
  font-family: var(--font-primary);
  font-size: clamp(2.35rem, 3vw, 3.2rem);
  font-weight: 700;
  color: var(--accent-gold);
  margin-bottom: 14px;
  line-height: 1;
}

.wallet-card-copy,
.wallet-section-copy,
.wallet-status-note,
.wallet-helper,
.wallet-empty-state span {
  font-size: 0.92rem;
  line-height: 1.65;
  color: var(--text-light);
}

.wallet-card-copy {
  max-width: 36rem;
  margin-bottom: 22px;
  color: rgba(255, 255, 255, 0.74);
}

.wallet-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.btn-topup,
.btn-withdraw,
.amount-btn {
  padding: 12px 20px;
  border-radius: 999px;
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  font-weight: 600;
  transition: var(--transition);
  touch-action: manipulation;
}

.btn-topup,
.btn-withdraw {
  border: 1px solid transparent;
}

.btn-topup {
  background: var(--accent-gold);
  color: var(--primary-color);
  cursor: pointer;
}

.btn-withdraw {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.16);
  color: var(--bg-white);
}

.wallet-status-card,
.wallet-form-section,
.wallet-transactions-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 246, 240, 0.96));
  padding: 28px;
  border: 1px solid rgba(17, 17, 17, 0.08);
  box-shadow: var(--shadow-sm);
}

.wallet-status-card h3,
.wallet-form-section h3,
.wallet-transactions-card h3 {
  font-family: var(--font-primary);
  font-size: 1.18rem;
  margin-bottom: 12px;
  color: var(--text-dark);
}

.wallet-status-list {
  display: grid;
  gap: 12px;
  margin: 18px 0;
}

.wallet-status-item {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(17, 17, 17, 0.06);
}

.wallet-status-item strong {
  color: var(--text-dark);
  font-size: 0.92rem;
  text-align: right;
}

.wallet-status-label {
  color: var(--text-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.wallet-status-note {
  padding-top: 14px;
  border-top: 1px dashed rgba(17, 17, 17, 0.12);
}

.topup-amounts {
  display: flex;
  gap: 12px;
  margin: 18px 0 20px;
  flex-wrap: wrap;
}

.amount-btn {
  border: 1px solid rgba(17, 17, 17, 0.1);
  background: rgba(255, 255, 255, 0.76);
  color: var(--text-dark);
}

.amount-btn.is-active {
  border-color: rgba(201, 169, 98, 0.42);
  background: linear-gradient(135deg, rgba(201, 169, 98, 0.18), rgba(255, 255, 255, 0.95));
  color: var(--text-dark);
  box-shadow: 0 12px 24px rgba(201, 169, 98, 0.18);
}

.wallet-form-mock {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
}

.wallet-form-mock input {
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(17, 17, 17, 0.12);
  background: rgba(255, 255, 255, 0.72);
  color: var(--text-dark);
}

.wallet-disabled-cta {
  border-radius: 18px;
}

.wallet-actions button[disabled],
.wallet-form-mock input[disabled],
.wallet-form-mock button[disabled],
.amount-btn[disabled] {
  cursor: not-allowed;
  opacity: 0.58;
  box-shadow: none;
  transform: none;
}

.wallet-transactions-card .transactions-list {
  margin-top: 18px;
  display: grid;
  gap: 12px;
}

.wallet-empty-state {
  padding: 24px 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px dashed rgba(17, 17, 17, 0.14);
}

.wallet-empty-state p {
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 6px;
}

.wallet-transaction-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(17, 17, 17, 0.08);
}

.wallet-transaction-copy {
  display: grid;
  gap: 6px;
}

.wallet-transaction-copy strong {
  color: var(--text-dark);
  font-size: 0.95rem;
}

.wallet-transaction-meta {
  color: var(--text-light);
  font-size: 0.84rem;
  line-height: 1.5;
}

.wallet-transaction-amount {
  font-size: 0.96rem;
  font-weight: 700;
  white-space: nowrap;
}

.wallet-transaction-amount.credit {
  color: #1f6d34;
}

.wallet-transaction-amount.debit {
  color: #9a2f2f;
}

/* ========================================
   SETTINGS STYLES
   ======================================== */

.settings-group {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.settings-card {
  background: var(--bg-white);
  padding: 28px;
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
}

.settings-card h3 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  margin-bottom: 20px;
  color: var(--text-dark);
}

.settings-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid var(--border-light);
}

.settings-item:last-child {
  border-bottom: none;
}

.settings-info h4 {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.settings-info p {
  font-size: 0.8125rem;
  color: var(--text-light);
}

/* Toggle Switch */
.toggle-switch {
  position: relative;
  width: 52px;
  height: 28px;
}

.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.toggle-switch .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--border-light);
  transition: var(--transition);
  border-radius: 28px;
}

.toggle-switch .slider::before {
  position: absolute;
  content: "";
  height: 22px;
  width: 22px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: var(--transition);
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.toggle-switch input:checked + .slider {
  background-color: var(--accent-gold);
}

.toggle-switch input:checked + .slider::before {
  transform: translateX(24px);
}

/* Danger Zone */
.settings-card.danger-zone {
  border: 1px solid rgba(220, 38, 38, 0.3);
}

.settings-card.danger-zone h3 {
  color: #dc2626;
}

.btn-danger {
  padding: 10px 20px;
  background: #dc2626;
  color: white;
  border: none;
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.btn-danger:hover {
  background: #b91c1c;
}

/* Form Styles */
.profile-form {
  max-width: 700px;
  display: block;
  grid-template-columns: none;
  gap: 0;
}

.profile-form .form-row {
  width: 100%;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}

.city-field {
  display: grid;
  align-items: stretch;
}

.city-field > select,
.city-field > input {
  width: 100%;
}

.form-row.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.profile-form .form-group.full {
  grid-column: 1 / -1;
}

.profile-form .input-hint {
  font-size: 0.75rem;
  color: var(--text-muted);
  margin-top: -4px;
}

.profile-avatar-row {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px;
  border: 1px dashed var(--border-light);
  border-radius: var(--border-radius);
  background: var(--bg-light);
}

.profile-avatar-row img {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--accent-gold);
  background: #fff;
}

.profile-avatar-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.profile-avatar-actions input[type=file] {
  font-family: var(--font-secondary);
  font-size: 0.875rem;
}

.avatar-remove {
  align-self: flex-start;
  padding: 8px 14px;
  border: 1px solid var(--border-light);
  border-radius: 999px;
  background: #fff;
  color: var(--text-dark);
  font-family: var(--font-secondary);
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.avatar-remove:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold-dark);
  background: #fffdf7;
}

.form-group label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
}

.form-group input,
.form-group select,
.compact-form input,
.compact-form select {
  padding: 14px 16px;
  border: 2px solid var(--border-light);
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  transition: var(--transition);
  background: var(--bg-light);
}

/* Keep auth inputs aligned with their icons and toggles */
.auth-form .input-wrapper input {
  padding: 16px 48px 16px 48px;
}

.form-group input:focus,
.form-group select:focus,
.compact-form input:focus,
.compact-form select:focus {
  outline: none;
  border-color: var(--accent-gold);
  background: var(--bg-white);
}

.form-group input[readonly] {
  background: #e9e9e9;
  color: var(--text-muted);
  cursor: not-allowed;
}

.form-actions {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--border-light);
  display: flex;
  justify-content: flex-end;
}

/* Buttons */
.btn-primary {
  padding: 14px 32px;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  color: var(--primary-color);
  border: none;
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
  box-shadow: 0 4px 14px rgba(201, 169, 98, 0.3);
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(201, 169, 98, 0.4);
}

.btn-secondary {
  padding: 12px 24px;
  background: var(--primary-color);
  color: var(--bg-white);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-size: 0.875rem;
  font-weight: 600;
  transition: var(--transition);
  display: inline-block;
}

.btn-secondary:hover {
  background: var(--secondary-color);
}

/* Empty State */
.empty-state {
  text-align: center;
  padding: 60px 20px;
}

.empty-state svg {
  width: 64px;
  height: 64px;
  color: var(--text-muted);
  margin-bottom: 16px;
}

.empty-state p {
  color: var(--text-light);
  margin-bottom: 20px;
}

.empty-state.small {
  padding: 30px 20px;
}

.empty-state.small svg {
  width: 40px;
  height: 40px;
}

/* Addresses Grid */
.addresses-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  margin-bottom: 24px;
}

.address-card {
  background: var(--bg-light);
  padding: 20px;
  border-radius: var(--border-radius);
  border: 1px solid var(--border-light);
  transition: var(--transition);
}

.address-card:hover {
  border-color: var(--accent-gold);
}

.address-card h4 {
  font-size: 1rem;
  margin-bottom: 8px;
  color: var(--text-dark);
}

.address-card p {
  color: var(--text-light);
  font-size: 0.875rem;
  line-height: 1.5;
}

.address-card .address-actions {
  margin-top: 14px;
  display: flex;
  gap: 8px;
}

.address-card .address-remove-btn {
  background: transparent;
  border: 1px solid var(--border-light);
  color: var(--text-light);
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.address-card .address-remove-btn:hover {
  border-color: var(--accent-gold);
  color: var(--text-dark);
}

.address-card .default-badge {
  display: inline-block;
  background: var(--accent-gold);
  color: var(--primary-color);
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  margin-bottom: 12px;
}

.add-address-card,
.add-payment-card {
  background: var(--bg-white);
  padding: 24px;
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
}

.add-address-card h3,
.add-payment-card h3 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  margin-bottom: 16px;
  color: var(--text-dark);
}

/* Transactions List */
.transactions-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.transaction-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  background: var(--bg-light);
  border-radius: var(--border-radius);
}

.transaction-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.transaction-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.transaction-icon svg {
  width: 20px;
  height: 20px;
}

.transaction-icon.credit {
  background: rgba(5, 150, 105, 0.15);
  color: var(--success);
}

.transaction-icon.debit {
  background: rgba(220, 38, 38, 0.15);
  color: var(--error);
}

.transaction-details h4 {
  font-size: 0.9375rem;
  color: var(--text-dark);
}

.transaction-details p {
  font-size: 0.8125rem;
  color: var(--text-light);
}

.transaction-amount {
  font-weight: 600;
  font-size: 1rem;
}

.transaction-amount.credit {
  color: var(--success);
}

.transaction-amount.debit {
  color: var(--error);
}

/* ========================================
   TOAST NOTIFICATIONS
   ======================================== */

.toast {
  position: fixed;
  bottom: 30px;
  right: 30px;
  padding: 16px 24px;
  background: var(--primary-color);
  color: var(--bg-white);
  border-radius: var(--border-radius);
  font-size: 0.9375rem;
  font-weight: 500;
  box-shadow: var(--shadow-xl);
  display: none;
  z-index: 10000;
  animation: slideIn 0.3s ease;
}

.toast.success {
  background: var(--success);
}

.toast.error {
  background: var(--error);
}

.toast.warning {
  background: var(--warning);
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media (max-width: 1200px) {
  .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-section {
    grid-template-columns: 240px minmax(0, 1fr);
  }

  .profile-container[data-profile-layout=single] .dashboard-section {
    grid-template-columns: 1fr;
  }

  .profile-sidebar {
    width: 240px;
  }

  .dashboard-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-side {
    position: static;
  }

  .auth-section {
    grid-template-columns: 1fr;
  }
  
  .auth-features {
    display: none;
  }
}

@media (max-width: 768px) {
  .profile-sidebar {
    display: none;
  }
  
  .profile-main {
    margin-left: 0;
    max-width: 100%;
    padding: 24px;
  }

  .dashboard-section {
    grid-template-columns: 1fr;
  }

  .profile-container[data-profile-layout=single] .dashboard-section {
    grid-template-columns: 1fr;
  }

  .header-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .layout-switcher {
    width: 100%;
    justify-content: space-between;
  }

  .layout-btn {
    flex: 1;
    text-align: center;
  }

  .dashboard-grid {
    gap: 20px;
  }

  .panel-card {
    padding: 20px;
  }
  
  .stats-grid {
    grid-template-columns: 1fr;
  }
  
  .form-row {
    grid-template-columns: 1fr;
  }

  .form-row.three {
    grid-template-columns: 1fr;
  }
  
  .tracking-input-group {
    flex-direction: column;
  }
  
  .order-progress {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  
  .progress-line {
    display: none;
  }
  
  .progress-step {
    flex-direction: row;
    gap: 16px;
  }
  
  .step-content {
    text-align: left;
  }
  
  .delivery-info {
    grid-template-columns: 1fr;
  }
  
  .wallet-overview-grid,
  .wallet-lower-grid {
    grid-template-columns: 1fr;
  }

  .wallet-header {
    flex-direction: column;
  }

  .wallet-actions {
    flex-direction: column;
  }

  .wallet-form-mock {
    grid-template-columns: 1fr;
  }

  .overview-actions {
    grid-template-columns: 1fr;
  }

  /* Order Card Mobile Styles */
  .order-card {
    padding: 16px;
  }

  .order-card-top {
    flex-direction: column;
    align-items: flex-start;
  }

  .order-items-preview {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .order-item-image {
    width: 100%;
    max-width: 120px;
    height: auto;
  }

  .order-card-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .order-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .order-action-btn {
    flex: 1;
    text-align: center;
    min-width: calc(50% - 4px);
  }
}

/* Order Details Section - Backend Connected */
.order-details-section {
  background: var(--bg-light);
  border-radius: var(--border-radius-lg);
  padding: 24px;
  margin-top: 32px;
}

.order-details-section h4 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  color: var(--text-dark);
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-light);
}

.order-items {
  margin-bottom: 16px;
}

.order-item {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  border-bottom: 1px solid var(--border-light);
}

.order-item:last-child {
  border-bottom: none;
}

.item-name {
  flex: 1;
  color: var(--text-dark);
}

.item-qty {
  color: var(--text-muted);
  margin: 0 16px;
}

.item-price {
  font-weight: 600;
  color: var(--accent-gold-dark);
}

.order-total {
  display: flex;
  justify-content: space-between;
  padding: 16px 0;
  border-top: 2px solid var(--border-light);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-dark);
}

.shipping-address {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--border-light);
}

.shipping-address strong {
  display: block;
  color: var(--text-dark);
  margin-bottom: 4px;
}

.shipping-address p {
  color: var(--text-light);
  font-size: 0.875rem;
}

.delivery-estimate {
  color: var(--accent-gold-dark) !important;
  font-size: 0.875rem;
  margin-top: 4px;
}

/* Loading & Error States */
.loading-state, .error-state {
  text-align: center;
  padding: 40px 20px;
}

.loading-state .spinner {
  width: 40px;
  height: 40px;
  border: 3px solid var(--border-light);
  border-top-color: var(--accent-gold);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin: 0 auto 16px;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.error-state p {
  color: var(--error);
  margin-bottom: 16px;
}

.btn-retry {
  background: var(--primary-color);
  color: white;
  border: none;
  padding: 10px 24px;
  border-radius: var(--border-radius);
  cursor: pointer;
  font-weight: 600;
}

.btn-retry:hover {
  background: var(--secondary-color);
}

/* ===== Merged: cart-styles.css (override) ===== */
/* ========================================
   BENZY LUXURY - CART PAGE STYLES
   Enhanced Modern Design
   ======================================== */

/* CSS Variables */
:root {
  --primary-color: #1a1a1a;
  --secondary-color: #333333;
  --accent-gold: #c9a962;
  --accent-gold-light: #e5d4a1;
  --accent-gold-dark: #a68b4b;
  --text-dark: #1a1a1a;
  --text-light: #666666;
  --text-muted: #999999;
  --bg-light: #f8f8f8;
  --bg-white: #ffffff;
  --border-light: #e5e5e5;
  --border-radius: 12px;
  --border-radius-lg: 16px;
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --font-primary: 'Playfair Display', Georgia, serif;
  --font-secondary: 'Inter', -apple-system, sans-serif;
}

/* Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body.cart-body {
  font-family: var(--font-secondary);
  background: #ffffff;
  min-height: 100vh;
  color: var(--text-dark);
}

/* Cart Page Container */
.cart-page {
  min-height: 100vh;
  padding: clamp(96px, 12vw, 120px) clamp(20px, 5vw, 56px) 80px;
  max-width: 1280px;
  margin: 0 auto;
  background: transparent;
}

/* Cart Header */
.cart-header {
  text-align: center;
  margin-bottom: 48px;
}

.cart-header h1 {
  font-family: var(--font-primary);
  font-size: clamp(2rem, 2.6vw, 2.85rem);
  color: var(--text-dark);
  margin-bottom: 8px;
  letter-spacing: -0.02em;
}

.cart-header p {
  color: var(--text-light);
  font-size: 1rem;
  max-width: 560px;
  margin: 0 auto;
}

/* Cart Layout */
.cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
}

/* Cart Items Section */
.cart-items-section {
  background: transparent;
  border-radius: 20px;
  box-shadow: none;
  border: 1px solid var(--border-light);
  overflow: hidden;
}

/* Cart Table Header */
.cart-table-header {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 16px;
  padding: 18px 28px;
  background: transparent;
  border-bottom: 1px solid var(--border-light);
  font-weight: 600;
  color: #8b8b8b;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
}

.cart-table-header span {
  text-align: center;
}

.cart-table-header span:first-child {
  text-align: left;
}

/* Cart Item */
.cart-item,
.cart-ref-item {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 16px;
  padding: 28px;
  border-bottom: 1px solid #ededed;
  align-items: center;
  transition: var(--transition);
}

.cart-item:last-child,
.cart-ref-item:last-child {
  border-bottom: none;
}

.cart-item:hover,
.cart-ref-item:hover {
  background: rgba(201, 169, 98, 0.03);
}

/* Product Info */
.cart-product {
  display: flex;
  gap: 16px;
  align-items: center;
}

.cart-ref-item .product-col {
  display: flex;
  gap: 16px;
  align-items: center;
  grid-column: 1;
}

.cart-ref-item .product-col img {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: var(--border-radius);
  background: #f3f3f3;
}

.cart-ref-item .product-meta h3 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  color: var(--text-dark);
  margin-bottom: 4px;
  letter-spacing: -0.01em;
}

.cart-ref-item .product-meta p {
  font-size: 0.875rem;
  color: var(--text-muted);
}

.cart-product-image {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: var(--border-radius);
  background: #f3f3f3;
}

.cart-product-details h3 {
  font-family: var(--font-primary);
  font-size: 1.125rem;
  color: var(--text-dark);
  margin-bottom: 4px;
  letter-spacing: -0.01em;
}

.cart-product-meta {
  display: flex;
  gap: 12px;
  font-size: 0.875rem;
  color: var(--text-muted);
}

.cart-product-meta span {
  display: flex;
  align-items: center;
  gap: 4px;
}

/* Price */
.cart-price {
  text-align: center;
  font-weight: 600;
  color: var(--text-dark);
  font-variant-numeric: tabular-nums;
}

.cart-ref-item .price-col,
.cart-ref-item .total-col,
.cart-ref-item .qty-col {
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.cart-ref-item .price-col {
  grid-column: 2;
}

.cart-ref-item .qty-col {
  grid-column: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.cart-ref-item .total-col {
  grid-column: 4;
}

.cart-ref-item .price-col strong,
.cart-ref-item .total-col strong {
  font-weight: 700;
  color: var(--text-dark);
}

/* Quantity */
.cart-quantity {
  display: flex;
  justify-content: center;
}

.cart-ref-item .qty-box {
  justify-self: center;
}

.cart-ref-item .cart-remove {
  margin-left: 4px;
}

.qty-box {
  display: inline-flex;
  align-items: center;
  border: 1px solid #e6e6e6;
  border-radius: var(--border-radius);
  overflow: hidden;
  background: #fafafa;
}

.qty-btn {
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  color: var(--text-dark);
  font-size: 1.25rem;
  cursor: pointer;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
}

.qty-btn:hover {
  background: var(--accent-gold);
  color: white;
}

.qty-input {
  width: 50px;
  height: 36px;
  border: none;
  background: transparent;
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-dark);
  font-variant-numeric: tabular-nums;
}

.qty-input:focus {
  outline: none;
}

/* Total */
.cart-total {
  text-align: center;
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--accent-gold-dark);
  font-variant-numeric: tabular-nums;
}

.cart-ref-item .total-col {
  color: var(--accent-gold-dark);
  font-size: 1.05rem;
}

/* Remove Button */
.cart-remove {
  width: 40px;
  height: 40px;
  border: none;
  background: transparent;
  color: var(--text-muted);
  cursor: pointer;
  border-radius: 50%;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
}

.cart-remove:hover {
  background: rgba(220, 38, 38, 0.1);
  color: #dc2626;
}

.cart-remove svg {
  width: 20px;
  height: 20px;
}

/* Empty Cart State */
.cart-empty {
  text-align: center;
  padding: 80px 40px;
}

#cart-empty[hidden] {
  display: none;
}

.cart-empty-icon {
  width: 120px;
  height: 120px;
  margin: 0 auto 24px;
  opacity: 0.3;
}

.cart-empty h2 {
  font-family: var(--font-primary);
  font-size: 1.5rem;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.cart-empty p {
  color: var(--text-light);
  margin-bottom: 24px;
}

.continue-shopping-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 32px;
  background: var(--primary-color);
  color: white;
  text-decoration: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  transition: var(--transition);
}

.continue-shopping-btn:hover {
  background: var(--secondary-color);
  transform: translateY(-2px);
}

/* Cart Actions */
.cart-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 28px;
  background: transparent;
  border-top: 1px solid var(--border-light);
}

.right-actions {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

.continue-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--text-light);
  text-decoration: none;
  font-weight: 500;
  transition: var(--transition);
}

.continue-link:hover {
  color: var(--accent-gold);
}

.continue-link svg {
  width: 18px;
  height: 18px;
}

/* Order Notes */
.notes-section {
  margin-top: 16px;
  padding: 24px;
  background: transparent;
  border-radius: 20px;
  box-shadow: none;
  border: 1px solid var(--border-light);
}

.notes-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: transparent;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  color: var(--text-light);
  font-size: 0.9375rem;
  cursor: pointer;
  transition: var(--transition);
}

.notes-toggle:hover {
  border-color: var(--accent-gold);
  color: var(--accent-gold-dark);
}

.notes-wrap {
  margin-top: 16px;
}

.notes-wrap textarea,
.notes-section textarea {
  width: 100%;
  min-height: 120px;
  padding: 16px;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  resize: vertical;
  transition: var(--transition);
}

.notes-wrap textarea:focus,
.notes-section textarea:focus {
  outline: none;
  border-color: var(--accent-gold);
  box-shadow: 0 0 0 3px rgba(201, 169, 98, 0.15);
}

/* Cart Summary Sidebar */
.cart-summary {
  background: transparent;
  border-radius: 20px;
  box-shadow: none;
  border: 1px solid var(--border-light);
  padding: 28px;
  position: sticky;
  top: 110px;
}

.summary-header {
  text-align: center;
  margin-bottom: 28px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--border-light);
}

.summary-header h2 {
  font-family: var(--font-primary);
  font-size: 1.5rem;
  color: var(--text-dark);
}

/* Coupon Section */
.coupon-section {
  margin-bottom: 24px;
}

.coupon-label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 8px;
}

.coupon-input-wrap {
  display: flex;
  gap: 8px;
}

.coupon-input {
  flex: 1;
  padding: 12px 16px;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  font-size: 0.9375rem;
  transition: var(--transition);
  background: #ffffff;
}

.coupon-input:focus {
  outline: none;
  border-color: var(--accent-gold);
}

.coupon-btn {
  padding: 12px 20px;
  background: var(--primary-color);
  color: white;
  border: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
}

.coupon-btn:hover {
  background: var(--secondary-color);
}

/* Order Summary */
.order-summary {
  margin-bottom: 24px;
}

.summary-row {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  color: var(--text-light);
  font-size: 0.9375rem;
  font-variant-numeric: tabular-nums;
}

.summary-row strong {
  color: var(--text-dark);
}

.summary-row.total {
  border-top: 2px solid var(--border-light);
  margin-top: 12px;
  padding-top: 16px;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text-dark);
}

.summary-row.total span:last-child {
  color: var(--accent-gold-dark);
  font-size: 1.5rem;
  letter-spacing: -0.01em;
}

/* Shipping Info */
.shipping-info {
  background: transparent;
  padding: 16px;
  border-radius: var(--border-radius);
  border: none;
  margin-bottom: 24px;
  text-align: center;
}

.shipping-info svg {
  width: 24px;
  height: 24px;
  color: var(--accent-gold);
  margin-bottom: 8px;
}

.shipping-info p {
  font-size: 0.875rem;
  color: var(--text-light);
}

/* Checkout Button */
.checkout-btn {
  width: 100%;
  padding: 18px 32px;
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  color: white;
  border: none;
  border-radius: var(--border-radius);
  font-size: 1.125rem;
  font-weight: 700;
  cursor: pointer;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  letter-spacing: 0.02em;
}

.checkout-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(201, 169, 98, 0.35);
}

.checkout-btn:disabled {
  background: var(--text-muted);
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.checkout-note {
  text-align: center;
  margin-top: 16px;
  font-size: 0.8125rem;
  color: var(--text-muted);
}

/* Trust Badges */
.trust-badges {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid var(--border-light);
}

.trust-badge {
  text-align: center;
}

.trust-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-size: 0.75rem;
  color: var(--text-muted);
}

.trust-badge svg {
  width: 24px;
  height: 24px;
  color: var(--accent-gold);
}

/* Currency Selector */
body.cart-body .currency-inline {
  display: flex;
  align-items: center;
  gap: 8px;
}

body.cart-body .cart-currency-stack {
  display: grid;
  gap: 5px;
  justify-items: end;
  align-items: start;
  min-width: 220px;
  max-width: 280px;
}

body.cart-body .cart-currency-notice {
  margin: 0;
  min-height: 0;
  position: relative;
  max-width: 280px;
  padding: 0 0 0 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--text-muted);
  font-size: 0.76rem;
  line-height: 1.45;
  text-align: right;
  letter-spacing: 0.01em;
}

body.cart-body .cart-currency-notice[data-state="info"] {
  color: #7a6640;
}

body.cart-body .cart-currency-notice::before {
  content: "";
  position: absolute;
  top: 2px;
  bottom: 2px;
  left: 0;
  width: 2px;
  border-radius: 999px;
  background: rgba(201, 169, 98, 0.5);
}

body.cart-body .cart-currency-notice:empty {
  display: none;
}

body.cart-body .currency-inline select {
  padding: 8px 12px;
  border: 1px solid var(--border-light);
  border-radius: var(--border-radius);
  font-size: 0.875rem;
  background: white;
  cursor: pointer;
}

/* Responsive Design */
@media (max-width: 1024px) {
  .cart-layout {
    grid-template-columns: 1fr;
  }

  .cart-summary {
    position: static;
  }

  .cart-table-header {
    display: none;
  }

  .cart-item,
  .cart-ref-item {
    grid-template-columns: 1fr;
    gap: 16px;
    text-align: center;
  }

  .cart-product,
  .cart-ref-item .product-col {
    flex-direction: column;
    text-align: center;
  }

  .cart-product-meta {
    justify-content: center;
    flex-wrap: wrap;
  }

  .cart-price,
  .cart-quantity,
  .cart-total,
  .cart-ref-item .price-col,
  .cart-ref-item .qty-col,
  .cart-ref-item .total-col {
    text-align: center;
  }
}

@media (max-width: 768px) {
  .cart-page {
    padding: 90px 16px 48px;
  }

  .cart-header h1 {
    font-size: 1.75rem;
  }

  .cart-summary {
    padding: 24px;
  }

  .cart-actions {
    flex-direction: column;
    gap: 16px;
  }

  .right-actions {
    width: 100%;
    justify-content: flex-start;
  }

  body.cart-body .cart-currency-stack {
    justify-items: start;
    max-width: none;
    width: 100%;
  }

  body.cart-body .cart-currency-notice {
    max-width: none;
    text-align: left;
  }
}

/* Animations */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cart-item {
  animation: fadeIn 0.3s ease;
}

.cart-item:nth-child(2) { animation-delay: 0.05s; }
.cart-item:nth-child(3) { animation-delay: 0.1s; }
.cart-item:nth-child(4) { animation-delay: 0.15s; }
.cart-item:nth-child(5) { animation-delay: 0.2s; }

/* ============ ABOUT PAGE STYLES (moved from about.css) ============ */

.about-page-body {
  margin: 0;
  padding: 0;
  font-family: 'Montserrat', sans-serif;
  background: #0a0a0a;
  color: #fff;
  overflow-x: hidden;
}

/* Logo White Filter */
.about-page-body .navbar .logo-main,
.about-page-body .navbar .logo-blx,
.about-page-body .footer-logo img,
.about-page-body .footer-logo .footer-blx {
  filter: brightness(0) invert(1);
}

.about-page-body .footer-blx {
  height: 100px !important;
  margin-left: 10px;
  filter: brightness(0) invert(1);
}

.about-page-body .section-subtitle {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.75rem;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #c9a962;
  display: block;
  margin-bottom: 12px;
}

/* Hero Section */
.about-page-body .about-hero-new {
  position: relative;
  height: 100vh;
  min-height: 700px;
  overflow: hidden;
}

.about-page-body .hero-slider {
  position: absolute;
  inset: 0;
}

.about-page-body .slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.5s ease;
}

.about-page-body .slide.active {
  opacity: 1;
}

.about-page-body .hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);
}

.about-page-body .hero-content {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  z-index: 2;
}

.about-page-body .hero-tag {
  font-size: 0.8rem;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: #c9a962;
  margin-bottom: 20px;
}

.about-page-body .hero-content h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(3rem, 10vw, 8rem);
  font-weight: 700;
  letter-spacing: 8px;
  margin: 0;
  text-transform: uppercase;
}

.about-page-body .hero-tagline {
  font-size: 1.2rem;
  letter-spacing: 4px;
  margin-top: 16px;
  color: rgba(255,255,255,0.9);
}

.about-page-body .hero-scroll {
  position: absolute;
  bottom: 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.about-page-body .hero-scroll span {
  font-size: 0.7rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.7);
}

.about-page-body .scroll-line {
  width: 1px;
  height: 60px;
  background: linear-gradient(180deg, #c9a962, transparent);
  animation: scrollPulse 2s infinite;
}

@keyframes scrollPulse {
  0%, 100% { opacity: 1; height: 60px; }
  50% { opacity: 0.5; height: 40px; }
}

.about-page-body .hero-indicators {
  position: absolute;
  bottom: 40px;
  right: 40px;
  display: flex;
  gap: 12px;
  z-index: 3;
}

.about-page-body .hero-indicators span {
  width: 40px;
  height: 2px;
  background: rgba(255,255,255,0.3);
  cursor: pointer;
  transition: all 0.3s ease;
}

.about-page-body .hero-indicators span.active {
  background: #c9a962;
  width: 60px;
}

/* Stats Section */
.about-page-body .about-stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  padding: 80px 40px;
  background: #0a0a0a;
  border-bottom: 1px solid rgba(201, 169, 98, 0.2);
}

.about-page-body .stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.about-page-body .stat-number {
  font-family: 'Playfair Display', serif;
  font-size: 3.5rem;
  font-weight: 700;
  color: #c9a962;
  line-height: 1;
}

.about-page-body .stat-suffix {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  color: #c9a962;
}

.about-page-body .stat-label {
  font-size: 0.8rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}

.about-page-body .stat-divider {
  width: 1px;
  height: 60px;
  background: rgba(201, 169, 98, 0.3);
}

/* Mission Section */
.about-page-body .about-mission {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  padding: 120px 80px;
  background: #0d0d0d;
  max-width: 1400px;
  margin: 0 auto;
}

.about-page-body .mission-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.about-page-body .mission-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0 0 24px;
  color: #fff;
}

.about-page-body .mission-content p {
  font-size: 1rem;
  line-height: 1.8;
  color: rgba(255,255,255,0.7);
  margin-bottom: 20px;
}

.about-page-body .mission-features {
  display: flex;
  gap: 30px;
  margin-top: 40px;
}

.about-page-body .feature {
  flex: 1;
  padding: 24px;
  background: rgba(201, 169, 98, 0.05);
  border: 1px solid rgba(201, 169, 98, 0.1);
  text-align: center;
}

.about-page-body .feature-icon {
  font-size: 1.5rem;
  color: #c9a962;
  margin-bottom: 12px;
}

.about-page-body .feature h4 {
  font-size: 0.9rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin: 0 0 8px;
  color: #fff;
}

.about-page-body .feature p {
  font-size: 0.8rem;
  margin: 0;
  color: rgba(255,255,255,0.5);
}

.about-page-body .mission-image {
  position: relative;
}

.about-page-body .mission-image img {
  width: 100%;
  height: 600px;
  object-fit: cover;
}

.about-page-body .image-frame {
  position: absolute;
  top: 30px;
  left: 30px;
  right: -30px;
  bottom: -30px;
  border: 1px solid #c9a962;
  z-index: -1;
}

/* Story Section */
.about-page-body .about-story-new {
  padding: 120px 80px;
  background: #0a0a0a;
}

.about-page-body .story-header {
  text-align: center;
  margin-bottom: 80px;
}

.about-page-body .story-header h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0;
  color: #fff;
}

.about-page-body .story-timeline {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
}

.about-page-body .story-timeline::before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 100%;
  background: linear-gradient(180deg, transparent, #c9a962, transparent);
}

.about-page-body .timeline-item {
  display: flex;
  justify-content: flex-end;
  padding-right: calc(50% + 40px);
  position: relative;
  margin-bottom: 60px;
}

.about-page-body .timeline-item:nth-child(even) {
  justify-content: flex-start;
  padding-right: 0;
  padding-left: calc(50% + 40px);
}

.about-page-body .timeline-marker {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: 16px;
  background: #c9a962;
  border-radius: 50%;
  box-shadow: 0 0 20px rgba(201, 169, 98, 0.5);
}

.about-page-body .timeline-content {
  background: rgba(255,255,255,0.03);
  padding: 30px;
  border: 1px solid rgba(201, 169, 98, 0.1);
  max-width: 350px;
}

.about-page-body .timeline-year {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  color: #c9a962;
  display: block;
  margin-bottom: 8px;
}

.about-page-body .timeline-content h4 {
  font-size: 1.1rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin: 0 0 12px;
  color: #fff;
}

.about-page-body .timeline-content p {
  font-size: 0.9rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.6);
  margin: 0;
}

/* Values Section */
.about-page-body .about-values {
  padding: 120px 80px;
  background: #0d0d0d;
}

.about-page-body .values-header {
  text-align: center;
  margin-bottom: 80px;
}

.about-page-body .values-header h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0;
  color: #fff;
}

.about-page-body .values-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  max-width: 1400px;
  margin: 0 auto;
}

.about-page-body .value-card {
  padding: 50px 30px;
  background: #0a0a0a;
  border: 1px solid rgba(201, 169, 98, 0.1);
  text-align: center;
  transition: all 0.4s ease;
}

.about-page-body .value-card:hover {
  border-color: #c9a962;
  transform: translateY(-10px);
}

.about-page-body .value-number {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  color: rgba(201, 169, 98, 0.3);
  margin-bottom: 20px;
}

.about-page-body .value-card h3 {
  font-size: 1.2rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  margin: 0 0 16px;
  color: #fff;
}

.about-page-body .value-card p {
  font-size: 0.9rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.6);
  margin: 0;
}

/* Gallery Section */
.about-page-body .about-gallery-new {
  padding: 120px 80px;
  background: #0a0a0a;
}

.about-page-body .gallery-header {
  text-align: center;
  margin-bottom: 60px;
}

.about-page-body .gallery-header h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0;
  color: #fff;
}

.about-page-body .gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 300px);
  gap: 20px;
  max-width: 1400px;
  margin: 0 auto;
}

.about-page-body .gallery-item {
  position: relative;
  overflow: hidden;
}

.about-page-body .gallery-item.item-large {
  grid-column: span 2;
  grid-row: span 2;
}

.about-page-body .gallery-item.item-wide {
  grid-column: span 2;
}

.about-page-body .gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.about-page-body .gallery-item:hover img {
  transform: scale(1.1);
}

.about-page-body .gallery-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,0.8) 100%);
  display: flex;
  align-items: flex-end;
  padding: 30px;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.about-page-body .gallery-item:hover .gallery-overlay {
  opacity: 1;
}

.about-page-body .gallery-overlay span {
  font-size: 0.8rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #c9a962;
}

/* CTA Section */
.about-page-body .about-cta {
  padding: 120px 40px;
  background: linear-gradient(180deg, #0a0a0a 0%, #1a1a1a 50%, #0a0a0a 100%);
  text-align: center;
}

.about-page-body .cta-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3.5rem;
  font-weight: 600;
  margin: 0 0 16px;
  color: #fff;
}

.about-page-body .cta-content p {
  font-size: 1.1rem;
  color: rgba(255,255,255,0.6);
  margin: 0 0 40px;
}

.about-page-body .cta-button {
  display: inline-block;
  padding: 18px 50px;
  background: #c9a962;
  color: #0a0a0a;
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.3s ease;
}

.about-page-body .cta-button:hover {
  background: #fff;
  transform: translateY(-3px);
  box-shadow: 0 10px 30px rgba(201, 169, 98, 0.3);
}

/* Connect Section */
.about-page-body .about-connect {
  padding: 120px 40px;
  background: linear-gradient(135deg, #0d0d0d 0%, #1a1a1a 50%, #0d0d0d 100%);
  text-align: center;
}

.about-page-body .about-connect-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0 0 16px;
  color: #fff;
}

.about-page-body .about-connect-content p {
  font-size: 1.1rem;
  color: rgba(255,255,255,0.6);
  margin: 0 0 40px;
}

.about-page-body .about-connect-socials {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

.about-page-body .about-connect-social {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(201, 169, 98, 0.5);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(201, 169, 98, 0.12);
  transition: all 0.3s ease;
}

.about-page-body .about-connect-social:hover {
  background: #c9a962;
  transform: translateY(-3px);
}

.about-page-body .about-connect-social img {
  width: 60%;
  height: 60%;
  object-fit: contain;
}

/* Footer */
.about-page-body .about-footer {
  padding: 60px 40px;
  background: #050505;
  border-top: 1px solid rgba(201, 169, 98, 0.1);
}

.about-page-body .footer-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}

.about-page-body .footer-logo img {
  height: 80px;
  filter: brightness(0) invert(1);
}

.about-page-body .footer-logo p {
  font-size: 0.8rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
  margin-top: 10px;
}

.about-page-body .footer-links {
  display: flex;
  gap: 40px;
}

.about-page-body .footer-links a {
  color: rgba(255,255,255,0.6);
  text-decoration: none;
  font-size: 0.85rem;
  letter-spacing: 1px;
  transition: color 0.3s ease;
}

.about-page-body .footer-links a:hover {
  color: #c9a962;
}

.about-page-body .footer-copyright p {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.3);
  margin: 0;
}

/* Responsive */
@media (max-width: 1024px) {
  .about-page-body .about-stats {
    flex-wrap: wrap;
    gap: 40px;
  }
  
  .about-page-body .stat-divider {
    display: none;
  }
  
  .about-page-body .about-mission {
    grid-template-columns: 1fr;
    padding: 80px 40px;
  }
  
  .about-page-body .mission-image img {
    height: 400px;
  }
  
  .about-page-body .values-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .about-page-body .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 250px);
  }
  
  .about-page-body .gallery-item.item-large {
    grid-column: span 2;
    grid-row: span 1;
  }
}

@media (max-width: 768px) {
  .about-page-body .hero-content h1 {
    letter-spacing: 4px;
  }
  
  .about-page-body .about-stats {
    padding: 60px 20px;
  }
  
  .about-page-body .stat-number {
    font-size: 2.5rem;
  }
  
  .about-page-body .mission-features {
    flex-direction: column;
  }
  
  .about-page-body .story-timeline::before {
    left: 20px;
  }
  
  .about-page-body .timeline-item,
  .about-page-body .timeline-item:nth-child(even) {
    padding-left: 60px;
    padding-right: 0;
    justify-content: flex-start;
  }
  
  .about-page-body .timeline-marker {
    left: 20px;
  }
  
  .about-page-body .values-grid {
    grid-template-columns: 1fr;
  }
  
  .about-page-body .gallery-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
  
  .about-page-body .gallery-item,
  .about-page-body .gallery-item.item-large,
  .about-page-body .gallery-item.item-wide {
    grid-column: span 1;
    height: 300px;
  }
  
  .about-page-body .cta-content h2 {
    font-size: 2rem;
  }

  .about-page-body .about-connect-content h2 {
    font-size: 2rem;
  }
}


/* ============ CONTACT PAGE STYLES (moved from contact.css) ============ */

.contact-page-body {
  margin: 0;
  padding: 0;
  font-family: 'Montserrat', sans-serif;
  background: #0a0a0a;
  color: #fff;
  overflow-x: hidden;
}

/* Logo White Filter */
.contact-page-body .logo-main,
.contact-page-body .logo-blx,
.contact-page-body .contact-footer-logo img,
.contact-page-body .contact-footer-logo .footer-blx {
  filter: brightness(0) invert(1);
}

.contact-page-body .footer-blx {
  height: 50px;
  margin-left: 10px;
}

/* Hero Section */
.contact-page-body .contact-hero {
  position: relative;
  height: 60vh;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
}

.contact-page-body .contact-hero-bg {
  position: absolute;
  inset: 0;
  background: url('Look Book/IMG_9967.jpg') center/cover;
  opacity: 0.3;
}

.contact-page-body .contact-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,0.5) 0%, #0a0a0a 100%);
}

.contact-page-body .contact-hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 20px;
}

.contact-page-body .contact-hero-content h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(3rem, 8vw, 6rem);
  font-weight: 700;
  letter-spacing: 8px;
  margin: 0;
  text-transform: uppercase;
}

.contact-page-body .contact-hero-content p {
  font-size: 1.1rem;
  color: rgba(255,255,255,0.7);
  margin-top: 16px;
  letter-spacing: 1px;
}

/* Contact Section */
.contact-page-body .contact-section {
  padding: 80px 40px;
  background: #0a0a0a;
}

.contact-page-body .contact-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

/* Contact Form */
.contact-page-body .contact-form-wrapper {
  background: #111;
  padding: 50px;
  border: 1px solid rgba(201, 169, 98, 0.1);
}

.contact-page-body .contact-form-wrapper h2 {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  margin: 0 0 10px;
  color: #fff;
}

.contact-page-body .contact-form-wrapper > p {
  color: rgba(255,255,255,0.6);
  margin: 0 0 30px;
  font-size: 0.95rem;
}

.contact-page-body .contact-form .form-group {
  margin-bottom: 24px;
}

.contact-page-body .contact-form label {
  display: block;
  font-size: 0.8rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.7);
  margin-bottom: 10px;
}

.contact-page-body .contact-form input,
.contact-page-body .contact-form textarea {
  width: 100%;
  padding: 16px;
  background: #0a0a0a;
  border: 1px solid rgba(255,255,255,0.1);
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  transition: all 0.3s ease;
}

.contact-page-body .contact-form input:focus,
.contact-page-body .contact-form textarea:focus {
  outline: none;
  border-color: #c9a962;
  background: #111;
}

.contact-page-body .contact-form textarea {
  min-height: 150px;
  resize: vertical;
}

.contact-page-body .contact-form input::placeholder,
.contact-page-body .contact-form textarea::placeholder {
  color: rgba(255,255,255,0.3);
}

.contact-page-body .contact-form button {
  width: 100%;
  padding: 18px;
  background: #c9a962;
  border: none;
  color: #0a0a0a;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
}

.contact-page-body .contact-form button:hover {
  background: #fff;
  transform: translateY(-2px);
}

.contact-page-body .contact-form button:disabled {
  opacity: 0.72;
  cursor: wait;
  transform: none;
}

.contact-page-body .contact-form-status {
  margin: 0 0 18px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(201, 169, 98, 0.18);
  background: rgba(201, 169, 98, 0.1);
  color: #f5e4bb;
  font-size: 0.92rem;
  line-height: 1.6;
}

.contact-page-body .contact-form-status.is-success {
  border-color: rgba(41, 149, 102, 0.28);
  background: rgba(41, 149, 102, 0.14);
  color: #d8fff0;
}

.contact-page-body .contact-form-status.is-error {
  border-color: rgba(201, 82, 59, 0.26);
  background: rgba(201, 82, 59, 0.14);
  color: #ffd8d0;
}

.contact-page-body .contact-form-status.is-pending {
  border-color: rgba(201, 169, 98, 0.24);
  background: rgba(201, 169, 98, 0.12);
  color: #f8ebc7;
}

/* Contact Info */
.contact-page-body .contact-info-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.contact-page-body .contact-info-card {
  background: #111;
  padding: 40px;
  border: 1px solid rgba(201, 169, 98, 0.1);
}

.contact-page-body .contact-info-card h3 {
  font-family: 'Playfair Display', serif;
  font-size: 1.5rem;
  margin: 0 0 20px;
  color: #c9a962;
}

.contact-page-body .contact-info-item {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 20px;
}

.contact-page-body .contact-info-item:last-child {
  margin-bottom: 0;
}

.contact-page-body .contact-info-item svg {
  width: 24px;
  height: 24px;
  color: #c9a962;
  flex-shrink: 0;
  margin-top: 3px;
}

.contact-page-body .contact-info-item p {
  margin: 0;
  color: rgba(255,255,255,0.8);
  line-height: 1.6;
}

.contact-page-body .contact-info-item a {
  color: rgba(255,255,255,0.8);
  text-decoration: none;
  transition: color 0.3s ease;
}

.contact-page-body .contact-info-item a:hover {
  color: #c9a962;
}

/* Social Links */
.contact-page-body .contact-social {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 30px;
}

.contact-page-body .contact-social a {
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.contact-page-body .contact-social a:hover {
  opacity: 0.72;
  transform: translateY(-2px);
}

.contact-page-body .contact-social img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Map Section */
.contact-page-body .contact-map {
  height: 400px;
  background: #111;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 1px solid rgba(201, 169, 98, 0.1);
}

.contact-page-body .contact-map-placeholder {
  text-align: center;
  color: rgba(255,255,255,0.5);
}

.contact-page-body .contact-map-placeholder svg {
  width: 60px;
  height: 60px;
  margin-bottom: 15px;
  color: #c9a962;
}

.contact-page-body .contact-map-placeholder p {
  margin: 0;
  font-size: 1rem;
}

/* FAQ Section */
.contact-page-body .contact-faq {
  padding: 80px 40px;
  background: #0d0d0d;
}

.contact-page-body .faq-header {
  text-align: center;
  margin-bottom: 50px;
}

.contact-page-body .faq-header span {
  font-size: 0.75rem;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #c9a962;
  display: block;
  margin-bottom: 12px;
}

.contact-page-body .faq-header h2 {
  font-family: 'Playfair Display', serif;
  font-size: 2.5rem;
  margin: 0;
  color: #fff;
}

.contact-page-body .faq-grid {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.contact-page-body .faq-item {
  background: #111;
  border: 1px solid rgba(255,255,255,0.05);
  overflow: hidden;
}

.contact-page-body .faq-question {
  width: 100%;
  padding: 24px;
  background: transparent;
  border: none;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: all 0.3s ease;
}

.contact-page-body .faq-question:hover {
  color: #c9a962;
}

.contact-page-body .faq-question::after {
  content: '+';
  font-size: 1.5rem;
  color: #c9a962;
  transition: transform 0.3s ease;
}

.contact-page-body .faq-item.active .faq-question::after {
  transform: rotate(45deg);
}

.contact-page-body .faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.contact-page-body .faq-answer p {
  padding: 0 24px 24px;
  margin: 0;
  color: rgba(255,255,255,0.7);
  line-height: 1.7;
}

.contact-page-body .faq-item.active .faq-answer {
  max-height: 200px;
}

/* Footer */
.contact-page-body .contact-footer {
  padding: 60px 40px;
  background: #050505;
  border-top: 1px solid rgba(201, 169, 98, 0.1);
}

.contact-page-body .contact-footer-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}

.contact-page-body .contact-footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.contact-page-body .contact-footer-logo img:first-child {
  height: 80px;
}

.contact-page-body .contact-footer-logo .footer-blx {
  height: 50px;
}

.contact-page-body .contact-footer-links {
  display: flex;
  gap: 40px;
}

.contact-page-body .contact-footer-links a {
  color: rgba(255,255,255,0.6);
  text-decoration: none;
  font-size: 0.85rem;
  letter-spacing: 1px;
  transition: color 0.3s ease;
}

.contact-page-body .contact-footer-links a:hover {
  color: #c9a962;
}

.contact-page-body .contact-footer-copyright {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.3);
  margin: 0;
}

/* Responsive */
@media (max-width: 1024px) {
  .contact-page-body .contact-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

@media (max-width: 768px) {
  .contact-page-body .contact-hero-content h1 {
    letter-spacing: 4px;
  }
  
  .contact-page-body .contact-section {
    padding: 60px 20px;
  }
  
  .contact-page-body .contact-form-wrapper {
    padding: 30px;
  }
  
  .contact-page-body .contact-info-card {
    padding: 30px;
  }
  
  .contact-page-body .contact-footer-links {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
  }
}


/* ============ LOOKBOOK PAGE STYLES (moved from lookbook.css) ============ */

.lookbook-page-body {
  margin: 0;
  padding: 0;
  font-family: 'Montserrat', sans-serif;
  background: #0a0a0a;
  color: #fff;
  overflow-x: hidden;
}

/* Logo White Filter */
.lookbook-page-body .logo-main,
.lookbook-page-body .logo-blx,
.lookbook-page-body .footer-logo img,
.lookbook-page-body .lb-footer-logo img,
.lookbook-page-body .lb-footer-logo .footer-blx {
  filter: brightness(0) invert(1);
}

.lookbook-page-body .footer-blx {
  height: 80px;
  margin-left: 15px;
}

/* Hero Section */
.lookbook-page-body .lb-hero {
  position: relative;
  height: 100vh;
  min-height: 700px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.lookbook-page-body .lb-hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.1);
  animation: lbHeroZoom 20s ease-in-out infinite alternate;
}

@keyframes lbHeroZoom {
  0% { transform: scale(1.1); }
  100% { transform: scale(1); }
}

.lookbook-page-body .lb-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.7) 100%);
}

.lookbook-page-body .lb-hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 20px;
}

.lookbook-page-body .lb-hero-subtitle {
  display: block;
  font-size: 0.9rem;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: #c9a962;
  margin-bottom: 20px;
}

.lookbook-page-body .lb-hero-content h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(4rem, 12vw, 10rem);
  font-weight: 700;
  letter-spacing: 10px;
  margin: 0;
  text-transform: uppercase;
  line-height: 1;
  color: #ffffff;
}

.lookbook-page-body .lb-hero-tagline {
  display: block;
  font-size: 1.3rem;
  letter-spacing: 5px;
  margin-top: 20px;
  color: rgba(255,255,255,0.8);
}

.lookbook-page-body .lb-scroll-btn {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-top: 60px;
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  font-size: 0.8rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  transition: color 0.3s ease;
}

.lookbook-page-body .lb-scroll-btn:hover {
  color: #c9a962;
}

.lookbook-page-body .lb-scroll-btn svg {
  animation: lbBounce 2s infinite;
}

@keyframes lbBounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(10px); }
}

.lookbook-page-body .lb-hero-stats {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 60px;
  z-index: 2;
}

.lookbook-page-body .lb-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.lookbook-page-body .lb-stat-num {
  font-family: 'Playfair Display', serif;
  font-size: 2rem;
  font-weight: 700;
  color: #c9a962;
}

.lookbook-page-body .lb-stat-label {
  font-size: 0.7rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}

/* Section Header */
.lookbook-page-body .lb-section-header {
  text-align: center;
  margin-bottom: 60px;
}

.lookbook-page-body .lb-section-subtitle {
  font-size: 0.75rem;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #c9a962;
  display: block;
  margin-bottom: 12px;
}

.lookbook-page-body .lb-section-header h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0;
  color: #fff;
}

/* Collections Section */
.lookbook-page-body .lb-collections {
  padding: 120px 40px;
  background: #0a0a0a;
}

.lookbook-page-body .lb-collections-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 1400px;
  margin: 0 auto;
}

.lookbook-page-body .lb-collection-card {
  position: relative;
  height: 400px;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  overflow: hidden;
}

.lookbook-page-body .lb-collection-tall {
  grid-row: span 2;
  height: 820px;
}

.lookbook-page-body .lb-collection-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 30%, rgba(0,0,0,0.9) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 30px;
  transition: all 0.4s ease;
}

.lookbook-page-body .lb-collection-card:hover .lb-collection-overlay {
  background: linear-gradient(180deg, transparent 10%, rgba(201, 169, 98, 0.3) 100%);
}

.lookbook-page-body .lb-collection-card:hover {
  transform: scale(1.02);
}

.lookbook-page-body .lb-collection-card h3 {
  font-family: 'Playfair Display', serif;
  font-size: 1.8rem;
  margin: 0 0 8px;
  color: #fff;
}

.lookbook-page-body .lb-collection-card p {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
  margin: 0 0 15px;
}

.lookbook-page-body .lb-collection-count {
  font-size: 0.75rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #c9a962;
}

/* Featured Section */
.lookbook-page-body .lb-featured {
  padding: 120px 40px;
  background: #0d0d0d;
}

.lookbook-page-body .lb-featured-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 300px);
  gap: 15px;
  max-width: 1400px;
  margin: 0 auto;
}

.lookbook-page-body .lb-featured-item {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.lookbook-page-body .lb-featured-large {
  grid-column: span 2;
  grid-row: span 2;
}

.lookbook-page-body .lb-featured-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.lookbook-page-body .lb-featured-item:hover img {
  transform: scale(1.1);
}

.lookbook-page-body .lb-featured-info {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 20px;
  background: linear-gradient(transparent, rgba(0,0,0,0.8));
}

.lookbook-page-body .lb-featured-tag {
  display: inline-block;
  font-size: 0.65rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #c9a962;
  background: rgba(201, 169, 98, 0.2);
  padding: 4px 10px;
  margin-bottom: 8px;
}

.lookbook-page-body .lb-featured-info h4 {
  font-size: 1rem;
  margin: 0;
  color: #fff;
}

/* Gallery Section */
.lookbook-page-body .lb-gallery {
  padding: 120px 40px;
  background: #0a0a0a;
}

.lookbook-page-body .lb-gallery-filters {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 40px;
}

.lookbook-page-body .lb-filter-btn {
  padding: 12px 30px;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.2);
  color: rgba(255,255,255,0.7);
  font-size: 0.8rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
}

.lookbook-page-body .lb-filter-btn:hover,
.lookbook-page-body .lb-filter-btn.active {
  background: #c9a962;
  border-color: #c9a962;
  color: #0a0a0a;
}

.lookbook-page-body .lb-gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
  max-width: 1400px;
  margin: 50px auto 0;
}

.lookbook-page-body .lb-gallery-item {
  position: relative;
  height: 350px;
  overflow: hidden;
  cursor: pointer;
  opacity: 1;
  transform: scale(1);
  transition: all 0.4s ease;
}

.lookbook-page-body .lb-gallery-tall {
  grid-row: span 2;
  height: 715px;
}

.lookbook-page-body .lb-gallery-wide {
  grid-column: span 2;
}

.lookbook-page-body .lb-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.lookbook-page-body .lb-gallery-item:hover img {
  transform: scale(1.1);
}

.lookbook-page-body .lb-gallery-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.lookbook-page-body .lb-gallery-item:hover .lb-gallery-overlay {
  opacity: 1;
}

.lookbook-page-body .lb-gallery-icon {
  font-size: 3rem;
  color: #fff;
  font-weight: 300;
}

/* CTA Section */
.lookbook-page-body .lb-cta {
  padding: 120px 40px;
  background: linear-gradient(135deg, #0d0d0d 0%, #1a1a1a 50%, #0d0d0d 100%);
  text-align: center;
}

.lookbook-page-body .lb-cta-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: 3rem;
  font-weight: 600;
  margin: 0 0 16px;
  color: #fff;
}

.lookbook-page-body .lb-cta-content p {
  font-size: 1.1rem;
  color: rgba(255,255,255,0.6);
  margin: 0 0 40px;
}

.lookbook-page-body .lb-cta-buttons {
  display: flex;
  justify-content: center;
  gap: 20px;
}

.lookbook-page-body .lb-cta-socials {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

.lookbook-page-body .lb-cta-social {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(201, 169, 98, 0.5);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(201, 169, 98, 0.12);
  transition: all 0.3s ease;
}

.lookbook-page-body .lb-cta-social:hover {
  background: #c9a962;
  transform: translateY(-3px);
}

.lookbook-page-body .lb-cta-social img {
  width: 60%;
  height: 60%;
  object-fit: contain;
}

.lookbook-page-body .lb-cta-btn {
  padding: 16px 40px;
  background: #c9a962;
  color: #0a0a0a;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.3s ease;
}

.lookbook-page-body .lb-cta-btn:hover {
  background: #fff;
  transform: translateY(-3px);
}

.lookbook-page-body .lb-cta-btn-outline {
  background: transparent;
  border: 1px solid #c9a962;
  color: #c9a962;
}

.lookbook-page-body .lb-cta-btn-outline:hover {
  background: #c9a962;
  color: #0a0a0a;
}

/* Footer */
.lookbook-page-body .lb-footer {
  padding: 60px 40px;
  background: #050505;
  border-top: 1px solid rgba(201, 169, 98, 0.1);
}

.lookbook-page-body .lb-footer-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}

.lookbook-page-body .lb-footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.lookbook-page-body .lb-footer-logo img:first-child {
  height: 100px;
}

.lookbook-page-body .lb-footer-logo .footer-blx {
  height: 70px;
}

.lookbook-page-body .lb-footer-links {
  display: flex;
  gap: 40px;
}

.lookbook-page-body .lb-footer-links a {
  color: rgba(255,255,255,0.6);
  text-decoration: none;
  font-size: 0.85rem;
  letter-spacing: 1px;
  transition: color 0.3s ease;
}

.lookbook-page-body .lb-footer-links a:hover {
  color: #c9a962;
}

.lookbook-page-body .lb-footer-copyright {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.3);
  margin: 0;
}

/* Responsive */
@media (max-width: 1200px) {
  .lookbook-page-body .lb-collections-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .lookbook-page-body .lb-collection-tall {
    grid-row: span 1;
    height: 400px;
  }
  
  .lookbook-page-body .lb-featured-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  
  .lookbook-page-body .lb-featured-large {
    grid-column: span 2;
    grid-row: span 1;
  }
  
  .lookbook-page-body .lb-gallery-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  
  .lookbook-page-body .lb-gallery-tall {
    grid-row: span 1;
    height: 350px;
  }
}

@media (max-width: 768px) {
  .lookbook-page-body .lb-hero-content h1 {
    letter-spacing: 5px;
  }
  
  .lookbook-page-body .lb-hero-stats {
    gap: 30px;
  }
  
  .lookbook-page-body .lb-stat-num {
    font-size: 1.5rem;
  }
  
  .lookbook-page-body .lb-collections-grid {
    grid-template-columns: 1fr;
  }
  
  .lookbook-page-body .lb-collection-card,
  .lookbook-page-body .lb-collection-tall {
    height: 350px;
  }
  
  .lookbook-page-body .lb-featured-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
  }
  
  .lookbook-page-body .lb-featured-large {
    grid-column: span 2;
    grid-row: span 1;
    height: 300px;
  }
  
  .lookbook-page-body .lb-gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .lookbook-page-body .lb-gallery-wide {
    grid-column: span 1;
  }
  
  .lookbook-page-body .lb-gallery-filters {
    flex-wrap: wrap;
  }
  
  .lookbook-page-body .lb-filter-btn {
    padding: 10px 20px;
    font-size: 0.7rem;
  }
  
  .lookbook-page-body .lb-cta-buttons,
  .lookbook-page-body .lb-cta-socials {
    flex-direction: column;
    align-items: center;
  }
  
.lookbook-page-body .lb-footer-links {
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}
}

/* API Base Banner */
.api-base-banner {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 9999;
  background: rgba(8, 8, 10, 0.92);
  color: #f5f5f5;
  border: 1px solid rgba(201, 169, 98, 0.8);
  border-radius: 999px;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.7rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.api-base-banner span {
  font-weight: 600;
}

.api-base-banner button {
  background: transparent;
  border: none;
  color: #c9a962;
  font-size: 0.9rem;
  cursor: pointer;
  line-height: 1;
}

@media (max-width: 768px) {
  .api-base-banner {
    left: 12px;
    right: 12px;
    bottom: 12px;
    justify-content: space-between;
  }
}
  
/* Checkout Page Styles */
.checkout-body {
  min-height: 100vh;
  background: #f5f5f5;
}

.checkout-page {
  padding: 56px 24px 48px;
  max-width: 1200px;
  margin: 0 auto;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.checkout-section {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 24px;
  margin-bottom: 20px;
}

.checkout-section:nth-child(1) { animation-delay: 0.1s; }
.checkout-section:nth-child(2) { animation-delay: 0.2s; }
.checkout-section:nth-child(3) { animation-delay: 0.3s; }

.checkout-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  color: #333;
  text-decoration: none;
  margin-bottom: 20px;
}

.checkout-back-btn:hover {
  text-decoration: underline;
}

.checkout-back-arrow {
  font-size: 1rem;
  line-height: 1;
}

.checkout-layout {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 32px;
}

.checkout-section {
  background: linear-gradient(135deg, #ffffff 0%, #fafaf8 100%);
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.04);
  transition: box-shadow 0.3s ease;
}

.checkout-section:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.checkout-section-title {
  font-family: var(--font-primary);
  font-size: 1.25rem;
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.checkout-saved-address {
  margin-bottom: 20px;
}

.checkout-saved-address label {
  display: block;
  font-size: 0.85rem;
  font-weight: 500;
  color: #4a4640;
  margin-bottom: 6px;
}

.checkout-saved-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.checkout-saved-row select {
  flex: 1;
  padding: 12px 16px;
  border: 1px solid #d9d5ce;
  border-radius: 10px;
  font-size: 0.95rem;
  background: #fff;
}

.checkout-address-manage {
  font-size: 0.72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #8a7b68;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s ease;
}

.checkout-address-manage:hover,
.checkout-address-manage:focus-visible {
  color: #13110e;
}

.checkout-address-note {
  margin-top: 6px;
  font-size: 0.8rem;
  color: #7a756c;
}

.checkout-field-locked {
  background: #f6f3ee;
  color: #5a5550;
}

.section-number {
  width: 32px;
  height: 32px;
  background: linear-gradient(135deg, #1a1a1a 0%, #4a4a4a 100%);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

.checkout-form .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 16px;
}

.checkout-form .form-row.three {
  grid-template-columns: 1fr 1fr 1fr;
}

.checkout-form .form-group {
  margin-bottom: 16px;
}

.checkout-form label {
  display: block;
  font-size: 0.85rem;
  font-weight: 500;
  color: #4a4640;
  margin-bottom: 6px;
}

.checkout-form input,
.checkout-form select {
  width: 100%;
  padding: 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 0.95rem;
}

.checkout-form input:focus,
.checkout-form select:focus {
  outline: none;
  border-color: #333;
}

.checkout-form input::placeholder {
  color: #a9a5a0;
}

.checkout-items {
  margin-bottom: 20px;
}

.checkout-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
}

.checkout-item:last-child {
  border-bottom: none;
}

.checkout-item .item-image {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #e8e4de;
}

.checkout-item .item-details {
  flex: 1;
}

.checkout-item .item-details h4 {
  font-size: 0.95rem;
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 4px;
}

.checkout-item .item-variant,
.checkout-item .item-qty {
  font-size: 0.8rem;
  color: #7a756c;
}

.checkout-item .item-price {
  font-weight: 600;
  color: #1a1a1a;
}

.checkout-totals {
  border-top: 2px solid #f0ede8;
  padding-top: 16px;
}

.total-row {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  color: #5a5550;
}

.total-row.grand-total {
  border-top: 2px dashed #e5e2dc;
  margin-top: 8px;
  padding-top: 16px;
  font-size: 1.2rem;
  font-weight: 700;
  color: #1a1a1a;
}

.payment-methods {
  display: grid;
  gap: 12px;
}

.payment-option {
  cursor: pointer;
}

.payment-option input {
  display: none;
}

.payment-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border-color 0.2s;
}

.payment-card:hover {
  border-color: #999;
}

.payment-option input:checked + .payment-card {
  border-color: #333;
  background: #f5f5f5;
}

.payment-card svg {
  width: 24px;
  height: 24px;
  color: #5a5550;
}

.payment-card span {
  font-weight: 500;
  color: #1a1a1a;
}

.payment-details {
  margin-top: 20px;
  padding: 20px;
  background: #fafaf8;
  border-radius: 12px;
}

.bank-info h4 {
  margin-bottom: 12px;
  color: #1a1a1a;
}

.bank-info p {
  margin-bottom: 8px;
  color: #4a4640;
}

.bank-note {
  font-size: 0.85rem;
  color: #7a756c;
  font-style: italic;
  margin-top: 12px !important;
}

.pay-now-btn {
  width: 100%;
  padding: 14px 24px;
  background: #333;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  margin-top: 8px;
}

.pay-now-btn:hover {
  background: #555;
}

.pay-now-btn.processing {
  background: #999;
  cursor: not-allowed;
}

.pay-now-btn .btn-amount {
  font-weight: 700;
}

.checkout-secure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
  font-size: 0.85rem;
  color: #7a756c;
}

.checkout-sidebar {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 20px;
  height: fit-content;
  position: sticky;
  top: 80px;
}

.sidebar-items {
  margin-bottom: 16px;
}

.sidebar-items .checkout-item {
  padding: 8px 0;
}

.sidebar-items .item-image {
  width: 48px;
  height: 48px;
}

.sidebar-totals .total-row {
  font-size: 0.9rem;
}

.sidebar-totals .grand-total {
  font-size: 1.1rem;
}

.empty-cart {
  text-align: center;
  color: #7a756c;
  padding: 20px;
}

.checkout-header-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.checkout-header-row .checkout-section-title {
  margin-bottom: 0;
}

.currency-inline {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.85rem;
  color: #5a5550;
}

.currency-inline select {
  padding: 6px 10px;
  border: 1px solid #d9d5ce;
  border-radius: 6px;
  font-size: 0.85rem;
  background: #fff;
  cursor: pointer;
}

.currency-inline select:focus {
  outline: none;
  border-color: #1a1a1a;
}

@media (max-width: 900px) {
  .checkout-layout {
    grid-template-columns: 1fr;
  }
  
  .checkout-sidebar {
    display: none;
  }

  .checkout-saved-row {
    flex-direction: column;
    align-items: stretch;
  }
  
  .checkout-form .form-row,
  .checkout-form .form-row.three {
    grid-template-columns: 1fr;
  }
  
  .checkout-page {
    padding: 56px 16px 32px;
  }
} 

/* Checkout Refresh */
.checkout-body {
  --checkout-ink: #17120d;
  --checkout-soft-ink: #4f443a;
  --checkout-muted: #7a6c60;
  --checkout-line: rgba(27, 20, 13, 0.12);
  --checkout-line-strong: rgba(27, 20, 13, 0.22);
  --checkout-paper: rgba(255, 251, 246, 0.92);
  --checkout-paper-strong: #fffdf9;
  --checkout-cream: #f8f0e5;
  --checkout-accent: #c4975d;
  --checkout-accent-deep: #8f6434;
  --checkout-shadow: 0 28px 60px rgba(49, 33, 16, 0.12);
  min-height: 100vh;
  color: var(--checkout-ink);
  background:
    radial-gradient(circle at top left, rgba(196, 151, 93, 0.24), transparent 30%),
    radial-gradient(circle at right 18% top 12%, rgba(23, 18, 13, 0.09), transparent 24%),
    linear-gradient(180deg, #fbf7f2 0%, #f4ede6 48%, #efe6dd 100%);
}

.checkout-page {
  position: relative;
  max-width: 1380px;
  padding: 34px 24px 56px;
}

.checkout-page::before,
.checkout-page::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 0;
}

.checkout-page::before {
  top: 54px;
  right: 0;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(196, 151, 93, 0.2) 0%, rgba(196, 151, 93, 0) 72%);
}

.checkout-page::after {
  left: -100px;
  bottom: 72px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(23, 18, 13, 0.09) 0%, rgba(23, 18, 13, 0) 72%);
}

.checkout-page > * {
  position: relative;
  z-index: 1;
}

.checkout-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  padding: 11px 16px;
  border: 1px solid rgba(23, 18, 13, 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.7);
  color: var(--checkout-ink);
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(23, 18, 13, 0.05);
  transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.checkout-back-btn:hover,
.checkout-back-btn:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(23, 18, 13, 0.18);
  background: rgba(255, 255, 255, 0.88);
  text-decoration: none;
}

.checkout-back-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(23, 18, 13, 0.08);
}

.checkout-page-tools {
  display: flex;
  justify-content: flex-end;
  position: relative;
  z-index: 20;
  margin-bottom: 18px;
  pointer-events: auto;
}

.checkout-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.95fr);
  gap: 22px;
  margin-bottom: 30px;
}

.checkout-hero-copy,
.checkout-hero-panel,
.checkout-section,
.checkout-sidebar-card,
.checkout-action-panel {
  border: 1px solid rgba(255, 255, 255, 0.5);
  box-shadow: var(--checkout-shadow);
  backdrop-filter: blur(14px);
}

.checkout-hero-copy {
  padding: 34px;
  border-radius: 34px;
  background:
    linear-gradient(145deg, rgba(16, 12, 9, 0.96) 0%, rgba(40, 29, 19, 0.95) 52%, rgba(96, 66, 34, 0.95) 100%);
  color: #fff8ef;
  overflow: hidden;
}

.checkout-eyebrow {
  margin: 0 0 14px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.checkout-hero-copy h1 {
  margin: 0 0 14px;
  font-family: 'Playfair Display', serif;
  font-size: clamp(2.35rem, 3vw, 3.5rem);
  line-height: 0.96;
  letter-spacing: -0.03em;
}

.checkout-hero-text {
  max-width: 620px;
  margin: 0;
  font-size: 1rem;
  line-height: 1.75;
  color: rgba(255, 248, 239, 0.82);
}

.checkout-hero-panel {
  display: grid;
  gap: 20px;
  padding: 28px;
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255, 252, 247, 0.95) 0%, rgba(247, 239, 230, 0.92) 100%);
}

.checkout-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.checkout-progress-step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(23, 18, 13, 0.08);
  background: rgba(255, 255, 255, 0.68);
  color: var(--checkout-muted);
  font-size: 0.88rem;
  font-weight: 600;
}

.checkout-progress-step.is-active {
  border-color: rgba(143, 100, 52, 0.32);
  background: rgba(196, 151, 93, 0.14);
  color: var(--checkout-ink);
}

.checkout-hero-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.checkout-hero-note {
  margin: 0;
  color: var(--checkout-soft-ink);
  font-size: 0.92rem;
  line-height: 1.6;
}

.hero-metric {
  min-height: 116px;
  padding: 18px;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(23, 18, 13, 0.08);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.hero-metric-label {
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--checkout-muted);
}

.hero-metric strong {
  font-family: 'Playfair Display', serif;
  font-size: 1.35rem;
  line-height: 1.1;
  color: var(--checkout-ink);
}

.checkout-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 24px;
  align-items: start;
}

.checkout-main {
  display: grid;
  gap: 22px;
}

.checkout-section {
  margin-bottom: 0;
  padding: 28px;
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255, 253, 249, 0.94) 0%, rgba(250, 244, 236, 0.92) 100%);
  border-color: rgba(255, 255, 255, 0.48);
  box-shadow: var(--checkout-shadow);
  transition: transform 0.24s ease, box-shadow 0.24s ease;
}

.checkout-section:hover {
  transform: translateY(-2px);
  box-shadow: 0 32px 64px rgba(49, 33, 16, 0.14);
}

.checkout-section-head,
.checkout-header-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.checkout-header-row .checkout-section-title {
  margin-bottom: 8px;
}

.checkout-section-title {
  margin-bottom: 8px;
  font-family: 'Playfair Display', serif;
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--checkout-ink);
  gap: 14px;
}

.section-number {
  width: 40px;
  height: 40px;
  border-radius: 16px;
  background: linear-gradient(145deg, #1c1610 0%, #7d5528 100%);
  box-shadow: 0 12px 24px rgba(23, 18, 13, 0.22);
}

.checkout-section-copy {
  max-width: 540px;
  margin: 0;
  color: var(--checkout-muted);
  font-size: 0.96rem;
  line-height: 1.75;
}

.checkout-section-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(196, 151, 93, 0.14);
  border: 1px solid rgba(143, 100, 52, 0.18);
  color: var(--checkout-accent-deep);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.checkout-address-shell {
  display: grid;
  gap: 22px;
}

.checkout-saved-address {
  padding: 20px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.82) 0%, rgba(248, 240, 229, 0.86) 100%);
  border: 1px solid rgba(23, 18, 13, 0.08);
}

.checkout-saved-address label,
.checkout-form label {
  margin-bottom: 8px;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--checkout-soft-ink);
}

.checkout-saved-row {
  gap: 12px;
}

.checkout-saved-row select,
.checkout-form input,
.checkout-form select,
.currency-inline select,
.payment-details input[type="file"] {
  border-radius: 18px;
  border: 1px solid var(--checkout-line);
  background: rgba(255, 255, 255, 0.9);
  color: var(--checkout-ink);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

.checkout-saved-row select,
.checkout-form input,
.checkout-form select {
  min-height: 54px;
  padding: 14px 16px;
  font-size: 0.96rem;
}

.checkout-form input:focus,
.checkout-form select:focus,
.checkout-saved-row select:focus,
.currency-inline select:focus,
.payment-details input[type="file"]:focus {
  outline: none;
  border-color: rgba(143, 100, 52, 0.65);
  box-shadow: 0 0 0 4px rgba(196, 151, 93, 0.16);
}

.checkout-field-locked {
  background: linear-gradient(135deg, #f0e8dc 0%, #f6f1ea 100%);
  color: var(--checkout-muted);
}

.checkout-address-manage {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 18px;
  border-radius: 16px;
  border: 1px solid rgba(23, 18, 13, 0.12);
  background: rgba(23, 18, 13, 0.04);
  color: var(--checkout-ink);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.checkout-address-manage:hover,
.checkout-address-manage:focus-visible {
  background: rgba(23, 18, 13, 0.08);
  color: var(--checkout-ink);
}

.checkout-address-note {
  margin-top: 10px;
  color: var(--checkout-muted);
  font-size: 0.92rem;
}

.checkout-form .form-row,
.checkout-form .form-row.three {
  gap: 16px;
  margin-bottom: 16px;
}

.checkout-form .form-group {
  margin-bottom: 0;
}

.checkout-page-tools .currency-inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: static !important;
  pointer-events: auto;
  min-width: 150px;
  padding: 9px 10px 9px 14px !important;
  border: 1px solid #e4d9cd !important;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.97) !important;
  box-shadow: 0 16px 32px rgba(23, 18, 13, 0.22);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.checkout-page-tools .checkout-currency-control {
  position: static !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  position: relative !important;
  min-width: 58px;
  min-height: 34px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 9px;
  background: #15171d;
  color: #ffffff;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.checkout-page-tools .checkout-currency-control::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  transform: translateY(-35%);
  pointer-events: none;
}

.checkout-page-tools .checkout-currency-kicker {
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin: 0;
  padding: 0;
  overflow: visible !important;
  clip: auto !important;
  opacity: 1 !important;
  color: currentColor;
  font-size: 0.52rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.checkout-page-tools .currency-inline span {
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: nowrap;
  border: 0;
  color: var(--checkout-soft-ink);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.checkout-page-tools .checkout-currency-control span:not(.checkout-currency-kicker) {
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0;
  padding: 0;
  overflow: visible !important;
  clip: auto !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  white-space: nowrap;
  color: var(--checkout-soft-ink);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.checkout-page-tools .currency-inline select {
  min-width: 78px;
  min-height: 36px;
  padding: 7px 14px;
  border: 1px solid #ddd3c8;
  border-radius: 999px;
  background: #ffffff;
  font-size: 0.92rem;
  font-weight: 700;
}

.checkout-page-tools .checkout-currency-control select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  display: inline-block !important;
  width: 56px;
  min-width: 56px;
  min-height: 32px;
  padding: 0 20px 0 11px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #ffffff;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.checkout-page-tools .checkout-currency-control option {
  background: #15171d;
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 900;
}

.checkout-page-tools #currency-select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.checkout-summary-note {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.checkout-note-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(23, 18, 13, 0.08);
  color: var(--checkout-muted);
  font-size: 0.82rem;
  font-weight: 600;
}

.checkout-items,
.sidebar-items {
  display: grid;
  gap: 14px;
  margin-bottom: 20px;
}

.checkout-item {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  padding: 16px;
  border: 1px solid rgba(23, 18, 13, 0.08);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.84) 0%, rgba(246, 236, 223, 0.8) 100%);
}

.checkout-item:last-child {
  border-bottom: 1px solid rgba(23, 18, 13, 0.08);
}

.checkout-item-media {
  position: relative;
}

.checkout-item .item-image {
  width: 100%;
  height: 84px;
  border-radius: 20px;
  border: 1px solid rgba(23, 18, 13, 0.08);
  box-shadow: 0 12px 24px rgba(23, 18, 13, 0.08);
}

.checkout-item .item-details {
  min-width: 0;
}

.item-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 6px;
}

.checkout-item .item-details h4 {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.4;
}

.checkout-item .item-variant {
  margin: 0;
  color: var(--checkout-muted);
  font-size: 0.9rem;
}

.item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.checkout-item .item-qty,
.item-unit-price {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(23, 18, 13, 0.06);
  color: var(--checkout-soft-ink);
  font-size: 0.8rem;
  font-weight: 700;
}

.checkout-item .item-price {
  font-size: 1rem;
  font-weight: 700;
  white-space: nowrap;
}

.checkout-totals,
.sidebar-totals {
  padding: 20px;
  border-top: none;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(22, 17, 12, 0.96) 0%, rgba(48, 35, 21, 0.95) 100%);
  color: rgba(255, 248, 239, 0.86);
}

.total-row {
  padding: 10px 0;
  color: rgba(255, 248, 239, 0.74);
  font-size: 0.95rem;
}

.total-row.total-row-discount {
  color: rgba(173, 232, 187, 0.96);
}

.total-row.total-row-discount span:last-child {
  font-weight: 700;
}

.total-row.total-row-net {
  color: rgba(255, 248, 239, 0.92);
}

.total-row.total-row-net span:last-child {
  font-weight: 700;
}

.total-row.grand-total {
  margin-top: 12px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 248, 239, 0.16);
  color: #fff8ef;
  font-size: 1.15rem;
}

.checkout-coupon-status {
  min-height: 24px;
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(23, 18, 13, 0.08);
  background: rgba(255, 255, 255, 0.72);
  color: var(--checkout-muted);
  font-size: 0.92rem;
  line-height: 1.6;
}

.checkout-coupon-status:empty {
  display: none;
}

.checkout-coupon-status[data-state="success"] {
  border-color: rgba(42, 123, 65, 0.18);
  background: rgba(231, 244, 235, 0.9);
  color: #255d33;
}

.checkout-coupon-status[data-state="pending"] {
  border-color: rgba(143, 100, 52, 0.18);
  background: rgba(251, 242, 227, 0.95);
  color: #7d572d;
}

.checkout-coupon-status[data-state="error"] {
  border-color: rgba(164, 52, 52, 0.18);
  background: rgba(252, 235, 235, 0.95);
  color: #8f2f2f;
}

.payment-methods {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.payment-card {
  position: relative;
  align-items: flex-start;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(23, 18, 13, 0.08);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.84) 0%, rgba(249, 241, 232, 0.84) 100%);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.payment-card:hover {
  transform: translateY(-2px);
  border-color: rgba(143, 100, 52, 0.24);
  box-shadow: 0 18px 34px rgba(23, 18, 13, 0.08);
}

.payment-option input:disabled + .payment-card,
.payment-card[data-disabled="true"] {
  opacity: 0.56;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.payment-option input:disabled + .payment-card:hover,
.payment-card[data-disabled="true"]:hover {
  transform: none;
  border-color: rgba(23, 18, 13, 0.08);
  box-shadow: none;
}

.payment-option input:checked + .payment-card {
  border-color: rgba(143, 100, 52, 0.34);
  background: linear-gradient(135deg, rgba(255, 249, 241, 0.94) 0%, rgba(247, 229, 201, 0.88) 100%);
  box-shadow: 0 22px 40px rgba(143, 100, 52, 0.15);
}

.payment-card svg {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  padding: 10px;
  border-radius: 16px;
  background: rgba(23, 18, 13, 0.06);
  color: var(--checkout-accent-deep);
}

.payment-copy {
  display: grid;
  gap: 5px;
}

.payment-card span {
  font-size: 1rem;
  font-weight: 700;
}

.payment-copy small {
  font-size: 0.84rem;
  line-height: 1.55;
  color: var(--checkout-muted);
}

.payment-details {
  margin-top: 18px;
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.96) 0%, rgba(244, 236, 225, 0.92) 100%);
  border: 1px solid rgba(23, 18, 13, 0.08);
}

.bank-info h4 {
  margin-bottom: 10px;
  font-family: 'Playfair Display', serif;
  font-size: 1.2rem;
}

.bank-info p {
  margin-bottom: 8px;
  color: var(--checkout-soft-ink);
}

.bank-note {
  color: var(--checkout-muted);
  font-style: normal;
}

.checkout-action-panel {
  display: grid;
  gap: 14px;
  padding: 20px;
  border-radius: 30px;
  background: linear-gradient(145deg, rgba(19, 14, 10, 0.96) 0%, rgba(46, 32, 19, 0.95) 100%);
  color: #fff8ef;
}

.checkout-apple-pay {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 24px;
  border: 1px solid rgba(255, 248, 239, 0.12);
  background: rgba(255, 248, 239, 0.06);
}

.checkout-apple-pay[hidden] {
  display: none;
}

.checkout-apple-pay-copy {
  display: grid;
  gap: 6px;
}

.checkout-apple-pay-kicker {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 248, 239, 0.72);
}

.checkout-apple-pay-note {
  margin: 0;
  color: rgba(255, 248, 239, 0.78);
  font-size: 0.9rem;
  line-height: 1.6;
}

.checkout-apple-pay-button {
  min-height: 54px;
}

.checkout-apple-pay-button[hidden] {
  display: none;
}

.checkout-alt-pay-btn {
  justify-self: start;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(255, 248, 239, 0.2);
  background: rgba(255, 248, 239, 0.1);
  color: #fff8ef;
  font-size: 0.86rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.checkout-alt-pay-btn[hidden] {
  display: none;
}

.checkout-alt-pay-btn:hover {
  background: rgba(255, 248, 239, 0.16);
  border-color: rgba(255, 248, 239, 0.3);
  transform: translateY(-1px);
}

.checkout-payment-status {
  margin-top: 0;
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 248, 239, 0.1);
  color: rgba(255, 248, 239, 0.74);
}

.checkout-payment-status[data-state="success"] {
  border-color: rgba(42, 123, 65, 0.2);
  background: rgba(231, 244, 235, 0.12);
  color: #d5f1dc;
}

.checkout-payment-status[data-state="pending"] {
  border-color: rgba(196, 151, 93, 0.24);
  background: rgba(251, 242, 227, 0.12);
  color: #f7ddb3;
}

.checkout-payment-status[data-state="error"] {
  border-color: rgba(219, 102, 102, 0.24);
  background: rgba(252, 235, 235, 0.1);
  color: #ffd1d1;
}

.pay-now-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  min-height: 86px;
  margin-top: 0;
  padding: 18px 22px;
  border-radius: 24px;
  background: linear-gradient(135deg, #e0bf85 0%, #b88349 100%);
  color: #18120d;
  box-shadow: 0 20px 40px rgba(196, 151, 93, 0.25);
}

.pay-now-btn:hover {
  background: linear-gradient(135deg, #ebcb93 0%, #c38d51 100%);
}

.pay-now-btn.processing,
.pay-now-btn:disabled {
  background: linear-gradient(135deg, #cbc2b7 0%, #a99d90 100%);
  color: rgba(24, 18, 13, 0.7);
  cursor: not-allowed;
}

.btn-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.btn-text {
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.btn-subtext {
  font-size: 0.86rem;
  color: rgba(24, 18, 13, 0.72);
}

.pay-now-btn .btn-amount {
  font-family: 'Playfair Display', serif;
  font-size: 1.55rem;
  font-weight: 700;
}

.checkout-assurance {
  display: grid;
  gap: 8px;
}

.checkout-secure {
  justify-content: flex-start;
  margin-top: 0;
  color: rgba(255, 248, 239, 0.82);
  font-size: 0.9rem;
}

.checkout-assurance-copy {
  margin: 0;
  color: rgba(255, 248, 239, 0.66);
  font-size: 0.86rem;
  line-height: 1.6;
}

.checkout-sidebar {
  display: grid;
  gap: 18px;
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  position: sticky;
  top: 28px;
}

.checkout-sidebar-card {
  padding: 22px;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255, 253, 249, 0.94) 0%, rgba(250, 244, 236, 0.92) 100%);
}

.checkout-sidebar-card--intro {
  background: linear-gradient(145deg, rgba(19, 14, 10, 0.96) 0%, rgba(60, 40, 23, 0.95) 100%);
  color: #fff8ef;
}

.checkout-sidebar-card--intro .checkout-eyebrow,
.checkout-sidebar-card--intro h3,
.checkout-sidebar-card--intro p {
  color: inherit;
}

.checkout-sidebar-card--intro h3 {
  margin: 0 0 12px;
  font-family: 'Playfair Display', serif;
  font-size: 1.8rem;
  line-height: 1.05;
}

.checkout-sidebar-copy {
  margin: 0;
  color: rgba(255, 248, 239, 0.74);
  line-height: 1.7;
}

.checkout-sidebar-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.checkout-sidebar-badges span,
.sidebar-live-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.checkout-sidebar-badges span {
  background: rgba(255, 248, 239, 0.12);
  border: 1px solid rgba(255, 248, 239, 0.14);
  color: #fff8ef;
}

.checkout-sidebar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.checkout-sidebar-head h3 {
  margin: 0;
  font-family: 'Playfair Display', serif;
  font-size: 1.35rem;
}

.sidebar-live-pill {
  background: rgba(196, 151, 93, 0.14);
  border: 1px solid rgba(143, 100, 52, 0.18);
  color: var(--checkout-accent-deep);
}

.sidebar-items .checkout-item {
  grid-template-columns: 64px minmax(0, 1fr);
  padding: 14px;
}

.sidebar-items .item-image {
  height: 64px;
  border-radius: 16px;
}

.sidebar-items .checkout-item .item-details h4 {
  font-size: 0.94rem;
}

.sidebar-items .item-price {
  font-size: 0.92rem;
}

.sidebar-items .item-meta {
  margin-top: 10px;
}

.sidebar-items .checkout-item .item-qty,
.sidebar-items .item-unit-price {
  min-height: 28px;
  font-size: 0.74rem;
}

.support-kicker {
  margin: 0 0 10px;
  color: var(--checkout-accent-deep);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.support-copy {
  margin: 0;
  color: var(--checkout-muted);
  line-height: 1.7;
}

.checkout-sidebar-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.checkout-sidebar-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(23, 18, 13, 0.1);
  background: rgba(23, 18, 13, 0.04);
  color: var(--checkout-ink);
  text-decoration: none;
  font-size: 0.86rem;
  font-weight: 700;
}

.checkout-sidebar-links a:hover,
.checkout-sidebar-links a:focus-visible {
  background: rgba(23, 18, 13, 0.08);
}

.empty-cart {
  padding: 28px 20px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px dashed rgba(23, 18, 13, 0.16);
  color: var(--checkout-muted);
}

@media (max-width: 1100px) {
  .checkout-hero {
    grid-template-columns: 1fr;
  }

  .checkout-layout {
    grid-template-columns: 1fr;
  }

  .checkout-sidebar {
    position: static;
    top: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkout-sidebar-card--summary {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .checkout-page {
    padding: 28px 16px 42px;
  }

  .checkout-section,
  .checkout-hero-copy,
  .checkout-hero-panel,
  .checkout-sidebar-card,
  .checkout-action-panel {
    border-radius: 24px;
  }

  .checkout-section,
  .checkout-hero-copy,
  .checkout-hero-panel,
  .checkout-sidebar-card {
    padding: 22px;
  }

  .checkout-sidebar {
    display: grid;
    grid-template-columns: 1fr;
  }

  .checkout-header-row,
  .checkout-section-head {
    flex-direction: column;
    align-items: stretch;
  }

  .checkout-section-tag {
    width: fit-content;
  }

  .payment-methods {
    grid-template-columns: 1fr;
  }

  .checkout-hero-grid {
    grid-template-columns: 1fr;
  }

  .pay-now-btn {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .checkout-back-btn {
    width: 100%;
    justify-content: center;
  }

  .checkout-page-tools {
    justify-content: flex-start;
    top: auto !important;
    left: 12px !important;
    right: auto !important;
    bottom: 14px !important;
    position: fixed !important;
    z-index: 9000 !important;
    margin: 0;
  }

  .checkout-page-tools .currency-inline {
    min-width: 142px;
    padding: 8px 9px 8px 12px !important;
  }

  .checkout-page-tools .checkout-currency-control {
    position: static !important;
    min-width: 58px;
    min-height: 34px;
    padding: 0;
  }

  .checkout-progress {
    flex-direction: column;
  }

  .checkout-item,
  .sidebar-items .checkout-item {
    grid-template-columns: 1fr;
  }

  .checkout-item .item-image,
  .sidebar-items .item-image {
    height: 220px;
  }

  .item-topline {
    flex-direction: column;
    gap: 8px;
  }

  .checkout-saved-row {
    flex-direction: column;
    align-items: stretch;
  }

  .checkout-form .form-row,
  .checkout-form .form-row.three {
    grid-template-columns: 1fr;
  }
}

/* Checkout moderation */
.checkout-page {
  font-family: 'Inter', sans-serif;
}

.checkout-hero-copy,
.checkout-sidebar-card--intro {
  background: linear-gradient(180deg, rgba(255, 252, 247, 0.96) 0%, rgba(247, 239, 230, 0.93) 100%);
  color: var(--checkout-ink);
}

.checkout-hero-copy h1,
.checkout-section-title,
.hero-metric strong,
.checkout-sidebar-card--intro h3,
.checkout-sidebar-head h3,
.bank-info h4,
.pay-now-btn .btn-amount {
  font-family: 'Inter', sans-serif;
}

.checkout-hero-copy {
  padding: 28px;
}

.checkout-hero-copy h1 {
  font-size: clamp(1.95rem, 2.4vw, 2.55rem);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.checkout-hero-text,
.checkout-section-copy,
.checkout-sidebar-copy,
.support-copy {
  color: var(--checkout-muted);
}

.checkout-hero-panel,
.checkout-section,
.checkout-sidebar-card,
.checkout-action-panel {
  box-shadow: 0 18px 38px rgba(49, 33, 16, 0.09);
}

.checkout-hero-panel {
  padding: 24px;
}

.checkout-progress-step {
  min-height: 36px;
  font-size: 0.82rem;
}

.hero-metric {
  min-height: 98px;
  padding: 16px;
  border-radius: 18px;
}

.hero-metric strong {
  font-size: 1.02rem;
  font-weight: 600;
}

.checkout-section {
  padding: 24px;
  border-radius: 24px;
}

.checkout-section-title {
  font-size: 1.24rem;
  font-weight: 600;
}

.checkout-section-tag,
.checkout-address-manage,
.support-kicker,
.checkout-eyebrow,
.hero-metric-label,
.address-preview-label {
  letter-spacing: 0.06em;
}

.section-number {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  font-size: 0.82rem;
}

.checkout-saved-address {
  padding: 18px;
  border-radius: 20px;
}

.checkout-saved-address label {
  font-size: 0.8rem;
}

.checkout-saved-row select {
  min-height: 50px;
  font-size: 0.94rem;
}

.checkout-address-manage {
  min-height: 50px;
  font-size: 0.74rem;
}

.checkout-address-preview {
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(23, 18, 13, 0.08);
  background: rgba(255, 255, 255, 0.72);
}

.checkout-address-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.checkout-address-preview-head h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--checkout-ink);
}

.address-preview-badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(196, 151, 93, 0.14);
  border: 1px solid rgba(143, 100, 52, 0.18);
  color: var(--checkout-accent-deep);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
}

.checkout-address-preview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.address-preview-item {
  display: grid;
  gap: 6px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(249, 245, 239, 0.9);
  border: 1px solid rgba(23, 18, 13, 0.06);
}

.address-preview-item--wide {
  grid-column: 1 / -1;
}

.address-preview-label {
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--checkout-muted);
}

.address-preview-value {
  font-size: 0.94rem;
  line-height: 1.55;
  color: var(--checkout-ink);
}

.checkout-item {
  border-radius: 20px;
}

.checkout-item .item-details h4,
.payment-card span,
.pay-now-btn .btn-text {
  font-weight: 600;
}

.payment-card {
  border-radius: 20px;
}

.payment-copy small,
.checkout-assurance-copy {
  font-size: 0.82rem;
}

.checkout-sidebar-card--intro h3 {
  font-size: 1.18rem;
  line-height: 1.35;
}

.checkout-sidebar-copy {
  color: var(--checkout-muted);
}

.checkout-sidebar-badges span {
  background: rgba(23, 18, 13, 0.05);
  border-color: rgba(23, 18, 13, 0.08);
  color: var(--checkout-soft-ink);
}

.pay-now-btn .btn-amount {
  font-size: 1.35rem;
  font-weight: 600;
}

@media (max-width: 640px) {
  .checkout-address-preview-grid {
    grid-template-columns: 1fr;
  }

  .address-preview-item--wide {
    grid-column: auto;
  }
}
 
.bl-site-footer {
  margin-top: 0;
  background: #151515;
  color: #ffffff;
  overflow: hidden;
}

.bl-site-footer__inner {
  max-width: 1520px;
  margin: 0 auto;
  padding: 56px 48px 34px;
  display: grid;
  gap: 42px;
}

.bl-site-footer__top {
  display: grid;
  grid-template-columns: minmax(320px, 1.7fr) minmax(140px, 0.7fr) minmax(140px, 0.7fr);
  gap: 42px 56px;
  align-items: start;
}

.bl-site-footer__brand {
  display: grid;
  gap: 18px;
}

.bl-site-footer__logo {
  width: 132px;
  height: auto;
  filter: brightness(0) invert(1);
}

.bl-site-footer__headline {
  margin: 0;
  font-size: 1.05rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.bl-site-footer__summary {
  max-width: 430px;
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.6;
}

.bl-site-footer__socials {
  display: flex;
  gap: 14px;
}

.bl-site-footer__socials a {
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.bl-site-footer__socials img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.bl-site-footer__kicker {
  display: block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #ffffff;
}

.bl-site-footer__links {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  transform: none !important;
  text-align: left;
  display: grid;
  align-content: start;
  gap: 14px;
}

.bl-site-footer__links a {
  width: fit-content;
  color: #ffffff;
  text-decoration: none;
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 0.98rem;
  text-transform: uppercase;
  line-height: 1.5;
  transition: color 0.2s ease, transform 0.2s ease;
}

.bl-site-footer__bottom {
  display: grid;
  grid-template-columns: minmax(320px, 1.05fr) minmax(360px, 1.15fr);
  gap: 42px 56px;
  align-items: start;
}

.bl-site-footer__info {
  display: grid;
  gap: 16px;
}

.bl-site-footer__hours {
  display: grid;
  gap: 3px;
  width: fit-content;
  color: #ffffff;
  font-size: 0.88rem;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bl-site-footer__hours-label {
  margin-bottom: 2px;
}

.bl-site-footer__hours-line {
  display: block;
}

.bl-site-footer__address {
  max-width: 620px;
  color: #ffffff;
  font-size: 0.98rem;
  line-height: 1.6;
}

.bl-site-footer__directions {
  width: fit-content;
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-size: 0.96rem;
}

.bl-site-footer__newsletter {
  display: grid;
  gap: 14px;
  max-width: 920px;
}

.bl-site-footer__newsletter p {
  color: #ffffff;
  font-size: 0.95rem;
  line-height: 1.7;
  text-transform: uppercase;
}

.bl-site-footer__newsletter a {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.bl-site-footer__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 62px;
  align-items: center;
  width: 100%;
  max-width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.22);
}

.bl-site-footer__form input {
  min-width: 0;
  height: 48px;
  padding: 0 18px;
  border: 0;
  background: transparent;
  color: #ffffff;
  font-size: 1rem;
}

.bl-site-footer__form input::placeholder {
  color: rgba(255, 255, 255, 0.86);
}

.bl-site-footer__form input:focus {
  outline: none;
}

.bl-site-footer__form button {
  height: 48px;
  border: 0;
  background: transparent;
  color: #ffffff;
  font-size: 1.7rem;
  cursor: pointer;
}

.bl-site-footer__form button:disabled {
  opacity: 0.6;
  cursor: wait;
}

.bl-site-footer__form-message {
  min-height: 1.2em;
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.84rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.78);
}

.bl-site-footer__form-message[data-state="success"] {
  color: #dff8d7;
}

.bl-site-footer__form-message[data-state="error"] {
  color: #ffb7b7;
}

.bl-site-footer__form-message[data-state="pending"] {
  color: rgba(255, 255, 255, 0.88);
}

.coupon-message,
.checkout-coupon-status {
  min-height: 1.25em;
  margin: 10px 0 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #575757;
}

.coupon-message[data-state="success"],
.checkout-coupon-status[data-state="success"] {
  color: #1f6f3d;
}

.coupon-message[data-state="error"],
.checkout-coupon-status[data-state="error"] {
  color: #a33030;
}

.coupon-message[data-state="info"],
.checkout-coupon-status[data-state="info"] {
  color: #6f5b19;
}

.coupon-message[data-state="pending"],
.checkout-coupon-status[data-state="pending"] {
  color: #6f5b19;
}

@media (prefers-reduced-motion: no-preference) {
  .bl-site-footer__socials a:hover,
  .bl-site-footer__links a:hover {
    transform: translateY(-2px);
  }
}

.bl-site-footer__socials a:hover {
  opacity: 0.72;
}

@media (max-width: 1080px) {
  .bl-site-footer__inner {
    padding: 42px 24px 28px;
  }

  .bl-site-footer__top {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 32px;
  }

  .bl-site-footer__brand {
    grid-column: 1 / -1;
  }

  .bl-site-footer__bottom {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .bl-site-footer__newsletter {
    max-width: none;
  }
}

@media (max-width: 640px) {
  .bl-site-footer__inner {
    padding: 34px 18px 24px;
    gap: 28px;
  }

  .bl-site-footer__top {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .bl-site-footer__summary,
  .bl-site-footer__hours,
  .bl-site-footer__address,
  .bl-site-footer__newsletter p {
    font-size: 0.9rem;
  }

  .bl-site-footer__form {
    grid-template-columns: minmax(0, 1fr) 52px;
  }
}

/* ========================================
   THEME MODE
   ======================================== */

html[data-theme="light"] {
  --bl-theme-text: #17110c;
  --bl-theme-muted: #695f55;
  --bl-theme-canvas: #f5efe6;
  --bl-theme-surface: rgba(255, 251, 245, 0.92);
  --bl-theme-surface-strong: #fffaf4;
  --bl-theme-surface-soft: #efe6d9;
  --bl-theme-border: rgba(23, 17, 12, 0.12);
  --bl-theme-border-strong: rgba(23, 17, 12, 0.18);
  --bl-theme-shadow: 0 18px 36px rgba(31, 23, 16, 0.12);
  --bl-floating-bg: rgba(255, 251, 245, 0.94);
  --bl-floating-border: rgba(23, 17, 12, 0.14);
  --nav-bg: rgba(250, 245, 237, 0.96);
}

html[data-theme="dark"] {
  --bl-theme-text: #f6efe5;
  --bl-theme-muted: #b5a897;
  --bl-theme-canvas: #0d1014;
  --bl-theme-surface: rgba(18, 22, 29, 0.92);
  --bl-theme-surface-strong: #121820;
  --bl-theme-surface-soft: #1b212b;
  --bl-theme-border: rgba(255, 255, 255, 0.1);
  --bl-theme-border-strong: rgba(255, 255, 255, 0.16);
  --bl-theme-shadow: 0 22px 44px rgba(0, 0, 0, 0.34);
  --bl-floating-bg: rgba(16, 19, 25, 0.94);
  --bl-floating-border: rgba(255, 255, 255, 0.12);
  --nav-bg: rgba(9, 12, 16, 0.94);
  --primary-color: #f6efe5;
  --secondary-color: #d6c7b4;
  --accent-gold: #d2aa67;
  --accent-gold-light: #ecd7aa;
  --accent-gold-dark: #ad8447;
  --text-dark: #f6efe5;
  --text-light: #b5a897;
  --text-muted: #8f8377;
  --bg-light: #171d25;
  --bg-white: #111821;
  --border-light: rgba(255, 255, 255, 0.12);
  --shadow-sm: 0 10px 24px rgba(0, 0, 0, 0.22);
  --shadow-md: 0 18px 34px rgba(0, 0, 0, 0.28);
  --shadow-lg: 0 24px 52px rgba(0, 0, 0, 0.34);
}

html[data-theme] body,
html[data-theme] .navbar,
html[data-theme] .dropdown,
html[data-theme] .bl-site-footer,
html[data-theme] .currency-inline,
html[data-theme] .bl-theme-toggle {
  transition:
    background-color 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease,
    color 0.25s ease,
    box-shadow 0.25s ease,
    filter 0.25s ease;
}

html[data-theme] body {
  color: var(--bl-theme-text);
}

html[data-theme] .currency-inline {
  background: var(--bl-floating-bg) !important;
  border-color: var(--bl-floating-border) !important;
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme] .currency-inline select {
  color: var(--bl-theme-text);
  background: transparent;
  border-color: transparent;
}

html[data-theme] .currency-inline select:focus {
  border-color: transparent;
  box-shadow: none;
}

.bl-theme-toggle {
  position: relative;
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 68px;
  min-width: 68px;
  min-height: 40px;
  padding: 4px;
  border: 1px solid var(--bl-theme-border-strong);
  border-radius: 999px;
  color: var(--bl-theme-text);
  cursor: pointer;
  flex: 0 0 auto;
  font: inherit;
}

.nav-right .bl-theme-toggle {
  margin-right: 2px;
}

.bl-theme-toggle--floating {
  position: fixed;
  top: 14px;
  right: 14px;
  z-index: 1500;
}

html[data-theme="light"] .bl-theme-toggle {
  background: linear-gradient(180deg, rgba(252, 248, 241, 0.98), rgba(232, 223, 210, 0.96));
  border-color: rgba(23, 17, 12, 0.18);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.75),
    0 12px 22px rgba(31, 23, 16, 0.16);
}

html[data-theme="dark"] .bl-theme-toggle {
  background: linear-gradient(180deg, rgba(28, 33, 42, 0.98), rgba(10, 13, 19, 0.98));
  border-color: rgba(255, 255, 255, 0.16);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 14px 24px rgba(0, 0, 0, 0.36);
}

.bl-theme-toggle:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.bl-theme-toggle__track {
  position: relative;
  flex: 0 0 auto;
  width: 58px;
  height: 30px;
  border-radius: 999px;
  border: 1px solid var(--bl-theme-border-strong);
  overflow: hidden;
}

html[data-theme="light"] .bl-theme-toggle__track {
  background: linear-gradient(180deg, rgba(223, 212, 195, 0.95), rgba(246, 238, 228, 0.95));
}

html[data-theme="dark"] .bl-theme-toggle__track {
  background: linear-gradient(180deg, rgba(31, 37, 46, 0.95), rgba(11, 15, 23, 0.95));
}

.bl-theme-toggle__icon {
  position: absolute;
  top: 50%;
  width: 12px;
  height: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  z-index: 1;
  opacity: 0.8;
}

.bl-theme-toggle__icon svg {
  width: 12px;
  height: 12px;
}

.bl-theme-toggle__icon--sun {
  left: 7px;
}

.bl-theme-toggle__icon--moon {
  right: 7px;
}

html[data-theme="light"] .bl-theme-toggle__icon--sun {
  color: #8d5f10;
}

html[data-theme="light"] .bl-theme-toggle__icon--moon {
  color: rgba(57, 57, 57, 0.45);
}

html[data-theme="dark"] .bl-theme-toggle__icon--sun {
  color: rgba(255, 223, 150, 0.42);
}

html[data-theme="dark"] .bl-theme-toggle__icon--moon {
  color: #dbe4ff;
}

.bl-theme-toggle__thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.18);
  transition: transform 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease;
  z-index: 2;
}

html[data-theme="light"] .bl-theme-toggle__thumb {
  background: linear-gradient(180deg, #fffdfa, #ece3d4);
}

html[data-theme="dark"] .bl-theme-toggle__thumb {
  transform: translateX(30px);
  background: linear-gradient(180deg, #3a4556, #111722);
}

html[data-theme] .navbar {
  background: var(--nav-bg);
  border-bottom-color: var(--bl-theme-border);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
}

html[data-theme] .dropdown {
  background: var(--nav-bg);
  border-color: var(--bl-theme-border);
}

html[data-theme="light"] :is(.nav-links a, .shop-toggle, .dropdown li a, .submenu-back-btn) {
  color: #17110c !important;
}

html[data-theme="dark"] :is(.nav-links a, .shop-toggle, .dropdown li a, .submenu-back-btn) {
  color: #f6efe5 !important;
}

html[data-theme="light"] .nav-links a::after {
  background: #17110c;
}

html[data-theme="dark"] .nav-links a::after {
  background: #f6efe5;
}

html[data-theme="light"] :is(.logo-main, .logo-blx, .nav-right img) {
  filter: none !important;
}

html[data-theme="dark"] :is(.logo-main, .logo-blx) {
  filter: brightness(0) invert(1) !important;
}

html[data-theme="dark"] .nav-right img {
  filter: brightness(0) invert(1) drop-shadow(0 0 0.6px #fff) !important;
}

html[data-theme="light"] .nav-menu-toggle {
  border-color: var(--bl-theme-border);
  background: rgba(255, 255, 255, 0.72);
}

html[data-theme="light"] .nav-menu-toggle span {
  background: #17110c;
}

html[data-theme="dark"] .nav-menu-toggle {
  border-color: rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.04);
}

html[data-theme="dark"] .nav-menu-toggle span {
  background: #f6efe5;
}

html[data-theme="light"] body.shop-page-nav .navbar,
html[data-theme="light"] body.shop-home-mode .navbar {
  background: rgba(250, 245, 237, 0.78) !important;
  border-bottom-color: rgba(23, 17, 12, 0.12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

html[data-theme="light"] body.shop-page-nav .navbar:hover,
html[data-theme="light"] body.shop-page-nav .navbar:focus-within,
html[data-theme="light"] body.shop-page-nav .navbar.is-nav-active,
html[data-theme="light"] body.shop-page-nav .navbar.is-nav-scrolled,
html[data-theme="light"] body.shop-page-nav .navbar.is-mobile-open,
html[data-theme="light"] body.shop-home-mode .navbar:hover,
html[data-theme="light"] body.shop-home-mode .navbar:focus-within,
html[data-theme="light"] body.shop-home-mode .navbar.is-nav-active,
html[data-theme="light"] body.shop-home-mode .navbar.is-nav-scrolled,
html[data-theme="light"] body.shop-home-mode .navbar.is-mobile-open {
  background: rgba(255, 251, 245, 0.96) !important;
  border-bottom-color: rgba(23, 17, 12, 0.18);
}

html[data-theme="dark"] body.shop-page-nav .navbar,
html[data-theme="dark"] body.shop-home-mode .navbar {
  background: rgba(9, 12, 16, 0.58) !important;
  border-bottom-color: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

html[data-theme="dark"] body.shop-page-nav .navbar:hover,
html[data-theme="dark"] body.shop-page-nav .navbar:focus-within,
html[data-theme="dark"] body.shop-page-nav .navbar.is-nav-active,
html[data-theme="dark"] body.shop-page-nav .navbar.is-nav-scrolled,
html[data-theme="dark"] body.shop-page-nav .navbar.is-mobile-open,
html[data-theme="dark"] body.shop-home-mode .navbar:hover,
html[data-theme="dark"] body.shop-home-mode .navbar:focus-within,
html[data-theme="dark"] body.shop-home-mode .navbar.is-nav-active,
html[data-theme="dark"] body.shop-home-mode .navbar.is-nav-scrolled,
html[data-theme="dark"] body.shop-home-mode .navbar.is-mobile-open {
  background: rgba(9, 12, 16, 0.94) !important;
  border-bottom-color: rgba(255, 255, 255, 0.18);
}

html[data-theme="light"] .bl-site-footer {
  background: #f1e9de;
  color: #17110c;
}

html[data-theme="light"] :is(
  .bl-site-footer__summary,
  .bl-site-footer__kicker,
  .bl-site-footer__links a,
  .bl-site-footer__hours,
  .bl-site-footer__address,
  .bl-site-footer__newsletter p,
  .bl-site-footer__newsletter a
) {
  color: #17110c;
}

html[data-theme="light"] .bl-site-footer__logo {
  filter: none;
}

html[data-theme="light"] .bl-site-footer__form input {
  background: rgba(255, 255, 255, 0.94);
  color: #17110c;
  border-color: rgba(23, 17, 12, 0.14);
}

html[data-theme="light"] .bl-site-footer__form input::placeholder {
  color: rgba(23, 17, 12, 0.5);
}

html[data-theme="light"] .bl-site-footer__form button {
  background: #17110c;
  color: #fffaf4;
}

html[data-theme="dark"] .bl-site-footer {
  background: #101318;
  color: #f6efe5;
}

html[data-theme="dark"] :is(
  .bl-site-footer__summary,
  .bl-site-footer__kicker,
  .bl-site-footer__links a,
  .bl-site-footer__hours,
  .bl-site-footer__address,
  .bl-site-footer__newsletter p,
  .bl-site-footer__newsletter a
) {
  color: #f6efe5;
}

html[data-theme="dark"] .bl-site-footer__form input {
  background: rgba(255, 255, 255, 0.04);
  color: #f6efe5;
  border-color: rgba(255, 255, 255, 0.1);
}

html[data-theme="dark"] .bl-site-footer__form input::placeholder {
  color: rgba(246, 239, 229, 0.45);
}

html[data-theme="dark"] .bl-site-footer__form button {
  background: #f6efe5;
  color: #17110c;
}

html[data-theme="dark"] :is(
  .search-page,
  .policy-page,
  .shop-page,
  .product-page,
  .recently-page,
  .account-page,
  body.cart-body,
  body.checkout-body,
  body.profile-body
) {
  background:
    radial-gradient(circle at 14% 10%, rgba(210, 170, 103, 0.12), transparent 28%),
    linear-gradient(180deg, #11151b 0%, #0d1014 100%);
}

html[data-theme="dark"] .profile-container {
  background:
    radial-gradient(circle at 14% 10%, rgba(210, 170, 103, 0.12), transparent 28%),
    linear-gradient(180deg, #11151b 0%, #0d1014 100%);
}

html[data-theme="dark"] :is(
  .search-copy,
  .search-panel,
  .search-input-wrap,
  .search-card,
  .history-chip,
  .search-empty,
  .policy-shell,
  .policy-hero,
  .policy-section,
  .policy-acknowledge,
  .shop-toolbar,
  .shop-filter-toggle,
  .shop-sort-wrap select,
  .shop-filters,
  .filter-toggle,
  .filter-reset,
  .price-input-wrap,
  .shop-card,
  .recommend-grid article,
  .product-page-shell,
  .product-main-wrap,
  .product-thumb,
  .product-size,
  .product-acc-toggle,
  .product-acc-body,
  .product-related-card,
  .recently-shell,
  .account-card,
  .account-tab,
  .account-auth-panel,
  .account-form input,
  .account-password-wrap input,
  .account-btn.ghost,
  .cart-items-section,
  .cart-summary,
  .cart-item,
  .checkout-hero-copy,
  .checkout-hero-panel,
  .checkout-section,
  .checkout-saved-row select,
  .checkout-form input,
  .checkout-form select,
  .auth-container,
  .auth-tab,
  .auth-logo,
  .auth-form .input-wrapper,
  .dashboard-section,
  .profile-sidebar,
  .profile-main,
  .panel-card,
  .stat-card,
  .wallet-status-card,
  .wallet-form-section,
  .wallet-transactions-card,
  .dash-stat-card
) {
  background: var(--bl-theme-surface) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text);
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] :is(
  .shop-card .product-card-media,
  .search-card .product-card-media,
  .product-thumb,
  .auth-features,
  .checkout-item .item-image
) {
  background: linear-gradient(180deg, rgba(35, 41, 52, 0.96), rgba(23, 28, 36, 0.92));
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] :is(
  .shop-home-section-head h2,
  .shop-home-title-link,
  .shop-home-link,
  .shop-products-count,
  .shop-empty,
  .shop-card h3,
  .search-copy h1,
  .search-history-head h2,
  .search-results-head h2,
  .search-card h3,
  .policy-shell h1,
  .policy-shell h2,
  .product-info h1,
  .product-detail-price,
  .product-related h2,
  .recommend-grid h4,
  .recently-shell h1,
  .account-brand h1,
  .account-signin-title,
  .cart-header h1,
  .cart-product-details h3,
  .checkout-hero-copy h1,
  .checkout-section-title,
  .checkout-item .item-details h4,
  .total-row.grand-total,
  .auth-brand h1,
  .profile-head h1,
  .profile-dashboard-title,
  .hero-metric strong,
  .product-acc-toggle
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] :is(
  .shop-card p,
  .filter-toggle span,
  .filter-price-note,
  .search-copy p,
  .search-label,
  .search-meta,
  .search-results-note,
  .search-card p,
  .policy-kicker,
  .policy-updated,
  .policy-shell p,
  .policy-shell li,
  .product-detail-stock,
  .product-detail-meta,
  .product-detail-copy,
  .product-option p,
  .recently-shell p,
  .account-signin-copy,
  .account-mini-note,
  .account-msg,
  .cart-header p,
  .cart-product-meta,
  .checkout-saved-address label,
  .checkout-address-note,
  .checkout-back-btn,
  .checkout-address-manage,
  .checkout-form label,
  .checkout-item .item-variant,
  .checkout-item .item-qty,
  .total-row,
  .auth-brand p,
  .auth-tab,
  .profile-head p,
  .profile-kicker,
  .profile-menu-item,
  .checkout-section-copy,
  .checkout-section-tag,
  .checkout-hero-text,
  .hero-metric-label
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] .product-price {
  color: var(--bl-theme-text) !important;
  font-weight: 800;
}

html[data-theme="dark"] :is(
  .search-input-wrap input,
  .checkout-form input,
  .checkout-form select,
  .account-form input,
  .product-qty-box input,
  .profile-form input,
  .profile-form select,
  .compact-form input,
  .compact-form select
) {
  background: rgba(255, 255, 255, 0.03) !important;
  color: var(--bl-theme-text);
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] .product-qty-box {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border-strong) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] .product-qty-wrap input {
  background: transparent !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] #product-qty-minus {
  border-right-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] #product-qty-plus {
  border-left-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] .quick-view-backdrop {
  background: rgba(4, 6, 10, 0.72);
  backdrop-filter: blur(2.4px);
  -webkit-backdrop-filter: blur(2.4px);
}

html[data-theme="dark"] .product-quick-view,
html[data-theme="dark"] .shop-card .product-quick-view,
html[data-theme="dark"] body.shop-collection-mode .shop-card .product-quick-view {
  background: rgba(246, 239, 229, 0.94);
  color: #111;
  border-color: rgba(246, 239, 229, 0.24);
}

html[data-theme="dark"] .product-quick-view:hover,
html[data-theme="dark"] .shop-card .product-quick-view:hover,
html[data-theme="dark"] body.shop-collection-mode .shop-card .product-quick-view:hover {
  background: #fff;
  color: #111;
}

html[data-theme="dark"] .quick-view-panel {
  background:
    radial-gradient(circle at 12% 10%, rgba(210, 170, 103, 0.12), transparent 26%),
    linear-gradient(180deg, #11151b 0%, #0d1014 100%);
  border-left: 1px solid var(--bl-theme-border);
  box-shadow: -20px 0 42px rgba(0, 0, 0, 0.48);
}

html[data-theme="dark"] .quick-view-media-wrap {
  background: linear-gradient(180deg, rgba(20, 24, 31, 0.98), rgba(11, 14, 19, 0.98));
}

html[data-theme="dark"] .quick-view-media {
  background: linear-gradient(180deg, rgba(28, 33, 41, 0.98), rgba(16, 20, 27, 0.96));
  border-bottom-color: var(--bl-theme-border);
}

html[data-theme="dark"] .quick-thumb {
  background: var(--bl-theme-surface-soft);
  border: 1px solid var(--bl-theme-border);
}

html[data-theme="dark"] .quick-thumb.active {
  outline-color: rgba(246, 239, 229, 0.92);
}

html[data-theme="dark"] .quick-view-eyebrow {
  color: #ecd7aa;
}

html[data-theme="dark"] .quick-view-details h3 {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .quick-view-details p,
html[data-theme="dark"] .quick-view-copy,
html[data-theme="dark"] .quick-option p {
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] .quick-view-details .quick-status-chip.is-in-stock {
  color: #7fe3a0 !important;
}

html[data-theme="dark"] .quick-view-details .quick-status-chip.is-out-of-stock {
  color: #ff9b9b !important;
}

html[data-theme="dark"] .quick-detail-grid {
  background: var(--bl-theme-surface-soft);
  border-color: var(--bl-theme-border);
}

html[data-theme="dark"] .quick-k {
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] .quick-v {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .quick-size {
  background: var(--bl-theme-surface-soft);
  border-color: var(--bl-theme-border);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .quick-size.active {
  border-color: var(--bl-theme-border-strong);
  box-shadow: inset 0 0 0 1px rgba(246, 239, 229, 0.14);
}

html[data-theme="dark"] .quick-swatch.active {
  outline-color: rgba(246, 239, 229, 0.92);
}

html[data-theme="dark"] .quick-view-qty-wrap {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] .quick-view-qty-box {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border-strong) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] .quick-view-qty-wrap input {
  background: transparent !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] .quick-qty-btn {
  background: var(--bl-theme-surface-soft) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] #quick-qty-minus {
  border-right-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] #quick-qty-plus {
  border-left-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] .quick-view-add {
  background: #f6efe5;
  border-color: #f6efe5;
  color: #17110c;
}

html[data-theme="dark"] .quick-view-add:hover,
html[data-theme="dark"] .quick-view-add:focus-visible {
  background: transparent;
  color: #f6efe5;
}

html[data-theme="dark"] .quick-view-buy {
  background: transparent;
  border-color: var(--bl-theme-border-strong);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .quick-view-buy:hover,
html[data-theme="dark"] .quick-view-buy:focus-visible {
  background: var(--bl-theme-surface-soft);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .quick-view-link {
  background: var(--bl-theme-surface-soft);
  border-color: var(--bl-theme-border);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .quick-view-link:hover,
html[data-theme="dark"] .quick-view-link:focus-visible {
  background: rgba(246, 239, 229, 0.08);
}

html[data-theme="dark"] .quick-view-close {
  background: rgba(18, 22, 29, 0.92);
  border: 1px solid var(--bl-theme-border);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] :is(
  .search-input-wrap input::placeholder,
  .checkout-form input::placeholder,
  .account-form input::placeholder,
  .profile-form input::placeholder,
  .compact-form input::placeholder
) {
  color: rgba(246, 239, 229, 0.44);
}

html[data-theme="dark"] :is(
  .search-history,
  .search-results-head,
  .checkout-totals,
  .profile-menu-item,
  .product-accordions
) {
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] :is(
  .history-chip,
  .product-size,
  .product-qty-btn,
  .account-tab,
  .account-btn.ghost,
  .auth-tab,
  .shop-filter-toggle,
  .filter-reset
) {
  background: var(--bl-theme-surface-soft);
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .shop-filters {
  background:
    radial-gradient(circle at 12% 10%, rgba(210, 170, 103, 0.12), transparent 28%),
    linear-gradient(180deg, #11161d 0%, #0d1014 100%) !important;
  border-right-color: var(--bl-theme-border) !important;
  box-shadow: 26px 0 54px rgba(0, 0, 0, 0.42);
}

html[data-theme="dark"] body.shop-filters-open::before {
  background: rgba(3, 5, 8, 0.56);
}

html[data-theme="dark"] .shop-filters-head strong {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .shop-filters-kicker {
  color: #ecd7aa;
}

html[data-theme="dark"] :is(
  .shop-filters-caption,
  .shop-filters-hint,
  .filter-price-note,
  .filter-price-labels,
  .currency-prefix
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] .shop-filter-group {
  background: rgba(255, 255, 255, 0.03);
  border-color: var(--bl-theme-border) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] .shop-filter-close,
html[data-theme="dark"] .filter-chevron {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--bl-theme-border);
  color: var(--bl-theme-text);
  box-shadow: none;
}

html[data-theme="dark"] .shop-filters-footer {
  background: linear-gradient(180deg, rgba(17, 22, 29, 0.82), rgba(13, 16, 20, 0.98));
  border-top-color: var(--bl-theme-border);
  box-shadow: 0 -12px 28px rgba(0, 0, 0, 0.24);
}

html[data-theme="dark"] .filter-check {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .filter-check input[type=checkbox] {
  background: rgba(246, 239, 229, 0.16);
}

html[data-theme="dark"] .filter-check input[type=checkbox]::after {
  background: #f6efe5;
}

html[data-theme="dark"] .filter-check input[type=checkbox]:checked {
  background: #e7c58f;
  box-shadow: 0 8px 18px rgba(231, 197, 143, 0.18);
}

html[data-theme="dark"] .filter-check input[type=checkbox]:checked::after {
  background: #12161d;
}

html[data-theme="dark"] .filter-range-shell::before {
  background: rgba(246, 239, 229, 0.14);
}

html[data-theme="dark"] .filter-range-shell::after {
  background: linear-gradient(90deg, #c8985f 0%, #efd2a0 100%);
}

html[data-theme="dark"] .filter-range::-webkit-slider-thumb {
  border-color: #12161d;
  background: #f6efe5;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.32);
}

html[data-theme="dark"] .filter-range::-moz-range-thumb {
  border-color: #12161d;
  background: #f6efe5;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.32);
}

html[data-theme="dark"] .filter-reset {
  background: linear-gradient(180deg, rgba(31, 37, 46, 0.98), rgba(14, 18, 25, 0.98)) !important;
  border-color: rgba(210, 170, 103, 0.38) !important;
  color: #ecd7aa !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 12px 24px rgba(0, 0, 0, 0.24);
}

html[data-theme="dark"] .filter-reset:hover,
html[data-theme="dark"] .filter-reset:focus-visible {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%) !important;
  border-color: var(--accent-gold-dark) !important;
  color: #17110c !important;
}

html[data-theme="dark"] :is(
  .profile-menu-item.active,
  .auth-tab.active,
  .account-tab.active,
  .account-tab.active:visited
) {
  background: var(--bl-theme-surface-soft) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] .policy-shell .policy-section a {
  color: #ecd7aa;
  text-decoration-color: rgba(236, 215, 170, 0.4);
}

html[data-theme="dark"] .loading-screen {
  background:
    radial-gradient(circle at 20% 20%, rgba(210, 170, 103, 0.16), transparent 28%),
    linear-gradient(180deg, #0b0f14 0%, #11161d 100%);
}

html[data-theme="dark"] .hero-btn {
  border-color: rgba(246, 239, 229, 0.94);
  background: rgba(246, 239, 229, 0.94);
  color: #17110c;
  box-shadow: 0 16px 28px rgba(0, 0, 0, 0.28);
}

html[data-theme="dark"] .hero-btn:hover,
html[data-theme="dark"] .hero-btn:focus-visible {
  background: transparent;
  color: #f6efe5;
  border-color: rgba(246, 239, 229, 0.82);
}

html[data-theme="dark"] .hero-btn img {
  filter: brightness(0);
}

html[data-theme="dark"] .hero-btn:hover img,
html[data-theme="dark"] .hero-btn:focus-visible img {
  filter: brightness(0) invert(1);
}

html[data-theme="dark"] .search-empty {
  background: rgba(255, 255, 255, 0.04);
}

html[data-theme="dark"] :is(
  .checkout-field-locked,
  .form-group input[readonly],
  .profile-menu-item:hover
) {
  background: rgba(255, 255, 255, 0.06) !important;
}

html[data-theme="dark"] :is(
  .shop-home-landing,
  .shop-home-section,
  .shop-home-card img,
  .shop-home-split-card,
  .shop-home-cta-band
) {
  background-color: #11161d !important;
}

html[data-theme="dark"] .shop-home-section {
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

html[data-theme="dark"] .shop-home-card img {
  border-radius: 18px;
  border: 1px solid var(--bl-theme-border);
  background: linear-gradient(180deg, rgba(22, 28, 36, 0.96), rgba(14, 19, 26, 0.92));
}

html[data-theme="dark"] .shop-home-split-card {
  background-color: #161d25 !important;
}

html[data-theme="dark"] :is(
  .shop-home-mini,
  .shop-home-section-head h2,
  .shop-home-card h3,
  .shop-home-title-link,
  .shop-home-link,
  .shop-home-card p,
  .shop-home-card .shop-home-card-sub,
  .shop-home-cta-band p,
  .shop-home-cta-band a,
  .shop-home-footer p,
  .shop-home-footer a,
  .shop-home-footer h3,
  .shop-home-hours,
  .shop-home-footer-copy
) {
  color: #f6efe5 !important;
}

html[data-theme="dark"] :is(
  .shop-home-card p,
  .shop-home-card .shop-home-card-sub,
  .shop-home-footer-copy
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] :is(
  .shop-home-title-link,
  .shop-home-link,
  .shop-home-directions,
  .shop-home-footer-news p a
) {
  text-decoration-color: rgba(246, 239, 229, 0.34);
}

html[data-theme="dark"] .shop-home-newsletter {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] .shop-home-newsletter input::placeholder {
  color: rgba(246, 239, 229, 0.46);
}

html[data-theme="dark"] .shop-home-footer-social {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

html[data-theme="dark"] :is(
  .shop-category-hero,
  .shop-category-metric,
  .shop-category-curation-card,
  .shop-sort-wrap,
  .shop-category-feature-pill,
  .shop-category-swatch
) {
  background: var(--bl-theme-surface) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text);
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] .shop-category-media-card {
  background: rgba(11, 15, 20, 0.74);
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] :is(
  .shop-category-title,
  .shop-category-metric strong,
  .shop-category-curation-card strong
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] :is(
  .shop-category-kicker,
  .shop-sort-kicker,
  .shop-category-curation-label
) {
  color: #d6b27d !important;
}

html[data-theme="dark"] :is(
  .shop-category-breadcrumb,
  .shop-category-description,
  .shop-category-media-label,
  .shop-category-media-card p:last-child,
  .shop-category-curation-card p:last-child,
  .shop-category-palette-copy,
  .shop-filter-summary,
  .shop-sort-caption
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] .shop-category-metric {
  background: linear-gradient(180deg, rgba(27, 33, 43, 0.96), rgba(18, 22, 29, 0.96)) !important;
  border-color: var(--bl-theme-border-strong) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 16px 28px rgba(0, 0, 0, 0.28);
}

html[data-theme="dark"] .shop-category-metric span {
  color: #d6b27d !important;
}

html[data-theme="dark"] .shop-sort-wrap::after {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] :is(
  .product-purchase-card,
  .product-highlight,
  .product-back-link,
  .product-page-badge,
  .product-gallery-chip,
  .product-status-chip,
  .product-trust-pill
) {
  background: var(--bl-theme-surface) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text);
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] :is(
  .product-main-wrap,
  .product-related-card img
) {
  background: linear-gradient(180deg, rgba(35, 41, 52, 0.96), rgba(23, 28, 36, 0.92)) !important;
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] :is(
  .product-kicker,
  .product-gallery-kicker,
  .product-related-kicker,
  .product-collection-label
) {
  color: #d6b27d !important;
}

html[data-theme="dark"] :is(
  .product-description,
  .product-gallery-note,
  .product-related-summary,
  .product-highlight span,
  .product-trust-pill,
  .product-page-badge,
  .product-gallery-chip,
  .product-size-note,
  .product-checkout-note,
  .product-related-card p
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] :is(
  .product-highlight strong,
  .product-back-link,
  .product-info h1
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] .product-status-chip.is-in-stock {
  background: rgba(18, 98, 46, 0.12) !important;
  border-color: rgba(53, 168, 92, 0.26) !important;
  color: #7fe3a0 !important;
}

html[data-theme="dark"] .product-status-chip.is-out-of-stock {
  background: rgba(140, 28, 28, 0.12) !important;
  border-color: rgba(201, 73, 73, 0.24) !important;
  color: #ff9b9b !important;
}

html[data-theme="dark"] :is(
  .coupon-input,
  .checkout-sidebar,
  .payment-card,
  .payment-details,
  .shipping-info
) {
  background: var(--bl-theme-surface) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .coupon-input {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .coupon-input::placeholder {
  color: rgba(246, 239, 229, 0.44);
}

html[data-theme="dark"] :is(.coupon-label, .cart-ref-checkout p, .shipping-info p, .checkout-secure) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] .coupon-btn {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  border-color: var(--accent-gold-dark);
  color: #17110c;
}

html[data-theme="dark"] .coupon-btn:hover,
html[data-theme="dark"] .coupon-btn:focus-visible {
  background: #f6efe5;
  color: #17110c;
}

html[data-theme="dark"] .checkout-btn-ref {
  border-color: var(--accent-gold-dark);
  background: linear-gradient(to right, var(--accent-gold) 50%, #f6efe5 50%);
  color: #17110c;
}

html[data-theme="dark"] :is(
  .checkout-btn-ref:hover,
  .checkout-btn-ref:focus-visible,
  .checkout-btn-ref:active
) {
  color: #17110c;
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.3);
}

html[data-theme="dark"] .summary-row {
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] :is(
  .summary-row strong,
  .summary-row.total,
  .summary-row.total span:last-child
) {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .payment-card:hover {
  border-color: rgba(210, 170, 103, 0.36) !important;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.24);
}

html[data-theme="dark"] .payment-option input:checked + .payment-card {
  border-color: rgba(210, 170, 103, 0.42);
  background: linear-gradient(135deg, rgba(210, 170, 103, 0.14), rgba(19, 24, 32, 0.96)) !important;
}

html[data-theme="dark"] :is(.payment-card span, .bank-info h4) {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] :is(.payment-card svg, .bank-info p, .bank-note) {
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] .pay-now-btn {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%);
  color: #17110c;
}

html[data-theme="dark"] .pay-now-btn:hover {
  background: #f6efe5;
}

html[data-theme="dark"] :is(.coupon-message, .checkout-coupon-status) {
  background: rgba(255, 255, 255, 0.04);
  border-color: var(--bl-theme-border);
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] :is(.coupon-message[data-state="success"], .checkout-coupon-status[data-state="success"]) {
  background: rgba(32, 88, 58, 0.34);
  border-color: rgba(103, 219, 150, 0.22);
  color: #bceecd;
}

html[data-theme="dark"] :is(.coupon-message[data-state="error"], .checkout-coupon-status[data-state="error"]) {
  background: rgba(115, 37, 37, 0.32);
  border-color: rgba(243, 115, 115, 0.22);
  color: #ffc7c7;
}

html[data-theme="dark"] :is(.coupon-message[data-state="info"], .checkout-coupon-status[data-state="info"]) {
  background: rgba(40, 68, 110, 0.3);
  border-color: rgba(125, 178, 255, 0.22);
  color: #cfe1ff;
}

html[data-theme="dark"] :is(.coupon-message[data-state="pending"], .checkout-coupon-status[data-state="pending"]) {
  background: rgba(114, 83, 37, 0.32);
  border-color: rgba(240, 200, 120, 0.22);
  color: #ffe1a8;
}

html[data-theme="dark"] body.cart-body :is(.cart-items-section, .cart-summary, .notes-section) {
  background:
    linear-gradient(180deg, rgba(24, 29, 37, 0.96), rgba(15, 19, 25, 0.96)) !important;
  border-color: var(--bl-theme-border-strong) !important;
  box-shadow: 0 20px 38px rgba(0, 0, 0, 0.26);
}

html[data-theme="dark"] body.cart-body :is(.cart-table-header, .cart-actions, .summary-header, .trust-badges) {
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] body.cart-body .cart-table-header {
  background: rgba(255, 255, 255, 0.03);
  color: rgba(246, 239, 229, 0.52) !important;
}

html[data-theme="dark"] body.cart-body .cart-ref-item {
  background: transparent !important;
  border-bottom-color: rgba(255, 255, 255, 0.08);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] body.cart-body .cart-ref-item:hover {
  background: rgba(210, 170, 103, 0.08) !important;
}

html[data-theme="dark"] body.cart-body .cart-ref-item .product-col img {
  background: linear-gradient(180deg, rgba(34, 40, 50, 0.98), rgba(19, 24, 31, 0.98));
  border: 1px solid var(--bl-theme-border);
}

html[data-theme="dark"] body.cart-body :is(
  .cart-ref-item .product-meta h3,
  .cart-ref-item .price-col strong,
  .summary-header h2,
  .cart-empty h2
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.cart-body :is(
  .cart-ref-item .product-meta p,
  .cart-empty p,
  .continue-link,
  .checkout-note,
  .trust-badge,
  .currency-inline span
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] body.cart-body .cart-currency-notice {
  background: transparent;
  border-color: transparent;
  color: rgba(246, 239, 229, 0.7) !important;
}

html[data-theme="dark"] body.cart-body .cart-currency-notice[data-state="info"] {
  color: rgba(236, 215, 170, 0.84) !important;
}

html[data-theme="dark"] body.cart-body .cart-currency-notice::before {
  background: rgba(210, 170, 103, 0.68);
}

html[data-theme="dark"] body.cart-body :is(.qty-box, .notes-toggle, .currency-inline select, .notes-section textarea) {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border-strong) !important;
  color: var(--bl-theme-text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] body.cart-body .notes-section textarea::placeholder {
  color: rgba(246, 239, 229, 0.42);
}

html[data-theme="dark"] body.cart-body .notes-toggle:hover {
  border-color: rgba(210, 170, 103, 0.46) !important;
  color: #ecd7aa !important;
}

html[data-theme="dark"] body.cart-body .qty-btn {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] body.cart-body .qty-btn:hover {
  background: rgba(210, 170, 103, 0.18);
  color: var(--bl-theme-text);
}

html[data-theme="dark"] body.cart-body .qty-input {
  background: transparent !important;
  border-left: 1px solid var(--bl-theme-border);
  border-right: 1px solid var(--bl-theme-border);
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.cart-body .cart-remove {
  background: rgba(255, 255, 255, 0.02);
  border-color: var(--bl-theme-border);
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] body.cart-body .cart-remove:hover {
  background: rgba(115, 37, 37, 0.32);
  border-color: rgba(243, 115, 115, 0.22);
  color: #ffc7c7;
}

html[data-theme="dark"] body.cart-body .shipping-info {
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid var(--bl-theme-border) !important;
}

html[data-theme="dark"] body.cart-body :is(.shipping-info svg, .trust-badge svg) {
  color: #ecd7aa;
}

html[data-theme="dark"] body.cart-body .summary-row.total span:last-child,
html[data-theme="dark"] body.cart-body .cart-ref-item .total-col strong {
  color: #ecd7aa !important;
}

html[data-theme="dark"] body.cart-body .checkout-btn {
  color: #17110c;
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.22), 0 10px 24px rgba(210, 170, 103, 0.18);
}

html[data-theme="dark"] body.cart-body .checkout-btn:hover {
  background: #f6efe5;
  color: #17110c;
}

html[data-theme="dark"] body.cart-body .checkout-btn:disabled {
  background: #4d5561;
  color: rgba(246, 239, 229, 0.54);
}

html[data-theme="dark"] :is(
  .nav-item,
  .sidebar-header p,
  .progress-header,
  .empty-state p,
  .transaction-details p
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] :is(
  .nav-item:hover,
  .sidebar-header h2,
  .panel-header h3,
  .address-card h4,
  .transaction-details h4
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] .nav-item:hover {
  background: rgba(210, 170, 103, 0.12);
}

html[data-theme="dark"] .nav-item.active {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-light) 100%);
  color: #17110c;
}

html[data-theme="dark"] .nav-item .badge {
  background: rgba(8, 11, 17, 0.86);
  color: #ecd7aa;
}

html[data-theme="dark"] :is(.sidebar-header, .nav-divider) {
  border-color: var(--bl-theme-border) !important;
}

html[data-theme] .profile-avatar-row {
  background: #f8f8f8 !important;
  border-color: #e5e5e5 !important;
  box-shadow: none !important;
}

html[data-theme] :is(.profile-avatar, .user-avatar, .profile-avatar-row img) {
  background: #ffffff !important;
}

html[data-theme] :is(.user-avatar, .profile-avatar-row img) {
  border-color: #c9a962 !important;
}

html[data-theme] :is(.user-avatar img, #user-avatar-img, #profile-avatar-preview) {
  filter: none !important;
}

html[data-theme] .profile-avatar-actions input[type=file] {
  color: #1a1a1a !important;
}

html[data-theme] .avatar-remove {
  background: #ffffff !important;
  border-color: #e5e5e5 !important;
  color: #1a1a1a !important;
  box-shadow: none !important;
}

html[data-theme] :is(.avatar-remove:hover, .avatar-remove:focus-visible) {
  background: #fffdf7 !important;
  border-color: #c9a962 !important;
  color: #a68b4b !important;
}

html[data-theme="dark"] .profile-avatar-row {
  background: var(--bl-theme-surface) !important;
  border-color: var(--bl-theme-border) !important;
}

html[data-theme="dark"] :is(.profile-avatar, .user-avatar, .profile-avatar-row img) {
  background: var(--bl-theme-surface-soft) !important;
}

html[data-theme="dark"] :is(.user-avatar, .profile-avatar-row img) {
  border-color: var(--bl-theme-border-strong) !important;
}

html[data-theme="dark"] :is(.user-avatar img, #user-avatar-img, #profile-avatar-preview)[src*="BENZY LOGO.png"],
html[data-theme="dark"] .profile-avatar-row img[src*="BENZY LOGO.png"] {
  filter: brightness(0) invert(1) sepia(0.08) saturate(0.8) brightness(1.08) !important;
}

html[data-theme] #profile-currency {
  background: #f8f8f8 !important;
  border-color: #e5e5e5 !important;
  color: #1a1a1a !important;
  box-shadow: none !important;
}

html[data-theme] #profile-currency:focus {
  background: #ffffff !important;
  border-color: #c9a962 !important;
}

html[data-theme="dark"] .avatar-status {
  border-color: #ffffff;
}

html[data-theme="light"] body.profile-body :is(#user-avatar-img, #profile-avatar-preview)[data-default-avatar],
html[data-theme="light"] body.profile-body .auth-logo img[data-default-brand-logo] {
  filter: none !important;
}

html[data-theme="dark"] body.profile-body :is(#user-avatar-img, #profile-avatar-preview)[data-default-avatar],
html[data-theme="dark"] body.profile-body .auth-logo img[data-default-brand-logo] {
  filter: brightness(0) invert(1) drop-shadow(0 0 0.6px rgba(255, 255, 255, 0.7)) !important;
}

html[data-theme="dark"] body.profile-body :is(.auth-logo, .user-avatar, .profile-avatar-row) {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border-strong) !important;
}

html[data-theme="dark"] .profile-progress {
  background: rgba(255, 255, 255, 0.03);
  border-color: var(--bl-theme-border);
}

html[data-theme="dark"] .empty-state svg {
  color: rgba(210, 170, 103, 0.78);
}

html[data-theme="dark"] .toast {
  background: rgba(10, 13, 19, 0.96);
  color: var(--bl-theme-text);
  border: 1px solid var(--bl-theme-border);
}

html[data-theme="dark"] body.profile-body {
  --sidebar-bg: rgba(18, 22, 29, 0.94);
  --sidebar-border: var(--bl-theme-border);
  --sidebar-shadow: 10px 0 30px rgba(0, 0, 0, 0.34);
}

html[data-theme="dark"] body.profile-body :is(
  .recent-section,
  .tracking-form,
  .tracking-result,
  .order-detail-dialog,
  .order-detail-section,
  .settings-card,
  .address-card,
  .add-address-card,
  .add-payment-card,
  .wallet-topup-card,
  .wallet-history-card,
  .payment-card,
  .order-card,
  .profile-mobile-menu-toggle,
  .profile-mobile-action,
  .layout-switcher,
  .order-filters,
  .amount-buttons
) {
  background: linear-gradient(180deg, rgba(24, 29, 37, 0.96), rgba(15, 19, 25, 0.96)) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] body.profile-body :is(
  .tracking-item,
  .delivery-info,
  .wallet-status-item,
  .wallet-empty-state,
  .wallet-transaction-item,
  .profile-progress,
  .profile-avatar-row,
  .order-items-preview
) {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .welcome-section h1,
  .section-header h2,
  .wallet-header h2,
  .stat-number,
  .activity-content p,
  .order-id,
  .order-items-summary,
  .order-total strong,
  .order-detail-title-row h3,
  .order-detail-section h4,
  .order-detail-item,
  .order-detail-total-row,
  .tracking-items h4,
  .step-content h4,
  .delivery-address h4,
  .delivery-contact h4,
  .settings-card h3,
  .settings-info h4,
  .address-card h4,
  .wallet-status-card h3,
  .wallet-form-section h3,
  .wallet-transactions-card h3,
  .wallet-status-item strong,
  .wallet-empty-state p,
  .wallet-transaction-copy strong,
  .profile-mobile-menu-toggle strong
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .welcome-section p,
  .section-header p,
  .stat-label,
  .support-text,
  .activity-content span,
  .order-label,
  .order-date,
  .order-address,
  .order-estimate,
  .order-total,
  .order-detail-meta,
  .step-content p,
  .delivery-address p,
  .delivery-contact p,
  .settings-info p,
  .address-card p,
  .wallet-card-copy,
  .wallet-section-copy,
  .wallet-status-note,
  .wallet-helper,
  .wallet-empty-state span,
  .wallet-transaction-meta,
  .wallet-status-label,
  .profile-form .input-hint,
  .profile-mobile-menu-toggle small
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .filter-btn,
  .layout-btn,
  .amount-btn,
  .dashboard-action,
  .order-action-btn,
  .address-remove-btn,
  .avatar-remove,
  .profile-avatar-actions input[type=file],
  .form-group input,
  .form-group select,
  .compact-form input,
  .compact-form select,
  .wallet-form-mock input,
  #profile-currency
) {
  background: rgba(255, 255, 255, 0.035) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .filter-btn:hover,
  .layout-btn:hover,
  .amount-btn:hover,
  .dashboard-action:hover,
  .order-action-btn:hover,
  .address-remove-btn:hover,
  .profile-mobile-action:hover,
  .profile-mobile-action:focus-visible
) {
  background: rgba(210, 170, 103, 0.12) !important;
  border-color: rgba(210, 170, 103, 0.36) !important;
  color: #ecd7aa !important;
}

html[data-theme="dark"] body.profile-body :is(
  .filter-btn.active,
  .layout-btn.active,
  .amount-btn.is-active,
  .profile-mobile-action.active
) {
  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-dark) 100%) !important;
  border-color: transparent !important;
  color: #17110c !important;
}

html[data-theme="dark"] body.profile-body :is(.form-group input:focus, .form-group select:focus, .compact-form input:focus, .compact-form select:focus) {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(210, 170, 103, 0.55) !important;
  box-shadow: 0 0 0 4px rgba(210, 170, 103, 0.16);
}

html[data-theme="dark"] body.profile-body :is(.form-group input[readonly], .wallet-form-mock input[disabled]) {
  background: rgba(255, 255, 255, 0.025) !important;
  color: rgba(246, 239, 229, 0.48) !important;
}

html[data-theme="dark"] body.checkout-body {
  --checkout-ink: var(--bl-theme-text);
  --checkout-soft-ink: rgba(246, 239, 229, 0.84);
  --checkout-muted: var(--bl-theme-muted);
  --checkout-line: var(--bl-theme-border);
  --checkout-line-strong: var(--bl-theme-border-strong);
  --checkout-paper: rgba(18, 22, 29, 0.92);
  --checkout-paper-strong: #121820;
  --checkout-cream: #171d25;
  --checkout-accent: #d2aa67;
  --checkout-accent-deep: #ecd7aa;
  --checkout-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] body.checkout-body .checkout-page::before {
  background: radial-gradient(circle, rgba(210, 170, 103, 0.14) 0%, rgba(210, 170, 103, 0) 72%);
}

html[data-theme="dark"] body.checkout-body .checkout-page::after {
  background: radial-gradient(circle, rgba(246, 239, 229, 0.06) 0%, rgba(246, 239, 229, 0) 72%);
}

html[data-theme="dark"] body.checkout-body :is(
  .checkout-hero-panel,
  .checkout-section,
  .checkout-sidebar-card,
  .checkout-saved-address,
  .checkout-address-preview,
  .checkout-note-pill,
  .checkout-item,
  .payment-card,
  .payment-details,
  .checkout-page-tools .currency-inline,
  .checkout-back-btn,
  .empty-cart
) {
  background: linear-gradient(180deg, rgba(24, 29, 37, 0.96), rgba(15, 19, 25, 0.96)) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] body.checkout-body :is(.checkout-hero-copy, .checkout-action-panel, .checkout-sidebar-card--intro) {
  background:
    radial-gradient(circle at 18% 12%, rgba(210, 170, 103, 0.14), transparent 34%),
    linear-gradient(145deg, rgba(11, 14, 19, 0.98) 0%, rgba(20, 25, 33, 0.98) 100%) !important;
  border-color: var(--bl-theme-border-strong) !important;
}

html[data-theme="dark"] body.checkout-body :is(
  .hero-metric,
  .checkout-progress-step,
  .checkout-item .item-qty,
  .item-unit-price,
  .address-preview-item,
  .checkout-sidebar-links a,
  .checkout-address-manage
) {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.checkout-body :is(
  .checkout-progress-step.is-active,
  .checkout-section-tag,
  .sidebar-live-pill,
  .address-preview-badge
) {
  background: rgba(210, 170, 103, 0.14) !important;
  border-color: rgba(210, 170, 103, 0.28) !important;
  color: #ecd7aa !important;
}

html[data-theme="dark"] body.checkout-body :is(
  .checkout-saved-row select,
  .checkout-form input,
  .checkout-form select,
  .checkout-page-tools .currency-inline select,
  .payment-details input[type="file"]
) {
  background: rgba(255, 255, 255, 0.035) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] body.checkout-body .checkout-page-tools .currency-inline {
  background: rgba(13, 16, 22, 0.96) !important;
  border-color: var(--bl-theme-border-strong) !important;
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.42);
}

html[data-theme="dark"] body.checkout-body .checkout-page-tools .currency-inline span {
  color: #ecd7aa !important;
}

html[data-theme="dark"] body.checkout-body .checkout-page-tools .checkout-currency-control {
  background: rgba(13, 16, 22, 0.96) !important;
  border-color: var(--bl-theme-border-strong) !important;
  color: var(--bl-theme-text) !important;
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.42);
}

html[data-theme="dark"] body.checkout-body .checkout-page-tools .checkout-currency-control span:not(.checkout-currency-kicker) {
  color: #ecd7aa !important;
}

html[data-theme="dark"] body.checkout-body .checkout-page-tools .checkout-currency-control select {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.checkout-body :is(
  .checkout-saved-row select:focus,
  .checkout-form input:focus,
  .checkout-form select:focus,
  .checkout-page-tools .currency-inline select:focus,
  .payment-details input[type="file"]:focus
) {
  border-color: rgba(210, 170, 103, 0.55) !important;
  box-shadow: 0 0 0 4px rgba(210, 170, 103, 0.16);
}

html[data-theme="dark"] body.checkout-body :is(
  .checkout-saved-address label,
  .checkout-section-copy,
  .checkout-address-note,
  .checkout-hero-note,
  .hero-metric-label,
  .checkout-note-pill,
  .checkout-item .item-variant,
  .checkout-item .item-qty,
  .item-unit-price,
  .payment-copy small,
  .bank-info p,
  .bank-note,
  .support-copy,
  .checkout-sidebar-copy,
  .checkout-assurance-copy
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] body.checkout-body :is(
  .checkout-section-title,
  .hero-metric strong,
  .checkout-item .item-details h4,
  .checkout-item .item-price,
  .payment-card span,
  .bank-info h4,
  .checkout-sidebar-head h3,
  .checkout-sidebar-card--support .support-kicker,
  .address-preview-value,
  .checkout-sidebar-links a
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.checkout-body :is(.checkout-totals, .sidebar-totals) {
  background: linear-gradient(135deg, rgba(8, 11, 17, 0.98) 0%, rgba(24, 29, 37, 0.98) 100%) !important;
  border: 1px solid var(--bl-theme-border) !important;
}

html[data-theme="dark"] body.checkout-body .payment-option input:checked + .payment-card {
  background: linear-gradient(135deg, rgba(210, 170, 103, 0.16), rgba(24, 29, 37, 0.96)) !important;
  border-color: rgba(210, 170, 103, 0.42) !important;
}

html[data-theme="light"] :is(.about-page-body, .contact-page-body, .lookbook-page-body) {
  background: #f5efe6;
  color: #17110c;
}

html[data-theme="light"] :is(
  .about-page-body .navbar .logo-main,
  .about-page-body .navbar .logo-blx,
  .about-page-body .footer-logo img,
  .about-page-body .footer-logo .footer-blx,
  .contact-page-body .logo-main,
  .contact-page-body .logo-blx,
  .contact-page-body .contact-footer-logo img,
  .contact-page-body .contact-footer-logo .footer-blx,
  .lookbook-page-body .logo-main,
  .lookbook-page-body .logo-blx,
  .lookbook-page-body .lb-footer-logo img,
  .lookbook-page-body .lb-footer-logo .footer-blx
) {
  filter: none !important;
}

html[data-theme="light"] :is(
  .about-page-body .about-stats,
  .about-page-body .about-mission,
  .about-page-body .about-story-new,
  .about-page-body .about-values,
  .about-page-body .about-gallery-new,
  .about-page-body .about-cta,
  .about-page-body .about-connect,
  .about-page-body .about-footer,
  .contact-page-body .contact-section,
  .contact-page-body .contact-faq,
  .contact-page-body .contact-footer,
  .lookbook-page-body .lb-collections,
  .lookbook-page-body .lb-featured,
  .lookbook-page-body .lb-gallery,
  .lookbook-page-body .lb-cta,
  .lookbook-page-body .lb-footer
) {
  background: #f5efe6 !important;
  color: #17110c;
}

html[data-theme="light"] :is(
  .about-page-body .feature,
  .about-page-body .timeline-content,
  .about-page-body .value-card,
  .about-page-body .about-connect-social,
  .contact-page-body .contact-form-wrapper,
  .contact-page-body .contact-info-card,
  .contact-page-body .faq-item,
  .lookbook-page-body .lb-featured-info,
  .lookbook-page-body .lb-filter-btn,
  .lookbook-page-body .lb-cta-btn-outline
) {
  background: rgba(255, 255, 255, 0.84) !important;
  border-color: rgba(23, 17, 12, 0.12) !important;
  color: #17110c;
  box-shadow: 0 18px 36px rgba(31, 23, 16, 0.08);
}

html[data-theme="light"] :is(
  .about-page-body .mission-content h2,
  .about-page-body .story-header h2,
  .about-page-body .values-header h2,
  .about-page-body .gallery-header h2,
  .about-page-body .cta-content h2,
  .about-page-body .about-connect-content h2,
  .about-page-body .feature h4,
  .about-page-body .timeline-content h4,
  .about-page-body .value-card h3,
  .contact-page-body .contact-form-wrapper h2,
  .contact-page-body .contact-info-card h3,
  .contact-page-body .faq-header h2,
  .lookbook-page-body .lb-section-header h2,
  .lookbook-page-body .lb-featured-info h4,
  .lookbook-page-body .lb-cta-content h2,
  .lookbook-page-body .lb-footer-links a
) {
  color: #17110c !important;
}

html[data-theme="light"] :is(
  .about-page-body .mission-content p,
  .about-page-body .feature p,
  .about-page-body .stat-label,
  .about-page-body .timeline-content p,
  .about-page-body .value-card p,
  .about-page-body .cta-content p,
  .about-page-body .about-connect-content p,
  .contact-page-body .contact-form-wrapper > p,
  .contact-page-body .contact-form label,
  .contact-page-body .contact-info-item p,
  .contact-page-body .contact-info-item a,
  .contact-page-body .faq-answer p,
  .lookbook-page-body .lb-featured-tag,
  .lookbook-page-body .lb-cta-content p,
  .lookbook-page-body .lb-footer-copyright,
  .lookbook-page-body .lb-filter-btn
) {
  color: #695f55 !important;
}

html[data-theme="light"] :is(
  .contact-page-body .contact-form input,
  .contact-page-body .contact-form textarea
) {
  background: rgba(255, 255, 255, 0.94) !important;
  border-color: rgba(23, 17, 12, 0.12) !important;
  color: #17110c;
}

html[data-theme="light"] :is(
  .contact-page-body .contact-form input::placeholder,
  .contact-page-body .contact-form textarea::placeholder
) {
  color: rgba(23, 17, 12, 0.38);
}

html[data-theme="light"] .contact-page-body .contact-social a:hover {
  color: #17110c;
}

html[data-theme="light"] .contact-page-body {
  background:
    radial-gradient(circle at top, rgba(201, 169, 98, 0.14), transparent 34%),
    linear-gradient(180deg, #f8f2ea 0%, #efe5d8 100%);
  color: #1b130d;
}

html[data-theme="light"] .contact-page-body .navbar {
  background: rgba(252, 247, 240, 0.88);
  border-bottom: 1px solid rgba(23, 17, 12, 0.08);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 12px 30px rgba(31, 23, 16, 0.08);
}

html[data-theme="light"] .contact-page-body .dropdown {
  background: rgba(255, 250, 244, 0.96);
  border: 1px solid rgba(23, 17, 12, 0.1);
  box-shadow: 0 16px 32px rgba(31, 23, 16, 0.1);
}

html[data-theme="light"] .contact-page-body .contact-hero {
  background: linear-gradient(135deg, #f7efe5 0%, #e9dbc8 100%);
  border-bottom: 1px solid rgba(23, 17, 12, 0.08);
}

html[data-theme="light"] .contact-page-body .contact-hero-bg {
  opacity: 0.58;
  filter: saturate(0.85) brightness(1.04) contrast(0.94);
}

html[data-theme="light"] .contact-page-body .contact-hero-overlay {
  background:
    linear-gradient(180deg, rgba(247, 239, 229, 0.3) 0%, rgba(247, 239, 229, 0.78) 42%, #f6efe6 100%),
    linear-gradient(135deg, rgba(201, 169, 98, 0.08), transparent 58%);
}

html[data-theme="light"] .contact-page-body .contact-hero-content h1 {
  color: #24170f;
  text-shadow: 0 10px 28px rgba(255, 250, 244, 0.65);
}

html[data-theme="light"] .contact-page-body .contact-hero-content p {
  color: rgba(36, 23, 15, 0.78);
}

@media (max-width: 768px) {
  html[data-theme="light"] .about-page-body .hero-content :is(h1, .hero-tagline, .hero-scroll span) {
    color: #ffffff !important;
    text-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar:not(.is-mobile-open) {
    background: rgba(8, 8, 8, 0.9) !important;
    border-bottom-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.16);
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar:not(.is-mobile-open) :is(.logo-main, .logo-blx, .nav-right img) {
    filter: brightness(0) invert(1) drop-shadow(0 0 0.6px #fff) !important;
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar:not(.is-mobile-open) :is(.nav-links a, .shop-toggle, .dropdown li a, .submenu-back-btn) {
    color: #ffffff !important;
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar:not(.is-mobile-open) .nav-links a::after {
    background: #ffffff !important;
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar.is-mobile-open > nav {
    background: #fffaf4 !important;
    color: #17110c !important;
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar.is-mobile-open > nav :is(.nav-links a, .shop-toggle, .dropdown li a, .submenu-back-btn, .nav-theme-label) {
    color: #17110c !important;
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar.is-mobile-open > nav .nav-links > li,
  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar.is-mobile-open > nav .nav-theme-item {
    border-bottom-color: rgba(23, 17, 12, 0.14) !important;
  }

  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar.is-mobile-open > nav .has-dropdown.open > .dropdown {
    border-left-color: rgba(23, 17, 12, 0.22) !important;
  }
}

html[data-theme="light"] .contact-page-body .contact-section {
  background: linear-gradient(180deg, #f6efe6 0%, #f3eadf 100%) !important;
}

html[data-theme="light"] .contact-page-body .contact-faq {
  background: linear-gradient(180deg, #efe4d6 0%, #f7efe6 100%) !important;
}

html[data-theme="light"] .contact-page-body :is(.contact-form-wrapper, .contact-info-card, .faq-item) {
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.96) 0%, rgba(250, 243, 233, 0.94) 100%) !important;
  border-color: rgba(23, 17, 12, 0.08) !important;
  border-radius: 28px;
  box-shadow: 0 20px 40px rgba(46, 32, 22, 0.1) !important;
}

html[data-theme="light"] .contact-page-body .contact-form-wrapper {
  position: relative;
  overflow: hidden;
}

html[data-theme="light"] .contact-page-body :is(.contact-form-wrapper, .contact-info-card)::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, rgba(201, 169, 98, 0.9), rgba(236, 215, 170, 0.65));
}

html[data-theme="light"] .contact-page-body .contact-info-card {
  position: relative;
  overflow: hidden;
}

html[data-theme="light"] .contact-page-body .contact-form label {
  color: #4b3b30 !important;
}

html[data-theme="light"] .contact-page-body :is(.contact-form input, .contact-form textarea) {
  background: rgba(255, 255, 255, 0.82) !important;
  border-color: rgba(110, 86, 56, 0.16) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

html[data-theme="light"] .contact-page-body :is(.contact-form input:focus, .contact-form textarea:focus) {
  background: #fffdf8 !important;
  border-color: #b98a3a !important;
  box-shadow: 0 0 0 4px rgba(201, 169, 98, 0.14);
}

html[data-theme="light"] .contact-page-body .contact-form button {
  background: linear-gradient(135deg, #c9a962 0%, #ad8447 100%);
  color: #fffaf4;
  border-radius: 999px;
  box-shadow: 0 18px 30px rgba(173, 132, 71, 0.25);
}

html[data-theme="light"] .contact-page-body .contact-form button:hover {
  background: linear-gradient(135deg, #d4b678 0%, #b18440 100%);
  color: #fffaf4;
}

html[data-theme="light"] .contact-page-body .contact-form-status {
  background: rgba(255, 247, 230, 0.8);
  border-color: rgba(201, 169, 98, 0.24);
  color: #5f4a2c;
}

html[data-theme="light"] .contact-page-body .contact-form-status.is-success {
  background: rgba(225, 244, 236, 0.92);
  border-color: rgba(41, 149, 102, 0.24);
  color: #18543d;
}

html[data-theme="light"] .contact-page-body .contact-form-status.is-error {
  background: rgba(253, 235, 231, 0.92);
  border-color: rgba(201, 82, 59, 0.24);
  color: #8a3f2c;
}

html[data-theme="light"] .contact-page-body .contact-form-status.is-pending {
  background: rgba(255, 247, 230, 0.92);
  border-color: rgba(201, 169, 98, 0.26);
  color: #6c5222;
}

html[data-theme="light"] .contact-page-body .contact-info-card h3,
html[data-theme="light"] .contact-page-body .faq-header span {
  color: #8d5f10 !important;
}

html[data-theme="light"] .contact-page-body .contact-info-item svg,
html[data-theme="light"] .contact-page-body .contact-map-placeholder svg,
html[data-theme="light"] .contact-page-body .faq-question::after {
  color: #b98a3a;
}

html[data-theme="light"] .contact-page-body :is(.contact-info-item p, .contact-info-item a, .faq-answer p) {
  color: #5e5144 !important;
}

html[data-theme="light"] .contact-page-body .contact-info-item a:hover {
  color: #8d5f10 !important;
}

html[data-theme="light"] .contact-page-body .contact-social a {
  width: 44px;
  height: 44px;
  padding: 9px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid rgba(23, 17, 12, 0.08);
  box-shadow: 0 10px 22px rgba(31, 23, 16, 0.08);
}

html[data-theme="light"] .contact-page-body .contact-social a:hover {
  background: #fffaf4;
  border-color: rgba(201, 169, 98, 0.35);
  transform: translateY(-3px) scale(1.02);
}

html[data-theme="light"] .contact-page-body .contact-map {
  background: linear-gradient(135deg, #efe4d6 0%, #f8f3ec 100%);
  border-top: 1px solid rgba(23, 17, 12, 0.08);
  border-bottom: 1px solid rgba(23, 17, 12, 0.08);
}

html[data-theme="light"] .contact-page-body .contact-map-placeholder {
  max-width: calc(100% - 32px);
  padding: 38px 48px;
  background: rgba(255, 251, 245, 0.88);
  border: 1px solid rgba(23, 17, 12, 0.08);
  border-radius: 30px;
  box-shadow: 0 18px 36px rgba(31, 23, 16, 0.08);
  color: rgba(23, 17, 12, 0.58);
}

html[data-theme="light"] .contact-page-body .contact-map-placeholder p {
  color: #4b3b30;
}

html[data-theme="light"] .contact-page-body .faq-question {
  color: #22160f;
}

html[data-theme="light"] .contact-page-body .faq-question:hover,
html[data-theme="light"] .contact-page-body .faq-item.active .faq-question {
  color: #8d5f10;
  background: rgba(201, 169, 98, 0.08);
}

html[data-theme="dark"] body.payment-result-body {
  background: linear-gradient(180deg, #0d1014 0%, #151b23 100%);
  color: #f6efe5;
}

html[data-theme="dark"] .payment-result-card,
html[data-theme="dark"] .payment-result-summary,
html[data-theme="dark"] .payment-result-status,
html[data-theme="dark"] .payment-result-actions a.secondary {
  background: var(--bl-theme-surface) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text);
  box-shadow: var(--bl-theme-shadow);
}

html[data-theme="dark"] .payment-result-kicker,
html[data-theme="dark"] .payment-result-copy,
html[data-theme="dark"] .payment-result-row span {
  color: var(--bl-theme-muted);
}

html[data-theme="dark"] .payment-result-row strong,
html[data-theme="dark"] .payment-result-card h1 {
  color: var(--bl-theme-text);
}

html[data-theme="dark"] .payment-result-actions a.primary {
  background: #f6efe5;
  color: #17110c;
}

@media (max-width: 1200px) {
  .nav-right .bl-theme-toggle {
    width: 64px;
    min-width: 64px;
  }
}

@media (max-width: 768px) {
  .nav-right .bl-theme-toggle {
    width: 60px;
    min-width: 60px;
    min-height: 36px;
    padding: 3px;
  }

  .nav-right .bl-theme-toggle__track {
    width: 52px;
    height: 28px;
  }

  .nav-right .bl-theme-toggle__thumb {
    width: 22px;
    height: 22px;
  }

  html[data-theme="dark"] .nav-right .bl-theme-toggle__thumb {
    transform: translateX(26px);
  }
}

@media (max-width: 640px) {
  .bl-theme-toggle--floating {
    top: 12px;
    right: 12px;
    width: 60px;
    min-width: 60px;
  }
}

@media (max-width: 768px) {
  .navbar {
    height: 64px;
    min-height: 64px;
    flex-wrap: nowrap;
    padding: 10px 14px;
    gap: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(17, 17, 17, 0.82);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }

  html[data-theme] body.shop-home-mode .navbar:not(.is-mobile-open) {
    background: rgba(8, 8, 8, 0.56) !important;
    border-bottom-color: rgba(255, 255, 255, 0.14);
  }

  html[data-theme] body.shop-home-mode .navbar:not(.is-mobile-open) :is(.logo-main, .logo-blx, .nav-right img) {
    filter: brightness(0) invert(1) !important;
  }

  .navbar.is-mobile-open {
    background: var(--nav-bg);
  }

  .nav-menu-toggle {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    z-index: 1002;
  }

  .navbar.is-mobile-open .nav-menu-toggle span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }

  .navbar.is-mobile-open .nav-menu-toggle span:nth-child(2) {
    opacity: 0;
  }

  .navbar.is-mobile-open .nav-menu-toggle span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
  }

  .nav-menu-toggle span {
    transition: transform 0.2s ease, opacity 0.2s ease;
  }

  .logo {
    top: 50%;
    z-index: 1001;
  }

  .logo-main,
  body.shop-home-mode .logo-main {
    height: 28px;
  }

  .logo-blx,
  body.shop-home-mode .logo-blx {
    height: 38px;
    margin-left: 5px;
  }

  .nav-right {
    z-index: 1002;
    gap: 7px;
  }

  .nav-right .account-link {
    display: none;
  }

  .nav-right img {
    width: 22px;
    height: 22px;
  }

  .nav-right .bl-theme-toggle {
    width: 48px;
    min-width: 48px;
    min-height: 30px;
    padding: 2px;
  }

  .nav-right .bl-theme-toggle__track {
    width: 42px;
    height: 24px;
  }

  .nav-right .bl-theme-toggle__thumb {
    width: 18px;
    height: 18px;
  }

  html[data-theme="dark"] .nav-right .bl-theme-toggle__thumb {
    transform: translateX(20px);
  }

  nav {
    display: block;
    position: fixed;
    inset: 64px 0 0;
    width: 100%;
    margin: 0;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    background: var(--nav-bg);
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
    overflow-y: auto;
    z-index: 1000;
  }

  .navbar.is-mobile-open nav {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    transform: translateY(0);
  }

  .nav-links {
    min-height: calc(100svh - 64px);
    padding: 18px 18px 28px;
    gap: 0;
    justify-content: flex-start;
  }

  .nav-links li {
    border-bottom: 1px solid rgba(126, 119, 108, 0.18);
  }

  .nav-links a,
  .dropdown li a,
  .submenu-back-btn {
    min-height: 52px;
    display: flex;
    align-items: center;
    padding: 0 2px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  .dropdown {
    padding: 0 0 8px 14px;
    background: transparent;
  }

  .has-dropdown.open .dropdown {
    display: block;
  }

  .dropdown li {
    border-bottom: 0;
  }

  .dropdown li a {
    min-height: 42px;
    font-size: 0.76rem;
    opacity: 0.78;
  }

  .hero {
    min-height: 100svh;
    padding: 112px 20px 56px;
    align-items: end;
  }

  .hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.72));
    z-index: 0;
    pointer-events: none;
  }

  .video-bg {
    height: 100svh;
    object-position: center;
  }

  .hero-content {
    width: min(100%, 360px);
    padding-bottom: 22px;
  }

  .hero .hero-kicker {
    margin-bottom: 10px;
    font-size: 0.72rem;
    letter-spacing: 0.18em;
  }

  .hero h1 {
    font-size: 1.72rem;
    line-height: 1.08;
    letter-spacing: 0.04em;
    margin-bottom: 12px;
  }

  .hero p {
    max-width: 31ch;
    font-size: 0.98rem;
    line-height: 1.55;
    margin-bottom: 18px;
  }

  .hero-btn {
    min-height: 46px;
    padding: 0 18px;
    font-size: 0.88rem;
    letter-spacing: 0.08em;
  }

  .hero-btn img {
    width: 22px;
    height: 22px;
  }
}

@media (max-width: 600px) {
  .shop-home-hero,
  .shop-home-content {
    height: 100svh;
    min-height: 620px;
  }

  .shop-home-content {
    place-content: end center;
    padding: 92px 18px 74px;
  }

  .shop-home-cta-row {
    position: static;
    transform: none;
    width: min(100%, 342px);
    flex-direction: column;
    gap: 10px;
  }

  .shop-home-btn-ghost,
  .shop-home-btn-solid {
    width: 100%;
    min-height: 46px;
    font-size: 0.78rem;
    letter-spacing: 0.1em;
  }

  .shop-home-content h1 {
    position: static;
    transform: none;
    width: min(100%, 340px);
    font-size: 0.92rem;
    line-height: 1.35;
  }

  .shop-home-content p {
    max-width: 31ch;
    margin-inline: auto;
  }

  .shop-home-hero-dots {
    bottom: 28px;
  }

  .shop-home-section {
    padding: 24px 14px 12px;
  }

  .shop-home-section-head {
    align-items: flex-start;
  }

  .shop-home-grid-four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 10px;
  }

  .shop-card .product-card-media,
  .shop-home-card img {
    height: auto;
    aspect-ratio: 3 / 4;
  }

  .shop-card h3 {
    min-height: 2.6em;
    margin-top: 7px;
    padding: 0 3px;
    font-size: 0.58rem;
    line-height: 1.3;
    letter-spacing: 0.035em;
    overflow-wrap: anywhere;
    hyphens: auto;
  }

  .shop-card p {
    margin-top: 3px;
    font-size: 0.68rem;
    line-height: 1.25;
    text-align: center;
  }

  .shop-card .product-quick-view {
    height: 28px;
    padding: 0 6px;
    font-size: 0.58rem;
    line-height: 28px;
    letter-spacing: 0.08em;
  }

  .product-stock {
    font-size: 0.62rem;
    letter-spacing: 0.08em;
  }
}

@media (max-width: 768px) {
  .navbar {
    height: 64px !important;
    min-height: 64px !important;
    background: rgba(10, 10, 10, 0.92) !important;
  }

  body.shop-page-nav .navbar:not(.is-mobile-open),
  html[data-theme] body.shop-home-mode .navbar:not(.is-mobile-open) {
    background: rgba(8, 8, 8, 0.58) !important;
    border-bottom-color: rgba(255, 255, 255, 0.16) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  .navbar > .nav-menu-toggle {
    width: 40px !important;
    height: 40px !important;
    left: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    border-radius: 999px !important;
    background: rgba(0, 0, 0, 0.22) !important;
  }

  .navbar > .nav-menu-toggle span {
    width: 17px;
    height: 2px;
    border-radius: 999px;
    background: #fff !important;
  }

  .navbar > .logo {
    max-width: 130px;
  }

  .navbar > .nav-right {
    right: 12px !important;
    gap: 10px !important;
  }

  .navbar > .nav-right .search-link,
  .navbar > .nav-right .bl-theme-toggle,
  .bl-theme-toggle--desktop {
    display: none !important;
  }

  .nav-search-item,
  .nav-theme-item,
  .nav-currency-item,
  .bl-theme-toggle--mobile {
    display: flex !important;
  }

  .navbar > .nav-right .account-link {
    display: inline-flex !important;
  }

  .navbar > nav {
    position: fixed !important;
    inset: 64px 0 0 !important;
    width: 100% !important;
    height: calc(100svh - 64px) !important;
    display: block !important;
    padding: 0 !important;
    background: var(--nav-bg) !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px) !important;
    overflow-y: auto !important;
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
  }

  .navbar.is-mobile-open > nav {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .navbar > nav .nav-links {
    min-height: auto;
    padding: 20px 18px 32px !important;
    gap: 0 !important;
  }

  .navbar > nav .nav-links > li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
  }

  .navbar > nav .nav-links a,
  .navbar > nav .shop-toggle,
  .navbar > nav .submenu-back-btn {
    min-height: 56px;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 0 2px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .navbar > nav .has-dropdown.open .chevron {
    transform: rotate(180deg);
  }

  .navbar > nav .dropdown {
    display: none !important;
    margin: 0 0 12px !important;
    padding: 4px 0 8px 14px !important;
    border: 0 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.16) !important;
    background: transparent !important;
  }

  .navbar > nav .has-dropdown.open .dropdown {
    display: block !important;
  }

  .navbar > nav.submenu-open .nav-links > li:not(.has-dropdown),
  .navbar > nav.submenu-open .has-dropdown > .shop-toggle {
    display: block !important;
  }

  .navbar > nav .submenu-back-item {
    display: none !important;
  }

  .navbar > nav .dropdown li {
    border: 0;
  }

  .navbar > nav .dropdown li a {
    min-height: 42px;
    padding: 0 2px !important;
    font-size: 0.76rem !important;
    letter-spacing: 0.12em !important;
    opacity: 0.78;
  }

  .nav-theme-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
  }

  .nav-theme-item,
  .nav-currency-item {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 64px;
    padding: 0 2px;
  }

  .nav-currency-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
  }

  .nav-theme-label,
  .nav-currency-label {
    color: inherit;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }

  .nav-theme-item .bl-theme-toggle {
    width: 62px;
    min-width: 62px;
    min-height: 36px;
    padding: 3px;
  }

  .nav-theme-item .bl-theme-toggle__track {
    width: 52px;
    height: 28px;
  }

  .nav-theme-item .bl-theme-toggle__thumb {
    width: 22px;
    height: 22px;
  }

  html[data-theme="dark"] .nav-theme-item .bl-theme-toggle__thumb {
    transform: translateX(24px);
  }

  .nav-currency-item .currency-inline {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    z-index: auto !important;
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .nav-currency-item .currency-inline select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .mobile-currency-picker {
    position: relative;
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
  }

  .mobile-currency-current {
    min-width: 78px;
    height: 38px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: inherit;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    cursor: pointer;
  }

  .mobile-currency-options {
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 4;
    width: 112px;
    padding: 6px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(11, 12, 14, 0.98);
    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.28);
  }

  .mobile-currency-option {
    width: 100%;
    height: 34px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #fff;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    cursor: pointer;
    text-align: center;
  }

  .mobile-currency-option.is-active,
  .mobile-currency-option:hover,
  .mobile-currency-option:focus-visible {
    background: rgba(255, 255, 255, 0.16);
  }

  body > .currency-inline {
    left: 12px !important;
    bottom: 12px !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body > .currency-inline select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body > .currency-inline .mobile-currency-current {
    min-width: 72px;
    height: 34px;
    background: rgba(10, 10, 10, 0.72);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.24);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
  }

  body > .currency-inline .mobile-currency-options {
    top: auto;
    bottom: calc(100% + 8px);
    right: auto;
    left: 0;
    width: 86px;
  }

  .navbar > nav .has-dropdown {
    position: static !important;
  }

  .navbar > nav .has-dropdown.open {
    padding-bottom: 10px;
  }

  .navbar > nav .has-dropdown.open > .dropdown {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: grid !important;
    gap: 0 !important;
    margin: -4px 0 8px !important;
    padding: 0 0 0 14px !important;
    border: 0 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  .navbar > nav .has-dropdown.open > .dropdown li:not(.submenu-back-item) {
    display: block !important;
  }

  .navbar > nav .has-dropdown.open > .dropdown li:not(.submenu-back-item) a {
    min-height: 40px !important;
    display: flex !important;
    align-items: center;
    opacity: 0.86 !important;
    padding: 0 2px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  html[data-theme="light"] .navbar > nav .has-dropdown.open > .dropdown {
    border-left-color: rgba(23, 17, 12, 0.22) !important;
  }

  html[data-theme="light"] .navbar > nav .has-dropdown.open > .dropdown li:not(.submenu-back-item) a {
    color: #17110c !important;
    opacity: 0.74 !important;
  }

  html[data-theme="dark"] .navbar > nav .has-dropdown.open > .dropdown li:not(.submenu-back-item) a {
    color: #ffffff !important;
    opacity: 0.86 !important;
  }
}

@media (max-width: 768px) {
  html[data-theme="light"] .navbar:not(.is-mobile-open),
  html[data-theme="light"] body.shop-page-nav .navbar:not(.is-mobile-open),
  html[data-theme="light"] body.shop-home-mode .navbar:not(.is-mobile-open),
  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar:not(.is-mobile-open) {
    background: rgba(255, 250, 244, 0.96) !important;
    border-bottom-color: rgba(23, 17, 12, 0.12) !important;
    box-shadow: 0 10px 24px rgba(31, 23, 16, 0.08) !important;
  }

  html[data-theme="light"] .navbar:not(.is-mobile-open) :is(.logo-main, .logo-blx, .nav-right img),
  html[data-theme="light"] body.shop-home-mode .navbar:not(.is-mobile-open) :is(.logo-main, .logo-blx, .nav-right img),
  html[data-theme="light"] :is(.about-page-body, .lookbook-page-body, .search-page-body) .navbar:not(.is-mobile-open) :is(.logo-main, .logo-blx, .nav-right img) {
    filter: none !important;
  }

  html[data-theme="light"] .navbar:not(.is-mobile-open) :is(.nav-links a, .shop-toggle) {
    color: #17110c !important;
  }

  html[data-theme="light"] .navbar > .nav-menu-toggle {
    border-color: rgba(23, 17, 12, 0.18) !important;
    background: rgba(255, 255, 255, 0.62) !important;
  }

  html[data-theme="light"] .navbar > .nav-menu-toggle span {
    background: #17110c !important;
  }

  .about-page-body .hero-content {
    inset: 0;
    width: 100%;
    justify-content: center;
    padding: 64px 28px 112px;
  }

  .about-page-body .hero-content h1 {
    max-width: 9ch;
    margin-inline: auto;
    text-align: center;
    line-height: 1.08;
  }

  .about-page-body .hero-tagline {
    max-width: 18ch;
    margin-inline: auto;
    text-align: center;
    line-height: 1.35;
  }

  .about-page-body .hero-scroll {
    left: 50%;
    right: auto;
    bottom: 76px;
    width: max-content;
    transform: translateX(-50%);
  }

  .about-page-body .hero-indicators {
    left: 50%;
    right: auto;
    bottom: 32px;
    justify-content: center;
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  body.profile-body {
    background: linear-gradient(180deg, #f7f2ea 0%, #ede5d9 100%);
  }

  .profile-container {
    margin-top: 64px;
    min-height: calc(100vh - 64px);
    background: transparent;
  }

  .auth-section {
    display: block;
    min-height: calc(100vh - 64px);
    padding: 18px 14px 34px;
  }

  .auth-container {
    width: 100%;
    max-width: 430px;
    margin: 0 auto;
    padding: 22px 16px 20px;
    border: 1px solid rgba(31, 23, 16, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 36px rgba(31, 23, 16, 0.08);
  }

  .auth-brand {
    margin-bottom: 22px;
  }

  .auth-logo {
    width: 72px;
    height: 72px;
    margin-bottom: 16px;
    border-radius: 18px;
  }

  .auth-brand h1 {
    font-size: 1.58rem;
    line-height: 1.08;
    max-width: 12ch;
    margin-inline: auto;
  }

  .auth-brand p {
    max-width: 30ch;
    font-size: 0.88rem;
    line-height: 1.55;
  }

  .auth-tabs {
    margin-bottom: 22px;
    padding: 4px;
  }

  .auth-tab {
    min-height: 42px;
    padding: 0 10px;
    font-size: 0.84rem;
  }

  .auth-form .form-group {
    margin-bottom: 16px;
  }

  .auth-form .form-group label {
    font-size: 0.8rem;
    margin-bottom: 7px;
  }

  .input-wrapper input,
  .auth-form input {
    min-height: 46px;
    font-size: 0.9rem;
  }

  .form-options {
    align-items: flex-start;
    gap: 12px;
    flex-direction: column;
  }

  .btn-auth {
    min-height: 48px;
    border-radius: 14px;
  }

  .social-divider {
    margin: 18px 0;
  }

  .social-buttons {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .social-btn {
    min-height: 44px;
    justify-content: center;
  }

  .auth-switch {
    margin-top: 18px;
    font-size: 0.88rem;
  }

  .dashboard-section,
  .profile-container[data-profile-layout=single] .dashboard-section,
  .profile-container[data-profile-layout=split] .dashboard-section {
    min-height: calc(100vh - 64px);
    padding: 0;
  }

  .dashboard-section[style*="display: flex"],
  .dashboard-section[style*="display:flex"],
  .dashboard-section[style*="display: grid"],
  .dashboard-section[style*="display:grid"] {
    display: block !important;
  }

  .dashboard-section[style*="display: none"],
  .dashboard-section[style*="display:none"] {
    display: none !important;
  }

  .profile-sidebar {
    position: sticky;
    top: 64px;
    z-index: 30;
    display: block;
    width: 100%;
    max-height: none;
    padding: 12px 0 10px;
    border-right: 0;
    border-bottom: 1px solid rgba(31, 23, 16, 0.1);
    background: rgba(255, 250, 244, 0.96);
    box-shadow: 0 10px 24px rgba(31, 23, 16, 0.08);
    overflow: visible;
  }

  .sidebar-header {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    text-align: left;
    margin: 0;
    padding: 0 14px 10px;
    border-bottom: 0;
  }

  .user-avatar {
    width: 44px;
    height: 44px;
    margin: 0;
    border-width: 2px;
    padding: 2px;
  }

  .avatar-status {
    width: 10px;
    height: 10px;
    bottom: 2px;
    right: 2px;
  }

  .sidebar-header h2 {
    margin: 0 0 2px;
    font-size: 0.98rem;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .sidebar-header p {
    font-size: 0.72rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .sidebar-nav {
    display: flex;
    flex-direction: row;
    gap: 8px;
    padding: 0 14px 2px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .sidebar-nav::-webkit-scrollbar {
    display: none;
  }

  .sidebar-nav .nav-divider {
    display: none;
  }

  .sidebar-nav .nav-item {
    flex: 0 0 auto;
    width: auto;
    min-height: 40px;
    padding: 0 13px;
    border-radius: 999px;
    gap: 7px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(31, 23, 16, 0.08);
    font-size: 0.78rem;
    white-space: nowrap;
  }

  .sidebar-nav .nav-item svg {
    width: 16px;
    height: 16px;
  }

  .sidebar-nav .nav-item .badge {
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    line-height: 18px;
    text-align: center;
  }

  .profile-main {
    padding: 22px 14px 34px;
  }

  .profile-header {
    display: grid;
    gap: 16px;
    margin-bottom: 22px;
  }

  .welcome-section h1 {
    font-size: 1.55rem;
    line-height: 1.15;
  }

  .welcome-section p {
    font-size: 0.9rem;
    line-height: 1.5;
  }

  .header-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .header-actions .btn-shop-now,
  .layout-switcher {
    width: 100%;
    justify-content: center;
  }

  .dashboard-grid,
  .stats-grid,
  .wallet-overview-grid,
  .wallet-lower-grid,
  .profile-form .form-row,
  .profile-form .form-row.three {
    grid-template-columns: 1fr !important;
  }

  .dashboard-primary,
  .dashboard-side {
    gap: 16px;
  }

  .panel-card,
  .stat-card,
  .wallet-balance-card,
  .wallet-status-card,
  .wallet-form-section,
  .wallet-transactions-card {
    border-radius: 20px;
    padding: 18px;
  }

  .stat-card {
    align-items: center;
  }

  .stat-icon {
    width: 46px;
    height: 46px;
  }

  .stat-number,
  .balance-amount {
    font-size: 1.35rem;
  }

  .section-header,
  .wallet-header {
    display: grid;
    gap: 10px;
  }

  .section-header h2,
  .wallet-header h2 {
    font-size: 1.45rem;
    line-height: 1.15;
  }

  .wallet-actions,
  .wallet-form-mock,
  .overview-actions {
    grid-template-columns: 1fr !important;
    flex-direction: column;
  }

  .profile-avatar-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .profile-avatar-actions {
    width: 100%;
  }

  .profile-avatar-actions input[type=file],
  .avatar-remove,
  .profile-form button,
  .btn-primary {
    width: 100%;
  }
}

@media (max-width: 420px) {
  .auth-section {
    padding-inline: 10px;
  }

  .auth-container {
    padding: 20px 14px;
    border-radius: 20px;
  }

  .profile-main {
    padding-inline: 10px;
  }

  .panel-card,
  .stat-card,
  .wallet-balance-card,
  .wallet-status-card,
  .wallet-form-section,
  .wallet-transactions-card {
    padding: 16px;
  }
}

/* Keep cart and checkout product thumbnails contained without cropping. */
body.cart-body .cart-ref-item .product-col img,
body.checkout-body .checkout-item .item-image,
body.checkout-body .sidebar-items .item-image {
  object-fit: contain !important;
  object-position: center !important;
}

body.cart-body .cart-ref-item .product-col img {
  padding: 6px !important;
}

body.checkout-body .checkout-item .item-image,
body.checkout-body .sidebar-items .item-image {
  padding: 6px !important;
}

@media (max-width: 820px) {
  body.checkout-body .checkout-item .item-image,
  body.checkout-body .sidebar-items .item-image {
    height: 160px !important;
  }
}

/* Reuse the mobile preview currency picker on cart and checkout. */
@media (max-width: 768px) {
  body.cart-body .cart-currency-stack {
    justify-items: start !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.cart-body .cart-currency-stack .currency-inline,
  body.checkout-body .checkout-page-tools .currency-inline {
    position: fixed !important;
    left: 12px !important;
    right: auto !important;
    bottom: 12px !important;
    z-index: 1600 !important;
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.cart-body .cart-currency-stack .currency-inline > span,
  body.checkout-body .checkout-page-tools .currency-inline > span,
  body.cart-body .cart-currency-stack .currency-inline > select,
  body.checkout-body .checkout-page-tools .currency-inline > select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.cart-body .cart-currency-stack .mobile-currency-picker,
  body.checkout-body .checkout-page-tools .mobile-currency-picker {
    display: inline-flex !important;
  }

  body.checkout-body .checkout-page-tools .mobile-currency-picker {
    display: none !important;
  }

  body.cart-body .cart-currency-stack .mobile-currency-current,
  body.checkout-body .checkout-page-tools .mobile-currency-current {
    min-width: 72px;
    height: 34px;
    border-radius: 999px;
    background: rgba(10, 10, 10, 0.72);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.24);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
  }

  body.cart-body .cart-currency-stack .mobile-currency-options,
  body.checkout-body .checkout-page-tools .mobile-currency-options {
    top: auto;
    bottom: calc(100% + 8px);
    right: auto;
    left: 0;
    width: 86px;
  }
}

/* Keep Cart mobile centered inside the phone viewport. */
@media (max-width: 768px) {
  body.cart-body,
  body.cart-body .cart-page,
  body.cart-body .cart-layout,
  body.cart-body .cart-items-section,
  body.cart-body .cart-summary,
  body.cart-body .cart-items-list,
  body.cart-body .cart-actions,
  body.cart-body .right-actions,
  body.cart-body .notes-section {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  body.cart-body .cart-page {
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.cart-body .cart-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
    justify-items: stretch !important;
  }

  body.cart-body .cart-items-section,
  body.cart-body .cart-summary {
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.cart-body .cart-ref-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "product price"
      "qty total" !important;
    gap: 10px 12px !important;
    align-items: center !important;
    padding: 12px 10px !important;
    box-sizing: border-box !important;
  }

  body.cart-body .cart-ref-item .product-col,
  body.cart-body .cart-ref-item .price-col,
  body.cart-body .cart-ref-item .qty-col,
  body.cart-body .cart-ref-item .total-col,
  body.cart-body .coupon-input-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.cart-body .cart-ref-item .product-col {
    grid-area: product !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 9px !important;
    align-items: center !important;
    text-align: left !important;
  }

  body.cart-body .cart-ref-item .product-col img {
    width: 46px !important;
    height: 46px !important;
    padding: 4px !important;
  }

  body.cart-body .cart-ref-item .product-meta,
  body.cart-body .cart-ref-item .product-meta h3,
  body.cart-body .cart-ref-item .product-meta p {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    white-space: normal !important;
  }

  body.cart-body .cart-ref-item .product-meta h3 {
    font-size: 0.82rem !important;
    line-height: 1.15 !important;
    margin-bottom: 3px !important;
  }

  body.cart-body .cart-ref-item .product-meta p {
    font-size: 0.68rem !important;
    line-height: 1.2 !important;
  }

  body.cart-body .cart-ref-item .price-col {
    grid-area: price !important;
    width: auto !important;
    justify-self: end !important;
    text-align: right !important;
  }

  body.cart-body .cart-ref-item .qty-col {
    grid-area: qty !important;
    display: flex !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    text-align: left !important;
  }

  body.cart-body .cart-ref-item .total-col {
    grid-area: total !important;
    width: auto !important;
    justify-self: end !important;
    text-align: right !important;
  }

  body.cart-body .cart-ref-item .price-col strong,
  body.cart-body .cart-ref-item .total-col strong {
    font-size: 0.78rem !important;
    white-space: nowrap !important;
  }

  body.cart-body .cart-ref-item .qty-box {
    min-height: 28px !important;
  }

  body.cart-body .cart-ref-item .qty-btn {
    width: 26px !important;
    height: 26px !important;
  }

  body.cart-body .cart-ref-item .qty-input {
    width: 30px !important;
    height: 26px !important;
    font-size: 0.8rem !important;
  }

  body.cart-body .cart-ref-item .cart-remove {
    width: 28px !important;
    height: 28px !important;
    margin-left: 0 !important;
  }

  body.cart-body .coupon-input,
  body.cart-body .coupon-btn,
  body.cart-body .notes-section textarea {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

html[data-theme] .hero h1[data-site-homepage-title],
.hero h1[data-site-homepage-title] {
  color: #d6d6d6 !important;
  -webkit-text-stroke: 0.7px rgba(246, 246, 246, 0.5);
  text-shadow:
    0 2px 4px rgba(0, 0, 0, 0.85),
    0 10px 28px rgba(0, 0, 0, 0.72),
    0 0 18px rgba(246, 246, 246, 0.18);
}

@media (max-width: 768px) {
  html[data-theme="light"] body.profile-body {
    --profile-mobile-menu-bg: #fffaf2;
    --profile-mobile-menu-border: rgba(31, 23, 16, 0.12);
    --profile-mobile-menu-text: #18130e;
    --profile-mobile-menu-active: #9a6f1e;
    --profile-mobile-menu-danger: #a51f16;
  }

  html[data-theme="dark"] body.profile-body,
  body.profile-body {
    --profile-mobile-menu-bg: #070a0d;
    --profile-mobile-menu-border: rgba(255, 250, 242, 0.12);
    --profile-mobile-menu-text: #fffaf2;
    --profile-mobile-menu-active: #d6c08a;
    --profile-mobile-menu-danger: #ffb8b0;
  }

  body.profile-body .profile-mobile-menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    border: 1px solid var(--profile-mobile-menu-border) !important;
    border-radius: 0 !important;
    background: var(--profile-mobile-menu-bg) !important;
    color: var(--profile-mobile-menu-text) !important;
    box-shadow: none !important;
    overflow: visible !important;
    margin: 10px 0 14px !important;
    position: relative !important;
    z-index: 12 !important;
  }

  body.profile-body .profile-mobile-menu-head {
    display: flex !important;
    min-height: 32px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 8px 10px !important;
    color: var(--profile-mobile-menu-text) !important;
    cursor: pointer !important;
  }

  body.profile-body .profile-mobile-menu-head strong {
    color: inherit !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  body.profile-body .profile-mobile-menu-head::after {
    content: "▼";
    margin-left: auto;
    color: var(--profile-mobile-menu-text) !important;
    font-size: 0.62rem;
    line-height: 1;
  }

  body.profile-body .profile-mobile-menu-toggle.is-open .profile-mobile-menu-head::after {
    content: "▲";
  }

  body.profile-body #profile-mobile-menu-label {
    display: none !important;
  }

  body.profile-body .profile-mobile-actions {
    display: none !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 10px 10px !important;
    border-top: 1px solid var(--profile-mobile-menu-border) !important;
    background: var(--profile-mobile-menu-bg) !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.profile-body .profile-mobile-menu-toggle.is-open .profile-mobile-actions {
    display: grid !important;
  }

  body.profile-body .profile-mobile-action,
  html[data-theme="dark"] body.profile-body .profile-mobile-action {
    display: block !important;
    width: 100% !important;
    min-height: 24px !important;
    padding: 6px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--profile-mobile-menu-text) !important;
    font-family: var(--font-secondary) !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.profile-body .profile-mobile-action.active,
  body.profile-body .profile-mobile-action:hover,
  body.profile-body .profile-mobile-action:focus-visible,
  html[data-theme="dark"] body.profile-body .profile-mobile-action.active,
  html[data-theme="dark"] body.profile-body .profile-mobile-action:hover,
  html[data-theme="dark"] body.profile-body .profile-mobile-action:focus-visible {
    background: transparent !important;
    border-color: transparent !important;
    color: var(--profile-mobile-menu-active) !important;
    outline: 0 !important;
  }

  body.profile-body .profile-mobile-action.logout {
    color: var(--profile-mobile-menu-danger) !important;
  }

  body.profile-body .sidebar-nav {
    display: none !important;
  }
}

@media (max-width: 768px) {
  body.profile-body .profile-sidebar {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.profile-body .profile-mobile-menu-toggle {
    display: flex !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
    background: var(--profile-mobile-menu-bg, #070a0d) !important;
    border: 1px solid var(--profile-mobile-menu-border, rgba(255, 255, 255, 0.08)) !important;
    box-shadow: none !important;
  }

  body.profile-body .profile-mobile-menu-head {
    display: flex !important;
    min-height: 32px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 8px 10px !important;
    color: var(--profile-mobile-menu-text, #fffaf2) !important;
    cursor: pointer !important;
  }

  body.profile-body .profile-mobile-menu-head strong {
    color: inherit !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  body.profile-body .profile-mobile-menu-head::after {
    content: "▲";
    margin-left: auto;
    color: var(--profile-mobile-menu-text, #fffaf2);
    font-size: 0.62rem;
    line-height: 1;
  }

  body.profile-body .profile-mobile-menu-toggle:not(.is-open) .profile-mobile-menu-head::after {
    content: "▼";
  }

  body.profile-body #profile-mobile-menu-label {
    display: none !important;
  }

  body.profile-body .profile-mobile-actions {
    display: none !important;
    height: auto !important;
    max-height: none !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0 10px 10px !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: var(--profile-mobile-menu-bg, #070a0d) !important;
    border-top: 1px solid var(--profile-mobile-menu-border, rgba(255, 255, 255, 0.08)) !important;
  }

  body.profile-body .profile-mobile-menu-toggle.is-open .profile-mobile-actions {
    display: grid !important;
  }

  body.profile-body .profile-mobile-action {
    display: block !important;
    width: 100% !important;
    min-height: 24px !important;
    padding: 6px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--profile-mobile-menu-text, #fffaf2) !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
  }

  body.profile-body .profile-mobile-action.active,
  body.profile-body .profile-mobile-action:hover,
  body.profile-body .profile-mobile-action:focus-visible {
    background: transparent !important;
    color: var(--profile-mobile-menu-active, #d6c08a) !important;
    outline: 0 !important;
  }

  body.profile-body .profile-mobile-action.logout {
    color: var(--profile-mobile-menu-danger, #ffb8b0) !important;
  }

  body.profile-body .sidebar-nav {
    display: none !important;
  }
}

html[data-theme="light"] body.profile-body {
  --profile-mobile-menu-bg: #fffaf2;
  --profile-mobile-menu-border: rgba(31, 23, 16, 0.12);
  --profile-mobile-menu-text: #18130e;
  --profile-mobile-menu-active: #9a6f1e;
  --profile-mobile-menu-danger: #a51f16;
}

html[data-theme="dark"] body.profile-body {
  --profile-mobile-menu-bg: #070a0d;
  --profile-mobile-menu-border: rgba(255, 250, 242, 0.12);
  --profile-mobile-menu-text: #fffaf2;
  --profile-mobile-menu-active: #d6c08a;
  --profile-mobile-menu-danger: #ffb8b0;
}

.profile-mobile-menu-toggle {
  display: none;
}

.profile-mobile-actions {
  display: none;
}

@media (max-width: 768px) {
  .profile-body {
    background: #f5f0e8;
    overflow-x: hidden;
  }

  .profile-body .profile-container {
    display: block;
    width: 100%;
    min-height: calc(100vh - 64px);
    margin-top: 64px;
    background: #f5f0e8;
  }

  .profile-body .auth-section {
    display: block;
    min-height: calc(100vh - 64px);
    padding: 16px 12px 28px;
  }

  .profile-body .auth-container {
    width: min(100%, 430px);
    margin: 0 auto;
    padding: 20px 14px;
    border-radius: 18px;
    background: #fffaf2;
    border: 1px solid rgba(40, 31, 20, 0.1);
  }

  .profile-body .auth-features {
    display: none;
  }

  .profile-body .dashboard-section,
  .profile-body .profile-container[data-profile-layout=split] .dashboard-section,
  .profile-body .profile-container[data-profile-layout=classic] .dashboard-section,
  .profile-body .profile-container[data-profile-layout=single] .dashboard-section {
    grid-template-columns: 1fr;
    width: 100%;
    min-height: calc(100vh - 64px);
    background: #f5f0e8;
  }

  .profile-body .dashboard-section[style*="display: flex"],
  .profile-body .dashboard-section[style*="display:flex"],
  .profile-body .dashboard-section[style*="display: grid"],
  .profile-body .dashboard-section[style*="display:grid"] {
    display: block !important;
  }

  .profile-body .dashboard-section[style*="display: none"],
  .profile-body .dashboard-section[style*="display:none"] {
    display: none !important;
  }

  .profile-body .profile-sidebar {
    position: sticky;
    top: 64px;
    z-index: 45;
    display: block !important;
    width: 100% !important;
    max-height: none;
    padding: 12px;
    overflow: visible;
    background: rgba(255, 250, 242, 0.98);
    border-right: 0;
    border-bottom: 1px solid rgba(33, 25, 15, 0.12);
    box-shadow: 0 10px 24px rgba(28, 20, 12, 0.08);
  }

  .profile-body .sidebar-header {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    column-gap: 12px;
    align-items: center;
    margin: 0;
    padding: 0 0 12px;
    text-align: left;
    border-bottom: 0;
  }

  .profile-body .user-avatar {
    width: 48px;
    height: 48px;
    margin: 0;
    border-width: 2px;
    border-radius: 50%;
  }

  .profile-body .avatar-status {
    width: 11px;
    height: 11px;
    right: 2px;
    bottom: 2px;
  }

  .profile-body .sidebar-header h2 {
    margin: 0 0 2px;
    overflow: hidden;
    color: #17120c;
    font-size: 1rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .profile-body .sidebar-header p {
    overflow: hidden;
    color: #70675a;
    font-size: 0.76rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .profile-body .profile-mobile-menu-toggle {
    display: flex;
    width: 100%;
    min-height: 0;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid rgba(31, 23, 16, 0.13);
    border-radius: 14px;
    background: #18130e;
    color: #fffaf2;
    font-family: var(--font-secondary);
    text-align: left;
    pointer-events: auto;
    touch-action: manipulation;
    user-select: none;
  }

  .profile-body .profile-mobile-menu-head {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-width: 0;
    cursor: pointer;
    pointer-events: auto;
  }

  .profile-body .profile-mobile-menu-toggle strong {
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .profile-body .profile-mobile-menu-toggle small {
    display: block;
    color: #d6c08a;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.02em;
  }

  .profile-body .profile-mobile-menu-toggle.is-open small {
    color: #fffaf2;
  }

  .profile-body .profile-mobile-menu-toggle svg {
    display: none;
  }

  .profile-body .profile-mobile-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 6px;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .profile-body .profile-mobile-menu-toggle.is-open .profile-mobile-actions {
    display: grid !important;
  }

  .profile-body .profile-mobile-action {
    display: flex;
    min-height: 38px;
    align-items: center;
    justify-content: space-between;
    padding: 9px 10px;
    border: 1px solid rgba(255, 250, 242, 0.14);
    border-radius: 10px;
    background: rgba(255, 250, 242, 0.08);
    color: #fffaf2;
    font-family: var(--font-secondary);
    font-size: 0.88rem;
    font-weight: 800;
    line-height: 1.1;
    text-align: left;
    cursor: pointer;
    pointer-events: auto;
    touch-action: manipulation;
  }

  .profile-body .profile-mobile-action.active {
    background: #d6c08a;
    border-color: #d6c08a;
    color: #18130e;
  }

  .profile-body .sidebar-nav {
    display: none !important;
    position: static;
    width: 100%;
    max-height: none;
    margin: 8px 0 0;
    padding: 8px;
    overflow-y: visible;
    overflow-x: hidden;
    flex-direction: column;
    gap: 4px;
    border: 1px solid rgba(31, 23, 16, 0.12);
    border-radius: 16px;
    background: #fffaf2;
    box-shadow: 0 18px 34px rgba(20, 14, 8, 0.2);
  }

  .profile-body .profile-sidebar.is-menu-open .sidebar-nav {
    display: flex;
  }

  .profile-body .nav-divider {
    display: block;
    height: 1px;
    margin: 6px 4px;
    background: rgba(31, 23, 16, 0.1);
  }

  .profile-body .nav-item {
    width: 100%;
    min-height: 46px;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    border-radius: 12px;
    color: #211810;
    font-size: 0.9rem;
    text-align: left;
  }

  .profile-body .nav-item svg {
    width: 19px;
    height: 19px;
  }

  .profile-body .nav-item span:not(.badge) {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .profile-body .nav-item.active {
    background: #18130e;
    color: #fffaf2;
  }

  .profile-body .nav-item.active .badge {
    background: #d6c08a;
    color: #18130e;
  }

  .profile-body .nav-item.logout {
    color: #a51f16;
  }

  .profile-body .profile-main {
    width: 100%;
    padding: 18px 12px 32px;
    background: #f5f0e8;
  }

  .profile-body .profile-header,
  .profile-body .section-header,
  .profile-body .wallet-header {
    display: block;
    margin-bottom: 16px;
  }

  .profile-body .welcome-section h1,
  .profile-body .section-header h2,
  .profile-body .wallet-header h2 {
    color: #17120c;
    font-size: 1.45rem;
    line-height: 1.16;
    letter-spacing: 0;
  }

  .profile-body .welcome-section p,
  .profile-body .section-header p,
  .profile-body .wallet-header p {
    max-width: 100%;
    margin-top: 5px;
    color: #71685c;
    font-size: 0.88rem;
    line-height: 1.45;
  }

  .profile-body .header-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 14px;
  }

  .profile-body .layout-switcher {
    display: none;
  }

  .profile-body .header-actions .btn-shop-now,
  .profile-body .btn-secondary,
  .profile-body .btn-track,
  .profile-body .btn-save,
  .profile-body .btn-add-address,
  .profile-body .btn-add-payment,
  .profile-body .btn-topup,
  .profile-body .btn-withdraw,
  .profile-body .btn-primary,
  .profile-body .wallet-topup-btn,
  .profile-body .dashboard-action {
    width: 100%;
    min-height: 44px;
    justify-content: center;
    border-radius: 12px;
  }

  .profile-body .dashboard-grid,
  .profile-body .profile-container[data-profile-layout=split] .dashboard-grid,
  .profile-body .profile-container[data-profile-layout=classic] .dashboard-grid,
  .profile-body .profile-container[data-profile-layout=single] .dashboard-grid,
  .profile-body .stats-grid,
  .profile-body .wallet-overview-grid,
  .profile-body .wallet-lower-grid,
  .profile-body .settings-grid,
  .profile-body .addresses-grid,
  .profile-body .payments-grid {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 12px;
  }

  .profile-body .dashboard-primary,
  .profile-body .dashboard-side {
    position: static;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .profile-body .panel-card,
  .profile-body .recent-section,
  .profile-body .stat-card,
  .profile-body .wallet-balance-card,
  .profile-body .wallet-status-card,
  .profile-body .wallet-form-section,
  .profile-body .wallet-transactions-card,
  .profile-body .wallet-topup-card,
  .profile-body .wallet-history-card,
  .profile-body .add-address-card,
  .profile-body .add-payment-card,
  .profile-body .address-card,
  .profile-body .payment-card,
  .profile-body .settings-card,
  .profile-body .tracking-form,
  .profile-body .tracking-result,
  .profile-body .orders-container,
  .profile-body .order-card {
    width: 100%;
    min-width: 0;
    padding: 16px;
    border-radius: 16px;
    background: #fffaf2;
    border: 1px solid rgba(40, 31, 20, 0.1);
    box-shadow: 0 8px 22px rgba(26, 18, 10, 0.06);
  }

  .profile-body .stat-card {
    min-height: 88px;
    align-items: center;
  }

  .profile-body .stat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
  }

  .profile-body .stat-number {
    font-size: 1.25rem;
  }

  .profile-body .stat-label {
    font-size: 0.78rem;
  }

  .profile-body .order-filters,
  .profile-body .amount-buttons {
    display: flex;
    gap: 8px;
    padding-bottom: 6px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .profile-body .order-filters::-webkit-scrollbar,
  .profile-body .amount-buttons::-webkit-scrollbar {
    display: none;
  }

  .profile-body .filter-btn,
  .profile-body .amount-btn {
    flex: 0 0 auto;
    min-height: 40px;
    border-radius: 999px;
    white-space: nowrap;
  }

  .profile-body .topup-amounts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .profile-body .tracking-input-group,
  .profile-body .wallet-topup-form,
  .profile-body .wallet-form-mock,
  .profile-body .compact-form,
  .profile-body .address-form,
  .profile-body .payment-form,
  .profile-body .profile-form {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 12px;
  }

  .profile-body input,
  .profile-body select,
  .profile-body textarea {
    min-height: 44px;
    max-width: 100%;
    font-size: 16px;
  }

  .profile-body .order-card-top,
  .profile-body .order-card-footer,
  .profile-body .wallet-actions,
  .profile-body .panel-header,
  .profile-body .form-row,
  .profile-body .address-actions,
  .profile-body .payment-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: stretch;
  }

  .profile-body .order-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .profile-body .order-action-btn {
    width: 100%;
    min-height: 40px;
    border-radius: 10px;
  }
}

@media (max-width: 420px) {
  .profile-body .profile-main,
  .profile-body .profile-sidebar,
  .profile-body .auth-section {
    padding-left: 10px;
    padding-right: 10px;
  }

  .profile-body .panel-card,
  .profile-body .recent-section,
  .profile-body .stat-card,
  .profile-body .wallet-balance-card,
  .profile-body .wallet-status-card,
  .profile-body .wallet-form-section,
  .profile-body .wallet-transactions-card,
  .profile-body .wallet-topup-card,
  .profile-body .wallet-history-card,
  .profile-body .add-address-card,
  .profile-body .add-payment-card,
  .profile-body .address-card,
  .profile-body .payment-card,
  .profile-body .settings-card,
  .profile-body .tracking-form,
  .profile-body .tracking-result,
  .profile-body .order-card {
    padding: 14px;
  }
}

html[data-theme="dark"] body.profile-body,
html[data-theme="dark"] body.profile-body .profile-container,
html[data-theme="dark"] body.profile-body .dashboard-section,
html[data-theme="dark"] body.profile-body .profile-main,
html[data-theme="dark"] body.profile-body .auth-section {
  background:
    radial-gradient(circle at 14% 10%, rgba(210, 170, 103, 0.12), transparent 28%),
    linear-gradient(180deg, #11151b 0%, #0d1014 100%) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body .profile-sidebar,
html[data-theme="dark"] body.profile-body .auth-container,
html[data-theme="dark"] body.profile-body :is(
  .panel-card,
  .recent-section,
  .stat-card,
  .wallet-balance-card,
  .wallet-status-card,
  .wallet-form-section,
  .wallet-transactions-card,
  .wallet-topup-card,
  .wallet-history-card,
  .add-address-card,
  .add-payment-card,
  .address-card,
  .payment-card,
  .settings-card,
  .tracking-form,
  .tracking-result,
  .orders-container,
  .order-card
) {
  background: linear-gradient(180deg, rgba(24, 29, 37, 0.96), rgba(15, 19, 25, 0.96)) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .profile-mobile-menu-toggle,
  .profile-mobile-action,
  .sidebar-nav,
  .nav-item:not(.active),
  .order-filters,
  .amount-buttons
) {
  background: var(--bl-theme-surface-soft) !important;
  border-color: var(--bl-theme-border) !important;
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .sidebar-header h2,
  .welcome-section h1,
  .section-header h2,
  .wallet-header h2
) {
  color: var(--bl-theme-text) !important;
}

html[data-theme="dark"] body.profile-body :is(
  .sidebar-header p,
  .welcome-section p,
  .section-header p,
  .wallet-header p,
  .wallet-card-copy,
  .wallet-section-copy,
  .wallet-status-note,
  .balance-label,
  .wallet-card-eyebrow
) {
  color: var(--bl-theme-muted) !important;
}

html[data-theme="dark"] body.profile-body .wallet-balance-card {
  background:
    radial-gradient(circle at top right, rgba(214, 192, 138, 0.16), transparent 38%),
    linear-gradient(180deg, rgba(24, 29, 37, 0.98), rgba(15, 19, 25, 0.98)) !important;
}

html[data-theme="dark"] body.profile-body .balance-amount,
html[data-theme="dark"] body.profile-body .wallet-status-card strong {
  color: var(--bl-theme-text) !important;
}

@media (max-width: 768px) {
  html[data-theme="light"] body.profile-body {
    --profile-mobile-menu-bg: #fffaf2;
    --profile-mobile-menu-border: rgba(31, 23, 16, 0.12);
    --profile-mobile-menu-text: #18130e;
    --profile-mobile-menu-active: #9a6f1e;
    --profile-mobile-menu-danger: #a51f16;
  }

  html[data-theme="dark"] body.profile-body,
  body.profile-body {
    --profile-mobile-menu-bg: #070a0d;
    --profile-mobile-menu-border: rgba(255, 250, 242, 0.12);
    --profile-mobile-menu-text: #fffaf2;
    --profile-mobile-menu-active: #d6c08a;
    --profile-mobile-menu-danger: #ffb8b0;
  }

  body.profile-body .profile-mobile-menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    border: 1px solid var(--profile-mobile-menu-border) !important;
    border-radius: 0 !important;
    background: var(--profile-mobile-menu-bg) !important;
    color: var(--profile-mobile-menu-text) !important;
    box-shadow: none !important;
    overflow: visible !important;
    margin: 8px 0 12px !important;
    clear: both !important;
  }

  body.profile-body .profile-mobile-menu-head {
    display: flex !important;
    min-height: 24px !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 5px 9px !important;
    color: var(--profile-mobile-menu-text) !important;
    cursor: pointer !important;
  }

  body.profile-body .profile-mobile-menu-head strong {
    color: inherit !important;
    font-size: 0.58rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  body.profile-body .profile-mobile-menu-head::after {
    content: "▼";
    margin-left: auto;
    color: var(--profile-mobile-menu-text) !important;
    font-size: 0.52rem;
    line-height: 1;
  }

  body.profile-body .profile-mobile-menu-toggle.is-open .profile-mobile-menu-head::after {
    content: "▲";
  }

  body.profile-body #profile-mobile-menu-label {
    display: none !important;
  }

  body.profile-body .profile-mobile-actions {
    display: none !important;
    grid-template-columns: 1fr !important;
    gap: 3px !important;
    width: 100% !important;
    padding: 3px 9px 6px !important;
    border-top: 1px solid var(--profile-mobile-menu-border) !important;
    background: var(--profile-mobile-menu-bg) !important;
  }

  body.profile-body .profile-mobile-menu-toggle.is-open .profile-mobile-actions {
    display: grid !important;
  }

  body.profile-body .profile-mobile-action,
  html[data-theme="dark"] body.profile-body .profile-mobile-action {
    display: block !important;
    width: 100% !important;
    min-height: 36px !important;
    padding: 10px 9px !important;
    border: 1px solid color-mix(in srgb, var(--profile-mobile-menu-border) 70%, transparent) !important;
    border-radius: 2px !important;
    background: color-mix(in srgb, var(--profile-mobile-menu-bg) 94%, var(--profile-mobile-menu-text) 6%) !important;
    color: var(--profile-mobile-menu-text) !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.07em !important;
    line-height: 1.15 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
  }

  body.profile-body .profile-mobile-action.active,
  body.profile-body .profile-mobile-action:hover,
  body.profile-body .profile-mobile-action:focus-visible,
  html[data-theme="dark"] body.profile-body .profile-mobile-action.active,
  html[data-theme="dark"] body.profile-body .profile-mobile-action:hover,
  html[data-theme="dark"] body.profile-body .profile-mobile-action:focus-visible {
    background: color-mix(in srgb, var(--profile-mobile-menu-bg) 90%, var(--profile-mobile-menu-active) 10%) !important;
    border-color: var(--profile-mobile-menu-active) !important;
    color: var(--profile-mobile-menu-active) !important;
    outline: 0 !important;
  }

  body.profile-body .profile-mobile-action.logout {
    color: var(--profile-mobile-menu-danger) !important;
  }

  body.profile-body .sidebar-nav {
    display: none !important;
  }
}

@media (max-width: 768px) {
  body.profile-body,
  body.profile-body .profile-container,
  body.profile-body .dashboard-section,
  body.profile-body .profile-main,
  body.profile-body #section-addresses {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.profile-body .profile-main {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.profile-body #section-addresses,
  body.profile-body #section-addresses * {
    box-sizing: border-box !important;
    min-width: 0 !important;
  }

  body.profile-body #section-addresses .section-header {
    margin-bottom: 12px !important;
  }

  body.profile-body #section-addresses .section-header h2 {
    font-size: 1.25rem !important;
    line-height: 1.15 !important;
  }

  body.profile-body #section-addresses .section-header p {
    font-size: 0.78rem !important;
    line-height: 1.35 !important;
  }

  body.profile-body .addresses-grid {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
  }

  body.profile-body .add-address-card {
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }

  body.profile-body .add-address-card h3 {
    margin-bottom: 12px !important;
    font-size: 1rem !important;
    line-height: 1.15 !important;
  }

  body.profile-body #address-form,
  body.profile-body #address-form .form-row,
  body.profile-body #address-form .city-field {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
    margin: 0 0 8px !important;
  }

  body.profile-body #address-form input,
  body.profile-body #address-form select {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 12px !important;
    font-size: 0.82rem !important;
    line-height: 40px !important;
    border-radius: 9px !important;
  }

  body.profile-body #address-form select {
    appearance: auto !important;
    text-overflow: ellipsis !important;
  }

  body.profile-body #address-form button,
  body.profile-body #address-form [type="submit"] {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    border-radius: 10px !important;
  }
}

@media (max-width: 768px) {
  body.profile-body .navbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    height: 48px !important;
    min-height: 48px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  body.profile-body {
    padding-top: 0 !important;
  }

  body.profile-body .profile-container {
    margin-top: 0 !important;
    min-height: calc(100vh - 48px) !important;
    padding-top: 0 !important;
  }

  body.profile-body .dashboard-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.profile-body .profile-sidebar {
    position: static !important;
    top: auto !important;
    z-index: auto !important;
    padding: 0 12px 6px !important;
    margin-top: 0 !important;
  }

  body.profile-body .sidebar-header {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 0 0 4px !important;
    margin: 0 !important;
    min-height: 0 !important;
  }

  body.profile-body .user-avatar {
    width: 38px !important;
    height: 38px !important;
  }

  body.profile-body .sidebar-header h2 {
    margin: 0 !important;
    font-size: 0.76rem !important;
    line-height: 1.1 !important;
  }

  body.profile-body .sidebar-header p {
    margin: 2px 0 0 !important;
    font-size: 0.58rem !important;
    line-height: 1.1 !important;
  }

  body.profile-body .profile-mobile-menu-toggle {
    margin-top: 4px !important;
    margin-bottom: 8px !important;
  }
}
