.product-page { background:#f3eadf; }
.product-header {
  position:fixed; inset:0 0 auto; z-index:900; height:78px; padding:0 clamp(18px,4vw,64px);
  display:flex; align-items:center; justify-content:space-between; color:#fff;
  background:linear-gradient(to bottom,rgba(15,10,10,.55),transparent);
}
.product-header nav { display:flex; align-items:center; gap:24px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.product-header nav > a { opacity:.78; }
.product-detail {
  min-height:100svh; display:grid; grid-template-columns:1.05fr .95fr; color:#fff;
  position:relative; overflow:hidden; padding-top:78px;
}
.product-detail--fig { background:radial-gradient(circle at 18% 45%,#5b2740,transparent 42%),linear-gradient(135deg,#170d14,#2a1723); }
.product-detail--honey { color:#25180c; background:radial-gradient(circle at 20% 40%,#efbd62,transparent 38%),linear-gradient(135deg,#d99b38,#b56e17); }
.product-detail__visual { min-height:calc(100svh - 78px); display:grid; place-items:center; position:relative; overflow:hidden; }
.product-detail__visual .jar { width:min(32vw,410px); min-width:280px; }
.product-detail__visual .jar-glass { min-height:390px; }
.product-detail__visual .jar-glass span { max-width:72%; }
.product-orbit { position:absolute; border:1px solid currentColor; border-radius:50%; opacity:.14; }
.product-orbit--one { width:70%; aspect-ratio:1; }
.product-orbit--two { width:88%; height:38%; transform:rotate(-18deg); }
.product-detail__copy { align-self:center; max-width:640px; padding:90px clamp(28px,6vw,90px) 70px 30px; position:relative; z-index:2; }
.back-link { display:inline-block; margin-bottom:62px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; opacity:.62; }
.product-detail__copy h1 { margin:0; font-family:Georgia,serif; font-weight:400; font-size:clamp(56px,6.8vw,108px); line-height:.92; letter-spacing:-.045em; }
.product-detail__headline { margin:28px 0 0; max-width:560px; font-family:Georgia,serif; font-size:clamp(21px,2.1vw,31px); line-height:1.25; }
.product-detail__body { max-width:540px; margin:26px 0 0; line-height:1.7; opacity:.7; }
.product-purchase { margin-top:42px; padding-top:26px; border-top:1px solid currentColor; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.product-purchase strong { display:block; font-family:Georgia,serif; font-size:28px; font-weight:400; }
.product-purchase span { display:block; margin-top:6px; font-size:11px; text-transform:uppercase; letter-spacing:.15em; opacity:.62; }
.product-pending { margin-top:18px; font-size:12px; line-height:1.5; opacity:.58; }
.product-facts { padding:clamp(90px,11vw,160px) clamp(24px,7vw,110px); display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }
.product-facts h2 { margin:18px 0 0; font-family:Georgia,serif; font-weight:400; font-size:clamp(42px,5.5vw,82px); line-height:.96; }
.product-facts dl { margin:0; border-top:1px solid rgba(26,23,21,.18); }
.product-facts dl div { display:grid; grid-template-columns:.65fr 1.35fr; gap:24px; padding:22px 0; border-bottom:1px solid rgba(26,23,21,.18); }
.product-facts dt { text-transform:uppercase; letter-spacing:.15em; font-size:10px; opacity:.55; }
.product-facts dd { margin:0; line-height:1.5; }
.product-crosssell { padding:40px clamp(24px,7vw,110px) 130px; }
.product-crosssell h2 { max-width:780px; margin:16px 0 44px; font-family:Georgia,serif; font-size:clamp(42px,6vw,86px); font-weight:400; line-height:.98; }
.product-crosssell__card { min-height:260px; padding:32px; border-radius:30px; background:#1c1614; color:#fff; display:flex; flex-direction:column; justify-content:space-between; }
.product-crosssell__card span { font-size:10px; text-transform:uppercase; letter-spacing:.16em; opacity:.58; }
.product-crosssell__card strong { font-family:Georgia,serif; font-size:clamp(42px,6vw,82px); font-weight:400; }
.product-crosssell__card em { align-self:flex-end; font-style:normal; opacity:.72; }
.product-pro { padding:80px clamp(24px,7vw,110px); background:#171413; color:#fff; display:flex; justify-content:space-between; gap:40px; align-items:end; }
.product-pro h2 { max-width:780px; margin:12px 0 0; font-family:Georgia,serif; font-size:clamp(38px,5vw,72px); font-weight:400; line-height:1; }
.product-not-found { min-height:100svh; display:grid; place-content:center; gap:22px; text-align:center; padding:30px; }
.product-not-found h1 { margin:0; font-family:Georgia,serif; font-weight:400; font-size:clamp(50px,8vw,110px); }
.mobile-buy-bar { display:none; }
@media (max-width:900px) {
  .product-detail { grid-template-columns:1fr; }
  .product-detail__visual { min-height:58svh; padding-top:40px; }
  .product-detail__visual .jar { width:min(54vw,330px); min-width:230px; }
  .product-detail__visual .jar-glass { min-height:300px; }
  .product-detail__copy { padding:42px 24px 82px; max-width:none; }
  .back-link { margin-bottom:34px; }
  .product-facts { grid-template-columns:1fr; gap:50px; }
}
@media (max-width:640px) {
  .product-page { padding-bottom:84px; }
  .product-header { height:70px; padding:0 14px; }
  .product-header nav { gap:10px; }
  .product-header nav > a { display:none; }
  .product-detail { padding-top:70px; }
  .product-detail__visual { min-height:46svh; }
  .product-detail__visual .jar { width:min(55vw,228px); min-width:184px; }
  .product-detail__visual .jar-lid { height:30px; }
  .product-detail__visual .jar-glass { min-height:228px; height:228px; }
  .product-detail__copy { padding-top:32px; }
  .product-detail__copy h1 { font-size:clamp(52px,15vw,72px); }
  .product-detail__headline { font-size:21px; }
  .product-purchase { align-items:flex-end; }
  .product-purchase .button { padding-inline:18px; font-size:9px; }
  .product-facts { padding-inline:22px; }
  .product-facts dl div { grid-template-columns:1fr; gap:8px; }
  .product-crosssell { padding-inline:22px; }
  .product-crosssell__card { min-height:220px; }
  .product-pro { padding-inline:22px; align-items:flex-start; flex-direction:column; }
  .product-pro .button { width:100%; }
  .mobile-buy-bar {
    position:fixed; z-index:880; left:10px; right:10px; bottom:calc(10px + env(safe-area-inset-bottom));
    min-height:68px; padding:10px 10px 10px 16px; border:1px solid rgba(255,255,255,.18); border-radius:22px;
    background:rgba(22,18,16,.92); color:#fff; backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
    display:flex; align-items:center; justify-content:space-between; gap:12px; box-shadow:0 18px 50px rgba(0,0,0,.28);
  }
  .mobile-buy-bar strong { display:block; font-family:Georgia,serif; font-size:16px; font-weight:400; }
  .mobile-buy-bar span { display:block; max-width:195px; margin-top:3px; font-size:9px; text-transform:uppercase; letter-spacing:.08em; opacity:.62; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .mobile-buy-bar .button { min-height:46px; padding:0 18px; background:#f6efe5; color:#171311; font-size:9px; }
  body.cart-open .mobile-buy-bar { opacity:0; pointer-events:none; }
}
