@font-face{font-family:Cormorant Garamond;src:url(cormorant-garamond-light.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant Garamond;src:url(cormorant-garamond-regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Earth Sans;src:url(earth-sans.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:Earth Sans;src:url(earth-sans-semibold.woff) format("woff");font-weight:600;font-display:swap}
:root{--paper:#faf8f3;--sand:#f0ece3;--ink:#332d25;--muted:#61564b;--wood:#655140;--dark:#352d25;--bronze:#795b40;--line:#dcd2c3;--white:#fffdf8;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Earth Sans",system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{color-scheme:light;scroll-padding-top:1.4rem}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.8 var(--sans)}
[hidden]{display:none!important}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.19em}
button{font:inherit}
a,button,summary,input{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #925e39;outline-offset:4px}
h1,h2,h3,p{margin:0}
h1,h2,h3,.footer-name{font-family:var(--serif);font-weight:400;font-synthesis:none}
h1,h2{line-height:1.05;letter-spacing:.005em;text-wrap:balance}
h1{font-size:clamp(3.3rem,5.75vw,5.8rem);font-weight:300}
h2{font-size:clamp(2.5rem,4.2vw,4.15rem);font-weight:300}
h3{font-size:clamp(1.8rem,2.65vw,2.6rem);line-height:1.08;letter-spacing:.008em}
h1 i,h2 i,.footer-name i{font-style:normal;font-weight:inherit}
p + p{margin-top:1em}
ul{margin:0;padding-left:1.35em}
.wrap{width:min(100% - clamp(2.5rem,10vw,10.5rem),1250px);margin-inline:auto}
.section-pad{padding-block:clamp(3.8rem,8vw,7.1rem)}
.eyebrow{font-size:.68rem;font-weight:600;line-height:1.55;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-bottom:.85rem}
.lead{color:var(--muted);font-size:clamp(1rem,1.45vw,1.22rem);line-height:1.75;max-width:59ch}
.reading{max-width:74ch}
.skip,.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip:focus{z-index:10;clip-path:none;width:auto;height:auto;left:.7rem;top:.7rem;background:var(--white);color:var(--dark);padding:.45rem .8rem}
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}
.brand,.site-header nav a{text-decoration:none}
.masthead{display:flex;justify-content:space-between;align-items:center;gap:clamp(.75rem,1.6vw,1.75rem);min-height:7rem;padding:.72rem clamp(1.25rem,3.2vw,4.5rem)}
.brand{display:flex;align-items:center;gap:.55rem;flex:none}
.brand img{width:clamp(9.8rem,13.3vw,12.6rem);max-width:none}
.brand-title{font-family:var(--serif);font-size:1.51rem;font-weight:400;line-height:1;letter-spacing:.005em;border-left:1px solid var(--line);padding-left:.72rem;white-space:nowrap}
.brand-title span{display:block;margin-top:.18rem;font-size:.79em;letter-spacing:.018em}
.site-header nav{display:flex;align-items:center;justify-content:center;gap:clamp(.65rem,2.05vw,2rem)}
.site-header nav a{font-size:.81rem;font-weight:400;letter-spacing:.025em;white-space:nowrap;padding:.35rem 0;position:relative}
.site-header nav a:hover,.site-header nav a[aria-current="page"]{text-decoration:underline}
.button{min-height:3rem;display:inline-flex;align-items:center;justify-content:center;gap:1.1rem;padding:.75rem 1.18rem;border:1px solid var(--wood);background:var(--wood);color:var(--white);font-size:.76rem;font-weight:600;letter-spacing:.02em;line-height:1.35;text-decoration:none;transition:background .18s,color .18s}
.button:hover{background:#4f3c2d;border-color:#4f3c2d}
.button span{font-size:1rem}
.button--outline{color:var(--ink);background:transparent;border-color:#9b8a77}
.button--outline:hover{color:var(--white);background:var(--dark)}
.nav-book{flex:none;white-space:nowrap;background:transparent;color:var(--ink);border-color:#9b8a77}.nav-book:hover{color:var(--white)}
.hero{display:grid;grid-template-columns:minmax(0,.97fr) minmax(0,1fr);background:#f5f0e7;min-height:clamp(34rem,73svh,45rem)}
.hero-media{grid-column:2;grid-row:1;align-self:stretch;min-width:0;position:relative}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:63% 53%}
.hero-content{grid-column:1;grid-row:1;align-self:center;padding:clamp(2.8rem,5vw,5.2rem) clamp(1.55rem,3vw,4rem) clamp(3.1rem,5vw,5.8rem) clamp(2.5rem,6vw,7rem)}
.hero-content .eyebrow{margin-bottom:1.45rem}
.hero h1{max-width:21ch;font-size:clamp(3.4rem,4.74vw,5.8rem);line-height:.98;letter-spacing:-.012em;text-wrap:initial}
.hero h1>span{display:block}
.hero h1 .keep-together{white-space:nowrap}
.hero h1>span+span{margin-top:.12em}
.hero-content>p:not(.eyebrow){margin-top:1.4rem;max-width:43ch;color:var(--muted);font-size:clamp(.98rem,1.22vw,1.1rem);line-height:1.72}
.hero-actions,.quick-links{display:flex;align-items:center;gap:.7rem 1.05rem;flex-wrap:wrap;margin-top:1.65rem}
.split,.prose-grid,.room-details{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.8rem,7vw,6.6rem)}
.pillars-header{max-width:58ch;margin:0 auto clamp(2.25rem,4vw,3.85rem);text-align:center}
.pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.6rem,5vw,5rem)}
.pillar-photo{display:block;overflow:hidden}
.pillar-photo img{width:100%;aspect-ratio:1.51;object-fit:cover;transition:transform .25s}
.pillar-photo:hover img{transform:scale(1.025)}
.pillar-copy{padding-block:1.4rem .4rem}
.pillar-copy p{margin:.55rem 0 .85rem;max-width:50ch;color:var(--muted)}
.pillar-links{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem}
.pillar-copy h3{font-size:clamp(2.2rem,3.4vw,3.65rem);font-weight:300}
.text-link{font-size:.82rem;font-weight:600;color:var(--wood);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32em;display:inline-flex;align-items:center;gap:.65rem}
.text-link:hover{color:var(--bronze)}
.section-sand{background:var(--sand)}
.section-limestone{background:#e7ded1;color:var(--ink)}
.safari-note{border-left:1px solid #b8a894;padding:.45rem 0 .55rem clamp(1rem,4vw,3.2rem)}
.safari-promo p:not(.eyebrow){margin-top:.9rem;max-width:44ch;color:var(--muted)}
.safari-promo .button{margin-top:1.35rem}
.section-heading{display:flex;justify-content:space-between;gap:1.1rem;align-items:end;margin-bottom:2rem}
.room-grid,.experience-grid,.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.2vw,1.75rem)}
.room-grid>*{min-width:0}
.room-card{display:flex;flex-direction:column;background:var(--paper);border-bottom:1px solid var(--line)}
.room-card:not(:has(img)){justify-content:center;background:var(--sand)}
.image-link{display:block;overflow:hidden}
.image-link img,.gallery-grid img{width:100%;aspect-ratio:1.55;object-fit:cover;transition:transform .25s}
.image-link:hover img,.gallery-image:hover img{transform:scale(1.035)}
.room-card .card-info{padding:1.2rem clamp(.7rem,1.8vw,1.45rem) 1.55rem}
.room-card .card-info .eyebrow{margin:0 0 .45rem}
.card-info h3 a{text-decoration:none}
.card-info h3 span{display:block;margin-top:.15rem;color:var(--bronze);font-size:.67em}
.card-info h3 a:hover{text-decoration:underline}
.card-info p:not(.eyebrow){font-size:.89rem;color:var(--muted);margin:.35rem 0 .7rem}
.feature-image img{width:100%;aspect-ratio:1.18;object-fit:cover}
.split p.lead,.prose-grid p{margin-top:.85rem}
.split .text-link,.prose-grid .text-link,.closing .text-link,.closing .button{margin-top:1rem}
.closing{text-align:center}
.closing p:not(.eyebrow){margin:.8rem auto 0;max-width:53ch;color:var(--muted)}
.inner-hero{background:var(--sand);padding-block:clamp(3.05rem,8vw,7.65rem)}
.inner-hero h1{max-width:25ch}
.inner-hero .lead{margin-top:1.25rem}
.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.55rem}
.filters button{min-height:2.75rem;min-width:4.2rem;padding:.45rem .8rem;background:transparent;border:1px solid var(--line);color:var(--ink);font-size:.83rem;cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--wood);color:var(--white);border-color:var(--wood)}
.room-list{padding-top:clamp(2.1rem,5vw,4.1rem)}
.table-wrap{margin-top:1.5rem;overflow:auto}
table{border-collapse:collapse;width:100%;max-width:840px;text-align:left}
th,td{border-bottom:1px solid var(--line);padding:.55rem 1rem .55rem 0;vertical-align:top}
thead th{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.breadcrumbs{font-size:.79rem;color:var(--muted);margin-bottom:1.5rem}
.room-hero{padding-top:2rem}
.room-hero-grid{display:grid;grid-template-columns:.78fr 1.22fr;align-items:stretch;gap:clamp(1.6rem,5vw,5rem)}
.room-hero-copy{align-self:center;padding:clamp(.2rem,2vw,1.75rem) 0}
.room-area{font-size:.88rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;margin-top:.55rem}
.stay-area{white-space:nowrap;font-variant-numeric:tabular-nums}
.room-tagline{font:400 clamp(1.7rem,2.65vw,2.4rem)/1.1 var(--serif);margin:.7rem 0 1rem;color:var(--bronze)}
.room-hero-copy .button{margin-top:1.4rem}
.room-hero-grid--text{grid-template-columns:minmax(0,1fr)}
.room-hero-grid--text .room-hero-copy{max-width:65ch}
.room-hero-grid--text .room-hero-copy>p:last-of-type{max-width:58ch}
.room-lead-photo{align-self:center;margin:0}
.room-lead-photo img{width:100%;height:auto}
.room-lead-photo figcaption{margin-top:.65rem;color:var(--muted);font-size:.88rem;line-height:1.55}
.room-description{margin-top:.85rem}
.room-details ul{list-style:none;padding:0}
.room-details li{border-bottom:1px solid var(--line);padding:.55rem 0}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.45rem}
.choice{background:var(--paper);border:1px solid var(--line);padding:clamp(1rem,2vw,1.85rem)}
.choice .gallery-image{margin-bottom:1rem}
.choice img{width:100%;object-fit:cover;aspect-ratio:1.575}
.choice img[data-option-image="bathtub"]{object-position:50% 57%}
.choice p{color:var(--muted);margin-top:.65rem}
.choice .button{margin-top:1rem}
.fine{font-size:.85rem;color:var(--muted);margin-top:1rem}
.gallery-grid{margin-top:1.3rem}
.gallery-image{display:block;overflow:hidden}
/* Lift the darker original photographs in the gallery while retaining their full-size files. */
img[src$="/ambar-cob-bedroom.jpg"],img[src$="/ambar-oxide-bathroom.jpg"]{filter:brightness(1.12) contrast(.98) saturate(.95) sepia(.07)}
img[src$="/ambar-miyawaki-verandah.jpg"],img[src$="/dhara-private-sit-out.jpg"]{filter:brightness(1.16) contrast(.96) saturate(.95)}
img[src$="/dhara.jpg"],img[src$="/dhara-oxide-washroom.jpg"]{filter:saturate(.92) sepia(.035)}
img[src$="/anantam-bedroom.jpg"],img[src$="/anantam-verandah-passage.jpg"]{filter:brightness(1.07) contrast(.99)}
img[src$="/neer-mini-pool.jpg"]{filter:brightness(1.07) saturate(.94)}
img[src*="/tejas-lime-"]{filter:brightness(1.035) saturate(.91)}
img[src$="/dhara-daybed-living.jpg"]{filter:saturate(.9)}
img[src*="/dhara-bathtub-suite-"]{filter:brightness(.96) contrast(.99)}
img[src*="/dhara-indoor-bathtub"]{filter:brightness(1.08) contrast(.96)}
.room-back{padding-bottom:3.2rem}
.gallery-dialog{max-width:min(92vw,1200px);max-height:91svh;border:0;padding:0;background:var(--dark);color:var(--white);margin:auto}
.gallery-dialog img{display:block;max-width:100%;max-height:78svh;width:auto;height:auto;object-fit:contain;margin:0 auto}
.gallery-dialog-controls{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;font-size:.84rem}
.gallery-dialog-controls a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 .35rem;color:var(--white);text-decoration:underline;text-underline-offset:.2em}
.gallery-dialog button{min-height:2.75rem;padding:0 .65rem;background:var(--white);border:0;color:var(--ink);cursor:pointer;font:inherit}
.gallery-dialog::backdrop{background:#261f18dc}
.experience-grid article{padding:1.2rem 0;border-top:1px solid var(--line)}
.experience-grid h2{font-size:clamp(1.85rem,2.9vw,2.75rem);font-weight:400}
.experience-grid p:not(.eyebrow){margin-top:.6rem;color:var(--muted)}
.experience-photo{margin:0}
.experience-photo figcaption{margin-top:.5rem;color:var(--muted);font-size:.78rem}
.choice .text-link,.experience-grid .text-link{margin-top:.75rem}
.closing .quick-links{justify-content:center;padding-block:0}
.closing .quick-links .button,.closing .quick-links .text-link{margin-top:0}
.prose-grid{align-items:start}
.prose-grid .quick-links{display:flex}
.steps{margin:1.45rem 0;max-width:900px;padding-left:2.2rem}
.steps li{padding:.9rem 0 .9rem .45rem;border-bottom:1px solid var(--line)}
.steps li::marker{font-family:var(--serif);color:var(--bronze);font-size:1.45rem}
.steps h3{font-size:1.85rem}
.steps p{margin-top:.35rem;color:var(--muted)}
.faq details{border-bottom:1px solid var(--line);padding:.8rem 0}
.faq summary{cursor:pointer;font-weight:600}
.faq details p{padding-left:1rem}
.normal-prose article+article{margin-top:2.4rem}
.normal-prose article p{margin-top:.7rem}
.founders-intro{margin-top:.9rem;max-width:70ch}
.founders-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.4rem,5vw,4.4rem);margin-top:2rem}
.founders-grid article{padding-top:1.3rem;border-top:1px solid var(--line)}
.founders-grid .eyebrow{margin:.45rem 0 .8rem}
.story-milestones{margin-top:clamp(2.25rem,5vw,4rem)}
.story-milestones ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1.1rem 1.8rem;list-style:none;padding:0;margin:1.25rem 0 0}
.story-milestones li{padding-top:.9rem;border-top:1px solid var(--line)}
.story-milestones time,.story-milestones span{display:block}
.story-milestones time{font-weight:600;color:var(--bronze);margin-bottom:.35rem}
.site-footer{background:var(--sand);color:var(--ink);border-top:1px solid var(--line)}
.footer-main{padding-block:3.3rem;display:grid;grid-template-columns:1.28fr .82fr 1fr 1.22fr;gap:1.65rem}
.footer-name{text-decoration:none;font-size:2.05rem;line-height:1.03;letter-spacing:.015em}
.footer-main p,.footer-main a:not(.footer-name),.footer-end{color:#61564b;font-size:.79rem}
.footer-main h2{font:600 .72rem/1.4 var(--sans);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.6rem}
.footer-main p{margin-top:.7rem}
.footer-main a:not(.footer-name){display:block;overflow-wrap:anywhere}
.footer-social{display:flex;flex-wrap:wrap;gap:.3rem .8rem;margin-top:.75rem}
.footer-end{border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1rem;padding-block:.85rem}
.footer-end div{display:flex;flex-wrap:wrap;gap:1rem}
@media(max-width:1220px){
.masthead{flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;min-height:5rem}
.brand img{width:9.8rem}
.site-header nav{order:4;width:100%;justify-content:center;flex-wrap:wrap;padding:.43rem 0;gap:.14rem 1.2rem}
}
@media(max-width:1050px){
.hero h1{font-size:clamp(3.2rem,5.7vw,5rem)}
}
@media(max-width:740px){
.masthead{justify-content:center;padding:.63rem .8rem;gap:.4rem .5rem}
.site-header nav{border-top:1px solid var(--line);gap:0 clamp(.6rem,2.8vw,1.25rem)}
.site-header nav a{padding:.6rem 0}
.brand img{width:clamp(6.85rem,33vw,8.7rem)}
.brand-title{font-size:1.19rem;padding-left:.47rem}
.brand{gap:.27rem}
.nav-book{display:none}
.hero{display:flex;flex-direction:column;min-height:0}
.hero-media{width:100%;order:0;height:clamp(13rem,47vw,23rem)}
.hero-media img{object-position:62% 55%}
.hero-content{order:1;align-self:auto;padding:2rem max(1.25rem,6.5vw) 2.6rem}
.hero-content .eyebrow{margin-bottom:.9rem}
.hero h1{font-size:clamp(2.2rem,9.75vw,4.6rem);font-weight:400;line-height:1.01;max-width:21ch}
.hero-content>p:not(.eyebrow){margin-top:1rem}
.hero-actions{margin-top:1.25rem}
.pillars-header{text-align:left;margin-left:0}
.safari-note{border-left:0;border-top:1px solid #b8a894;padding:1.05rem 0 0}
.split,.prose-grid,.room-details,.room-hero-grid{grid-template-columns:1fr;gap:1.45rem}
.room-grid,.experience-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.section-heading{align-items:flex-start;flex-direction:column}
.feature-image img{aspect-ratio:1.6}
.footer-main{grid-template-columns:1fr 1fr}
}
@media(max-width:485px){
.room-grid,.experience-grid,.gallery-grid,.choice-grid,.founders-grid{grid-template-columns:1fr}
.pillars{grid-template-columns:1fr;gap:1.6rem}
.pillar-copy{padding-top:1rem}
.hero-actions{gap:.5rem}
.hero-actions .button{padding:.67rem .73rem;font-size:.73rem;gap:.45rem}
.room-grid{row-gap:1.25rem}
.footer-main{grid-template-columns:1fr;gap:1.25rem}
.footer-main>div:first-child{padding-bottom:.55rem;border-bottom:1px solid var(--line)}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
.activity-list{padding-bottom:clamp(3.8rem,8vw,7.1rem)}
.button span,.text-link span{font-family:system-ui,sans-serif}
.button span,.text-link span{font-size:0;position:relative;display:inline-block;flex:0 0 .7rem;width:.7rem;height:.72rem}
.button span::before,.text-link span::before{content:"";position:absolute;width:.45rem;height:.45rem;top:.1rem;right:0;border-top:1px solid currentColor;border-right:1px solid currentColor}
.button span::after,.text-link span::after{content:"";position:absolute;top:.39rem;right:.01rem;width:.64rem;height:1px;background:currentColor;transform:rotate(-45deg);transform-origin:center}
.text-link span{transform:rotate(45deg)}

.material-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.45rem,2vw,1.45rem)}
.material-options button{display:flex;align-items:center;justify-content:space-between;gap:.3rem;min-height:3.1rem;padding:clamp(.55rem,1.55vw,1.25rem);border:1px solid var(--line);background:transparent;color:var(--ink);font:400 clamp(1.48rem,3.4vw,2.7rem)/1 var(--serif);text-align:left;cursor:pointer}
.material-options button::after{content:"";width:.72rem;height:.72rem;flex:none;background:linear-gradient(currentColor,currentColor) center / 100% 1px no-repeat,linear-gradient(currentColor,currentColor) center / 1px 100% no-repeat}
.material-options button:hover,.material-options button[aria-expanded="true"]{background:var(--sand);border-color:var(--bronze)}
.material-options button[aria-expanded="true"]::after{background-size:100% 1px,0 0}
.material-rooms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2.4vw,2rem);margin-top:clamp(1.25rem,3vw,2.4rem)}
#wood-stays{grid-template-columns:minmax(0,29rem)}
#stone-stays{grid-template-columns:repeat(2,minmax(0,1fr));max-width:55rem}
.material-room{display:block;min-width:0;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1rem}
.material-room img{width:100%;aspect-ratio:1.55;object-fit:cover}
.material-room:not(:has(img)){display:flex;flex-direction:column;justify-content:center;background:var(--sand);padding:clamp(.8rem,3vw,2rem)}
.material-room h3{margin-top:.85rem;font-size:clamp(1.85rem,3vw,2.7rem)}
.material-room h3 span{display:block;margin-top:.15rem;color:var(--bronze);font-size:.63em}
.material-room p{margin-top:.45rem;color:var(--muted);font-size:.85rem;line-height:1.55}
.material-room:hover h3,.material-room:focus-visible h3{text-decoration:underline;text-underline-offset:.16em}
.room-note{color:var(--muted);margin-top:.7rem;max-width:49ch}
.room-back .quick-links{margin-top:0;margin-bottom:1.3rem}
.reservation-layout{display:grid;grid-template-columns:1fr .84fr;gap:clamp(2rem,8vw,7.5rem)}
.reserve-side p{max-width:43ch;margin-top:.85rem}
.reserve-side .text-link{margin-top:1rem}
.stay-enquiry{border:1px solid var(--line);background:var(--sand);padding:clamp(1rem,3vw,2.25rem)}
.stay-enquiry h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:1.2rem}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.stay-enquiry label{display:flex;gap:.25rem;flex-direction:column;margin-bottom:.75rem;font-size:.83rem;font-weight:600}
.stay-enquiry input,.stay-enquiry select{width:100%;min-width:0;min-height:2.85rem;border:1px solid #a69886;padding:.35rem .5rem;background:var(--paper);color:var(--ink);font:400 .95rem var(--sans)}
.stay-enquiry button{cursor:pointer;margin-top:.4rem}
.mobile-reserve{display:none}
@media(max-width:740px){
  .reservation-layout{grid-template-columns:1fr}
  body:has(.mobile-reserve){padding-bottom:calc(4.2rem + env(safe-area-inset-bottom))}
  .mobile-reserve{display:flex;justify-content:center;position:fixed;inset:auto 0 0;z-index:4;border-top:1px solid var(--line);background:var(--paper);padding:.48rem 1rem max(.48rem,env(safe-area-inset-bottom))}
  .mobile-reserve .button{width:min(100%,24rem)}
}
@media(max-width:850px){.material-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Raasa and Tattva */
.raasa-intro{background:#eee7da;padding-block:clamp(2.7rem,6.4vw,6rem)}
.raasa-intro-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(1.8rem,5vw,5.5rem)}
.raasa-intro-copy .lead{margin-top:1.12rem}
.raasa-intro-copy>p:not(.eyebrow):not(.lead){margin-top:.9rem;color:var(--muted)}
.raasa-intro-copy>.button{margin-top:1.45rem}
.raasa-image{margin:0;min-width:0}
.raasa-image a{display:block}
.raasa-image img{width:100%;height:auto}
.raasa-image figcaption{color:var(--muted);font-size:.77rem;margin:.5rem 0 0}
.raasa-cover img,.tattva-photo img{aspect-ratio:1.54;object-fit:cover;object-position:45% center}
.evening-links{display:flex;align-items:center;justify-content:center;gap:.35rem clamp(1rem,3.7vw,3.3rem);flex-wrap:wrap;border-bottom:1px solid var(--line);padding-block:.7rem}
.evening-links a{color:var(--wood);font-size:.83rem;font-weight:600;padding:.36rem 0;text-decoration-thickness:1px}
.raasa-tea{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1fr);gap:clamp(1.1rem,6vw,6rem)}
.raasa-tea .lead+p{margin-top:.75rem}
.raasa-section-intro{max-width:67ch;margin-bottom:clamp(1.45rem,3vw,2.9rem)}
.raasa-section-intro .lead{margin-top:.9rem}
.raasa-market-grid,.raasa-dining-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.6rem,3.7vw,3.7rem)}
.raasa-card h3{margin:.79rem 0 .42rem}
.raasa-card p,.raasa-tea p:not(.eyebrow),.raasa-night p:not(.eyebrow){color:var(--muted);max-width:59ch}
.raasa-card-wide img{aspect-ratio:2.23;object-fit:cover}
.raasa-craft{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1fr);gap:clamp(.8rem,2.75vw,2.55rem);align-items:center}
.raasa-market-shop{grid-column:1/-1;border-top:1px solid #cbbdac;padding-top:clamp(1.4rem,3vw,2.4rem)}
.raasa-folk .raasa-section-intro{margin-inline:auto;text-align:center}
.raasa-folk .raasa-section-intro .lead{margin-inline:auto}
.raasa-folk-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.29fr);align-items:end;gap:clamp(.9rem,4vw,3.5rem);margin:clamp(1rem,4vw,3.2rem) auto 0;max-width:58rem}
.raasa-night{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.45rem,5vw,4.5rem);align-items:center}
.raasa-night h2+p{margin-top:.75rem}
.raasa-night .text-link{margin-top:1rem}
.raasa-night #stargazing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.58fr);align-items:center;gap:clamp(.85rem,2vw,1.65rem);border-left:1px solid #cbbdac;padding-left:clamp(1rem,3vw,2.6rem)}
.raasa-dining-pair{gap:clamp(.85rem,3vw,2.5rem)}
.raasa-dining-pair img{aspect-ratio:1.5;object-fit:cover}
.raasa-page .closing .button{margin-right:1rem}
.dine-intro h1{max-width:none}
.tattva-photo img{object-position:52% center}
.tattva-dishes{gap:clamp(.8rem,3.3vw,3rem)}
@media(max-width:900px){
  .raasa-intro-grid,.raasa-night{grid-template-columns:minmax(0,1fr)}
  .raasa-cover img,.tattva-photo img{aspect-ratio:2.12}
  .raasa-night #stargazing{grid-template-columns:minmax(0,1fr) minmax(0,.35fr);border-left:0;border-top:1px solid #cbbdac;padding:1.6rem 0 0}
}
@media(max-width:610px){
  .evening-links{justify-content:flex-start}
  .raasa-tea,.raasa-market-grid,.raasa-dining-pair{grid-template-columns:minmax(0,1fr)}
  .raasa-folk .raasa-section-intro{text-align:left}
  .raasa-folk-details{grid-template-columns:minmax(0,1fr) minmax(0,.53fr);align-items:start}
  .raasa-page .closing .button{margin-inline:0 .48rem}
}
@media(max-width:360px){
  .brand img{width:6.65rem}
}

/* Raasa photography and safari guide */
.raasa-cover img{aspect-ratio:auto;object-fit:initial}
.raasa-tea-pavilion{margin-top:1.35rem}
.raasa-tea-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.65rem,2.6vw,1.65rem);max-width:36rem;margin-top:1.55rem}
.raasa-tea-photos img{aspect-ratio:3/4;object-fit:cover;object-position:center 64%}
.raasa-tea-photos figure:first-child img{object-position:center 62%}
.safari-guide section h2{margin-bottom:.8rem}
.safari-guide section .quick-links{margin-top:1.15rem}
.safari-guide .table-wrap{margin-bottom:1.15rem}
.safari-guide caption{text-align:left;padding-bottom:.5rem;color:var(--muted)}
.safari-guide .packing-list{margin-top:.9rem}
.safari-guide .packing-list li+li{margin-top:.35rem}

.pool-photos{
  display:grid;
  grid-template-columns:minmax(0,1.67fr) minmax(0,1fr);
  align-items:start;
  gap:clamp(.85rem,3vw,2.5rem);
  margin-top:clamp(1.5rem,4vw,3.5rem);
}
.unwind-options{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:485px){
  .pool-photos,.unwind-options{grid-template-columns:minmax(0,1fr)}
}
