:root{color-scheme:light;--color-bg: #f7f4ef;--color-surface: #ffffff;--color-text: #202329;--color-muted: #626a76;--color-blue: #3a587b;--color-blue-dark: #233d5b;--color-sand: #efe0c6;--color-green: #4d7a5f;--color-border: #e3e8ef;--shadow-soft: 0 18px 46px rgba(35, 61, 91, .14);--shadow-panel: 0 22px 60px rgba(20, 39, 60, .24);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);line-height:1.6}a{color:var(--color-blue-dark);text-underline-offset:.18em}a:focus-visible,button:focus-visible{outline:3px solid rgba(11,111,145,.35);outline-offset:3px}img{display:block;max-width:100%}.site-header,.site-footer,.section{width:min(1120px,calc(100% - 32px));margin:0 auto}.site-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;margin-bottom:34px;padding:10px 18px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#edf1f7;box-shadow:0 12px 32px #233d5b1f}.brand{display:inline-flex;align-items:center;gap:12px}.brand,.main-nav a,.header-cta,.button,.footer-links a{text-decoration:none}.brand-mark{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:#f4c85f;color:#fff;font-weight:800;color:var(--color-blue-dark)}.brand small{display:block;color:var(--color-muted)}.main-nav,.footer-links,.button-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.main-nav a{color:var(--color-muted);font-weight:600;padding:8px 4px}.header-cta,.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:11px 20px;background:var(--color-blue);color:#fff;font-weight:700}.button.secondary{background:var(--color-surface);color:var(--color-blue-dark);border:1px solid var(--color-border)}.hero{width:min(1180px,calc(100% - 32px));margin:0 auto 34px;min-height:auto;display:grid;grid-template-columns:1fr;gap:28px;align-items:center;text-align:center}.hero-copy h1{margin:0 0 18px;max-width:880px;margin-inline:auto;font-size:clamp(2.15rem,4.8vw,4.25rem);line-height:1.08;letter-spacing:0}.hero-copy p,.lead{max-width:680px;color:var(--color-muted);font-size:1.12rem}.hero-copy p{margin-inline:auto;font-size:clamp(1.05rem,2vw,1.28rem)}.hero .button-row{justify-content:center;margin-top:28px}.hero-media,.photo-card{overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#d6eef4,#f1e3c8);box-shadow:var(--shadow-soft)}.hero-media{width:min(980px,100%);margin:0 auto;aspect-ratio:16 / 7}.hero-media img,.photo-card img{width:100%;height:100%;object-fit:cover}.section{padding:52px 0}.section h2{margin:0 0 12px;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.12;text-align:center}.section>h1,.section>.lead{margin-inline:auto;text-align:center}.card,.room-card{text-align:left}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface);padding:22px;box-shadow:0 10px 28px #233d5b12}.room-card{display:grid;gap:16px}.room-card .photo-card{aspect-ratio:4 / 3}.room-gallery{margin-top:-4px}.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.photo-gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:24px;box-shadow:var(--shadow-soft)}.photo-gallery.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-gallery.compact img{border-radius:16px;box-shadow:none}.pill-list{display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:14px 0;list-style:none}.pill-list li{border-radius:999px;padding:6px 10px;background:#eef7f8;color:var(--color-blue-dark);font-size:.92rem}.booking-panel{max-width:980px;margin:-18px auto 0;border-radius:34px;padding:clamp(28px,5vw,54px);background:var(--color-blue);color:#fff;box-shadow:var(--shadow-panel);text-align:center}.booking-panel h2{color:#fff;margin-bottom:14px}.booking-panel p{max-width:680px;margin-inline:auto;color:#ffffffd1}.booking-widget{min-height:108px;margin:28px auto 0;overflow:hidden;border-radius:24px;background:#fffffffa;color:var(--color-text);box-shadow:0 14px 36px #14273c29}.booking-widget .booking-widget-status{min-height:108px;display:grid;place-items:center;padding:20px;color:var(--color-muted);font-weight:700}.rooms-widget{width:min(940px,100%);min-height:220px;margin:28px auto 0;border-radius:24px;background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-soft);text-align:left}.rooms-widget .booking-widget-status{min-height:220px;display:grid;place-items:center;padding:24px;color:var(--color-muted);font-weight:700;text-align:center}.booking-widget :is(input,button,[role=textbox],[data-tid*=Date],[data-tid*=Input],[data-tid*=Select]){color:#000000e0!important;-webkit-text-fill-color:rgba(0,0,0,.88)!important;caret-color:#000000e0!important}.booking-widget :is(input,[role=textbox])::selection,.booking-widget [role=textbox] *::selection{background:#2f5f9a;color:#fff;-webkit-text-fill-color:#fff}.booking-panel .button-row{justify-content:center;margin-top:26px}.booking-panel .button{min-width:180px;background:#fff;color:var(--color-text)}.booking-panel .button.secondary{background:#ffffff24;color:#fff;border-color:#ffffff5c}.booking-panel span{color:#ffffffe6}.site-footer{padding:36px 0;border-top:1px solid var(--color-border);color:var(--color-muted)}.footer-note{max-width:720px;font-size:.92rem}@media(max-width:860px){.site-header{align-items:center;flex-direction:row;flex-wrap:wrap;border-radius:30px;padding:18px;gap:14px}.brand{flex:1 1 min(220px,100%)}.main-nav{display:none}.hero{min-height:auto;grid-template-columns:1fr;padding:8px 0 30px}.hero-media{aspect-ratio:4 / 3}.grid,.photo-gallery{grid-template-columns:1fr}.photo-gallery.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.button-row{align-items:stretch}.button-row .button{width:100%}}
