:root{--wine:#551627;--ink:#201a1b;--gold:#e9bd78;--paper:#faf9f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.9;font-size:16px}a{color:inherit}header{display:flex;justify-content:space-between;align-items:center;padding:20px 5%;background:var(--wine);color:white;border-bottom:1px solid #ffffff26}.brand{text-decoration:none;letter-spacing:.15em;font-size:18px}.brand span{display:block;font-size:12px;letter-spacing:.13em}.header-link{font-size:14px;text-underline-offset:6px}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--wine);color:white;min-height:710px}.hero-copy{padding:65px 9% 50px 10%}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.17em;color:var(--gold);margin:0 0 24px}.date{font-size:30px;letter-spacing:.04em;margin:0 0 30px}.date span{font-size:13px;display:block}h1{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(22px,2.6vw,39px);line-height:1.5;font-weight:400;margin:0}h1 span{display:block}h1 em{font-size:24px;line-height:1.2;font-style:normal;color:var(--gold);display:block;padding-left:25%}.lead{font-family:"Yu Mincho",serif;font-size:clamp(32px,3.3vw,48px);line-height:1.55;letter-spacing:.07em;margin:26px 0}.hero-description{font-size:16px;color:#f0dce0;margin-bottom:30px}.button{display:inline-block;background:var(--gold);color:#34121c;padding:15px 25px;text-decoration:none;font-size:16px;font-weight:700;text-align:center;transition:background .2s}.button:hover{background:#f6d5a1}.button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b56e32;outline-offset:5px}.fine{font-size:13px;margin:14px 0}.hero-image{position:relative;min-width:0}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:49% center}.image-caption{position:absolute;bottom:30px;right:30px;color:white;font-size:12px;letter-spacing:.15em;text-shadow:0 1px 5px black}.wrap{max-width:1120px;margin:auto;padding:85px 40px}h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:clamp(28px,3.3vw,42px);line-height:1.65;letter-spacing:.04em;margin:0 0 28px}h3{font-size:22px;line-height:1.5;font-weight:500}p{margin:0 0 20px}.wine{color:var(--wine)}.intro>p:not(.eyebrow){max-width:860px}.included{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-top:1px solid #c9b7ba;border-bottom:1px solid #c9b7ba}.included div{padding:30px 20px;border-right:1px solid #c9b7ba}.included div:first-child{padding-left:0}.included div:last-child{border:0}.included span{font-size:12px;color:var(--wine);letter-spacing:.12em;display:block;margin-bottom:10px}.included b{font-weight:500;font-size:19px;line-height:1.8}.chefs{background:#201b1c;color:white}.chef-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:40px}.chef-grid article{border-top:1px solid #80646b;padding-top:20px}.number{color:var(--gold);font-family:Georgia,serif;font-size:40px;margin:0}.chef-grid h3{font-family:Georgia,"Yu Mincho",serif;font-size:30px;margin:15px 0}.chef-name{font-size:24px}.chef-name span{font-size:14px;color:#c9b7ba}.chef-grid article>p:last-child{color:#ddcfd2}.chef-footer{border-top:1px solid #80646b;margin:30px 0 0;padding-top:30px;color:var(--gold)}.story{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}figure{margin:0}figure img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:38% center}figcaption{font-size:12px;color:#645358;margin-top:10px}.small{font-size:14px;color:#6c575e}.night{background:var(--wine);color:white}.night .wrap{max-width:1120px}.night p{max-width:820px}.night-note{display:flex;flex-wrap:wrap;gap:20px;align-items:center;border-top:1px solid #9c6373;padding-top:26px;margin-top:35px}.night-note span{border:1px solid var(--gold);color:var(--gold);padding:4px 15px;font-size:14px}.night-note strong{font-size:21px;font-weight:500}.timeline article{display:grid;grid-template-columns:220px 1fr;padding:30px 0;border-top:1px solid #c9b7ba}.timeline article:last-child{border-bottom:1px solid #c9b7ba}.timeline time{font-family:Georgia,serif;font-size:40px;color:var(--wine);line-height:1.5}.timeline time span{font-size:20px;display:block}.timeline h3{margin:5px 0 12px}.timeline p{margin:0}.stay{padding-top:0}.phone{font-family:Georgia,serif;font-size:24px;text-decoration:none}.reservation{background:#e9e3e4;scroll-margin-top:0}.reservation .eyebrow{color:var(--wine)}.booking-grid{display:grid;grid-template-columns:1fr 240px;gap:70px}.price{font-family:Georgia,serif;font-size:64px;color:var(--wine);line-height:1.3;margin:5px 0 20px}.price span{font-family:sans-serif;font-size:16px;display:inline-block;margin-left:10px}dl{margin:25px 0 30px}dl>div{display:grid;grid-template-columns:80px 1fr;border-top:1px solid #c4b4b8;padding:12px 0}dt{font-size:14px;color:#6c575e}dd{margin:0}.qr{align-self:center;text-align:center}.qr img{width:220px;max-width:100%;background:white;padding:15px}.qr p{font-size:14px;margin-top:14px}.reservation .button{background:var(--wine);color:white}.reservation .button:hover{background:#78273c}.faq h2{font-size:28px}details{border-bottom:1px solid #c9b7ba}summary{cursor:pointer;padding:20px 0;font-weight:600}details p{padding:0 0 12px;color:#6c575e}footer{background:#201b1c;color:#ddcfd2;text-align:center;padding:50px 20px;font-size:14px}footer p:first-child{color:white;font-size:17px}footer a{font-size:20px;text-decoration:none}footer small{font-size:12px;letter-spacing:.06em}.mobile-booking{display:none}@media(min-width:1500px){.hero-copy{padding-left:calc((100vw - 1300px)/2)}.hero{min-height:800px}}@media(max-width:800px){header{padding:15px 20px}.brand{font-size:15px}.brand span{font-size:10px}.header-link{font-size:12px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:40px 24px}.hero-image{height:300px;grid-row:2}.hero-image img{object-position:center 55%}.date{font-size:27px}h1{font-size:29px}.lead{font-size:36px}.wrap{padding:60px 24px}h2{font-size:29px}.included{grid-template-columns:1fr}.included div,.included div:first-child{padding:20px 0;border-right:0;border-bottom:1px solid #c9b7ba}.included b br{display:none}.included span{margin-bottom:5px}.chef-grid{grid-template-columns:1fr;gap:30px}.chef-grid h3{font-size:28px}.story{grid-template-columns:1fr;gap:30px}figure img{aspect-ratio:4/3}.timeline article{grid-template-columns:105px 1fr;gap:15px}.timeline time{font-size:29px}.timeline time span{font-size:17px}.timeline h3{font-size:20px}.stay{padding-top:0}.booking-grid{grid-template-columns:1fr;gap:30px}.price{font-size:52px}.price span{font-size:14px}.qr img{width:170px}.qr{justify-self:center}.reservation .button{width:100%}.night-note strong{font-size:19px}footer{padding-bottom:115px}.mobile-booking{display:flex;position:fixed;bottom:0;left:0;right:0;background:#faf9f7;box-shadow:0 -2px 15px #201a1b18;align-items:center;justify-content:space-between;padding:12px 20px max(12px,env(safe-area-inset-bottom));gap:15px;z-index:20}.mobile-booking span{font-size:12px;line-height:1.5}.mobile-booking b{font-size:18px;display:block;color:var(--wine)}.mobile-booking a{background:var(--wine);color:white;text-decoration:none;font-size:14px;padding:12px 20px;flex:1;text-align:center;max-width:230px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
