.food-intro,.room-intro,.sight-intro{text-align:center;max-width:900px}.food-intro h2,.room-intro h2,.sight-intro h2,.booking-steps>h2,.route-guide>h2{font:400 clamp(38px,4.5vw,62px)/1.45 var(--serif);letter-spacing:.07em}.food-intro>p:last-child,.room-intro>p:last-child,.sight-intro>p:last-child{max-width:720px;margin:auto}.food-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:8px;padding:0 2vw 8vw;background:var(--paper)}.food-gallery img{width:100%;height:100%;object-fit:cover}.food-gallery-main{grid-row:1/3}.food-course{display:grid;grid-template-columns:58% 42%;min-height:690px;background:#fff}.food-course.reverse{grid-template-columns:42% 58%;background:var(--deep);color:#fff}.food-course.reverse .course-photo{order:2}.course-photo img{width:100%;height:100%;object-fit:cover}.course-copy{align-self:center;padding:7vw}.course-copy>small,.breakfast-section small{color:var(--gold);font-size:10px;letter-spacing:.2em}.course-copy h2,.breakfast-section h2{font:400 clamp(36px,4vw,56px)/1.45 var(--serif)}.course-actions{display:flex;align-items:center;gap:25px;margin-top:28px}.breakfast-section{display:grid;grid-template-columns:62% 38%;background:#e9e1d3}.breakfast-section img{width:100%;height:100%;min-height:620px;object-fit:cover}.breakfast-section>div{align-self:center;padding:6vw}.meal-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d5cdbf;max-width:none;padding-left:7vw;padding-right:7vw}.meal-guide>div{background:#fff;padding:35px}.meal-guide h3{color:var(--gold);font-size:11px;letter-spacing:.12em}.meal-guide strong{font:400 22px var(--serif)}.room-intro{padding-bottom:80px}.room-type{display:grid;grid-template-columns:55% 45%;min-height:720px;background:#fff}.room-type.reverse{grid-template-columns:45% 55%;background:#eae2d5}.room-type.reverse>img{order:2}.room-type>img{width:100%;height:100%;max-height:820px;object-fit:cover}.room-type>div{align-self:center;padding:7vw}.room-type small{color:var(--gold);letter-spacing:.18em;font-size:10px}.room-type h2,.bath-wide h2{font:400 clamp(38px,4.5vw,62px)/1.4 var(--serif)}.room-type dl div,.bath-wide dl div{display:grid;grid-template-columns:90px 1fr;padding:12px 0;border-top:1px solid #ddd}.room-type dt,.bath-wide dt{font-size:11px;color:#777}.room-type dd,.bath-wide dd{margin:0}.bath-wide{display:grid;grid-template-columns:62% 38%;background:var(--deep);color:#fff}.bath-wide>img{width:100%;height:100%;min-height:720px;object-fit:cover}.bath-wide>div{align-self:center;padding:6vw}.bath-wide dl div{border-color:#ffffff38}.amenities{font-size:13px;margin-top:35px}.info-visual{display:grid;grid-template-columns:62% 38%;background:var(--deep);color:#fff}.info-visual img{width:100%;height:100%;min-height:680px;object-fit:cover}.info-visual>div{align-self:center;padding:6vw}.info-visual h2{font:400 clamp(38px,4vw,58px)/1.45 var(--serif)}.info-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px}.info-highlights article{position:relative;min-height:600px;overflow:hidden}.info-highlights img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.info-highlights article:hover img{transform:scale(1.03)}.info-highlights article:after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent,#102018e8)}.info-highlights article>div{position:absolute;z-index:2;left:35px;right:35px;bottom:35px;color:#fff}.info-highlights small{color:#e2bd7e;letter-spacing:.2em}.info-highlights h3{font:400 28px var(--serif)}.info-highlights a{border-bottom:1px solid var(--gold);font-size:12px}.reserve-hero{display:grid;grid-template-columns:58% 42%;background:#e9e1d3}.reserve-hero>img{width:100%;height:100%;min-height:650px;object-fit:cover}.reserve-hero>div{align-self:center;padding:6vw}.reserve-hero h2{font:400 clamp(36px,4vw,56px)/1.45 var(--serif)}.reserve-buttons{display:flex;flex-direction:column;align-items:flex-start;gap:25px;margin-top:35px}.booking-steps{text-align:center;max-width:1300px}.booking-steps>div{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:50px;text-align:left}.booking-steps article{background:#fff;padding-bottom:28px;position:relative}.booking-steps img{width:100%;aspect-ratio:4/3;object-fit:cover}.booking-steps span{position:absolute;left:18px;top:18px;background:var(--gold);color:#fff;padding:7px 11px}.booking-steps h3,.booking-steps p{margin-left:25px;margin-right:25px}.reservation-help{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#cfc5b5}.reservation-help article{background:#fff;padding:6vw}.reservation-help small{color:var(--gold);letter-spacing:.17em}.reservation-help h3{font:400 28px var(--serif)}.sight-intro{padding-bottom:80px}.sight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:8px}.sight-grid article{display:grid;grid-template-columns:52% 48%;min-height:440px;background:#fff}.sight-grid img{width:100%;height:100%;object-fit:cover}.sight-grid article>div{align-self:center;padding:35px}.sight-grid span{color:var(--gold);font-size:11px;letter-spacing:.12em}.sight-grid h2{font:400 28px var(--serif)}.sight-grid a,.landmark-links a{font-size:12px;border-bottom:1px solid var(--gold)}.trip-note{display:grid;grid-template-columns:1fr 1fr;gap:60px}.trip-note h2{font:400 40px var(--serif)}.access-lead{text-align:center;max-width:1000px}.access-lead h2{font:400 48px var(--serif)}.destination{display:grid;grid-template-columns:1fr 1fr;text-align:left;background:#fff;margin-top:45px;padding:40px;gap:40px}.destination>div:last-child{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:20px}.destination small{color:var(--gold);letter-spacing:.17em}.access-map{line-height:0}.route-guide{max-width:1100px}.route-guide>h2{text-align:center}.route-guide>article{display:grid;grid-template-columns:110px 1fr;gap:35px;padding:50px 0;border-top:1px solid #cfc7ba}.route-icon{width:90px;height:90px;border-radius:50%;background:var(--deep);color:#fff;display:grid;place-items:center;font:20px var(--serif)}.route-guide small{color:var(--gold);letter-spacing:.18em}.route-guide h3{font:400 29px var(--serif)}.route-guide ol{padding-left:22px}.route-guide li{margin:12px 0}.route-point{background:#fff;padding:20px}.landmark-links{display:flex;gap:25px;margin-top:25px}.access-help{display:flex;justify-content:space-between;align-items:center;background:var(--deep);color:#fff;padding:80px 10vw}.access-help h2{font:400 38px var(--serif)}.access-help>a{font:32px var(--serif);color:#e4c284}.access-help>a small{display:block;font:10px var(--sans);letter-spacing:.15em}@media(min-width:1600px){.food-course,.room-type,.info-visual,.reserve-hero{grid-template-columns:65% 35%}.food-course.reverse,.room-type.reverse{grid-template-columns:35% 65%}.food-gallery{padding-left:5vw;padding-right:5vw}.sight-grid{padding-left:4vw;padding-right:4vw}}@media(max-width:1000px){.sight-grid{grid-template-columns:1fr}.info-highlights{grid-template-columns:1fr}.info-highlights article{min-height:520px}}@media(max-width:800px){.food-gallery{grid-template-columns:1fr;grid-template-rows:auto}.food-gallery-main{grid-row:auto}.food-gallery img{aspect-ratio:4/3}.food-course,.food-course.reverse,.breakfast-section,.room-type,.room-type.reverse,.bath-wide,.info-visual,.reserve-hero{grid-template-columns:1fr}.food-course.reverse .course-photo,.room-type.reverse>img{order:0}.course-photo img,.room-type>img,.bath-wide>img,.info-visual img,.reserve-hero>img{max-height:560px;min-height:0}.course-copy,.room-type>div,.bath-wide>div,.info-visual>div,.reserve-hero>div{padding:65px 8vw}.breakfast-section img{min-height:0;max-height:540px}.meal-guide,.booking-steps>div{grid-template-columns:1fr}.reservation-help{grid-template-columns:1fr}.sight-grid article{grid-template-columns:1fr}.sight-grid img{aspect-ratio:4/3}.trip-note,.destination{grid-template-columns:1fr}.route-guide>article{grid-template-columns:1fr}.access-help{align-items:flex-start;flex-direction:column;gap:25px}.access-map iframe{height:460px}}@media(max-width:520px){.food-course,.room-type{min-height:0}.course-actions{align-items:flex-start;flex-direction:column}.sight-grid article>div{padding:28px}.destination{padding:25px}.access-help{padding:55px 7vw}.access-help>a{font-size:26px}}
