@font-face {
  font-family: "Pinyon Script";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/pinyon-latin.woff2") format("woff2");
}

:root {
  --ink: #181711;
  --paper: #f4f0e7;
  --paper-deep: #ece7dc;
  --gold: #b69a5d;
  --book-w: 980px;
  --book-h: 620px;
}

* { box-sizing: border-box; }
html, body { width: 100%; height: 100%; min-height: 100%; overflow: hidden; }

body {
  margin: 0;
  color: var(--paper);
  background:
    radial-gradient(circle at 50% 40%, rgba(118, 99, 65, .16), transparent 35%),
    repeating-linear-gradient(100deg, rgba(255,255,255,.012) 0 1px, transparent 1px 4px),
    #171611;
  font-family: "Manrope", sans-serif;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 1000;
  pointer-events: none;
  opacity: .13;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
}

.catalog-shell { min-height: 100vh; padding: 24px 42px 30px; }
.masthead {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 13px;
  border-bottom: 1px solid rgba(238,228,209,.2);
}
.wordmark {
  display: block;
  width: 160px;
  color: var(--paper);
  text-decoration: none;
  filter: brightness(0) saturate(100%) invert(94%) sepia(10%) saturate(473%) hue-rotate(344deg) brightness(103%);
  transition: opacity .25s ease;
}
.wordmark:hover { opacity: .82; }
.wordmark img {
  display: block;
  width: 100%;
  height: auto;
}

.viewer { position: relative; padding-top: 20px; }
.viewer-email {
  position: absolute;
  z-index: 20;
  top: 9px;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font: 400 8px/1.2 "Manrope", sans-serif;
  letter-spacing: .1em;
  text-decoration: none;
  transition: color .2s ease;
}
.viewer-email:hover { color: rgba(255,255,255,.78); }
.catalog-toc {
  position: absolute;
  z-index: 70;
  top: 58px;
  left: max(0px, calc(50% - var(--book-w) / 2 - 205px));
  width: 185px;
  color: rgba(244,240,231,.84);
}
.toc-mobile-panel { display: none; }
.toc-label { margin: 0 0 16px; color: rgba(244,240,231,.52); font-size: 9px; letter-spacing: .22em; text-transform: uppercase; }
.toc-collection { border-top: 1px solid rgba(244,240,231,.14); }
.toc-collection:last-child { border-bottom: 1px solid rgba(244,240,231,.14); }
.toc-collection summary {
  position: relative;
  display: grid;
  grid-template-columns: 24px minmax(0,1fr);
  gap: 8px;
  align-items: center;
  padding: 13px 0;
  cursor: pointer;
  list-style: none;
}
.toc-collection summary::-webkit-details-marker { display: none; }
.toc-collection summary .toc-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 100%;
  display: grid;
  place-items: center;
  border-left: 1px solid rgba(244,240,231,.14);
  color: var(--gold);
  font: 400 18px/1 "Manrope", sans-serif;
  letter-spacing: 0;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
