@font-face{font-family:Glaschu;src:url('/assets/Glaschu-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:Glaschu;src:url('/assets/Glaschu-ExtraBold.otf') format('opentype');font-weight:800;font-display:block}
:root{--green:#495f5b;--khaki:#6b6c4e;--rust:#d8955c;--butter:#f0eda1;--cream:#f8eee5;--sage:#9db4a4;--ink:#253b36;--line:rgba(73,95,91,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--green);font:16px/1.55 Arial,sans-serif}h1,h2,h3,legend{font-family:Glaschu,Arial,sans-serif;font-weight:800;line-height:1.1}h1{font-size:clamp(2.8rem,6vw,5.8rem);margin:.2em 0}h2{font-size:2rem}h3{font-size:1.35rem}p{margin:0 0 1.1em}a{color:inherit;text-underline-offset:5px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,a,select,input{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--rust)}img{max-width:100%;display:block}button{color:inherit}a:hover{text-decoration-thickness:2px}.preview-bar{padding:7px 4%;background:var(--butter);color:var(--ink);text-align:center;font-size:.8125rem}.preview-bar a{margin-left:22px}.site-header{padding:24px 4%;display:flex;align-items:center;justify-content:flex-end;border-bottom:1px solid var(--line)}.header-brand{display:flex;align-items:center;flex-shrink:0}.nav-wordmark{height:.8em;width:auto;max-width:none}.wordmark{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:36px;font-family:Glaschu,Arial,sans-serif;font-weight:400;color:var(--green)}.site-header nav a{text-decoration:none}.book-link{position:relative}.book-link::after{content:"";position:absolute;left:0;right:0;bottom:-5px;border-bottom:1px solid var(--rust);pointer-events:none}.eyebrow{text-transform:uppercase;font-size:.8125rem;letter-spacing:.13em;font-weight:bold}.home-intro{padding:48px 4% 35px;display:grid;grid-template-columns:1fr 1fr;align-items:end}.home-intro .eyebrow{grid-column:1/-1;margin:0 0 8px}.home-intro h1{margin:0}.home-intro>p:last-child{text-align:right;margin:0 0 8px;font-size:1.1rem}.venue-pair{display:grid;grid-template-columns:1fr 1fr;margin:0 4%;border:1px solid var(--green)}.venue-panel{min-width:0}.woodlands-panel{border-right:1px solid var(--green);padding:28px 28px 0}.cave-panel{padding:28px 28px 0;background:var(--green);color:var(--cream)}.panel-heading{display:flex;justify-content:space-between;gap:20px;font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em}.panel-logo{height:140px;display:flex;align-items:center;justify-content:center;padding:30px 7%}.panel-logo .wordmark{max-height:90px;width:100%;object-fit:contain}.venue-photo{display:block;height:315px;overflow:hidden}.venue-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.venue-photo:hover img{transform:scale(1.035)}.cave-art{height:315px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;background:var(--khaki);position:relative;overflow:hidden;padding:30px}.cave-art img{width:90%;height:120px;object-fit:contain}.cave-art p{font-family:Glaschu,Arial,sans-serif;font-size:2.3rem;text-align:center;line-height:1.13;margin:25px 0 0;color:var(--butter)}.panel-bottom{padding:24px 0 18px}.venue-name{display:flex;justify-content:space-between;text-decoration:none;font-family:Glaschu,Arial,sans-serif;font-size:1.4rem}.menu-links{display:flex;gap:28px;margin-top:22px}.menu-links a{display:flex;gap:28px;align-items:center;text-decoration:none;border-bottom:1px solid;padding-bottom:6px;min-height:42px}.menu-links span{font-size:1.2rem}.home-note{padding:66px 7%;display:flex;justify-content:space-between;align-items:center;gap:45px}.home-note p{font-family:Glaschu,Arial,sans-serif;font-size:2rem;line-height:1.2;margin:0}.home-note span{max-width:440px}.site-footer{padding:48px 4%;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;background:var(--green);color:var(--cream)}.site-footer .wordmark{width:210px;margin-bottom:18px}.site-footer strong{font-family:Glaschu,Arial,sans-serif;display:block;font-size:1.3rem;margin-bottom:16px}.site-footer a{display:block;text-decoration:none;margin-bottom:8px}.site-footer p{font-size:.875rem}.venue-hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:60px 6%}.venue-hero>div:first-child{padding:25px 0;align-self:center}.venue-hero .wordmark{max-width:400px;margin:32px 0 40px}.venue-hero h1{font-size:clamp(2.5rem,4vw,4rem)}.venue-hero p:not(.eyebrow){max-width:510px;font-size:1.1rem}.venue-hero-photo{width:100%;height:630px;object-fit:cover}.venue-actions{display:flex;align-items:center;gap:25px;margin-top:42px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 25px;border:1px solid var(--green);background:none;text-decoration:none}.button:hover{background:var(--sage);color:var(--ink)}.primary,.venue-actions .button{background:var(--green);color:var(--cream)}.cave-hero{background:var(--green);color:var(--cream)}.cave-hero .button{background:var(--cream);color:var(--green)}.cave-hero-art{display:flex;align-items:center;justify-content:center;background:var(--khaki);padding:40px;min-height:440px}.visit{display:grid;grid-template-columns:1fr 1.4fr 1.4fr;gap:35px;padding:65px 6%}.visit h2,.visit h3{margin-top:0}.muted{font-size:.9rem}.menu-masthead{padding:35px 5% 22px;text-align:center;position:relative}.back{display:block;text-align:left;font-size:.875rem;text-decoration:none}.menu-brand{width:230px;margin:28px auto 35px}.cave-brand{background:var(--green);padding:17px;width:310px}.menu-masthead h1{font-size:4.2rem}.menu-masthead .eyebrow{margin-bottom:0}.menu-date{font-size:.875rem;margin-top:22px}.menu-tabs{display:flex;justify-content:center;gap:35px;border-bottom:1px solid var(--line)}.menu-tabs a{text-decoration:none;padding:14px 15px}.menu-tabs a[aria-current]{border-bottom:3px solid var(--green);font-weight:bold}.menu-tools{padding:25px 5%;display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:.875rem}.menu-tools>div{display:flex;align-items:center;gap:30px}.menu-tools select{border:1px solid var(--green);padding:8px;background:transparent;color:var(--green);margin-left:9px;max-width:210px}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:5px;padding:8px 0}.menu-paper{max-width:920px;margin:15px auto 60px;padding:25px 40px}.menu-section{margin-bottom:45px}.menu-section h2{font-size:1.5rem;text-transform:uppercase;letter-spacing:.025em;border-bottom:1px solid var(--line);padding-bottom:15px}.menu-section ul{margin:0;padding:0;list-style:none}.menu-section li{display:flex;justify-content:space-between;gap:24px;padding:12px 0}.dish-name{font-size:1.125rem}.vegan{font-size:.85rem;margin-left:10px}.menu-section li p{font-size:.875rem;margin:4px 0 0;max-width:650px}.dish-price{white-space:nowrap;align-self:flex-start;font-size:1.1rem}.dish-price small{font-size:.875rem}.allergy-note{text-align:center;border-top:1px solid var(--line);padding-top:24px;margin-top:35px;font-size:.9rem}.preview-note{text-align:center;font-size:.8125rem}.empty{padding:40px 0;text-align:center}.staff-shell{max-width:1360px;margin:auto;padding:45px 4% 70px}.staff-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.staff-heading h1{font-size:3.8rem}.staff-notice{padding:15px 20px;background:var(--butter);margin:20px 0 28px;font-size:.875rem;color:var(--ink)}.staff-menu-nav{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);margin-bottom:32px}.staff-menu-nav a{text-decoration:none;padding:16px 18px;font-size:.8125rem}.staff-menu-nav a+a{border-left:1px solid var(--line)}.staff-menu-nav strong{display:block;font-family:Glaschu,Arial,sans-serif;font-size:1.4rem;margin-top:5px}.staff-menu-nav a[aria-current]{background:var(--green);color:var(--cream)}.staff-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:38px;align-items:start}.selector-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.selector-top h2{font-size:1.5rem}.selector-top label{font-size:.8125rem}.selector-top input{display:block;background:transparent;border:1px solid var(--line);padding:6px;color:var(--green)}fieldset{padding:0;border:0;margin:20px 0 36px}legend{font-size:1.25rem;border-bottom:1px solid var(--line);width:100%;padding:12px 0}.dish-check{display:flex;gap:15px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);cursor:pointer}.dish-check input{width:23px;height:23px;accent-color:var(--green);flex-shrink:0}.dish-check>span{flex:1}.dish-check strong{font-weight:400}.dish-check small{display:block;font-size:.8125rem;margin-top:5px}.dish-check b{font-weight:400}.publish-panel{background:#fff9f1;border:1px solid var(--line);padding:26px;position:sticky;top:20px}.selection-count{font-family:Glaschu,Arial,sans-serif;font-size:3.7rem;line-height:1.1}.selection-count small{font:16px Arial}.publish-panel .button{display:flex;width:100%;margin:12px 0}.publish-panel p{font-size:.875rem}.publish-panel hr{border:0;border-top:1px solid var(--line);margin:26px 0}.print-option{display:flex;justify-content:space-between;padding:10px 0;font-size:.875rem}.printer-status{background:var(--cream);padding:15px;margin-top:25px;font-size:.875rem}.printer-status p{margin:8px 0}.printer-status button{border:1px solid var(--green);padding:8px;background:none;width:100%;font-size:.875rem}dialog{border:1px solid var(--green);padding:24px;max-width:780px;width:calc(100% - 30px);max-height:92dvh;background:var(--cream);color:var(--green)}dialog::backdrop{background:#122c26aa}dialog iframe{border:0;width:100%;height:60dvh;background:white}.dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-bar h2{font-size:1.6rem;margin:0 0 15px}.dialog-bar button{border:0;background:none;font-size:1.6rem;padding:0 8px;align-self:flex-start}.booking-fallback{font-size:.875rem;margin:12px 0 0}.matrix-wrap{overflow:auto}.matrix{border-collapse:collapse;width:100%;font-size:.75rem}.matrix td,.matrix th{border:1px solid var(--line);padding:9px;text-align:center}.matrix tbody th{text-align:left;min-width:190px}.matrix thead th:not(:first-child){writing-mode:vertical-rl;min-width:36px}.matrix-key{margin:20px 0;font-size:.875rem}.matrix-paper{max-width:1200px}.print-proof{text-align:center;font-size:.8125rem;margin:25px}.error{color:#843725}#preview-content{padding:20px 15px}.print-page .menu-tools{justify-content:center}
@media(max-width:800px){.site-header{padding:20px 5%}.site-header nav{gap:18px;font-size:.875rem}.home-intro{padding:32px 5% 25px;display:block}.home-intro>p:last-child{text-align:left;margin-top:12px}.home-intro h1{font-size:3.5rem}.venue-pair{grid-template-columns:1fr;margin:0 5%}.woodlands-panel{border-right:0}.venue-panel{padding:22px 20px 0}.panel-logo{height:115px}.venue-photo,.cave-art{height:280px}.home-note{display:block;padding:40px 7%}.home-note p{font-size:1.7rem;margin-bottom:22px}.site-footer{grid-template-columns:1fr 1fr;padding:35px 5%;gap:30px}.site-footer>div:first-child{grid-column:1/-1}.site-footer a{font-size:.875rem;overflow-wrap:anywhere}.venue-hero{grid-template-columns:1fr;padding:35px 6%;gap:30px}.venue-hero>div:first-child{padding:0}.venue-hero-photo{height:420px}.venue-hero .wordmark{margin:25px 0}.cave-hero-art{min-height:270px}.visit{grid-template-columns:1fr 1fr;padding:40px 6%}.visit>h2{grid-column:1/-1}.menu-masthead h1{font-size:3.3rem}.menu-tools{align-items:flex-start;flex-direction:column}.menu-tools>div{justify-content:space-between;width:100%;gap:15px}.menu-tools label{display:flex;flex-direction:column}.menu-tools select{margin:5px 0 0}.menu-paper{padding:10px 6%;margin-bottom:40px}.dish-name{font-size:1rem}.staff-heading{display:block}.staff-heading h1{font-size:3rem}.staff-menu-nav{display:flex;overflow:auto}.staff-menu-nav a{min-width:125px}.staff-workspace{grid-template-columns:1fr}.publish-panel{position:static}.staff-heading>a{display:inline-block;margin-bottom:15px}.selector-top{align-items:flex-start}.selector-top h2{font-size:1.3rem}.selection-count{font-size:3rem}.preview-bar{font-size:.75rem}.preview-bar a{margin-left:10px}}
/* Restrained, photograph-led direction. The original supplied wordmarks stay intact. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:28px 4% 50px}.photo-pair article{min-width:0}.location-photo{display:block;aspect-ratio:3/2;overflow:hidden}.location-photo img{height:100%;width:100%;object-fit:cover}.location-caption{padding:29px 0 0;display:flex;justify-content:space-between;gap:22px}.caption-logo{display:block;max-width:240px;width:17vw;height:48px;margin-bottom:18px}.caption-logo .wordmark{height:100%;width:100%;object-fit:contain;object-position:left center}.cave-caption-logo{background:transparent}.location-caption p{font-size:.875rem;line-height:1.8;margin:0}.caption-links{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;gap:22px;padding-top:8px}.caption-links .menu-links{margin:0;gap:18px}.caption-links .menu-links a{gap:0;border-bottom:0;padding:0;min-height:32px;font-size:.9375rem;text-decoration:underline}.caption-links .menu-links span{display:none}.caption-links>a{font-size:.875rem;text-decoration:none}.site-footer{background:transparent;color:var(--green);border-top:1px solid var(--line);padding-top:35px;padding-bottom:30px}.site-footer .footer-brand img{width:180px;max-width:100%;height:auto}.home-horizontal .site-footer .footer-brand img{width:clamp(180px,20vw,290px);max-height:44dvh;object-fit:contain;object-position:left top}.site-footer strong{font-family:Arial,sans-serif;font-weight:400;font-size:1rem;margin-bottom:12px}.site-footer a{font-size:.875rem}.simple-venue{padding:35px 4% 0}.simple-venue-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.simple-venue-heading>div{width:280px}.simple-venue-heading h1{font:16px Arial,sans-serif;margin:0}.location-wide-photo{width:100%;height:65vh;max-height:850px;object-fit:cover}.venue-details{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:35px 0 50px;border-bottom:1px solid var(--line)}.venue-details>p{max-width:470px;font:1.15rem/1.65 Cochin,Georgia,serif}.venue-details .menu-links{margin:0;justify-content:flex-end}.venue-book{margin:22px 0 0;text-align:right}.visit h2,.visit h3{font-size:1.25rem}.menu-section .dish-name,.menu-section .dish-price{font-family:Cochin,Georgia,serif;font-size:1.2rem}.menu-section li p{font-family:Cochin,Georgia,serif;font-size:1rem}.cave-brand{background:transparent;padding:0}.menu-masthead h1{font-size:3.1rem}.menu-section h2{font-size:1.25rem}.menu-brand{width:190px;margin-top:20px}.preview-bar{background:var(--cream);border-bottom:1px solid var(--line);font-size:.75rem;padding:5px 4%}.site-header{border-bottom:0;padding-top:30px;padding-bottom:22px}
@media(max-width:1050px){.location-caption{display:block}.caption-logo{width:240px;max-width:80%;height:46px}.caption-links{align-items:flex-start;flex-direction:row;margin-top:15px;flex-wrap:wrap}.photo-pair{gap:22px}}
@media(max-width:650px){.photo-pair{grid-template-columns:1fr;padding:15px 5% 40px;gap:45px}.location-caption{padding-top:22px}.caption-logo{width:220px;height:43px;margin-bottom:12px}.caption-links{margin-top:16px}.site-header{padding:21px 5% 14px}.site-header nav{gap:16px;font-size:.8125rem}.site-footer{grid-template-columns:1fr 1fr}.site-footer>div:first-child{grid-column:1/-1}.simple-venue{padding:25px 5% 0}.simple-venue-heading{display:block}.simple-venue-heading>div{max-width:260px}.simple-venue-heading h1{margin-top:20px}.location-wide-photo{height:55vh}.venue-details{grid-template-columns:1fr;gap:15px;padding-bottom:30px}.venue-details .menu-links{justify-content:flex-start}.venue-book{text-align:left}.visit{grid-template-columns:1fr;gap:20px}.visit h2{margin-bottom:0}.menu-section .dish-name,.menu-section .dish-price{font-size:1.1rem}}
@media screen{.menu-masthead{padding-top:12px;padding-bottom:12px}.menu-masthead .menu-brand{display:none}.menu-masthead .eyebrow{margin-top:20px}.menu-masthead h1{font-size:2.7rem}.menu-masthead p{margin-bottom:10px}.menu-masthead .menu-date{margin-top:14px}.menu-tools{padding-top:20px;padding-bottom:10px}.menu-paper{margin-top:0;padding-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.venue-photo img{transition:none}}
@page{size:A4;margin:17mm}
@media print{.menu-section .dish-name,.menu-section .dish-price{font-size:10pt}.cave-brand{background:transparent!important}}
@media print{body{background:#fff;color:#222;font-size:10pt}.no-print,.site-header,.site-footer,dialog{display:none!important}.menu-masthead{padding:0 0 10px}.menu-brand{width:44mm;margin:0 auto 7mm}.cave-brand{background:var(--green);print-color-adjust:exact;-webkit-print-color-adjust:exact;width:65mm}.menu-masthead h1{font-size:26pt}.menu-masthead .eyebrow{font-size:9pt}.menu-masthead p{font-size:10pt;margin:5px 0}.menu-date{font-size:8pt!important}.menu-paper{padding:0;margin:0;max-width:none}.menu-section{margin-bottom:18px}.menu-section h2{font-size:13pt;break-after:avoid;padding-bottom:6px;margin:14px 0 7px}.menu-section li{break-inside:avoid;padding:5px 0}.dish-name,.dish-price{font-size:10pt}.dish-price small,.menu-section li p{font-size:8.5pt}.allergy-note{font-size:8pt;margin-top:15px;padding-top:10px}.preview-note,.print-proof{font-size:8pt}.matrix{font-size:7pt}.matrix td,.matrix th{padding:4px}.matrix tbody th{min-width:130px}.matrix thead th:not(:first-child){min-width:23px}.matrix-wrap{overflow:visible}.matrix tr{break-inside:avoid}.matrix thead{display:table-header-group}.empty{padding:20px 0}}
/* Staff controls */
.account-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 24px;border-bottom:1px solid var(--line);margin-bottom:32px;font-size:.9375rem}.account-bar>div{display:flex;gap:24px;align-items:center}.staff-heading h1{font-size:clamp(2.4rem,4vw,4rem)}.square-summary{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--line)}.square-summary p{font-size:.875rem;margin:4px 0 0}.portion-help{font-size:.9375rem;padding-top:18px;max-width:650px}.login-panel{max-width:500px;margin:60px auto 100px;padding:0 24px}.login-panel h1{font-size:3rem}.login-panel form,.login-panel label,#user-form,#user-form>label{display:grid;gap:12px}.login-panel form{gap:20px;margin:30px 0}.login-panel input,#user-form input:not([type=checkbox]),#setup-link{padding:12px;border:1px solid var(--line);background:white;max-width:100%;width:100%}.users-list{border-top:1px solid var(--line)}.user-card{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-bottom:1px solid var(--line);padding:28px 0}.user-card h2{font-size:1.5rem;margin:0 0 12px}.user-card p{margin:0 0 8px}.permission-check{display:flex;gap:12px;align-items:center;padding:8px 0}.permission-check input{width:20px;height:20px;accent-color:var(--green)}#user-form fieldset{border:0;border-top:1px solid var(--line);padding:14px 0;margin-top:10px}#user-form legend{font:1rem Arial,sans-serif;padding-right:12px}#invite-link .button{margin:20px 0}#square-review-content h3{margin-top:30px}#square-review-content p{padding-bottom:10px;border-bottom:1px solid var(--line)}.publish-panel .button{margin-bottom:10px}
@media(max-width:700px){.account-bar{display:block}.account-bar>div{margin-top:15px;flex-wrap:wrap;gap:15px}.user-card{grid-template-columns:1fr;gap:14px}.staff-heading{display:block}.staff-heading>.button{margin:12px 0}.staff-workspace{display:block}.publish-panel{margin-top:30px}}
/* Compact menu editing: one aligned row, with supporting details on demand. */
.dish-list-scroll{overflow-x:auto;padding:0 5px 5px;margin:0 -5px}
.dish-list{--dish-columns:minmax(190px,1fr) 96px 176px 76px 28px 28px;min-width:680px}
.dish-list-drinks{--dish-columns:minmax(190px,1fr) 96px 28px 28px;min-width:380px}
.dish-list fieldset{min-inline-size:0;margin:18px 0 24px}
.dish-column-headings,.dish-editor{display:grid;grid-template-columns:var(--dish-columns);column-gap:12px;align-items:center}
.dish-column-headings{padding:9px 0 7px;font-size:.75rem}
.dish-column-headings>span:first-child{padding-left:0}
.dish-editor{position:relative;padding:7px 0;border-bottom:1px solid var(--line);min-height:53px}
.dish-editor .dish-check{border:0;padding:0;gap:12px;min-width:0;min-height:38px;font-size:.9375rem}
.dish-editor .dish-check input{margin:0;width:24px;height:24px}
.dish-editor .dish-check>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dish-editor .dish-check strong{font-weight:400}
.dish-controls{display:contents}
.dish-controls label{display:block;min-width:0}
.dish-controls input,.dish-controls select{display:block;width:100%;min-width:0;height:38px;padding:6px 8px;border:1px solid var(--line);border-radius:0;background:#fff9f3;color:var(--ink);font-size:.875rem}
.dish-controls input{font-variant-numeric:tabular-nums}
.dish-controls [hidden]{display:none}
.dish-details{grid-column:1/-1;min-width:0}
.dish-details summary{position:absolute;top:12px;right:0;width:28px;height:28px;display:grid;place-items:center;list-style:none;border:1px solid var(--line);border-radius:50%;font:italic 16px Georgia,serif;cursor:pointer}
.dish-details summary::-webkit-details-marker{display:none}
.dish-details summary:hover,.dish-details[open] summary{background:var(--butter);border-color:var(--green)}
.dish-details summary:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
.dish-details-content{display:flex;flex-wrap:wrap;gap:4px 18px;padding:12px 36px 5px;font-size:.8125rem}
.dish-details-content>strong{flex-basis:100%}
.square-dish-status{margin:0;font-size:inherit}
@media(min-width:801px) and (max-width:1120px){.staff-workspace{grid-template-columns:1fr}.publish-panel{position:static}}
/* Harrison Reid, February 2026 */
.photograph{display:block}.photograph img{display:block;width:100%;height:100%;object-fit:cover}.location-photo .photograph{width:100%;height:100%}.venue-hero{margin:0}.venue-hero .photograph{height:70vh;min-height:380px;max-height:900px}.venue-hero img{object-position:50% 50%}.venue-impressions{display:grid;grid-template-columns:1.4fr 1fr;align-items:start;gap:6%;padding:60px 0 0}.venue-impressions figure{margin:0}.venue-impressions .food-photograph{padding-top:70px}.food-photograph .photograph{aspect-ratio:4/3}.wine-photograph .photograph{aspect-ratio:4/5}.photography-credit{margin:28px 0 0;padding-bottom:25px;font-size:.8125rem;text-align:right}.venue-woodlands .venue-details{border-bottom:0;padding-bottom:0}
@media(max-width:650px){.venue-hero .photograph{height:65svh;min-height:360px;max-height:760px}.venue-hero img{object-position:50% 45%}.venue-impressions{grid-template-columns:1fr;gap:28px;padding-top:35px}.venue-impressions .food-photograph{padding-top:0}.venue-impressions .wine-photograph{width:80%;margin-left:auto}.photography-credit{font-size:.8125rem;margin-top:20px;text-align:right}}
.home-photography-credit{padding:0 4%;margin:0 0 28px}
/* La Cave: original colour frontage and monochrome bar photographs. */
.cave-location-photo .photograph{height:100%;width:100%}.cave-impressions{grid-template-columns:1fr 1fr;gap:7%}.cave-impressions .photograph{aspect-ratio:2/3}.cave-impressions .food-photograph{padding-top:0}.cave-impressions .wine-photograph{padding-top:85px}.venue-la-cave .venue-details{border-bottom:0;padding-bottom:0}.cave-frontage img{object-position:60% 58%}
@media(max-width:650px){.cave-frontage .photograph{height:auto;aspect-ratio:3/2;min-height:0;max-height:none}.cave-impressions{grid-template-columns:1fr;gap:30px}.cave-impressions .wine-photograph{padding-top:0;width:80%}}

/* Align captions with the visible lettering, including the original SVG margins. */
.location-caption{font-family:Glaschu,Arial,sans-serif;font-weight:400;color:var(--green);--caption-logo-width:min(17vw,240px);--caption-logo-height:48px}
.location-caption .caption-logo{width:var(--caption-logo-width);height:var(--caption-logo-height)}
.location-identity p,.location-identity+.caption-links{padding-left:min(calc(var(--caption-logo-width) * .05463),calc(var(--caption-logo-height) * .19006));text-align:left}
.location-identity--cave p,.location-identity--cave+.caption-links{padding-left:min(calc(var(--caption-logo-width) * .00379),calc(var(--caption-logo-height) * .02629))}
.site-header nav a:hover,.site-header nav a:focus-visible,.caption-links a:hover,.caption-links a:focus-visible{text-decoration:underline;text-decoration-color:var(--rust);text-decoration-thickness:2px}
.caption-links .menu-links a{text-decoration-color:var(--rust)}
.site-footer,.site-footer strong,.contact-links{font-family:Glaschu,Arial,sans-serif;font-weight:400}
.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.contact-links a{display:block;margin:0;text-decoration:none}
.visit .contact-links{margin-top:18px}
.contact-links .contact-action{text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:5px}
.contact-action span{color:var(--rust)}
.contact-links a:hover,.contact-links a:focus-visible{text-decoration:underline;text-decoration-color:var(--rust);text-decoration-thickness:2px}
@media(max-width:1050px){.location-caption{--caption-logo-width:240px;--caption-logo-height:46px}}
@media(max-width:650px){.location-caption{--caption-logo-width:220px;--caption-logo-height:43px}}
/* Christmas follows the same quiet typography and photography as the venue pages. */
.site-header{flex-wrap:wrap;gap:18px 24px}
.site-header nav{flex-wrap:wrap;justify-content:flex-end;row-gap:12px}
.site-header nav a{white-space:nowrap}
.site-header nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--rust);text-decoration-thickness:2px}
.christmas-page{padding:28px 4% 0;font-family:Glaschu,Arial,sans-serif;font-weight:400}
.christmas-page h1,.christmas-page h2,.christmas-page h3{font-weight:400}
.christmas-heading{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:7%;padding:14px 0 38px}
.christmas-season,.christmas-label{font-size:.875rem;margin-bottom:18px}
.christmas-heading h1{font-size:clamp(2.75rem,5.5vw,6rem);letter-spacing:-.025em;line-height:1.05;margin:0;max-width:9em}
.christmas-intro{max-width:330px;padding-bottom:5px}
.christmas-intro p{font-size:1.3rem;line-height:1.5;margin-bottom:20px}
.christmas-page figure{margin:0}
.christmas-main-photo .photograph{aspect-ratio:2/1;overflow:hidden}
.christmas-main-photo img{object-position:50% 54%}
.seasonal-link{display:inline-block;text-decoration:underline;text-decoration-color:var(--rust);text-decoration-thickness:1px;text-underline-offset:7px}
.seasonal-link span{color:var(--rust);margin-left:12px}
.seasonal-link:hover,.seasonal-link:focus-visible{text-decoration-thickness:2px}
.christmas-offer{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:70px 3%}
.christmas-offer h2{font-size:clamp(1.8rem,2.4vw,2.6rem);margin:0 0 24px}
.christmas-offer p{max-width:530px}
.christmas-prices{display:flex;gap:48px;margin:0 0 12px}
.christmas-prices dt{font-size:1rem;margin-bottom:4px}
.christmas-prices dd{font-size:2.5rem;line-height:1.2;margin:0}
.christmas-small{font-size:.875rem;line-height:1.6}
.christmas-offer .christmas-small{margin-bottom:26px}
.christmas-drinks{margin:24px 0 14px}
.christmas-drinks>div{display:flex;justify-content:space-between;gap:24px;padding:12px 0;border-bottom:1px solid var(--line)}
.christmas-drinks dd{margin:0;white-space:nowrap}
.christmas-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6%;padding:40px 3% 55px;border-top:1px solid var(--line)}
.christmas-details h2{font-size:1.4rem;margin:0 0 22px}
.christmas-details p{font-size:.9375rem}
.christmas-cave{display:grid;grid-template-columns:1.2fr 1fr;align-items:start;gap:7%;padding:40px 0 60px}
.christmas-cave .photograph{aspect-ratio:3/2}
.christmas-cave h2{font-size:clamp(1.8rem,2.8vw,3rem);margin:0 0 24px}
.christmas-gifts{margin-top:40px}
.christmas-gifts h3{font-size:1.35rem;margin:0 0 16px}
.christmas-cave-hours{margin:30px 0 0}
.christmas-enquiries{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7%;border-top:2px solid var(--rust);padding:45px 3%;scroll-margin-top:30px}
.christmas-enquiries h2{font-size:2.4rem;margin:0 0 22px}
.christmas-enquiries p{max-width:480px;margin:0}
.christmas-enquiry-links{display:flex;flex-wrap:wrap;gap:24px 40px;justify-content:flex-end}
@media(max-width:800px){.christmas-heading{grid-template-columns:1fr;gap:24px}.christmas-intro{max-width:480px}.christmas-main-photo .photograph{aspect-ratio:3/2}.christmas-offer{padding:45px 0;gap:8%}.christmas-details{grid-template-columns:1fr;padding:35px 0;gap:24px}.christmas-details h2{margin-bottom:14px}.christmas-details p{max-width:580px}.christmas-cave{grid-template-columns:1fr;gap:30px;padding-top:20px}.christmas-cave>div{max-width:580px}.christmas-enquiries{grid-template-columns:1fr;gap:26px;padding:35px 0}.christmas-enquiry-links{justify-content:flex-start}}
@media(max-width:650px){.christmas-page{padding:22px 5% 0}.christmas-heading{padding:5px 0 28px}.christmas-heading h1{font-size:3rem}.christmas-intro p{font-size:1.125rem}.christmas-offer{grid-template-columns:1fr;gap:36px}.christmas-prices{gap:60px}.christmas-offer h2{font-size:2rem}.christmas-season{font-size:.8125rem}.christmas-enquiries h2{font-size:2rem}.site-header nav{column-gap:14px}}
/* Independent, staggered photo sequences; the first photograph works without JavaScript. */
.location-carousel,.location-carousel .location-photo{position:relative}
.photo-slide{position:absolute;inset:0;display:block;opacity:0;transition:opacity 1.6s ease-in-out;pointer-events:none}
.photo-slide.is-active{opacity:1}
.carousel-control{position:absolute;right:14px;bottom:14px;z-index:1;min-width:58px;min-height:36px;padding:7px 12px;border:0;background:var(--cream);color:var(--green);font:400 .8125rem/1.2 Glaschu,Arial,sans-serif;opacity:.92}
.carousel-control[hidden]{display:none}
.carousel-control:hover,.carousel-control:focus-visible{opacity:1;text-decoration:underline;text-decoration-color:var(--rust)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-slide{transition:none}}


