:root{--green:#000000;--deep:#222222;--ink:#000000;--cream:#f8f7f2;--paper:#fff;--line:#dddddd;--muted:#555555;--gold:#98804d;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(44px,5.7vw,80px);letter-spacing:-2.5px}h2{font-size:clamp(32px,3.5vw,48px);letter-spacing:-1px}h3{font-size:23px}.wrap{width:min(1360px,90%);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:2.3px;font-size:10px;font-weight:700;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:12px}.text-link{border-bottom:1px solid currentColor;padding-bottom:3px}.skip{position:fixed;top:-80px;left:20px;background:#fff;padding:12px;z-index:100}.skip:focus{top:10px}.shipping-strip{padding:8px 20px;text-align:center;background:var(--green);color:#fff;font-size:11px;letter-spacing:.6px}.site-header{border-bottom:1px solid var(--line);background:var(--cream)}.header-inner{min-height:109px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{flex:none;font:23px var(--serif);letter-spacing:2.8px;line-height:1.05}.wordmark small{display:block;text-align:center;font:8px var(--sans);letter-spacing:3.6px;margin-top:10px}.nav{display:flex;align-items:center;gap:24px;margin-left:auto}.nav a{font-size:12px;padding:8px 0}.nav a[aria-current=page]{border-bottom:1px solid var(--ink)}.head-tools{display:flex;gap:16px;align-items:center}.language,.menu-btn,.cart-link{background:none;border:0;padding:8px 0;color:var(--ink);font-size:12px}.language{border:1px solid var(--line);padding:6px 8px}.cart-link{white-space:nowrap;display:flex;align-items:center;gap:7px}.cart-link svg{width:19px;height:23px;fill:none;stroke:currentColor;stroke-width:1.4}.menu-btn{display:none}.shop-intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:60px 0 45px;align-items:end}.shop-intro .eyebrow{margin-bottom:17px}.delivery-copy{font-size:14px;line-height:1.75;max-width:510px}.delivery-copy p+p{margin-top:12px}.shop-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;display:flex;align-items:center;gap:24px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{background:transparent;border:0;border-radius:2px;padding:7px 14px;font-size:12px;color:var(--muted)}.filter.active{background:var(--green);color:#fff}.count{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}.sort{border:0;border-left:1px solid var(--line);padding:6px 0 6px 18px;background:transparent;color:var(--ink);font-size:12px;max-width:190px}.wine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 23px;padding:30px 0 68px}.wine-card{min-width:0}.product-image{display:flex;justify-content:center;align-items:center;background:#fff;overflow:hidden;position:relative;aspect-ratio:4/5;border:1px solid #eeeeee;--bh:285px}.bottle-frame{height:var(--bh);width:calc(var(--bh)*var(--ratio));position:relative;overflow:hidden;flex:none;transition:transform .35s}.bottle-frame img{position:absolute;max-width:none;width:var(--iw);height:var(--ih);left:var(--ix);top:var(--iy)}.wine-card .product-image:hover .bottle-frame{transform:translateY(-4px)}.wine-info{padding:20px 1px 0}.wine-type{font-size:9px;letter-spacing:1.7px;text-transform:uppercase;color:var(--muted);margin-bottom:9px}.wine-info h3{font-size:22px;min-height:26px}.wine-price{margin-top:10px;font-size:14px}.wine-price small{font-size:10px;color:var(--muted);margin-left:7px}.buy-row{display:flex;gap:9px;margin-top:16px}.qty{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);height:44px;flex:none;background:transparent}.qty button{border:0;background:none;color:var(--ink);width:29px;height:42px;font-size:17px;padding:0}.qty input{border:0;background:none;text-align:center;width:34px;padding:0;color:var(--ink);appearance:textfield;-moz-appearance:textfield;font-size:13px}.qty input::-webkit-inner-spin-button,.qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:13px 23px;line-height:1.35;font-size:12px;letter-spacing:.2px;background:var(--green);color:#fff;border:1px solid var(--green);min-height:44px}.btn:hover{background:var(--deep)}.btn.secondary{background:transparent;color:var(--green);border-color:var(--line)}.btn.secondary:hover{border-color:var(--green)}.buy-row .btn{flex:1;padding:10px}.shipping-panel{border-top:1px solid var(--line);padding:35px 0;display:flex;align-items:center;gap:35px;justify-content:space-between}.shipping-panel h3{font-size:25px}.shipping-panel p{font-size:13px;margin-top:9px}.site-footer{background:var(--green);color:#fff;padding:48px 0 20px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-contact{display:flex;gap:28px;font-size:12px;flex-wrap:wrap}.footer-bottom{border-top:1px solid #ffffff30;margin-top:35px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#dddddd}.breadcrumb{font-size:11px;color:var(--muted);display:flex;gap:10px;padding:28px 0}.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-bottom:65px;align-items:start}.product-visual{position:sticky;top:25px}.product-visual .product-image{aspect-ratio:5/6;--bh:460px;border-color:var(--line)}.product-details{padding:15px 0}.product-details h1{font-size:clamp(38px,4vw,61px);letter-spacing:-1.6px;margin:15px 0 20px}.product-details .price{font-size:23px}.product-details .price small{font:11px var(--sans);color:var(--muted);margin-left:13px}.product-details .buy-row{margin:26px 0 24px;max-width:450px}.product-details .qty{height:50px}.product-details .qty button{height:48px;width:37px}.product-details .qty input{width:43px}.product-details .btn{min-height:50px}.shipping-detail{font-size:12px;line-height:1.8;padding-bottom:26px;border-bottom:1px solid var(--line)}.body-copy{line-height:1.95;font-size:15px}.body-copy p+p{margin-top:20px}.product-description{padding-top:30px}.product-description .eyebrow{margin-bottom:15px}.related{border-top:1px solid var(--line);padding-top:40px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-head .text-link{font-size:12px}.related .wine-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1030px;margin:auto}.related .product-image{aspect-ratio:1;--bh:240px}.history-intro{padding:60px 0 40px;display:flex;justify-content:space-between;align-items:end;gap:30px}.history-intro .eyebrow{margin-bottom:20px}.history-intro h1{max-width:670px}.history-intro>p{max-width:300px;line-height:1.8;color:var(--muted);font-size:14px}.gallery{position:relative;background:#e4e4e4}.gallery img{width:100%;height:clamp(290px,42vw,580px);object-fit:cover;object-position:center}.gallery-bar{position:absolute;bottom:20px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:15px}.gallery-caption{background:var(--cream);padding:9px 14px;font-size:11px;color:var(--ink);max-width:75%}.gallery-controls{display:flex;gap:8px}.gallery-controls button{border:0;background:var(--cream);color:var(--ink);font-size:20px;width:44px;height:44px}.gallery-dots{display:flex;gap:12px;justify-content:center;padding:18px}.gallery-dots button{height:8px;width:8px;border:0;padding:0;border-radius:50%;background:#d5d5d5}.gallery-dots button.active{background:var(--green)}.story-layout{display:grid;grid-template-columns:1fr 2fr;gap:10%;padding:44px 0 85px}.story-aside{border-top:1px solid var(--green);padding-top:20px}.story-aside h2{font-size:38px;margin:13px 0 18px}.story-aside p{font-size:12px;color:var(--muted)}.story-aside .signature{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--ink);margin:25px 0}.story-copy{max-width:755px}.story-copy p:first-child{font-family:var(--serif);font-size:24px;line-height:1.55}.story-cta{display:flex;justify-content:space-between;align-items:center;padding:37px 0;border-top:1px solid var(--line);margin-top:36px;gap:25px}.page-title{padding:46px 0 36px}.page-title h1{font-size:clamp(43px,5vw,66px);margin-top:12px}.cart-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(310px,1fr);gap:6%;padding-bottom:70px;align-items:start}.cart-table{border-top:1px solid var(--line)}.cart-item{display:grid;grid-template-columns:83px minmax(0,1fr) auto;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}.cart-item .product-image{width:83px;height:125px;aspect-ratio:auto;--bh:107px}.cart-item h3{font-size:22px;margin-bottom:6px}.cart-item .item-price{font-size:12px;color:var(--muted);margin-bottom:12px}.cart-item .qty{width:95px;height:34px}.cart-item .qty button{height:32px}.item-actions{display:flex;align-items:center;gap:15px}.remove{font-size:10px;background:none;border:0;padding:5px 0;text-decoration:underline;color:var(--muted)}.item-total{font-size:14px;align-self:start;padding-top:7px}.order-box{border:1px solid var(--line);padding:28px;background:#fff}.order-box h2{font-size:29px;margin-bottom:23px}.summary-line{display:flex;justify-content:space-between;gap:20px;padding:8px 0;font-size:13px}.summary-total{border-top:1px solid var(--line);margin-top:13px;padding:18px 0;font-size:19px}.summary-total strong{font-weight:400}.delivery-select{margin:22px 0 14px}.delivery-select label{display:block;font-size:12px;margin-bottom:8px}.delivery-select select{width:100%;font-size:12px;padding:12px;border:1px solid var(--line);color:var(--ink);background:#fff}.shipping-note{font-size:12px;line-height:1.75;background:var(--cream);padding:14px;margin:12px 0 20px}.order-box>.btn{width:100%}.cart-continue{margin-top:26px;font-size:12px;display:inline-block}.empty{max-width:640px;margin:20px auto 90px;padding:65px 35px;text-align:center;border:1px solid var(--line)}.empty h2{margin-bottom:20px}.empty p{color:var(--muted);margin-bottom:27px}.checkout-note{border-left:3px solid var(--gold);padding:12px 17px;background:#efeee7;font-size:12px;margin-bottom:30px}.checkout-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.checkout-form h2{grid-column:1/-1;font-size:29px;margin:10px 0}.field{display:block;font-size:12px}.field input,.field textarea{display:block;margin-top:7px;background:white;border:1px solid var(--line);padding:12px;width:100%;min-height:45px;color:var(--ink)}.full{grid-column:1/-1}.payment-choice{border:1px solid var(--line);padding:19px 20px;background:#fff;display:flex;gap:13px;align-items:center;margin:8px 0;font-size:14px}.payment-choice input{accent-color:var(--green)}.payment-copy{font-size:12px;padding:0 0 14px;color:var(--muted);line-height:1.8}.checkout-items{padding:0 0 15px;margin-bottom:12px;border-bottom:1px solid var(--line)}.checkout-item{display:flex;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:10px}.checkout-item span:last-child{white-space:nowrap}.preview-disclaimer{font-size:11px;line-height:1.7;color:var(--muted);margin-top:15px}.toast{position:fixed;right:22px;bottom:22px;background:var(--deep);color:#fff;padding:18px 24px;box-shadow:0 6px 35px #0002;z-index:50;max-width:calc(100% - 44px);font-size:13px;display:flex;gap:25px;align-items:center}.toast a{border-bottom:1px solid #fff;white-space:nowrap}.toast button{background:none;border:0;color:#fff;font-size:20px;padding:0}#home-frame{display:block;width:100%;height:100dvh;border:0}.not-found{padding:90px 0}.not-found p{margin:20px 0 30px}@media(min-width:1500px){.wine-grid .product-image{--bh:310px}}
@media(max-width:1150px){.nav{gap:15px}.nav a{font-size:11px}.header-inner{gap:20px}.wordmark{font-size:21px}.wine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-image{--bh:280px}.product-visual .product-image{--bh:390px}.head-tools{gap:11px}}
@media(max-width:900px){.header-inner{min-height:92px;flex-wrap:wrap;position:relative}.menu-btn{display:inline-block;font-size:20px}.head-tools{margin-left:auto;gap:17px}.nav{display:none;order:3;flex-basis:100%;margin:0;padding:0 0 24px;gap:16px;flex-wrap:wrap}.nav.open{display:flex}.nav a{font-size:13px}.shop-intro{gap:5%;padding-top:44px}.product-image{--bh:240px}.product-visual .product-image{--bh:330px}.product-layout{gap:5%}.footer-contact{flex-direction:column;gap:8px}.cart-layout{gap:4%;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr)}.order-box{padding:23px}.cart-item{gap:12px;grid-template-columns:65px minmax(0,1fr)}.cart-item .product-image{width:65px}.item-total{grid-column:2;padding-top:0;margin-top:-10px}.wine-info h3{font-size:20px}.buy-row{gap:6px}.buy-row .qty{height:42px}.buy-row .qty button{width:22px}.buy-row .qty input{width:26px}.buy-row .btn{font-size:11px;padding:9px}.related .product-image{--bh:200px}.history-intro>p{max-width:230px}}
@media(max-width:650px){.wrap{width:90%}.shipping-strip{font-size:10px;padding:8px 15px}.header-inner{min-height:84px}.wordmark{font-size:20px;letter-spacing:2px}.wordmark small{font-size:7px;letter-spacing:3px}.head-tools{gap:13px}.cart-word{display:none}.shop-intro{display:block;padding:38px 0 30px}h1{font-size:49px;letter-spacing:-1.8px}.shop-intro .eyebrow{margin-bottom:14px}.delivery-copy{margin-top:25px;font-size:12px;line-height:1.8}.delivery-copy p+p{margin-top:9px}.shop-toolbar{flex-wrap:wrap;gap:8px;padding:13px 0}.filters{flex-basis:100%;gap:2px}.filter{font-size:11px;padding:7px 10px}.count{margin-left:8px;font-size:10px}.sort{font-size:11px;margin-left:auto;border:0;max-width:170px;padding-left:0}.wine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px;padding:22px 0 42px}.product-image{--bh:205px;aspect-ratio:3/4}.wine-type{font-size:8px;letter-spacing:1px}.wine-info{padding-top:15px}.wine-info h3{font-size:20px;min-height:43px;line-height:1.13}.wine-price{font-size:13px;margin-top:8px}.wine-price small{display:block;margin:1px 0 0;font-size:9px}.buy-row{flex-wrap:wrap;gap:8px;margin-top:12px}.buy-row .qty{width:100%;height:35px}.buy-row .qty button{height:33px;width:33px}.buy-row .qty input{width:40px}.buy-row .btn{flex-basis:100%;min-height:38px;padding:9px}.shipping-panel{display:block;padding:27px 0}.shipping-panel h3{font-size:27px}.shipping-panel p{font-size:12px}.shipping-panel>.text-link{display:inline-block;margin-top:20px;font-size:12px}.footer-top{align-items:start;flex-direction:column;gap:26px}.site-footer{padding-top:35px}.footer-bottom{flex-direction:column;gap:8px;margin-top:27px}.breadcrumb{padding:19px 0;font-size:10px;flex-wrap:wrap}.product-layout{display:block;padding-bottom:35px}.product-visual{position:static}.product-visual .product-image{aspect-ratio:1;--bh:300px}.product-details{padding:29px 0 0}.product-details h1{font-size:41px;letter-spacing:-1px;margin-top:13px}.product-details .buy-row{flex-wrap:nowrap;gap:12px;margin-top:22px}.product-details .qty{width:112px;height:48px}.product-details .qty button{height:46px;width:32px}.product-details .btn{flex-basis:auto;min-height:48px;font-size:12px}.body-copy{font-size:14px;line-height:1.9}.product-description{padding-top:24px}.related .wine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related .wine-card:last-child{display:none}.related .product-image{aspect-ratio:3/4;--bh:205px}.section-head h2{font-size:31px}.section-head .text-link{font-size:10px}.history-intro{display:block;padding:38px 0 30px}.history-intro>p{max-width:none;margin-top:23px;font-size:13px}.history-intro h1{font-size:49px}.gallery{margin-left:-5.555%;margin-right:-5.555%}.gallery img{height:340px}.gallery-bar{bottom:14px;left:18px;right:18px}.gallery-caption{font-size:10px;padding:8px 10px;max-width:66%}.gallery-controls{gap:6px}.gallery-controls button{width:36px;height:38px}.story-layout{display:block;padding:25px 0 48px}.story-aside{margin-bottom:34px}.story-aside h2{font-size:30px}.story-aside .signature{margin:15px 0}.story-copy p:first-child{font-size:22px}.story-cta{align-items:start;flex-direction:column}.story-cta h3{font-size:28px}.cart-layout{display:block}.order-box{margin-top:30px;padding:25px}.cart-item{grid-template-columns:75px minmax(0,1fr) auto;gap:13px}.cart-item h3{font-size:20px}.cart-item .product-image{width:75px}.item-total{grid-column:auto;font-size:12px;margin-top:0;padding-top:3px}.item-actions{gap:10px;flex-wrap:wrap}.page-title{padding:32px 0 27px}.page-title h1{font-size:44px}.checkout-form{gap:15px}.checkout-form .field{grid-column:1/-1}.toast{left:15px;right:15px;bottom:15px;max-width:none;padding:16px;font-size:12px;gap:15px}.toast a{margin-left:auto}.empty{padding:45px 20px}.product-details .price{font-size:23px}}
@media(max-width:360px){.product-image,.related .product-image{--bh:173px}.wine-info h3{font-size:18px}.product-visual .product-image{--bh:260px}.head-tools{gap:9px}.wordmark{font-size:18px}.cart-item{grid-template-columns:62px minmax(0,1fr)}.cart-item .product-image{width:62px}.item-total{grid-column:2;margin-top:-9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Shared visual styling from the approved homepage; inner-page grids stay intact. */
:root{--green:#000000;--deep:#222222;--ink:#000000;--cream:#faf9f5;--muted:#555555;--serif:Georgia,serif;--sans:Arial,sans-serif}
body{font:16px/1.9 Arial,sans-serif;background:#faf9f5;color:#000000}
h1,h2,h3{font-family:Georgia,serif;font-weight:400;letter-spacing:normal}
h1,.history-intro h1,.product-details h1,.page-title h1{font:normal clamp(42px,4.8vw,72px)/1.1 Georgia,serif;letter-spacing:normal}
h2{font:normal 48px/1.12 Georgia,serif;letter-spacing:normal}
h3{font:normal 25px/1.12 Georgia,serif}
.eyebrow,.wine-type{font-family:Arial,sans-serif;font-size:11px;letter-spacing:3px;font-weight:400;color:var(--ink)}
.body-copy,.story-copy p:first-child,.delivery-copy,.history-intro>p{font:16px/1.9 Arial,sans-serif;color:#555555}
.story-copy p:first-child{margin-top:0}
.story-aside h2{font:normal 38px/1.12 Georgia,serif}
.wine-info h3,.cart-item h3{font-family:Georgia,serif;letter-spacing:normal}
.text-link,.btn{font-family:Arial,sans-serif;font-size:13px;letter-spacing:1px;font-weight:400}
.site-header{position:relative;z-index:5;background:#000000;color:white;border:0;padding:32px 4.5%}
.site-header .header-inner{width:100%;max-width:none;min-height:0;display:flex;flex-wrap:nowrap;gap:30px;position:static}
.wordmark{font:29px Georgia,serif;letter-spacing:3px;line-height:normal}
.wordmark small{display:block;font:9px Arial,sans-serif;text-align:center;letter-spacing:5px;margin-top:8px}
.site-header .wordmark{font-size:31px;color:#fff}
.site-header .nav{display:flex;position:static;order:0;flex-basis:auto;margin-left:auto;padding:0;gap:28px;font:16px/1.4 Arial,sans-serif;flex-wrap:nowrap}
.site-header .nav a{font:inherit;color:#fff;padding:0;white-space:nowrap}
.site-header .nav a[aria-current=page]{border-color:#ffffff80}
.site-header .head-tools{margin-left:0;gap:10px;flex-shrink:0}
.site-header .language,.site-header .menu-btn{font:13px Arial,sans-serif;color:#fff;background:transparent;border:1px solid #ffffff80;border-radius:0;padding:9px}
.site-header .cart-link{color:#fff;font:13px Arial,sans-serif;gap:6px;padding:9px 0}
.site-header .cart-word{display:none}
.site-header .menu-btn,.site-header .nav-cart{display:none}
.site-footer{background:#000000;padding:45px 4% 25px}
.site-footer>.wrap{width:100%;max-width:none}
.footer-top{gap:25px}
.footer-contact{gap:32px;font:14px Arial,sans-serif}
.footer-contact a{border-bottom:1px solid #ffffff65;padding-bottom:7px}
.footer-bottom{font-family:Arial,sans-serif}
.btn{background:#000000;border-color:#000000;border-radius:0}
.filter.active{background:#000000}
.product-image{background:#fff}
@media(max-width:1300px){
 .site-header .header-inner{gap:18px}
 .site-header .nav{font-size:14px;gap:16px}
 .site-header .wordmark{font-size:25px}
}
@media(max-width:1050px){
 .site-header{padding:25px 6%}
 .site-header .header-inner{gap:18px}
 .site-header .head-tools{margin-left:auto;gap:8px}
 .site-header .menu-btn{display:inline-block}
 .site-header .head-tools>.cart-link{display:none}
 .site-header .nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:25px;gap:16px;flex-direction:column;align-items:flex-start;background:#000000;font:14px/1.4 Arial,sans-serif}
 .site-header .nav.open{display:flex}
 .site-header .nav-cart{display:block}
 .site-header .wordmark{font-size:25px}
}
@media(max-width:650px){
 h1,.history-intro h1,.product-details h1,.page-title h1{font:normal 36px/1.1 Georgia,serif;letter-spacing:normal}
 h2{font:normal 38px/1.12 Georgia,serif}
 .body-copy,.story-copy p:first-child,.delivery-copy,.history-intro>p{font:16px/1.9 Arial,sans-serif}
 .wine-type{font-size:10px;letter-spacing:2px}
 .footer-top{flex-direction:column;align-items:flex-start}
 .footer-contact{flex-direction:column;gap:20px;font-size:14px}
 .wordmark small{font:9px Arial,sans-serif;letter-spacing:5px;margin-top:8px}
 .site-footer .wordmark{font-size:22px}
 .site-footer{padding:45px 4% 25px}
}

/* Supplied Our Story photographs retain landscape, square and portrait framing. */
.history-page .gallery{background:#ebe9e3}
.history-page .gallery img{object-fit:contain}
.history-page .gallery-bar{position:static;padding:14px 20px;background:#faf9f5}
.history-page .gallery-caption{padding:0}
.history-page .gallery-controls button{border:1px solid #000}
.history-page .gallery-dots{flex-wrap:wrap;row-gap:14px}

.history-page .story-aside{border-top:0;padding-top:0}
.history-page .story-side-photo{display:block;width:100%;height:auto;margin:0 0 24px}

/* Our Story title is 6px larger than the 16px body text, at every breakpoint. */
.history-page .history-intro{display:block;text-align:center}
.history-page .history-intro h1{font:normal 22px/1.35 Georgia,serif;max-width:none;margin:0}
.history-page .history-intro .history-intro-note{max-width:900px;margin:16px auto 0;font:16px/1.9 Arial,sans-serif;color:#555}

/* Tourism & Lodging: cream, black frames, Georgia headings, original-image galleries. */
.tourism-page{padding-bottom:80px}
.stay-intro{padding:48px 0 40px}
.stay-welcome{width:min(960px,100%);margin:0 auto;text-align:center}
.stay-welcome h1{font:normal clamp(30px,3.2vw,46px)/1.15 Georgia,serif;margin:0 auto 26px;letter-spacing:normal}
.stay-welcome p+p{margin-top:15px}
.stay-frame{border:1px solid #000;padding:38px;background:transparent}
.stay-frame h2{font-size:36px;margin:15px 0 22px}
.stay-frame p+p{margin-top:15px}
.stay-welcome p,.stay-rates p,.stay-tour-info p,.stay-contact p{color:#555;font:16px/1.9 Arial,sans-serif}
.stay-gallery{min-width:0}
.stay-gallery-stage{height:clamp(280px,41vw,610px);background:#ebe9e3}
.stay-gallery-stage a{display:block;height:100%;cursor:zoom-in}
.stay-gallery-stage img{width:100%;height:100%;object-fit:contain}
.stay-gallery-bar{display:flex;align-items:center;gap:20px;border-bottom:1px solid #000;padding:15px 0}
.stay-gallery-counter{font:12px Arial,sans-serif;letter-spacing:2px;font-variant-numeric:tabular-nums;white-space:nowrap}
.stay-gallery-hint{font:11px Arial,sans-serif;color:#555;letter-spacing:.3px}
.stay-gallery-arrows{display:flex;gap:10px;margin-left:auto}
.stay-gallery-arrows button{border:1px solid #000;background:transparent;width:42px;height:40px;font:23px Georgia,serif;color:#000}
.stay-gallery-arrows button:hover{background:#000;color:#fff}
.stay-gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:14px 0 4px}
.stay-gallery-thumbs button{width:80px;height:60px;flex:none;padding:3px;border:1px solid transparent;background:none}
.stay-gallery-thumbs button.active{border-color:#000}
.stay-gallery-thumbs img{width:100%;height:100%;object-fit:contain;background:#ebe9e3}
.stay-rates{margin:54px 0 76px;display:grid;grid-template-columns:1fr 1.25fr;gap:8%;align-items:start}
.stay-price-list{margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}
.stay-price-list div{border-bottom:1px solid #b5b4b0;padding-bottom:14px}
.stay-price-list dt{font:12px Arial,sans-serif;letter-spacing:1px;margin-bottom:8px}
.stay-price-list dd{margin:0;font:27px Georgia,serif;white-space:nowrap}
.stay-price-list small{font:10px Arial,sans-serif;letter-spacing:1px}
.stay-rates .stay-policies{margin-top:15px;font-size:18px}
.stay-studio{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:5%;margin:0 0 88px}
.stay-studio--two{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
.stay-studio--two .stay-studio-images{order:2}
.stay-section-label{margin-bottom:24px}
.stay-section-label h2{margin-top:10px;font-size:48px}
.stay-studio .stay-gallery-stage{height:clamp(280px,30vw,440px)}
.stay-room-info{margin-top:89px}
.stay-room-info>.eyebrow{margin-bottom:24px}
.stay-features{list-style:none;padding:0;margin:0 0 28px}
.stay-features li{padding:12px 0;border-bottom:1px solid #d8d7d2;font:14px/1.8 Arial,sans-serif;color:#555}
.stay-features li:first-child{padding-top:0}
.stay-features li:last-child{border-bottom:0}
.stay-room-info .btn{width:100%}
.stay-tour{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:5%;align-items:stretch;margin:0 0 80px}
.stay-tour-info .stay-tour-price{font:32px Georgia,serif;color:#000;margin-bottom:20px}
.stay-tour-price span{font:12px Arial,sans-serif;margin-left:5px}
.stay-tour-info .stay-duration{font-size:14px;color:#000;margin:20px 0}
.stay-tour-photo{display:flex;align-items:center;background:#ebe9e3;cursor:zoom-in}
.stay-tour-photo img{width:100%;height:100%;max-height:600px;object-fit:contain}
.stay-reviews{border-top:1px solid #000;border-bottom:1px solid #000;padding:46px 0 45px;margin:0 0 75px}
.stay-review-heading{text-align:center;margin-bottom:32px}
.stay-review-heading h2{font-size:42px;margin-top:14px}
.stay-review-carousel{max-width:920px;margin:auto;text-align:center;touch-action:pan-y}
.stay-review-content{min-height:370px;display:flex;align-items:center;justify-content:center;padding:12px 30px 24px}
.stay-review-card{width:100%;margin:0}
.stay-review-mark{display:block;font:74px/.75 Georgia,serif;color:#000;margin-bottom:12px}
.stay-review-card blockquote{margin:0 auto 30px;max-width:830px;font:italic clamp(24px,2.35vw,32px)/1.5 Georgia,serif;color:#000;overflow-wrap:anywhere}
.stay-review-card figcaption:before{content:'';display:block;width:38px;height:1px;background:#000;margin:0 auto 22px}
.stay-review-author{display:block;font:12px/1.6 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}
.stay-review-location,.stay-review-note,.stay-review-translation{display:block;font:12px/1.6 Arial,sans-serif;color:#555;margin-top:6px}
.stay-review-note{font-style:italic}
.stay-review-translation{font-size:10px;margin-top:14px;letter-spacing:.3px}
.stay-review-controls{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:12px}
.stay-review-arrow{width:44px;height:44px;border:1px solid #000;color:#000;background:transparent;font:24px Georgia,serif}
.stay-review-arrow:hover{background:#000;color:#fff}
.stay-review-pagination{display:flex;justify-content:center;flex-wrap:wrap;margin:14px auto 0;max-width:100%;gap:0}
.stay-review-pagination button{display:grid;place-items:center;width:28px;height:34px;padding:0;border:0;background:transparent}
.stay-review-pagination span{display:block;width:5px;height:5px;border:1px solid #000;border-radius:50%;background:transparent}
.stay-review-pagination button.active span{background:#000;transform:scale(1.4)}
.stay-review-carousel:focus-visible{outline:2px solid #000;outline-offset:8px}
.stay-contact{display:flex;align-items:center;justify-content:space-between;gap:25px}
.stay-contact>div:last-child{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.stay-contact .text-link{font-size:13px;overflow-wrap:anywhere}
@media(max-width:1050px){.stay-frame{padding:28px}.stay-room-info{margin-top:89px}.stay-price-list{gap:20px}.stay-studio{gap:4%}}
@media(max-width:700px){
 .stay-rates .stay-policies{font-size:16px}
 .tourism-page{padding-bottom:40px}.stay-intro{padding:30px 0 28px}.stay-frame{padding:25px}.stay-frame h2{font-size:32px}.stay-welcome p,.stay-rates p,.stay-tour-info p,.stay-contact p{font-size:14px;line-height:1.85}
 .stay-gallery-stage{height:300px}.stay-gallery-bar{gap:10px;padding:12px 0}.stay-gallery-hint{font-size:10px;max-width:95px;line-height:1.4}.stay-gallery-arrows{gap:6px}.stay-gallery-arrows button{width:35px;height:36px}.stay-gallery-thumbs{gap:7px}.stay-gallery-thumbs button{width:64px;height:49px}
 .stay-rates{display:block;margin:32px 0 48px}.stay-rates-details{margin-top:28px}.stay-price-list{gap:20px}.stay-price-list dd{font-size:25px}.stay-studio,.stay-studio--two{display:flex;flex-direction:column;gap:24px;margin-bottom:48px}.stay-studio-images{width:100%;order:0!important}.stay-section-label h2{font-size:36px}.stay-section-label{margin-bottom:20px}.stay-studio .stay-gallery-stage{height:300px}.stay-room-info{margin-top:0;width:100%}.stay-features li{font-size:14px}
 .stay-tour{display:flex;flex-direction:column-reverse;gap:24px;margin-bottom:48px}.stay-tour-photo{height:300px}.stay-reviews{padding:35px 0;margin-bottom:45px}.stay-review-heading h2{font-size:33px}.stay-review-content{padding:8px 8px 20px;min-height:380px}.stay-review-card blockquote{font-size:23px;line-height:1.5;margin-bottom:25px}.stay-review-mark{font-size:64px}.stay-review-author{letter-spacing:1.5px}.stay-review-controls{margin-top:0}.stay-contact{display:block}.stay-contact>div:last-child{margin-top:24px}.stay-contact .text-link{font-size:12px}
}

/* Our Story: alternating photographs and text, with the archive at the end. */
.history-page .history-intro { padding: 48px 0 42px; }
.story-chapters { display: grid; gap: 62px; padding-bottom: 68px; }
.story-row { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(32px,5vw,76px); align-items: center; }
.story-row--right { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); }
.story-row--right .story-row-photo { grid-column: 2; grid-row: 1; }
.story-row--right .story-row-copy { grid-column: 1; grid-row: 1; }
.story-row-photo img { width: 100%; height: auto; object-fit: contain; }
.story-row-copy.body-copy { font: 16px/1.9 Arial,sans-serif; color: #555; }
.story-row-copy p + p { margin-top: 22px; }
.story-archive { padding: 26px 0 64px; border-top: 1px solid var(--line); }
.story-gallery-intro { max-width: 1000px; margin: 0 auto 28px; text-align: center; font: 16px/1.9 Arial,sans-serif; color: #555; }
.people-page { padding: 64px 0 72px; }
.people-row { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: clamp(12px,2vw,28px); overflow-x: auto; padding-bottom: 14px; scroll-snap-type: x proximity; }
.people-row:focus-visible { outline: 2px solid #000; outline-offset: 6px; }
.person-portrait { min-width: 0; scroll-snap-align: start; }
.person-portrait img { width: 100%; height: auto; aspect-ratio: 3/4; object-fit: contain; }
.person-portrait figcaption { margin-top: 16px; text-align: center; font: 24px/1.3 Georgia,serif; }
.vineyards-page { padding: 50px 0 72px; }
.vineyards-page > h1 { text-align: center; font-size: 32px; margin-bottom: 36px; }
.vineyards-intro { max-width: 900px; text-align: center; margin: 0 auto 40px; }
.vineyards-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(24px,3vw,44px); align-items: start; }
.vineyard-card { min-width: 0; }
.vineyard-copy { margin-bottom: 28px; }
.vineyard-card img { width: 100%; height: auto; }
.vineyard-card figcaption { padding-top: 20px; }
.vineyard-card h2 { font: 26px/1.3 Georgia,serif; margin-bottom: 8px; }
.vineyard-card figcaption p { font: 14px/1.8 Arial,sans-serif; color: #555; }
@supports (grid-template-rows: subgrid) {
 @media (min-width: 901px) {
  .vineyards-grid { align-items: stretch; row-gap: 28px; }
  .vineyard-card { display: grid; grid-template-rows: subgrid; grid-row: span 2; }
  .vineyard-copy { margin: 0; }
 }
}
@media (max-width: 900px) {
 .people-row { grid-template-columns: repeat(5,minmax(180px,1fr)); gap: 18px; }
 .vineyards-grid { grid-template-columns: 1fr; max-width: 620px; margin: auto; gap: 52px; }
}
@media (max-width: 650px) {
 .people-page { padding: 38px 0 42px; }
 .people-row { grid-template-columns: repeat(5,minmax(220px,1fr)); gap: 16px; }
 .person-portrait figcaption { margin-top: 14px; font-size: 22px; }
 .vineyards-page { padding: 36px 0 48px; }
 .vineyards-page > h1 { font-size: 30px; margin-bottom: 28px; }
 .vineyard-copy { margin-bottom: 22px; }
}
.site-header .nav-story { display: flex; align-items: center; gap: 2px; position: relative; }
.site-header .story-menu-toggle { color: #fff; background: transparent; border: 0; padding: 8px 3px; line-height: 1; font-size: 19px; }
.site-header .story-submenu { position: absolute; top: 100%; left: -18px; min-width: 205px; padding: 12px 18px; background: #000; border: 1px solid #ffffff30; box-shadow: 0 8px 20px #0002; z-index: 30; }
.site-header .story-submenu a { display: block; padding: 11px 0; font-size: 14px; white-space: nowrap; }
.site-header .story-submenu a:hover, .site-header .story-submenu a:focus-visible { text-decoration: underline; text-underline-offset: 5px; }
@media (max-width: 900px) {
 .site-header .nav-story { flex-wrap: wrap; }
 .site-header .story-submenu { position: static; flex-basis: 100%; box-shadow: none; border: 0; border-left: 1px solid #ffffff50; margin: 8px 0 0 5px; padding: 0 18px; }
 .story-row, .story-row--right { grid-template-columns: 1fr 1fr; gap: 28px; }
}
@media (max-width: 650px) {
 .history-page .history-intro { padding: 36px 0 30px; }
 .story-chapters { gap: 42px; padding-bottom: 42px; }
 .story-row, .story-row--right { display: flex; flex-direction: column; gap: 24px; align-items: stretch; }
 .story-row-photo img { max-height: none; width: 100%; height: auto; }
 .story-row-copy.body-copy { font-size: 16px; }
 .story-archive { padding: 24px 0 42px; }
 .story-gallery-intro { text-align: left; margin-bottom: 22px; }
}

.dogs-page{padding-top:55px;padding-bottom:70px}.dogs-intro{max-width:850px;margin:0 auto 40px}.dogs-intro h1{text-align:center;font-size:32px;margin:0 0 28px}.dogs-intro .body-copy{font-size:16px;line-height:1.9}

.site-header .story-submenu[hidden]{display:none}.site-header .nav-story>a{display:flex;align-items:center}.site-header .story-menu-toggle{display:inline-flex;align-items:center;justify-content:flex-start;width:24px;height:30px;padding:0 0 0 2px;flex:none}.site-header .story-menu-toggle .menu-chevron{display:block;width:11px;height:8px;flex:none}

.site-header .story-submenu:not([hidden]){display:flex;flex-direction:column;gap:4px}.site-header .story-submenu>a{display:block;width:100%;padding:12px 8px;line-height:1.5;margin:0}.site-header .story-submenu>a+a{border-top:1px solid #ffffff20}@media(max-width:900px){.site-header .story-submenu{margin:10px 0 8px 5px;padding:0 12px}.site-header .story-submenu>a{padding:13px 8px}}

/* Translucent dropdown for inner pages. */
.site-header .story-submenu{background:rgba(0,0,0,.78);border:0;box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.site-header .story-submenu>a{color:#fff;text-shadow:0 1px 2px #0008}
.site-header .story-submenu>a+a{border:0}
@media(max-width:900px){.site-header .story-submenu{background:rgba(0,0,0,.78);border:0}}

.bank-details{border:1px solid #d5d3ca;padding:22px;margin:20px 0 35px;font:15px/1.7 Arial,sans-serif}.bank-details dl{display:grid;grid-template-columns:150px 1fr;gap:8px 16px}.bank-details dt{color:#555}.bank-details dd{margin:0;overflow-wrap:anywhere}.bank-details p{margin-bottom:0}.ld-checkout-main{padding:45px 0 70px;min-height:65vh}.ld-checkout-main h1{font-size:40px;margin:28px 0 40px}.ld-native-checkout .woocommerce{color:#000;font:16px/1.7 Arial,sans-serif}.ld-native-checkout input.input-text,.ld-native-checkout textarea,.ld-native-checkout select{border:1px solid #bbb;background:#fff;color:#000;padding:12px;min-height:44px;border-radius:0}.ld-native-checkout .woocommerce button.button,.ld-native-checkout .woocommerce a.button{background:#000;color:#fff;border-radius:0;padding:15px 22px;font-weight:normal}.ld-native-checkout #payment{background:#eeeae2}.ld-native-checkout .woocommerce-info,.ld-native-checkout .woocommerce-message{border-top-color:#000}.ld-native-checkout .payment_box{white-space:pre-line}.ld-native-checkout .woocommerce-bacs-bank-details{white-space:normal}.ld-order-bottle{max-height:90px;width:auto!important;object-fit:contain}.ld-coverage{font-size:14px;line-height:1.6}.ld-native-checkout .mobile-toggle{display:none}@media(max-width:900px){.ld-native-checkout .mobile-toggle{display:block;background:transparent;color:white;border:1px solid #ffffff60;padding:9px}}@media(max-width:650px){.bank-details dl{grid-template-columns:1fr;gap:4px}.bank-details dd{margin-bottom:10px}.ld-checkout-main h1{font-size:32px}.ld-checkout-main{padding-top:25px}}

/* Checkout and order confirmation typography. */
.ld-native-checkout .woocommerce .ld-coverage,
.ld-native-checkout .woocommerce .ld-coverage label { font-size: 16px; line-height: 1.7; }
.ld-native-checkout .woocommerce h2 { font-size: 26px; line-height: 1.3; letter-spacing: 0; margin: 30px 0 18px; }
.ld-native-checkout .woocommerce h3 { font-size: 20px; line-height: 1.4; letter-spacing: 0; margin: 22px 0 12px; }
.ld-native-checkout .woocommerce .ld-bank-confirmation { max-width: 720px; margin: 28px 0 36px; font-size: 16px; line-height: 1.7; }
.ld-native-checkout .woocommerce .ld-bank-confirmation h2 { font-size: 22px; margin: 0 0 18px; }
.ld-bank-confirmation dl { margin: 0 0 20px; }
.ld-native-checkout .woocommerce ul.order_details { display: flex; flex-wrap: wrap; gap: 20px 28px; padding: 0; margin: 24px 0; }
.ld-native-checkout .woocommerce ul.order_details li { float: none; margin: 0; padding: 0; border: 0; max-width: 100%; overflow-wrap: anywhere; }
@media (max-width: 650px) {
 .ld-native-checkout .woocommerce h2 { font-size: 23px; }
 .ld-native-checkout .woocommerce .ld-bank-confirmation { padding: 20px; }
}
