
    :root{
      --paper:#fbfaf7;
      --ink:#111;
      --muted:#5f5a52;
      --line:#d8d1c7;
      --soft:#f1ece3;
      --topbar:82px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      background:var(--paper);
      color:var(--ink);
      font-family:"Times New Roman","Songti SC","SimSun",serif;
      -webkit-font-smoothing:antialiased;
      text-rendering:geometricPrecision;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button{font:inherit;color:inherit}

    .site-header{
      position:fixed;
      inset:0 0 auto 0;
      height:82px;
      z-index:90;
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:0 clamp(28px,5.4vw,92px);
      background:var(--paper);
      backdrop-filter:blur(18px);
      box-shadow:inset 0 -1px 0 rgba(17,17,17,.075);
    }
    .brand{display:flex;align-items:flex-end;gap:18px;min-width:240px}
    .brand-logo-mark{width:42px;height:42px;object-fit:contain;flex:0 0 auto}
    .brand-logo-wordmark{width:168px;height:auto;object-fit:contain;flex:0 0 auto;transform:translateY(2px)}
    .nav{display:flex;align-items:center;gap:clamp(28px,3.1vw,44px);font-size:12px;font-weight:700;letter-spacing:.42em;text-transform:uppercase}
    .nav a{position:relative;padding:28px 0;transition:opacity .35s cubic-bezier(.22,1,.36,1)}
    .nav a:after{content:"";position:absolute;left:50%;bottom:20px;width:34px;height:1px;background:#111;transform:translateX(-50%) scaleX(0);transform-origin:center;transition:transform .45s cubic-bezier(.22,1,.36,1);opacity:.75}
    .nav a:hover:after,.nav a.is-active:after{transform:translateX(-50%) scaleX(1)}
    .hamburger{width:34px;height:22px;display:grid;align-content:space-between;margin-left:18px;padding:0;border:0;background:transparent;cursor:pointer;color:inherit}
    .hamburger i{height:1px;background:#111;display:block;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .35s ease}
    .hamburger:hover i:nth-child(1){transform:translateX(-4px)}
    .hamburger:hover i:nth-child(2){transform:translateX(4px)}
    .hamburger:hover i:nth-child(3){transform:translateX(-2px)}

    .page{padding-top:var(--topbar);min-height:100vh;}
    .product-shell{
      padding:40px clamp(40px,4.6vw,76px) 0;
    }
    .back-link{
      display:inline-flex;
      align-items:center;
      gap:12px;
      margin:0 0 24px;
      font-size:11px;
      letter-spacing:.34em;
      text-transform:uppercase;
      font-weight:700;
      color:#28241f;
    }
    .back-link:before{
      content:"←";
      font-size:16px;
      letter-spacing:0;
      transform:translateY(-1px);
    }

    .product-hero{
      display:grid;
      grid-template-columns:minmax(560px,713px) minmax(268px,318px) minmax(276px,304px);
      column-gap:clamp(42px,4.1vw,86px);
      align-items:start;
      max-width:1790px;
      margin:0 auto;
    }

    .thumb-rail{
      min-height:min(766px,calc((100vw - 720px) * 0.95));
      height:clamp(560px,37.4vw,766px);
      display:grid;
      grid-template-rows:auto 1fr auto;
      align-items:center;
      justify-items:center;
      padding:0 0 8px;
    }
    .rail-word{
      writing-mode:vertical-rl;
      text-orientation:mixed;
      font-size:11px;
      letter-spacing:.30em;
      text-transform:uppercase;
      font-weight:700;
      display:flex;
      align-items:center;
      gap:20px;
      color:#2e2922;
    }
    .rail-word:before,
    .rail-word:after{
      content:"";
      display:block;
      width:1px;
      height:64px;
      background:#bcb4aa;
    }
    .thumb-list{
      width:100%;
      display:grid;
      gap:18px;
      justify-items:center;
      align-content:center;
    }
    .thumb{
      width:86px;
      height:88px;
      overflow:hidden;
      background:#eee8df;
      border:1px solid transparent;
      cursor:pointer;
      opacity:.78;
      transition:opacity .25s ease,border-color .25s ease,transform .25s ease;
    }
    .thumb:hover,.thumb.is-active{
      opacity:1;
      border-color:rgba(17,17,17,.28);
      transform:translateX(2px);
    }
    .thumb img{
      width:100%;
      height:100%;
      object-fit:cover;
      filter:saturate(.88) contrast(.96);
    }

    .main-media{
      position:relative;
      width:100%;
      aspect-ratio:.93/1;
      max-height:766px;
      background:#eee8df;
      overflow:hidden;
    }
    .main-media img{
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
      filter:none;
      image-rendering:auto;
    }
    .zoom-pill{
      position:absolute;
      right:20px;
      top:20px;
      width:46px;
      height:46px;
      border-radius:50%;
      background:rgba(255,255,255,.92);
      display:grid;
      place-items:center;
      font-size:17px;
      box-shadow:0 1px 18px rgba(17,17,17,.10);
      line-height:1;
    }

    .product-info{
      padding-top:42px;
      max-width:318px;
    }
    .product-number{
      font-size:15px;
      letter-spacing:.12em;
      margin-bottom:16px;
      color:#26231f;
    }
    .product-title{
      margin:0;
      font-size:clamp(34px,2.25vw,48px);
      line-height:1.08;
      font-weight:400;
      letter-spacing:.025em;
    }
    .product-subtitle{
      margin-top:16px;
      font-size:17px;
      line-height:1.45;
      color:#2a251e;
    }
    .product-price{
      margin-top:30px;
      font-size:17px;
      letter-spacing:.13em;
    }
    .thin-rule{
      height:1px;
      background:var(--line);
      margin:38px 0 26px;
      width:100%;
    }
    .product-desc{
      font-size:15px;
      line-height:1.92;
      color:#28241f;
      margin:0 0 30px;
    }
    .details-title{
      margin:0 0 15px;
      font-size:11px;
      letter-spacing:.38em;
      text-transform:uppercase;
      font-weight:700;
    }
    .details-list{
      display:grid;
      gap:13px;
      font-size:14px;
      line-height:1.45;
    }
    .detail-row{
      display:block;
      padding-left:10px;
      position:relative;
    }
    .detail-row:before{
      content:"·";
      position:absolute;
      left:0;
      top:0;
      font-weight:700;
    }
    .detail-row strong{
      display:block;
      font-size:14px;
      font-weight:700;
      letter-spacing:.02em;
      margin-bottom:2px;
    }
    .detail-row span{
      display:block;
      color:#27231e;
    }

    .purchase-panel{
      padding-top:294px;
      max-width:304px;
    }
    .qty-row{
      height:66px;
      display:grid;
      grid-template-columns:1fr 48px 48px 48px;
      align-items:center;
      border:1px solid var(--line);
      padding:0 18px;
      font-size:15px;
      letter-spacing:.12em;
      text-transform:uppercase;
      background:rgba(255,255,255,.12);
    }
    .qty-row strong{font-size:12px;letter-spacing:.18em}
    .qty-row button{
      border:0;
      background:transparent;
      height:100%;
      cursor:pointer;
      font-size:20px;
      line-height:1;
    }
    .qty-row span{text-align:center;font-size:17px;letter-spacing:0}
    .cart-button,
    .wish-button{
      width:100%;
      height:62px;
      margin-top:26px;
      border:1px solid #111;
      background:#111;
      color:#fff;
      text-transform:uppercase;
      letter-spacing:.28em;
      font-size:12px;
      font-weight:700;
      cursor:pointer;
      transition:background .25s ease,color .25s ease,border-color .25s ease;
    }
    .cart-button:hover{background:#333}
    .wish-button{
      margin-top:26px;
      background:transparent;
      color:#77716a;
      border-color:var(--line);
    }
    .wish-button:hover{
      background:#111;
      color:#fff;
      border-color:#111;
    }
    .service-list{
      margin-top:46px;
      display:grid;
      gap:27px;
    }
    .service{
      display:grid;
      grid-template-columns:38px 1fr;
      align-items:start;
      gap:15px;
      font-size:14px;
      line-height:1.45;
      color:#333;
    }
    .service-icon{
      width:25px;
      height:25px;
      border:1px solid #111;
      display:grid;
      place-items:center;
      font-size:12px;
    }
    .service strong{
      display:block;
      font-size:15px;
      margin-bottom:3px;
      color:#111;
    }
    .service span{color:#544f47;}


    .collection-count{
      margin-top:14px;
      font-size:12px;
      letter-spacing:.18em;
      text-transform:uppercase;
      color:#5a554d;
      min-height:18px;
    }
    .interaction-note{
      margin-top:12px;
      min-height:18px;
      font-size:12px;
      line-height:1.55;
      color:#5f5a52;
    }
    .interaction-note.is-error{
      color:#9a3d30;
    }
    .comments-section{
      border-top:1px solid var(--line);
      margin:58px auto 0;
      padding:44px 0 46px;
      display:grid;
      grid-template-columns:280px minmax(0,1fr);
      column-gap:86px;
      max-width:1790px;
      align-items:start;
    }
    .comments-title{
      margin:0;
      font-size:12px;
      letter-spacing:.34em;
      text-transform:uppercase;
      font-weight:700;
      line-height:1.6;
    }
    .comments-copy{
      margin:18px 0 0;
      font-size:14px;
      line-height:1.9;
      color:#5f5a52;
      max-width:260px;
    }
    .comment-form{
      display:grid;
      gap:12px;
      border:1px solid var(--line);
      padding:20px;
      background:rgba(255,255,255,.18);
    }
    .comment-form textarea{
      width:100%;
      min-height:104px;
      border:1px solid var(--line);
      background:#fffdfa;
      padding:14px 16px;
      resize:vertical;
      font:inherit;
      font-size:14px;
      line-height:1.7;
      color:var(--ink);
      outline:none;
    }
    .comment-form textarea:focus{
      border-color:#111;
    }
    .comment-form button{
      justify-self:start;
      min-width:190px;
      height:48px;
      border:1px solid #111;
      background:#111;
      color:#fff;
      text-transform:uppercase;
      letter-spacing:.22em;
      font-size:11px;
      font-weight:700;
      cursor:pointer;
    }
    .comment-message{
      min-height:18px;
      font-size:12px;
      color:#5f5a52;
      line-height:1.6;
    }
    .comment-message.is-error{
      color:#9a3d30;
    }
    .comment-list{
      margin-top:20px;
      display:grid;
      gap:12px;
    }
    .comment-item{
      border:1px solid var(--line);
      background:rgba(255,253,248,.66);
      padding:18px 20px;
    }
    .comment-meta{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      font-size:11px;
      letter-spacing:.16em;
      text-transform:uppercase;
      color:#6a635a;
    }
    .comment-text{
      margin:12px 0 0;
      font-size:15px;
      line-height:1.85;
      color:#28241f;
    }
    .comment-empty{
      border:1px solid var(--line);
      padding:18px 20px;
      color:#6a635a;
      font-size:14px;
      line-height:1.8;
    }

    .recommend{
      border-top:1px solid var(--line);
      margin-top:52px;
      padding:40px 0 42px;
      display:grid;
      grid-template-columns:220px 1fr;
      column-gap:86px;
      align-items:start;
      max-width:1790px;
      margin-left:auto;
      margin-right:auto;
    }
    .recommend-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:20px;
    }
    .recommend-title{
      font-size:12px;
      letter-spacing:.34em;
      text-transform:uppercase;
      font-weight:700;
      line-height:1.6;
    }
    .recommend-arrows{
      position:absolute;
      right:clamp(40px,4.6vw,76px);
      font-size:24px;
      letter-spacing:22px;
      color:#222;
      transform:translateY(-2px);
    }
    .recommend-grid{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:clamp(28px,2.8vw,44px);
    }
    .recommend-card{display:block}
    .recommend-card img{
      width:100%;
      aspect-ratio:1/.70;
      object-fit:cover;
      background:#eee8df;
      filter:saturate(.90) contrast(.96);
    }
    .recommend-card span{display:block}
    .recommend-num{
      margin-top:13px;
      font-size:12px;
      color:#555;
    }
    .recommend-name{
      font-size:16px;
      line-height:1.35;
      margin-top:4px;
    }
    .recommend-price{
      font-size:13px;
      margin-top:8px;
      color:#333;
    }

    .shop-footer{
      display:grid;
      grid-template-columns:1fr auto;
      align-items:center;
      gap:30px;
      padding:28px 0 24px;
      border-top:1px solid var(--line);
      font-size:11px;
      letter-spacing:.18em;
      text-transform:uppercase;
      color:#39352f;
      max-width:1790px;
      margin:0 auto;
    }
    .shop-footer-links{
      display:flex;
      gap:44px;
      flex-wrap:wrap;
      justify-content:flex-end;
    }

    @media(max-width:1280px){
      .product-hero{
        grid-template-columns:minmax(430px,1fr) minmax(250px,320px) minmax(240px,304px);
        column-gap:34px;
      }
      .purchase-panel{
        grid-column:auto;
        padding-top:34px;
      }
      .thumb{width:72px;height:76px}
      .recommend{
        grid-template-columns:1fr;
        row-gap:24px;
      }
      .recommend-arrows{
        position:static;
        transform:none;
      }
      .recommend-head{
        justify-content:space-between;
      }
    }
    @media(max-width:980px){
      :root{--topbar:70px}
      .site-header{height:70px;padding:0 24px}
      .brand-logo-mark{width:34px;height:34px}
      .brand-logo-wordmark{width:148px;transform:translateY(1.8px)}
      .nav{gap:0}
      .nav a{display:none}
      .hamburger{display:grid}
      body.mobile-nav-open .nav a{display:block}
      body.mobile-nav-open .nav{position:fixed;left:0;right:0;top:70px;background:var(--paper);display:grid;gap:0;padding:22px 24px 28px;border-bottom:1px solid var(--line)}
      body.mobile-nav-open .nav .hamburger{position:fixed;right:24px;top:24px}
      body.mobile-nav-open .nav a{padding:14px 0;font-size:13px}
      .product-shell{padding:34px 22px 0}
      .product-hero{
        display:grid;
        grid-template-columns:1fr;
        gap:28px;
      }
      .main-media{
        order:1;
        aspect-ratio:1/.86;
      }
      .product-info{order:3;padding-top:0;max-width:none}
      .product-title{font-size:40px}
      .purchase-panel{order:4;padding-top:0;max-width:none}
      .recommend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .comments-section{grid-template-columns:1fr;row-gap:26px}
      .shop-footer{grid-template-columns:1fr;align-items:start}.shop-footer-links{justify-content:flex-start;gap:18px 28px}
    }
    @media(max-width:560px){
      .brand{min-width:0;gap:12px}
      .brand-logo-wordmark{width:128px}
      .product-title{font-size:34px}
      .recommend-grid{grid-template-columns:1fr}
      .qty-row{grid-template-columns:1fr 42px 42px 42px}
    }
  
    /* V36.58: product detail left rail removed */
    .product-page,
    .product-layout,
    .detail-layout{
      --product-rail-width:0px;
    }
    .product-rail,
    .gallery-rail,
    .product-nav-rail,
    .product-side-nav,
    .product-thumb-nav{
      display:none!important;
    }

  

    /* V36.65: force old product rail/thumbnails off */
    .thumb-rail,
    .rail-word,
    .thumb-list,
    .thumb,
    .product-rail,
    .gallery-rail,
    .product-nav-rail,
    .product-side-nav,
    .product-thumb-nav{
      display:none!important;
    }



/* V36.66 FORCE PRODUCT DETAIL CSS */
html body .product-hero{
  display:grid!important;
  grid-template-columns:minmax(560px,713px) minmax(268px,318px) minmax(276px,304px)!important;
  column-gap:clamp(42px,4.1vw,86px)!important;
  align-items:start!important;
  max-width:1790px!important;
  margin:0 auto!important;
}
html body .purchase-panel{
  padding-top:294px!important;
  max-width:304px!important;
}
html body .qty-row{
  height:66px!important;
  display:grid!important;
  grid-template-columns:1fr 48px 48px 48px!important;
  align-items:center!important;
  border:1px solid var(--line)!important;
  padding:0 18px!important;
  font-size:15px!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  background:rgba(255,255,255,.12)!important;
}
html body .qty-row button{
  border:0!important;
  background:transparent!important;
  height:100%!important;
  cursor:pointer!important;
  font-size:20px!important;
  line-height:1!important;
}
html body .cart-button,
html body .wish-button{
  width:100%!important;
  height:62px!important;
  margin-top:26px!important;
  border:1px solid #111!important;
  background:#111!important;
  color:#fff!important;
  text-transform:uppercase!important;
  letter-spacing:.28em!important;
  font-size:12px!important;
  font-weight:700!important;
  cursor:pointer!important;
}
html body .wish-button{
  background:transparent!important;
  color:#77716a!important;
  border-color:var(--line)!important;
}
html body .details-list{
  display:grid!important;
  gap:15px!important;
  margin-top:15px!important;
  font-size:15px!important;
  line-height:1.56!important;
}
html body .detail-row{
  display:block!important;
  padding-left:10px!important;
  position:relative!important;
}
html body .detail-row:before{
  content:"·"!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  font-weight:700!important;
}
html body .detail-row strong{
  display:block!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  margin-bottom:2px!important;
}
html body .detail-row span{
  display:block!important;
  color:#27231e!important;
}
html body .service-list{
  margin-top:46px!important;
  display:grid!important;
  gap:27px!important;
}
html body .service{
  display:grid!important;
  grid-template-columns:38px 1fr!important;
  align-items:start!important;
  gap:15px!important;
  font-size:14px!important;
  line-height:1.45!important;
  color:#333!important;
}
html body .service-icon{
  width:25px!important;
  height:25px!important;
  border:1px solid #111!important;
  display:grid!important;
  place-items:center!important;
  font-size:12px!important;
}
html body .service strong{
  display:block!important;
  font-size:15px!important;
  margin-bottom:3px!important;
  color:#111!important;
}
html body .service span{
  color:#544f47!important;
}
html body .comments-section{
  border-top:1px solid var(--line)!important;
  margin:58px auto 0!important;
  padding:44px 0 46px!important;
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  column-gap:86px!important;
  max-width:1790px!important;
  align-items:start!important;
}
html body .comment-form textarea{
  width:100%!important;
  min-height:104px!important;
  border:1px solid var(--line)!important;
  background:#fffdfa!important;
  padding:14px 16px!important;
  resize:vertical!important;
  font:inherit!important;
  font-size:14px!important;
  line-height:1.7!important;
  color:var(--ink)!important;
  outline:none!important;
}
html body .comment-form button{
  justify-self:start!important;
  min-width:190px!important;
  height:48px!important;
  border:1px solid #111!important;
  background:#111!important;
  color:#fff!important;
  text-transform:uppercase!important;
  letter-spacing:.22em!important;
  font-size:11px!important;
  font-weight:700!important;
  cursor:pointer!important;
}
@media(max-width:980px){
  html body .product-hero{grid-template-columns:1fr!important}
  html body .purchase-panel{padding-top:0!important;max-width:none!important}
  html body .comments-section{grid-template-columns:1fr!important;row-gap:26px!important}
}
