:root{--ink: #303133;--muted: #67706b;--line: #d7ddd9;--paper: #fbfaf6;--white: #ffffff;--forest: #244d43;--forest-dark: #18362f;--lake: #dcecef;--gold: #ad9961;--clay: #9c854d;--cream: #f7efe1;--sage: #dfe8df;--copper: #8e7948;--accent-light: #d8c48d;--accent-soft: #f6f0df;--accent-dark: #756136;--heading-accent: #887541;--danger: #9f3a38;--success: #216e4e;--shadow: 0 22px 52px rgba(27, 48, 43, .16);--soft-shadow: 0 12px 32px rgba(27, 48, 43, .1);--serif: Georgia, "Times New Roman", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Segoe UI,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:10px 14px;background:var(--forest);color:var(--white);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:104px;padding:8px clamp(18px,3vw,42px);background:#fbfaf6e6;border-bottom:1px solid rgba(36,49,46,.1);backdrop-filter:blur(12px)}.brand{display:inline-flex;align-items:center;flex:0 0 auto;text-decoration:none}.brand-logo{width:auto;height:clamp(68px,7vw,92px);mix-blend-mode:multiply}.site-nav{display:flex;align-items:center;gap:4px}.site-nav a{padding:9px 10px;color:var(--muted);font-size:14px;font-weight:600;text-decoration:none;border-radius:999px}.site-nav a:hover,.site-nav a:focus-visible{color:var(--forest);background:#244d4314}.site-nav a.nav-booking{margin-left:6px;padding:10px 18px;color:var(--white);background:linear-gradient(135deg,var(--gold) 0%,var(--accent-dark) 100%);border:1px solid rgba(117,97,54,.25);box-shadow:0 12px 26px #75613638}.site-nav a.nav-booking:hover,.site-nav a.nav-booking:focus-visible{color:var(--white);background:linear-gradient(135deg,#b9a56f,#6c592f);box-shadow:0 15px 30px #7561364d;transform:translateY(-1px)}.mobile-booking-cta{position:fixed;left:18px;right:18px;bottom:14px;z-index:45;display:none;min-height:48px;align-items:center;justify-content:center;color:var(--white);background:linear-gradient(135deg,var(--gold) 0%,var(--accent-dark) 100%);border:1px solid rgba(255,255,255,.28);border-radius:999px;box-shadow:0 18px 36px #18362f42;font-weight:800;text-decoration:none}.nav-toggle{display:none;width:44px;height:44px;padding:0;background:transparent;border:1px solid var(--line);border-radius:8px}.nav-toggle-line{display:block;width:20px;height:2px;margin:5px auto;background:var(--ink)}.hero{position:relative;display:flex;align-items:flex-end;min-height:min(760px,calc(100svh - 18px));background:var(--forest-dark);color:var(--white);overflow:hidden;touch-action:pan-y}.hero:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#10201cdb,#10201c94 42%,#10201c33),linear-gradient(0deg,#10201cb8,#10201c14 42%);pointer-events:none}.hero-media{position:absolute;inset:0;min-height:100%}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-slide{position:absolute;inset:0;opacity:0;transform:scale(1.025);transition:opacity .9s ease,transform 4s ease}.hero-slide.is-active{opacity:1;transform:scale(1)}.hero-control{position:absolute;top:38%;z-index:4;display:grid;place-items:center;width:56px;height:56px;padding:0;color:var(--white);background:#10201c94;border:1px solid rgba(255,255,255,.26);border-radius:999px;backdrop-filter:blur(8px);cursor:pointer;transform:translateY(-50%);transition:background .16s ease,border-color .16s ease,transform .16s ease}.hero-control:hover,.hero-control:focus-visible{background:#10201cd1;border-color:#d8c48dc7;transform:translateY(-50%) scale(1.04)}.hero-control.prev{left:clamp(16px,3vw,42px)}.hero-control.next{right:clamp(16px,3vw,42px)}.hero-control:before{width:13px;height:13px;content:"";border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}.hero-control.prev:before{transform:rotate(-135deg)}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;width:min(760px,calc(100% - 48px));margin-left:max(24px,calc((100vw - 1132px)/2));padding:0 0 136px;background:transparent}.eyebrow{margin:0 0 10px;color:var(--copper);font-size:13px;font-weight:700;letter-spacing:0;text-transform:uppercase}.hero .eyebrow,.booking-section .eyebrow,.route-section .eyebrow{color:var(--accent-light)}.hero h1{margin:0;font-family:var(--serif);font-size:clamp(48px,7vw,92px);font-weight:500;line-height:.98;letter-spacing:0}.hero-text{max-width:560px;margin:22px 0 0;color:#ffffffdb;font-size:clamp(18px,2vw,22px)}.hero-actions,.portal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border:1px solid transparent;border-radius:8px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .16s ease,border-color .16s ease}.button.primary{background:linear-gradient(135deg,var(--clay) 0%,var(--accent-dark) 100%);color:var(--white);box-shadow:0 14px 30px #75613642}.button.primary:hover,.button.primary:focus-visible{background:linear-gradient(135deg,var(--gold) 0%,var(--accent-dark) 100%);box-shadow:0 18px 36px #75613657;transform:translateY(-1px)}.button.secondary{background:transparent;color:currentColor;border-color:#fff6}.button.dark-secondary{color:var(--forest);border-color:#244d4347}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:1180px;margin:-76px auto 0;padding:0 24px;position:relative;z-index:3}.facts div{min-height:118px;padding:24px;background:#fffffff0;border:1px solid rgba(36,49,46,.08);box-shadow:var(--soft-shadow);backdrop-filter:blur(8px)}.facts div:first-child{border-radius:8px 0 0 8px}.facts div:last-child{border-radius:0 8px 8px 0}.facts strong,.facts span{display:block}.facts strong{font-size:18px}.facts span{margin-top:4px;color:var(--muted)}.section{max-width:1180px;margin:0 auto;padding:104px 24px}section[id]{scroll-margin-top:112px}.intro,.media-section,.route-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:54px;align-items:start}.section-copy h2,.media-copy h2,.booking-copy h2,.route-info-card h2{max-width:760px;margin:0;color:var(--heading-accent);font-family:var(--serif);font-size:clamp(34px,4vw,54px);font-weight:500;line-height:1.14;letter-spacing:0}.booking-copy h2,.route-info-card h2{color:var(--accent-light)}.section-copy p:not(.eyebrow),.media-copy p,.intro-text p,.route-card p,.price-note,.booking-copy p{color:var(--muted)}.intro-text{display:grid;gap:18px}.intro-text p{margin:0;font-size:19px}.impressions-section{max-width:none;background:linear-gradient(180deg,#fbfaf600,#dce8df7a),var(--paper)}.impressions-section>*{max-width:1132px;margin-left:auto;margin-right:auto}.impressions-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.showcase-count{display:inline-flex;align-items:baseline;gap:6px;padding:14px 18px;color:var(--forest);background:#ffffffb8;border:1px solid rgba(36,49,46,.12);border-radius:8px;box-shadow:var(--soft-shadow);font-family:var(--serif);font-size:24px;line-height:1}.showcase-count [data-showcase-current]{color:var(--copper);font-size:40px}.image-showcase{position:relative;margin-top:34px;overflow:hidden;background:var(--forest-dark);border-radius:8px;box-shadow:var(--shadow);touch-action:pan-y}.showcase-stage{position:relative;min-height:min(64vw,620px);aspect-ratio:16 / 10;overflow:hidden}.showcase-stage:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#0e1f1b85,#0e1f1b1a 48%,#0e1f1b61),linear-gradient(0deg,#0e1f1b9e,#0e1f1b0a 46%);pointer-events:none}.showcase-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .42s ease,transform 1.4s ease}.showcase-slide.is-active{opacity:1;transform:scale(1)}.showcase-caption{position:absolute;left:clamp(18px,4vw,46px);bottom:104px;z-index:4;max-width:min(520px,calc(100% - 36px));color:var(--white)}.showcase-caption strong,.showcase-caption span{display:block}.showcase-caption strong{font-family:var(--serif);font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.05}.showcase-caption span{margin-top:10px;color:#ffffffd6;font-size:17px}.showcase-strip{display:flex;gap:8px;padding:12px;overflow-x:auto;background:#0e1f1beb;scrollbar-width:thin}.showcase-thumb{flex:0 0 88px;width:88px;height:62px;padding:0;overflow:hidden;background:transparent;border:2px solid transparent;border-radius:6px;cursor:pointer;opacity:.58;transition:opacity .16s ease,border-color .16s ease,transform .16s ease}.showcase-thumb:hover,.showcase-thumb.is-active{border-color:var(--gold);opacity:1;transform:translateY(-1px)}.showcase-thumb img{width:100%;height:100%;object-fit:cover}.room-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}.room-guide-card{display:flex;flex-direction:column;min-height:220px;padding:24px;background:#fbfaf6;border:1px solid rgba(36,49,46,.1);border-radius:8px;box-shadow:0 18px 38px #1c362f14}.room-guide-card h3{margin:0;color:var(--forest);font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.15}.room-guide-card p{margin:14px 0 0;color:var(--muted)}.room-guide-card a{width:fit-content;margin-top:auto;padding-top:20px;color:var(--copper);font-weight:800;text-decoration-color:#8e794859;text-underline-offset:4px}.room-guide-card a:hover,.room-guide-card a:focus-visible{color:var(--forest);text-decoration-color:currentColor}.room-browser{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);grid-template-rows:auto 1fr;min-height:0;margin-top:42px;overflow:hidden;background:var(--white);border:1px solid rgba(36,49,46,.1);border-radius:8px;box-shadow:var(--shadow)}.room-browser-media{position:relative;align-self:start;grid-column:1;grid-row:1 / span 2;aspect-ratio:4 / 3;min-height:0;overflow:hidden;background:var(--forest-dark);touch-action:pan-y}.room-browser-media:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#10201c1f,#10201c00),linear-gradient(0deg,#10201c8f,#10201c05 45%);pointer-events:none}.room-browser-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .28s ease,transform .9s ease}.room-browser-image.is-active{opacity:1;transform:scale(1)}.room-gallery-strip{position:absolute;top:22px;left:24px;right:24px;z-index:3;display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin}.room-gallery-thumb{flex:0 0 68px;width:68px;height:50px;padding:0;overflow:hidden;background:#ffffffd1;border:2px solid rgba(255,255,255,.62);border-radius:6px;box-shadow:0 10px 22px #10201c38;cursor:pointer;opacity:.76;transition:border-color .16s ease,opacity .16s ease,transform .16s ease}.room-gallery-thumb:hover,.room-gallery-thumb:focus-visible,.room-gallery-thumb.is-active{border-color:var(--gold);opacity:1;transform:translateY(-1px)}.room-gallery-thumb img{width:100%;height:100%;object-fit:cover}.room-browser-media-note{position:absolute;left:24px;right:24px;bottom:112px;z-index:4;max-width:none;margin:0;padding:10px 12px;color:#fffffff0;background:#18362fd1;border:1px solid rgba(255,255,255,.18);border-radius:8px;font-size:12px;font-weight:800;line-height:1.35;backdrop-filter:blur(10px)}.room-browser-media-note.is-hidden{display:none}.room-browser-price{position:absolute;left:24px;bottom:24px;z-index:2;display:inline-flex;align-items:baseline;gap:10px;padding:14px 18px;color:var(--white);background:#18362fd1;border:1px solid rgba(255,255,255,.18);border-radius:8px;backdrop-filter:blur(10px)}.room-browser-price span{color:#ffffffc2;font-size:13px;font-weight:700;text-transform:uppercase}.room-browser-price strong{font-family:var(--serif);font-size:42px;font-weight:500;line-height:1}.room-browser-copy{grid-column:2;grid-row:1;padding:36px 36px 0}.room-browser-label{margin:0 0 12px;color:var(--copper);font-size:13px;font-weight:800;text-transform:uppercase}.room-browser-copy h3{margin:0;color:var(--forest);font-family:var(--serif);font-size:clamp(34px,4vw,52px);font-weight:500;line-height:1.08}.room-browser-copy p:not(.room-browser-label){margin:16px 0 0;color:var(--muted);font-size:18px}.room-browser-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.room-browser-summary div{min-height:78px;padding:14px 16px;background:#f7f4eb;border:1px solid rgba(173,153,97,.22);border-radius:8px}.room-browser-summary .room-summary-wide{grid-column:1 / -1}.room-browser-summary span,.room-browser-summary strong{display:block}.room-browser-summary span{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35;text-transform:uppercase}.room-browser-summary strong{margin-top:4px;color:var(--forest);font-size:16px;line-height:1.35}.room-browser-summary [data-room-panel-price]{color:var(--clay);font-family:var(--serif);font-size:30px;font-weight:500;line-height:1}.room-browser-features{margin-top:20px}.room-browser-actions{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center;margin-top:24px}.room-browser-actions .button{min-height:44px}.room-browser-actions span{max-width:280px;color:var(--muted);font-size:13px;line-height:1.45}.room-option-list{grid-column:2;grid-row:2;align-self:end;display:grid;gap:10px;padding:28px 36px 36px}.room-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;width:100%;padding:16px 18px;color:var(--ink);text-align:left;background:#fbfaf6;border:1px solid rgba(36,49,46,.12);border-radius:8px;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.room-option:hover,.room-option:focus-visible{border-color:#ad996175;transform:translateY(-1px)}.room-option.is-active{background:var(--accent-soft);border-color:#ad9961b3;box-shadow:0 12px 28px #75613624}.room-option strong,.room-option small{display:block}.room-option strong{color:var(--forest);font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.16}.room-option small{margin-top:4px;color:var(--muted);font-size:13px}.room-option em{color:var(--clay);font-family:var(--serif);font-size:24px;font-style:normal;white-space:nowrap}.stay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px}.stay-card,.booking-form,.price-panel,.portal-card{background:var(--white);border:1px solid rgba(36,49,46,.1);border-radius:8px;box-shadow:var(--shadow)}.stay-card{overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.stay-card:hover{transform:translateY(-3px);box-shadow:0 28px 60px #1b302b2e}.stay-card:first-child,.stay-card:last-child{display:block;grid-column:auto;grid-template-columns:none}.stay-card:last-child{grid-column:auto;grid-template-columns:none}.stay-slider{position:relative;min-height:310px;height:100%;overflow:hidden;background:var(--forest-dark);aspect-ratio:4 / 3;touch-action:pan-y}.stay-card:first-child .stay-slider,.stay-card:last-child .stay-slider{aspect-ratio:4 / 3}.slider-frame{position:relative;width:100%;height:100%;min-height:310px}.slider-image{position:absolute;inset:0;width:100%;height:100%;min-height:310px;object-fit:cover;opacity:0;transform:scale(1.025);transition:opacity .26s ease,transform .7s ease}.slider-image.is-active{opacity:1;transform:scale(1)}.slider-dots{position:absolute;left:50%;bottom:12px;z-index:4;display:flex;gap:6px;transform:translate(-50%)}.slider-dot{width:8px;height:8px;padding:0;background:#ffffffb8;border:0;border-radius:999px;cursor:pointer}.slider-dot.is-active{width:24px;background:var(--gold)}.slider-control,.showcase-control{position:absolute;z-index:5;display:grid;place-items:center;padding:0;color:var(--white);background:#10201c85;border:1px solid rgba(255,255,255,.32);border-radius:999px;backdrop-filter:blur(8px);cursor:pointer;transition:background .16s ease,transform .16s ease}.slider-control:hover,.showcase-control:hover{background:#10201cc7;transform:translateY(-50%) scale(1.04)}.slider-control{top:50%;width:38px;height:38px;transform:translateY(-50%)}.showcase-control{top:44%;width:50px;height:50px;transform:translateY(-50%)}.slider-control.prev,.showcase-control.prev{left:14px}.slider-control.next,.showcase-control.next{right:14px}.slider-control:before,.showcase-control:before{width:10px;height:10px;content:"";border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}.slider-control.prev:before,.showcase-control.prev:before{transform:rotate(-135deg)}.image-button{display:block;width:100%;padding:0;background:transparent;border:0;cursor:zoom-in}.image-button img,.stay-card>img{width:100%;height:100%;min-height:310px;aspect-ratio:4 / 3;object-fit:cover}.stay-content{display:flex;flex-direction:column;padding:30px}.stay-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;color:var(--muted);font-size:13px;font-weight:700}.stay-meta span{padding:4px 8px;background:#f4f7f5;border:1px solid var(--line);border-radius:999px}.rating{margin:0 0 6px;color:var(--clay);font-weight:700}.stay-content h3,.route-card h3{margin:0 0 10px;font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.2}.stay-content p{margin:0 0 18px;color:var(--muted)}.stay-price{display:flex;align-items:baseline;gap:8px;margin:2px 0 4px;color:var(--forest)}.stay-price strong{font-family:var(--serif);font-size:34px;font-weight:500;line-height:1}.stay-price span{color:var(--muted);font-size:14px}.feature-list{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.feature-list li{padding:5px 9px;background:#f4f7f5;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:13px}.source-note{margin-top:14px;color:var(--clay);font-size:13px}.stay-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:22px}.stay-request-link{width:100%;background:#f6f2e9}.stay-request-link:hover,.stay-request-link:focus-visible{color:var(--white);background:var(--forest);border-color:var(--forest)}.price-section{max-width:none;background:linear-gradient(180deg,#dcecefc7,#f7efe1b8),var(--lake)}.price-section>*{max-width:1132px;margin-left:auto;margin-right:auto}.price-panel{margin-top:24px;overflow-x:auto}.price-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1132px;margin:34px auto 0}.price-highlights div{padding:20px;background:#fffc;border:1px solid rgba(36,49,46,.1);border-radius:8px;box-shadow:var(--soft-shadow)}.price-highlights strong,.price-highlights span{display:block}.price-highlights strong{color:var(--forest);font-size:18px}.price-highlights span{margin-top:6px;color:var(--muted)}.price-panel-header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px;border-bottom:1px solid var(--line)}.panel-kicker{display:block;color:var(--copper);font-size:13px;font-weight:700;text-transform:uppercase}.price-panel-header h3{margin:4px 0 0;font-family:var(--serif);font-size:30px;font-weight:500}.price-tabs{display:inline-flex;gap:6px;padding:5px;background:#f4f0e8;border:1px solid rgba(36,49,46,.12);border-radius:999px}.price-tab{min-height:38px;padding:8px 15px;color:var(--muted);background:transparent;border:0;border-radius:999px;cursor:pointer}.price-tab.is-active{color:var(--white);background:var(--forest)}.price-view{display:none}.price-view.is-active{display:block}table{width:100%;min-width:760px;border-collapse:collapse;table-layout:fixed}.price-table th:nth-child(1),.price-table td:nth-child(1){width:14%}.price-table th:nth-child(2),.price-table td:nth-child(2){width:31%}.price-table th:nth-child(3),.price-table td:nth-child(3){width:25%}.price-table th:nth-child(4),.price-table td:nth-child(4){width:10%}.price-table th:nth-child(5),.price-table td:nth-child(5){width:20%}th,td{padding:20px 24px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:break-word}th{background:#f5f1e9;color:var(--forest);font-size:14px;text-transform:uppercase}tbody tr:last-child td{border-bottom:0}.price-table tr{transition:background .16s ease,box-shadow .16s ease}.price-table tr.is-highlighted{background:var(--accent-soft);box-shadow:inset 5px 0 0 var(--clay)}.price-note{margin:0;padding:18px 24px;border-top:1px solid var(--line);font-size:14px}.price-table td:first-child{color:var(--forest);font-size:24px;font-weight:800}.price-table td:nth-child(2) strong,.price-cell{display:block;color:var(--ink);font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.2}.price-cell{white-space:nowrap}.price-table td:nth-child(2) span{display:block;margin-top:4px;color:var(--muted);font-size:14px}.price-room-link{display:inline-flex;width:fit-content;margin-top:10px;color:var(--clay);font-size:13px;font-weight:800;text-decoration-thickness:2px;text-underline-offset:4px}.table-feature-list{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.table-feature-list li{padding:4px 8px;background:#f4f7f5;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:13px}.price-footnotes{display:flex;flex-wrap:wrap;gap:10px;padding:16px 24px;background:#fbfaf6;border-top:1px solid var(--line)}.price-footnotes span{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;color:var(--forest);background:var(--accent-soft);border:1px solid rgba(173,153,97,.24);border-radius:999px;font-size:13px;font-weight:700}.price-note-box{display:grid;gap:6px;padding:20px 24px;background:var(--forest-dark);color:var(--white)}.price-note-box strong,.price-note-box span{display:block}.price-note-box span{color:#ffffffc7}.legacy-price-table strong,.table-subline,.table-lines,.table-lines span{display:block}.legacy-price-table strong{color:var(--ink);font-size:18px}.table-subline{margin:2px 0 14px;color:var(--muted);font-size:14px}.table-lines{display:grid;gap:7px}.table-lines span{min-height:24px}.legacy-price-table td:not(:first-child) .table-lines span{color:var(--forest);font-weight:700}.price-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;background:var(--forest-dark);color:var(--white)}.inquiry-section{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:44px;align-items:start}.inquiry-copy p:not(.eyebrow){color:var(--muted);font-size:18px}.direct-inquiry-note{margin-top:24px;padding:20px 22px;background:#f6f2e9;border:1px solid rgba(36,49,46,.12);border-left:5px solid var(--gold);border-radius:8px}.direct-inquiry-note strong,.direct-inquiry-note span{display:block}.direct-inquiry-note strong{color:var(--forest)}.direct-inquiry-note span{margin-top:6px;color:var(--muted)}.direct-inquiry-link{display:inline-block;margin-top:14px}.inquiry-steps{display:grid;gap:14px}.inquiry-step{display:grid;grid-template-columns:58px minmax(0,1fr);gap:18px;align-items:start;padding:22px;background:var(--white);border:1px solid rgba(36,49,46,.1);border-radius:8px;box-shadow:var(--soft-shadow)}.inquiry-step-number{display:grid;place-items:center;width:46px;height:46px;color:var(--white);background:var(--forest);border-radius:999px;font-size:13px;font-weight:800}.inquiry-step h3{margin:0 0 6px;color:var(--forest);font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.18}.inquiry-step p{margin:0;color:var(--muted)}.booking-section{max-width:none;padding-left:max(24px,calc((100vw - 1132px)/2));padding-right:max(24px,calc((100vw - 1132px)/2));background:linear-gradient(135deg,#18362ffa,#244d43eb),var(--forest);color:var(--white)}.booking-layout{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:34px;align-items:start}.booking-copy p{color:#ffffffc2;font-size:18px}.booking-assurance{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.booking-assurance span{padding:8px 11px;color:#ffffffe6;background:#ffffff1a;border:1px solid rgba(255,255,255,.16);border-radius:8px;font-size:13px;font-weight:800}.booking-copy .booking-email{display:inline-flex;flex-wrap:wrap;gap:7px;align-items:baseline;margin-top:22px;color:#ffffffad;font-size:16px}.booking-email a{color:#ffffffeb;font-weight:500;text-decoration:none;border-bottom:1px solid rgba(216,196,141,.36);transition:color .16s ease,border-color .16s ease}.booking-email a:hover,.booking-email a:focus-visible{color:var(--accent-light);border-color:#d8c48dcc}.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.portal-card{display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-height:280px;padding:28px;color:var(--ink)}.portal-badge{display:inline-flex;width:fit-content;padding:5px 9px;color:var(--copper);background:#f6f2e9;border:1px solid rgba(36,49,46,.1);border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase}.portal-card h3{margin:16px 0 10px;color:var(--forest);font-family:var(--serif);font-size:34px;font-weight:500;line-height:1.08}.portal-card p{margin:0;color:var(--muted)}.booking-form{padding:28px;color:var(--ink)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-field{display:grid;gap:6px}.form-field.full{grid-column:1 / -1}.form-field label,.fieldset-title{color:var(--ink);font-size:14px;font-weight:700}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:46px;padding:10px 12px;background:#fffefa;border:1px solid var(--line);border-radius:8px;color:var(--ink)}.form-field textarea{min-height:120px;resize:vertical}.accommodation-picker{display:grid;gap:12px;grid-column:1 / -1;border:0;padding:0;margin:0}.radio-card{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fffefa;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.radio-card:hover,.radio-card:has(input:checked){border-color:#244d436b;background:#f7fbf7;box-shadow:0 8px 22px #1b302b14}.radio-card input{margin-top:5px}.radio-card strong,.radio-card span{display:block}.radio-card span{color:var(--muted);font-size:14px}.privacy-field{display:flex;gap:10px;align-items:flex-start;grid-column:1 / -1;color:var(--muted);font-size:14px}.privacy-field input{margin-top:4px}.form-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;grid-column:1 / -1}.form-status{margin:0;color:var(--muted);font-weight:700}.form-status[data-state=error]{color:var(--danger)}.form-status[data-state=success]{color:var(--success)}.estimate-box{grid-column:1 / -1;padding:16px;background:linear-gradient(135deg,#f4f7f5,#fff9eb);border:1px solid var(--line);border-radius:8px}.estimate-box strong{display:block;font-size:22px}.estimate-box p{margin:4px 0 0;color:var(--muted)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.media-section{align-items:center;background:var(--paper)}.media-copy p:not(.eyebrow){font-size:18px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gallery-grid img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:8px;box-shadow:var(--soft-shadow)}.location-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px}figure{margin:0;overflow:hidden;background:var(--white);border:1px solid rgba(36,49,46,.1);border-radius:8px;box-shadow:var(--soft-shadow)}figure img{width:100%;aspect-ratio:4 / 3;object-fit:cover}figcaption{padding:14px 16px 16px;color:var(--muted);font-size:14px}figcaption strong,figcaption span{display:block}figcaption strong{color:var(--forest);font-size:16px}figcaption strong+span{margin-top:5px}figcaption a{color:var(--copper);font-weight:700;text-decoration-color:#8e794859;text-underline-offset:3px}.image-credit{display:block;margin-top:6px;color:#6b736fcc;font-size:12px;line-height:1.45}.route-section{max-width:none;padding-left:max(24px,calc((100vw - 1132px)/2));padding-right:max(24px,calc((100vw - 1132px)/2));background:linear-gradient(135deg,#18362ff5,#1d3c34f5),var(--forest);color:var(--white)}.route-info-card,.route-card{background:#ffffff17;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:34px}address{margin-top:20px;font-style:normal;color:#ffffffd6}.route-card p,.route-card .text-link{color:#ffffffe6}.local-quickfacts{display:grid;gap:10px;margin:24px 0;padding:0;list-style:none}.local-quickfacts li{display:grid;gap:4px;padding:14px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.14);border-radius:8px}.local-quickfacts strong{color:var(--accent-light)}.local-quickfacts span{color:#ffffffc7;font-size:14px}.text-link{color:var(--forest);font-weight:700;text-decoration-thickness:2px;text-underline-offset:4px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 34px;background:#172a25;color:#ffffffc7}.site-footer p{margin:0}.site-footer div{display:flex;gap:18px}.site-footer a{color:inherit}.legal-page{background:var(--white)}.legal-main{max-width:860px;margin:0 auto;padding:72px 24px 96px}.legal-main h1{margin:0 0 30px;font-size:42px;line-height:1.15}.legal-main h2{margin:34px 0 10px;font-size:24px}.legal-main p,.legal-main li{color:var(--muted)}@media(max-width:980px){.hero,.intro,.media-section,.route-section,.booking-layout{grid-template-columns:1fr}.hero{min-height:700px}.hero-media{min-height:100%}.hero-content{width:min(680px,calc(100% - 48px));margin:0 24px;padding:0 0 112px}.hero h1{font-size:44px}.facts,.room-guide,.stay-grid,.location-grid,.price-highlights,.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.impressions-head{align-items:flex-start;flex-direction:column}.stay-card:first-child,.stay-card:last-child{grid-column:auto;grid-template-columns:1fr}}@media(max-width:760px){body{padding-bottom:76px}.site-header{padding:10px 18px;min-height:82px}.brand-logo{height:58px}.nav-toggle{display:block}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px 18px 18px;background:var(--paper);border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav a{padding:12px 0}.site-nav a.nav-booking{margin:8px 0 0;padding:12px 16px}.mobile-booking-cta.is-visible{display:flex}.hero h1{font-size:38px}.hero-control{top:34%;width:44px;height:44px}.hero-control.prev{left:14px}.hero-control.next{right:14px}.hero-control:before{width:10px;height:10px}.hero-text,.intro-text p,.media-copy p:not(.eyebrow){font-size:17px}.section{padding:64px 18px}.facts,.room-guide,.stay-grid,.gallery-grid,.location-grid,.form-grid,.price-highlights,.portal-grid{grid-template-columns:1fr}.room-guide-card{min-height:0}.facts{margin-top:0;padding:0 18px}.facts div,.facts div:first-child,.facts div:last-child{border-radius:0}.room-browser{grid-template-columns:1fr;grid-template-rows:auto auto auto;min-height:0;margin-top:32px}.room-browser-media{grid-column:1;grid-row:2;aspect-ratio:4 / 3;min-height:0}.room-browser-copy{grid-column:1;grid-row:3;padding:24px}.room-option-list{grid-column:1;grid-row:1;align-self:stretch;padding:24px}.room-browser-price{left:18px;right:18px;bottom:18px;justify-content:space-between}.room-gallery-strip{top:14px;left:14px;right:14px}.room-gallery-thumb{flex-basis:56px;width:56px;height:42px}.room-browser-media-note{left:18px;right:18px;bottom:112px;max-width:none}.room-browser-price strong{font-size:34px}.room-browser-summary{grid-template-columns:1fr}.room-option{grid-template-columns:1fr;gap:8px}.room-option em{font-size:22px}.stay-card:first-child,.stay-card:last-child{grid-column:auto}.showcase-count{font-size:20px}.showcase-count [data-showcase-current]{font-size:32px}.showcase-stage{min-height:350px;aspect-ratio:4 / 3}.showcase-caption{position:static;max-width:none;padding:20px;background:var(--forest-dark)}.showcase-caption strong{font-size:30px}.showcase-control{top:220px;width:44px;height:44px}.section-copy h2,.media-copy h2,.booking-copy h2,.route-info-card h2{font-size:31px}.route-info-card,.route-card,.booking-form,.portal-card{padding:24px}.price-panel-header,.price-cta{align-items:stretch;flex-direction:column}.price-tabs{width:100%}.price-tab{flex:1}.price-footnotes span{width:100%;border-radius:8px}.inquiry-step{grid-template-columns:1fr}.price-table{min-width:0}.price-table thead{display:none}.price-table,.price-table tbody,.price-table tr,.price-table td{display:block;width:100%}.price-table td:nth-child(1),.price-table td:nth-child(2),.price-table td:nth-child(3),.price-table td:nth-child(4),.price-table td:nth-child(5){width:100%}.price-table tr{padding:18px;border-bottom:1px solid var(--line)}.price-table tr.is-highlighted{box-shadow:inset 4px 0 0 var(--clay)}.price-table tbody tr:last-child{border-bottom:0}.price-table td{display:grid;grid-template-columns:1fr;gap:4px;padding:10px 0;border-bottom:0}.price-table td:before{content:attr(data-label);color:var(--forest);font-size:12px;font-weight:800;line-height:1.3;text-transform:uppercase;white-space:normal}.price-table td:first-child{font-size:18px}.site-footer{align-items:flex-start;flex-direction:column;padding:24px 18px}}