/* Keep the booking underline outside the link box so every navigation label aligns. */
.site-header nav .book-link:hover,.site-header nav .book-link:focus-visible{text-decoration:none}
.book-link:hover::after,.book-link:focus-visible::after{border-bottom-width:2px}

.location-caption .location-address{text-transform:uppercase;color:var(--green)}

.location-address .location-dot{font-weight:800}
.location-address .location-description{font-weight:400;color:var(--green)}

/* Sylvan availability search; final confirmation stays in the SevenRooms booking form. */
.booking-dialog{width:calc(100% - 32px);max-width:820px;padding:34px 38px;border:0;max-height:92dvh;font-family:Glaschu,Arial,sans-serif;font-weight:400}
.booking-dialog [hidden]{display:none!important}
.booking-dialog .dialog-bar{align-items:flex-start;margin-bottom:28px}
.booking-dialog .dialog-bar h2{font-size:clamp(2rem,4vw,3rem);font-weight:400;margin:10px 0 0}
.booking-dialog .dialog-bar>button{font:300 2rem/1 Arial,sans-serif;min-width:44px;min-height:44px;margin:-8px -15px 0 12px}
.booking-location{font-size:.875rem;margin:0}
.booking-search-form{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px 18px}
.booking-search-form label{font-size:.8125rem;display:flex;flex-direction:column;gap:9px;min-width:0}
.booking-search-form input,.booking-search-form select{min-width:0;width:100%;min-height:48px;padding:10px 0;background:transparent;color:var(--green);border:0;border-bottom:1px solid var(--green);border-radius:0;font:400 1rem/1.3 Glaschu,Arial,sans-serif;color-scheme:light}
.booking-search-form .button{grid-column:1/-1;justify-content:space-between;margin-top:4px;font:400 1rem Glaschu,Arial,sans-serif;min-height:50px;padding:14px 18px}
.booking-search-form .button:hover{background:var(--khaki);color:var(--cream)}
.booking-search-form .button span{color:var(--cream)}
.booking-search-status{font-size:.875rem;margin:28px 0 22px}
.booking-results>section{border-top:1px solid var(--line);padding:22px 0}
.booking-results h3{font:400 1.3rem/1.2 Glaschu,Arial,sans-serif;margin:0 0 16px}
.booking-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:10px}
.booking-time{border:1px solid var(--line);background:transparent;font:400 1rem Glaschu,Arial,sans-serif;min-height:45px;padding:10px 8px;color:var(--green)}
.booking-time:hover,.booking-time:focus-visible{border-color:var(--rust);background:var(--butter)}
.booking-card-note,.booking-availability-note{font-size:.8125rem;line-height:1.5;margin:14px 0 0}
.booking-help{border-top:1px solid var(--line);padding:20px 0 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;font-size:.8125rem}
.booking-help p{margin:0}.booking-help a,.booking-help button,.booking-fallback a{text-decoration-color:var(--rust)}
.booking-footnote{font-size:.75rem;margin:22px 0 0;opacity:.8}
.booking-selection{font-size:.9375rem;line-height:1.6;margin:15px 0 20px}
.booking-dialog iframe{height:62dvh;min-height:340px}
.booking-dialog .booking-fallback{font-size:.8125rem}
.booking-back{font-size:.875rem}
@media(max-width:550px){.booking-dialog{padding:25px 22px;max-height:94dvh;width:calc(100% - 20px)}.booking-dialog .dialog-bar{margin-bottom:25px}.booking-search-form{grid-template-columns:1fr 1fr;gap:18px 16px}.booking-search-form label:first-child{grid-column:1/-1}.booking-search-form .button{margin-top:6px}.booking-dialog iframe{height:62dvh;min-height:280px}.booking-help{display:block}.booking-help button{margin-top:10px}.booking-times{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}}

