/* Second publication: a closer look at the original photographs. */
.photo-trigger{display:block;position:relative;width:100%;padding:0;border:0;background:transparent;text-align:left;color:var(--paper);line-height:1;cursor:zoom-in;isolation:isolate}
.photo-trigger>img{width:100%;transition:transform 1.1s var(--ease),filter .6s ease}
.photo-trigger:focus-visible{outline:3px solid var(--gold);outline-offset:6px}
.photo-chip,.photo-invitation{display:inline-flex;align-items:center;gap:16px;padding:10px 13px;color:#fffdf6;border:1px solid #f8f2eb70;background:linear-gradient(135deg,#1b2c2066,#162318ad);backdrop-filter:blur(9px);font:500 10px/1.5 var(--sans);letter-spacing:.08em;box-shadow:0 3px 12px #0002}
.photo-chip{position:absolute;right:16px;top:16px;z-index:2}
.photo-chip>span:last-child,.photo-plus{font:24px/1 var(--serif);transition:transform .5s var(--ease)}
.photo-trigger:hover .photo-plus,.photo-trigger:hover .photo-chip>span:last-child{transform:rotate(90deg)}
.scene-photo-trigger{position:absolute;inset:0;z-index:2;cursor:zoom-in}
.scene-photo-trigger .photo-invitation{position:absolute;right:5%;bottom:100px}
.scene-photo-trigger.is-pressing{transform:none!important;box-shadow:none!important;filter:none}
.scene-photo-trigger.is-bouncing{animation:none}
.scene-photo-trigger:focus-visible{outline-offset:-8px}
.scene-photo-trigger:active .photo-invitation{transform:translateY(2px);box-shadow:inset 0 2px 8px #0004}
.hero-shade,.wine-shade{pointer-events:none}
.hero-content,.wine-copy{z-index:3;pointer-events:none}
.hero-content a,.wine-copy a,.hero-content h1,.hero-content p,.wine-copy h2,.wine-copy p{pointer-events:auto}
.hero-stamp,.hero-bottom{z-index:3}
.hero-stamp{pointer-events:none}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}
.hero-actions .hero-button{margin-top:0}
.hero-taste-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;font:11px/1.8 var(--sans);letter-spacing:.06em;border-bottom:1px solid #f8f2eb7a;animation:heroText 1s var(--ease) 1.05s both}
.hero-taste-link span{font:21px/1 var(--serif)}
.wine-photo-trigger .photo-invitation{left:4%;right:auto;top:28px;bottom:auto}
.photo-caption,.visual-word,.dinner-photo>span,.occasion-photo>span,.chef-photo figcaption{pointer-events:none}
.map-label{z-index:3}
.subhero-image .photo-trigger{height:100%}
.subhero-image .photo-trigger>img{height:100%;min-height:270px}
.party-ribbon{background:radial-gradient(ellipse at top right,#fdfaf2b5,transparent 65%),repeating-linear-gradient(45deg,#9d8b6105 0 1px,transparent 1px 6px),var(--ivory)}
.chef-section{background:radial-gradient(ellipse at top left,#5b86493b,transparent 70%),var(--green)}
.taste-section{align-items:start}
.taste-intro{position:sticky;top:130px}
.taste-plate{max-width:340px;width:100%;margin-top:26px}
.taste-plate>svg{width:100%;overflow:visible}
.taste-token{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;color:var(--leaf)}
.taste-token-labels{display:flex;justify-content:space-between;gap:5px;margin-top:0;font:10px/1.6 var(--sans);color:var(--muted)}
.taste-token-labels>span{position:relative;padding:6px 4px;border-bottom:1px solid #9d8b613d;white-space:nowrap}
.taste-token-labels>span.is-selected{color:var(--green);border-bottom-color:var(--leaf)}
.taste-result{background:radial-gradient(ellipse at center top,#b3e89c18,transparent 80%)}
@media(hover:hover) and (pointer:fine){.photo-trigger:not(.scene-photo-trigger):hover>img{filter:brightness(1.045)}.hero-taste-link:hover{border-bottom-color:var(--paper)}}
@media(max-width:800px){.hero-actions{gap:20px}.hero-taste-link{font-size:10px}.taste-intro{top:108px}.subhero-image .photo-trigger>img{min-height:230px}}
@media(max-width:600px){
 body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
 .hero{height:calc(100svh - 140px - env(safe-area-inset-bottom));min-height:575px;max-height:800px}
 .hero-content{padding-bottom:85px}
 .hero h1{margin-block:16px}
 .hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:10px;margin-top:22px}
 .hero-actions .hero-button{min-height:51px;min-width:245px}
 .hero-taste-link{font-size:11px;min-height:38px;gap:28px}
 .hero-photo-trigger .photo-invitation{top:30px;left:21px;right:auto;bottom:auto}
 .photo-invitation{font-size:9px;padding:9px 11px;gap:11px}
 .photo-chip{font-size:9px;right:12px;top:12px;gap:10px;padding:8px 10px}
 .photo-chip>span:last-child,.photo-plus{font-size:22px}
 .wine-photo-trigger .photo-invitation{left:21px;top:21px}
 .taste-intro{position:static;width:100%}
 .taste-plate{position:static;width:min(100%,310px);max-width:310px;margin:14px auto 0;opacity:1}
 .taste-plate>svg{max-height:170px}
 .taste-token-labels{margin-top:0;font-size:9px}
 .taste-section{gap:26px}
 .subhero-image .photo-trigger>img{height:200px;min-height:200px}
 .about-section{gap:38px}
 .photo-caption{line-height:1.7}
}
@media(max-width:360px){.hero{min-height:565px}.hero-taste-link{font-size:10px}.hero-actions{gap:7px}.taste-token-labels{font-size:9px}}
@media(prefers-reduced-motion:reduce){.hero-taste-link{animation:none;opacity:1;transform:none;clip-path:none;filter:none}.photo-trigger>img,.photo-plus,.photo-chip>span:last-child{transition:none}}

/* Publication 3: original brand colors, clearer small type, and a dining guide. */
.eyebrow:not(.light),.menu-row h4 small,.mobile-nav a span,.occasion-line>span,.check-number,.check-meter small,.quote-number{color:var(--green)}
.eyebrow{font-size:12px;letter-spacing:.13em}
.menu-row h4 small{font-size:11px;color:var(--green);border-color:var(--green)}
.menu-note,.small-print,.party-ribbon .small-print,.visit-info .small-print,.a-la-carte-body p,.taste-hint,.dialog-note{font-size:12px;line-height:1.9}
.menu-label>span,.dinner-photo>span{font-size:11px}
.visit-info dd span,.qa-banner div>span{font-size:12px}
.taste-token-labels{color:var(--green)}
.occasion-copy{min-width:0}
.occasion-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:22px}
.occasion-tabs button{position:relative;min-height:46px;padding:10px 8px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--muted);font:600 12px/1.5 var(--sans);white-space:nowrap;transition:background .25s,color .25s,box-shadow .25s}
.occasion-tabs button[aria-selected="true"]{color:var(--paper);border-color:#6f885b;background:linear-gradient(135deg,#526c43,var(--green) 72%);box-shadow:0 3px 0 var(--green-dark),0 7px 16px #32442d18}
.occasion-tabs button[aria-selected="true"]::after{content:'';position:absolute;bottom:-15px;left:calc(50% - 4px);width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.occasion-panel{padding:4px 0 9px;outline-offset:7px}
.occasion-panel+.occasion-panel{margin-top:24px}
.is-ready .occasion-panel{margin-top:0;min-height:260px;animation:occasionArrive .5s var(--ease) both}
.occasion-panel .occasion-panel-kicker{display:flex;align-items:baseline;gap:12px;color:var(--green);font:11px/1.8 var(--sans)}
.occasion-panel-kicker>span{font:17px/1 var(--serif)}
.occasion-panel h3{font-size:30px;line-height:1.65;margin:14px 0 12px}
.occasion-panel>p:not(.occasion-panel-kicker){font:12px/2.05 var(--sans);color:var(--muted)}
.occasion-panel .text-link{margin-top:19px;font-size:12px;min-height:44px}
@keyframes occasionArrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:800px){.occasion-tabs{gap:4px}.occasion-tabs button{padding-inline:4px;font-size:11px}.occasion-panel h3{font-size:27px}.is-ready .occasion-panel{min-height:275px}}
@media(max-width:600px){.occasion-tabs{margin-top:23px;margin-bottom:23px;gap:5px}.occasion-tabs button{font-size:12px}.is-ready .occasion-panel{min-height:250px}.occasion-panel h3{font-size:29px;margin-top:13px}.occasion-panel>p:not(.occasion-panel-kicker){font-size:13px}.occasion-panel .occasion-panel-kicker{font-size:11px}.taste-hint{min-height:46px}.menu-label>span{font-size:10px}.eyebrow{font-size:11px}.party-ribbon .small-print,.visit-info .small-print{font-size:12px}.qa-banner div>span{font-size:11px}.taste-token-labels{font-size:10px}}
@media(prefers-reduced-motion:reduce){.is-ready .occasion-panel{animation:none}.occasion-tabs button{transition:none}}
