/* Editorial additions retain the product pages' original font families and ink. */
.product-intro .brand-logo { margin-bottom:clamp(28px,4vh,48px); }
.product-subtitle { font:500 clamp(25px,3vw,36px)/1.2 "Cormorant Garamond",Georgia,serif; margin:8px 0 28px; }
.product-intro .scroll-down { position:relative; bottom:auto; margin:26px auto 0; }
.product-intro .copy p { margin:0; }
.product-overview { width:min(100%,640px); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:28px 0 0; padding:20px 0; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.product-overview dt { font:600 10px/1.6 Raleway,Arial,sans-serif; letter-spacing:.14em; text-transform:uppercase; margin:0 0 8px; }
.product-overview dd { font-size:18px; line-height:1.4; margin:0; }
.product-main .tasting-note { width:min(100%,740px); max-width:100%; text-align:left; }
.product-main .tasting-note h2 { font:500 26px/1.2 "Cormorant Garamond",Georgia,serif; margin:0 0 24px; text-align:center; }
.product-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 34px; margin:0; }
.product-notes div { min-width:0; }
.product-notes dt { font:600 10px/1.6 Raleway,Arial,sans-serif; letter-spacing:.16em; text-transform:uppercase; margin-bottom:6px; }
.product-notes dd { margin:0; font-size:16px; line-height:1.6; }
.product-details { max-width:1200px; margin:auto; padding:80px clamp(24px,5vw,70px); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"story story" "tasting specs" "serving serving"; gap:52px 60px; }
.product-story { grid-area:story; width:min(100%,780px); margin:0 auto 12px; }
.product-tasting { grid-area:tasting; }
.product-specifications { grid-area:specs; }
.product-tasting,.product-specifications { border-top:1px solid rgba(255,255,255,.18); padding-top:32px; }
.product-serving { grid-area:serving; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:60px; border-top:1px solid rgba(255,255,255,.18); padding-top:38px; }
.product-details h2 { font:500 clamp(26px,3vw,34px)/1.2 "Cormorant Garamond",Georgia,serif; margin:0 0 26px; }
.product-details p { font-size:18px; line-height:1.75; margin:0 0 20px; }
.product-details p:last-child { margin-bottom:0; }
.product-specs { width:100%; border-collapse:collapse; font-size:17px; line-height:1.55; text-align:left; }
.product-specs th,.product-specs td { border-bottom:1px solid rgba(255,255,255,.18); padding:13px 0; vertical-align:top; }
.product-specs th { width:30%; font:600 10px/1.6 Raleway,Arial,sans-serif; letter-spacing:.12em; text-transform:uppercase; padding-right:18px; }
.product-specs thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.product-next { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:24px; font-family:Raleway,Arial,sans-serif; }
.product-next a:nth-child(2) { justify-self:center; }
.product-next a:last-child { justify-self:end; }
.product-next .experience-button { margin:0; font-family:Raleway,Arial,sans-serif; }
@media(max-width:1040px) {
  .product-details { gap:44px 38px; }
  .product-notes { grid-template-columns:minmax(0,1fr); }
  .product-serving { gap:38px; }
}
@media(max-width:700px) {
  .product-overview { gap:12px; padding:18px 0; }
  .product-overview dd { font-size:16px; }
  .product-overview dt { font-size:9px; letter-spacing:.08em; }
  .product-notes { grid-template-columns:minmax(0,1fr); gap:20px; }
  .product-notes dd { font-size:15px; }
  .product-details { grid-template-columns:minmax(0,1fr); grid-template-areas:"story" "tasting" "specs" "serving"; gap:38px; padding:52px 24px; }
  .product-serving { grid-template-columns:minmax(0,1fr); gap:34px; }
  .product-details p { font-size:17px; }
  .product-specs { font-size:16px; }
  .product-next { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
  .product-next .experience-button { grid-column:1/-1; width:100%; }
  .product-next a:nth-child(2) { justify-self:start; }
  .product-next a:last-child { text-align:right; }
}

/* Give Character its own editorial feature, using existing brand assets. */
.product-story {
  position:relative;
  isolation:isolate;
  width:100%;
  margin:0;
  padding:clamp(28px,4vw,58px);
  display:grid;
  grid-template-columns:minmax(150px,.7fr) minmax(0,2fr);
  gap:22px clamp(28px,4vw,52px);
  border:1px solid rgba(197,161,95,.48);
  background:linear-gradient(135deg,rgba(197,161,95,.08),transparent 70%);
  box-shadow:0 24px 64px rgba(0,0,0,.18);
}
.product-story::before {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:url('/assets/images/tequila-tradition-background-2.svg') center / 540px auto;
  opacity:.07;
}
.product-details .product-story h2 {
  grid-column:1;
  grid-row:1 / span 2;
  margin:0;
  font-size:clamp(38px,4vw,56px);
  line-height:1.1;
  color:var(--ir-gold);
}
.product-story h2::after {
  content:'';
  display:block;
  width:64px;
  height:1px;
  margin-top:24px;
  background:currentColor;
}
.product-details .product-story p {
  grid-column:2;
  margin:0;
  font-size:clamp(20px,1.6vw,24px);
  line-height:1.65;
}
.product-details .product-story p:last-child {
  font-size:clamp(24px,2vw,30px);
  line-height:1.4;
  font-style:italic;
  color:var(--ir-paper);
}
@media(max-width:700px) {
  .product-story { padding:26px 22px; grid-template-columns:minmax(0,1fr); gap:22px; }
  .product-details .product-story h2 { grid-column:1; grid-row:auto; font-size:42px; }
  .product-story h2::after { margin-top:18px; }
  .product-details .product-story p { grid-column:1; font-size:18px; }
  .product-details .product-story p:last-child { font-size:23px; }
}