@media (hover: hover) {
  .toc-collection summary .toc-toggle:hover {
    color: #fff;
    background: rgba(182,154,93,.1);
  }
}
.toc-collection summary .toc-toggle::before { content: "+"; }
.toc-collection[open] summary .toc-toggle::before { content: "−"; }
.toc-collection summary .toc-toggle:focus-visible { outline: 1px solid #7fd6cf; outline-offset: -4px; }
.toc-collection summary .toc-index { color: var(--gold); font-size: 9px; letter-spacing: .12em; }
.toc-collection summary b { font: 500 16px/1.1 "Cormorant Garamond", serif; }
.toc-collection.is-current summary b { color: #fff; }
.toc-collection ol { margin: 0 0 10px; padding: 2px 0 0 21px; overflow: visible; border-left: 1px solid rgba(182,154,93,.22); list-style: none; }

.toc-collection[data-start="2"] ol {
  max-height: 420px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(182,154,93,.65) transparent;
}
.toc-collection li { margin: 0; }
.toc-collection button { width: 100%; display: flex; gap: 10px; align-items: baseline; border: 0; padding: 7px 0; color: rgba(244,240,231,.65); background: transparent; font: 400 10.5px/1.3 "Manrope", sans-serif; text-align: left; cursor: pointer; }
.toc-collection button span { flex: 0 0 19px; color: rgba(182,154,93,.72); font-size: 8px; letter-spacing: .1em; }
.toc-collection button:hover,
.toc-collection button.is-active { color: #fff; }
.toc-collection button.is-active span { color: #7fd6cf; }
.toc-collection summary:focus-visible,
.toc-collection button:focus-visible { outline: 1px solid #7fd6cf; outline-offset: 3px; }


.book-stage {
  position: relative;
  z-index: 2;
  width: var(--book-w);
  height: var(--book-h);
  margin: 26px auto 0;
  perspective: 2600px;
  touch-action: none;
}

body.is-auto-flipping .book-stage { pointer-events: none; }
body.is-auto-flipping .toc-collection button { cursor: wait; }

.page-flow {
  position: absolute;
  z-index: 30;
  inset: 0;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
  perspective: 2600px;
  transform-style: preserve-3d;
  transition: opacity .14s ease, visibility 0s linear .14s;
}
.page-flow i {
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
  opacity: 0;
  backface-visibility: visible;
  background: linear-gradient(90deg, rgba(9,37,35,.2), rgba(255,255,255,.58) 46%, rgba(232,225,209,.38) 72%, rgba(8,28,26,.15));
  border: 1px solid rgba(244,240,231,.2);
  box-shadow: 0 0 16px rgba(0,0,0,.16);
  will-change: transform, opacity;
}
body.is-auto-flipping .page-flow {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}
body.is-auto-flipping.flip-forward .page-flow i {
  left: 50%;
  transform-origin: left center;
  animation: page-flow-forward 500ms cubic-bezier(.42,0,.58,1) infinite;
  animation-delay: calc(var(--flow-index) * -71ms);
}
body.is-auto-flipping.flip-backward .page-flow i {
  left: 0;
  transform-origin: right center;
  animation: page-flow-backward 500ms cubic-bezier(.42,0,.58,1) infinite;
  animation-delay: calc(var(--flow-index) * -71ms);
}

@keyframes page-flow-forward {
  0% { opacity: 0; transform: rotateY(0deg) translateZ(0); }
  10% { opacity: .12; }
  42% { opacity: .36; }
  55% { opacity: .48; transform: rotateY(-102deg) translateZ(18px); }
  88% { opacity: .14; }
  100% { opacity: 0; transform: rotateY(-180deg) translateZ(0); }
}

@keyframes page-flow-backward {
  0% { opacity: 0; transform: rotateY(0deg) translateZ(0); }
  10% { opacity: .12; }
  42% { opacity: .36; }
  55% { opacity: .48; transform: rotateY(102deg) translateZ(18px); }
  88% { opacity: .14; }
  100% { opacity: 0; transform: rotateY(180deg) translateZ(0); }
}

.flipbook { width: var(--book-w); height: var(--book-h); visibility: hidden; user-select: none; -webkit-user-select: none; }
 .flipbook.is-ready { visibility: visible; }
.flipbook.shadow { box-shadow: 0 24px 42px rgba(0,0,0,.33); }
.flipbook .page-wrapper { perspective: 2200px; }
.flipbook .page {
  width: calc(var(--book-w) / 2);
  height: var(--book-h);
  overflow: hidden;
  color: var(--ink);
  background-color: var(--paper);
  border: 0;
  box-shadow: none;
}
.flipbook .page::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 30;
  pointer-events: none;
  opacity: .25;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.5' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='.11'/%3E%3C/svg%3E");
  mix-blend-mode: multiply;
}
.flipbook .page-content { position: absolute; inset: 0; overflow: hidden; }
.flipbook .even:not(.hard)::before {
  content: "";
  position: absolute;
  z-index: 25;
  top: 0;
  right: 0;
  bottom: 0;
  width: 1px;
  background: rgba(0,0,0,.82);
  pointer-events: none;
}

.flipbook .cover,
.flipbook .back-cover { color: #fff8df; background: #7cc5c2 !important; border: 1px solid #d9b85d; }
.cover { box-shadow: none; }
.cover .page-content { padding: 0; }
.cover-art { width: 100%; height: 100%; display: block; object-fit: cover; }

.folio { position: absolute; z-index: 31; right: 7%; bottom: 3%; font: 500 6px/1 "Manrope", sans-serif; letter-spacing: .1em; }
.flipbook .even .folio { left: 7%; right: auto; }
.section-no { margin: 0; color: #94763e; font-size: 9px; letter-spacing: .2em; text-transform: uppercase; }

.flipbook .intro-page {
  color: #f5f0e5;
  background: #090b0b;
}
.intro-page .page-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 9% 10% 8%;
  background:
    radial-gradient(circle at 78% 34%, rgba(54,191,189,.09), transparent 30%),
    linear-gradient(150deg, #111412 0%, #090b0b 58%, #060707 100%);
  box-shadow: inset 0 0 0 1px rgba(73,200,198,.16);
}
.intro-page .section-no {
  color: #56c9c6;
  letter-spacing: .24em;
}
.intro-copy {
  margin: auto 0;
  padding: 10% 0 6%;
}
.intro-copy .dropcap {
  max-width: 12em;
  margin: 0 0 26px;
  color: #f5f0e5;
  font: 400 clamp(25px,2.35vw,38px)/1.02 "Cormorant Garamond", serif;
  text-wrap: balance;
}
.intro-copy p:last-child {
  max-width: 31em;
  margin: 0;
  padding-top: 20px;
  color: rgba(245,240,229,.58);
  border-top: 1px solid rgba(86,201,198,.28);
  font-size: clamp(8.5px,.72vw,11px);
  line-height: 1.78;
}
.signature {
  width: clamp(108px,12vw,148px);
  margin-bottom: 1%;
  filter: brightness(0) saturate(100%) invert(94%) sepia(10%) saturate(473%) hue-rotate(344deg) brightness(103%);
}
.signature img {
  display: block;
  width: 100%;
  height: auto;
}

.chapter-page .page-content { padding: 10%; display: flex; flex-direction: column; background: linear-gradient(145deg, #ede8dc, #f7f4ed 58%, #e7ded0); }
.chapter-copy { margin: auto 0; position: relative; }
.chapter-copy > span { position: absolute; right: 0; top: -45px; color: rgba(50,190,187,.28); font: 500 150px/.7 "Cormorant Garamond", serif; }
.chapter-copy h2 { position: relative; margin: 0 0 24px; font: 500 clamp(40px,4vw,62px)/.8 "Cormorant Garamond", serif; }
.chapter-copy p, .chapter-note { color: #625c51; font-size: 10px; line-height: 1.7; }
.chapter-note { width: 70%; margin: 0 0 7%; }

.product-page { --accent: #91754c; --title-accent: #c99a35; }
.tone-cognac { --accent: #9d612f; --wash: #f2ebe2; --title-accent: #e66a20; }
.tone-rose { --accent: #ae7888; --wash: #f1e9e8; --title-accent: #e84d86; }
.tone-ruby { --accent: #922b35; --wash: #efe6e4; --title-accent: #e21f3d; }
.tone-emerald { --accent: #256653; --wash: #e7ede9; --title-accent: #1fba78; }
.tone-pearl { --accent: #8c8069; --wash: #efede7; --title-accent: #ffffff; }
.tone-azure { --accent: #376a8e; --wash: #e6ecef; --title-accent: #278fd8; }
.tone-paraiba { --accent: #278a92; --wash: #e4eeee; --title-accent: #00bfc1; }
.tone-sun { --accent: #b58a27; --wash: #f1eddf; --title-accent: #e9b900; }
.tone-champagne { --accent: #a47c45; --wash: #f0e9de; --title-accent: #c99743; }

.product-hero .page-content { display: flex; flex-direction: column; gap: 0; padding: 6.5% 7% 5.5%; background: linear-gradient(168deg, var(--wash) 0 44%, var(--paper) 74%); }
.product-mark { position: absolute; z-index: 3; top: 5.5%; left: 7%; display: flex; align-items: baseline; gap: 5px; color: var(--accent); }
.product-mark span { font: 500 20px/1 "Cormorant Garamond", serif; }
.product-mark small { font-size: 7px; letter-spacing: .16em; text-transform: uppercase; }
.hero-visual { position: relative; flex: 1; min-height: 0; margin: 8% 0 0; overflow: hidden; background: rgba(255,255,255,.72); border: 1px solid rgba(42,32,18,.08); }
.hero-visual::before { content: ""; position: absolute; z-index: 2; inset: 10px; border: 1px solid color-mix(in srgb, var(--accent) 24%, transparent); pointer-events: none; }
.hero-visual img { width: 100%; height: 100%; display: block; object-fit: contain; transform: scale(1.015); pointer-events: none; }
.hero-visual figcaption { position: absolute; z-index: 3; right: 4%; bottom: 4%; padding: 5px 7px; color: #4b463e; background: rgba(248,247,244,.88); font-size: 6px; letter-spacing: .16em; }
.hero-copy { position: relative; min-height: 27%; padding: 5% 1% 0; }
.hero-copy::before { content: ""; position: absolute; left: 1%; top: 0; width: 38px; height: 1px; background: var(--accent); }
.hero-copy .gem { margin: 0 0 4px; color: var(--accent); font-size: 8px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.hero-copy h2 { display: inline-block; margin: 0; font: 500 clamp(24px,2.45vw,38px)/.96 "Cormorant Garamond", serif; }
.hero-copy > p:last-child { float: right; width: 48%; margin: 3px 0 0; color: #625c51; font-size: clamp(8px,.72vw,11px); line-height: 1.52; }

.product-hero.cognac-concept .hero-copy { min-height: 29%; padding-top: 4.5%; }
.product-hero.cognac-concept .page-content,
.product-detail.cognac-detail-concept .page-content {
  background:
    linear-gradient(180deg, rgba(3,31,32,.03), rgba(2,22,23,.12)),
    url("images/products/background/92b69e07-2473-4b31-8c93-4168e68d1403.webp") center / cover no-repeat;
}
.product-hero.cognac-concept .folio,
.cognac-detail-concept .folio { color: rgba(232,240,235,.72); }
.product-hero.cognac-concept .product-mark { color: rgba(232,240,235,.86); }
.product-hero.cognac-concept .hero-visual { background: #fff; }
.product-hero.rose-pivoine-concept .hero-visual {
  background: linear-gradient(180deg, rgb(244,242,243) 0%, rgb(249,247,248) 25%, rgb(251,249,249) 50%, rgb(250,248,248) 75%, rgb(249,247,247) 100%);
}
.product-hero.champagne-vendome-concept .hero-visual {
  background: linear-gradient(180deg, rgb(249,249,249) 0%, rgb(250,250,249) 50%, rgb(249,248,248) 100%);
}
.product-hero.cognac-concept .hero-copy::before {
  background: #83c5be;
  width: 54px;
}
.product-hero.cognac-concept .hero-copy h2 {
  display: block;
  color: #f5f2e9;
  font-family: "Prata", "Times New Roman", serif;
  font-size: clamp(38px,3.1vw,49px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.045em;
}
.hero-title-accent { color: var(--title-accent); text-shadow: 0 1px 0 rgba(0,0,0,.14); }
.product-hero.cognac-concept .hero-copy > .hero-description {
  float: none;
  width: auto;
  margin: 13px 0 0;
  color: rgba(242,240,232,.84);
  font-size: clamp(8px,.68vw,10px);
  line-height: 1.5;
  letter-spacing: .01em;
}
.product-hero.cognac-concept .hero-description span { display: block; }

.product-detail .page-content { display: flex; flex-direction: column; padding: 7% 7% 5%; background: linear-gradient(180deg, var(--paper), color-mix(in srgb, var(--wash) 55%, var(--paper))); }
.detail-heading { padding: 0 4% 4% 0; }
.detail-gallery { display: grid; grid-template-columns: 1fr 1fr; flex: 1; min-height: 0; gap: 7px; padding: 7px; background: rgba(255,255,255,.64); border: 1px solid rgba(42,32,18,.08); }
.detail-gallery figure { min-width: 0; min-height: 0; margin: 0; overflow: hidden; background: #fff; }
.detail-gallery img { width: 100%; height: 100%; display: block; object-fit: contain; pointer-events: none; }
.spec-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 8%; margin: 4% 0 0; border-top: 1px solid rgba(42,32,18,.18); }
.spec-grid div { display: flex; justify-content: space-between; gap: 8px; padding: 6px 0 5px; border-bottom: 1px solid rgba(42,32,18,.09); }
.spec-grid dt { color: #88785f; font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.spec-grid dd { margin: 0; color: #302d27; font-size: 8px; font-weight: 600; text-align: right; }

.product-detail .detail-gallery { flex: 0 0 62%; }
.product-detail .spec-grid { gap: 0 6%; margin-top: 5%; }
.product-detail .spec-grid div { padding: 8px 0 7px; }
.product-detail .spec-grid dt { font-size: 8.5px; line-height: 1.3; }
.product-detail .spec-grid dd { font-size: 10px; line-height: 1.3; }

.cognac-detail-concept { --tiffany: #65bbb4; --tiffany-deep: #397f7a; }
.cognac-detail-concept .detail-heading {
  display: flex;
  align-items: center;
}
.cognac-detail-concept .detail-sku {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: rgba(224,239,234,.86);
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .18em;
}
.cognac-detail-concept .detail-sku::after {
  content: "";
  width: 34px;
  height: 1px;
  background: var(--tiffany);
}
.cognac-detail-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  flex: 1;
  min-height: 0;
  gap: 7px;
}
.cognac-detail-column {
  display: grid;
  min-width: 0;
  min-height: 0;
  gap: 7px;
}
.cognac-detail-primary { grid-template-rows: minmax(0,1fr) 104px; }
.cognac-detail-secondary { grid-template-rows: 48px minmax(0,1fr) 49px; }
.cognac-detail-image {
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(42,32,18,.08);
}
.cognac-detail-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
}
.cognac-price-feature {
  display: flex;
  align-items: end;
  justify-content: space-between;
  padding: 0 3px 7px;
  border-bottom: 1px solid var(--tiffany);
}
.cognac-price-feature > span {
  color: #9ad5ce;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
 .cognac-price-feature p {
   display: flex;
   flex: 0 0 auto;
   align-items: baseline;
   gap: 5px;
   margin: 0;
   color: #f5f2e9;
   white-space: nowrap;
 }
.cognac-price-feature strong { font: 400 17px/1 "Prata", "Times New Roman", serif; }
.cognac-price-feature small { color: rgba(235,240,234,.76); font-size: 7px; font-weight: 600; letter-spacing: .12em; }
.cognac-detail-specs {
  display: grid;
  min-height: 0;
  gap: 7px;
  margin: 0;
}
.cognac-detail-specs-pair { grid-template-rows: 1fr 1fr; }
.cognac-detail-specs-single { grid-template-rows: 1fr; }
.cognac-detail-specs div {
  position: relative;
  display: flex;
  min-height: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 5px;
  padding: 8px 9px 7px 11px;
  overflow: hidden;
  border: 1px solid rgba(42,32,18,.13);
  background: rgba(255,255,255,.92);
}
.cognac-detail-specs div::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: var(--tiffany);
}
.cognac-detail-specs dt {
  color: #302d27;
  font-size: 7px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.cognac-detail-specs dd {
  margin: 0;
  color: #25221e;
  font: 400 11px/1.08 "Prata", "Times New Roman", serif;
  text-align: left;
}
.cognac-detail-specs-single div { gap: 3px; padding: 5px 9px 5px 11px; }
.cognac-detail-specs-single dd { font-size: 11px; }
.cognac-detail-concept .spec-grid {
  gap: 7px;
  margin-top: 4%;
  border: 0;
}
.cognac-detail-concept .spec-grid div {
  position: relative;
  display: flex;
  min-height: 64px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  padding: 12px 13px 11px 15px;
  overflow: hidden;
  border: 1px solid rgba(42,32,18,.13);
  background: rgba(255,255,255,.58);
}
.cognac-detail-concept .spec-grid div::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: var(--tiffany);
}
.cognac-detail-concept .spec-grid div::after { content: none; }
.cognac-detail-concept .spec-grid dt {
  color: #302d27;
  font-size: 8.5px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .11em;
}
.cognac-detail-concept .spec-grid dd {
  margin: 0;
  color: #25221e;
  font: 400 14px/1.08 "Prata", "Times New Roman", serif;
  text-align: left;
}

.jolanta-intro-page,
.jolanta-product-page { color: #f7f2e8 !important; background: #08100f !important; border-color: rgba(127,214,207,.24) !important; }
.jolanta-intro-page .page-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 10%;
  background:
    radial-gradient(circle at 88% 20%, rgba(127,214,207,.16), transparent 34%),
    linear-gradient(155deg, #101817, #070a0a 72%);
}
.jolanta-intro-page .section-no,
.jolanta-chapter-page .section-no { color: #3a918b; }
.jolanta-intro-page .folio,
.jolanta-product-page .folio { color: rgba(127,214,207,.75); }
.jolanta-intro-copy { margin: auto 0; }
.jolanta-kicker,
.jolanta-script { margin: 0; color: #7fd6cf; font: italic 400 clamp(37px,4vw,62px)/.8 "Cormorant Garamond", serif; }
.jolanta-intro-copy h2 { margin: 19px 0 22px; max-width: 10em; font: 400 clamp(28px,3vw,46px)/.96 "Cormorant Garamond", serif; }
.jolanta-intro-copy > p:last-child { max-width: 30em; margin: 0; color: rgba(247,242,232,.58); font-size: clamp(9px,.8vw,12px); line-height: 1.8; }
.jolanta-commission { margin: 0 0 5%; padding-top: 16px; color: rgba(247,242,232,.48); border-top: 1px solid rgba(127,214,207,.3); font-size: 7px; letter-spacing: .14em; text-transform: uppercase; }

.jolanta-chapter-page .page-content {
  display: flex;
  flex-direction: column;
  padding: 10%;
  background:
    linear-gradient(145deg, rgba(127,214,207,.1), transparent 40%),
    linear-gradient(145deg, #e8ece7, #f7f4ed 58%, #dce5df);
}
.jolanta-chapter-copy { position: relative; margin: auto 0; }
.jolanta-chapter-copy > span { position: absolute; top: -62px; right: -4px; color: rgba(47,145,139,.12); font: 500 150px/.7 "Cormorant Garamond", serif; }
.jolanta-chapter-copy .jolanta-script { position: relative; color: #308e88; }
.jolanta-chapter-copy h2 { position: relative; margin: 8px 0 24px; font: 500 clamp(42px,4.2vw,65px)/.8 "Cormorant Garamond", serif; }
.jolanta-chapter-copy > p:last-child { color: #39716d; font-size: 8px; letter-spacing: .16em; text-transform: uppercase; }
.jolanta-chapter-page .chapter-note { width: 82%; color: #5d6863; }

.jolanta-product-page .page-content {
  display: flex;
  flex-direction: column;
  padding: 6.5% 7% 5%;
  background:
    radial-gradient(circle at 100% 0, rgba(127,214,207,.1), transparent 30%),
    linear-gradient(165deg, #111918, #080c0c 72%);
}
.jolanta-object-head { display: flex; align-items: center; justify-content: space-between; color: #7fd6cf; font-size: 7px; letter-spacing: .17em; text-transform: uppercase; }
.jolanta-object-head p { margin: 0; }
.jolanta-object-head span { color: rgba(247,242,232,.42); }
.jolanta-visual { position: relative; flex: 1; min-height: 0; margin: 4% 0 0; overflow: hidden; background: #fbfbfa; border: 1px solid rgba(127,214,207,.32); }
.jolanta-visual::after { content: ""; position: absolute; inset: 8px; border: 1px solid rgba(8,16,15,.08); pointer-events: none; }
.jolanta-visual img { width: 100%; height: 100%; display: block; object-fit: contain; pointer-events: none; }
.jolanta-visual figcaption { position: absolute; z-index: 2; right: 4%; bottom: 4%; padding: 5px 7px; color: #315f5b; background: rgba(251,251,250,.9); font-size: 6px; letter-spacing: .14em; text-transform: uppercase; }
.jolanta-object-copy { padding-top: 3.5%; }
.jolanta-object-copy h2 { margin: 0; color: #f7f2e8; font: 400 clamp(24px,2.45vw,37px)/.96 "Cormorant Garamond", serif; }
.jolanta-concept-01 .jolanta-object-head p {
  color: #fff;
  font: 500 16px/1 "Cormorant Garamond", serif;
  letter-spacing: .055em;
  text-transform: none;
}
.jolanta-concept-01 .jolanta-visual { flex: 0 0 71%; }
.jolanta-concept-01 .folio { display: none; }
.jolanta-concept-01 .jolanta-visual img { transform: scale(1.22); }
.jolanta-concept-01 .jolanta-object-copy { padding-top: 1.5%; }
.jolanta-concept-01 .jolanta-specs { gap: 8px; margin-top: 7px; }
.jolanta-concept-01 .jolanta-specs div { gap: 6px; padding: 9px 10px 8px; }
.jolanta-concept-01 .jolanta-specs dt {
  font-size: 8px;
  font-weight: 600;
  letter-spacing: .1em;
}
.jolanta-concept-01 .jolanta-specs dd { font-size: 17px; }
.jolanta-concept-01 .jolanta-specs dd span { font-size: 9px; }
.jolanta-concept-01 .jolanta-specs div:last-child {
  display: flex;
  min-height: 36px;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  padding: 9px 12px 8px;
  border: 0;
  border-top: 1px solid rgba(204,216,218,.48);
  background: linear-gradient(135deg, rgba(218,227,228,.07), rgba(218,227,228,.015));
  box-shadow: none;
  white-space: nowrap;
}
.jolanta-concept-01 .jolanta-specs div:last-child dt {
  flex: 0 0 auto;
  color: #f7f2e8;
  font-size: 8px;
  font-weight: 700;
}
.jolanta-concept-01 .jolanta-specs div:last-child dd {
  color: rgba(247,242,232,.82);
  font-size: 10px;
  line-height: 1.3;
  text-align: left;
}
.jolanta-specs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin: 9px 0 0; }
.jolanta-specs div { display: grid; gap: 5px; min-width: 0; padding: 8px 10px 7px; background: linear-gradient(135deg, rgba(247,242,232,.05), rgba(247,242,232,.015)); border-top: 1px solid rgba(127,214,207,.52); }
.jolanta-specs div:first-child { background: linear-gradient(135deg, rgba(182,154,93,.09), rgba(182,154,93,.015)); border-top-color: rgba(182,154,93,.72); }
.jolanta-specs div:last-child { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 5px 0 0; background: transparent; border-top-color: rgba(247,242,232,.12); }
.jolanta-specs dt { color: rgba(127,214,207,.86); font-size: 6px; line-height: 1.25; letter-spacing: .12em; text-transform: uppercase; }
.jolanta-specs div:first-child dt { color: rgba(220,196,140,.92); }
.jolanta-specs dd { margin: 0; color: #f7f2e8; font: 500 13.5px/1 "Cormorant Garamond", serif; font-variant-numeric: tabular-nums; text-align: left; }
.jolanta-specs dd span { margin-right: 4px; color: #7fd6cf; font: 600 7px/1 "Manrope", sans-serif; vertical-align: .18em; }
.jolanta-specs div:first-child dd span { color: #d8bd7e; }
.jolanta-specs div:last-child dt { flex: 0 0 auto; }
.jolanta-specs div:last-child dd { color: rgba(247,242,232,.56); font: 500 6.5px/1.2 "Manrope", sans-serif; text-align: right; }

.jolanta-template-page .page-content { padding: 0; background: #020807; }
.jolanta-template-page img { width: 100%; height: 100%; display: block; object-fit: contain; pointer-events: none; }
.jolanta-price-pair {
  position: absolute;
  right: 4.2%;
  bottom: 3.8%;
  left: 4.2%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.2%;
  pointer-events: none;
}
.jolanta-price-card {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: calc(var(--book-w) * .008);
  min-width: 0;
  min-height: calc(var(--book-h) * .068);
  margin: 0;
  padding: calc(var(--book-h) * .0085) calc(var(--book-w) * .013);
  overflow: hidden;
  background: linear-gradient(115deg, rgba(2,8,8,.88), rgba(1,7,7,.72));
  border: 1px solid rgba(219,191,125,.72);
  box-shadow: inset 0 0 0 1px rgba(255,240,201,.04), 0 8px 24px rgba(0,0,0,.22);
}
.jolanta-price-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-top: 1px solid rgba(255,239,195,.18);
  opacity: .72;
}
.jolanta-price-card--laboratory {
  border-color: rgba(72,190,194,.76);
  background: linear-gradient(115deg, rgba(1,11,12,.9), rgba(1,10,11,.7));
  box-shadow: inset 0 0 0 1px rgba(93,220,222,.035), 0 8px 24px rgba(0,0,0,.22);
}
.jolanta-price-card--laboratory::after { border-top-color: rgba(88,216,219,.19); }
.jolanta-price-card dt {
  position: relative;
  z-index: 1;
  color: #d8c28f;
  font: 500 calc(var(--book-h) * .0115)/1.2 "Manrope", sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
  grid-column: 2;
  grid-row: 1;
  justify-self: end;
  white-space: nowrap;
  text-align: right;
}
.jolanta-price-card--laboratory dt { color: #64c9cc; }
.jolanta-price-card dd {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: baseline;
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  color: #ead6a6;
  font: 400 calc(var(--book-h) * .027)/1 "Prata", serif;
  letter-spacing: .08em;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.jolanta-price-card--laboratory dd { color: #63cbd0; }
.jolanta-price-card dd span {
  margin-left: .12em;
  font-size: .78em;
  letter-spacing: 0;
}

.closing-page .page-content { padding: 10%; display: flex; flex-direction: column; }
.closing-page blockquote { margin: auto 0 22px; color: #2d392f; font: italic 400 clamp(24px,2.7vw,43px)/1.08 "Cormorant Garamond", serif; }
.closing-copy { width: 82%; margin: 0 0 auto; color: #625c51; font-size: clamp(8px,.72vw,11px); line-height: 1.75; }
.appointment { display: flex; justify-content: space-between; align-items: end; padding-top: 18px; border-top: 1px solid #bcae93; color: #6f685e; font-size: 7px; letter-spacing: .13em; text-transform: uppercase; }
.back-cover { box-shadow: inset -10px 0 18px rgba(21,83,82,.16) !important; }
.back-cover .page-content { padding: 0; }
.back-cover-art { width: 100%; height: 100%; display: block; object-fit: cover; }

.drag-hint {
  position: absolute;
  z-index: 80;
  top: calc(100% + 10px);
  right: 0;
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgba(248,241,222,.54);
  font-size: 6.5px;
  font-weight: 500;
  letter-spacing: .16em;
  pointer-events: none;
  text-transform: uppercase;
  white-space: nowrap;
  transition: right .45s ease;
}
body.is-last-page .drag-hint {
  opacity: 0;
  visibility: hidden;
}
.drag-hint > i {
  position: relative;
  top: -14px;
  width: 28px;
  transform-origin: right center;
  transform: rotate(-24deg);
  height: 1px;
  background: linear-gradient(90deg, rgba(182,154,93,.28), #d4b36b, rgba(182,154,93,.28));
  animation: hint 2.4s ease-in-out infinite;
}
.drag-hint > i::after {
  content: "";
  position: absolute;
  top: -3px;
  right: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #d4b36b;
  border-right: 1px solid #d4b36b;
  transform: rotate(45deg);
}
@keyframes hint { 50% { opacity: .58; } }
@keyframes corner-hint {
  0%, 100% { translate: 2.5px 1.1px; }
  50% { translate: -2.5px -1.1px; }
}
@media (min-width: 761px) {
  .drag-hint {
    top: calc(100% + 14px);
    right: auto;
    left: calc(100% + 8px);
    gap: 14px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
    text-shadow: 0 1px 8px rgba(0,0,0,.72);
    transition: left .45s ease;
  }
  .drag-hint > i {
    order: -1;
    top: -21.5px;
    width: 56px;
    height: 2px;
    transform: rotate(24deg);
    transform-origin: left center;
    background: linear-gradient(90deg, #e1c680, #d4b36b 42%, rgba(212,179,107,.3));
    animation: corner-hint 1.8s ease-in-out infinite;
  }
  .drag-hint > i::after {
    top: -4px;
    right: auto;
    left: 0;
    width: 8px;
    height: 8px;
    border: 0;
    border-bottom: 2px solid #d4b36b;
    border-left: 2px solid #d4b36b;
    transform: rotate(45deg);
  }
  body.is-cover-page .drag-hint { left: calc(75% + 8px); }
  body.is-cover-page .controls button#next { transform: translateX(-270px); }
}
.jolanta-update-name {
  position: absolute;
  z-index: 2;
  left: 7%;
  bottom: 13%;
  margin: 0;
  color: #f2ead8;
  font: 400 clamp(18px,2.2vw,31px)/1 "Cormorant Garamond", serif;
  letter-spacing: .03em;
  text-shadow: 0 2px 10px rgba(0,0,0,.5);
}
.jolanta-update-name::before {
  content: "";
  display: block;
  width: 42px;
  height: 1px;
  margin-bottom: 8px;
  background: #d8bd7e;
}
.jolanta-update-page {
  overflow: hidden;
}
.jolanta-update-page .page-content {
  position: absolute;
  inset: 0;
  overflow: hidden;
  padding: 0;
}
.jolanta-update-page--right .page-content {
  background:
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.2)),
    url("images/jolanta%20update/right.webp") center / cover no-repeat;
}
.jolanta-update-page .folio {
  color: rgba(226,199,135,.82);
}
.jolanta-update-page--right .folio {
  right: 7%;
  left: auto;
}

/* Royal Collection: larger editorial type and horizontal specifications. */
.product-hero.cognac-concept:not(.jolanta-royal-layout--left) .hero-copy h2 {
  font-size: clamp(45px,3.65vw,58px);
}
.product-hero.cognac-concept:not(.jolanta-royal-layout--left) .hero-copy > .hero-description {
  font-size: clamp(10px,.82vw,12px);
  line-height: 1.55;
}
.product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs div {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 12px 7px 13px;
}
 .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs dt {
   flex: 0 0 auto;
   font-size: 9.18px;
   letter-spacing: .12em;
 }

.royal-new .hero-copy {
  min-height: 34%;
}
.royal-new .hero-copy h2 {
  color: #f5f2e9;
  font-size: clamp(45px,3.65vw,58px);
  font-weight: 500;
}
.royal-new .hero-copy > .hero-description {
  display: block;
  width: 88%;
  margin-top: 8px;
  font-size: clamp(9px,.7vw,10.5px);
  line-height: 1.4;
}
 .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs dd {
   margin-left: auto;
   font-size: 15px;
   text-align: right;
   white-space: nowrap;
 }
 .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs-single dd {
   font-size: 13.8px;
 }
@media (min-width: 761px) {
   .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs dt {
     font-size: 10.26px;
   }
   .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs dd {
     font-size: 16.8px;
   }
   .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs-single dd {
     font-size: 15.6px;
   }
 }
/* Jolanta reuses the Royal Collection page system one-to-one; only the paired backgrounds differ. */
.product-hero.cognac-concept.jolanta-royal-layout--left .page-content {
  background:
    linear-gradient(180deg, rgba(3,31,32,.03), rgba(2,22,23,.12)),
    url("images/jolanta%20update/left.webp") center / cover no-repeat;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .page-content {
  background:
    linear-gradient(180deg, rgba(3,31,32,.03), rgba(2,22,23,.12)),
    url("images/jolanta%20update/right.webp") center / cover no-repeat;
}
.product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy {
  padding-right: 0;
  padding-left: 0;
}
.product-hero.cognac-concept.jolanta-01 .hero-copy h2 {
  font-size: clamp(46.1px,4.61vw,69.1px);
}
.product-hero.cognac-concept.jolanta-01 .hero-copy h2 .jolanta-title-name,
.product-hero.cognac-concept.jolanta-01 .hero-copy h2 .jolanta-title-number {
  color: #7fd6cf;
}
.product-hero.cognac-concept.jolanta-01 .hero-copy > .hero-description {
  display: block;
  width: 72%;
  margin-top: 16px;
  padding: 4px 7px;
  background: rgba(0,0,0,.22);
  font-size: clamp(9.1px,.81vw,11.7px);
  line-height: 1.55;
}
.product-detail.cognac-detail-concept.jolanta-01 .cognac-detail-specs-single dd {
  font-size: 10.4px;
}
.product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-image {
  position: relative;
  border: 1px solid rgba(216,189,126,.76);
}
.product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-image::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 7px;
  border: 1px solid rgba(42,32,18,.14);
  pointer-events: none;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-image {
  position: relative;
  border: 1px solid rgba(216,189,126,.76);
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-image::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 7px;
  border: 1px solid rgba(42,32,18,.14);
  pointer-events: none;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-price-feature {
  justify-content: flex-end;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-price-feature strong {
  color: #81d8d0;
  text-shadow: 0 0 12px rgba(129,216,208,.24);
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs div {
  border: 1px solid rgba(122,201,194,.32);
  background:
    linear-gradient(135deg, rgba(255,255,255,.035), transparent 46%),
    linear-gradient(150deg, #0b1514, #030706 72%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 7px 18px rgba(0,0,0,.28);
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs div::before {
  width: 3px;
  background: linear-gradient(180deg, #d8bd7e, #69c7c0);
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs div::after {
  content: "";
  position: absolute;
  top: 8px;
  right: 9px;
  width: 17px;
  height: 1px;
  background: rgba(216,189,126,.74);
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs dt {
  color: rgba(245,242,233,.68);
  font-weight: 600;
  letter-spacing: .14em;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs dd {
  color: #fffaf0;
  font-size: 13px;
  text-shadow: 0 1px 8px rgba(255,255,255,.08);
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-single div {
  justify-content: center;
}
.controls {
  width: var(--book-w);
  margin: 17px auto 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.controls button {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  gap: 8px;
  border: 0;
  padding: 5px 0;
  color: rgba(244,240,231,.72);
  background: transparent;
  font: 500 8px/1 "Manrope", sans-serif;
  letter-spacing: .18em;
  cursor: pointer;
  text-transform: uppercase;
}
.controls button span {
  display: inline-grid;
  width: 24px;
  height: 24px;
  place-items: center;
  color: #d4b36b;
  border: 1px solid rgba(182,154,93,.38);
  border-radius: 50%;
  background: rgba(182,154,93,.035);
  font-size: 13px;
  line-height: 1;
  transition: border-color .2s ease, background .2s ease;
}
.controls button:disabled { opacity: .2; cursor: default; }
.controls button:not(:disabled):hover { color: #fff; }
.controls button:not(:disabled):hover span {
  border-color: rgba(212,179,107,.82);
  background: rgba(182,154,93,.1);
}
.progress { width: 150px; display: flex; gap: 10px; align-items: center; color: rgba(244,240,231,.55); font-size: 8px; }
.progress i { flex: 1; height: 1px; overflow: hidden; background: rgba(244,240,231,.18); }
.progress b { display: block; width: 2%; height: 100%; background: var(--gold); transition: width .45s ease; }

@media (max-width: 1600px) {
  .viewer-email { top: 9px; }
  .catalog-toc { top: 36px; right: 0; left: 0; width: auto; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 8px; }
  .toc-label { display: none; }
  .toc-collection { position: relative; width: auto; border: 1px solid rgba(244,240,231,.16); background: rgba(16,15,12,.92); }
  .toc-collection summary { padding: 12px 45px 12px 12px; }
  .toc-collection summary .toc-toggle { right: 0; }
  .toc-collection ol { position: absolute; z-index: 80; top: calc(100% + 5px); left: 0; width: 250px; margin: 0; padding: 11px 14px 12px 33px; background: rgba(16,15,12,.97); border: 1px solid rgba(244,240,231,.16); box-shadow: 0 16px 32px rgba(0,0,0,.4); }
  .toc-collection:last-child ol { right: 0; left: auto; }
  .book-stage { margin-top: 76px; }
}

@media (max-width: 760px) {
  .catalog-shell { padding: 18px 14px 26px; }
  .wordmark { width: 89px; }
  .viewer-email { display: none; }
  .catalog-toc { top: 45px; gap: 5px; }
  .toc-collection { width: calc((100vw - 33px) / 2); }
  .toc-collection summary { grid-template-columns: 20px minmax(0,1fr); gap: 5px; padding: 11px 45px 11px 9px; }
  .toc-collection summary b { font-size: 13px; }
  .toc-collection ol { width: min(250px, calc(100vw - 28px)); }
  .book-stage { margin-top: 86px; }
  .flipbook .even:not(.hard)::before { display: none; }
  .page-flow i { width: 100%; }
  body.is-auto-flipping.flip-forward .page-flow i { left: 0; }
  .cognac-detail-concept .detail-sku { font-size: 6.5px; }
  .cognac-detail-concept .spec-grid { gap: 4px; margin-top: 3%; }
  .cognac-detail-concept .spec-grid div { min-height: 51px; gap: 5px; padding: 8px 9px 7px 10px; }
  .cognac-detail-concept .spec-grid dt { font-size: 6.5px; }
  .cognac-detail-concept .spec-grid dd { font-size: 11.5px; }
  .hero-copy h2 { font-size: clamp(20px,8vw,30px); }
  .hero-copy > p:last-child { width: 50%; font-size: 8px; line-height: 1.38; }
  .product-hero.cognac-concept .hero-copy { min-height: 30%; }
  .product-hero.cognac-concept .hero-copy h2 { font-size: clamp(33px,9.5vw,42px); }
  .product-hero.cognac-concept .hero-copy > .hero-description { width: auto; margin-top: 9px; font-size: 7.5px; line-height: 1.45; }
  .product-hero.cognac-concept:not(.jolanta-royal-layout--left) .hero-copy h2 { font-size: clamp(36px,10.5vw,41px); }
  .product-hero.cognac-concept:not(.jolanta-royal-layout--left) .hero-copy > .hero-description { font-size: 8.5px; line-height: 1.45; }
  .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs div { gap: 2px; padding: 6px 4px 6px 8px; }
  .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs dt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 7.78px;
    line-height: 1.15;
    letter-spacing: .02em;
    white-space: normal;
  }
  .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs dd {
    flex: 0 0 auto;
    font-size: 12.6px;
  }
  .product-detail.cognac-detail-concept:not(.jolanta-royal-layout--right) .cognac-detail-specs-single dd {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 10.2px;
    line-height: 1.15;
    white-space: normal;
  }
  .product-detail .page-content { padding: 7% 6% 4%; }
  .detail-heading { padding-bottom: 3%; }
  .detail-gallery { gap: 4px; padding: 4px; }
  .spec-grid { gap: 0 5%; margin-top: 3%; }
  .spec-grid div { padding: 4px 0 3px; }
  .spec-grid dt { font-size: 6px; }
  .spec-grid dd { font-size: 7px; }
  .jolanta-intro-copy h2 { margin: 12px 0; }
  .jolanta-commission { padding-top: 10px; }
  .jolanta-product-page .page-content { padding: 5.5% 6% 4%; }
@media (max-width: 760px) {
  .product-hero.cognac-concept.jolanta-01 .hero-copy h2 {
    font-size: clamp(39.6px,11.4vw,50.4px);
  }
  .product-hero.cognac-concept.jolanta-01 .hero-copy > .hero-description {
    font-size: clamp(9.75px,.806vw,11.7px);
  }
}
  .jolanta-visual { margin-top: 3%; }
  .jolanta-object-copy { padding-top: 3%; }
  .jolanta-object-copy h2 { font-size: clamp(21px,7vw,29px); }
  .jolanta-specs { gap: 4px; margin-top: 6px; }
  .jolanta-specs div { padding: 5px 6px 4px; }
  .jolanta-specs dd { font-size: 10px; }
  .jolanta-specs div:last-child dd { font-size: 5.5px; }
  .intro-copy .dropcap { margin-bottom: 16px; font-size: clamp(27px, 8.1vw, 34px); }
  .intro-copy p:last-child { padding-top: 14px; line-height: 1.65; }
  .signature { width: 112px; }
  .appointment span:last-child { display: none; }
  .drag-hint {
    top: calc(100% + 14px);
    right: 0;
    gap: 12px;
    color: rgba(248,241,222,.82);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .12em;
    text-shadow: 0 1px 7px rgba(0,0,0,.72);
    transform: none;
  }
  .drag-hint > i {
    top: -19px;
    width: 48px;
    height: 2px;
    background: linear-gradient(90deg, rgba(212,179,107,.3), #d4b36b 58%, #e1c680);
    animation: none;
  }
  .drag-hint > i::after {
    top: -4px;
    width: 8px;
    height: 8px;
    border-width: 1.5px;
  }
  .controls { margin-top: 26px; }
  .controls button {
    min-height: 44px;
    gap: 5px;
    font-size: 7px;
    letter-spacing: .12em;
  }
  .controls button span {
    width: 26px;
    height: 26px;
    font-size: 14px;
  }
  .progress {
    width: min(110px, 30vw);
    gap: 6px;
  }
}

.product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair div {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 12px 8px 14px;
}
.product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair div::after {
  content: none;
}
.product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair dt {
  flex: 0 1 auto;
  white-space: nowrap;
  font-size: 8.75px;
  font-weight: 700;
}
.product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair dd {
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
  white-space: nowrap;
  font-size: 16.25px;
  font-weight: 400;
}

.product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-single dd {
  font-size: 10.4px;
}

@media (max-width: 760px) {
  .product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair div {
    padding-right: 3px;
    padding-left: 3px;
    gap: 0;
    padding: 6px 3px;
}
  .product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair dt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 7.25px;
    line-height: 1.15;
    letter-spacing: -.035em;
    white-space: normal;
  }
  .product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-pair dd {
    font-size: 13.125px;
}
  .product-detail.cognac-detail-concept.jolanta-01.jolanta-royal-layout--right .cognac-detail-specs-single dd {
    max-width: 100%;
    font-size: 8px;
    line-height: 1.25;
  }
}
@media (prefers-reduced-motion: reduce) {
  .drag-hint { transition: none; }
  .drag-hint > i { animation: none; }
  .progress b { transition: none; }
  .page-flow { display: none; }
}
.product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy h2 {
  width: 100%;
  display: block;
  color: #f8f3e8;
  white-space: nowrap;
  text-shadow: 0 2px 12px rgba(0,0,0,.34);
  font-size: clamp(36px,3.1vw,48px);
}
.product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy h2 .jolanta-title-name,
.product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy h2 .jolanta-title-number {
  color: #7fd6cf;
}
.product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy > .hero-description {
  color: rgba(244,240,231,.76);
  letter-spacing: .045em;
  display: block;
  width: 72%;
  margin-top: 16px;
  padding: 4px 7px;
  background: rgba(0,0,0,.22);
  font-size: clamp(9.1px,.81vw,11.7px);
  line-height: 1.55;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-single dd {
  max-width: 88%;
  font: 700 8px/1.35 "Manrope", sans-serif;
  letter-spacing: .055em;
  font-size: 10.4px;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair div {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 12px 8px 14px;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair dt {
  flex: 0 0 66px;
  white-space: normal;
  font-size: 8.75px;
  line-height: 1.25;
  font-weight: 700;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair dd {
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
  white-space: nowrap;
  font-size: 16.25px;
  font-weight: 400;
}
.product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair div::after {
  content: none;
}
@media (max-width: 760px) {
  .product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy h2 {
    font-size: clamp(34px,9.5vw,38px);
  }
  .product-hero.cognac-concept.jolanta-royal-layout--left .hero-copy > .hero-description {
    font-size: clamp(9.75px,.806vw,11.7px);
  }
  .product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair div {
    gap: 0;
    padding: 6px 3px;
  }
  .product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair dt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 7.25px;
    line-height: 1.15;
    letter-spacing: -.035em;
    white-space: normal;
  }
  .product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair dd {
    font-size: 13.125px;
  }
  .product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-single dd {
    max-width: 100%;
    font-size: 8px;
    line-height: 1.25;
  }
}
@media (max-width: 760px) {
  .product-detail.cognac-detail-concept.jolanta-royal-layout--right .cognac-detail-specs-pair dt {
    transform: translateX(8px);
  }
}
@media (min-width: 761px) {
  .catalog-toc {
    width: 205px;
  }
  .toc-label {
    font-size: 10px;
  }
  .toc-collection summary b {
    font-size: 17.5px;
  }
  .toc-collection button {
    font-size: 11.5px;
  }
}

@media (min-width: 1000px) {
  .catalog-toc {
    top: 58px;
    left: calc(50% - var(--book-w) / 2 - 240px);
    display: block;
    width: 220px;
  }
  .toc-label {
    display: block;
    margin-bottom: 18px;
    font-size: 10.5px;
  }
  .toc-collection {
    position: static;
    width: auto;
    border: 0;
    border-top: 1px solid rgba(244,240,231,.2);
    background: transparent;
  }
  .toc-collection:last-child {
    border-bottom: 1px solid rgba(244,240,231,.2);
  }
  .toc-collection summary {
    padding: 15px 44px 15px 2px;
  }
  .toc-collection summary b {
    font-size: 19px;
  }
  .toc-collection summary .toc-index {
    font-size: 10px;
  }
  .toc-collection ol,
  .toc-collection:last-child ol {
    position: static;
    width: auto;
    margin: 0 0 13px;
    padding: 3px 0 3px 25px;
    border: 0;
    border-left: 1px solid rgba(182,154,93,.28);
    background: transparent;
    box-shadow: none;
  }
  .toc-collection button {
    gap: 11px;
    padding: 8px 0;
    font-size: 12.5px;
  }
  .toc-collection button span {
    flex-basis: 21px;
    font-size: 9px;
  }
  .book-stage {
    margin-top: 26px;
    margin-right: auto;
    margin-left: auto;
  }
}
.toc-collection .toc-coming {
  width: 100%;
  display: flex;
  gap: 11px;
  align-items: baseline;
  padding: 8px 0;
  color: rgba(244,240,231,.28);
  font: 400 12.5px/1.3 "Manrope", sans-serif;
}
.toc-collection .toc-coming > span {
  flex: 0 0 21px;
  color: rgba(182,154,93,.38);
  font-size: 9px;
  letter-spacing: .1em;
}

.engagement-preview-image .page-content {
  padding: 0;
  background: #020a12;
}
.engagement-preview-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  pointer-events: none;
}
.engagement-page.engagement-preview-copy .page-content {
  display: flex;
  flex-direction: column;
  padding: 10%;
  background:
    linear-gradient(145deg, rgba(104,201,205,.1), transparent 42%),
    linear-gradient(145deg, #edf2ee, #faf7ef 58%, #e4ebe7);
}
.engagement-preview-kicker {
  margin: 0;
  color: #388f91;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.engagement-preview-title {
  position: relative;
  margin: auto 0;
}
.engagement-preview-title > span {
  position: absolute;
  top: -58px;
  right: -4px;
  color: rgba(55,143,145,.15);
  font: 500 150px/.7 "Cormorant Garamond", serif;
}
.engagement-preview-title p,
.engagement-preview-title h2 {
  position: relative;
  margin: 0;
  font-family: "Cormorant Garamond", serif;
}
.engagement-preview-title p {
  color: #388f91;
  font-size: clamp(39px,4vw,61px);
  font-style: italic;
  line-height: .8;
}
.engagement-preview-title h2 {
  margin-top: 8px;
  color: #171510;
  font-size: clamp(42px,4.2vw,65px);
  font-weight: 500;
  line-height: .8;
}
.engagement-preview-title small {
  display: block;
  margin-top: 25px;
  color: #397174;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.engagement-preview-note {
  width: 88%;
  color: #5d6863;
}
.engagement-preview-note p {
  margin: 0 0 14px;
  font: 400 clamp(11px,1vw,14px)/1.6 "Cormorant Garamond", serif;
}
.engagement-preview-note span {
  display: block;
  padding-top: 11px;
  border-top: 1px solid rgba(56,143,145,.25);
  color: #6a7670;
  font-size: 6.5px;
  letter-spacing: .1em;
  line-height: 1.6;
  text-transform: uppercase;
}

.engagement-page {
  --engagement-ink: #34332e;
  --engagement-gold: #9b7c43;
  --engagement-line: rgba(128,105,64,.28);
  color: var(--engagement-ink);
}
.engagement-page .page-content {
  background:
    linear-gradient(rgba(249,248,240,.28), rgba(244,244,234,.28)),
    url("images/ENGAGEMENT/BACKGROUND/d764bb3c-d5a7-42f4-bf6f-ffc1d1cfaf8c.webp") center / cover no-repeat;
}
.engagement-page .folio {
  color: rgba(60,58,50,.72);
}
.engagement-hero .page-content {
  display: flex;
  flex-direction: column;
  padding: 6.5% 7% 5.5%;
}
.engagement-hero .product-mark {
  color: #171510;
}
.engagement-hero-visual {
  flex: 1;
  min-height: 0;
  margin: 8% 0 0;
  background: rgba(255,255,255,.94);
  border: 8px solid rgba(255,255,255,.8);
  box-shadow: 0 0 0 1px var(--engagement-line), 0 10px 28px rgba(91,81,56,.08);
}
.engagement-hero-visual::before {
  inset: 5px;
  border-color: rgba(155,124,67,.34);
}
.engagement-hero-visual img {
  transform: none;
}
.engagement-hero-visual figcaption {
  color: #5e584b;
  background: rgba(249,248,242,.9);
}
.engagement-hero-copy {
  min-height: 23%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 2.1% 1% 0;
}
.engagement-hero-copy h2 {
  margin: 0;
  color: #171510;
  font: 600 clamp(68px,5.2vw,78px)/.82 "Cormorant Garamond", serif;
  letter-spacing: -.025em;
  text-shadow: none;
}
.engagement-hero-copy h2 span {
  font-weight: 600;
  font-style: italic;
}
.engagement-hero-copy p {
  width: 78%;
  margin: 13px 0 0;
  color: rgba(23,21,16,.68);
  font: 500 12.5px/1.45 "Manrope", sans-serif;
  letter-spacing: .025em;
}

.engagement-detail .page-content {
  display: flex;
  flex-direction: column;
  padding: 6.5% 7% 5%;
}
.engagement-detail-heading {
  flex: 0 0 auto;
  padding: 0 0 4%;
}
.engagement-detail-heading p {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: #5f594c;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .18em;
}
.engagement-detail-heading p::after {
  content: "";
  width: 38px;
  height: 1px;
  background: var(--engagement-gold);
}
.engagement-detail-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  flex: 1;
  min-height: 0;
  gap: 8px;
}
.engagement-detail-column {
  display: grid;
  min-width: 0;
  min-height: 0;
  gap: 8px;
}
.engagement-detail-primary {
  grid-template-rows: minmax(0,1fr) 105px;
}
.engagement-detail-secondary {
  grid-template-rows: 76px minmax(0,1fr) 50px;
}
.engagement-detail-image {
  position: relative;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  background: rgba(255,255,255,.96);
  border: 7px solid rgba(255,255,255,.78);
  box-shadow: 0 0 0 1px var(--engagement-line);
}
.engagement-detail-image::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 5px;
  border: 1px solid rgba(155,124,67,.34);
  pointer-events: none;
}
.engagement-detail-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
}
.engagement-empty-pair {
  display: grid;
  grid-template-rows: 1fr 1fr;
  min-height: 0;
  gap: 8px;
}
.engagement-empty-block {
  min-height: 0;
  border: 1px solid var(--engagement-line);
  background: rgba(255,255,255,.76);
  box-shadow: inset 0 1px rgba(255,255,255,.8);
}
.engagement-empty-block--price {
  border-width: 0 0 1px;
  background: rgba(255,255,255,.34);
}
.engagement-price-feature {
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 0 3px;
  border: 0;
}
.engagement-price-row {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 8px;
  padding: 0 0 5px;
  border-bottom: 1px solid var(--engagement-gold);
}
.engagement-price-row > span {
  color: #9b7c43;
  font-size: 6.9px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-align: right;
}
.engagement-price-row p {
  color: #5e584b;
}
.engagement-price-row small {
  color: rgba(94,88,75,.68);
}
.engagement-price-row strong {
  font-size: 17.25px;
  font-weight: 700;
}
.engagement-price-row--laboratory {
  border-bottom-color: rgba(76,166,162,.7);
}
.engagement-price-row--laboratory > span,
.engagement-price-row--laboratory p {
  color: #3c8e89;
}
.royal-new-detail .cognac-price-feature strong {
  font-size: 20.4px;
}
.engagement-detail-specs div {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 12px 7px 13px;
}
.engagement-detail-specs dt {
  flex: 0 0 auto;
  font-size: 10.26px;
  letter-spacing: .12em;
}
.engagement-detail-specs dd {
  margin-left: auto;
  font-size: 16.8px;
  text-align: right;
  white-space: nowrap;
}
.engagement-detail-specs.cognac-detail-specs-single dd {
  font-size: 15.6px;
}

@media (max-width: 760px) {
  .toc-collection .toc-coming {
    gap: 10px;
    padding: 7px 0;
    font-size: 10.5px;
  }
  .toc-collection .toc-coming > span {
    flex-basis: 19px;
    font-size: 8px;
  }
  .engagement-hero-copy h2 {
    font-size: clamp(34px,10.5vw,42px);
  }
  .engagement-hero-copy p {
    width: 88%;
    margin-top: 8px;
    font-size: 10px;
    line-height: 1.4;
  }
  .engagement-detail-primary {
    grid-template-rows: minmax(0,1fr) 82px;
  }
  .engagement-detail-secondary {
    grid-template-rows: 61px minmax(0,1fr) 40px;
  }
  .engagement-price-feature { gap: 3px; padding: 0 2px; }
  .engagement-price-row { gap: 4px; padding-bottom: 3px; }
  .engagement-price-row > span { font-size: 5.75px; letter-spacing: .08em; }
  .engagement-price-row strong { font-size: 12.65px; }
  .engagement-price-row small { font-size: 5.75px; }
  .engagement-detail-layout,
  .engagement-detail-column,
  .engagement-empty-pair {
    gap: 5px;
  }
  .engagement-detail-image {
    border-width: 4px;
  }
  .engagement-detail-specs div {
    gap: 2px;
    padding: 6px 4px 6px 8px;
  }
  .engagement-detail-specs dt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 7.78px;
    line-height: 1.15;
    letter-spacing: .02em;
    white-space: normal;
  }
  .engagement-detail-specs dd {
    flex: 0 0 auto;
    font-size: 12.6px;
  }
  .engagement-detail-specs.cognac-detail-specs-single dd {
    font-size: 10.2px;
  }
}
.constellation-opening .page-content { padding: 0; }
.constellation-opening img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-page.constellation-page .page-content {
  background: url("images/constelation/background/background.webp") center / cover no-repeat;
}
.constellation-preview-copy {
  color: #14262a;
  background: #f6f7f2;
}
.constellation-preview-copy .page-content {
  display: flex;
  flex-direction: column;
  padding: 10%;
  background:
    radial-gradient(circle at 83% 34%, rgba(82,190,198,.12) 0 1.5%, transparent 1.7%),
    linear-gradient(145deg, rgba(115,210,215,.13), transparent 43%),
    linear-gradient(145deg, #eef4f1, #fbf8f0 58%, #e5eeea);
}
.constellation-preview-kicker {
  margin: 0;
  color: #287f86;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.constellation-preview-title {
  position: relative;
  margin: auto 0;
}
.constellation-preview-title > span {
  position: absolute;
  top: -58px;
  right: -4px;
  color: rgba(40,127,134,.13);
  font: 500 150px/.7 "Cormorant Garamond", serif;
}
.constellation-preview-title p,
.constellation-preview-title h2 {
  position: relative;
  margin: 0;
  font-family: "Cormorant Garamond", serif;
}
.constellation-preview-title p {
  color: #287f86;
  font-size: clamp(37px,3.9vw,59px);
  font-style: italic;
  line-height: .8;
}
.constellation-preview-title h2 {
  margin-top: 8px;
  color: #121715;
  font-size: clamp(42px,4.2vw,65px);
  font-weight: 500;
  line-height: .8;
}
.constellation-preview-title small {
  display: block;
  margin-top: 25px;
  color: #356e72;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1.5;
  text-transform: uppercase;
}
.constellation-preview-note {
  width: 88%;
  color: #596862;
}
.constellation-preview-note > p {
  margin: 0 0 9px;
  font: 400 clamp(11px,1vw,14px)/1.6 "Cormorant Garamond", serif;
}
.constellation-preview-note > em {
  display: block;
  margin-bottom: 13px;
  color: #287f86;
  font: italic 500 clamp(10px,.85vw,12px)/1.2 "Cormorant Garamond", serif;
  letter-spacing: .025em;
}
.constellation-preview-note > span {
  display: block;
  padding-top: 11px;
  border-top: 1px solid rgba(40,127,134,.25);
  color: #66756f;
  font-size: 6.5px;
  letter-spacing: .1em;
  line-height: 1.6;
  text-transform: uppercase;
}
.constellation-preview-copy .folio {
  color: rgba(40,127,134,.48);
}
@media (max-width: 760px) {
  .constellation-preview-title p {
    font-size: clamp(36px,10.5vw,43px);
  }
  .constellation-preview-title h2 {
    font-size: clamp(40px,11vw,46px);
  }
  .constellation-preview-note {
    width: 92%;
  }
}
.constellation-page {
  --accent: #79d9e3;
  --title-accent: #efc78f;
}
.royal-data-price {
  gap: 6px;
}
.royal-data-price > span {
  max-width: 46%;
  font-size: 6px;
  line-height: 1.25;
  white-space: normal;
}
.constellation-page .hero-visual {
  border-color: rgba(122,217,227,.34);
  box-shadow: 0 14px 30px rgba(0,8,18,.24);
}
.constellation-page .hero-visual::before {
  border-color: rgba(109,205,218,.3);
}
.constellation-hero .hero-copy h2 {
  text-shadow: 0 2px 15px rgba(0,4,12,.5);
}
.constellation-detail .cognac-price-feature strong {
  color: #efc78f;
}
.constellation-detail .cognac-detail-specs div {
  border-color: rgba(105,205,219,.34);
  background: rgba(2,20,34,.72);
}
.constellation-detail .cognac-detail-specs dt {
  color: rgba(207,239,243,.7);
}
.constellation-detail .cognac-detail-specs dd {
  color: #f8f5ed;
}
.constellation-detail .cognac-detail-specs-pair dd {
  font-size: 13.5px !important;
}
.constellation-detail .cognac-detail-specs-single dd {
  font-size: 10.5px !important;
}
.constellation-detail .cognac-detail-image {
  border-color: rgba(239,199,143,.72) !important;
}

@media (max-width: 999px) {
  .viewer-email {
    display: none;
  }
  .catalog-toc {
    top: 5px;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 4px;
    padding: 0 0 4px;
    overflow: visible;
    touch-action: auto;
  }
  .toc-collection {
    min-width: 0;
    width: auto;
  }
  .catalog-toc .toc-collection summary {
    grid-template-columns: 18px minmax(0,1fr);
    min-height: 42px;
    gap: 3px;
    padding: 7px clamp(34px,9vw,40px) 7px 7px;
  }
  .catalog-toc .toc-collection summary b {
    min-width: 0;
    overflow: hidden;
    font-size: clamp(8.8px,2.97vw,13.2px);
    line-height: 1.15;
    letter-spacing: -.015em;
    text-align: left;
    white-space: nowrap;
  }
  .catalog-toc .toc-index {
    display: block;
    font-size: 8.8px;
    text-align: left;
  }
  .catalog-toc .toc-suffix {
    display: inline;
  }
  .catalog-toc .toc-collection summary .toc-toggle {
    top: 0;
    right: 0;
    width: clamp(30px,8vw,36px);
    height: 100%;
    margin: 0;
    font-size: 20px;
    transform: none;
  }
  .catalog-toc .toc-collection > ol {
    display: none;
  }
  .toc-mobile-panel {
    position: absolute;
    z-index: 90;
    display: block;
    margin: 0;
    color: rgba(244,240,231,.84);
    background: rgba(16,15,12,.98);
    border: 1px solid rgba(244,240,231,.16);
    box-shadow: 0 16px 32px rgba(0,0,0,.4);
  }
  .toc-mobile-panel[hidden] {
    display: none;
  }
  .toc-mobile-panel ol {
    position: static;
    width: 100%;
    max-height: min(48vh,420px);
    margin: 0;
    padding: 11px 14px 12px 33px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(182,154,93,.65) transparent;
  }
  .book-stage {
    margin-top: 82px;
  }
  .royal-data-detail .cognac-detail-specs div,
  .constellation-detail .cognac-detail-specs div {
    gap: 1px;
    padding: 6px 2px 6px 5px;
  }
  .royal-data-detail .cognac-detail-specs dt,
  .constellation-detail .cognac-detail-specs dt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 4.7px !important;
    line-height: 1.1;
    letter-spacing: .03em;
    white-space: normal;
  }
  .royal-data-detail .cognac-detail-specs-pair dd,
  .constellation-detail .cognac-detail-specs-pair dd {
    flex: 0 0 auto;
    margin-left: auto;
    font-size: 8.5px !important;
    text-align: right;
    white-space: nowrap;
  }
  .royal-data-detail .cognac-detail-specs-single dd,
  .constellation-detail .cognac-detail-specs-single dd {
    flex: 0 0 auto;
    margin-left: auto;
    font-size: 4.8px !important;
    text-align: right;
    white-space: nowrap;
  }
}

@media (max-width: 760px) {
  .royal-data-detail .cognac-detail-specs dt,
  .constellation-detail .cognac-detail-specs dt {
    flex: 0 1 auto !important;
    font-size: 6.5px !important;
  }
  .royal-data-detail .cognac-detail-specs-pair dd,
  .constellation-detail .cognac-detail-specs-pair dd {
    flex: 0 0 auto;
    min-width: 0;
    font-size: 9.5px !important;
    white-space: nowrap;
  }
  .royal-data-detail .cognac-detail-specs-single dd,
  .constellation-detail .cognac-detail-specs-single dd {
    flex: 0 1 auto;
    min-width: 0;
    font-size: 6px !important;
    white-space: nowrap;
  }
  .royal-data-detail .cognac-detail-specs-single dd {
    font-size: 7px !important;
    white-space: nowrap !important;
    width: max-content;
  }
  .royal-new-detail:not(.royal-data-detail) .cognac-detail-specs-single dd {
    font-size: 7px !important;
    white-space: nowrap !important;
    width: max-content;
  }
  .cognac-detail-concept .cognac-detail-specs-single dd {
    flex: 0 0 auto;
    min-width: 0;
    width: max-content;
    max-width: none;
    font-size: 8.46px !important;
    white-space: nowrap !important;
  }
}
