/* Approved full-bottle artwork: equal proportions, no cropping, no carousel. */
.rtd-hero { position:relative; isolation:isolate; padding:calc(var(--header-h) + 34px) 0 40px; background:radial-gradient(ellipse at 80% 58%,#254738 0%,#101e1b 38%,#0a1110 72%); }
.rtd-hero::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(120deg,transparent 55%,rgba(229,224,197,.035) 55%,rgba(229,224,197,.035) 68%,transparent 68%); }
.rtd-hero-inner { display:grid; grid-template-columns:1fr 1.12fr; align-items:center; gap:28px; }
.rtd-hero .breadcrumbs { margin-bottom:25px; font-size:.72rem; }
.rtd-hero .eyebrow { margin-bottom:22px; }
.rtd-hero h1 { font-size:clamp(3.8rem,6.6vw,7.2rem); line-height:.94; letter-spacing:-.065em; }
.rtd-hero h1 span { display:block; }
.rtd-hero h1 .rtd-accent { color:#d4dfb0; }
.rtd-hero .lead { max-width:510px; margin:26px 0; font-size:1.08rem; color:#c5cec4; line-height:1.7; }
.rtd-hero .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0; }
.rtd-hero .btn { font-size:.8rem; padding:15px 20px; }
.rtd-hero .hero-badges { margin-top:24px; }
.rtd-hero .hero-badge { font-size:.72rem; border-color:rgba(214,226,203,.22); background:transparent; }
.rtd-hero-art { display:flex; align-items:end; justify-content:center; gap:clamp(15px,2vw,34px); min-width:0; position:relative; padding:24px 5px 36px; }
.rtd-hero-art::before { content:''; position:absolute; width:100%; height:25%; bottom:0; border-radius:50%; background:radial-gradient(ellipse,rgba(0,0,0,.65),transparent 65%); z-index:-1; }
.rtd-hero-bottle { display:flex; align-items:center; flex-direction:column; flex:0 1 29%; min-width:0; gap:18px; }
.rtd-hero-bottle img { height:clamp(330px,41vw,575px); width:100%; object-fit:contain; object-position:center bottom; filter:drop-shadow(10px 18px 8px rgba(0,0,0,.3)); transition:transform .25s ease; }
.rtd-hero-bottle:hover img { transform:translateY(-8px); }
.rtd-hero-bottle span { text-align:center; min-height:34px; font-size:.68rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:#dde2d5; }
.rtd-hero-home h1 { font-size:clamp(3.7rem,6.1vw,6.7rem); }
.rtd-home-facts { display:flex; flex-wrap:wrap; gap:20px; color:#b9c6b8; border-top:1px solid #35473b; padding-top:20px; font-size:.76rem; }
.rtd-home-facts strong { color:#ecefdc; }
.rtd-range { background:#f3f0e8; color:#18201b; padding:64px 0 76px; }
.rtd-range .eyebrow { color:#547044; }
.rtd-range .eyebrow::before { background:#547044; }
.rtd-range .section-heading { margin-bottom:34px; }
.rtd-range h2 { font-size:clamp(2.5rem,4.6vw,4.7rem); letter-spacing:-.055em; }
.rtd-range .section-heading p { color:#5b6259; font-size:.95rem; }
.rtd-range .btn { border-color:#72836a; color:#293723; }
.rtd-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px 20px; scroll-margin-top:calc(var(--header-h) + 16px); }
.rtd-card { min-width:0; }
.rtd-card-image { display:flex; justify-content:center; align-items:center; height:340px; position:relative; overflow:hidden; border-radius:8px; background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,255,255,.05)),var(--rtd-tint); }
.rtd-card-image::before { content:''; position:absolute; height:78%; width:78%; max-width:245px; border:1px solid rgba(255,255,255,.48); border-radius:50% 50% 6px 6px; }
.rtd-card-image img { position:relative; width:auto; max-width:65%; height:290px; object-fit:contain; filter:drop-shadow(7px 10px 5px rgba(38,33,20,.18)); transition:transform .22s ease; }
.rtd-card-image:hover img { transform:translateY(-5px); }
.rtd-card-number { position:absolute; left:16px; top:14px; color:rgba(26,38,26,.55); font-size:.8rem; font-weight:700; font-variant-numeric:tabular-nums; }
.rtd-card-copy { padding:18px 1px 10px; }
.rtd-card h3 { font-size:clamp(1.15rem,1.7vw,1.7rem); letter-spacing:-.04em; line-height:1.05; min-height:2.1em; }
.rtd-card-facts { color:#62655b; font-size:.73rem; margin:8px 0 16px; }
.rtd-card-facts span { padding:0 8px; color:#939887; }
.rtd-card-links { display:flex; justify-content:space-between; gap:10px; align-items:start; border-top:1px solid #d5d8cd; padding-top:14px; }
.rtd-card-links a { font-weight:700; font-size:.71rem; line-height:1.4; }
.rtd-card-links a:last-child { color:#65725d; font-weight:500; }
.rtd-card-links a:hover { text-decoration:underline; text-underline-offset:3px; }
.rtd-trade { padding:70px 0; background:#112019; }
.rtd-trade-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:clamp(36px,6vw,100px); }
.rtd-trade h2 { font-size:clamp(2.8rem,4.8vw,4.8rem); letter-spacing:-.05em; }
.rtd-trade .lead { font-size:1rem; line-height:1.7; }
.rtd-benefits { display:grid; gap:24px; }
.rtd-benefit { border-top:1px solid #354837; padding-top:20px; }
.rtd-benefit h3 { font-size:1.15rem; letter-spacing:0; }
.rtd-benefit p { color:#bccabc; font-size:.88rem; margin:9px 0 0; }
.rtd-responsible { margin:28px 0 0; font-size:.72rem; color:#c8d0bd; }
.rtd-hero a:focus-visible, .rtd-range a:focus-visible, .rtd-trade a:focus-visible { outline:3px solid #be8c24; outline-offset:5px; }
@media (min-width:1600px) { .rtd-card-image { height:380px; }.rtd-card-image img { height:325px; } }
@media (max-width:1000px) {
 .rtd-hero-inner { grid-template-columns:1fr 1fr; gap:12px; }.rtd-hero h1 { font-size:clamp(3rem,6.7vw,5.3rem); }
 .rtd-hero .lead { font-size:.94rem; }.rtd-hero-art { gap:10px; }.rtd-hero-bottle img { height:370px; }
 .rtd-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 16px; }.rtd-card h3 { font-size:1.25rem; }
 .rtd-card-image { height:310px; }.rtd-card-image img { height:270px; }.rtd-trade-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:700px) {
 .rtd-hero { padding:calc(var(--header-h) + 22px) 0 26px; }.rtd-hero-inner { grid-template-columns:1fr; gap:0; }
 .rtd-hero-copy { display:contents; }.rtd-hero .breadcrumbs { grid-row:1; margin:0 0 14px; }.rtd-hero .eyebrow { grid-row:2; margin:0 0 14px; font-size:.64rem; }
 .rtd-hero h1 { grid-row:3; font-size:clamp(2.7rem,10.5vw,4.6rem); max-width:600px; }
 .rtd-hero-art { grid-row:4; padding:18px 0 8px; gap:14px; }.rtd-hero-bottle { gap:8px; }.rtd-hero-bottle img { height:clamp(230px,69vw,375px); }
 .rtd-hero-bottle span { font-size:.57rem; min-height:24px; }.rtd-hero .lead { grid-row:5; margin:14px 0 0; font-size:.87rem; max-width:none; }
 .rtd-hero .hero-actions { grid-row:6; margin:18px 0 0; }.rtd-hero .hero-badges { grid-row:7; margin-top:18px; gap:8px; }
 .rtd-hero .btn { padding:12px 15px; font-size:.72rem; }.rtd-hero .hero-badge { padding:6px 10px; font-size:.64rem; }.rtd-home-facts { grid-row:7; margin-top:18px; }
 .rtd-range { padding:42px 0; }.rtd-range .section-heading { display:block; }.rtd-range .section-heading .btn { margin-top:20px; }
 .rtd-range h2 { font-size:clamp(2.3rem,8.4vw,3.8rem); }.rtd-range .section-heading p { font-size:.86rem; }
 .rtd-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; }.rtd-card-image { height:280px; }.rtd-card-image img { height:245px; }
 .rtd-card h3 { font-size:1.15rem; }.rtd-card-copy { padding-top:14px; }.rtd-card-links { flex-direction:column; gap:9px; padding-top:12px; }.rtd-card-links a { font-size:.72rem; }
 .rtd-card-facts { font-size:.66rem; margin-top:8px; }.rtd-card-facts span { padding:0 3px; }.rtd-card-number { font-size:.68rem; top:10px; left:10px; }
 .rtd-trade { padding:44px 0; }.rtd-trade-grid { grid-template-columns:1fr; gap:32px; }.rtd-trade h2 { font-size:2.9rem; }
}
@media (max-width:380px) { .rtd-card-image { height:250px; }.rtd-card-image img { height:215px; }.rtd-card h3 { font-size:1rem; }.rtd-hero .hero-actions { gap:8px; } }
@media (prefers-reduced-motion:reduce) { .rtd-hero-bottle img,.rtd-card-image img { transition:none; }.rtd-hero-bottle:hover img,.rtd-card-image:hover img { transform:none; } }
/* Long translated headings and CTA labels must not expand grid tracks. */
.rtd-hero-inner > *, .rtd-trade-grid > * { min-width:0; }
.rtd-hero h1, .rtd-trade h2 { overflow-wrap:anywhere; }
.rtd-trade .btn { max-width:100%; white-space:normal; text-align:center; }
@media (max-width:700px) {
 .rtd-hero-inner, .rtd-trade-grid { grid-template-columns:minmax(0,1fr); }
 .rtd-trade h2 { font-size:clamp(2.2rem,9.2vw,2.9rem); }
}
