    @font-face {
        font-family: "Typold Bold";
        src: url("https://www.meza.ru/assets/fonts/b278357b118484919beefdd102f93772.eot");
        src: url("https://www.meza.ru/assets/fonts/b278357b118484919beefdd102f93772.eot?#iefix")format("embedded-opentype"),
        url("https://www.meza.ru/assets/fonts/b278357b118484919beefdd102f93772.woff2")format("woff2"),
        url("https://www.meza.ru/assets/fonts/b278357b118484919beefdd102f93772.woff")format("woff"),
        url("https://www.meza.ru/assets/fonts/b278357b118484919beefdd102f93772.ttf")format("truetype"),
        url("https://www.meza.ru/assets/fonts/b278357b118484919beefdd102f93772.svg#Typold Bold")format("svg");
        font-weight: bold;
    }
   :root {
       --ink: #7e5e9f;
       --paper: #faf8f4;
       --paper2: white;
       --accent: #FE982F;
       --accent2: #4a6741;
       --sale: #b94040;
       --muted: #7a7468;
       --border: rgba(28, 26, 23, .11);
       --nav-h: 70px;
       --font-color: #1b161f;
       --r: 10px;
   }

   *,
   *::before,
   *::after {
       box-sizing: border-box;
   }

   body {
       font-family: 'Inter', sans-serif;
       background: var(--paper);
       color: var(--font-color);
       margin: 0;
   }

   /* TOPBAR */
   .topbar {
       background: var(--ink);
       color: rgba(255, 255, 255, .9);
       font-size: .7rem;
       letter-spacing: .07em;
       text-transform: uppercase;
       padding: 7px 0;
   }

   .topbar a {
       color: rgba(255, 255, 255, .6);
       text-decoration: none;
       transition: color .2s;
   }

   .topbar a:hover {
       color: #fff;
   }

   .topbar .sep {
       opacity: .25;
       margin: 0 10px;
   }

   .topbar-badge {
       display: inline-block;
       background: var(--accent);
       color: #fff;
       font-size: .62rem;
       font-weight: 600;
       padding: 2px 7px;
       border-radius: 3px;
       letter-spacing: .06em;
       margin-right: 6px;
       vertical-align: middle;
   }

   /* MAIN NAV */
   .main-nav {
       position: sticky;
       top: 0;
       z-index: 1030;
       background: var(--paper);
       border-bottom: 1.5px solid var(--border);
       transition: box-shadow .25s ease;
   }

   .main-nav.scrolled {
       box-shadow: 0 4px 28px rgba(0, 0, 0, .08);
   }

   .nav-inner {
       display: flex;
       align-items: center;
       height: var(--nav-h);
       gap: 0;
   }

   /* Logo */
   .brand {
       display: flex;
       align-items: center;
       gap: 10px;
       text-decoration: none;
       margin-right: 28px;
       flex-shrink: 0;
   }

   .brand-mark {
       width: 42px;
       height: 42px;
       border-radius: 50%;
       background: var(--ink);
       display: flex;
       align-items: center;
       justify-content: center;
   }

   .brand-mark svg {
       width: 22px;
       height: 22px;
       fill: var(--paper);
   }

   .brand-text {
       font-family: 'Typold Bold', serif;
       font-size: 2rem;
       font-weight: bold;
       color: var(--ink);
       letter-spacing: -.01em;
       line-height: 1;
   }

   .brand-text span {
       display: block;
       font-family: 'Inter', sans-serif;
       font-size: .57rem;
       font-weight: 400;
       letter-spacing: .12em;
       text-transform: uppercase;
       color: var(--muted);
       margin-top: 3px;
   }

   /* Nav links */
   .nav-links {
       display: flex;
       align-items: center;
       gap: 1px;
       list-style: none;
       margin: 0;
       padding: 0;
       flex: 1;
   }

   .nav-links>li>a,
   .nav-links>li>button {
       font-family: 'Inter', sans-serif;
       font-size: .8rem;
       font-weight: 500;
       letter-spacing: .02em;
       color: var(--muted);
       text-decoration: none;
       background: none;
       border: none;
       padding: 8px 12px;
       border-radius: 6px;
       cursor: pointer;
       display: flex;
       align-items: center;
       gap: 5px;
       transition: color .2s, background .2s;
       white-space: nowrap;
   }

   .nav-links>li>a:hover,
   .nav-links>li>button:hover,
   .nav-links>li>a.active,
   .nav-links>li>button[aria-expanded="true"] {
       color: var(--ink);
       background: rgba(28, 26, 23, .05);
   }

   .nav-links>li>button .caret {
       font-size: .65rem;
       transition: transform .25s;
   }

   .nav-links>li>button[aria-expanded="true"] .caret {
       transform: rotate(180deg);
   }

   /* Simple dropdown */
   .nav-links .dropdown-menu {
       border: 1.5px solid var(--border);
       border-radius: 11px;
       padding: 7px;
       min-width: 190px;
       background: var(--paper);
       box-shadow: 0 14px 42px rgba(0, 0, 0, .11);
       margin-top: 6px !important;
       animation: dropIn .18s ease;
   }

   @keyframes dropIn {
       from {
           opacity: 0;
           transform: translateY(-5px);
       }

       to {
           opacity: 1;
           transform: translateY(0);
       }
   }

   .nav-links .dropdown-item {
       font-size: .81rem;
       color: var(--muted);
       padding: 8px 12px;
       border-radius: 7px;
       transition: background .15s, color .15s;
   }

   .nav-links .dropdown-item:hover {
       background: rgba(28, 26, 23, .06);
       color: var(--ink);
   }

   .dropdown-divider {
       border-color: var(--border);
       margin: 4px 0;
   }

   /* MEGA-MENU */
   .mega-wrap {
       position: static;
   }

   .mega-menu {
       position: absolute;
       left: 50%;
       transform: translateX(-50%);
       width: min(900px, 96vw);
       border: 1.5px solid var(--border);
       border-radius: 14px;
       padding: 0;
       background: var(--paper);
       box-shadow: 0 20px 60px rgba(0, 0, 0, .12);
       margin-top: 6px !important;
       animation: dropIn .18s ease;
       overflow: hidden;
   }

   .mega-body {
       display: grid;
       grid-template-columns: 1fr 1px 1fr 1px 1fr 1px 210px;
   }

   .mm-col {
       padding: 20px 18px 22px;
   }

   .mm-sep {
       background: var(--border);
   }

   .mm-head {
       font-size: .62rem;
       font-weight: 600;
       letter-spacing: .12em;
       text-transform: uppercase;
       color: var(--muted);
       margin-bottom: 9px;
       padding-bottom: 7px;
       border-bottom: 1px solid var(--border);
   }

   .mm-links {
       list-style: none;
       margin: 0;
       padding: 0;
   }

   .mm-links li a {
       display: block;
       font-size: .81rem;
       color: var(--muted);
       text-decoration: none;
       padding: 5px 8px;
       border-radius: 6px;
       transition: background .15s, color .15s;
   }

   .mm-links li a:hover {
       background: rgba(28, 26, 23, .06);
       color: var(--ink);
   }

   .mm-links li a.sale {
       color: var(--sale);
       font-weight: 500;
   }

   .mm-links li a.sale:hover {
       background: rgba(185, 64, 64, .07);
   }

   /* Promo card */
   .mm-promo {
       background: var(--ink);
       padding: 20px 18px 22px;
       display: flex;
       flex-direction: column;
       justify-content: space-between;
       min-height: 180px;
   }

   .mm-promo-badge {
       display: inline-block;
       background: var(--accent);
       color: #fff;
       font-size: .6rem;
       font-weight: 600;
       letter-spacing: .08em;
       text-transform: uppercase;
       padding: 3px 8px;
       border-radius: 4px;
       margin-bottom: 10px;
   }

   .mm-promo-title {
       font-family: 'Playfair Display', serif;
       font-size: .95rem;
       color: rgba(255, 255, 255, .9);
       line-height: 1.4;
       margin-bottom: 5px;
   }

   .mm-promo-sub {
       font-size: .73rem;
       color: rgba(255, 255, 255, .42);
       line-height: 1.5;
   }

   .mm-promo-link {
       display: inline-flex;
       align-items: center;
       gap: 5px;
       font-size: .77rem;
       font-weight: 500;
       color: rgba(255, 255, 255, .7);
       text-decoration: none;
       border-bottom: 1px solid rgba(255, 255, 255, .18);
       padding-bottom: 2px;
       margin-top: 16px;
       transition: color .2s, border-color .2s;
   }

   .mm-promo-link:hover {
       color: #fff;
       border-color: rgba(255, 255, 255, .55);
   }

   /* Right actions */
   .nav-actions {
       display: flex;
       align-items: center;
       gap: 5px;
       margin-left: auto;
       flex-shrink: 0;
   }

   .btn-icon {
       width: 38px;
       height: 38px;
       border-radius: 8px;
       border: 1.5px solid var(--border);
       background: transparent;
       color: var(--muted);
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 1rem;
       cursor: pointer;
       transition: background .2s, color .2s;
       text-decoration: none;
       position: relative;
   }

   .btn-icon:hover {
       background: rgba(28, 26, 23, .06);
       color: var(--ink);
   }

   .basket-count {
       position: absolute;
       top: -5px;
       right: -5px;
       min-width: 17px;
       height: 17px;
       background: var(--accent);
       color: #fff;
       font-size: .6rem;
       font-weight: 600;
       border-radius: 999px;
       display: flex;
       align-items: center;
       justify-content: center;
       border: 2px solid var(--paper);
       padding: 0 3px;
   }

   .btn-contact {
       font-size: .77rem;
       font-weight: 500;
       padding: 8px 14px;
       border-radius: 7px;
       border: 1.5px solid var(--border);
       background: transparent;
       color: var(--ink);
       cursor: pointer;
       text-decoration: none;
       display: flex;
       align-items: center;
       gap: 6px;
       transition: background .2s;
       white-space: nowrap;
   }

   .btn-contact:hover {
       background: rgba(28, 26, 23, .06);
   }

   .btn-cta {
       font-size: .77rem;
       font-weight: 500;
       padding: 8px 15px;
       border-radius: 7px;
       background: var(--accent);
       color: #fff;
       border: none;
       cursor: pointer;
       text-decoration: none;
       display: flex;
       align-items: center;
       gap: 6px;
       transition: opacity .2s;
       white-space: nowrap;
   }

   .btn-cta:hover {
       opacity: .84;
       color: #fff;
   }

   /* Search panel */
   .search-panel {
       display: none;
       position: absolute;
       top: var(--nav-h);
       left: 0;
       right: 0;
       background: var(--paper);
       border-bottom: 1.5px solid var(--border);
       padding: 14px 0;
       z-index: 1029;
       box-shadow: 0 10px 30px rgba(0, 0, 0, .07);
       animation: dropIn .18s ease;
   }

   .search-panel.show {
       display: block;
   }

   .search-form {
       display: flex;
       align-items: center;
       border: 1.5px solid var(--border);
       border-radius: 9px;
       overflow: hidden;
       background: #fff;
   }

   .search-form input {
       flex: 1;
       border: none;
       outline: none;
       padding: 11px 16px;
       font-size: .88rem;
       background: transparent;
       color: var(--ink);
   }

   .search-form button {
       background: var(--accent);
       border: none;
       color: #fff;
       padding: 11px 18px;
       cursor: pointer;
       font-size: .9rem;
   }

   /* Burger */
   .burger {
       display: none;
       flex-direction: column;
       gap: 5px;
       width: 36px;
       height: 36px;
       justify-content: center;
       align-items: center;
       background: none;
       border: none;
       cursor: pointer;
       padding: 4px;
       border-radius: 8px;
       transition: background .2s;
   }

   .burger:hover {
       background: rgba(28, 26, 23, .06);
   }

   .burger span {
       display: block;
       width: 22px;
       height: 2px;
       background: var(--ink);
       border-radius: 2px;
       transition: transform .3s, opacity .3s, width .3s;
   }

   .burger.open span:nth-child(1) {
       transform: translateY(7px) rotate(45deg);
   }

   .burger.open span:nth-child(2) {
       opacity: 0;
       width: 0;
   }

   .burger.open span:nth-child(3) {
       transform: translateY(-7px) rotate(-45deg);
   }

   /* Mobile drawer */
   .mobile-drawer {
       display: none;
       position: fixed;
       inset: calc(var(--nav-h) + 1px) 0 0 0;
       background: var(--paper);
       overflow-y: auto;
       padding: 12px 20px 48px;
       z-index: 1028;
       animation: dropIn .22s ease;
   }

   .mobile-drawer.show {
       display: block;
   }

   .mob-link {
       display: flex;
       align-items: center;
       gap: 10px;
       font-size: .87rem;
       font-weight: 500;
       color: var(--ink);
       text-decoration: none;
       padding: 12px 4px;
       border-bottom: 1px solid var(--border);
   }

   .mob-link i {
       color: var(--muted);
       font-size: .92rem;
       width: 18px;
       text-align: center;
   }

   .mob-sub {
       padding-left: 14px;
   }

   .mob-sub .mob-link {
       font-size: .82rem;
       font-weight: 400;
       color: var(--muted);
   }

   .mob-section-label {
       padding: 10px 4px 2px;
       font-size: .64rem;
       font-weight: 600;
       letter-spacing: .1em;
       text-transform: uppercase;
       color: var(--muted);
   }

   .mob-info {
       margin-top: 20px;
       padding: 16px;
       background: rgba(28, 26, 23, .04);
       border-radius: 10px;
       font-size: .82rem;
       color: var(--muted);
   }

   .mob-info a {
       color: var(--ink);
       text-decoration: none;
       display: block;
       margin-bottom: 7px;
       font-weight: 500;
   }

   .mob-info a:hover {
       color: var(--accent);
   }

   .mob-actions {
       display: flex;
       gap: 10px;
       margin-top: 16px;
   }

   .mob-actions a {
       flex: 1;
       text-align: center;
       padding: 11px;
       border-radius: 9px;
       font-size: .85rem;
       font-weight: 500;
       text-decoration: none;
   }

   .ma-outline {
       border: 1.5px solid var(--border);
       color: var(--ink);
   }

   .ma-fill {
       background: var(--accent);
       color: #fff;
   }

   @media (max-width: 1180px) {

       .nav-links>li>a,
       .nav-links>li>button {
           padding: 8px 9px;
           font-size: .76rem;
       }

       .brand {
           margin-right: 18px;
       }
   }

   @media (max-width: 991px) {

       .nav-links,
       .btn-contact,
       .btn-cta {
           display: none !important;
       }

       .burger {
           display: flex;
       }
   }

   /* Demo hero */
   .hero {
       min-height: calc(100vh - var(--nav-h) - 36px);
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       text-align: center;
       padding: 60px 20px;
       gap: 16px;
   }

   .hero-tag {
       display: inline-block;
       background: rgba(124, 92, 58, .1);
       color: var(--accent);
       font-size: .68rem;
       font-weight: 600;
       letter-spacing: .1em;
       text-transform: uppercase;
       padding: 5px 14px;
       border-radius: 999px;
   }

   .hero h1 {
       font-family: 'Playfair Display', serif;
       font-size: clamp(2rem, 5vw, 3.8rem);
       line-height: 1.12;
       letter-spacing: -.02em;
       max-width: 620px;
       margin: 0;
   }

   .hero h1 em {
       color: var(--accent);
       font-style: italic;
   }

   .hero p {
       font-size: .94rem;
       color: var(--muted);
       max-width: 440px;
       margin: 0;
       line-height: 1.65;
   }

   .hero-actions {
       display: flex;
       gap: 12px;
       flex-wrap: wrap;
       justify-content: center;
       margin-top: 6px;
   }

   .hero-actions .h-cta {
       background: var(--accent);
       color: #fff;
       padding: 12px 28px;
       border-radius: 8px;
       font-size: .88rem;
       font-weight: 500;
       text-decoration: none;
       transition: opacity .2s;
   }

   .hero-actions .h-cta:hover {
       opacity: .82;
   }

   .hero-actions .h-sec {
       border: 1.5px solid var(--border);
       color: var(--ink);
       padding: 12px 28px;
       border-radius: 8px;
       font-size: .88rem;
       font-weight: 500;
       text-decoration: none;
       transition: background .2s;
   }
     /* ── Section header ── */
    .section-header {
      text-align: center;
      margin-bottom: 48px;
    }
    .section-tag {
      display: inline-block;
      font-size: .68rem;
      font-weight: 500;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--accent);
      background: rgba(124,92,58,.09);
      padding: 5px 16px;
      border-radius: 999px;
      margin-bottom: 14px;
    }
    .section-title {
      font-family: 'Playfair Display', serif;
      font-size: clamp(1.8rem, 3.5vw, 2.6rem);
      font-weight: 500;
      line-height: 1.15;
      letter-spacing: -.02em;
      color: var(--ink);
    }
    .section-title em {
      font-style: italic;
      color: var(--accent);
    }
    .section-sub {
      font-size: .88rem;
      color: var(--muted);
      margin-top: 10px;
      font-weight: 300;
      letter-spacing: .02em;
    }
   .new{
       
   }
   .new_title{
      display: block;
      height: 50px;
   }
   
   .cards-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
      gap: 20px;
      max-width: 1200px;
      margin: 0 auto;
    }

    /* ── Card ── */
    .card {
      background: #fff;
      border: 1.5px solid var(--border);
      border-radius: var(--r);
      overflow: hidden;
      cursor: pointer;
      transition: transform .3s ease, box-shadow .3s ease, border-color .3s;
      display: flex;
      flex-direction: column;
      
    }
    .card:hover {
      transform: translateY(-5px);
      box-shadow: 0 16px 48px rgba(28,26,23,.11);
      border-color: rgba(124,92,58,.22);
    }

    /* Image area */
    .card-img {
      position: relative;
      aspect-ratio: 4/3;
      background: var(--paper2);
      overflow: hidden;
      flex-shrink: 0;
    }
    /* Placeholder texture */
    .card-img::before {
      content: '';
      position: absolute;
      inset: 0;
      background:
        radial-gradient(ellipse at 30% 40%, rgba(124,92,58,.07) 0%, transparent 65%),
        radial-gradient(ellipse at 75% 70%, rgba(28,26,23,.04) 0%, transparent 55%);
    }
    .card-img-inner {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      z-index: 1;
      transition: transform .4s ease;
    }
    .card:hover .card-img-inner { transform: scale(1.04); }

    /* SVG product illustration */
    .card-img-inner svg {
      width: 54%;
      height: auto;
      opacity: .85;
      filter: drop-shadow(0 6px 14px rgba(28,26,23,.13));
    }

    /* Badges */
    .card-badges {
      position: absolute;
      top: 12px; left: 12px;
      display: flex; gap: 6px; flex-wrap: wrap;
      z-index: 2;
    }
    .badge {
      font-size: .6rem;
      font-weight: 600;
      letter-spacing: .08em;
      text-transform: uppercase;
      padding: 3px 9px;
      border-radius: 4px;
      line-height: 1.4;
    }
    .badge-new    { background: var(--accent); color: #fff; }
    .badge-sale   { background: #b94040; color: #fff; }
    .badge-hit    { background: var(--ink); color: #fff; }
    .badge-eco    { background: rgba(74,103,65,.13); color: #3d6135; }
    .badge-real-leather {background: url(./images/natkoj.png) no-repeat 100% / 100%; width: 70px;height: 70px;color: transparent;z-index:1000}
    /* Wishlist btn */
    .card-wish {
      position: absolute;
      top: 10px; right: 10px;
      width: 34px; height: 34px;
      border-radius: 50%;
      background: rgba(255,255,255,.85);
      border: 1px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      font-size: .9rem;
      color: var(--muted);
      cursor: pointer;
      z-index: 2;
      transition: background .2s, color .2s, transform .2s;
      backdrop-filter: blur(4px);
    }
    .card-wish:hover { color: #b94040; transform: scale(1.1); }
    .card-wish.active { color: #b94040; background: rgba(185,64,64,.08); }

    /* Body */
    .card-body {
      padding: 18px 18px 20px;
      display: flex;
      flex-direction: column;
      flex: 1;
      /*background:#f3efe8;*/
    }

    .card-category a{
      font-family:'Jost', sans-serif;
      font-size: .63rem;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 6px;
      text-decoration:none;
    }

    .card-title a{
      font-size: .85rem;
      font-weight: 500;
      line-height: 1.3;
      color: var(--ink);
      margin-bottom: 6px;
      letter-spacing: -.01em;
      text-decoration: none;
    }
    

    .card-desc {
      font-size: .68rem;
      color: var(--muted);
      line-height: 1.55;
      font-weight: 300;
      margin-bottom: 14px;
      flex: 1;
    }

    /* Colors */
    .card-colors {
      display: flex;
      gap: 5px;
      margin-bottom: 14px;
    }
    .color-dot {
      width: 14px; height: 14px;
      border-radius: 50%;
      border: 1.5px solid rgba(28,26,23,.12);
      cursor: pointer;
      transition: transform .2s, border-color .2s;
    }
    .color-dot:hover, .color-dot.active { transform: scale(1.25); border-color: var(--accent); }

    /* Footer */
    .card-footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      padding-top: 14px;
      border-top: 1px solid var(--border);
    }

    .card-price {
      display: flex;
      flex-direction: column;
      gap: 1px;
    }
    .price-main {
      font-family: 'Playfair Display', serif;
      font-size: 1rem;
      font-weight: 500;
      color: var(--ink);
      letter-spacing: -.01em;
    }
    .price-old {
      font-size: .72rem;
      color: var(--muted);
      text-decoration: line-through;
    }
    .price-note {
      font-size: .65rem;
      color: var(--muted);
      font-weight: 300;
      letter-spacing: .04em;
    }

    .btn-cart {
      font-family: 'Jost', sans-serif;
      font-size: .75rem;
      font-weight: 500;
      letter-spacing: .04em;
      padding: 9px 18px;
      border-radius: 8px;
      background: var(--accent);
      color: #fff;
      border: none;
      cursor: pointer;
      transition: opacity .2s, transform .15s;
      white-space: nowrap;
    }
    .btn-cart:hover { opacity: .85; transform: translateY(-1px); }
    .btn-cart:active { transform: translateY(0); }

    /* ── Wide card (featured) ── */
    .card.wide {
      grid-column: span 2;
      flex-direction: row;
    }
    .card.wide .card-img {
      width: 46%;
      aspect-ratio: unset;
      flex-shrink: 0;
    }
    .card.wide .card-body { padding: 28px 26px; }
    .card.wide .card-title { font-size: 1.25rem; }
    .card.wide .card-desc  { font-size: .82rem; }

    @media (max-width: 700px) {
      .card.wide { grid-column: span 1; flex-direction: column; }
      .card.wide .card-img { width: 100%; aspect-ratio: 4/3; }
    }
    @media (max-width: 580px) {
      .cards-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
      .card-body { padding: 14px; }
      .card-title { font-size: .92rem; }
      .btn-cart { padding: 8px 12px; font-size: .7rem; }
    }

    /* Load-in animation */
    .card { animation: fadeUp .5s ease both; }
    .card:nth-child(1) { animation-delay: .05s; }
    .card:nth-child(2) { animation-delay: .10s; }
    .card:nth-child(3) { animation-delay: .15s; }
    .card:nth-child(4) { animation-delay: .20s; }
    .card:nth-child(5) { animation-delay: .25s; }
    .card:nth-child(6) { animation-delay: .30s; }
    .card:nth-child(7) { animation-delay: .35s; }
    @keyframes fadeUp {
      from { opacity: 0; transform: translateY(18px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    /* ── PRODUCT LAYOUT ── */
    .product-wrap {
      max-width: 1280px; margin: 0 auto; padding: 0 40px 80px;
    }

    .product-grid {
      display: grid;
      grid-template-columns: 1fr 480px;
      gap: 60px;
      align-items: start;
    }

    /* ── GALLERY ── */
    .gallery { position: sticky; top: 90px; }

    .gallery-main {
      aspect-ratio: 1 / 1;
      background: var(--paper2);
      border-radius: 16px;
      border: 1.5px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      position: relative; overflow: hidden;
      margin-bottom: 12px;
    }
    .gallery-main::before {
      content: '';
      position: absolute; inset: 0;
      background:
        radial-gradient(ellipse at 25% 30%, rgba(124,92,58,.08) 0%, transparent 60%),
        radial-gradient(ellipse at 80% 75%, rgba(28,26,23,.04) 0%, transparent 50%);
      pointer-events: none;
    }
    .gallery-main svg {
      width: 58%; height: auto;
      filter: drop-shadow(0 12px 32px rgba(28,26,23,.16));
      transition: transform .5s ease;
    }
    .gallery-main:hover svg { transform: scale(1.04) rotate(-1deg); }

    .gallery-badge-wrap {
      position: absolute; top: 16px; left: 16px;
      display: flex; flex-direction: column; gap: 6px;
    }
    .g-badge {
      font-size: .6rem; font-weight: 600; letter-spacing: .08em;
      text-transform: uppercase; padding: 4px 10px; border-radius: 4px; line-height: 1.4;
    }
    .g-badge-hit  { background: var(--ink); color: #fff; }
    .g-badge-eco  { background: rgba(74,103,65,.13); color: #3d6135; }

    .gallery-wish {
      position: absolute; top: 14px; right: 14px;
      width: 38px; height: 38px; border-radius: 50%;
      background: rgba(255,255,255,.9); border: 1.5px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      font-size: 1rem; cursor: pointer;
      transition: color .2s, transform .2s, background .2s;
      backdrop-filter: blur(6px);
    }
    .gallery-wish:hover { color: #b94040; transform: scale(1.1); }
    .gallery-wish.on { color: #b94040; }

    .gallery-thumbs {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px;
    }
    .thumb {
      aspect-ratio: 1/1; background: var(--paper2);
      border-radius: 9px; border: 1.5px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      cursor: pointer; overflow: hidden; transition: border-color .2s;
    }
    .thumb.active { border-color: var(--accent); }
    .thumb:hover  { border-color: rgba(124,92,58,.4); }
    .thumb svg { width: 55%; height: auto; opacity: .75; }

    /* ── PRODUCT INFO ── */
    .pinfo { padding-top: 4px; }

    .pinfo-category {
      font-size: .64rem; font-weight: 600; letter-spacing: .14em;
      text-transform: uppercase; color: var(--accent); margin-bottom: 10px;
    }

    .pinfo-title {
      font-family: 'Playfair Display', serif;
      font-size: 2rem; font-weight: 500; line-height: 1.15;
      letter-spacing: -.02em; margin-bottom: 6px;
    }

    .pinfo-sub {
      font-family: 'Playfair Display', serif;
      font-size: 1rem; font-style: italic; color: var(--muted);
      margin-bottom: 18px;
    }

    /* Rating */
    .pinfo-rating {
      display: flex; align-items: center; gap: 8px; margin-bottom: 20px;
    }
    .stars { color: var(--accent); font-size: .9rem; letter-spacing: 1px; }
    .rating-num { font-size: .78rem; font-weight: 500; color: var(--ink); }
    .rating-count { font-size: .73rem; color: var(--muted); }
    .rating-sep { width: 1px; height: 14px; background: var(--border); }
    .reviews-link {
      font-size: .73rem; color: var(--muted); text-decoration: none;
      border-bottom: 1px dashed rgba(154,145,136,.4); transition: color .2s;
    }
    .reviews-link:hover { color: var(--ink); }

    /* Price block */
    .price-block {
      background: var(--paper2);
      border: 1.5px solid var(--border);
      border-radius: var(--r);
      padding: 20px 22px;
      margin-bottom: 24px;
    }
    .price-row {
      display: flex; align-items: baseline; gap: 10px; margin-bottom: 4px;
    }
    .price-block .price-main {
      font-family: 'Playfair Display', serif;
      font-size: 2rem; font-weight: 500; color: var(--ink);
    }
    .price-old {
      font-size: .9rem; color: var(--muted); text-decoration: line-through;
    }
    .price-save {
      font-size: .72rem; font-weight: 600; background: rgba(185,64,64,.1);
      color: var(--sale); padding: 2px 8px; border-radius: 4px;
    }
    .price-note {
      font-size: .75rem; color: var(--muted); font-weight: 300;
    }
    .price-tiers {
      margin-top: 12px; display: flex; gap: 8px; flex-wrap: wrap;
    }
    .price-tier {
      font-size: .7rem; padding: 4px 10px; border-radius: 5px;
      border: 1px solid var(--border); color: var(--muted);
      transition: border-color .2s, color .2s;
    }
    .price-tier.active, .price-tier:hover {
      border-color: var(--accent); color: var(--accent);
    }
    .price-tier span { font-weight: 500; }

    /* Options */
    .option-block { margin-bottom: 22px; }
    .option-label {
      font-size: .7rem; font-weight: 600; letter-spacing: .1em;
      text-transform: uppercase; color: var(--muted); margin-bottom: 10px;
      display: flex; align-items: center; justify-content: space-between;
    }
    .option-label em { font-style: normal; color: var(--ink); font-size: .78rem; text-transform: none; letter-spacing: 0; font-weight: 400; }

    /* Colors */
    .color-options {
      display: flex; gap: 8px; flex-wrap: wrap;
    }
    .color-opt {
      display: flex; flex-direction: column; align-items: center; gap: 5px;
      cursor: pointer;
    }
    .color-swatch {
      width: 34px; height: 34px; border-radius: 50%;
      border: 2px solid transparent;
      outline: 2px solid transparent;
      outline-offset: 2px;
      transition: outline-color .2s, transform .2s;
    }
    .color-opt.active .color-swatch { outline-color: var(--accent); }
    .color-opt:hover .color-swatch  { transform: scale(1.12); }
    .color-name {
      font-size: .62rem; color: var(--muted); white-space: nowrap;
    }

    /* Size / format */
    .size-options {
      display: flex; gap: 8px; flex-wrap: wrap;
    }
    .size-opt {
      padding: 8px 16px; border-radius: 8px;
      border: 1.5px solid var(--border); font-size: .8rem;
      font-weight: 500; color: var(--muted); cursor: pointer;
      transition: border-color .2s, color .2s, background .2s;
    }
    .size-opt.active {
      border-color: var(--accent); color: var(--accent);
      background: rgba(124,92,58,.06);
    }
    .size-opt:hover { border-color: rgba(124,92,58,.4); color: var(--ink); }

    /* Qty */
    .qty-row { display: flex; align-items: center; gap: 8px; }
    .qty-input {
      display: flex; align-items: center;
      border: 1.5px solid var(--border); border-radius: 9px; overflow: hidden;
    }
    .qty-btn {
      width: 36px; height: 38px; background: transparent;
      border: none; font-size: 1.1rem; color: var(--muted);
      cursor: pointer; transition: background .2s, color .2s;
      font-family: 'Jost', sans-serif;
    }
    .qty-btn:hover { background: var(--paper2); color: var(--ink); }
    .qty-val {
      width: 44px; text-align: center; font-size: .88rem;
      font-weight: 500; border: none; outline: none;
      background: transparent; color: var(--ink); font-family: 'Jost', sans-serif;
    }
    .qty-min-note {
      font-size: .72rem; color: var(--muted); font-weight: 300;
    }

    /* CTA */
    .cta-row { display: flex; gap: 10px; margin-bottom: 20px; }
    .btn-main {
      flex: 1; padding: 14px 20px; border-radius: 10px;
      background: var(--accent); color: #fff; border: none;
      font-family: 'Jost', sans-serif; font-size: .88rem; font-weight: 500;
      cursor: pointer; transition: opacity .2s, transform .15s;
      display: flex; align-items: center; justify-content: center; gap: 7px;
    }
    .btn-main:hover { opacity: .86; transform: translateY(-1px); }
    .btn-main:active { transform: translateY(0); }
    .btn-sec {
      padding: 14px 18px; border-radius: 10px;
      border: 1.5px solid var(--border); background: transparent;
      color: var(--ink); font-family: 'Jost', sans-serif;
      font-size: .88rem; font-weight: 500; cursor: pointer;
      transition: background .2s;
    }
    .btn-sec:hover { background: var(--paper2); }

    .btn-order {
      width: 100%; padding: 13px 20px; border-radius: 10px;
      border: 1.5px solid var(--border); background: transparent;
      color: var(--ink); font-family: 'Jost', sans-serif;
      font-size: .85rem; font-weight: 400; cursor: pointer;
      transition: background .2s; margin-bottom: 22px;
      letter-spacing: .02em;
    }
    .btn-order:hover { background: var(--paper2); }

    /* Trust icons */
    .trust-row {
      display: flex; gap: 16px; flex-wrap: wrap;
      padding: 16px 0; border-top: 1px solid var(--border);
      border-bottom: 1px solid var(--border); margin-bottom: 24px;
    }
    .trust-item {
      display: flex; align-items: center; gap: 7px;
      font-size: .73rem; color: var(--muted); font-weight: 300;
    }
    .trust-icon {
      width: 28px; height: 28px; border-radius: 7px;
      background: var(--paper2); display: flex; align-items: center;
      justify-content: center; font-size: .85rem; flex-shrink: 0;
    }

    /* Personalization block */
    .personal-block {
      background: var(--ink); border-radius: var(--r);
      padding: 20px 22px; color: var(--paper);
    }
    .personal-block h4 {
      font-family: 'Playfair Display', serif;
      font-size: 1rem; font-weight: 500; margin-bottom: 6px;
    }
    .personal-block p {
      font-size: .78rem; color: rgba(250,248,244,.55);
      line-height: 1.55; margin-bottom: 14px; font-weight: 300;
    }
    .personal-tags { display: flex; gap: 6px; flex-wrap: wrap; }
    .ptag {
      font-size: .67rem; font-weight: 500; letter-spacing: .06em;
      text-transform: uppercase; padding: 4px 10px; border-radius: 4px;
      background: rgba(250,248,244,.1); color: rgba(250,248,244,.65);
      border: 1px solid rgba(250,248,244,.12);
    }

    /* ── TABS ── */
    .tabs-wrap {
      max-width: 1280px; margin: 56px auto 0; padding: 0 40px 80px;
    }
    .tabs-nav {
      display: flex; gap: 0; border-bottom: 1.5px solid var(--border);
      margin-bottom: 36px;
    }
    .tab-btn {
      font-family: 'Jost', sans-serif; font-size: .82rem; font-weight: 500;
      color: var(--muted); background: none; border: none;
      padding: 12px 20px; cursor: pointer; position: relative;
      transition: color .2s; letter-spacing: .02em;
    }
    .tab-btn::after {
      content: ''; position: absolute; bottom: -1.5px; left: 0; right: 0;
      height: 2px; background: var(--accent);
      transform: scaleX(0); transition: transform .25s ease;
    }
    .tab-btn.active { color: var(--ink); }
    .tab-btn.active::after { transform: scaleX(1); }
    .tab-btn:hover { color: var(--ink); }

    .tab-panel { display: none; }
    .tab-panel.active { display: block; animation: fadeIn .25s ease; }
    @keyframes fadeIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }

    /* Specs table */
    .specs-grid {
      display: grid; grid-template-columns: 1fr 1fr; gap: 0;
      border: 1.5px solid var(--border); border-radius: var(--r); overflow: hidden;
    }
    .spec-row {
      display: contents;
    }
    .spec-row > div {
      padding: 13px 18px; font-size: .83rem;
      border-bottom: 1px solid var(--border);
    }
    .spec-row:last-child > div { border-bottom: none; }
    .spec-key { color: var(--muted); font-weight: 400; background: var(--paper2); }
    .spec-val { color: var(--ink); font-weight: 400; }

    /* Description */
    .desc-body {
      display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start;
    }
    .desc-text { font-size: .88rem; color: var(--muted); line-height: 1.7; font-weight: 300; }
    .desc-text p { margin-bottom: 14px; }
    .desc-text strong { color: var(--ink); font-weight: 500; }
    .desc-features { display: flex; flex-direction: column; gap: 10px; }
    .desc-feature {
      display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px;
      background: var(--paper2); border-radius: 10px; border: 1px solid var(--border);
    }
    .df-icon {
      width: 34px; height: 34px; border-radius: 8px; flex-shrink: 0;
      background: rgba(124,92,58,.1); color: var(--accent);
      display: flex; align-items: center; justify-content: center; font-size: .9rem;
    }
    .df-text { font-size: .8rem; color: var(--muted); line-height: 1.5; font-weight: 300; }
    .df-text strong { display: block; color: var(--ink); font-weight: 500; margin-bottom: 1px; font-size: .83rem; }

    /* Reviews */
    .reviews-summary {
      display: flex; gap: 40px; align-items: center; margin-bottom: 32px;
      padding-bottom: 28px; border-bottom: 1.5px solid var(--border);
    }
    .rs-score {
      text-align: center; flex-shrink: 0;
    }
    .rs-big {
      font-family: 'Playfair Display', serif; font-size: 3.5rem;
      font-weight: 500; line-height: 1; color: var(--ink);
    }
    .rs-stars { color: var(--accent); font-size: 1rem; margin: 4px 0; }
    .rs-count { font-size: .72rem; color: var(--muted); }
    .rs-bars { flex: 1; display: flex; flex-direction: column; gap: 6px; }
    .bar-row { display: flex; align-items: center; gap: 10px; font-size: .73rem; color: var(--muted); }
    .bar-track { flex: 1; height: 5px; background: var(--paper3); border-radius: 3px; overflow: hidden; }
    .bar-fill { height: 100%; background: var(--accent); border-radius: 3px; }
    .bar-count { width: 20px; text-align: right; }

    .review-card {
      padding: 20px 22px; background: #fff;
      border: 1.5px solid var(--border); border-radius: var(--r);
      margin-bottom: 14px;
    }
    .rv-header { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
    .rv-avatar {
      width: 38px; height: 38px; border-radius: 50%;
      background: var(--paper2); display: flex; align-items: center;
      justify-content: center; font-family: 'Playfair Display', serif;
      font-size: 1rem; color: var(--accent); border: 1.5px solid var(--border);
      flex-shrink: 0;
    }
    .rv-meta { flex: 1; }
    .rv-name { font-size: .83rem; font-weight: 500; color: var(--ink); }
    .rv-date { font-size: .7rem; color: var(--muted); margin-top: 1px; }
    .rv-stars { color: var(--accent); font-size: .78rem; }
    .rv-body { font-size: .83rem; color: var(--muted); line-height: 1.6; font-weight: 300; }
    .rv-badge {
      display: inline-block; margin-top: 8px; font-size: .63rem; font-weight: 500;
      padding: 2px 8px; border-radius: 4px; background: rgba(74,103,65,.1); color: #3d6135;
    }

    /* ── RELATED ── */
    .related-wrap {
      max-width: 1280px; margin: 0 auto; padding: 0 40px 80px;
    }
    .related-header {
      display: flex; align-items: baseline; justify-content: space-between;
      margin-bottom: 24px;
    }
    .related-title {
      font-family: 'Playfair Display', serif;
      font-size: 1.5rem; font-weight: 500; letter-spacing: -.01em;
    }
    .related-link {
      font-size: .78rem; color: var(--muted); text-decoration: none;
      border-bottom: 1px dashed rgba(154,145,136,.4); transition: color .2s;
    }
    .related-link:hover { color: var(--ink); }
    .related-grid {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;
    }

    /* mini card */
    .mini-card {
      background: #fff; border: 1.5px solid var(--border);
      border-radius: var(--r); overflow: hidden; cursor: pointer;
      transition: transform .3s, box-shadow .3s, border-color .3s;
    }
    .mini-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 14px 40px rgba(28,26,23,.09);
      border-color: rgba(124,92,58,.2);
    }
    .mc-img {
      aspect-ratio: 4/3; background: var(--paper2);
      display: flex; align-items: center; justify-content: center;
    }
    .mc-img svg { width: 50%; opacity: .8; }
    .mc-body { padding: 14px 14px 16px; }
    .mc-cat { font-size: .6rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); margin-bottom: 4px; }
    .mc-title { font-family: 'Playfair Display', serif; font-size: .92rem; font-weight: 500; color: var(--ink); margin-bottom: 8px; line-height: 1.3; }
    .mc-price { font-family: 'Playfair Display', serif; font-size: .95rem; color: var(--ink); }
    .mc-price small { font-family: 'Jost', sans-serif; font-size: .68rem; color: var(--muted); font-weight: 300; }

    /* responsive */
    @media (max-width: 1100px) {
      .product-grid { grid-template-columns: 1fr 420px; gap: 40px; }
    }
    @media (max-width: 900px) {
      .product-grid { grid-template-columns: 1fr; }
      .gallery { position: static; }
      .desc-body { grid-template-columns: 1fr; }
      .specs-grid { grid-template-columns: 1fr; }
      .related-grid { grid-template-columns: repeat(2, 1fr); }
      .nav-links { display: none; }
    }
    @media (max-width: 600px) {
      .product-wrap, .tabs-wrap, .related-wrap { padding-left: 20px; padding-right: 20px; }
      .nav-inner { padding: 0 20px; }
      .breadcrumb-wrap { padding-left: 20px; padding-right: 20px; }
      .related-grid { grid-template-columns: 1fr 1fr; }
      .reviews-summary { flex-direction: column; gap: 20px; }
    }

    /* page load */
    .product-grid { animation: fadeUp .5s ease both; }
    @keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
   .hero-actions .h-sec:hover {
       background: rgba(28, 26, 23, .06);
   }
   .mx-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 40px 0 20px;
    font-family: 'Jost', sans-serif;
}

.mx-pagination__info {
    font-size: .78rem;
    color: #9a9188;
    font-weight: 300;
    letter-spacing: .03em;
}
.mx-pagination__info-range,
.mx-pagination__info-total {
    color: #1c1a17;
    font-weight: 500;
}

.mx-pagination__controls {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
    justify-content: center;
}

.mx-pagination__page,
.mx-pagination__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 4px;
    border-radius: 9px;
    border: 1.5px solid rgba(28,26,23,.10);
    font-size: .84rem;
    font-weight: 400;
    color: #7a7468;
    text-decoration: none;
    background: transparent;
    transition: border-color .2s, color .2s, background .2s, transform .15s;
    cursor: pointer;
    line-height: 1;
}

.mx-pagination__page:hover,
.mx-pagination__btn:hover {
    border-color: rgba(124,92,58,.35);
    color: #1c1a17;
    background: rgba(124,92,58,.05);
}
.mx-pagination__page--active {
    background: rgb(224,217,231);
    border-color: #7e5e9f;
    color: #fff !important;
    font-weight: 500;
    font-family: 'Playfair Display', serif;
    font-size: .92rem;
    cursor: default;
    pointer-events: none;
}

.mx-pagination__btn--disabled {
    opacity: .3;
    cursor: default;
    pointer-events: none;
}

.mx-pagination__btn--prev,
.mx-pagination__btn--next {
    color: #9a9188;
}

.mx-pagination__dots {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 38px;
    color: #9a9188;
    font-size: .9rem;
    letter-spacing: .05em;
    user-select: none;
}

.mx-pagination__jump {
    display: flex;
    align-items: center;
    gap: 6px;
}

.mx-pagination__jump-label {
    font-size: .72rem;
    color: #9a9188;
    font-weight: 300;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.mx-pagination__jump-input {
    width: 58px;
    height: 36px;
    border: 1.5px solid rgba(28,26,23,.10);
    border-radius: 8px;
    background: transparent;
    text-align: center;
    font-family: 'Jost', sans-serif;
    font-size: .84rem;
    color: #1c1a17;
    outline: none;
    -moz-appearance: textfield;
    transition: border-color .2s;
}
.mx-pagination__jump-input::-webkit-outer-spin-button,
.mx-pagination__jump-input::-webkit-inner-spin-button { -webkit-appearance: none; }
.mx-pagination__jump-input:focus { border-color: #7c5c3a; }

.mx-pagination__jump-btn {
    height: 36px;
    padding: 0 14px;
    border-radius: 8px;
    border: none;
    background: #1c1a17;
    color: #faf8f4;
    font-size: .82rem;
    font-weight: 500;
    cursor: pointer;
    transition: opacity .2s;
}
.mx-pagination__jump-btn:hover { opacity: .8; }

@media (max-width: 480px) {
    .mx-pagination__jump { display: none; }
    .mx-pagination__page,
    .mx-pagination__btn {
        min-width: 34px;
        height: 34px;
        font-size: .8rem;
        border-radius: 7px;
    }
}
/* ── BREADCRUMB ── */
  .mz-breadcrumb-wrap {
    max-width: 1280px; margin: 0 auto; padding: 16px 40px;
    display: flex; align-items: center; gap: 6px;
    font-size: .72rem; color: var(--muted); letter-spacing: .02em;
  }
  .mz-breadcrumb-wrap a { color: var(--muted); text-decoration: none; transition: color .2s; }
  .mz-breadcrumb-wrap a:hover { color: var(--ink); }
  .mz-breadcrumb-wrap .sep { opacity: .4; font-size: .6rem; }
  .mz-breadcrumb-wrap .current { color: var(--ink); }

  /* ── PRODUCT LAYOUT ── */
  .mz-product-wrap {
    max-width: 1280px; margin: 0 auto; padding: 0 40px 80px;
  }
  .mz-product-grid {
    display: grid;
    grid-template-columns: 1fr 480px;
    gap: 60px;
    align-items: start;
    animation: mzFadeUp .5s ease both;
  }
  @keyframes mzFadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ── GALLERY ── */
  .mz-gallery { position: sticky; top: 90px; }

  .mz-gallery-main {
    aspect-ratio: 1 / 1;
    background: var(--paper2);
    border-radius: 16px;
    border: 1.5px solid var(--border);
    display: flex; align-items: center; justify-content: center;
    position: relative; overflow: hidden;
    margin-bottom: 12px;
  }
  .mz-gallery-main::before {
    content: '';
    position: absolute; inset: 0;
    background:
      radial-gradient(ellipse at 25% 30%, rgba(124,92,58,.08) 0%, transparent 60%),
      radial-gradient(ellipse at 80% 75%, rgba(28,26,23,.04) 0%, transparent 50%);
    pointer-events: none;
  }
  .mz-gallery-main img.mz-main-img {
    max-width: 85%; max-height: 85%; object-fit: contain;
    filter: drop-shadow(0 12px 32px rgba(28,26,23,.16));
    transition: transform .5s ease;
  }
  .mz-gallery-main:hover img.mz-main-img { transform: scale(1.10); }

  .mz-gallery-badge-wrap {
    position: absolute; top: 16px; left: 16px;
    display: flex; flex-direction: column; gap: 6px;
  }
  .mz-g-badge {
    font-size: .6rem; font-weight: 600; letter-spacing: .08em;
    text-transform: uppercase; padding: 4px 10px; border-radius: 4px; line-height: 1.4;
  }
  .mz-g-badge-sale  { background: var(--sale); color: #fff; }
  .mz-g-badge-new   { background: var(--accent); color: #fff; }
  .mz-g-badge-d30   { background: rgba(185,64,64,.15); color: var(--sale); }

  .mz-gallery-wish {
    position: absolute; top: 14px; right: 14px;
    width: 38px; height: 38px; border-radius: 50%;
    background: rgba(255,255,255,.9); border: 1.5px solid var(--border);
    display: flex; align-items: center; justify-content: center;
    font-size: 1rem; cursor: pointer;
    transition: color .2s, transform .2s;
    backdrop-filter: blur(6px);
  }
  .mz-gallery-wish:hover { color: #b94040; transform: scale(1.1); }

  .mz-gallery-save {
    position: absolute; bottom: 14px; right: 14px;
    font-size: .65rem; color: var(--muted); cursor: pointer;
    background: rgba(255,255,255,.85); border: 1px solid var(--border);
    border-radius: 6px; padding: 5px 10px; backdrop-filter: blur(4px);
    text-decoration: none; transition: color .2s;
  }
  .mz-gallery-save:hover { color: var(--ink); }

  .mz-gallery-thumbs {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px;
  }
  .mz-thumb {
    aspect-ratio: 1/1; background: var(--paper2);
    border-radius: 9px; border: 1.5px solid var(--border);
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; overflow: hidden; transition: border-color .2s;
  }
  .mz-thumb.active { border-color: var(--accent); }
  .mz-thumb:hover  { border-color: rgba(124,92,58,.4); }
  .mz-thumb img { width: 100%; height: 100%; object-fit: cover; opacity: .8; transition: opacity .2s; }
  .mz-thumb:hover img { opacity: 1; }

  /* ── PRODUCT INFO ── */
  .mz-pinfo { padding-top: 4px; }

  .mz-pinfo-category {
    font-size: .64rem; font-weight: 600; letter-spacing: .14em;
    text-transform: uppercase; color: var(--accent); margin-bottom: 10px;
  }
  .mz-pinfo-category a { color: inherit; text-decoration: none; }
  .mz-pinfo-category a:hover { text-decoration: underline; }

  .mz-pinfo-title {
    font-family: 'Playfair Display', serif;
    font-size: 2rem; font-weight: 500; line-height: 1.15;
    letter-spacing: -.02em; margin-bottom: 18px;
  }

  /* Price block */
  .mz-price-block {
    background: var(--paper2);
    border: 1.5px solid var(--border);
    border-radius: var(--r);
    padding: 20px 22px;
    margin-bottom: 24px;
  }
  .mz-price-row {
    display: flex; align-items: baseline; gap: 10px; margin-bottom: 4px;
  }
  .mz-price-main {
    font-family: 'Playfair Display', serif;
    font-size: 2rem; font-weight: 500; color: var(--ink);
  }
  .mz-price-note {
    font-size: .75rem; color: var(--muted); font-weight: 300;
  }

  /* Specs list */
  .mz-specs-list {
    list-style: none; 
    margin-bottom: 24px;
    border: 1.5px solid var(--border); 
    border-radius: var(--r); 
    overflow: hidden;
    padding-left:0;
  }
  .mz-specs-list li {
    display: flex; gap: 12px; align-items: baseline;
    padding: 11px 18px; font-size: .83rem;
    border-bottom: 1px solid var(--border);
    background: #fff;
  }
  .mz-specs-list li:nth-child(odd) { background: var(--paper2); }
  .mz-specs-list li:last-child { border-bottom: none; }
  .mz-specs-list .mz-spec-key { color: var(--muted); min-width: 140px; flex-shrink: 0; }
  .mz-specs-list .mz-spec-val { color: var(--ink); }
  .mz-specs-list a { color: var(--accent); text-decoration: none; border-bottom: 1px dashed rgba(124,92,58,.4); }
  .mz-specs-list a:hover { color: var(--ink); }

  /* Skin options */
  .mz-skin-section { margin-bottom: 24px; }
  .mz-skin-section h4 {
    font-size: .7rem; font-weight: 600; letter-spacing: .1em;
    text-transform: uppercase; color: var(--muted); margin-bottom: 10px;
  }
  .mz-skin-note { font-size: .68rem; color: var(--muted); margin-bottom: 8px; font-style: italic; }
  .mz-leather-list ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; }

  /* CTA */
  .mz-cta-row { display: flex; gap: 10px; margin-bottom: 16px; }
  .mz-btn-main {
    flex: 1; padding: 14px 20px; border-radius: 10px;
    background: var(--accent); color: #fff; border: none;
    font-family: 'Jost', sans-serif; font-size: .88rem; font-weight: 500;
    cursor: pointer; transition: opacity .2s, transform .15s;
    display: flex; align-items: center; justify-content: center; gap: 7px;
  }
  .mz-btn-main:hover { opacity: .86; transform: translateY(-1px); }
  .mz-btn-main.in-basket { background: var(--accent2); }
  .mz-btn-main.in-basket a { color: #fff; text-decoration: none; }

  .mz-btn-sec {
    padding: 14px 18px; border-radius: 10px;
    border: 1.5px solid var(--border); background: transparent;
    color: var(--ink); font-family: 'Jost', sans-serif;
    font-size: .88rem; cursor: pointer; transition: background .2s;
  }
  .mz-btn-sec:hover { background: var(--paper2); }

  .mz-btn-order {
    width: 100%; padding: 13px 20px; border-radius: 10px;
    border: 1.5px solid var(--border); background: transparent;
    color: var(--ink); font-family: 'Jost', sans-serif;
    font-size: .85rem; font-weight: 400; cursor: pointer;
    transition: background .2s; margin-bottom: 22px;
    letter-spacing: .02em;
  }
  .mz-btn-order:hover { background: var(--paper2); }

  /* Trust icons */
  .mz-trust-row {
    display: flex; gap: 16px; flex-wrap: wrap;
    padding: 16px 0; border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border); margin-bottom: 24px;
  }
  .mz-trust-item {
    display: flex; align-items: center; gap: 7px;
    font-size: .73rem; color: var(--muted); font-weight: 300;
  }
  .mz-trust-icon {
    width: 28px; height: 28px; border-radius: 7px;
    background: var(--paper2); display: flex; align-items: center;
    justify-content: center; font-size: .85rem; flex-shrink: 0;
  }

  /* Description */
  .mz-detail-text {
    font-size: .88rem; color: var(--muted); line-height: 1.7;
    font-weight: 300; margin-bottom: 28px;
  }
  .mz-detail-text p { margin-bottom: 14px; }
  .mz-detail-text strong { color: var(--ink); font-weight: 500; }

  /* Navigation prev/next */
  .mz-goods-nav {
    display: flex; justify-content: space-between; padding: 24px 0;
    border-top: 1.5px solid var(--border); margin-top: 32px;
  }
  .mz-goods-nav a {
    font-size: .8rem; color: var(--muted); text-decoration: none;
    display: flex; align-items: center; gap: 6px;
    transition: color .2s;
  }
  .mz-goods-nav a:hover { color: var(--ink); }
  .mz-goods-nav .prev::before { content: '←'; }
  .mz-goods-nav .next::after  { content: '→'; }

  /* Related / see also */
  .mz-see-also { max-width: 1280px; margin: 0 auto; padding: 0 40px 80px; }
  .mz-see-also h2 {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem; font-weight: 500; margin-bottom: 24px; letter-spacing: -.01em;
  }

  /* Responsive */
  @media (max-width: 1100px) {
    .mz-product-grid { grid-template-columns: 1fr 420px; gap: 40px; }
  }
  @media (max-width: 900px) {
    .mz-product-grid { grid-template-columns: 1fr; }
    .mz-gallery { position: static; }
  }
  @media (max-width: 600px) {
    .mz-product-wrap, .mz-see-also { padding-left: 20px; padding-right: 20px; }
    .mz-breadcrumb-wrap { padding-left: 20px; padding-right: 20px; }
    .mz-product-grid { gap: 24px; }
  }