@import url('fonts.css');
:root{--paper:#f4f1e9;--white:#fcfaf5;--ink:#24372f;--muted:#657067;--line:#d6d8cc;--accent:#9a7050;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--space:clamp(24px,6vw,100px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:#d4c7b4;color:var(--ink)}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:20px;background:var(--white);padding:12px;z-index:20}.skip:focus{top:12px}
.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space);border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:15px;font-size:12px;font-weight:650;letter-spacing:.14em;line-height:1.4}.brand small{display:block;font-size:8px;letter-spacing:.32em;font-weight:400;margin-top:6px}.monogram{font-family:var(--serif);font-style:italic;font-size:42px;letter-spacing:-.11em;font-weight:400;border-right:1px solid var(--line);padding:0 23px 5px 0}.desktop-nav{display:flex;gap:28px;font-size:13px}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;bottom:-4px;height:1px;background:var(--ink);width:0;transition:width .2s}.desktop-nav a:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:28px}.languages{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.05em}.languages button{border:0;background:none;padding:8px 2px;color:#7b827a}.languages button[aria-pressed=true]{color:var(--ink);font-weight:650}.languages span{color:#969c92}.nav-cta{display:flex;gap:18px;align-items:center;font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:7px}.nav-cta span:last-child{font-size:20px}
.hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:710px}.hero-copy{padding:68px 7vw 38px var(--space);display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-family:var(--sans);font-size:10px;letter-spacing:.18em;font-weight:500;text-transform:uppercase;margin:0}.hero .eyebrow{display:flex;align-items:center;gap:12px}.small-line{width:25px;height:1px;background:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(56px,5.3vw,86px);line-height:1.13;letter-spacing:-.055em;margin:31px 0 26px}h1 em{color:var(--accent);font-weight:400;white-space:nowrap}.hero-desc{font-size:14px;line-height:1.9;max-width:340px;color:#5e685f;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:55px;padding:14px 22px;font-family:var(--sans);font-size:12px;border:1px solid transparent;transition:background .2s,transform .2s}.button span:last-child{font-size:21px;line-height:1}.button:hover{transform:translateY(-2px)}.button.dark{background:var(--ink);color:var(--paper)}.button.dark:hover{background:#374b40}.button.outline{border-color:var(--line);background:transparent}.hero-bottom{margin-top:auto;padding-top:40px;width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}.tiny-label{font-size:9px;letter-spacing:.14em;font-weight:500}.hero-bottom a{font-size:11px;white-space:nowrap}.hero-visual{position:relative;overflow:hidden;min-height:710px}.hero-visual>img{position:absolute;object-position:50% 53%}.hero-visual:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0003);pointer-events:none}.vertical-caption{position:absolute;right:25px;top:30px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em;background:#f4f1e9de;padding:12px 8px}.image-note{position:absolute;bottom:34px;left:32px;display:flex;align-items:flex-start;gap:21px;background:var(--paper);padding:22px 28px;color:var(--ink);z-index:1}.note-number{font-size:9px;letter-spacing:.12em;color:var(--accent);padding-top:4px}.image-note>span:last-child{font-family:var(--serif);font-size:21px;line-height:1.4;letter-spacing:-.03em}.values-strip{display:flex;align-items:center;justify-content:center;gap:clamp(22px,6vw,90px);padding:25px var(--space);border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.values-strip i{font-style:normal;font-size:21px;color:var(--accent)}
.section{padding:95px var(--space)}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.section-top .eyebrow{color:var(--accent)}h2{font-size:clamp(36px,3.6vw,55px);line-height:1.2;letter-spacing:-.045em;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:48px}.section-heading>p{max-width:360px;font-size:13px;line-height:1.85;color:var(--muted);margin:0 0 3px}.experience-list{border-top:1px solid var(--line)}.experience-row{display:grid;grid-template-columns:55px 1fr 1.05fr 40px;gap:26px;align-items:center;padding:32px 0;border-bottom:1px solid var(--line);transition:padding .25s,background .25s}.experience-row:hover{padding-left:15px;padding-right:15px;background:#eaeade}.row-number{font-size:10px;color:var(--accent)}.experience-row h3{font-size:29px;letter-spacing:-.035em;margin:0}.experience-row p{font-size:13px;line-height:1.8;color:var(--muted);max-width:360px;margin:0}.row-arrow{justify-self:end;font-size:27px;font-weight:400}.menus{background:#eaece3}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.menu-image{height:330px;position:relative;overflow:hidden}.menu-image img{transition:transform .7s}.menu-card:hover .menu-image img{transform:scale(1.035)}.menu-image>span{position:absolute;left:16px;top:16px;color:var(--paper);background:#24372fd9;border:1px solid #ffffff40;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:10px}.menu-card:nth-child(1) .menu-image img{object-position:50% 50%}.menu-card:nth-child(2) .menu-image img{object-position:50% 50%}.menu-meta{display:flex;align-items:center;justify-content:space-between;margin:21px 0 8px;font-size:8px;letter-spacing:.15em}.menu-meta>span:last-child{font-size:18px;color:var(--accent)}.menu-card h3{font-size:28px;line-height:1.3;letter-spacing:-.04em;margin-bottom:12px}.menu-card>p{font-size:12px;line-height:1.85;color:var(--muted);margin-bottom:20px;min-height:67px}.text-link{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:0 0 8px;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:11px;width:100%;line-height:1.5}.text-link>span:last-child{font-size:22px}.text-link:hover{color:var(--accent);border-color:var(--accent)}.menu-footnote{font-size:10px;line-height:1.9;color:var(--muted);max-width:760px;text-align:center;margin:40px auto 0}
.chef-section{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper)}.chef-image{position:relative;min-height:680px}.chef-image>img{position:absolute;object-position:50% 50%}.photo-label{position:absolute;bottom:30px;left:35px;background:var(--paper);padding:18px 25px;font-size:10px;letter-spacing:.18em;color:var(--ink)}.photo-label span{display:block;font-size:7px;margin-top:5px;letter-spacing:.3em}.chef-copy{padding:77px var(--space) 70px 6vw}.chef-copy>.eyebrow{color:#c6ad8b;margin-bottom:28px}.chef-copy h2{font-size:clamp(43px,4vw,61px);margin-bottom:25px}.chef-copy>p{font-size:12px;color:#c6cdc4;line-height:1.95;max-width:430px}.chef-copy>p.chef-lead{font-size:15px;color:var(--paper);line-height:1.8}.chef-credentials{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:25px 0;margin-top:24px;border-top:1px solid #f4f1e932;border-bottom:1px solid #f4f1e932}.chef-credentials>div{display:flex;gap:15px;align-items:center}.credential-number{font-family:var(--serif);font-size:39px;color:#c6ad8b;line-height:1}.credential-icon{font-size:37px;color:#c6ad8b}.chef-credentials>div>span:last-child{font-size:9px;line-height:1.7;color:#c6cdc4}.text-link.light{color:var(--paper);border-color:#f4f1e95c;margin-top:28px;width:max-content;font-size:10px}.text-link.light:hover{color:#c6ad8b}
.process .section-heading{margin-bottom:42px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.process-grid article{border-top:1px solid var(--line);padding-top:21px}.process-grid article>span{font-size:10px;color:var(--accent)}.process-grid h3{font-size:24px;letter-spacing:-.035em;line-height:1.3;margin:18px 0 10px}.process-grid p{font-size:12px;line-height:1.9;color:var(--muted);max-width:310px;margin:0}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px}.gallery-item{border:0;background:none;position:relative;padding:0;height:350px;overflow:hidden}.gallery-item img{transition:transform .6s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item>span{position:absolute;bottom:18px;right:18px;background:var(--paper);width:35px;height:35px;display:grid;place-items:center;font-size:20px}.gallery-item:nth-child(1) img{object-position:50% 45%}.gallery-item:nth-child(2) img{object-position:50% 50%}
.reservation{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:105px;padding-bottom:90px}.reservation-intro>.eyebrow{color:var(--accent);margin-bottom:28px}.reservation-intro h2{font-size:clamp(43px,4.6vw,67px);margin-bottom:25px}.reservation-intro>p:not(.eyebrow){max-width:360px;font-size:13px;line-height:1.9;color:var(--muted)}.locations{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.14em;margin-top:45px}.location-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.reservation-intro>p.reservation-small{font-size:10px;margin-top:18px;max-width:285px}.request-form{background:var(--white);padding:30px;border:1px solid var(--line)}.form-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}.form-top>span:last-child{font-size:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{display:flex;flex-direction:column;gap:8px;min-width:0}.form-grid label>span{font-size:10px;font-weight:500}.form-grid label small{font-weight:400;color:var(--muted);font-size:9px}.form-grid .full{grid-column:1/-1}input,select,textarea{border:1px solid var(--line);border-radius:0;background:transparent;padding:11px 10px;min-width:0;width:100%;color:var(--ink);font-size:12px}select{padding-right:22px}textarea{resize:vertical;line-height:1.6}input[type=date]{min-height:45px}input::placeholder,textarea::placeholder{color:#8d9389;opacity:1}.form-submit{width:100%;margin-top:24px}.form-note{font-size:9px;line-height:1.8;color:var(--muted);margin:14px 0 16px}.direct-link{font-size:9px;text-decoration:underline;text-underline-offset:4px}.partner-strip{margin:0 var(--space);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;display:flex;justify-content:space-between;align-items:center;gap:25px}.partner-strip .eyebrow{font-size:8px;color:var(--accent)}.partner-strip p{font-family:var(--serif);font-size:26px;letter-spacing:-.03em;margin:5px 0 0;line-height:1.4}.partner-strip .text-link{width:auto;min-width:160px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:80px;padding-bottom:85px}.faq h2{font-size:39px;margin-top:18px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{padding:20px 28px 20px 0;list-style:none;cursor:pointer;position:relative;font-size:12px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:4px;top:15px;font-size:24px;font-weight:400}details[open] summary:after{content:'−'}.faq-list p{font-size:12px;line-height:1.9;color:var(--muted);margin:0 24px 22px 0}
footer{background:var(--ink);color:var(--paper);padding:60px var(--space) 25px;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:35px}.footer-brand{font-family:var(--serif);font-size:37px;letter-spacing:-.04em;line-height:1.4}.footer-brand span{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.32em;margin-top:12px}.footer-brand+p{font-family:var(--serif);font-size:25px;font-style:italic;line-height:1.5;color:#c6ad8b}.footer-bottom{width:100%;border-top:1px solid #f4f1e930;padding-top:22px;display:flex;gap:20px;justify-content:space-between;font-size:8px;letter-spacing:.06em;color:#b7c0b5}.privacy-open{padding:0;border:0;background:none;font-size:8px;color:inherit}.footer-bottom a:hover,.privacy-open:hover{color:var(--paper)}
dialog{border:0;padding:0;color:var(--ink);background:var(--paper);width:min(600px,calc(100vw - 32px));max-height:90dvh;box-shadow:0 25px 100px #0004}dialog::backdrop{background:#10261fe0;backdrop-filter:blur(4px)}.modal-body{padding:45px}.close-dialog{position:absolute;top:12px;right:16px;font-size:28px;background:var(--paper);border:0;width:36px;height:36px;line-height:1;color:var(--ink);z-index:2}.modal .eyebrow{color:var(--accent);margin-bottom:20px}.modal h2{font-size:40px;margin:0 0 20px}.modal-body>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.9}.modal-body>.button{width:100%;margin-top:18px}.modal-details{padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;line-height:1.9;margin:25px 0}.modal-details strong{display:block;font-weight:500;margin-bottom:5px}.modal-body p.modal-note{font-size:10px;margin:16px 0 0;line-height:1.8}.request-modal #request-summary{font-size:11px;background:#ffffff70;padding:14px;margin:6px 0 0}.request-modal .copy-status{margin:6px 0 0;font-size:10px;min-height:18px}.request-modal #continue-booking{margin-top:5px}.photo-modal{background:var(--ink);width:fit-content;max-width:90vw;max-height:95dvh;overflow:auto}.photo-modal img{height:auto;width:auto;max-width:88vw;max-height:80dvh;object-fit:contain}.photo-modal p{font-size:10px;color:var(--paper);padding:14px 20px;margin:0}.photo-modal .close-dialog{position:fixed;top:24px;right:24px;border-radius:50%}body.dialog-open{overflow:hidden}
@media(min-width:1500px){body{max-width:1800px;margin:auto}.hero{min-height:800px}.hero-visual{min-height:800px}.hero-copy{padding-top:90px}h1{font-size:90px}.hero-desc{font-size:15px}.menu-image{height:400px}}
@media(max-width:1100px){.desktop-nav{gap:18px}.header{gap:18px}.header-actions{gap:18px}.hero-copy{padding-right:35px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:12px}h1{font-size:clamp(48px,5.4vw,68px)}.hero,.hero-visual{min-height:660px}.section-heading{gap:35px}.section-heading>p{max-width:300px}.experience-row{grid-template-columns:35px 1fr 1fr 25px;gap:20px}.experience-row h3{font-size:24px}.menu-image{height:275px}.menu-card h3{font-size:23px}.menu-grid{gap:22px}.chef-copy{padding:60px 5vw}.chef-image{min-height:650px}.chef-credentials{grid-template-columns:1fr;gap:20px}.chef-credentials>div>span:last-child br{display:none}.process-grid{gap:30px}.gallery-item{height:290px}.reservation{gap:5vw}.request-form{padding:24px}.faq{gap:5vw}}
@media(max-width:800px){:root{--space:28px}.header{height:85px}.desktop-nav{display:none}.brand{font-size:10px;gap:12px}.brand small{font-size:7px}.monogram{font-size:35px;padding-right:18px}.hero-copy{padding-top:45px;padding-right:24px}.hero,.hero-visual{min-height:610px}h1{font-size:45px;margin-top:25px}.hero-desc{font-size:12px;line-height:1.9}.hero .button{font-size:10px;gap:15px;padding:12px 15px;min-height:50px}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero-bottom{padding-top:30px}.hero-bottom .tiny-label{font-size:7px}.hero-bottom a{font-size:10px}.image-note{bottom:25px;left:20px;padding:18px;gap:12px}.image-note>span:last-child{font-size:18px}.vertical-caption{font-size:7px;right:17px}.values-strip{gap:22px;font-size:8px;padding:20px 24px;letter-spacing:.04em}.values-strip i{font-size:16px}.section{padding:65px var(--space)}.section-top{margin-bottom:24px}.section-top>.tiny-label{font-size:7px;letter-spacing:.06em}.section-heading{align-items:flex-start;gap:25px}.section-heading h2{font-size:35px}.section-heading>p{font-size:11px;max-width:245px}.experience-row{grid-template-columns:28px 1fr 1.1fr 20px;gap:14px;padding:25px 0}.experience-row h3{font-size:22px}.experience-row p{font-size:11px}.menu-grid{gap:18px}.menu-image{height:235px}.menu-card h3{font-size:21px}.menu-card>p{font-size:11px;min-height:87px}.menu-meta{font-size:6px;letter-spacing:.08em}.text-link{font-size:9px;gap:12px}.menu-footnote{font-size:9px}.chef-copy{padding:45px 28px}.chef-copy h2{font-size:39px}.chef-copy>p{font-size:11px}.chef-copy>p.chef-lead{font-size:13px}.chef-image{min-height:660px}.photo-label{left:20px;bottom:20px;font-size:8px;padding:15px}.process-grid{gap:24px}.process-grid h3{font-size:22px}.process-grid p{font-size:11px}.gallery-item{height:240px}.reservation{gap:32px;padding-top:70px}.reservation-intro h2{font-size:43px}.reservation-intro>p:not(.eyebrow){font-size:12px}.locations{font-size:8px;letter-spacing:.06em}.request-form{padding:20px}.form-grid{gap:16px 12px}.form-grid label>span{font-size:9px}.form-grid input,.form-grid select,.form-grid textarea{font-size:10px}.form-top .tiny-label{font-size:7px}.form-submit{font-size:10px;padding:12px 14px}.direct-link{font-size:8px}.partner-strip p{font-size:22px}.faq h2{font-size:34px}.faq .eyebrow{font-size:8px}.faq summary{font-size:11px}.faq-list p{font-size:11px}footer{padding-top:45px}.footer-brand{font-size:31px}}
@media(max-width:600px){:root{--space:24px}html{scroll-padding-top:24px}.header{height:80px;padding:0 20px;gap:8px}.header-actions{gap:14px}.nav-cta{font-size:0;border:1px solid var(--line);padding:0;width:34px;height:34px;justify-content:center}.nav-cta span:first-child{display:none}.nav-cta span:last-child{font-size:20px}.brand{font-size:9px;letter-spacing:.1em;gap:10px}.brand small{font-size:6px;margin-top:4px}.monogram{font-size:32px;padding-right:14px}.languages{font-size:9px;gap:4px}.languages button{padding:10px 3px}.hero{display:flex;flex-direction:column;min-height:auto}.hero-copy{padding:40px 24px 28px}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(40px,12.8vw,76px);line-height:1.09;margin:25px 0 22px;letter-spacing:-.055em}.hero-desc{font-size:13px;max-width:320px;margin-bottom:24px;line-height:1.8}.hero .button{font-size:11px;min-height:52px;padding:13px 20px;gap:26px}.hero-bottom{flex-direction:row;align-items:center;padding-top:28px;gap:15px}.hero-bottom .tiny-label{font-size:7px;letter-spacing:.08em}.hero-bottom a{font-size:9px}.hero-visual{min-height:430px;height:430px}.hero-visual>img{object-position:50% 53%}.image-note{padding:18px 22px;bottom:22px;left:24px}.image-note>span:last-child{font-size:19px}.vertical-caption{font-size:7px;top:20px;right:20px}.values-strip{padding:21px 20px;gap:14px;justify-content:space-between;font-size:7px;letter-spacing:.03em;text-align:center;line-height:1.7}.values-strip>span{max-width:90px}.values-strip i{font-size:14px}.section{padding:55px 24px}.section-top{margin-bottom:22px;align-items:flex-start}.section-top>.tiny-label{max-width:145px;text-align:right;line-height:1.8;font-size:6px}.eyebrow{font-size:8px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:36px}.section-heading>p{max-width:100%;font-size:12px;margin-top:20px;line-height:1.9}.experience-row{grid-template-columns:24px 1fr 24px;gap:10px 14px;padding:24px 0}.experience-row h3{font-size:25px}.experience-row p{grid-column:2;grid-row:2;max-width:300px;font-size:11px}.row-arrow{grid-column:3;grid-row:1;font-size:24px}.row-number{font-size:9px}.experience-row:hover{padding-left:6px;padding-right:6px}.menu-grid{display:block}.menu-card+.menu-card{margin-top:38px}.menu-image{height:350px;max-height:90vw}.menu-card:nth-child(2) .menu-image{height:280px}.menu-card:nth-child(3) .menu-image{height:350px}.menu-card:nth-child(3) .menu-image img{object-position:50% 40%}.menu-meta{font-size:8px;letter-spacing:.12em;margin-top:16px}.menu-card h3{font-size:29px;margin-bottom:10px}.menu-card>p{font-size:12px;min-height:0;margin-bottom:18px}.text-link{font-size:11px}.menu-footnote{text-align:left;font-size:9px;margin-top:28px}.chef-section{display:flex;flex-direction:column}.chef-image{min-height:420px;height:420px}.chef-image>img{object-position:50% 38%}.chef-copy{padding:44px 24px 45px}.chef-copy>.eyebrow{font-size:8px;margin-bottom:22px}.chef-copy h2{font-size:46px;margin-bottom:22px}.chef-copy>p{font-size:12px;max-width:100%}.chef-copy>p.chef-lead{font-size:15px}.chef-credentials{grid-template-columns:1fr 1fr;gap:16px;margin-top:27px;padding:24px 0}.chef-credentials>div{gap:12px}.credential-number{font-size:35px}.credential-icon{font-size:31px}.chef-credentials>div>span:last-child{font-size:8px;line-height:1.8}.chef-credentials>div>span:last-child br{display:block}.text-link.light{font-size:10px}.process .section-heading{margin-bottom:30px}.process-grid{display:block}.process-grid article{display:grid;grid-template-columns:34px 1fr;gap:0 13px;padding-top:20px;margin-top:23px}.process-grid article>span{grid-row:1/3;padding-top:6px;font-size:9px}.process-grid h3{margin:0 0 10px;font-size:25px}.process-grid p{max-width:100%;font-size:12px}.gallery{grid-template-columns:1fr 1fr;gap:3px}.gallery-item{height:230px}.gallery-item:last-child{display:none}.gallery-item>span{width:29px;height:29px;font-size:17px;bottom:12px;right:12px}.reservation{display:block;padding-top:55px;padding-bottom:40px}.reservation-intro>.eyebrow{margin-bottom:23px}.reservation-intro h2{font-size:47px}.reservation-intro>p:not(.eyebrow){font-size:12px;max-width:100%}.locations{margin-top:27px;font-size:8px;letter-spacing:.12em}.reservation-intro>p.reservation-small{font-size:9px;max-width:280px;margin-bottom:28px}.request-form{padding:23px 18px}.form-grid{gap:18px 12px}.form-grid label>span{font-size:10px}.form-grid input,.form-grid select,.form-grid textarea{font-size:11px;min-height:44px;padding:10px 8px}.form-top .tiny-label{font-size:8px}.form-submit{font-size:11px;padding:13px 16px}.form-note{font-size:9px}.direct-link{font-size:9px;line-height:1.8;display:inline-block}.partner-strip{margin:0 24px;display:block;padding:24px 0}.partner-strip p{font-size:25px;max-width:260px}.partner-strip .text-link{margin-top:20px;min-width:0;width:max-content;gap:24px}.faq{display:block;padding-top:45px}.faq h2{font-size:36px;margin-top:14px}.faq-list{margin-top:28px}.faq summary{font-size:12px;padding-top:20px;padding-bottom:20px}.faq-list p{font-size:12px}footer{padding:42px 24px 24px;gap:28px}.footer-brand{font-size:33px}.footer-brand+p{font-size:22px}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:7px;padding-top:20px}.footer-bottom>span:nth-child(2),.footer-bottom>a{text-align:right}.privacy-open{font-size:7px;text-align:left}.modal-body{padding:45px 24px 28px}.modal h2{font-size:34px}.modal .eyebrow{font-size:8px}.modal-body>p:not(.eyebrow){font-size:12px}.modal-details{font-size:12px}.modal-body>.button{font-size:11px}.photo-modal .close-dialog{right:12px;top:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.hero-visual>img{object-position:50% 53%}
.chef-image>img{object-position:50% 50%}
.photo-section{background:#eaece3}
.gallery-intro{padding-top:62px;padding-bottom:32px}
.gallery-intro .eyebrow{color:var(--accent);margin-bottom:20px}
.gallery-intro h2{font-size:clamp(34px,3.2vw,48px)}
.gallery-intro>p:last-child{font-size:12px;color:var(--muted);max-width:440px;margin:18px 0 0;line-height:1.9}
.gallery-item{height:clamp(260px,27vw,420px)}
.gallery-item:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#071810b8);pointer-events:none}
.gallery-item>.gallery-caption{position:absolute;bottom:23px;left:24px;right:auto;width:auto;max-width:calc(100% - 90px);height:auto;display:block;background:transparent;color:var(--paper);font-size:12px;line-height:1.5;text-align:left;z-index:1}
.gallery-item>.gallery-zoom{z-index:1}
.gallery-item.gallery-portrait img{object-position:50% 20%}
@media(max-width:800px){.gallery-intro{padding-top:48px;padding-bottom:28px}.gallery-item{height:290px}.gallery-item>.gallery-caption{font-size:10px;left:18px;bottom:22px}}
@media(max-width:600px){.gallery-intro{padding:42px 24px 25px}.gallery-intro .eyebrow{margin-bottom:15px}.gallery-intro h2{font-size:35px}.gallery-intro>p:last-child{font-size:11px;max-width:300px;margin-top:15px}.gallery-item{height:230px}.gallery-item:last-child{display:block}.gallery-item>.gallery-caption{left:12px;bottom:14px;font-size:9px;max-width:calc(100% - 58px)}.chef-image>img{object-position:50% 38%}}

.gallery-item.gallery-crab img{object-position:50% 40%}

.photo-section .gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
.photo-section .gallery-item{height:clamp(240px,24vw,360px)}
@media(max-width:900px){.photo-section .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-section .gallery-item{height:290px}}
@media(max-width:600px){.photo-section .gallery-item{height:230px}}

/* Enquiries and contact details. */
.form-honeypot{display:none!important}.contact-email{display:inline-block;font-size:12px;line-height:1.8;text-decoration:underline;text-underline-offset:4px;margin:0 0 25px;overflow-wrap:anywhere}.privacy-policy-link{display:inline-block;font-size:11px;text-decoration:underline;text-underline-offset:4px;margin-top:8px}#send-request{width:100%;margin-top:18px}#copy-request{margin-top:12px}.thank-you{min-height:72vh;max-width:850px;margin:0 auto;padding:95px var(--space)}.thank-you h1{font-size:clamp(42px,7vw,72px);line-height:1.15;margin:28px 0}.thank-you p:not(.eyebrow){max-width:540px;color:var(--muted);font-size:14px;line-height:1.9}.thank-you .button{margin-top:20px}.thank-you .contact-email{display:block;width:fit-content;margin-top:24px}@media(max-width:600px){.thank-you{padding-top:65px;padding-bottom:65px}.contact-email{font-size:11px}}

/* Compact photo gallery and editorial introduction. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.photo-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,90px);align-items:center;padding:75px var(--space)}
.photo-section .gallery-intro{padding:0;max-width:400px}
.photo-section .gallery-intro h2{font-size:clamp(34px,3.4vw,49px)}
.photo-section .gallery-intro>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.95;margin:22px 0 0;max-width:370px}
.photo-section .gallery-intro>p.gallery-personal{margin-top:17px}
.photo-section .gallery-intro .text-link{max-width:305px;margin-top:27px;font-size:11px}
.gallery-carousel{width:min(100%,540px);min-width:0;margin-inline:auto;background:var(--ink)}
.photo-section .gallery{display:block;position:relative;aspect-ratio:4/3;grid-template-columns:none;overflow:hidden;background:var(--ink);isolation:isolate;touch-action:pan-y}
.photo-section .gallery-item{display:block;position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;opacity:0;z-index:0;pointer-events:none;transition:opacity .55s ease;background:var(--ink)}
.photo-section .gallery-item.is-active{opacity:1;z-index:1}
.photo-section .gallery-item:after{content:none}
.photo-section .gallery-item img{object-fit:contain;object-position:center;transform:none}
.gallery-thumbnails{position:relative;display:flex;gap:8px;padding:12px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.gallery-thumbnails::-webkit-scrollbar{display:none}
.gallery-thumbnail{display:block;flex:0 0 52px;width:52px;min-width:52px;height:44px;overflow:hidden;padding:0;background:none;border:2px solid transparent;opacity:.5;cursor:pointer;transition:opacity .25s,border-color .25s}
.gallery-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center}
.gallery-thumbnail:hover,.gallery-thumbnail:focus-visible{opacity:1}
.gallery-thumbnail:focus-visible{outline-color:var(--paper);outline-offset:2px}
.gallery-thumbnail.is-active{opacity:1;border-color:#c6ad8b}
@media(max-width:1000px){.photo-section{gap:35px;padding-block:60px}.photo-section .gallery-intro h2{font-size:38px}.photo-section .gallery-intro>p:not(.eyebrow){font-size:12px}.photo-section .gallery-intro .text-link{font-size:10px}}
@media(max-width:760px){.photo-section{display:block;padding-block:50px}.photo-section .gallery-intro{max-width:540px;margin:0 auto;padding:0 0 27px}.photo-section .gallery-intro h2{font-size:37px}.photo-section .gallery-intro>p:not(.eyebrow){max-width:none;font-size:13px}.photo-section .gallery-intro .text-link{font-size:11px}.gallery-carousel{max-width:480px}}
@media(max-width:600px){.photo-section{padding:46px 24px}.photo-section .gallery-intro h2{font-size:35px}.gallery-thumbnails{padding:10px;gap:7px}.gallery-thumbnail{flex-basis:48px;width:48px;min-width:48px;height:42px}}
@media(prefers-reduced-motion:reduce){.gallery-thumbnail,.photo-section .gallery-item{transition:none}}
/* Show only the photo inside the phone screenshot, without changing the source file. */
.gallery-photo-frame{position:relative;width:56.25%;height:100%;aspect-ratio:3/4;max-width:100%;margin-inline:auto;overflow:hidden}
.photo-section .gallery-sushi .gallery-photo-frame>img{position:absolute;inset:0;width:100%;height:170.667%;object-fit:fill;transform:translateY(-20.752%)}

/* Direct WhatsApp enquiry, alongside the existing email form. */
.whatsapp-hero{font-size:11px;text-decoration:underline;text-underline-offset:4px;margin-top:17px;line-height:1.7}
.whatsapp-hero:hover{color:var(--accent)}
.whatsapp-contact{margin-top:0;font-size:12px}
.reservation-intro>p.whatsapp-number{font-size:11px;margin:10px 0 18px;color:var(--muted);letter-spacing:.06em}
@media(max-width:600px){.whatsapp-hero{font-size:11px;margin-top:16px}.whatsapp-contact{font-size:12px;min-height:52px}}
