/* Hallmark · macrostructure: Photographic · genre: editorial · theme: custom · nav: N9 · footer: Ft1 · design-system: design.md · designed-as-app
 * palette: dark charcoal / warm paper / wax red · display: Big Shoulders Display · body: IBM Plex Sans
 * pre-emit critique: P4 H4 E4 S5 R5 V4 */
@import url('fonts.css');
@import url('tokens.css');
*{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:var(--space-md)}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:var(--color-transparent)}button,a{-webkit-tap-highlight-color:var(--color-transparent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:5px}a:active,button:active{opacity:.7}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,dl{margin:0}p+p{margin-top:var(--space-sm)}h1,h2,h3{font-family:var(--font-display);font-weight:700;font-style:normal;line-height:1.12;letter-spacing:-.01em;overflow-wrap:anywhere;min-width:0}h1{font-size:var(--text-display)}h2{font-size:var(--text-lg)}h3{font-size:var(--text-lg)}[hidden]{display:none!important}.skip{position:fixed;left:var(--space-sm);top:-100px;padding:var(--space-sm);background:var(--color-light);color:var(--color-dark);z-index:30}.skip:focus{top:var(--space-sm)}
.site-header{display:flex;justify-content:space-between;align-items:center;position:relative;padding:var(--space-sm) var(--page-gutter);min-height:112px;z-index:20}.brand img{width:130px;height:86px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}.desktop-nav{display:none}.menu-toggle{display:flex;gap:var(--space-md);align-items:center;min-height:44px;padding:var(--space-xs) 0;font-size:var(--text-sm);white-space:nowrap}.menu-toggle span{font-size:var(--text-md)}#mobile-nav{position:absolute;right:var(--page-gutter);top:100%;width:280px;max-width:calc(100% - 2*var(--page-gutter));padding:var(--space-md);background:var(--color-paper-2);display:flex;flex-direction:column;gap:var(--space-2xs)}#mobile-nav a{padding:var(--space-xs) var(--space-sm);min-height:44px;white-space:nowrap}#mobile-nav a:hover,#mobile-nav a:focus-visible{background:var(--color-paper)}
.opening{padding:0 var(--page-gutter)}.opening-title{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg) 0 var(--space-md)}.opening-title h1{font-size:var(--text-lg)}.opening-title p{font-size:var(--text-sm);color:var(--color-ink-2)}.estate-frames{position:relative;aspect-ratio:2.1;overflow:hidden;background:var(--color-paper-2)}.estate-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 53%;opacity:0;transition:opacity var(--dur-long) var(--ease-out)}.estate-frame.is-current{opacity:1}.gallery-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0}.gallery-bar p{font-size:var(--text-sm);color:var(--color-ink-2)}.gallery-navigation{display:flex;align-items:center;gap:var(--space-xs);flex-shrink:0}.gallery-navigation span{font-size:var(--text-sm);font-variant-numeric:tabular-nums;margin-right:var(--space-sm)}.gallery-navigation button{width:44px;height:44px;border:var(--rule-width) solid var(--color-rule);font-size:var(--text-md)}.gallery-navigation button:hover{background:var(--color-paper-2)}.opening-note{display:flex;justify-content:space-between;gap:var(--space-xl);align-items:flex-end;padding:var(--space-xl) 0 var(--space-3xl)}.opening-note p{max-width:570px;font-size:var(--text-md);line-height:1.6}.text-link,.button,.back-link{display:inline-flex;align-items:center;gap:var(--space-lg);min-height:44px;white-space:nowrap;font-size:var(--text-sm)}.text-link,.button{padding:var(--space-xs) 0;border-bottom:var(--rule-width) solid currentColor}.text-link:hover,.button:hover{text-decoration:underline;text-underline-offset:5px}
.wine-section{background:var(--color-light);color:var(--color-dark);padding:var(--space-3xl) var(--page-gutter) var(--space-2xl)}.wine-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--space-3xl);max-width:1180px;margin:auto}.prymisir-photo{background:var(--color-light-2);height:630px;overflow:hidden}.prymisir-photo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.product-status{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-sm)}.wine-copy h2{font-size:var(--text-display);margin-bottom:var(--space-xs)}.blend-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-accent);margin:0 0 var(--space-lg)}.wine-copy>p:not(.product-status):not(.blend-title){max-width:48ch}.wine-facts{margin:var(--space-lg) 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);font-variant-numeric:tabular-nums}.wine-facts dt{font-size:var(--text-sm);color:var(--color-muted)}.wine-facts dd{margin:var(--space-3xs) 0 0}.wine-copy .text-link{color:var(--color-accent)}.wine-index{margin-top:var(--space-3xl)}.wine-index>h2{margin-bottom:var(--space-xl)}.collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xl)}.collection>a{min-width:0;display:block}.collection img{width:100%;height:350px;object-fit:contain;background:var(--color-light);mix-blend-mode:multiply}.wine-card-copy{padding-top:var(--space-md)}.wine-card-copy p,.collection small{color:var(--color-muted);margin-top:var(--space-2xs);font-size:var(--text-sm)}.card-discover{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);margin-top:var(--space-lg);min-height:44px;white-space:nowrap}.collection>a:hover .card-discover,.collection>a:focus-visible .card-discover{text-decoration:underline;text-underline-offset:5px}
.harvest{padding:var(--space-3xl) var(--page-gutter) var(--space-2xl);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-2xl);align-items:start}.harvest>figure img{width:100%;aspect-ratio:1.03;object-fit:cover}.harvest figcaption,.photo-caption{font-size:var(--text-sm);color:var(--color-ink-2);margin-top:var(--space-xs)}.harvest-copy{padding-top:var(--space-xl)}.harvest-copy h2{margin-bottom:var(--space-md)}.harvest-copy>p{max-width:45ch}.harvest-copy img{margin-top:var(--space-xl);width:100%;aspect-ratio:1.5;object-fit:cover}.family{padding:var(--space-2xl) var(--page-gutter) var(--space-3xl)}.family-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--space-2xl);max-width:1050px}.family-intro p{max-width:60ch}.family-portraits{display:flex;gap:var(--space-xl);margin:var(--space-xl) 0 0;justify-content:flex-end}.family-portraits figure{width:160px}.family-portraits img{width:160px;aspect-ratio:1;object-fit:cover}.family-portraits figcaption{font-size:var(--text-sm);margin-top:var(--space-sm)}
.territory{background:var(--color-light);color:var(--color-dark)}.territory-landscape{width:100%;height:clamp(320px,50vw,700px);object-fit:cover}.territory-content{padding:var(--space-2xl) var(--page-gutter) var(--space-3xl);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-xl)}.territory-content p{max-width:55ch}.territory-content .text-link{margin-top:var(--space-md)}.contact{padding:var(--space-3xl) var(--page-gutter) var(--space-2xl);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-xl)}.contact .email{display:inline-block;font-size:var(--text-md);white-space:nowrap;margin:var(--space-lg) 0 var(--space-md);text-decoration:underline;text-underline-offset:6px;min-height:44px}.contact-details{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-bottom:var(--space-md)}.contact-details a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-xl) var(--page-gutter);font-size:var(--text-sm);color:var(--color-ink-2)}.site-footer>a:not(.brand){white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}.site-footer .brand img{width:110px}
/* Product routes use the same palette and typography. */
.wine-page{background:var(--color-light);color:var(--color-dark)}.back-link{margin:var(--space-lg) var(--page-gutter) 0}.wine-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--space-2xl);padding:var(--space-lg) var(--page-gutter) var(--space-2xl)}.detail-bottle{height:630px}.detail-bottle img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.detail-intro h1{margin-bottom:var(--space-sm)}.wine-subtitle{font-size:var(--text-md);margin-bottom:var(--space-lg)}.detail-lead{max-width:55ch}.detail-intro .button{color:var(--color-accent)}.section{padding:var(--space-2xl) var(--page-gutter)}.wine-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--space-xl);background:var(--color-light-2)}.wine-story p{max-width:60ch}.tasting>h2{margin-bottom:var(--space-xl)}.tasting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xl)}.tasting-grid h3{font-size:var(--text-md);margin-bottom:var(--space-sm)}.pairing{margin-top:var(--space-xl);max-width:700px}.pairing h3{font-size:var(--text-md);margin-bottom:var(--space-sm)}details{margin-top:var(--space-xl);padding:var(--space-md) 0;border-top:var(--rule-width) solid var(--color-rule-light)}summary{cursor:pointer;min-height:44px}details p{max-width:65ch;margin-top:var(--space-md)}.more-wines{background:var(--color-light-2)}.more-wines .collection{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--space-xl)}.more-wines .collection>a>span:not(.card-discover){display:block;font-family:var(--font-display);font-size:var(--text-lg);font-weight:700}.more-wines .collection small{display:block}.more-wines .collection b{display:none}.more-wines>.text-link{margin-top:var(--space-xl)}
@media(max-width:960px){.wine-feature{gap:var(--space-xl)}.prymisir-photo{height:550px}.harvest{gap:var(--space-xl)}.family-portraits{gap:var(--space-lg)}.site-footer{flex-wrap:wrap}.detail-bottle{height:520px}.opening-note{padding-bottom:var(--space-2xl)}.contact .email{font-size:var(--text-base)}}
@media(max-width:640px){.site-header{min-height:88px;padding-top:var(--space-2xs);padding-bottom:var(--space-2xs)}.brand img{width:108px;height:72px}.opening-title{display:block;padding:var(--space-sm) 0 var(--space-lg)}.opening-title p{margin-top:var(--space-2xs)}.estate-frames{aspect-ratio:4/3}.estate-frame{object-position:50% center}.gallery-bar{align-items:flex-start;gap:var(--space-xs)}.gallery-bar p{font-size:var(--text-sm);max-width:15ch;padding-top:var(--space-xs)}.gallery-navigation{gap:var(--space-2xs)}.gallery-navigation span{margin-right:0}.opening-note{display:block;padding-top:var(--space-xl);padding-bottom:var(--space-2xl)}.opening-note p{font-size:var(--text-base)}.opening-note .text-link{margin-top:var(--space-md)}.wine-section{padding:var(--space-xl) var(--page-gutter)}.wine-feature{grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}.prymisir-photo{height:480px}.wine-copy h2{font-size:var(--text-display)}.wine-index{margin-top:var(--space-2xl)}.wine-index>h2{margin-bottom:var(--space-lg)}.collection{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.collection>a{display:grid;grid-template-columns:100px minmax(0,1fr);gap:var(--space-lg);align-items:center;padding:var(--space-md) 0}.collection img{height:190px;width:100px}.wine-card-copy{padding:0}.wine-card-copy h3{font-size:var(--text-lg)}.card-discover{margin-top:var(--space-sm)}.harvest{grid-template-columns:minmax(0,1fr);padding-top:var(--space-2xl);gap:var(--space-xl)}.harvest>figure img{aspect-ratio:4/3}.harvest-copy{padding:0}.family{padding-top:var(--space-xl);padding-bottom:var(--space-2xl)}.family-intro,.territory-content,.contact,.wine-detail-hero,.wine-story{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.family-portraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);margin-top:var(--space-xl)}.family-portraits figure{width:auto;max-width:160px}.family-portraits img{width:100%}.territory-content{padding-top:var(--space-xl);padding-bottom:var(--space-2xl)}.territory-landscape{height:350px}.contact{padding-top:var(--space-2xl);padding-bottom:var(--space-xl)}.contact-details{gap:var(--space-2xs);flex-direction:column}.contact .email{font-size:var(--text-base)}.desktop-break{display:none}.site-footer{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-sm);padding-top:var(--space-lg)}.site-footer .brand{margin-bottom:var(--space-sm)}.wine-detail-hero{padding-top:var(--space-md);padding-bottom:var(--space-xl)}.detail-bottle{height:390px}.detail-intro h1{font-size:var(--text-display)}.section{padding:var(--space-xl) var(--page-gutter)}.tasting-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.more-wines .collection{grid-template-columns:minmax(0,1fr)}.more-wines .collection>a{display:block}.more-wines .collection img{height:260px;width:100%;margin-bottom:var(--space-md)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.estate-frame{transition-duration:var(--dur-short)}}
button:disabled,[aria-disabled="true"]{opacity:.5;cursor:not-allowed;pointer-events:none}.site-footer>a:hover,.back-link:hover,.contact-details a:hover{text-decoration:underline;text-underline-offset:3px}.menu-toggle:hover{text-decoration:underline;text-underline-offset:3px}.menu-toggle,.gallery-navigation button{line-height:1}.wine-section :focus-visible,.wine-page :focus-visible,.territory :focus-visible{outline-color:var(--color-accent)}
@media(min-width:641px){.estate-frames{max-height:450px}.opening-note{padding-top:var(--space-md);padding-bottom:var(--space-xl)}.opening-note p{font-size:var(--text-base)}}
.estate-frames{width:100%}.brand{filter:invert(1);mix-blend-mode:screen}.brand img{filter:none;mix-blend-mode:normal}
.brand{filter:none;mix-blend-mode:normal;width:140px;height:62px;overflow:hidden;background:var(--color-light);display:block;flex-shrink:0}.brand img,.site-footer .brand img{filter:none;mix-blend-mode:multiply;width:140px;height:auto;transform:translateY(-5px)}.skip:focus-visible{outline-color:var(--color-accent)}
@media(max-width:640px){.brand{width:115px;height:52px}.brand img,.site-footer .brand img{width:115px}}