/* Full-height venue panels, progressively enhanced on larger screens. */
.home-browse,.home-venue-contact{display:none}
.home-horizontal-root{height:100%;overflow:hidden}
body.home-horizontal{height:100dvh;overflow:hidden}
.home-horizontal #main{height:calc(100dvh - var(--home-header-height));min-height:0}
.home-horizontal .site-header{position:relative;background:var(--cream)}
.home-horizontal .home-journey,.home-horizontal .home-stage{height:100%;overflow:hidden}
.home-horizontal .home-track{display:flex;gap:0;padding:0;height:calc(100% - 58px);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;scroll-behavior:auto}
.home-horizontal .home-track::-webkit-scrollbar{display:none}
.home-horizontal .home-track>.site-footer{flex:0 0 100%;width:100%;height:100%;border-top:0;display:grid;grid-template-columns:1fr 1fr 1fr;align-content:center;padding:6%;gap:6%;font-family:Glaschu,Arial,sans-serif}
.home-horizontal .home-track>.site-footer strong{font:400 1.5rem Glaschu,Arial,sans-serif;margin-bottom:25px}
.home-horizontal .home-track>.site-footer a{font-size:1rem;margin-bottom:16px}
.home-horizontal .home-track>article{flex:0 0 100%;display:grid;grid-template-columns:62% 38%;height:100%;padding:10px 2% 0;min-width:0}
.home-horizontal .location-carousel{min-width:0;min-height:0;height:100%}
.home-horizontal .location-photo{height:100%;aspect-ratio:auto}
.home-horizontal .location-caption{display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:32px clamp(28px,4vw,80px);gap:0;min-width:0;height:100%;--caption-logo-width:260px;--caption-logo-height:58px}
.home-horizontal .caption-logo{max-width:100%;margin-bottom:40px}
.home-horizontal .location-caption .location-address{font-size:.75rem;line-height:1.9;margin-top:24px;opacity:.85}
.location-caption .home-location-story{font:400 1.2rem/1.65 Glaschu,Arial,sans-serif;max-width:330px;margin:20px 0}
.home-horizontal .location-caption .home-location-story{font-size:clamp(1.05rem,1.45vw,1.5rem);line-height:1.65;margin:0;max-width:340px}
.home-horizontal .caption-links{align-items:flex-start;flex-direction:column;justify-content:flex-start;margin-top:40px;padding-top:0;gap:24px}
.home-horizontal .caption-links .menu-links{gap:24px;flex-wrap:wrap}
.home-horizontal .caption-links .menu-links a{font-size:.875rem}
.home-horizontal .caption-links>a{font-size:.9375rem}
.home-horizontal .home-venue-contact{display:block;margin-top:50px;padding-left:var(--logo-inset,0)}
.home-horizontal .home-venue-contact a{display:block;text-decoration:none;font-size:.875rem;overflow-wrap:anywhere;margin-bottom:7px}
.home-horizontal .home-venue-contact .contact-action{text-decoration:underline;text-decoration-color:var(--rust);margin-top:12px}
.home-horizontal .home-browse{height:58px;padding:0 2%;display:flex;align-items:center;justify-content:space-between;gap:25px;font:400 .8125rem Glaschu,Arial,sans-serif}
.home-browse>.home-links{display:flex;gap:28px}
.home-browse button{border:0;background:none;padding:10px 0;font:inherit;min-height:40px}
.home-browse button span{margin-left:7px}
.home-browse button[aria-current]{text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:6px}
.home-photo-credit{font-size:.6875rem}
.home-horizontal .home-photography-credit{display:none}
@media(min-width:1000px) and (max-height:760px){.home-horizontal .location-caption{padding-top:15px;padding-bottom:15px;--caption-logo-height:46px}.home-horizontal .caption-logo{margin-bottom:28px}.home-horizontal .caption-links{margin-top:22px;gap:15px}.home-horizontal .home-venue-contact{margin-top:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.home-horizontal-root,body.home-horizontal{height:auto;overflow:visible}.home-horizontal #main{height:auto}.home-browse{display:none!important}.home-horizontal .home-journey{height:auto!important}.home-horizontal .home-stage{position:static;height:auto;overflow:visible}.home-horizontal .home-track{display:block;transform:none!important}.home-horizontal .home-track>article{display:block}.home-horizontal .location-photo{height:100mm}.home-horizontal .location-caption{padding:20px}}

@media(min-width:900px) and (max-height:560px){.home-horizontal .site-header{padding-top:14px;padding-bottom:14px}.home-horizontal .location-caption{padding:10px 28px;--caption-logo-height:32px}.home-horizontal .caption-logo{margin-bottom:16px}.home-horizontal .location-caption .home-location-story{font-size:1rem;line-height:1.5}.home-horizontal .location-caption .location-address{margin-top:12px}.home-horizontal .caption-links{margin-top:14px}.home-horizontal .home-browse{height:44px}.home-horizontal .home-track{height:calc(100% - 44px)}}

.home-horizontal .site-header nav>a:not(.book-link){display:none}
.home-editorial-photo,.home-team-portraits figure{margin:0;overflow:hidden}
.home-editorial-photo .photograph{aspect-ratio:3/2;height:100%}
.home-team-portraits{display:grid;grid-template-columns:1fr 1fr;gap:20px;min-height:0;min-width:0}
.home-team-portraits .photograph{height:100%;aspect-ratio:2/3}
.home-editorial h2{font:400 clamp(2rem,3vw,3.5rem)/1.15 Glaschu,Arial,sans-serif;margin:0 0 32px}
.home-editorial .caption-links .seasonal-link{text-decoration:underline;text-decoration-color:var(--rust)}
.home-horizontal .home-editorial-photo,.home-horizontal .home-team-portraits{height:100%;min-height:0}
.home-horizontal .home-editorial-photo .photograph,.home-horizontal .home-team-portraits .photograph{aspect-ratio:auto;height:100%}
.home-horizontal .home-editorial .location-address{margin-top:30px}
@media(max-width:650px){.home-team-portraits{gap:12px}.home-editorial h2{margin:0 0 22px}.home-editorial .location-caption{display:block}}
@media(min-width:900px) and (max-height:560px){.home-editorial h2{font-size:2rem;margin-bottom:20px}.home-horizontal .home-editorial .location-address{margin-top:16px}}

/* A small, optional booking-cookie notice shares the bottom navigation line. */
.cookie-notice{font:400 .8125rem Glaschu,Arial,sans-serif;flex:0 0 auto;min-width:0}
.cookie-notice[hidden],.cookie-notice [hidden]{display:none!important}
.cookie-prompt{display:flex;align-items:center;gap:12px}
.cookie-notice button{border:0;background:none;color:var(--green);font:inherit;min-height:40px;padding:8px 0;white-space:nowrap}
.cookie-notice [data-cookie-choice],.cookie-saved{text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:5px}
.cookie-message{width:18ch;overflow:hidden;text-align:left;mask-image:linear-gradient(90deg,#000 85%,transparent)}
.cookie-ticker{display:flex;width:max-content;animation:cookie-marquee 24s linear infinite;will-change:transform}
.cookie-notice .cookie-ticker span{display:block;flex:none;margin:0;padding-right:2em}
.cookie-message:hover .cookie-ticker,.cookie-message:focus-visible .cookie-ticker{animation-play-state:paused}
.cookie-motion-stopped .cookie-ticker{animation:none;transform:none;will-change:auto}
.site-footer>.cookie-notice{grid-column:1/-1;justify-self:start}
.home-browse>.cookie-notice{margin-left:auto;margin-right:auto}
.cookie-dialog{max-width:580px;padding:32px;font:400 1rem/1.65 Glaschu,Arial,sans-serif}
.cookie-dialog .dialog-bar h2{font:400 2rem/1.15 Glaschu,Arial,sans-serif;margin:0 0 24px}
.cookie-dialog p{margin:0 0 18px}.cookie-dialog a{text-decoration-color:var(--rust)}
.cookie-current{font-size:.8125rem}
.cookie-dialog-actions{display:flex;gap:16px}.cookie-dialog-actions .button{flex:1;font:inherit}
.booking-cookie-gate{padding:22px 0;border-top:1px solid var(--line);font-size:.875rem}
.booking-cookie-gate p{margin-bottom:12px}
@keyframes cookie-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(min-width:900px) and (max-width:1150px){.home-horizontal .home-browse{gap:12px;font-size:.75rem}.home-browse>.home-links{gap:16px}.home-photo-credit{max-width:110px;text-align:right;font-size:.625rem}.cookie-notice{font-size:.75rem}.cookie-prompt{gap:9px}.cookie-message{width:16ch}}
@media(prefers-reduced-motion:reduce){.cookie-ticker{animation:none;transform:none;will-change:auto}}
@media print{.cookie-notice,.cookie-dialog{display:none!important}}

.location-caption .cave-caption-links{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:18px;row-gap:12px}
.location-caption .cave-caption-links .menu-links{flex-wrap:nowrap;gap:18px}
.cave-caption-links a{white-space:nowrap}
.location-caption .cave-caption-links>.online-wine{display:inline-flex;align-items:center;gap:8px;margin-left:auto;min-height:32px;font-size:.875rem}
.online-wine span{font-size:1.2rem}
.location-caption .cave-caption-links>.online-wine{position:relative;padding:5px 12px;border:0;text-decoration:none}
.chalk-link::before,.chalk-link::after{content:"";position:absolute;pointer-events:none;inset:-3px -3px -4px -2px;border:3px solid var(--butter);border-radius:2px 4px 2px 1px;transform:rotate(-1.1deg);mask-image:url('/assets/chalk-grain.svg');mask-size:96px 96px;mask-repeat:repeat}
.chalk-link::after{inset:-5px -1px -2px -5px;border-width:1.5px;opacity:.7;transform:rotate(.65deg)}
.chalk-link:hover::before{border-width:4px}

/* House Wine is another small photographic journal within Sylvan. */
.house-wine-journey{font-family:Glaschu,Arial,sans-serif}
.house-wine-title{margin-bottom:32px}
.house-wine-title p{font:400 clamp(2.8rem,5vw,6rem)/.98 Glaschu,Arial,sans-serif;margin:0 0 12px;max-width:5ch}
.house-wine-title>span{font-size:1rem}
.house-wine-copy{font:400 1rem/1.65 Glaschu,Arial,sans-serif;max-width:400px;margin:22px 0 0}
.house-wine-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px}
.house-wine-actions button{font:inherit;text-align:left;min-height:40px}
.house-wine-kicker{font-size:.8125rem;margin:0 0 22px}
.house-wine-caption h2{font-weight:400;margin-bottom:0}
.house-wine-frequency{border:0;padding:0;margin:26px 0 0;min-width:0}
.house-wine-frequency legend{font:400 .8125rem Glaschu,Arial,sans-serif;padding:0;margin-bottom:12px}
.house-wine-frequency>div{display:flex;gap:24px}
.house-wine-frequency label{display:flex;align-items:center;gap:9px;cursor:pointer;min-height:40px}
.house-wine-frequency input{accent-color:var(--green);width:16px;height:16px;margin:0}
.house-wine-frequency input:checked+span{text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:6px}
.house-wine-plan{font-size:.8125rem;margin:8px 0 0}
.house-wine-purchase{margin-top:22px}
.house-wine-purchase p,.house-wine-signup>p{font-size:.8125rem;line-height:1.55;margin:0 0 12px}
.house-wine-purchase .button{font:inherit;text-align:left;min-height:44px;padding:10px 16px;width:100%;max-width:350px}
.house-wine-enquiry{font-size:.8125rem;margin-top:18px;text-decoration-color:var(--rust);display:inline-block;align-self:flex-start}
.house-wine-signup{margin-top:32px;max-width:420px}
.house-wine-signup>label{font-size:.8125rem}
.house-wine-signup>div{display:flex;gap:16px;border-bottom:1px solid var(--green);margin:6px 0 14px}
.house-wine-signup input{border:0;background:none;min-width:0;width:100%;padding:14px 0;color:var(--green);font:inherit}
.house-wine-signup button{border:0;background:none;white-space:nowrap;padding:14px 0;font:inherit}
.house-home-link{display:flex;align-items:center;gap:7px;text-decoration:none;min-height:40px}
.home-horizontal .home-track>.house-wine-membership,.home-horizontal .home-track>.house-wine-newsletter{grid-template-columns:45% 55%}
.home-horizontal .house-wine-caption{padding-left:clamp(30px,5vw,100px);padding-right:clamp(30px,5vw,100px)}
.home-horizontal .house-wine-intro{grid-template-columns:58% 42%}
.house-wine-journey .home-editorial-photo img{object-position:center}
@media(min-width:900px) and (max-height:760px){.house-wine-title{margin-bottom:22px}.house-wine-title p{font-size:3.6rem}.house-wine-caption h2{font-size:2.4rem}.house-wine-copy{font-size:.875rem;margin-top:16px}.house-wine-frequency{margin-top:16px}.house-wine-kicker{margin-bottom:14px}.house-wine-purchase{margin-top:16px}.house-wine-actions{margin-top:18px;gap:18px}.house-wine-frequency legend{margin-bottom:4px}}
@media(min-width:900px) and (max-height:600px){.house-wine-caption h2{font-size:2rem}.house-wine-kicker{margin-bottom:8px}.house-wine-title p{font-size:3rem}.house-wine-title{margin-bottom:15px}.house-wine-copy{font-size:.8125rem;line-height:1.5;margin-top:12px}.house-wine-frequency{margin-top:10px}.house-wine-purchase{margin-top:12px}.house-wine-enquiry{margin-top:10px}.house-wine-purchase p{margin-bottom:6px}.house-wine-frequency label{min-height:32px}}
@media(max-width:899px){.house-wine-journey .photo-pair{display:block;padding:15px 5% 40px}.house-wine-journey .home-track>article{margin-bottom:60px}.house-wine-journey .location-caption{display:block;padding:28px 0 0}.house-wine-journey .home-editorial-photo{height:55vh}.house-wine-journey .home-editorial-photo .photograph{aspect-ratio:auto}.house-wine-title p{max-width:none;font-size:3.5rem}.house-wine-copy{max-width:100%}.house-wine-signup{max-width:none}.house-wine-actions{gap:22px}.house-wine-purchase .button{max-width:none}}

/* The shop is a second horizontal floor of the homepage. */
.wine-shop{color:var(--green);background:var(--cream);font-family:Glaschu,Arial,sans-serif;padding:0 2%;scroll-margin-top:20px}
.shop-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px}
.shop-heading h2{font:400 clamp(1.7rem,2.3vw,2.6rem)/1.1 Glaschu,Arial,sans-serif;margin:0;text-align:center}
.shop-heading>a{font-size:.875rem;text-decoration-color:var(--rust);text-underline-offset:7px}
.shop-heading>a:last-child{text-align:right}.shop-heading h2:focus{outline:none}
.shop-toolbar{display:flex;gap:30px;align-items:center;justify-content:space-between;min-width:0;border-top:1px solid var(--line)}
.shop-filters{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.shop-filters button,.shop-status button,.shop-bottom button{font:inherit;border:0;background:none;color:inherit;min-height:40px;padding:6px 0}
.shop-filters button{font-size:.875rem;white-space:nowrap}.shop-filters button[aria-pressed=true]{text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:7px}
.shop-search{width:170px;flex-shrink:0}.shop-search input{font:400 .875rem Glaschu,Arial,sans-serif;color:var(--green);border:0;border-bottom:1px solid var(--line);background:none;width:100%;padding:10px 0;border-radius:0}.shop-search input::placeholder{color:var(--green);opacity:.7}
.shop-status{font-size:.7rem;line-height:1.5;margin:0;padding:6px 0 14px;min-height:30px}.shop-status a{text-decoration-color:var(--rust)}
.shop-rail{display:flex;gap:25px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;min-height:0;min-width:0;scroll-behavior:auto}
.shop-rail::-webkit-scrollbar{display:none}
.shop-bottle{flex:0 0 clamp(220px,calc((100dvh - 312px)*.75),480px);min-width:0;height:100%;position:relative}
.shop-bottle-button{display:grid;grid-template-rows:minmax(0,1fr) auto;border:0;background:none;color:inherit;font:inherit;padding:0;text-align:left;width:100%;height:100%;position:relative;cursor:pointer}
.shop-bottle-photo{min-height:0;overflow:hidden;background:#eee4d8;height:100%;position:relative}.shop-bottle-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 700ms ease}
.shop-bottle-caption{padding:16px 0 4px;display:grid;grid-template-columns:1fr auto;gap:8px 18px;align-items:baseline;min-height:86px}.shop-bottle-caption h3{font:400 clamp(.95rem,1.12vw,1.25rem)/1.3 Glaschu,Arial,sans-serif;margin:0;max-width:33ch}.shop-bottle-style{font-size:.6875rem;margin:0;grid-column:1/-1;opacity:.75}.shop-bottle-price{font-size:.95rem;white-space:nowrap}
.shop-bottle-hover{position:absolute;left:0;right:0;bottom:86px;max-height:75%;padding:25px;color:var(--cream);background:rgba(49,70,65,.94);opacity:0;transform:translateY(12px);transition:opacity 250ms,transform 350ms;pointer-events:none}
.shop-bottle-hover p{font-size:.875rem;line-height:1.6;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.shop-bottle-hover span{font-size:.75rem;text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:5px}
.shop-bottle-button:hover .shop-bottle-hover,.shop-bottle-button:focus-visible .shop-bottle-hover{opacity:1;transform:none}.shop-bottle-button:hover img{transform:scale(1.025)}
.shop-image-unavailable{display:grid;place-items:center;font-size:1rem;padding:30px}.shop-empty,.shop-loading{font-size:clamp(1.5rem,3vw,3rem);margin:auto 0;max-width:30ch;padding:40px}
.shop-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.75rem}.shop-bottom>div{display:flex;gap:28px}.shop-bottom button{font-size:1.5rem;min-width:32px}.shop-bottom button:disabled{opacity:.25}
.shop-product-dialog{width:min(900px,calc(100% - 36px));max-width:900px;max-height:90dvh;padding:30px;font-family:Glaschu,Arial,sans-serif;color:var(--green);background:var(--cream)}
.shop-product-dialog .dialog-bar{font-size:.8125rem;align-items:center;margin-bottom:25px}.shop-product-dialog .dialog-bar button{font-size:1.8rem}
.shop-product-detail{display:grid;grid-template-columns:45% 1fr;gap:35px;align-items:center}.shop-product-detail>img{width:100%;max-height:65dvh;object-fit:contain;background:#eee4d8}.shop-product-detail h2{font:400 2rem/1.2 Glaschu,Arial,sans-serif;margin:15px 0 24px}.shop-product-detail p{font-size:.9375rem;line-height:1.65;margin:0 0 20px}.shop-product-detail [data-product-description]{white-space:pre-line}.shop-product-detail .shop-product-price{font-size:1.25rem}.shop-product-detail .shop-purchase-note{font-size:.75rem;line-height:1.5;margin-top:16px}.shop-purchase{font-size:1rem;text-decoration-color:var(--rust);text-underline-offset:6px}
.home-horizontal .wine-shop{position:fixed;inset:0;z-index:8;display:grid;grid-template-rows:90px 48px auto minmax(0,1fr) 58px;transform:translateY(100dvh);visibility:hidden;transition:transform 850ms cubic-bezier(.65,0,.2,1),visibility 0s 850ms}
.home-horizontal.home-page .home-journey,.home-horizontal.home-page .site-header{transition:transform 850ms cubic-bezier(.65,0,.2,1)}
.home-horizontal.shop-is-open .wine-shop{transform:translateY(0);visibility:visible;transition-delay:0s}
.home-horizontal.shop-is-open .home-journey,.home-horizontal.shop-is-open .site-header{transform:translateY(-100dvh)}
@media(min-width:900px) and (max-width:1150px){.shop-filters{gap:17px}.shop-search{width:140px}.shop-filters button{font-size:.8rem}.shop-toolbar{gap:20px}}
@media(min-width:900px) and (max-height:600px){.home-horizontal .wine-shop{grid-template-rows:64px 44px auto minmax(0,1fr) 42px}.shop-heading{min-height:64px}.shop-status{padding-bottom:8px}.shop-bottle-caption{padding-top:10px;min-height:75px}.shop-bottle-hover{bottom:75px}}
@media(max-width:899px){.wine-shop{padding:32px 5%;border-top:1px solid var(--line)}.shop-heading{flex-wrap:wrap;gap:24px;margin-bottom:24px}.shop-heading h2{order:3;text-align:left;width:100%;font-size:2.75rem}.shop-toolbar{flex-direction:column;align-items:stretch;gap:12px;padding-top:10px}.shop-filters{gap:8px 24px}.shop-search{width:100%}.shop-status{margin-top:16px}.shop-rail{display:grid;grid-template-columns:1fr 1fr;gap:30px 16px;overflow:visible}.shop-bottle{height:auto}.shop-bottle-photo{aspect-ratio:3/4}.shop-bottle-caption{min-height:100px;gap:7px}.shop-bottle-caption h3{font-size:1rem}.shop-bottle-price{grid-column:1/-1}.shop-bottle-style{font-size:.65rem}.shop-bottle-hover{display:none}.shop-bottom{margin-top:30px}.shop-bottom>div{display:none}.shop-product-detail{grid-template-columns:1fr;gap:20px}.shop-product-detail>img{max-height:40dvh}.shop-product-detail h2{font-size:1.7rem}.shop-product-dialog{padding:22px}}
@media(prefers-reduced-motion:reduce){.home-horizontal .wine-shop,.home-horizontal.home-page .home-journey,.home-horizontal.home-page .site-header,.shop-bottle-hover,.shop-bottle-photo img{transition:none}.shop-bottle-button:hover img{transform:none}}
@media print{.wine-shop,.shop-product-dialog{display:none!important}}

.house-wine-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:22px}
.house-wine-tiers>div{border-top:1px solid var(--rust);padding-top:12px}
.house-wine-tiers h3{font:400 1rem Glaschu,Arial,sans-serif;margin:0 0 12px}
.house-wine-tiers p{font-size:.8rem;line-height:1.5;margin:8px 0 0}.house-wine-tiers .house-tier-price{font-size:2rem;line-height:1;margin:0 0 12px}
.house-wine-benefits{margin-top:24px;border-top:1px solid var(--rust);padding-top:12px;max-width:400px}.house-wine-benefits p{font-size:.9rem;line-height:1.6;margin:12px 0}
.home-horizontal .home-track>.house-wine-membership{grid-template-columns:35% 65%}
.house-wine-membership .house-wine-copy{max-width:580px}.house-wine-membership .house-wine-enquiry{margin-top:10px}
.house-wine-membership .house-wine-frequency{margin-top:18px}.house-wine-membership .house-wine-kicker{margin-bottom:15px}
.house-wine-membership .house-wine-purchase{margin-top:18px}
@media(min-width:900px) and (max-height:760px){.house-wine-membership .house-wine-caption{padding-top:16px;padding-bottom:16px}.house-wine-membership .house-wine-caption h2{font-size:2rem}.house-wine-membership .house-wine-copy{margin-top:12px}.house-wine-tiers{margin-top:15px;gap:18px}.house-wine-tiers h3{font-size:.85rem}.house-wine-tiers p{font-size:.75rem}.house-wine-tiers .house-tier-price{font-size:1.6rem;margin-bottom:8px}.house-wine-membership .house-wine-purchase{margin-top:12px}}
@media(min-width:900px) and (max-height:600px){.house-wine-tiers>div>p:last-child{display:none}.house-wine-membership .house-wine-enquiry{display:none}.house-wine-membership .house-wine-frequency{margin-top:8px}.house-wine-membership .house-wine-kicker{margin-bottom:8px}}
@media(max-width:550px){.house-wine-tiers{grid-template-columns:1fr;gap:20px}.house-wine-tiers>div{display:grid;grid-template-columns:1fr auto;gap:6px 20px}.house-wine-tiers h3{margin:0}.house-wine-tiers .house-tier-price{grid-column:2;grid-row:1/3;margin:0}.house-wine-tiers p:last-child{grid-column:1/-1}}

@media(min-width:900px) and (max-height:600px){.shop-bottle{flex-basis:clamp(180px,calc((100dvh - 260px)*.75),300px)}}
@media(max-width:899px){.shop-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-bottle-button{display:block;height:auto}.shop-bottle-photo{height:auto}.shop-empty,.shop-loading{grid-column:1/-1;padding:25px 0;font-size:1.6rem;line-height:1.45}}
@media(min-width:900px) and (max-height:620px){.house-wine-membership .house-wine-caption{min-height:0}.house-wine-membership .house-wine-kicker{display:none}.house-wine-membership .house-wine-copy{font-size:.8125rem;line-height:1.45;margin-top:10px}.house-wine-membership .house-wine-plan{font-size:.75rem;line-height:1.45}.house-wine-membership .house-wine-tiers{margin-top:12px}.house-wine-membership .house-wine-purchase>p{font-size:.75rem;line-height:1.4}.house-wine-membership .house-wine-purchase .button{min-height:36px;padding:7px 12px}}

/* Display the chosen drawing and signature from Ross's original artwork sheet.
   The source JPEG is unchanged; these windows crop it only in the layout. */
.house-wine-original{display:flex;align-items:flex-end;gap:28px;isolation:isolate;height:220px;max-width:330px;margin-bottom:28px}
.house-wine-original>span{position:relative;display:block;overflow:hidden;flex-shrink:0;mix-blend-mode:multiply}
.house-wine-original .house-wine-drawing{height:100%;aspect-ratio:520/1460}
.house-wine-original img{position:absolute;max-width:none;height:auto;display:block}
.house-wine-drawing img{width:476.923%;left:-113.462%;top:-21.233%}
.house-wine-original .house-wine-signature{width:140px;aspect-ratio:940/610;margin-bottom:4px}
.house-wine-signature img{width:263.83%;left:-85.106%;top:-327.869%}
@media(min-width:900px) and (max-height:760px){.house-wine-original{height:180px;margin-bottom:22px;gap:24px}.house-wine-original .house-wine-signature{width:125px}}
@media(min-width:900px) and (max-height:600px){.house-wine-original{height:125px;gap:18px;margin-bottom:15px}.house-wine-original .house-wine-signature{width:100px}}
@media(max-width:899px){.house-wine-original{height:230px}}
.house-wine-original{background:var(--cream)}
@media(min-width:900px) and (max-height:620px){.house-wine-intro .house-wine-copy{font-size:.8125rem;line-height:1.5}.house-wine-intro .house-wine-actions [data-house-panel="2"]{display:none}}

/* A two-row photographic wine wall, with information kept on the image. */
[data-wine-style]{--wine-tone:#a29683}
[data-wine-style="White"]{--wine-tone:#d5bd66}
[data-wine-style="Red"]{--wine-tone:#8d454f}
[data-wine-style="Orange"]{--wine-tone:#d58c55}
[data-wine-style="Rosé"]{--wine-tone:#cc8495}
[data-wine-style="Sparkling"]{--wine-tone:#72967a}
[data-wine-style="Sweet & fortified"]{--wine-tone:#7593ae}
.home-horizontal .wine-shop{grid-template-rows:72px minmax(0,1fr) 56px}
.shop-heading{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);min-height:72px}.shop-heading>a{font-size:.8125rem;justify-self:start}.shop-heading>a:last-child{justify-self:end}
.shop-rail{--shop-column-gap:32px;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-flow:column;grid-auto-columns:clamp(150px,calc((100dvh - 164px)*.375),340px);gap:24px var(--shop-column-gap);padding:10px 10px 12px;overflow-x:auto;overflow-y:hidden}
.shop-bottle{height:100%;width:100%;min-width:0;position:relative;isolation:isolate}
.shop-bottle::before,.shop-bottle::after{content:"";position:absolute;inset:-3px -6px -6px -2px;border:3px solid var(--wine-tone);border-radius:2px 4px 3px 1px;opacity:.88;transform:rotate(-.35deg);pointer-events:none;z-index:2;mask-image:url('/assets/chalk-grain.svg');mask-size:96px 96px;mask-repeat:repeat}
.shop-bottle::after{inset:-5px -3px -4px -5px;border-width:1.25px;opacity:.4;transform:rotate(.2deg)}
.shop-bottle:nth-child(3n)::before{inset:-5px -2px -3px -6px;transform:rotate(.4deg);border-width:3px 3.5px 2.75px 3px}
.shop-bottle:nth-child(3n+2)::before{transform:rotate(.15deg)}
@media(min-width:900px){.shop-bottle:nth-child(even){translate:calc(50% + var(--shop-column-gap)/2) 0}}
.shop-bottle-button{display:block;height:100%;width:100%}.shop-bottle-photo{height:100%;width:100%;aspect-ratio:auto}
.shop-bottle-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 58%;transform:scale(1.3);transform-origin:50% 58%;transition:transform 600ms ease}
.shop-bottle-button:hover img{transform:scale(1.33)}
.shop-bottle-hover{inset:0;bottom:0;max-height:none;padding:18px 16px;display:flex;flex-direction:column;justify-content:flex-end;background:rgba(55,76,70,.93);pointer-events:none;transform:none;transition:opacity 220ms ease;overflow:hidden}
.shop-bottle:hover .shop-bottle-hover,.shop-bottle:focus-within .shop-bottle-hover{opacity:1}
.shop-bottle-hover .shop-bottle-style{font-size:.625rem;line-height:1.3;opacity:.75;margin:0 0 8px;display:block}
.shop-bottle-hover h3{font:400 .95rem/1.4 Glaschu,Arial,sans-serif;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.shop-bottle-hover .shop-bottle-price{font-size:.875rem;margin:9px 0 0;display:block}
.shop-hover-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}
.shop-hover-actions button{background:none;border:0;color:var(--cream);padding:4px 0;min-height:32px;min-width:32px;pointer-events:auto;font:400 .75rem Glaschu,Arial,sans-serif;text-align:left;text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:5px}.shop-hover-actions button:last-child{font-size:1.2rem;text-align:right;text-decoration:none}
.shop-bottom{display:grid;grid-template-columns:1fr auto 1fr;font-size:.8125rem;margin:0;gap:20px}.shop-bottom>div{display:flex;gap:22px;align-items:center}.shop-bottom button{font-size:inherit}.shop-bottom .shop-page-arrows{grid-column:2;gap:20px}.shop-page-arrows button{font-size:1.25rem;opacity:.6}.shop-bottom .shop-basket-controls{grid-column:3;justify-content:flex-end;gap:26px}.shop-basket-controls button{white-space:nowrap}.shop-filter-toggle{position:relative;display:grid;place-items:center;width:48px;height:44px;justify-self:center;padding:8px;border:0;background:none;color:var(--green)}.shop-filter-toggle svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linejoin:round;stroke-linecap:round}.shop-filter-toggle:hover{color:var(--rust)}.shop-filter-toggle::after{content:"";position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--rust)}.shop-checkout{text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:7px}.shop-basket-controls [data-basket-summary]{margin-left:7px}
.shop-filter-dialog{width:min(520px,calc(100% - 32px));padding:35px;color:var(--green);background:var(--cream);font-family:Glaschu,Arial,sans-serif}.shop-filter-dialog h2{font:400 2rem/1.2 Glaschu,Arial,sans-serif;margin:0}.shop-filter-dialog .dialog-bar{margin-bottom:25px}.shop-filter-dialog .shop-filters{gap:18px 28px}.shop-filter-dialog .shop-filters button{font-size:1rem;display:flex;align-items:center;gap:10px}.shop-filter-dialog [data-wine-style]:not([data-wine-style="All"])::before{content:"";width:9px;height:9px;outline:1.5px solid var(--wine-tone);outline-offset:1px;display:block}.shop-filter-dialog .shop-search{display:block;width:100%;margin:28px 0}.shop-filter-dialog .shop-search input{font-size:1rem}.shop-filter-dialog [data-shop-filter-done]{font:inherit;min-height:40px}
.shop-add-button{background:var(--green);color:var(--cream);border:1px solid var(--green);font:inherit;padding:12px 20px;min-height:44px}.shop-existing-link{display:block;font-size:.75rem;text-decoration-color:var(--rust);margin-top:22px}
.shop-basket-dialog{width:min(620px,calc(100% - 32px));max-width:620px;max-height:90dvh;padding:32px;background:var(--cream);color:var(--green);font-family:Glaschu,Arial,sans-serif}.shop-basket-dialog .dialog-bar{align-items:center;margin-bottom:28px}.shop-basket-dialog h2{font:400 2rem/1.2 Glaschu,Arial,sans-serif;margin:0}.shop-basket-dialog .dialog-bar button{font-size:1.8rem}
.basket-line{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:20px;padding:20px 0;border-top:1px solid var(--line);align-items:start}.basket-line>img{width:70px;height:96px;object-fit:cover}.basket-line-info h3{font:400 1rem/1.4 Glaschu,Arial,sans-serif;margin:0 0 8px}.basket-line-info>p{font-size:.75rem;margin:0 0 8px}.basket-line-total{font-size:.875rem;margin:0}.basket-quantity{display:flex;align-items:center;gap:12px}.basket-quantity button,.basket-remove{border:0;background:none;color:var(--green);font:inherit;padding:4px;min-height:34px;min-width:30px}.basket-quantity button:disabled{opacity:.3}.basket-remove{font-size:.7rem;text-decoration:underline;text-decoration-color:var(--rust);padding-left:0}.basket-totals{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0 10px;font-size:1.2rem}.basket-note{font-size:.75rem;line-height:1.5;margin:0 0 20px}.basket-empty{font-size:1.2rem;line-height:1.5;margin:35px 0 45px}.basket-checkout-button{width:100%;font:inherit}.basket-checkout-preview{border-top:1px solid var(--rust);padding-top:15px}.basket-checkout-preview p{font-size:.875rem;line-height:1.55;margin:0 0 12px}.basket-checkout-preview a{font-size:.875rem;text-decoration-color:var(--rust)}.basket-feedback{font-size:.8125rem;line-height:1.5}.basket-feedback:empty{display:none}
.shop-load-failed .shop-status{position:absolute!important;clip:auto!important;width:auto!important;height:auto!important;white-space:normal!important;top:80px;left:5%;right:5%;z-index:2}
@media(max-width:899px){.wine-shop{display:flex;flex-direction:column;padding:12px 5% 30px}.shop-heading{order:0;min-height:58px;gap:12px;margin:0}.shop-heading h2{display:none}.shop-heading>a{font-size:.75rem}.shop-heading>a:last-child{margin-left:auto}.shop-rail{order:2;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-columns:auto;gap:26px 22px;padding:8px 5px;overflow:visible;margin-top:12px}.shop-bottle{height:auto}.shop-bottle-photo{height:auto;aspect-ratio:3/4}.shop-bottle-hover{display:none}.shop-bottom{order:1;display:flex;position:sticky;top:0;background:var(--cream);z-index:3;min-height:58px;padding:8px 0;gap:12px;justify-content:space-between;font-size:.75rem;border-bottom:1px solid var(--line)}.shop-bottom .shop-page-arrows{display:none}.shop-bottom .shop-basket-controls{display:flex;gap:15px}.shop-basket-controls [data-basket-summary]{margin-left:3px}.shop-bottom button{font-size:.75rem}.shop-basket-dialog{padding:22px}.basket-line{grid-template-columns:55px minmax(0,1fr) auto;gap:14px}.basket-line>img{width:55px;height:80px}.basket-line-info h3{font-size:.9rem}.basket-line-total{font-size:.75rem}.shop-product-dialog .shop-add-button{width:100%}}
@media(prefers-reduced-motion:reduce){.shop-bottle-hover,.shop-bottle-photo img{transition:none}}
.shop-rail:has(.shop-empty),.shop-rail:has(.shop-loading){display:flex}
.shop-basket-dialog [hidden],.shop-product-dialog [hidden],.shop-bottle-photo img[hidden]{display:none!important}
.shop-bottle-hover{background:linear-gradient(0deg,rgba(36,57,50,.97),rgba(36,57,50,.86)45%,rgba(36,57,50,0))}
@media(max-width:899px){.shop-heading{gap:8px}.shop-heading>a{font-size:.7rem;line-height:1.5}.shop-bottom .shop-basket-controls{width:100%;justify-content:space-between}.shop-rail{padding:10px 9px 12px}}
@media(prefers-reduced-motion:reduce){.shop-bottle-button:hover img{transform:scale(1.3)}}

/* Keep every bottle in its place while the selection changes. */
.shop-heading{position:relative;z-index:4}
.shop-filter-control{position:relative;justify-self:center}
.shop-filter-dropdown{position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);width:min(290px,calc(100vw - 32px));padding:23px 25px 18px;background:var(--cream);border:1px solid var(--line);box-shadow:0 8px 25px #253b3612;text-align:left;max-height:calc(100dvh - 90px);overflow:auto}
.shop-filter-dropdown[hidden]{display:none}
.shop-filter-dropdown fieldset{margin:0}
.shop-filter-dropdown legend{font:400 .875rem/1.3 Glaschu,Arial,sans-serif;padding:0 0 12px;margin:0;border:0}
.shop-filter-dropdown label{display:flex;align-items:center;gap:12px;min-height:36px;font-size:.8125rem;cursor:pointer}
.shop-filter-dropdown input[type="checkbox"]{appearance:none;width:15px;height:15px;flex:0 0 15px;padding:0;margin:0;border:1px solid var(--green);border-radius:0;display:grid;place-content:center;background:transparent;cursor:pointer}
.shop-filter-dropdown input[type="checkbox"]:checked::before{content:"";width:8px;height:4px;border-left:1.5px solid var(--green);border-bottom:1.5px solid var(--green);transform:translateY(-1px) rotate(-45deg)}
.shop-filter-dropdown input[type="checkbox"]:indeterminate::before{content:"";width:7px;border-bottom:1.5px solid var(--green)}
.shop-filter-dropdown .shop-filter-all{border-bottom:1px solid var(--line);margin-bottom:6px;padding-bottom:8px;min-height:38px}
.shop-filter-swatch{width:10px;height:10px;flex:0 0 10px;border:2px solid var(--wine-tone);transform:rotate(-4deg)}
.shop-filter-dropdown .shop-search{display:block;width:100%;margin:15px 0 0;min-height:0}
.shop-filter-dropdown .shop-search input{font-size:.75rem}
.shop-bottle{transition:opacity 220ms ease,filter 220ms ease}
.shop-bottle-muted{opacity:.24;filter:saturate(.08)}
.shop-bottle-muted:hover,.shop-bottle-muted:focus-within{opacity:.85;filter:saturate(.25)}
@media(prefers-reduced-motion:reduce){.shop-bottle{transition:none}}
.shop-filter-dropdown .shop-budget{border-top:1px solid var(--line);padding-top:17px;margin-top:15px;min-width:0}
.shop-filter-dropdown .shop-budget legend{float:left;width:100%;padding:0;margin:0 0 10px}
.shop-budget-values{clear:both;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-variant-numeric:tabular-nums}
.shop-budget-values>span{opacity:.5}
.shop-budget-rail{position:relative;height:40px;--budget-low:0%;--budget-high:100%}
.shop-budget-track{position:absolute;left:9px;right:9px;top:19px;height:2px;background:var(--line)}
.shop-budget-track>span{position:absolute;inset:0 calc(100% - var(--budget-high)) 0 var(--budget-low);background:var(--green)}
.shop-budget-rail input[type="range"]{appearance:none;-webkit-appearance:none;position:absolute;inset:0;width:100%;height:40px;margin:0;padding:0;border:0;background:transparent;pointer-events:none;cursor:pointer;z-index:1}
.shop-budget-rail input[data-budget-max]{z-index:2}
.shop-budget-rail.budget-low-on-top input[data-budget-min]{z-index:3}
.shop-budget-rail input[type="range"]:focus-visible{outline:none;z-index:4}
.shop-budget-rail input[type="range"]::-webkit-slider-runnable-track{height:2px;background:transparent}
.shop-budget-rail input[type="range"]::-moz-range-track{height:2px;background:transparent}
.shop-budget-rail input[type="range"]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;margin-top:-8px;border:1.5px solid var(--green);border-radius:50%;background:var(--cream);pointer-events:auto;cursor:ew-resize;box-shadow:0 0 0 3px var(--cream)}
.shop-budget-rail input[type="range"]::-moz-range-thumb{width:15px;height:15px;border:1.5px solid var(--green);border-radius:50%;background:var(--cream);pointer-events:auto;cursor:ew-resize;box-shadow:0 0 0 3px var(--cream)}
.shop-budget-rail input[type="range"]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--rust);outline-offset:3px}
.shop-budget-rail input[type="range"]:focus-visible::-moz-range-thumb{outline:2px solid var(--rust);outline-offset:3px}
.shop-budget-reset{display:block;border:0;background:none;padding:4px 0 7px;min-height:32px;color:var(--green);font:400 .75rem Glaschu,Arial,sans-serif;text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:5px}

/* Booking is a full-height section, reached with the same downward transition as wine. */
.home-page:not(.floors-ready) .wine-shop,.home-page:not(.floors-ready) .booking-section{visibility:hidden!important;transition:none!important}
.home-page:not(.floors-ready):has(#wine-shop:target,#book-a-table:target) .home-journey,.home-page:not(.floors-ready):has(#wine-shop:target,#book-a-table:target) .site-header{visibility:hidden;transition:none}
.location-caption .woodlands-caption-links{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px}
.location-caption .woodlands-caption-links .menu-links{flex-wrap:nowrap;gap:18px}
.location-caption .woodlands-caption-links>.book-table{position:relative;display:inline-flex;align-items:center;gap:8px;margin-left:auto;min-height:32px;padding:5px 12px;border:0;text-decoration:none;font-size:.875rem;white-space:nowrap}
.book-table span{font-size:1.2rem}
.booking-section{display:none;color:var(--green);background:var(--cream);font:400 1rem/1.5 Glaschu,Arial,sans-serif;padding:0 3%;scroll-margin-top:0}
.booking-section [hidden]{display:none!important}
.booking-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;font-size:.8125rem}
.booking-page-heading a{text-decoration-color:var(--rust);text-underline-offset:7px}
.booking-page-body{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5%;min-height:0}
.booking-editorial{display:flex;flex-direction:column;gap:30px;min-height:0;min-width:0;padding-bottom:12px}
.booking-editorial h2{font:400 clamp(2.7rem,5.2vw,5.8rem)/1.08 Glaschu,Arial,sans-serif;margin:12px 0 0}
.booking-editorial h2:focus{outline:none}
.booking-editorial img{width:100%;height:0;flex:1;min-height:0;object-fit:cover;object-position:50% 55%}
.booking-workspace{min-width:0;min-height:0;padding:12px 0}
.booking-workspace [data-booking-search],.booking-workspace [data-booking-checkout]{display:flex;flex-direction:column;height:100%;min-height:0}
.booking-section .booking-search-form{flex-shrink:0}
.booking-section .booking-search-status{flex-shrink:0;margin:22px 0 18px;min-height:1.5em}
.booking-section .booking-results{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;gap:22px;overflow:hidden;margin-top:22px}
.booking-section .booking-results::-webkit-scrollbar{display:none}
.booking-section .booking-results>section{min-width:0;flex-shrink:0;padding:10px 0 0}
.booking-type-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:28px;margin-bottom:10px}
.booking-section .booking-results h3{font-size:1.15rem;line-height:1.3;margin:0}
.booking-section .booking-search-status:empty{display:none}
.booking-section .booking-times{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-template-rows:repeat(var(--booking-rows,2),40px);grid-auto-columns:74px;gap:8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;padding:2px}
.booking-times::-webkit-scrollbar{display:none}
.booking-times-nav{display:flex;justify-content:flex-end;flex-shrink:0;gap:16px;height:28px}
.booking-times-nav button{border:0;background:none;color:var(--green);font:400 1.3rem/1 Glaschu,Arial,sans-serif;min-width:32px;padding:0 4px}
.booking-times-nav button:disabled{opacity:.3}
.booking-section .booking-time{height:40px;min-height:40px;padding:6px;font-size:.9375rem}
.booking-section .booking-card-note{margin:8px 0 0;font-size:.75rem}
.booking-section .booking-help{flex-shrink:0;margin-top:16px;gap:6px 18px;padding-top:12px;font-size:.75rem}
.booking-section .booking-help button{font:inherit}
.booking-section .booking-footnote{font-size:.6875rem;display:flex;align-items:center;justify-content:flex-end;margin:0;min-height:46px}
.booking-section .booking-back{align-self:flex-start;font:inherit;flex-shrink:0}
.booking-section .booking-selection{flex-shrink:0;margin:12px 0 18px}
.booking-cookie-gate h3{font-weight:400;margin:0 0 18px}.booking-cookie-gate>.button{margin:5px 0 20px}.booking-cookie-gate .booking-consent-details{font-size:.8125rem}.booking-consent-details .text-button{font:inherit}
.booking-section iframe{border:0;width:100%;flex:1;min-height:0;background:white}
.booking-section .booking-fallback{flex-shrink:0;font-size:.75rem;margin:12px 0 0}
.home-horizontal .booking-section{position:fixed;inset:0;z-index:8;display:grid;grid-template-rows:72px minmax(0,1fr);padding-bottom:24px;transform:translateY(100dvh);visibility:hidden;transition:transform 850ms cubic-bezier(.65,0,.2,1),visibility 0s 850ms}
.home-horizontal.booking-is-open .booking-section{transform:translateY(0);visibility:visible;transition-delay:0s}
.home-horizontal.home-floor-is-open .home-journey,.home-horizontal.home-floor-is-open .site-header{transform:translateY(-100dvh)}
@media(min-width:1200px){.booking-section .booking-search-form{grid-template-columns:1.3fr 1fr 1fr auto;gap:18px}.booking-section .booking-search-form .button{grid-column:auto;margin:0;align-self:end;min-height:48px;gap:18px;font-size:.875rem;padding:12px 16px}}
@media(min-width:900px) and (max-height:650px){.home-horizontal .booking-section{grid-template-rows:56px minmax(0,1fr);padding-bottom:16px}.booking-page-heading{min-height:56px}.booking-section .booking-results{gap:12px;margin-top:14px}.booking-section .booking-results>section{padding-top:8px}.booking-type-heading{margin-bottom:8px}.booking-editorial{gap:20px}.booking-editorial h2{font-size:clamp(2.4rem,4.3vw,4rem)}.booking-section .booking-search-form{gap:10px 14px}.booking-section .booking-search-form input,.booking-section .booking-search-form select{min-height:38px;padding:8px 0}.booking-section .booking-search-form .button{min-height:40px;padding:9px 14px}.booking-section .booking-search-status{font-size:.75rem;margin:12px 0}.booking-section .booking-help{margin-top:10px;padding-top:8px}}
@media(max-width:899px){.booking-section.is-active{display:block;padding:0 5% 24px}.booking-page-heading{min-height:64px;font-size:.7rem}.booking-page-heading>span{max-width:140px;text-align:right}.booking-page-body{display:block}.booking-editorial{gap:22px;margin-bottom:30px}.booking-editorial h2{font-size:3rem}.booking-editorial h2 br{display:none}.booking-editorial img{height:230px;flex:none}.booking-workspace{padding:0}.booking-section .booking-results{display:block;overflow:visible}.booking-section .booking-results>section{width:100%;min-width:0;padding:22px 0}.booking-section .booking-results h3{min-height:0}.booking-section .booking-card-note{max-width:none}.booking-section iframe{flex:none;height:70dvh;min-height:420px}.booking-section .booking-footnote{margin-top:24px;justify-content:flex-start;min-height:0}.booking-section .booking-help button{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.home-horizontal .booking-section{transition:none}}
@media print{.booking-section{display:none!important}}

/* The date picker shares the site's type and softly misregistered chalk marks. */
.booking-date-field{position:relative;min-width:0;display:flex;flex-direction:column;gap:9px}
.booking-date-field>label{display:block}
[data-calendar-toggle]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--green);background:none;color:var(--green);font:400 1rem/1.3 Glaschu,Arial,sans-serif;text-align:left;white-space:nowrap}
[data-calendar-toggle] svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.booking-calendar{position:absolute;z-index:15;top:calc(100% + 10px);left:0;width:min(330px,calc(100vw - 32px));padding:19px 18px 15px;background:var(--cream);color:var(--green);border:1px solid var(--line);box-shadow:0 12px 30px #253b361a;font:400 .9375rem/1.3 Glaschu,Arial,sans-serif;max-height:calc(100dvh - 24px);overflow:auto}
.booking-calendar.opens-above{top:auto;bottom:calc(100% + 10px)}
.booking-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}
.booking-calendar-heading h3{font:400 1.1rem/1.3 Glaschu,Arial,sans-serif;margin:0;text-align:center}
.booking-calendar button{border:0;background:none;color:var(--green);font:inherit}
.booking-calendar-heading button{flex:0 0 28px;min-height:28px;font-size:1.3rem;padding:0}
.booking-calendar table{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed;margin:0}
.booking-calendar th{font:inherit;font-size:.75rem;font-weight:400;text-align:center;padding:0 0 10px;border:0}
.booking-calendar td{text-align:center;padding:0;border:0;height:36px}
.booking-calendar td button{position:relative;isolation:isolate;width:100%;height:36px;padding:0;font-size:.9375rem}
.booking-calendar td button:disabled{opacity:.25}
.booking-calendar td button.is-adjacent:not(:disabled){opacity:.5}
.booking-calendar td button:not(:disabled):hover{background:#d8955c18}
.booking-calendar td button.is-today{--calendar-mark:var(--rust)}
.booking-calendar td button.is-selected{--calendar-mark:var(--butter);background:#f0eda13b}
.booking-calendar td button:is(.is-today,.is-selected)::before,.booking-calendar td button:is(.is-today,.is-selected)::after{content:"";position:absolute;inset:1px -1px;border:2px solid var(--calendar-mark);transform:translate(-1px,1px) rotate(-2deg);mask-image:url('/assets/chalk-grain.svg');mask-size:96px 96px;mask-repeat:repeat;pointer-events:none}
.booking-calendar td button:is(.is-today,.is-selected)::after{inset:0;opacity:.65;transform:translate(1px,-1px) rotate(1.5deg);mask-position:50px 30px}
.booking-calendar td button.is-today.is-selected::before{border-color:var(--rust)}
.booking-calendar .booking-calendar-today{display:block;margin:12px auto 0;padding:5px 10px;font-size:.8125rem;text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:5px}
@media(min-width:900px) and (max-height:650px){.booking-page-body{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:4%}.booking-section .booking-search-form{grid-template-columns:1.3fr 1fr 1fr auto;gap:10px}.booking-section .booking-search-form .button{grid-column:auto;align-self:end;margin:0;font-size:.8rem;gap:8px;padding:9px 12px}.booking-date-field{gap:9px}[data-calendar-toggle]{min-height:38px;padding:8px 0}.booking-calendar{padding:12px 14px}.booking-calendar-heading{margin-bottom:10px}.booking-calendar td,.booking-calendar td button{height:32px}}
@media(max-width:550px){.booking-date-field{grid-column:1/-1}}

.join-team-link{position:relative;display:inline-flex;gap:20px;padding:10px 20px;margin-top:20px;text-decoration:none;font:400 1rem Glaschu,Arial,sans-serif}
.hiring-section{display:none;padding:0 4% 24px;background:var(--cream);color:var(--green);font:400 1rem/1.5 Glaschu,Arial,sans-serif}
.hiring-section [hidden]{display:none!important}
.hiring-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;font-size:.8rem}
.hiring-page-heading a{text-decoration-color:var(--rust)}
.hiring-page-body{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8%;min-height:0}
.hiring-editorial{display:flex;flex-direction:column;min-height:0;min-width:0}
.hiring-editorial h2{font:400 clamp(3rem,5vw,5.5rem)/1.05 Glaschu,Arial,sans-serif;margin:10px 0 24px}
.hiring-editorial p{font-size:1rem;max-width:340px;margin:0 0 20px}
.hiring-editorial img{flex:1;min-height:0;height:0;width:100%;object-fit:cover;object-position:50% 48%}
.hiring-workspace{min-width:0;min-height:0;padding:10px 0}
#hiring-form{height:100%;display:flex;flex-direction:column}
.hiring-step-label{font-size:.8rem;margin:0 0 24px}
#hiring-form fieldset{border:0;margin:0;padding:0;min-width:0}
.hiring-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}
.hiring-fields>label{display:flex;flex-direction:column;gap:6px;font-size:.8125rem}
.hiring-fields input:not([type=checkbox]),.hiring-fields select,.hiring-fields textarea{display:block;min-width:0;width:100%;border:0;border-radius:0;border-bottom:1px solid var(--green);background:none;padding:9px 0;min-height:40px;color:var(--green);font:400 1rem/1.4 Glaschu,Arial,sans-serif}
.hiring-fields textarea{resize:none}
.hiring-fields input::placeholder,.hiring-fields textarea::placeholder{color:var(--green);opacity:.55}
.hiring-wide{grid-column:1/-1}
.hiring-field-label{font-size:.8125rem;margin:0 0 10px}
.hiring-optional{opacity:.7;font-size:.75rem}
.hiring-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.hiring-check{display:flex!important;flex-direction:row!important;gap:10px!important;align-items:center;font:400 .875rem/1.4 Glaschu,Arial,sans-serif;cursor:pointer}
.hiring-check input{accent-color:var(--green);width:16px;height:16px;flex-shrink:0;margin:0}
.hiring-consent{font-size:.75rem!important;align-items:flex-start}
.hiring-upload input{font-size:.8rem!important}
.hiring-upload input::file-selector-button{background:none;color:var(--green);font:inherit;border:1px solid var(--line);padding:8px 12px;margin-right:10px}
[data-hiring-file]{font-size:.75rem;overflow-wrap:anywhere}
.hiring-actions{margin-top:auto;padding:18px 4px 8px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-shrink:0}
.hiring-actions>button{font:400 1rem Glaschu,Arial,sans-serif}
.hiring-actions .chalk-link{position:relative;margin-left:auto;border:0;background:none;color:var(--green);padding:10px 22px}
[data-hiring-status]{font-size:.8125rem;margin:15px 0 0;min-height:1.4em}
.hiring-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.hiring-thanks{padding:10vh 0;max-width:400px}
.hiring-thanks h3{font:400 3rem Glaschu,Arial,sans-serif}
.home-horizontal .hiring-section{position:fixed;inset:0;z-index:8;display:grid;grid-template-rows:72px minmax(0,1fr);transform:translateY(100dvh);visibility:hidden;transition:transform 850ms cubic-bezier(.65,0,.2,1),visibility 0s 850ms}
.home-horizontal.hiring-is-open .hiring-section{transform:translateY(0);visibility:visible;transition-delay:0s}
.home-page:not(.floors-ready) .hiring-section{visibility:hidden!important;transition:none!important}
.home-page:not(.floors-ready):has(#join-the-team:target) .home-journey,.home-page:not(.floors-ready):has(#join-the-team:target) .site-header{visibility:hidden;transition:none}
.recruitment-filters{display:flex;flex-wrap:wrap;gap:18px;align-items:end;margin:25px 0}
.recruitment-filters>label{font-size:.8rem;flex:1 1 140px;display:flex;flex-direction:column;gap:8px}
.recruitment-filters input:not([type=checkbox]),.recruitment-filters select{width:100%;min-width:0;padding:10px;border:1px solid var(--line);background:none;color:var(--green)}
.recruitment-filters>label:first-child{flex-basis:260px}
.recruitment-filters>.hiring-check{flex-basis:300px}
.recruitment-explanation{font-size:.8rem;max-width:750px;opacity:.8}
.candidate-card{display:flex;justify-content:space-between;gap:30px;padding:25px 0;border-top:1px solid var(--line)}
.candidate-card h2{font:400 1.5rem Glaschu,Arial,sans-serif;margin:0 0 10px}
.candidate-card p{font-size:.85rem;margin:0 0 8px}
.candidate-card>div:last-child{text-align:right;flex-shrink:0}
.candidate-skills{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.candidate-skills span{border:1px solid var(--line);padding:5px 9px;font-size:.75rem}
.candidate-skills .experience-match{background:var(--butter);border-color:var(--rust)}
.recruitment-pages{display:flex;justify-content:space-between;margin-top:22px}
#candidate-detail{width:min(760px,94vw);max-height:90dvh;overflow:auto;background:var(--cream);color:var(--green);padding:30px}
.candidate-details>div{display:grid;grid-template-columns:180px 1fr;gap:20px;border-top:1px solid var(--line);padding:12px 0;font-size:.9rem}
.candidate-details dt{opacity:.75}.candidate-details dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.candidate-links{display:flex;gap:30px;margin:25px 0;font-size:.875rem}
#candidate-detail select{margin:12px 0 0;padding:10px;width:100%;background:none;border:1px solid var(--line);color:var(--green)}
@media(min-width:900px) and (max-height:650px){.home-horizontal .hiring-section{grid-template-rows:52px minmax(0,1fr);padding-bottom:12px}.hiring-page-heading{min-height:52px}.hiring-step-label{margin-bottom:12px}.hiring-fields{gap:10px 18px}.hiring-fields input:not([type=checkbox]),.hiring-fields select,.hiring-fields textarea{font-size:.875rem;min-height:32px;padding:6px 0}.hiring-checks{gap:5px 14px}.hiring-check{font-size:.8rem}.hiring-field-label{margin-bottom:6px}.hiring-actions{padding-top:8px}.hiring-editorial h2{margin-bottom:14px}.hiring-editorial p{font-size:.85rem;margin-bottom:12px}[data-hiring-status]{margin-top:8px}}
@media(max-width:899px){.hiring-section.is-active{display:block;padding:0 5% 30px}.hiring-page-heading{min-height:64px;font-size:.7rem}.hiring-page-body{display:block}.hiring-editorial h2{font-size:3rem}.hiring-editorial h2 br{display:none}.hiring-editorial img{height:200px;flex:none;margin-bottom:30px}.hiring-fields{gap:18px}.hiring-actions{margin-top:20px}.hiring-workspace{padding:0}.candidate-card{gap:15px}.candidate-details>div{grid-template-columns:1fr;gap:5px}}
@media(max-width:550px){.hiring-fields{grid-template-columns:1fr}.hiring-checks{gap:8px}.hiring-fields>label{font-size:.8rem}.candidate-card{flex-direction:column}.candidate-card>div:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){.home-horizontal .hiring-section{transition:none}}
@media print{.hiring-section{display:none!important}}

.home-editorial .caption-links .christmas-open-link{position:relative;padding:10px 18px;text-decoration:none}
.christmas-open-link span{color:var(--green)}
.christmas-floor{display:none;padding:0 3%;background:var(--cream);color:var(--green);font:400 1rem/1.5 Glaschu,Arial,sans-serif}
.christmas-floor-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;font-size:.75rem}
.christmas-floor-heading h2{font:400 1rem/1.3 Glaschu,Arial,sans-serif;margin:0}
.christmas-floor-heading a{text-decoration-color:var(--rust)}
.christmas-rail{display:flex;min-width:0;min-height:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}
.christmas-rail::-webkit-scrollbar{display:none}
.christmas-rail>article{flex:0 0 100%;display:grid;grid-template-columns:56% 44%;min-width:0;min-height:0}
.christmas-rail figure{min-height:0;margin:0;overflow:hidden}
.christmas-rail figure .photograph,.christmas-rail figure img{height:100%;width:100%;display:block;object-fit:cover}
.christmas-floor-copy{padding:5% 8%;display:flex;flex-direction:column;justify-content:center;min-height:0;min-width:0}
.christmas-floor-copy .christmas-kicker{font-size:.75rem;margin:0 0 25px}
.christmas-floor-copy h3{font:400 clamp(2.2rem,3.5vw,4rem)/1.1 Glaschu,Arial,sans-serif;margin:0 0 30px}
.christmas-floor-copy>p{font-size:1.1rem;line-height:1.6;margin:0 0 24px;max-width:420px}
.christmas-floor-copy .christmas-floor-prices{font-size:.95rem}
.christmas-floor-prices small{font-size:.7rem}
.christmas-floor-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:16px;font-size:.85rem}
.christmas-floor-actions a{text-decoration-color:var(--rust)}
.christmas-floor-actions .chalk-link{position:relative;display:inline-flex;align-items:center;gap:18px;padding:10px 17px;text-decoration:none;margin-bottom:9px;white-space:nowrap}
.christmas-floor-actions button{font:inherit}
.christmas-floor-nav{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:62px;font-size:.8rem}
.christmas-floor-nav>div{display:flex;gap:25px;align-items:center}
.christmas-floor-nav button{font:inherit;background:none;border:0;color:var(--green);padding:8px 0}
.christmas-floor-nav [data-christmas-prev],.christmas-floor-nav [data-christmas-next]{font-size:1.5rem;min-width:34px}
.christmas-floor-nav button:disabled{opacity:.3}
.christmas-short-details p{font-size:.82rem;line-height:1.5;margin:0 0 14px}
.christmas-finer-details .christmas-floor-copy{padding:3% 8%}
.christmas-finer-details .christmas-floor-copy h3{font-size:2.6rem;margin-bottom:24px}
.christmas-finer-details .christmas-floor-actions{flex-direction:row;flex-wrap:wrap;font-size:.75rem;gap:12px 24px}
.home-horizontal .christmas-floor{position:fixed;inset:0;z-index:8;display:grid;grid-template-rows:72px minmax(0,1fr) 62px;transform:translateY(100dvh);visibility:hidden;transition:transform 850ms cubic-bezier(.65,0,.2,1),visibility 0s 850ms}
.home-horizontal.christmas-is-open .christmas-floor{transform:translateY(0);visibility:visible;transition-delay:0s}
.home-page:not(.floors-ready) .christmas-floor{visibility:hidden!important;transition:none!important}
.home-page:not(.floors-ready):has(#christmas-gatherings:target) .home-journey,.home-page:not(.floors-ready):has(#christmas-gatherings:target) .site-header{visibility:hidden;transition:none}
@media(min-width:900px) and (max-height:650px){.home-horizontal .christmas-floor{grid-template-rows:52px minmax(0,1fr) 48px}.christmas-floor-heading{min-height:52px}.christmas-floor-nav{min-height:48px}.christmas-floor-copy h3{font-size:2.6rem;margin-bottom:18px}.christmas-floor-copy>p{font-size:.9rem;margin-bottom:15px}.christmas-floor-copy .christmas-kicker{margin-bottom:14px}.christmas-floor-actions{gap:12px;margin-top:8px}.christmas-floor-copy .christmas-floor-prices{font-size:.8rem}.christmas-finer-details .christmas-floor-copy h3{font-size:2rem;margin-bottom:12px}.christmas-short-details p{font-size:.7rem;line-height:1.4;margin-bottom:10px}.christmas-finer-details .christmas-floor-copy{padding:0 6%}}
@media(max-width:899px){.christmas-floor.is-active{display:block;padding:0 5% 24px}.christmas-floor-heading{min-height:64px;font-size:.7rem;flex-wrap:wrap;gap:8px;padding:14px 0}.christmas-floor-heading h2{display:none}.christmas-rail{display:block;overflow:visible}.christmas-rail>article{display:block;margin-bottom:40px}.christmas-rail figure{height:58vh;max-height:520px}.christmas-floor-copy,.christmas-finer-details .christmas-floor-copy{padding:28px 0 10px}.christmas-floor-copy h3{font-size:3rem}.christmas-floor-copy>p{font-size:1rem}.christmas-floor-nav{justify-content:center}.christmas-floor-nav>div:first-child{gap:22px;font-size:.75rem}.christmas-floor-nav>div:last-child{display:none}.christmas-short-details p{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.home-horizontal .christmas-floor{transition:none}}
@media print{.christmas-floor{display:none!important}}

/* Search-and-add menu rows. */
.dish-editor .dish-check{cursor:default}
.dish-remove{grid-column:-3;grid-row:1;border:0;background:none;width:28px;height:32px;font-size:23px;line-height:1;opacity:.65}
.dish-remove:hover{opacity:1;color:var(--rust)}
.dish-add{padding:10px 0;border-bottom:1px solid var(--line)}
.dish-add input{width:100%;padding:10px 12px;background:transparent;border:1px dashed var(--line);color:var(--green);font-size:.875rem}
.dish-search-status{font-size:.8125rem;margin:6px 0 0;min-height:0}
.dish-search-status:empty{display:none}
.dish-search-results{border:1px solid var(--line);border-top:0;max-height:275px;overflow-y:auto;background:#fff9f3}
.dish-search-result{display:block;width:100%;padding:10px 12px;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;font-size:.875rem}
.dish-search-result:hover,.dish-search-result:focus{background:var(--butter)}
.dish-create-result{font-weight:bold}
#new-dish-form{display:grid;gap:16px}
#new-dish-form label{display:grid;gap:6px}
#new-dish-form input,#new-dish-form select,#user-form select{padding:10px;border:1px solid var(--line);background:#fff9f3;color:var(--green);width:100%}
#new-dish-form p{font-size:.875rem;margin:0}
[data-new-dish-review]{border:1px solid var(--line);padding:14px;background:var(--butter)}
[data-new-dish-review] p+p{margin-top:8px!important}
