@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Kufi+Arabic:wght@400;500;600;700&display=swap');

:root { --ink:#20332f; --muted:#71807a; --sand:#f4efe5; --cream:#fbfaf6; --sun:#e7a34c; --teal:#2c6761; --line:#d9ded7; }
* { box-sizing:border-box; }
html { overflow-x:hidden; scroll-behavior:smooth; }
body { margin:0; overflow-x:hidden; color:var(--ink); background:var(--cream); font-family:'Noto Kufi Arabic', sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.site-header { height:86px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; background:var(--cream); }
.brand { display:flex; align-items:center; gap:10px; line-height:1.2; }
.brand-mark { display:grid; place-items:center; width:37px; height:37px; border-radius:50%; color:#fff; background:var(--teal); font-size:21px; font-weight:700; }
.brand strong,.brand small { display:block; }.brand strong { font-size:17px; }.brand small { color:var(--muted); font-family:'DM Sans'; font-size:10px; direction:rtl; }
.main-nav { display:flex; gap:38px; color:var(--muted); font-size:12px; }.main-nav a:hover,.text-link:hover { color:var(--sun); }
#google_translate_element { min-width:92px; margin-left:12px; }
#google_translate_element .goog-te-gadget { color:transparent; font:10px 'DM Sans'; }
#google_translate_element .goog-te-combo { width:100%; margin:0; padding:7px 8px; border:1px solid var(--line); color:var(--ink); background:var(--cream); font:10px 'DM Sans'; outline:none; }
.footer-language { order:4; margin-left:auto !important; }
.goog-te-banner-frame.skiptranslate { display:none !important; }
body { top:0 !important; }
.header-cta { font-size:12px; font-weight:600; }.header-cta span { color:var(--sun); font-size:17px; margin-right:5px; }.booking-icon { display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--teal); border-radius:50%; color:var(--teal); transition:background .2s, color .2s, transform .2s; }.booking-icon span { margin:0; font-size:18px; line-height:1; }.booking-icon:hover { color:#fff; background:var(--teal); transform:translateY(-2px); }
.hero { min-height:650px; position:relative; overflow:hidden; color:#fff; background:#dfe6e2 url('../image/WhatsApp Image 2026-09-07 at 5.43.11 PM(1).jpeg') center/cover no-repeat; }
.hero-collage { position:absolute; inset:28px 5vw; display:grid; grid-template-columns:repeat(2,1fr); grid-template-rows:repeat(2,1fr); gap:18px; }
.photo-layer { position:relative; min-height:0; overflow:hidden; border:1px solid rgba(255,255,255,.62); border-radius:20px; background-size:cover; background-position:center; filter:saturate(1.08) contrast(1.02) brightness(1); box-shadow:0 18px 40px rgba(15,31,28,.24), inset 0 0 0 1px rgba(255,255,255,.14); opacity:1; transition:transform .5s ease, filter .5s ease; }
.photo-layer::after { content:''; position:absolute; inset:0; background:linear-gradient(115deg,rgba(255,255,255,.18),transparent 28%,transparent 68%,rgba(242,194,124,.12)); opacity:.7; pointer-events:none; }
.photo-layer:hover { z-index:1; transform:translateY(-5px) scale(1.015); filter:saturate(1.16) contrast(1.05) brightness(1.04); }
.photo-layer--one {
    background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.13 PM.jpeg');
    background-position:left center;
}
.photo-layer--two {
    background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.12 PM.jpeg');
    background-position:center bottom;
    background-size:cover;
}
.photo-layer--three {
    background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.11 PM(1).jpeg');
    background-position:right bottom;
}
.photo-layer--four {
    background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.09 PM(1).jpeg');
    background-position:right top;
}
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(9,28,26,.56),rgba(9,28,26,.24) 52%,rgba(9,28,26,.12) 100%),linear-gradient(0deg,rgba(9,28,26,.24),transparent 48%); pointer-events:none; }
.hero-content { position:relative; z-index:2; max-width:1200px; padding:142px 7vw 90px; text-shadow:0 10px 28px rgba(0,0,0,.12); }.eyebrow { display:flex; align-items:center; gap:12px; color:var(--teal); font:600 10px 'DM Sans'; letter-spacing:1px; text-transform:uppercase; }.eyebrow span { display:inline-block; width:32px; height:1px; background:currentColor; }.eyebrow.light { color:#f6d293; }.hero h1 { max-width:570px; margin:24px 0 18px; font-size:clamp(43px,6vw,78px); line-height:1.2; letter-spacing:-2px; }.hero h1 em,.intro h2 em,.planner-copy h2 em,.stay h2 em { color:#f0bd70; font-style:normal; }.hero-copy { color:#e9eee9; font-size:14px; }.hero-actions { position:relative; z-index:3; display:flex; align-items:center; flex-wrap:wrap; gap:25px; width:max-content; max-width:100%; margin-top:36px; padding:8px; }.button { display:inline-flex; align-items:center; justify-content:center; gap:28px; border:0; cursor:pointer; font-family:inherit; font-weight:600; font-size:12px; padding:16px 20px; }.button-sun { color:#253d38; background:#f1bd72; }.button-sun span { font-size:19px; }.play-link { font-size:11px; color:#fff; }.play-link i { display:inline-grid; place-items:center; width:26px; height:26px; margin-left:6px; border:1px solid #fff; border-radius:50%; font-size:8px; font-style:normal; }.hero-stamp { position:absolute; z-index:2; top:42px; left:7vw; display:flex; align-items:center; gap:10px; color:#f3d091; font:11px 'DM Sans'; text-align:left; }.hero-stamp span { display:grid; place-items:center; width:42px; height:42px; border:1px solid #f3d091; border-radius:50%; font-size:12px; }.hero-stamp strong { font-family:inherit; font-weight:400; }.scroll-cue { position:absolute; z-index:2; right:5vw; bottom:30px; writing-mode:vertical-rl; font:10px 'DM Sans'; color:#d7e0da; }.scroll-cue b { margin-top:15px; font-size:17px; }
.section-wrap { max-width:1200px; margin:auto; padding-left:5vw; padding-right:5vw; }.intro { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding-top:120px; padding-bottom:115px; }.intro h2,.stay h2 { margin:20px 0 0; font-size:clamp(29px,4vw,48px); line-height:1.4; letter-spacing:-1.2px; }.intro-title h2 em,.stay h2 em { color:var(--teal); }.intro-text { align-self:end; max-width:380px; color:var(--muted); font-size:13px; line-height:2.2; }.text-link { display:inline-flex; align-items:center; gap:25px; margin-top:17px; color:var(--teal); font-size:11px; font-weight:700; }.text-link span,.text-link b { color:var(--sun); font:22px 'DM Sans'; }
.hero-actions { gap:14px; }.button-ghost { border:1px solid rgba(255,255,255,.78); color:#fff; background:rgba(9,28,26,.2); }.button-ghost span { color:#f1bd72; font-size:17px; }.button-ghost:hover { color:#253d38; background:#fff; }
.section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:35px; }.section-heading h2 { margin:12px 0 0; font-size:30px; }.counter { color:#99a6a0; font:11px 'DM Sans'; direction:ltr; }.experience-grid { display:grid; grid-template-columns:1.25fr .87fr .87fr; gap:17px; }.experience-card { min-height:390px; position:relative; overflow:hidden; background:var(--teal); }.experience-card img { width:100%; height:100%; min-height:390px; object-fit:cover; transition:transform .6s; }.experience-card:hover img { transform:scale(1.05); }.experience-card:after { content:''; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,rgba(18,39,35,.88)); }.card-caption { position:absolute; z-index:1; right:23px; left:23px; bottom:22px; display:flex; align-items:end; justify-content:space-between; color:#fff; }.card-caption > span { align-self:start; color:#f0c177; font:11px 'DM Sans'; }.card-caption h3 { margin:0 0 4px; font-size:23px; }.card-caption p { margin:0; color:#dae1dc; font-size:10px; }.card-caption b { font:22px 'DM Sans'; font-weight:400; }
.planner-section { margin-top:130px; background:var(--teal); color:#fff; }.planner-inner { min-height:360px; display:grid; grid-template-columns:1fr 1.15fr; align-items:center; gap:100px; padding-top:55px; padding-bottom:55px; }.planner-copy h2 { margin:18px 0 12px; font-size:43px; line-height:1.4; }.planner-copy p:last-child { color:#c7d8d0; font-size:12px; }.planner-form { display:grid; grid-template-columns:1fr 1fr; gap:15px; }.planner-form label { color:#b9d0c7; font-size:10px; }.planner-form input,.planner-form select { display:block; width:100%; margin-top:9px; border:1px solid #638b82; background:transparent; color:#fff; padding:16px 12px; font:12px 'DM Sans'; outline:none; }.planner-form select option { color:var(--ink); }.planner-form .button { align-self:end; margin-top:15px; }.form-note { grid-column:1/-1; min-height:16px; margin:3px 0 0; color:#f5cd8a; font-size:11px; }
.stay { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:90px; padding-top:130px; padding-bottom:130px; }.stay-photo { position:relative; }.stay-photo img { width:100%; aspect-ratio:1.05; object-fit:cover; }.stay-photo span { position:absolute; bottom:-20px; left:-20px; display:grid; place-items:center; width:105px; height:105px; color:var(--teal); background:#f2c27c; border-radius:50%; font-size:12px; text-align:center; line-height:1.8; transform:rotate(-10deg); }.stay-copy { max-width:390px; }.stay-copy > p:not(.eyebrow) { margin-top:25px; color:var(--muted); font-size:13px; line-height:2.2; }.stay-details { display:flex; justify-content:space-between; align-items:center; margin-top:34px; padding-top:21px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }.stay-details strong { display:block; color:var(--ink); font:700 18px 'DM Sans'; margin-top:5px; }.stay-details .text-link { margin:0; }
.stories { padding-bottom:120px; }.filter-bar { border:0; padding:0; display:flex; gap:8px; margin-bottom:24px; }.filter-bar legend { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }.filter { border:1px solid var(--line); padding:8px 18px; color:var(--muted); background:transparent; font:10px inherit; cursor:pointer; }.filter.active,.filter:hover { background:var(--teal); border-color:var(--teal); color:#fff; }.gallery { display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:150px; grid-auto-flow:dense; gap:12px; }.gallery-item { position:relative; overflow:hidden; cursor:zoom-in; }.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .45s; }.gallery-item:hover img { transform:scale(1.08); }.gallery-item.tall { grid-row:span 2; }.gallery-item.wide { grid-column:span 2; }.gallery-item.hide { display:none; }.gallery-item:after { content:'↗'; position:absolute; left:12px; bottom:10px; color:#fff; opacity:0; transition:opacity .2s; }.gallery-item:hover:after { opacity:1; }.site-footer { display:flex; align-items:center; justify-content:space-between; padding-top:28px; padding-bottom:35px; border-top:1px solid var(--line); }.site-footer p,.site-footer > span { color:var(--muted); font-size:10px; }.lightbox { position:fixed; z-index:10; inset:0; display:none; place-items:center; padding:5vw; background:rgba(15,31,28,.9); }.lightbox.open { display:grid; }.lightbox img { max-width:min(900px,90vw); max-height:85vh; object-fit:contain; }.close-lightbox { position:absolute; top:25px; left:30px; border:0; background:none; color:#fff; font-size:35px; cursor:pointer; }
@media (max-width:700px) { .site-header { height:auto; min-height:72px; padding:10px 6vw 0; gap:10px; flex-wrap:wrap; }.main-nav { display:flex; order:3; flex:1 0 100%; max-width:100%; gap:18px; overflow-x:auto; padding:8px 0 10px; white-space:nowrap; scrollbar-width:none; }.main-nav::-webkit-scrollbar { display:none; }.header-cta { font-size:10px; }.hero { min-height:610px; }.hero-content { padding:130px 8vw 80px; }.hero h1 { font-size:43px; letter-spacing:-1px; }.hero-stamp { left:auto; right:8vw; }.scroll-cue { right:auto; left:7vw; }.hero-actions { display:flex; width:100%; max-width:100%; padding:6px 0; gap:10px; }.hero-actions .button { flex:1 1 150px; min-width:0; }.intro,.stay,.planner-inner { grid-template-columns:1fr; gap:35px; }.intro { padding-top:80px; padding-bottom:75px; }.intro-text { max-width:none; }.experience-grid { grid-template-columns:1fr; }.experience-card,.experience-card img { min-height:340px; }.large-card { min-height:400px; }.planner-section { margin-top:80px; }.planner-inner { padding-top:65px; padding-bottom:65px; gap:25px; }.planner-copy h2 { font-size:36px; }.planner-form { grid-template-columns:1fr; }.planner-form .button { width:100%; }.stay { gap:65px; padding-top:80px; padding-bottom:95px; }.stay-photo span { left:-8px; }.gallery { grid-template-columns:repeat(2,1fr); grid-auto-rows:130px; }.gallery-item.wide { grid-column:span 2; }.section-heading h2 { font-size:25px; }.site-footer { gap:18px; flex-wrap:wrap; }.site-footer p { order:3; width:100%; margin:0; }.footer-language { order:4; margin-left:0 !important; } }

/* Shared destination pages */
.lucide { width:20px; height:20px; stroke-width:1.5; }
@keyframes rise-in { from { opacity:0; transform:translateY(22px); } to { opacity:1; transform:translateY(0); } }
.inner-page main > * { animation:rise-in .75s ease both; }
.inner-page main > *:nth-child(2) { animation-delay:.08s; }.inner-page main > *:nth-child(3) { animation-delay:.16s; }
.experience-row,.room-card,.amenity-grid > div { transition:transform .3s ease, box-shadow .3s ease; }.experience-row:hover { transform:translateY(-4px); }.room-card:hover { transform:translateY(-5px); box-shadow:0 18px 35px rgba(32,51,47,.1); }.amenity-grid > div:hover { transform:translateY(-4px); }
.main-nav a.active { color:var(--teal); font-weight:700; }
.inner-hero { min-height:500px; position:relative; overflow:hidden; display:flex; align-items:end; color:#fff; background:#234d48; }
.inner-hero:before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(17,43,40,.84),rgba(17,43,40,.1)),linear-gradient(0deg,rgba(17,43,40,.6),transparent 60%); z-index:1; }
.inner-hero:after { content:''; position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; transform:scale(1.02); }
.inner-hero-experiences:after { background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.09 PM(1).jpeg'); }.inner-hero-stay:after { background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.20 PM(2).jpeg'); }.inner-hero-stories:after { background-image:url('../image/WhatsApp Image 2026-09-07 at 5.43.23 PM.jpeg'); }
.inner-hero-content { position:relative; z-index:2; max-width:760px; padding:100px 8vw 72px; }.inner-hero h1 { margin:20px 0 15px; font-size:clamp(48px,7vw,86px); line-height:1.08; letter-spacing:-3px; }.inner-hero h1 em,.manifesto h2 em,.stay-intro h2 em,.experience-row h2 em,.room-info h2 em,.journal-cta h2 em,.booking-copy h1 em { color:#f0bd70; font-style:normal; }.inner-hero-content > p:last-child { max-width:430px; color:#e2e9e3; font-size:14px; line-height:1.9; }.page-number { position:absolute; z-index:2; left:5vw; bottom:33px; font:11px 'DM Sans'; color:#f1c581; }
.manifesto { padding-top:120px; padding-bottom:115px; display:grid; grid-template-columns:1.1fr .9fr; gap:100px; align-items:end; }.manifesto h2,.stay-intro h2 { margin:15px 0 0; font-size:clamp(34px,4.5vw,58px); line-height:1.3; }.manifesto > p:last-child,.stay-intro > p { color:var(--muted); font-size:13px; line-height:2.2; max-width:420px; }
.experience-list { padding-bottom:130px; }.experience-row { display:grid; grid-template-columns:1fr 1fr; min-height:540px; gap:9vw; align-items:center; border-top:1px solid var(--line); padding:70px 0; }.experience-row.reverse img { order:2; }.experience-row img { width:100%; height:430px; object-fit:cover; }.experience-row > div { position:relative; max-width:390px; }.experience-row .number { color:var(--sun); font:12px 'DM Sans'; }.experience-row .lucide { display:block; margin:25px 0 14px; color:var(--teal); width:26px; height:26px; }.experience-row h2 { margin:0; font-size:40px; line-height:1.25; }.experience-row p { color:var(--muted); font-size:13px; line-height:2.1; }.quote-band { padding:100px 8vw; color:#fff; background:var(--teal); text-align:center; }.quote-band p { margin:0 auto 18px; max-width:780px; font-size:clamp(25px,4vw,46px); line-height:1.45; }.quote-band span { color:#c4dbd0; font:12px 'DM Sans'; }
.stay-intro { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:end; padding-top:110px; padding-bottom:80px; }.room-grid { display:grid; grid-template-columns:1.35fr 1fr; gap:18px; padding-bottom:130px; }.room-card { background:#f2eee5; }.room-card:first-child { grid-row:span 2; }.room-card img { width:100%; height:310px; object-fit:cover; }.room-card:first-child img { height:450px; }.room-info { padding:25px 27px 30px; }.room-info > span { color:var(--teal); font:10px 'DM Sans'; text-transform:uppercase; letter-spacing:1px; }.room-info h2 { margin:13px 0 6px; font-size:27px; }.room-info p { margin:0 0 21px; color:var(--muted); font-size:11px; }.room-info strong { display:block; margin-bottom:20px; color:var(--ink); font:700 20px 'DM Sans'; }.room-info strong small { color:var(--muted); font-size:11px; font-weight:400; }.room-info .button { font-size:10px; padding:12px 15px; }.room-info .text-link { margin:0; }.amenities { padding-bottom:125px; }.amenity-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }.amenity-grid > div { padding:30px 25px 0 0; border-left:1px solid var(--line); margin-top:26px; }.amenity-grid > div:first-child { border:0; }.amenity-grid .lucide { color:var(--sun); margin-bottom:12px; }.amenity-grid h3 { margin:0 0 8px; font-size:16px; }.amenity-grid p { margin:0; color:var(--muted); font-size:11px; line-height:1.9; }
.journal { padding-top:110px; padding-bottom:125px; }.journal-cta { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; min-height:430px; color:#fff; background:var(--teal); }.journal-cta > div { padding:80px 12vw 70px 8vw; }.journal-cta h2 { margin:18px 0 28px; font-size:43px; line-height:1.35; }.journal-cta img { width:100%; height:100%; min-height:430px; object-fit:cover; }.journal-cta .button { margin-top:12px; }
.booking-layout { min-height:730px; display:grid; grid-template-columns:.85fr 1.15fr; gap:10vw; align-items:center; padding-top:80px; padding-bottom:80px; }.booking-copy h1 { margin:20px 0 20px; font-size:clamp(48px,6vw,78px); line-height:1.08; letter-spacing:-2px; }.booking-copy > p:not(.eyebrow) { max-width:380px; color:var(--muted); font-size:13px; line-height:2.1; }.booking-perks { display:grid; gap:15px; margin-top:36px; color:var(--teal); font-size:11px; }.booking-perks span { display:flex; align-items:center; gap:12px; }.booking-perks .lucide { color:var(--sun); width:18px; }.booking-form { padding:38px; background:#f2eee5; }.form-heading > span { color:var(--sun); font:11px 'DM Sans'; }.form-heading h2 { margin:15px 0 6px; font-size:26px; }.form-heading p { margin:0 0 30px; color:var(--muted); font-size:11px; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.form-grid label { color:var(--muted); font:11px 'DM Sans'; }.form-grid input,.form-grid select { display:block; width:100%; margin-top:8px; padding:14px 12px; border:1px solid #d4d8d0; background:#fbfaf6; color:var(--ink); font:12px 'DM Sans'; outline:none; }.form-grid input:focus,.form-grid select:focus { border-color:var(--teal); }.form-grid .full { grid-column:1/-1; }.price-preview { display:flex; justify-content:space-between; align-items:end; border-top:1px solid #d4d8d0; border-bottom:1px solid #d4d8d0; padding:18px 0; margin:28px 0 18px; color:var(--muted); font:11px 'DM Sans'; }.price-preview strong { display:block; color:var(--ink); font-size:18px; margin-top:5px; }.price-preview > span:last-child { display:flex; align-items:center; gap:6px; }.price-preview .lucide { width:14px; }.booking-form > .button { width:100%; }.booking-bottom { display:flex; justify-content:space-around; gap:30px; padding:35px 8vw; color:#fff; background:var(--teal); }.booking-bottom > div { display:flex; align-items:center; gap:14px; font-size:12px; }.booking-bottom .lucide { color:var(--sun); }.booking-bottom small { display:block; color:#bcd2c9; font:10px 'DM Sans'; margin-top:5px; }
.pricing-band { padding-top:105px; padding-bottom:120px; }.rate-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.rate-grid article { padding:25px 20px; border-top:3px solid var(--sun); background:#f2eee5; }.rate-grid span { color:var(--teal); font:11px 'DM Sans'; }.rate-grid strong { display:block; margin-top:22px; color:var(--ink); font:700 28px 'DM Sans'; }.rate-grid small { color:var(--muted); font-size:10px; font-weight:400; }.rate-grid p { margin:6px 0 0; color:var(--muted); font-size:10px; }.included-note { display:flex; align-items:flex-start; gap:14px; margin-top:28px; padding:20px 22px; color:#dce9e2; background:var(--teal); font-size:11px; line-height:1.9; }.included-note .lucide { flex:0 0 auto; color:var(--sun); margin-top:3px; }.included-note p { margin:0; }.included-note strong,.included-note b { color:#f3cd8b; }.entry-note { display:flex; align-items:center; gap:9px; margin:18px 0 0; color:var(--muted); font-size:11px; }.entry-note .lucide { width:16px; color:var(--sun); }.entry-note strong { color:var(--ink); }.included-panel { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding-bottom:120px; }.included-panel h2 { margin:18px 0 0; font-size:40px; line-height:1.35; }.included-panel h2 em { color:var(--teal); font-style:normal; }.included-list { border-top:1px solid var(--line); }.included-list p { display:flex; align-items:center; gap:12px; margin:0; padding:18px 0; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; }.included-list .lucide { color:var(--sun); width:19px; }.price-note { margin:0 0 14px; color:var(--muted); font-size:10px; line-height:1.7; }
@media (max-width:700px) { .inner-hero { min-height:550px; }.inner-hero-content { padding:90px 8vw 70px; }.inner-hero h1 { font-size:48px; letter-spacing:-1px; }.manifesto,.stay-intro,.booking-layout,.included-panel { grid-template-columns:1fr; gap:35px; }.manifesto { padding-top:80px; padding-bottom:75px; }.experience-row,.experience-row.reverse { grid-template-columns:1fr; gap:30px; padding:55px 0; }.experience-row.reverse img { order:0; }.experience-row img { height:310px; }.experience-row h2 { font-size:32px; }.room-grid { grid-template-columns:1fr; }.room-card:first-child { grid-row:auto; }.room-card img,.room-card:first-child img { height:300px; }.amenity-grid { grid-template-columns:1fr 1fr; }.amenity-grid > div:nth-child(3) { border-left:0; }.journal-cta { grid-template-columns:1fr; }.journal-cta img { min-height:300px; max-height:350px; }.booking-layout { padding-top:70px; padding-bottom:70px; }.booking-form { padding:25px 20px; }.booking-bottom { flex-direction:column; padding:35px 8vw; }.form-grid { grid-template-columns:1fr; }.form-grid .full { grid-column:auto; }.rate-grid { grid-template-columns:1fr 1fr; }.rate-grid strong { font-size:22px; }.included-note { padding:16px; }.included-panel h2 { font-size:32px; } }

.travel-hero { min-height:520px; position:relative; display:flex; align-items:end; overflow:hidden; color:#fff; background:linear-gradient(90deg,rgba(19,39,36,.82),rgba(19,39,36,.16)),url('../image/trap/Pasted%20image%20(13).png') center/cover; }
.travel-hero:after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(18,39,35,.72),transparent 58%),linear-gradient(105deg,rgba(242,172,82,.22),transparent 45%); pointer-events:none; }
.travel-hero-copy { position:relative; z-index:1; max-width:760px; padding:100px 8vw 72px; }.travel-hero-copy h1 { margin:20px 0 15px; font-size:clamp(48px,7vw,86px); line-height:1.08; letter-spacing:-3px; }.travel-hero-copy h1 em,.travel-intro h2 em,.travel-cta h2 em { color:#f0bd70; font-style:normal; }.travel-hero-copy > p:last-child { max-width:430px; color:#e2e9e3; font-size:14px; line-height:1.9; }.travel-hero-number { position:absolute; z-index:1; left:5vw; bottom:33px; color:#f1c581; font:11px 'DM Sans'; }
.travel-intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; align-items:end; padding-top:105px; padding-bottom:75px; }.travel-intro h2 { margin:15px 0 18px; font-size:clamp(34px,4.5vw,58px); line-height:1.3; }.travel-intro div > p { max-width:430px; margin:0; color:var(--muted); font-size:13px; line-height:2.2; }
.travel-grid { display:grid; grid-template-columns:1.1fr .9fr; grid-auto-rows:310px; gap:18px; padding-bottom:125px; }.travel-card { display:grid; grid-template-rows:1fr auto; min-width:0; overflow:hidden; background:#f2eee5; box-shadow:0 12px 28px rgba(32,51,47,.08); transition:transform .35s ease, box-shadow .35s ease; }.travel-card:hover { transform:translateY(-7px); box-shadow:0 22px 42px rgba(32,51,47,.16); }.travel-card--wide { grid-column:span 2; grid-template-columns:1.3fr .7fr; grid-template-rows:1fr; }.travel-card--tall { grid-row:span 2; }.travel-card-image { position:relative; min-height:0; overflow:hidden; }.travel-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }.travel-card:hover .travel-card-image img { transform:scale(1.06); }.travel-card-index { position:absolute; top:16px; left:18px; display:grid; place-items:center; width:35px; height:35px; border:1px solid rgba(255,255,255,.7); border-radius:50%; color:#fff; background:rgba(19,39,36,.28); font:11px 'DM Sans'; }.travel-card-footer { display:flex; justify-content:space-between; align-items:end; gap:18px; min-height:115px; padding:21px 22px 23px; }.travel-card--wide .travel-card-footer { min-height:0; }.travel-card-footer span { color:var(--teal); font:600 10px 'DM Sans'; letter-spacing:1px; text-transform:uppercase; }.travel-card-footer h2 { margin:8px 0 5px; color:var(--ink); font-size:22px; }.travel-card-footer p { margin:0; color:var(--muted); font-size:10px; line-height:1.8; }.travel-card-footer .lucide { flex:0 0 auto; color:var(--sun); width:24px; }.travel-cta { padding:95px 8vw 105px; color:#fff; background:var(--teal); text-align:center; }.travel-cta .eyebrow { justify-content:center; }.travel-cta h2 { margin:18px 0 28px; font-size:clamp(40px,5vw,66px); line-height:1.25; }.travel-cta .button { margin-top:8px; }
@media (max-width:700px) { .travel-hero { min-height:540px; }.travel-hero-copy { padding:90px 8vw 70px; }.travel-hero-copy h1 { font-size:48px; letter-spacing:-1px; }.travel-intro { grid-template-columns:1fr; gap:30px; padding-top:80px; padding-bottom:60px; }.travel-grid { grid-template-columns:1fr; grid-auto-rows:290px; gap:16px; padding-bottom:80px; }.travel-card--wide { grid-column:auto; grid-template-columns:1fr; grid-template-rows:1fr auto; }.travel-card--tall { grid-row:auto; }.travel-card-footer,.travel-card--wide .travel-card-footer { min-height:108px; }.travel-card-footer h2 { font-size:19px; }.travel-cta { padding:75px 8vw 85px; } }
.map-container {
    width: 100%;
    margin-top: 24px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--line, #e2e8f0);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.map-container iframe {
    display: block;
    width: 100%;
}