/* Reuses the user-approved live download design. Theme always follows the device. */
.page-product { color-scheme:light; --bg:#f8f2e8; --panel:#fffaf2; --panel2:#eee3d2; --text:#28221d; --muted:#665d52; --soft:#82786d; --gold:#8b612d; --gold-hover:#704b22; --button-text:#fffaf2; --line:rgba(92,65,34,.17); --glow:rgba(168,112,48,.11); --art-border:rgba(148,103,53,.22); --art-shadow:rgba(65,44,24,.16); --stage-wine:#eee5d8; --stage-journal:#ece1d0; --stage-cellar:#e9dece;  --page:var(--bg); --surface:var(--panel); --ink:var(--text); --accent:var(--gold); --button:var(--gold); }
@media (prefers-color-scheme: dark) { .page-product { color-scheme:dark; --bg:#191715; --panel:#302a25; --panel2:#241f1b; --text:#f9f4eb; --muted:#c9beb2; --soft:#a89b8e; --gold:#e5c48c; --gold-hover:#f0d5a6; --button-text:#211910; --line:rgba(245,229,208,.17); --glow:rgba(173,112,52,.17); --art-border:rgba(229,196,140,.22); --art-shadow:rgba(0,0,0,.38); --stage-wine:#26211d; --stage-journal:#29231e; --stage-cellar:#24201d; } }
.page-product .shell { width:min(100% - 48px,1180px); }
.page-product .hero { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr); align-items:center; gap:clamp(40px,7vw,110px); min-height:min(790px,calc(100svh - 76px)); padding-block:40px 46px; }
.page-product .eyebrow { color:var(--gold); font-size:12px; font-weight:650; letter-spacing:.2em; margin:0 0 25px; }
.page-product h1, .page-product h2, .page-product h3 { margin-top:0; }
.page-product h1 { font-size:clamp(48px,5.2vw,78px); line-height:1.14; letter-spacing:-.055em; font-weight:680; margin-bottom:22px; }
.page-product .lead { max-width:26em; color:var(--muted); font-size:clamp(17px,1.55vw,20px); line-height:1.75; margin-bottom:32px; }
.page-product .download { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:56px; padding:0 26px; border-radius:14px; background:var(--gold); color:var(--button-text); font-size:16px; font-weight:750; text-decoration:none; box-shadow:0 12px 36px rgba(0,0,0,.22); transition:background .2s ease,transform .2s ease; }
.page-product .download:hover { background:var(--gold-hover); transform:translateY(-2px); }
.page-product .download svg { width:19px; height:19px; flex:none; }
.page-product .download-meta { color:var(--soft); font-size:13px; line-height:1.55; margin:13px 0 0; }
.page-product .hero-art { justify-self:end; width:min(100%,clamp(250px,34svh,360px)); position:relative; }
.page-product .hero-art::before { content:""; position:absolute; inset:8% 0 5%; z-index:-1; background:radial-gradient(ellipse,var(--glow),transparent 66%); filter:blur(25px); }
.page-product .hero-art img { display:block; width:100%; height:auto; object-fit:cover; border-radius:22px; border:1px solid var(--art-border); box-shadow:0 40px 100px var(--art-shadow); }
.page-product .divider { border-top:1px solid var(--line); }
.page-product .release-section { padding-block:70px 76px; }
.page-product .release-intro { max-width:900px; margin-bottom:28px; }
.page-product .release-section .eyebrow { margin-bottom:14px; }
.page-product .release-section h2 { font-size:clamp(33px,3.4vw,48px); margin-bottom:17px; }
.page-product .release-intro > p:not(.eyebrow) { color:var(--muted); font-size:16px; line-height:1.75; }
.page-product .release-list { max-width:900px; list-style:none; margin:0; padding:0; }
.page-product .release-list li { position:relative; padding:13px 0 13px 46px; border-bottom:1px solid var(--line); color:var(--text); font-size:15px; line-height:1.65; }
.page-product .release-list li:first-child { border-top:1px solid var(--line); }
.page-product .release-list li::before { content:attr(data-number); position:absolute; left:0; top:15px; color:var(--gold); font-size:12px; font-weight:700; letter-spacing:.06em; }
.page-product .release-list li.release-note-plain { padding-left:0; color:var(--muted); }
.page-product .release-list li.release-note-plain::before { content:none; }
.page-product .section-head { padding-block:105px 45px; max-width:780px; }
.page-product .section-head .eyebrow { margin-bottom:15px; }
.page-product .mobile-break { display:none; }
.page-product h2 { font-size:clamp(34px,3.8vw,56px); line-height:1.2; letter-spacing:-.04em; font-weight:670; margin-bottom:16px; }
.page-product .section-head p:not(.eyebrow) { color:var(--muted); line-height:1.75; font-size:17px; }
.page-product .features { display:grid; gap:clamp(72px,9vw,132px); padding-bottom:100px; }
.page-product .feature { min-width:0; position:relative; }
.page-product .feature-image { min-width:0; overflow:hidden; }
.page-product .feature-image .feature-screen { height:auto; box-shadow:0 30px 70px var(--art-shadow); }
.page-product .feature-copy { max-width:480px; }
.page-product .feature-index { color:var(--gold); font-size:13px; font-weight:680; letter-spacing:.08em; margin-bottom:16px; }
.page-product h3 { font-size:clamp(34px,4.2vw,58px); line-height:1.16; letter-spacing:-.05em; margin-bottom:20px; }
.page-product .feature-copy p:last-child { color:var(--muted); line-height:1.7; font-size:17px; margin-bottom:0; }
.page-product .feature-wine, .page-product .feature-cellar { display:grid; align-items:center; min-height:690px; overflow:hidden; border-radius:36px; }
.page-product .feature-wine { grid-template-columns:.92fr 1.08fr; background:var(--stage-wine); }
.page-product .feature-wine .feature-copy { order:-1; padding:clamp(34px,6vw,86px); }
.page-product .feature-wine .feature-image, .page-product .feature-cellar .feature-image { height:690px; display:flex; align-items:flex-start; justify-content:center; }
.page-product .feature-wine .feature-image .feature-screen { width:min(83%,420px); margin-top:42px; border-radius:30px 30px 0 0; }
.page-product .feature-journal { display:grid; justify-items:center; text-align:center; }
.page-product .feature-journal .feature-copy { order:-1; max-width:700px; padding:0 15px 34px; }
.page-product .feature-journal .feature-image { width:100%; height:620px; display:flex; justify-content:center; align-items:flex-start; background:var(--stage-journal); border-radius:36px; }
.page-product .feature-journal .feature-image .feature-screen { width:min(54%,575px); margin-top:26px; border-radius:28px 28px 0 0; }
.page-product .feature-cellar { grid-template-columns:1.08fr .92fr; background:var(--stage-cellar); }
.page-product .feature-cellar .feature-image .feature-screen { width:min(89%,485px); margin-top:42px; border-radius:30px 30px 0 0; }
.page-product .feature-cellar .feature-copy { padding:clamp(34px,6vw,80px); }
.page-product .feature-map { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:clamp(34px,7vw,100px); border-top:1px solid var(--line); padding-top:105px; }
.page-product .feature-map .feature-copy { order:-1; }
.page-product .feature-map .feature-image { height:500px; background:#050b14; border-radius:30px; }
.page-product .feature-map .feature-image .feature-screen { display:block; height:100%; width:100%; margin:0; border-radius:0; box-shadow:none; object-fit:cover; object-position:center 41%; }
@media (min-width:900px) {
.page-product .hero { padding-block:24px 32px; }
.page-product .hero-art { justify-self:center; width:min(100%,clamp(290px,38svh,350px)); }
}
@media (max-width:760px) {
.page-product .shell { width:min(100% - 36px,520px); }
.page-product .hero { grid-template-columns:1fr; min-height:0; padding-block:48px 65px; gap:35px; }
.page-product .hero-content { max-width:500px; }
.page-product .eyebrow { margin-bottom:17px; }
.page-product h1 { font-size:clamp(43px,10.6vw,58px); line-height:1.18; margin-bottom:17px; }
.page-product .lead { font-size:16px; line-height:1.7; margin-bottom:24px; }
.page-product .download { min-height:56px; width:100%; }
.page-product .hero-art { justify-self:center; width:min(100%,350px); }
.page-product .hero-art img { height:min(150vw,590px); object-position:center top; }
.page-product .release-section { padding-block:52px 58px; }
.page-product .release-intro { margin-bottom:20px; }
.page-product .release-section h2 { font-size:35px; }
.page-product .release-intro > p:not(.eyebrow) { font-size:15px; }
.page-product .release-list li { font-size:14px; padding-block:11px; }
.page-product .section-head { padding-block:72px 28px; }
.page-product .mobile-break { display:block; }
.page-product h2 { font-size:35px; }
.page-product .section-head p:not(.eyebrow) { font-size:15px; }
.page-product .features { gap:62px; padding-bottom:80px; }
.page-product .feature-wine, .page-product .feature-cellar { grid-template-columns:1fr; min-height:0; border-radius:28px; }
.page-product .feature-wine .feature-copy, .page-product .feature-cellar .feature-copy { order:-1; padding:40px 28px 0; }
.page-product .feature-wine .feature-image, .page-product .feature-cellar .feature-image { height:440px; }
.page-product .feature-wine .feature-image .feature-screen, .page-product .feature-cellar .feature-image .feature-screen { width:min(86%,355px); margin-top:24px; border-radius:24px 24px 0 0; }
.page-product .feature-journal .feature-copy { padding:0 6px 28px; }
.page-product .feature-journal .feature-image { height:440px; border-radius:28px; }
.page-product .feature-journal .feature-image .feature-screen { width:min(90%,380px); margin-top:18px; border-radius:24px 24px 0 0; }
.page-product .feature-map { grid-template-columns:1fr; gap:25px; padding-top:62px; }
.page-product .feature-map .feature-image { height:370px; border-radius:24px; }
.page-product .feature-map .feature-copy { order:1; padding:0 3px; }
.page-product h3 { font-size:clamp(30px,8vw,40px); margin-bottom:14px; }
.page-product .feature-copy p:last-child { font-size:15px; }
}

.page-product h1 { font-weight:800; }
.page-product h2, .page-product h3 { font-weight:760; }
.page-product .hero { line-height:normal; }
.page-product .hero-art { isolation:isolate; }
.page-product .feature-screen { display:block; flex:none; overflow:hidden; }
.page-product .feature-screen img { width:100%; height:auto; }
.page-product .feature-map .feature-screen { border-radius:0; }
.page-product .feature-map .feature-screen img { width:100%; height:100%; object-fit:cover; object-position:center 41%; }
.page-product .feature-copy { line-height:normal; }
.page-product .download-meta { margin:13px 0 0; }
@media (max-width:370px) { .page-product h1 { font-size:41px; } }
@media (prefers-reduced-motion:reduce) { .page-product .download { transition:none; } .page-product .download:hover { transform:none; } }
