:root {
		--font-body-scale: 1.0;
		--font-body-line-height-scale: 1.0;
		--font-body-letter-spacing: 0.0em;
		--font-announcement-scale: 1.0;
		--font-heading-scale: 1.0;
		--font-heading-line-height-scale: 1.0;
		--font-heading-letter-spacing: 0.0em;
		--font-navigation-scale: 1.1;
		--font-product-price-scale: 1.0;
		--font-product-title-scale: 1.0;
		--font-product-title-line-height-scale: 1.0;
		--button-letter-spacing: 0.0em;

		--block-border-radius: 16px;
		--button-border-radius: 25px;
		--input-border-radius: 6px;--bg-body: #f5f5f5;
			--bg-body-rgb: 245,245,245;
			--bg-body-darken: #ededed;
			--payment-terms-background-color: #f5f5f5;--color-body: #2c2d2e;
		  --color-body-rgb: 44,45,46;--color-heading: #1a1c1d;
		  --color-heading-rgb: 26,28,29;--color-accent: #3F72E5;
			--color-accent-hover: #205be1;
			--color-accent-rgb: 63,114,229;--color-border: #DADCE0;--color-form-border: #D3D3D3;--color-overlay-rgb: 159,163,167;--color-drawer-bg: #ffffff;
			--color-drawer-bg-rgb: 255,255,255;--color-announcement-bar-text: #ffffff;--color-announcement-bar-bg: #2C2D2E;--color-secondary-menu-text: #2c2d2e;--color-secondary-menu-bg: #F5F5F5;
			--color-header-bg: #F5F5F5;
			--color-header-bg-rgb: 245,245,245;--color-header-text: #2c2d2e;
			--color-header-text-rgb: 44,45,46;--color-header-links: #2c2d2e;--color-header-links-hover: #3F72E5;--color-header-icons: #2c2d2e;--color-header-border: #E2E2E2;--solid-button-background: #2c2d2e;
			--solid-button-background-hover: #1b1b1c;--solid-button-label: #ffffff;--white-button-label: #2c2d2e;--color-price: #2c2d2e;
			--color-price-rgb: 44,45,46;--color-price-discounted: #C62A32;
			--color-star: #FFAA47;
			--color-inventory-instock: #279A4B;
			--color-inventory-lowstock: #e97f32;
			--section-spacing-mobile: 50px;
			--section-spacing-desktop: 80px;
			--color-product-card-bg: #000000;
			--color-article-card-bg: #ffffff;
			--color-badge-text: #ffffff;
			--color-badge-sold-out: #6d6b6b;
			--color-badge-sale: #c62a32;
			--badge-corner-radius: 8px;
			--color-footer-heading: #FFFFFF;
			--color-footer-heading-rgb: 255,255,255;
			--color-footer-text: #ffffff;
			--color-footer-text-rgb: 255,255,255;
			--color-footer-link: #ffffff;
			--color-footer-link-hover: #FFFFFF;
			--color-footer-border: #868d94;
			--color-footer-border-rgb: 134,141,148;--color-footer-bg: #2c2d2e;}
*{box-sizing:border-box}
@font-face {
  font-family: 'Rund display';
  font-style: normal;
  src: url(https://cdn.shopify.com/s/files/1/0643/7961/7520/files/rund-display-medium.woff2) format('woff2');
  font-display: swap;
}
@font-face {
  font-family: 'Rund display medium';
  font-style: medium;
  src: url(https://cdn.shopify.com/s/files/1/0643/7961/7520/files/rund-display-semibold.woff2) format('woff2');
  font-display: swap;
}
@font-face {
  font-family: 'Graphik';
  font-style: medium;
  src: url(https://cdn.shopify.com/s/files/1/0643/7961/7520/files/graphik-regular.woff2) format('woff2');
  font-display: swap;
}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto;background:#0b0b0b;color:#eaeaea}
button{font-family:Rund display !important;}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.card{background:#121212;border:1px solid #1e1e1e;border-radius:14px;overflow:hidden}
.btn{font-family: Rund display !important;display:inline-block;background:linear-gradient(135deg,#a78bfa,#8b5cf6);color:#fff;text-decoration:none;border-radius:10px;padding:10px 14px}
.btn-outline{display:inline-block;background:#1b1b1b;border:1px solid #2a2a2a;color:#ddd;text-decoration:none;border-radius:10px;padding:10px 14px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.thumb{width:100%;height:180px;object-fit:cover;display:block}
.card-body{padding:12px}
.row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.price{font-weight:800;margin:6px 0}
.meta{color:#a9a9a9}
.hero img{width:100%;height:420px;object-fit:cover;border-radius:12px}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gallery img{width:100%;height:220px;object-fit:cover;border-radius:10px}

/* Filters */
.f-label{display:block;font-size:12px;color:#9aa;margin:8px 0 4px}
.f-input{width:100%;background:#0f0f0f;border:1px solid #252525;color:#eee;padding:10px;border-radius:10px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* Pagination */
.pagi{display:flex;align-items:center;gap:10px;margin:16px 0}
.pagi-link{color:#ddd;text-decoration:none;border:1px solid #2a2a2a;padding:8px 12px;border-radius:8px;background:#1a1a1a}
.pagi-cur{color:#aaa}

/* Header/footer */
.site-header{border-bottom:1px solid #1f1f1f;position:sticky;top:0;background:#0b0b0bcc;backdrop-filter:saturate(1.2) blur(6px)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{color:#fff;text-decoration:none;font-weight:800;font-size:20px}
.nav a{color:#bcbcbc;text-decoration:none;margin-left:14px}
.nav a:hover{color:#fff}
.site-main{padding:24px 0}
.site-footer{border-top:1px solid #1f1f1f;margin-top:24px;padding:18px 0;color:#9aa}
.header {
    transition: none;
    transform: none;
}

.header-section {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 50;
  width: 100%; }

.header {
  display: block;
  position: relative;
  z-index: 30;
  width: 100%;
  padding: 0 15px;
  background: transparent; }
  .header:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    z-index: -1;
    background: var(--color-header-bg);
    opacity: 1;
    transition: opacity 0.25s cubic-bezier(0.104, 0.204, 0.492, 1); }
  @media only screen and (min-width: 768px) {
    .header {
      padding: 0 50px; } }
  .header:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    z-index: -1;
    opacity: 0;
    pointer-events: none; }
  .header.header--shadow-small:after {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.06); }
  .header.header--shadow-medium:after {
    box-shadow: 0 9px 38px rgba(0, 0, 0, 0.05), 0 5px 12px rgba(0, 0, 0, 0.1); }
  .header.header--shadow-large:after {
    box-shadow: 0 19px 38px rgba(0, 0, 0, 0.1), 0 5px 22px rgba(0, 0, 0, 0.15); }
  .header.is-sticky:after {
    opacity: 1; }
  .header.is-sticky .header--inner:before {
    opacity: 0; }
  .header.transparent--true {
    position: absolute; }
    .header.transparent--true:before {
      opacity: 0; }
    .header.transparent--true:hover:before, .header.transparent--true.is-sticky:before {
      opacity: 1; }
    .header.transparent--true:not(:hover):not(.is-sticky) .logolink.text-logo {
      color: var(--color-header-transparent-text, #fff); }
    .header.transparent--true:not(:hover):not(.is-sticky) .logolink .logoimg {
      opacity: 0; }
      .header.transparent--true:not(:hover):not(.is-sticky) .logolink .logoimg--light {
        opacity: 1; }
    .thb-full-menu > li > a, .thb-full-menu .sub-menu li a {text-decoration: none;}
    .header.transparent--true:not(:hover):not(.is-sticky) .thb-full-menu > li > a {
      color: var(--color-header-transparent-text, #fff); }
      .header.transparent--true:not(:hover):not(.is-sticky) .thb-full-menu > li > a:after {
        background: var(--color-header-transparent-text, #fff); }
      .header.transparent--true:not(:hover):not(.is-sticky) .thb-full-menu > li > a > svg path {
        stroke: var(--color-header-transparent-text, #fff); }
    .header.transparent--true:not(:hover):not(.is-sticky) .thb-localization-forms.inside-header-arrow svg path {
      stroke: var(--color-header-transparent-text, #fff); }
    .header.transparent--true:not(:hover):not(.is-sticky) .thb-localization-forms.inside-header .custom-select--button {
      color: var(--color-header-transparent-text, #fff); }
    .header.transparent--true:not(:hover):not(.is-sticky) .thb-secondary-area-item.thb-secondary-myaccount {
      color: var(--color-header-transparent-text, #fff); }
    .header.transparent--true:not(:hover):not(.is-sticky) .thb-secondary-area svg path {
      fill: var(--color-header-transparent-text, #fff); }
    .header.transparent--true:not(:hover):not(.is-sticky) .mobile-toggle span {
      background: var(--color-header-transparent-text, #fff); }
  .header--inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr auto 1fr;
    min-height: 60px; }
    @media only screen and (min-width: 1068px) {
      .header--inner {
        min-height: 80px; } }
    .header--inner:before {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background: var(--color-border, #dadce0); }
      .template-index .header--inner:before {
        content: none; }
  .header .logolink {
    position: relative; }
    .header .logolink .logoimg--light {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: contain;
      opacity: 0; }
  .header.style1 .logolink {
    text-align: center;
    justify-content: center; }
    @media only screen and (min-width: 1068px) {
      .header.style1 .logolink {
        text-align: left;
        margin-right: auto;
        justify-content: flex-start; } }
  @media only screen and (min-width: 1068px) {
    .header.style1 .header--inner {
      grid-template-columns: auto minmax(auto, 70%) auto; } }
  .header.style2 .logolink {
    text-align: center;
    margin-right: auto;
    margin-left: auto;
    flex-shrink: 0; }
    @media only screen and (min-width: 1068px) {
      .header.style2 .logolink {
        margin-left: 0; } }
  @media only screen and (min-width: 1068px) {
    .header.style2 .header--inner {
      grid-template-columns: auto 1fr; } }
  .header.style2 .full-menu {
    margin-left: 25px; }
  @media only screen and (min-width: 1068px) {
    .header.style2 .logolink {
      text-align: left; } }
  .header.style3 .logolink {
    text-align: center;
    justify-content: center; }
    .header.style3 .logolink .logoimg {
      object-position: center; }
  .header.style3 .full-menu {
    margin-left: 0; }
  .header.style3 .thb-full-menu {
    text-align: left; }
    .header.style3 .thb-full-menu > li:first-child {
      padding-left: 0; }
  .header.style4 .full-menu {
    width: 100%;
    grid-column: span 3;
    justify-content: center; }
  @media only screen and (min-width: 1068px) {
    .header.style4 .logolink {
      margin: 15px 0; } }
  @media only screen and (min-width: 1068px) {
    .header.style4 .header--inner {
      padding-top: 10px;
      padding-bottom: 10px; } }
  .header.style4 .thb-header-desktop-left .thb-secondary-area {
    justify-content: flex-start; }
  .header.style4 .thb-header-desktop-left .thb-secondary-area-item {
    padding-left: 0;
    padding-right: 10px; }
  @media only screen and (min-width: 1068px) {
    .header.style4 .thb-header-right .thb-quick-search {
      display: none; } }
  .header.style5 .full-menu {
    width: 100%;
    grid-column: span 2; }
    .header.style5 .full-menu .thb-full-menu {
      text-align: left; }
      .header.style5 .full-menu .thb-full-menu > li:first-child {
        padding-left: 0; }
  @media only screen and (min-width: 1068px) {
    .header.style5 .logolink {
      margin: 15px 0; } }
  @media only screen and (min-width: 1068px) {
    .header.style5 .header--inner {
      padding-top: 10px;
      padding-bottom: 10px;
      grid-template-columns: auto 1fr; } }
  .header .menu-logo-container {
    display: flex;
    align-items: center; }

.thb-secondary-area {
  margin-left: auto;
  line-height: 1;
  height: 100%;
  min-width: 70px;
  white-space: nowrap;
  justify-content: end;
  display: inline-flex; }
  @media only screen and (min-width: 768px) {
    .thb-secondary-area {
      min-width: 135px; } }
  .thb-secondary-area .no-js-hidden {
    align-items: center;
    display: none; }
    @media only screen and (min-width: 1068px) {
      .thb-secondary-area .no-js-hidden {
        display: inline-flex; } }
  .thb-secondary-area-item {
    padding: 0 7px;
    height: 100%;
    align-items: center;
    display: inline-flex; }
    @media only screen and (min-width: 1068px) {
      .thb-secondary-area-item {
        padding: 0 10px; } }
    .thb-secondary-area-item:last-child {
      padding-right: 0; }
    .thb-secondary-area-item.thb-secondary-myaccount {
      display: none;
      font-weight: 500;
      font-size: calc(var(--font-navigation-scale, 1) * 15px);
      color: var(--color-header-links, --color-accent); }
      .thb-secondary-area-item.thb-secondary-myaccount:hover {
        color: var(--color-header-links-hover, --color-accent2); }
      .navigation-uppercase-true .thb-secondary-area-item.thb-secondary-myaccount {
        text-transform: uppercase; }
      @media only screen and (min-width: 768px) {
        .thb-secondary-area-item.thb-secondary-myaccount {
          display: inline-flex; } }
      .thb-secondary-area-item.thb-secondary-myaccount span {
        position: relative;
        line-height: 1.7; }
        .thb-secondary-area-item.thb-secondary-myaccount span:after {
          content: "";
          display: block;
          position: absolute;
          top: 100%;
          left: 0;
          width: 100%;
          will-change: transform;
          height: 1px;
          transform: scale(0, 1);
          transform-origin: left center;
          background: var(--color-header-links-hover, --color-accent); }
      .thb-secondary-area-item.thb-secondary-myaccount:hover, .thb-secondary-area-item.thb-secondary-myaccount:focus {
        color: var(--color-header-links-hover, --color-accent2); }
        .thb-secondary-area-item.thb-secondary-myaccount:hover span:after, .thb-secondary-area-item.thb-secondary-myaccount:focus span:after {
          transform: scale(1, 1); }
    .thb-secondary-area-item.thb-secondary-cart .thb-item-count svg {
      fill: var(--color-header-bg, #fff);
      width: 8px; }
    .thb-secondary-area-item.thb-secondary-cart .thb-secondary-item-icon {
      transform: translateY(2px); }
    .thb-secondary-area-item svg {
      pointer-events: none; }
  .thb-secondary-area .thb-secondary-item-icon {
    position: relative; }
  .thb-secondary-area .thb-item-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 0.625rem;
    font-weight: 600;
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: var(--color-accent);
    color: var(--color-header-bg, #fff);
    position: absolute;
    top: -8px;
    right: -12px; }

.logolink {
  display: inline-flex;
  margin: 20px 0; }
  .logolink.text-logo {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1;
    word-break: break-all;
    color: var(--color-header-links, --color-accent); }
    .logolink.text-logo:hover, .logolink.text-logo:focus {
      color: var(--color-header-links-hover, --color-accent2); }
    @media only screen and (min-width: 768px) {
      .logolink.text-logo {
        font-size: 1.5rem; } }
  .logolink .logoimg {
    width: auto;
    height: var(--logo-height-mobile, 30px);
    object-fit: contain;
    object-position: left; }
    @media only screen and (min-width: 768px) {
      .logolink .logoimg {
        height: var(--logo-height, 30px); } }

.thb-header-mobile-left {
  display: inline-flex;
  margin-right: auto; }
  @media only screen and (min-width: 1068px) {
    .thb-header-mobile-left {
      display: none; } }

.thb-header-desktop-left {
  display: none;
  line-height: 1; }
  @media only screen and (min-width: 1068px) {
    .thb-header-desktop-left {
      display: inline-flex;
      margin-right: auto; } }

.mobile-toggle-wrapper {
  display: inline-flex; }
  .no-js .mobile-toggle-wrapper[open] .mobile-menu-drawer {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
  .no-js .mobile-toggle-wrapper[open] .mobile-toggle span:nth-child(1) {
    transform: rotateZ(45deg) translateY(-1px); }
  .no-js .mobile-toggle-wrapper[open] .mobile-toggle span:nth-child(2) {
    opacity: 0; }
  .no-js .mobile-toggle-wrapper[open] .mobile-toggle span:nth-child(3) {
    transform: rotateZ(-45deg); }
  .js .mobile-toggle-wrapper[open].active .mobile-menu-drawer {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
  .js .mobile-toggle-wrapper[open].active .mobile-toggle span:nth-child(1) {
    transform: rotateZ(45deg) translateY(-3px); }
  .js .mobile-toggle-wrapper[open].active .mobile-toggle span:nth-child(2) {
    opacity: 0; }
  .js .mobile-toggle-wrapper[open].active .mobile-toggle span:nth-child(3) {
    transform: rotateZ(-45deg) translateY(1px); }
  .mobile-toggle-wrapper summary::-webkit-details-marker {
    display: none; }

.mobile-toggle {
  display: inline-flex;
  position: relative;
  width: 48px;
  height: 48px;
  margin-left: -15px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .mobile-toggle span {
    width: 18px;
    height: 1.5px;
    background: var(--color-header-icons, --color-accent);
    position: absolute;
    border-radius: 1px;
    top: 18px;
    left: 15px; }
    .mobile-toggle span:nth-child(1) {
      transform-origin: top left; }
    .mobile-toggle span:nth-child(2) {
      top: 23px; }
    .mobile-toggle span:nth-child(3) {
      transform-origin: top left;
      top: 28px; }

.mobile-menu-drawer {
  display: none;
  opacity: 0;
  visibility: hidden; }

.mobile-menu-drawer {
  display: none; }

.full-menu {
  display: none;
  margin: 0 auto;
  max-width: 100%; }
  @media only screen and (min-width: 1068px) {
    .full-menu {
      display: inline-flex; } }

.thb-full-menu {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
  font-size: 0.9375rem; }
  .thb-full-menu a {
    color: var(--color-header-links, --color-accent);
    position: relative;
    font-size: calc(var(--font-navigation-scale, 1) * 15px); }
    .navigation-uppercase-true .thb-full-menu a {
      text-transform: uppercase; }
    .thb-full-menu a:after {
      content: "";
      display: block;
      position: absolute;
      top: 100%;
      left: 0;
      width: 100%;
      will-change: transform;
      height: 1px;
      transform: scale(0, 1);
      transform-origin: left center;
      background: var(--color-header-links-hover, --color-accent); }
    .thb-full-menu a:hover, .thb-full-menu a:focus {
      color: var(--color-header-links-hover, --color-accent2); }
      .thb-full-menu a:hover:after, .thb-full-menu a:focus:after {
        transform: scale(1, 1); }
      .thb-full-menu a:hover svg path, .thb-full-menu a:focus svg path {
        stroke: var(--color-header-links-hover, --color-accent2); }
  .thb-full-menu > li {
    display: inline-flex;
    padding: 0 15px;
    align-items: center; }
    .thb-full-menu > li > a {
      margin: 10px 0;
      font-weight: 500; }
  .thb-full-menu li.menu-item-has-children {
    position: relative;
    z-index: 1; }
    .thb-full-menu li.menu-item-has-children:hover {
      z-index: 2; }
      .thb-full-menu li.menu-item-has-children:hover > .sub-menu {
        visibility: visible;
        opacity: 1; }
        .thb-full-menu li.menu-item-has-children:hover > .sub-menu.mega-menu-container {
          clip-path: polygon(0 0, 100% 0, 100% calc(100% + 15px), 0 calc(100% + 15px)); }
      .thb-full-menu li.menu-item-has-children:hover:before {
        content: attr(data-item-title);
        position: absolute;
        height: 100%;
        top: 0;
        margin-left: -30px;
        padding-left: 30px;
        padding-right: 30px;
        opacity: 0; }
    .thb-full-menu li.menu-item-has-children.left-submenu .sub-menu {
      left: auto;
      right: calc(100% + 35px); }
    .thb-full-menu li.menu-item-has-children.menu-item-has-megamenu {
      position: static; }
      .thb-full-menu li.menu-item-has-children.menu-item-has-megamenu .sub-menu {
        left: 0;
        right: 0; }
      .thb-full-menu li.menu-item-has-children.menu-item-has-megamenu:before {
        height: calc(100% + 15px); }
      .thb-full-menu li.menu-item-has-children.menu-item-has-megamenu:after {
        content: "";
        display: block;
        position: absolute;
        top: 100%;
        width: 100%;
        left: 0;
        height: calc(100dvh - 100%);
        background: rgba(var(--color-overlay-rgb), 0.4);
        backdrop-filter: blur(7px);
        -webkit-backdrop-filter: blur(7px);
        opacity: 0;
        z-index: 1;
        pointer-events: none;
        transition: opacity 0.25s ease; }
      .thb-full-menu li.menu-item-has-children.menu-item-has-megamenu:hover:after {
        opacity: 1; }
    .thb-full-menu li.menu-item-has-children > a {
      padding-right: 15px;
      position: relative; }
      .thb-full-menu li.menu-item-has-children > a:focus + .sub-menu {
        display: block;
        opacity: 1;
        visibility: visible;
        transform: translateY(0px); }
      .thb-full-menu li.menu-item-has-children > a svg {
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -3px; }
    .thb-full-menu li.menu-item-has-children:focus-within {
      z-index: 2; }
      .thb-full-menu li.menu-item-has-children:focus-within > .sub-menu {
        display: block;
        opacity: 1;
        visibility: visible; }
        .thb-full-menu li.menu-item-has-children:focus-within > .sub-menu.mega-menu-container {
          display: flex;
          clip-path: polygon(0 0, 100% 0, 100% calc(100% + 15px), 0 calc(100% + 15px)); }
  .thb-full-menu .sub-menu {
    position: absolute;
    top: 100%;
    left: -11px;
    font-size: calc(var(--font-navigation-scale, 1) * 15px);
    line-height: 1;
    padding: 17px 26px;
    background: var(--color-drawer-bg, var(--color-header-bg, #fff));
    list-style: none;
    margin: 0;
    text-align: left;
    white-space: nowrap;
    line-height: 1.1;
    min-width: 190px;
    opacity: 0;
    z-index: 2;
    visibility: hidden; }
    .thb-full-menu .sub-menu a:not(.text-button):after {
      top: calc(100% - 3px); }
    .thb-full-menu .sub-menu ul {
      line-height: inherit; }
    .thb-full-menu .sub-menu li a {
      display: inline-block;
      padding-top: 7px;
      padding-bottom: 7px; }
    .thb-full-menu .sub-menu .sub-menu {
      top: -22px;
      left: calc(100% + 35px); }
    .thb-full-menu .sub-menu li.menu-item-has-children:hover:before {
      width: calc(100% + 65px); }
    .thb-full-menu .sub-menu.mega-menu-container {
      padding: 30px 0;
      display: flex;
      top: calc(100% - 10px);
      max-width: 100vw;
      border-top-left-radius: 0;
      border-top-right-radius: 0;
      background: var(--color-header-bg, #fff);
      clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%); }
  .thb-full-menu .mega-menu-columns {
    display: grid;
    grid-auto-columns: minmax(0, 1fr);
    grid-auto-flow: column;
    grid-column-gap: 20px;
    list-style: none;
    margin: 0;
    white-space: initial;
    flex: 1; }
    @media only screen and (min-width: 1200px) {
      .thb-full-menu .mega-menu-columns {
        grid-column-gap: 30px; } }
    .thb-full-menu .mega-menu-columns ul {
      list-style: none;
      margin: 0;
      padding: 0; }
    .thb-full-menu .mega-menu-columns__heading {
      font-weight: 500;
      padding: 0;
      margin-bottom: 10px; }

.mega-menu-promotion {
  width: 100%;
  position: relative;
  overflow: hidden; }
  .mega-menu-promotion img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    will-change: transform;
    transition: all 0.5s cubic-bezier(0.104, 0.204, 0.492, 1); }
  .mega-menu-promotion:hover img {
    transform: scale(1.07); }
  .mega-menu-promotion--image {
    overflow: hidden; }
  .mega-menu-promotion--content {
    margin-top: 20px;
    text-align: center; }
    .mega-menu-promotion--content h6 {
      font-size: 0.9375rem;
      margin-bottom: 5px; }
    .mega-menu-promotion--content p {
      font-size: 0.8125rem;
      font-weight: 400;
      margin: 0; }
    .mega-menu-promotion--content:last-child {
      margin-bottom: 0; }
  .mega-menu-promotion--link {
    position: absolute !important;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 !important; }
    .mega-menu-promotion--link:after {
      content: none !important; }

.menu-item-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.625rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 5px;
  margin-left: 10px;
  letter-spacing: 0.03em;
  transform: translateY(-5px);
  text-transform: uppercase;
  background: var(--menu-badge-bg);
  color: var(--menu-badge-text); }


.animations-true .animate-fade {
  opacity: 0; }

.animations-true .line-parent {
  overflow: hidden; }

.animations-true .line-child {
  overflow: hidden; }
        body {
            font-family: Rund display !important;
            background-color: #f5f3f0;
            color: #1a1a1a;
        }

        .container {
            display: flex;
            min-height: 100vh;
            gap: 24px;
            padding: 24px;
            align-items: flex-start;
            box-sizing: border-box;
        }

        /* Sidebar Styles */
        .sidebar {
            position: sticky;
            top: 24px;
            width: 280px;
            flex-shrink: 0;
            max-height: calc(100vh - 48px);
            background-color: #ffffff;
            border: none;
            border-radius: 20px;
            padding: 24px;
            overflow-y: auto;
            z-index: 20;
            box-shadow: 0 2px 12px rgba(0,0,0,.04);
        }

        .sidebar-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 20px;
        }

        .sidebar-title {
            font-size: 17px;
            font-weight: 700;
        }

        .clear-btn {
            background: none;
            border: none;
            color: #888;
            cursor: pointer;
            font-size: 13px;
            display: flex;
            align-items: center;
            gap: 4px;
            text-decoration: none;
        }

        .clear-btn:hover {
            color: #000;
        }

        .filter-section {
            margin-bottom: 20px;
        }

        .filter-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            width: 100%;
            background: none;
            border: none;
            padding: 0;
            cursor: pointer;
            font-size: 13px;
            font-weight: 600;
            color: #444;
            text-transform: uppercase;
            letter-spacing: .02em;
        }

        .filter-badge {
            background-color: #000;
            color: white;
            border-radius: 50%;
            width: 20px;
            height: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
        }

        .chevron {
            transition: transform 0.2s;
        }

        .chevron.open {
            transform: rotate(180deg);
        }

        .filter-options {
            margin-top: 8px;
            display: none;
        }

        .filter-options.open {
            display: block;
        }

        .filter-option {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 8px 0;
        }

        .filter-option-label {
            display: flex;
            align-items: center;
            gap: 8px;
            cursor: pointer;
        }

        .checkbox {
            width: 16px;
            height: 16px;
            cursor: pointer;
        }

        .filter-count {
            color: #888;
            font-size: 13px;
        }

        .tag-indicator {
            width: 8px;
            height: 8px;
            border-radius: 50%;
        }

        .tag-blue { background-color: #1565c0; }
        .tag-yellow { background-color: #e65100; }
        .tag-red { background-color: #c62828; }

        /* Main Content */
        .main-content {
            flex: 1;
            min-width: 0;
        }
        main {
        max-width: 100% !important;
        }

        .header {
            position: sticky;
            top: 24px;
            background-color: #ffffff;
            border: none;
            border-radius: 20px;
            padding: 0 28px;
            margin-bottom: 24px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 10;
            box-shadow: 0 2px 12px rgba(0,0,0,.04);
        }

        .header-title {
            font-size: 22px;
            font-weight: 700;
            margin: 0;
        }

        .header-actions {
            display: flex;
            gap: 16px;
        }

        .btn {
            padding: 10px 18px;
            border: none;
            border-radius: 10px;
            cursor: pointer;
            font-size: 14px;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 8px;
            transition: background .15s ease;
        }

        .btn-ghost {
            border: 1px solid #e2ddd5;
            background: #fff;
            color: #000;
        }
        .btn-ghost:hover { background: #f5f3f0; }

        .btn-primary {
            background: #000;
            color: white;
        }

        .btn-primary:hover {
            background: #262626;
        }

        /* Vehicle Grid */
        .vehicles-grid {
            padding: 0;
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(268px, 1fr));
            gap: 18px;
        }

        .vehicle-card {
            background: white;
            border: 1px solid #f0ece4;
            border-radius: 20px;
            overflow: hidden;
            transition: transform .2s ease, box-shadow .2s ease;
            display: block;
            color: inherit;
            cursor: pointer;
        }

        .vehicle-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 28px rgba(0,0,0,.1);
        }

        .badge {
            padding: 4px 10px;
            border-radius: 999px;
            font-size: 11px;
            font-weight: 700;
        }

        .badge-success {
            background-color: #e8f5e9;
            color: #2e7d32;
        }

        .badge-info {
            background-color: #e3f2fd;
            color: #1565c0;
        }

        .badge-secondary {
            background-color: #fff3e0;
            color: #e65100;
        }

        .badge-overlay {
            position: absolute;
            top: 10px;
            left: 10px;
            box-shadow: 0 2px 6px rgba(0,0,0,.15);
        }

        /* Watchlist heart — shared across all car cards (dealer + direct owner) */
        .wl-heart {
            position: absolute;
            top: 10px;
            right: 10px;
            width: 32px;
            height: 32px;
            border: 0;
            border-radius: 999px;
            background: rgba(255,255,255,.92);
            box-shadow: 0 2px 6px rgba(0,0,0,.15);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            padding: 0;
            z-index: 2;
            transition: transform .15s ease;
        }
        .wl-heart:hover { transform: scale(1.08); }
        .wl-heart svg { width: 17px; height: 17px; }
        .wl-heart path {
            fill: none;
            stroke: #555;
            stroke-width: 2;
            transition: fill .15s ease, stroke .15s ease;
        }
        .wl-heart.is-active path {
            fill: #e53935;
            stroke: #e53935;
        }
        .wl-heart.is-busy { opacity: .6; pointer-events: none; }

        .vehicle-image {
            position: relative;
            background-color: #f5f3f0;
            padding: 0;
            text-align: center;
            margin: 10px 10px 0;
            border-radius: 12px;
            overflow: hidden;
        }

        .vehicle-image img {
            max-width: 100%;
            width: 100%;
            height: 158px;
            display: block;
            object-fit: cover;
            border-radius: 12px;
        }

        .card-content {
            padding: 12px 14px 14px;
        }

        .vehicle-title {
            display: flex;
            align-items: center;
            gap: 5px;
            margin-bottom: 4px;
        }

        .vehicle-logo {
            width: 32px;
            height: 32px;
            object-fit: contain;
        }

        .vehicle-name {
            font-weight: 700;
            font-size: 15px;
            line-height: 1.3;
            margin: 0;
        }

        .car-card-data img {max-width: 26px;}

        .vin-section {
            background-color: #f5f3f0;
            padding: 8px;
            border-radius: 10px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 16px;
            font-size: 14px;
        }

        .vin-label {
            color: #888;
        }

        .vin-value {
            font-family: Rund display !important;
                padding-left: 10px;
        }

        .copy-btn {
            background: none;
            border: none;
            color: #000;
            cursor: pointer;
            padding: 4px;
        }

        .vehicle-specs-line {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 6px;
            font-size: 12px;
            color: #666;
            margin-bottom: 10px;
        }

        .vehicle-specs-line span {
            position: relative;
            padding-right: 12px;
        }

        .vehicle-specs-line span:not(:last-child)::after {
            content: "•";
            position: absolute;
            right: 0;
            color: #ccc;
        }

        .dealer-chip {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            background: #f5f3f0;
            color: #444;
            font-size: 12px;
            font-weight: 600;
            padding: 5px 10px;
            border-radius: 999px;
            text-decoration: none;
            margin-bottom: 12px;
        }

        .dealer-chip:hover {
            background: #eae5db;
        }

        .vehicle-cta-row {
            display: flex;
            gap: 8px;
        }

        .vehicle-cta-primary, .vehicle-cta-secondary {
            flex: 1;
            text-align: center;
            padding: 9px 10px;
            border-radius: 10px;
            font-size: 13px;
            font-weight: 700;
            text-decoration: none;
        }

        .vehicle-cta-primary {
            background: #000;
            color: #fff;
        }

        .vehicle-cta-primary:hover {
            background: #262626;
        }

        .vehicle-cta-secondary {
            background: #fff;
            color: #000;
            border: 1px solid #ddd6c9;
        }

        .vehicle-cta-secondary:hover {
            background: #f5f3f0;
        }

        .note {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 14px;
            color: #6b7280;
        }

        /* Icons */
        .icon {
            width: 16px;
            height: 16px;
        }

 /* Layout shell */
.car-detail.shell{
  display:grid;
  grid-template-columns: 94px minmax(0, 1fr) 40%;
  gap:24px;
  align-items:start;
  padding:24px 0 56px;
}

/* Thumbs column */
.thumbs-col{
  position:sticky;
  top:96px;
  height:calc(100vh - 140px);
  overflow:auto;
}
.thumbs{
    display: grid;
    grid-gap: 12px;
    z-index: 20;
    align-content: start;
    overflow-y: scroll;
    overflow-x: hidden;
    height: 100%;
    grid-auto-rows: max-content;
    scrollbar-width: none;
    justify-content: center;
    padding-top: 4px;
}
.thumb{
  display:block;
  width:84px;
  height:84px;
  border:1px solid #eaeaec;
  border-radius:12px;
  overflow:hidden;
  padding:0;
  background:#fff;
  cursor:pointer;
}
.thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.thumb.is-active{
  outline:2px solid #6c5ce7;
  outline-offset:2px;
}

/* Hero (main image) */
.hero-col{ min-width:0; }
.hero{
  position:relative;
  width:100%;
  background:#f5f6f8;
  border:1px solid #eaeaec;
  border-radius:20px;
  overflow:hidden;
  /* fixed aspect ratio for consistency */
  aspect-ratio: 16 / 10;
  display:flex;
}
.hero img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero .nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  border:0;
  width:40px;height:40px;border-radius:999px;
  background:#ffffffdd;
  box-shadow:0 4px 14px rgba(0,0,0,.08);
  cursor:pointer;
}
.hero .nav.prev{ left:12px; }
.hero .nav.next{ right:12px; }

/* Info column */
.info-col .title{
  font-size:30px;
  font-weight:800;
  margin:6px 0 6px;
}
.info-col .price{
  font-size:22px;
  font-weight:700;
  color:#111827;
  margin-bottom:14px;
}
.specs{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:14px;
  margin:20px 0 26px;
}
.spec{
  display:flex; align-items:center; gap:14px;
  padding:12px 14px; border:1px solid #eee; border-radius:12px; background:#fff;
}
.spec .ico{ font-size:22px; }
.spec .label{ font-size:13px; color:#6b7280; }
.spec .val{ font-size:15px; font-weight:600; color:#111827; }

/* Actions */
.actions{
  display:flex; gap:12px;
}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 16px; border-radius:12px; border:1px solid transparent;
  text-decoration:none; font-weight:700; transition:all .15s ease;
  flex:1 1 0;
}
.btn.primary{
  background:linear-gradient(135deg,#6c5ce7,#8a7cff); color:#fff;
}
.btn.primary:hover{ filter:brightness(1.05) saturate(1.05); }
.btn.outline{
  background:#fff; color:#111827; border-color:#e5e7eb;
}
.btn.outline:hover{ border-color:#c7cad1; }

/* Responsive */
@media (max-width: 1100px){
  .car-detail.shell{
    grid-template-columns: 80px 1fr;
  }
  .info-col{
    grid-column: 1 / -1;
  }
}
@media (max-width: 720px){
  .car-detail.shell{
    grid-template-columns: 1fr;
  }
  .thumbs-col{ order:2; height:auto; position:static; }
  .thumbs{ flex-direction:row; overflow:auto; }
  .thumb{ width:76px; height:76px; }
  .actions{ flex-direction:column; }
}
/* --- Modal base --- */
.modal[hidden] { display: none !important; }

.modal {
  position: fixed;
  inset: 0;
  z-index: 1000;              /* above headers */
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.55); /* dim backdrop */
  padding: 24px;
}

.modal-box {
  width: min(560px, 96vw);
  background: #fff;
  color: #111827;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  padding: 20px 20px 16px;
  position: relative;
  max-height: 90vh;
  overflow: auto;
}

.modal-close {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 10px;
  background: #f3f4f6;
  color: #111827;
  cursor: pointer;
}

.modal .lbl { display:block; font-weight:600; font-size:14px; margin:12px 0 6px; }
.modal .input { width:100%; border:1px solid #e5e7eb; border-radius:10px; padding:10px 12px; }
.modal .actions { display:flex; gap:10px; justify-content:flex-end; margin-top:16px; }
.modal .btn { border:0; border-radius:10px; padding:10px 14px; background:#111827; color:#fff; cursor:pointer; }
.modal .btn.btn-primary { background:#4f46e5; }
.modal .btn:hover { filter: brightness(1.05); }

/* Lock page scroll when a modal is open */
body.modal-open { overflow: hidden; }

.flash-wrap{position:fixed;right:16px;top:16px;z-index:9999;display:flex;flex-direction:column;gap:8px}
.flash{padding:10px 14px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);transition:.25s}
.flash-success{background:#e8fff2;color:#166534;border:1px solid #bbf7d0}
.flash-error{background:#fff1f2;color:#991b1b;border:1px solid #fecdd3}
.flash.out{opacity:0;transform:translateY(-6px)}

/* Auth modal */
.auth-box{max-width:560px}
.auth-title{font-size:20px;font-weight:800;margin:4px 0 16px}

/* Tabs */
.auth-tabs{
  display:flex; gap:8px; background:#111; padding:6px;
  border:1px solid #1f1f1f; border-radius:12px; margin-bottom:16px
}
.auth-tab{
  flex:1; padding:10px 14px; border:none; cursor:pointer;
  background:transparent; color:#cfcfcf; border-radius:8px;
  font-weight:600; transition:.15s
}
.auth-tab:hover{background:#191919}
.auth-tab.is-active{
  background:linear-gradient(135deg,#a78bfa,#8b5cf6);
  color:#fff; box-shadow:0 6px 18px rgba(139,92,246,.25)
}

/* Panels */
.auth-panel{display:block}
.auth-panel.is-hidden{display:none}

.lbl{display:block; font-size:12px; color:#9aa0a6; margin:4px 0 6px}

.w-full{width:100%}
.mt-2{margin-top:8px}

/* Links inside modal */
.link{background:none;border:none;color:#8b5cf6;cursor:pointer;padding:0}
.link:hover{text-decoration:underline}

.auth-hint{font-size:13px;color:#9aa0a6;margin-top:10px;text-align:center}

.nice-table { width:100%; border-collapse:collapse; margin-top:20px; }
.nice-table th, .table td { border:1px solid #ddd; padding:8px; text-align:left; }
.nice-table th { background:#f5f5f5; }
.btn-accept { background:#16a34a; color:white; padding:5px 10px; border:none; border-radius:5px; cursor:pointer; }
.btn-reject { background:#ef4444; color:white; padding:5px 10px; border:none; border-radius:5px; cursor:pointer; }


/* --- /cars/ page: filters + car cards (redesign) --- */
.cars-container {
    /* full-bleed: escape the base template's centered max-width wrapper, only on this page */
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    /* explicit bg: the shared base template sets an inline background on <body> that
       would otherwise win over this stylesheet's body{} rule */
    background-color: #f5f3f0;
}

.header-subtitle { color: #888; font-size: 13px; margin-top: 4px; }

.filter-select, .filter-range-input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #e2ddd5;
    border-radius: 10px;
    font-size: 13px;
    color: #1a1a1a;
    background: #f5f3f0;
    margin-top: 6px;
    box-sizing: border-box;
}
.filter-select:focus, .filter-range-input:focus { outline: none; border-color: #000; }
.filter-range-row { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
.filter-range-row .filter-range-input { margin-top: 0; }
.filter-range-sep { color: #aaa; font-size: 13px; }
.filter-range-input--full { margin-top: 6px; }

.filter-apply-btn {
    width: 100%;
    justify-content: center;
    margin-top: 8px;
    background: #000;
    color: #fff;
}
.filter-apply-btn:hover { background: #262626; }

.sort-select { min-width: 190px; margin-top: 0; background: #fff; }

.vehicle-price-block {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
    margin: 2px 0 10px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #eee5d8;
}

.vehicle-price {
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -0.3px;
    background: linear-gradient(120deg, #c0392b, #e67e22);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.vehicle-emi {
    font-size: 11.5px;
    font-weight: 600;
    color: #8a8378;
    background: #f5f3f0;
    padding: 3px 8px;
    border-radius: 999px;
}

.vehicle-emi sup { font-size: 9px; }

.empty-state {
    grid-column: 1 / -1;
    text-align: center;
    padding: 64px 24px;
    color: #888;
    background: #fff;
    border-radius: 20px;
}
.empty-state-icon { font-size: 40px; margin-bottom: 12px; }
.empty-state p { margin-bottom: 16px; font-size: 15px; }
