/* Patara alignment layer. Load after rainbow.css; original photos stay unchanged. */
:root {
  --rb-paper:#fff;
  --rb-cream:#f6f1f0;
  --rb-ink:#1b1b1b;
  --rb-muted:#3b3b3b;
  --rb-gold:#aa8453;
  --rb-line:#e6e0d7;
  --rb-green:#aa8453;
  --rb-serif:'Libre Caslon Display','GFS Didot',Georgia,serif;
  --rb-sans:'Outfit','Noto Sans',Arial,sans-serif;
}
body.rb-site { background:#fff; font-size:15px; font-weight:300; line-height:1.75; }
.rb-site h1,.rb-site h2,.rb-site h3,.rb-site h4 { letter-spacing:0; }
.rb-site h2 { font-size:45px; line-height:1.2; }
.rb-site p { font-size:15px; font-weight:300; line-height:1.75; }
.rb-wrap { width:min(1140px,calc(100% - 60px)); }
.rb-section { padding-block:100px; }
.rb-kicker { font-size:12px; font-weight:400; line-height:1.8; letter-spacing:3px; margin-bottom:18px; }
.rb-site ::selection { background:#aa8453; color:#fff; }
.rb-header { padding-inline:5%; background:#fff; border-color:#eee; }
.rb-header-over { background:transparent; border-color:#ffffff30; }
.rb-nav { gap:28px; }
.rb-nav>a { font-size:14px; }
.rb-nav-quote { padding:12px 18px!important; }
.rb-nav a[aria-current=page] { color:var(--rb-gold); text-decoration:none; }
.rb-header-over .rb-nav a[aria-current=page] { color:#fff; text-decoration:underline; }
.rb-nav-quote:hover { background:var(--rb-gold); color:#fff!important; }
.rb-header-over .rb-nav-quote:hover { background:var(--rb-gold); border-color:var(--rb-gold); color:#fff!important; }
.rb-site .rb-button { background:var(--rb-gold); border-color:var(--rb-gold); color:#fff!important; font-size:12px; min-height:54px; padding:16px 24px; gap:30px; letter-spacing:2px; }
.rb-site .rb-button:hover { background:#1b1b1b!important; border-color:#1b1b1b!important; color:#fff!important; }
.rb-text-link { font-size:14px; }

/* The centered, full-height opening and bottom booking bar follow Patara. */
.rb-hero { height:100svh; min-height:820px; max-height:none; background:#1b1b1b; }
.rb-hero-image { object-position:center 54%; }
.rb-hero-shade { background:linear-gradient(180deg,#0005 0%,#0005 50%,#0007 100%); }
.rb-hero-content { align-items:center; text-align:center; justify-content:center; padding-top:125px; padding-bottom:205px; }
.rb-hero-content .rb-kicker { color:#fff; font-size:12px; letter-spacing:6px; line-height:1.8; margin-bottom:22px; max-width:none; }
.rb-hero h1 { font-size:75px; line-height:1.13; max-width:1050px; margin:0 0 24px; letter-spacing:0; text-shadow:none; }
.rb-hero p { color:#fff; font-size:15px; line-height:1.8; margin-bottom:28px; max-width:720px; }
.rb-hero-actions { align-items:center; justify-content:center; gap:28px; }
.rb-hero-secondary { font-size:13px; }
.rb-hero-bottom { display:none; }
.rb-quick-quote { position:absolute; bottom:45px; left:0; right:0; z-index:2; display:grid; grid-template-columns:1.15fr 1fr .85fr 1fr; width:min(1140px,calc(100% - 60px)); margin:0 auto; padding:0; background:#fff; color:var(--rb-ink); text-align:left; }
.rb-quick-quote>div { min-width:0; padding:17px 25px; border-right:1px solid #eee; }
.rb-quick-quote label { display:block; color:#777; font-family:var(--rb-sans); font-size:11px; font-weight:400; line-height:1.5; letter-spacing:.5px; margin:0 0 6px; }
.rb-site .rb-quick-quote input:not([type=hidden]),.rb-site .rb-quick-quote select { display:block; width:100%; max-width:100%; min-width:0; height:30px; min-height:30px; border:0; border-radius:0; box-shadow:none; padding:0; margin:0; background:#fff; color:var(--rb-ink); font-size:15px; line-height:30px; font-family:var(--rb-sans); }
.rb-site .rb-quick-quote select { appearance:auto; }
.rb-quick-quote>button,.rb-quick-quote>.rb-quick-submit { display:flex; align-items:center; justify-content:center; gap:16px; padding:18px 20px; border:0; background:var(--rb-gold); color:#fff; font-size:14px; min-height:94px; width:100%; }
.rb-quick-quote>.rb-quick-submit { padding:0; }
.rb-quick-quote>.rb-quick-submit>button { width:100%; align-self:stretch; background:transparent; border:0; padding:20px; color:inherit; font-size:14px; }
.rb-quick-quote>button:hover,.rb-quick-quote>.rb-quick-submit:hover { background:#1b1b1b; }

/* Patara's three-column introduction: section label, copy, one portrait. */
.rb-patara-intro { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.2fr) minmax(0,1fr); gap:50px; align-items:start; }
.rb-patara-side-label { min-width:0; padding-top:9px; }
.rb-patara-side-label .rb-kicker,.rb-patara-side-label>.rb-kicker { position:relative; padding-left:52px; font-size:12px; letter-spacing:2px; }
.rb-patara-side-label .rb-kicker:before { content:''; position:absolute; left:0; top:11px; width:35px; height:1px; background:var(--rb-gold); }
.rb-patara-intro .rb-intro-copy { min-width:0; }
.rb-patara-intro .rb-intro-copy h2 { font-size:45px; line-height:1.17; margin:0 0 28px; }
.rb-patara-intro .rb-intro-copy p { font-size:15px; line-height:1.8; margin-bottom:22px; }
.rb-patara-intro .rb-intro-copy .rb-lead { font-family:var(--rb-sans); font-size:15px; line-height:1.8; color:var(--rb-muted); }
.rb-patara-intro .rb-intro-photos { min-width:0; padding-top:0; max-width:none; }
.rb-intro-photos>img,.rb-intro-photos>a>img { width:100%; height:auto; aspect-ratio:3/4.3; object-fit:cover; }
.rb-intro-photos figure { margin:0; }
.rb-intro-photos figure img { width:100%; height:auto; aspect-ratio:3/4.3; object-fit:cover; }
.rb-intro-photos:has(>img:nth-child(2)) { display:grid; grid-template-columns:1fr 1.3fr; align-items:start; gap:18px; }
.rb-intro-photos:has(>img:nth-child(2))>img { aspect-ratio:3/4; object-fit:cover; }
.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(1) { margin-top:35px; }
.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(3) { aspect-ratio:1.05; }
.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(4) { aspect-ratio:1.05; margin-top:-35px; }
.rb-patara-signature { display:flex; align-items:center; gap:22px; margin-top:35px; color:var(--rb-gold); }
.rb-patara-signature strong { font-family:var(--rb-serif); font-size:45px; font-weight:400; line-height:1; }
.rb-patara-signature>span { border-left:1px solid var(--rb-line); padding-left:22px; font-size:12px; line-height:1.65; color:var(--rb-muted); }

/* Only the new home room carousel receives the photographic overlay layout. */
.rb-collection { background:var(--rb-cream); }
.rb-collection .rb-section-heading { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,2.2fr); gap:50px; align-items:start; margin-bottom:50px; }
.rb-collection .rb-section-heading h2 { max-width:750px; font-size:45px; line-height:1.2; }
.rb-collection .rb-section-heading p { max-width:640px; margin-top:20px; margin-bottom:0; }
.rb-room-carousel { position:relative; width:100%; }
.rb-room-track { display:flex; gap:30px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scroll-behavior:smooth; padding:0 max(30px,calc((100vw - 720px)/2)) 8px; scrollbar-width:none; }
.rb-room-track::-webkit-scrollbar { display:none; }
.rb-room-track:focus-visible { outline-offset:-3px!important; }
.rb-room-track .rb-patara-room { flex:0 0 min(65vw,720px); min-width:0; scroll-snap-align:center; scroll-snap-stop:normal; }
.rb-patara-room .rb-card-image { position:relative; display:block; aspect-ratio:auto; overflow:hidden; background:transparent; }
.rb-patara-room .rb-card-image:after { content:none; }
.rb-patara-room .rb-card-image img { width:100%; height:auto!important; aspect-ratio:1.5; object-fit:cover; transition:opacity .3s; }
.rb-patara-room .rb-card-image:hover img { transform:none; opacity:.94; }
.rb-patara-room .rb-room-copy { position:relative; z-index:2; left:auto; right:auto; bottom:auto; margin:-60px 30px 0; padding:30px; background:#fff; color:var(--rb-ink); }
.rb-patara-room .rb-room-copy small,.rb-patara-room .rb-room-copy .rb-index,.rb-patara-room .rb-room-copy>span:first-child { display:block; color:var(--rb-gold); font-size:11px; font-weight:400; letter-spacing:2px; line-height:1.7; margin-bottom:10px; }
.rb-patara-room .rb-room-copy h3 { color:var(--rb-ink); font-size:36px; line-height:1.1; margin:0 0 20px; }
.rb-patara-room .rb-room-copy>span:last-child { display:flex; justify-content:space-between; gap:20px; color:var(--rb-ink); font-size:12px; line-height:1.5; letter-spacing:1px; border-top:1px solid var(--rb-line); padding-top:20px; min-width:115px; }
.rb-patara-room .rb-room-copy .rb-room-details i { font-style:normal; font-size:18px; color:var(--rb-gold); }
.rb-room-controls { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:26px; }
.rb-room-controls>div { display:flex; gap:12px; flex-shrink:0; }
.rb-room-controls button { display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid var(--rb-gold); border-radius:50%; background:transparent; color:var(--rb-gold); font-size:23px; line-height:1; transition:background .2s,color .2s; }
.rb-room-controls button:hover { background:var(--rb-gold); color:#fff; }
.rb-room-controls button:disabled { opacity:.4; cursor:default; }

/* A full-width photographic interlude, followed by simple line-icon amenities. */
.rb-patara-band { position:relative; isolation:isolate; display:flex; align-items:center; justify-content:center; min-height:470px; padding:95px 30px; text-align:center; background:#1b1b1b; overflow:hidden; }
.rb-patara-band>img { position:absolute; inset:0; z-index:-2; width:100%; height:100%!important; object-fit:cover; }
.rb-patara-band:after { content:''; position:absolute; inset:0; z-index:-1; background:#0007; }
.rb-patara-band>.rb-wrap { max-width:850px; width:100%; }
.rb-patara-band .rb-kicker { color:#fff; }
.rb-patara-band h2 { font-size:52px; line-height:1.17; color:#fff; margin:0 auto 30px; max-width:800px; }
.rb-patara-band p { color:#fff; }
.rb-patara-band a:not(.rb-button) { display:inline-block; color:#fff; border-bottom:1px solid #ffffff90; font-size:14px; padding-bottom:7px; }
.rb-amenities-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px 55px; }
.rb-amenities-grid>article,.rb-amenities-grid>div { min-width:0; }
.rb-amenities-grid svg,.rb-amenities-grid i,.rb-amenities-grid .rb-amenity-icon { display:block; color:var(--rb-gold); width:45px; height:45px; font-size:40px; line-height:1; margin-bottom:22px; }
.rb-amenities-grid svg { fill:none; stroke:currentColor; stroke-width:1.25; }
.rb-amenities-grid h3 { font-size:29px; margin:0 0 15px; }
.rb-amenities-grid p { font-size:15px; line-height:1.8; margin:0; }
.rb-patara-services { background:var(--rb-cream); }
.rb-patara-services-grid,.rb-patara-services .rb-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.rb-patara-services-grid>article,.rb-patara-services .rb-service-grid>article { min-width:0; }
.rb-patara-services-grid img,.rb-patara-services .rb-service-grid img { width:100%; aspect-ratio:1.25; height:auto; object-fit:cover; }
.rb-patara-services-grid h3,.rb-patara-services .rb-service-grid h3 { font-size:29px; margin:23px 0 12px; }
.rb-patara-services-grid p,.rb-patara-services .rb-service-grid p { font-size:15px; line-height:1.8; }
.rb-patara-services .rb-services-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.rb-services-grid>article { min-width:0; }
.rb-services-grid article>a { display:block; }
.rb-services-grid article img { width:100%; height:auto; aspect-ratio:1.05; object-fit:cover; }
.rb-services-grid article>a>div { padding:25px 0 0; }
.rb-services-grid h3 { font-size:30px; margin:0 0 15px; }
.rb-services-grid p { font-size:15px; line-height:1.75; margin-bottom:16px; }
.rb-services-grid article>a>div>span { font-size:12px; color:var(--rb-gold); }
.rb-patara-services .rb-archive-caption { font-size:11px; color:#777; margin:25px 0 0; }
.rb-patara-amenities>.rb-section-heading,.rb-patara-services .rb-section-heading { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,2.2fr); gap:50px; align-items:start; }
.rb-patara-amenities .rb-section-heading p,.rb-patara-services .rb-section-heading p { margin:20px 0 0; }

/* Patara Rooms 3: portrait tiles with vertical titles and accessible detail panels. */
.rb-room3-hero { position:relative; isolation:isolate; min-height:500px; height:75svh; display:flex; align-items:center; justify-content:center; padding:130px 30px 80px; background:#1b1b1b; text-align:center; }
.rb-room3-hero>img { position:absolute; inset:0; z-index:-2; width:100%; height:100%!important; object-fit:cover; }
.rb-room3-hero:after { content:''; position:absolute; inset:0; z-index:-1; background:#0006; }
.rb-room3-hero h1 { font-size:75px; line-height:1.13; color:#fff; margin:0; }
.rb-room3-hero .rb-kicker,.rb-room3-hero p { color:#fff; }
.rb-room3-hero .rb-kicker { letter-spacing:6px; }
.rb-room3-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; align-items:start; }
.rb-room3-card { position:relative; min-width:0; background:var(--rb-cream); }
.rb-room3-photo { position:relative; display:block; width:100%; aspect-ratio:1/1.32; overflow:hidden; }
.rb-room3-photo img { width:100%; height:100%!important; object-fit:cover; transition:transform .6s; }
.rb-room3-photo:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#0005,transparent 60%),linear-gradient(0deg,#0004,transparent 50%); pointer-events:none; }
.rb-room3-title { position:absolute; z-index:1; left:23px; bottom:32px; margin:0; color:#fff!important; writing-mode:vertical-rl; transform:rotate(180deg); font-family:var(--rb-serif); font-size:34px; font-weight:400; line-height:1.1; text-shadow:0 1px 10px #0003; max-height:calc(100% - 64px); }
.rb-room3-panel { position:absolute; z-index:2; left:20px; right:20px; bottom:20px; padding:28px; background:#fff; opacity:0; transform:translateY(18px); pointer-events:none; transition:opacity .25s,transform .25s; }
.rb-room3-card:hover .rb-room3-panel,.rb-room3-card:focus-within .rb-room3-panel { opacity:1; transform:none; pointer-events:auto; }
.rb-room3-card:hover .rb-room3-photo img,.rb-room3-card:focus-within .rb-room3-photo img { transform:scale(1.025); }
.rb-room3-panel h2,.rb-room3-panel h3 { font-size:31px; color:var(--rb-ink); line-height:1.15; margin:0 0 18px; }
.rb-room3-panel p { font-size:13px; line-height:1.75; margin:0 0 18px; }
.rb-room3-panel ul { padding:0; margin:0 0 20px; list-style:none; }
.rb-room3-panel li { font-size:12px; border-bottom:1px solid var(--rb-line); padding:7px 0; }
.rb-room3-panel .rb-kicker { font-size:11px; letter-spacing:2px; margin-bottom:12px; }
.rb-room3-panel a:not(.rb-button) { display:inline-block; color:var(--rb-gold); font-size:12px; line-height:1.6; padding-block:8px; }
.rb-room3-panel .rb-button { font-size:11px; letter-spacing:1px; min-height:45px; padding:12px 15px; gap:15px; width:100%; margin-top:8px; }
.rb-room3-panel .rb-room3-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; }

/* Neutral dark footer and related surfaces replace the earlier green palette. */
.rb-footer { background:#1b1b1b; color:#b7b7b7; padding-top:80px; }
.rb-footer h2 { color:var(--rb-gold); font-size:12px; font-weight:400; letter-spacing:2px; }
.rb-footer p { color:#aaa; font-size:14px; }
.rb-footer-top>div>a:not(.rb-footer-brand) { font-size:14px; }
.rb-footer-bottom { color:#999; font-size:12px; }
.rb-footer .rb-social { border-color:#777; }
.rb-cta { background:#272727; }
.rb-cta p { color:#ccc; }
.rb-cta .rb-kicker { color:var(--rb-gold); }
.rb-cta .rb-button-light:hover { color:#fff!important; background:#8a693f!important; border-color:#8a693f!important; }
.rb-faq { background:var(--rb-cream); }
.rb-lightbox { background:#111111f7; }
.rb-site .rb-form input:not([type=checkbox]):not([type=hidden]),.rb-site .rb-form select,.rb-site .rb-form textarea { background:#faf9f6; color:#1b1b1b; border-color:#e6e0d7; }
.rb-site .rb-form button[type=submit] { background:var(--rb-gold); }
.rb-site .rb-form button[type=submit]:hover { background:#1b1b1b; }
.rb-mobile-contact>a:last-child { background:var(--rb-gold); }

@media (min-width:1600px) {
  .rb-wrap { width:min(1140px,calc(100% - 100px)); }
  .rb-hero h1 { font-size:75px; }
}
@media (max-width:1150px) {
  .rb-header { padding-inline:30px; }
  .rb-nav { gap:19px; }
  .rb-nav>a { font-size:12px; }
  .rb-patara-intro { grid-template-columns:minmax(0,.58fr) minmax(0,1.25fr) minmax(0,1fr); gap:30px; }
  .rb-patara-intro .rb-intro-copy h2 { font-size:41px; }
  .rb-patara-side-label .rb-kicker { padding-left:0; padding-top:20px; }
  .rb-patara-side-label .rb-kicker:before { top:0; }
  .rb-collection .rb-section-heading { grid-template-columns:minmax(0,.58fr) minmax(0,2.25fr); gap:30px; }
  .rb-patara-amenities>.rb-section-heading,.rb-patara-services .rb-section-heading { grid-template-columns:minmax(0,.58fr) minmax(0,2.25fr); gap:30px; }
  .rb-quick-quote>div { padding-inline:18px; }
  .rb-room3-grid { gap:22px; }
  .rb-room3-panel { left:15px; right:15px; bottom:15px; padding:23px; }
}
@media (max-width:900px) {
  .rb-nav { background:#fff; }
  .rb-nav>a { font-size:15px; }
  .rb-hero { height:100svh; min-height:800px; }
  .rb-hero h1 { font-size:64px; }
  .rb-hero-shade { background:linear-gradient(180deg,#0006,#0005 50%,#0007); }
  .rb-patara-intro { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:30px; }
  .rb-patara-intro>.rb-patara-side-label { grid-column:1/-1; padding-top:0; }
  .rb-patara-side-label .rb-kicker { padding-left:50px; padding-top:0; margin-bottom:0; }
  .rb-patara-side-label .rb-kicker:before { top:11px; }
  .rb-patara-intro .rb-intro-copy h2 { font-size:40px; }
  .rb-collection .rb-section-heading { display:block; }
  .rb-collection .rb-section-heading>.rb-patara-side-label { margin-bottom:25px; }
  .rb-room-track { padding-inline:17.5vw; gap:22px; }
  .rb-room-track .rb-patara-room { flex-basis:65vw; }
  .rb-patara-room .rb-card-image img { aspect-ratio:1.4; }
  .rb-amenities-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; }
  .rb-patara-services-grid,.rb-patara-services .rb-service-grid { gap:20px; }
  .rb-patara-services-grid h3,.rb-patara-services .rb-service-grid h3 { font-size:25px; }
  .rb-patara-services-grid p,.rb-patara-services .rb-service-grid p { font-size:14px; }
  .rb-patara-services .rb-services-grid { gap:20px; }
  .rb-patara-amenities>.rb-section-heading,.rb-patara-services .rb-section-heading { display:block; }
  .rb-patara-amenities .rb-section-heading .rb-patara-side-label,.rb-patara-services .rb-section-heading .rb-patara-side-label { margin-bottom:25px; }
  .rb-room3-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
  .rb-room3-hero h1 { font-size:64px; }
}
@media (max-width:640px) {
  .rb-wrap { width:calc(100% - 40px); }
  .rb-section { padding-block:65px; }
  .rb-site h2 { font-size:37px; }
  .rb-site p { font-size:15px; }
  .rb-kicker { font-size:11px; line-height:1.8; }
  .rb-header { padding-inline:20px; }
  .rb-hero { height:100svh; min-height:820px; max-height:none; }
  .rb-hero-content { padding-top:115px; padding-bottom:245px; align-items:center; text-align:center; }
  .rb-hero-content .rb-kicker { font-size:11px; max-width:310px; letter-spacing:1.8px; margin-bottom:20px; }
  .rb-hero h1 { font-size:47px; line-height:1.12; margin-bottom:23px; }
  .rb-hero h1 br { display:none; }
  .rb-hero p { font-size:14px; line-height:1.85; margin-bottom:24px; }
  .rb-hero-image { object-position:57% center; }
  .rb-hero-actions { flex-direction:column; align-items:center; gap:12px; }
  .rb-hero .rb-button { font-size:12px; min-height:50px; letter-spacing:1px; }
  .rb-hero-secondary { font-size:12px; }
  .rb-quick-quote { bottom:28px; width:calc(100% - 40px); grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rb-quick-quote>div { padding:13px 14px; border-bottom:1px solid #eee; }
  .rb-quick-quote label { font-size:11px; letter-spacing:0; margin-bottom:5px; }
  .rb-site .rb-quick-quote input:not([type=hidden]),.rb-site .rb-quick-quote select { font-size:16px; height:32px; min-height:32px; line-height:32px; }
  .rb-quick-quote>button,.rb-quick-quote>.rb-quick-submit { min-height:82px; font-size:13px; padding:15px 12px; }
  .rb-quick-quote>.rb-quick-submit { padding:0; }
  .rb-quick-quote>.rb-quick-submit>button { font-size:13px; padding:15px 12px; }
  .rb-patara-intro { grid-template-columns:1fr; gap:27px; }
  .rb-patara-intro .rb-intro-copy h2 { font-size:37px; margin-bottom:25px; }
  .rb-patara-intro .rb-intro-copy h2 br { display:none; }
  .rb-patara-intro .rb-intro-photos { width:100%; max-width:none; padding-top:3px; }
  .rb-intro-photos>img,.rb-intro-photos>a>img,.rb-intro-photos figure img { aspect-ratio:4/4.7; }
  .rb-intro-photos:has(>img:nth-child(2)) { gap:15px; }
  .rb-collection .rb-section-heading { margin-bottom:32px; }
  .rb-collection .rb-section-heading h2 { font-size:37px; }
  .rb-room-track { padding-inline:7.5vw; gap:18px; }
  .rb-room-track .rb-patara-room { flex-basis:85vw; }
  .rb-patara-room .rb-card-image img { aspect-ratio:1.2; }
  .rb-patara-room .rb-room-copy { left:auto; right:auto; bottom:auto; margin:-45px 18px 0; padding:25px; }
  .rb-patara-room .rb-room-copy h3 { font-size:33px; margin-bottom:18px; }
  .rb-patara-room .rb-room-copy small,.rb-patara-room .rb-room-copy .rb-index { font-size:11px; }
  .rb-patara-room .rb-room-copy>span:last-child { font-size:11px; }
  .rb-room-controls { margin-top:20px; }
  .rb-room-controls>.rb-text-link { font-size:12px; max-width:190px; }
  .rb-room-controls>div { gap:8px; }
  .rb-room-controls button { width:40px; height:40px; }
  .rb-patara-band { min-height:400px; padding:70px 25px; }
  .rb-patara-band h2 { font-size:39px; }
  .rb-patara-band .rb-kicker { letter-spacing:1.5px; }
  .rb-amenities-grid { grid-template-columns:1fr; gap:35px; }
  .rb-amenities-grid svg,.rb-amenities-grid i,.rb-amenities-grid .rb-amenity-icon { margin-bottom:17px; }
  .rb-amenities-grid h3 { font-size:29px; margin-bottom:12px; }
  .rb-patara-services-grid,.rb-patara-services .rb-service-grid { grid-template-columns:1fr; gap:35px; }
  .rb-patara-services-grid h3,.rb-patara-services .rb-service-grid h3 { font-size:30px; margin-top:22px; }
  .rb-patara-services-grid p,.rb-patara-services .rb-service-grid p { font-size:15px; }
  .rb-patara-services .rb-services-grid { grid-template-columns:1fr; gap:35px; }
  .rb-services-grid article img { aspect-ratio:1.2; }
  .rb-room3-hero { height:65svh; min-height:470px; padding-inline:20px; }
  .rb-room3-hero h1 { font-size:49px; }
  .rb-room3-hero .rb-kicker { letter-spacing:3px; font-size:11px; }
  .rb-room3-grid { grid-template-columns:1fr; gap:35px; }
  .rb-room3-panel { position:relative; left:auto; right:auto; bottom:auto; margin:-55px 20px 0; padding:27px; opacity:1; transform:none; pointer-events:auto; }
  .rb-room3-title { display:none; }
  .rb-footer { padding-top:60px; }
  .rb-footer h2 { font-size:11px; }
  .rb-footer-top>div>a:not(.rb-footer-brand) { font-size:13px; }
  .rb-footer-bottom { font-size:11px; }
  .rb-mobile-contact>a { font-size:12px; }
}
@media (hover:none),(pointer:coarse) {
  .rb-room3-panel { position:relative; left:auto; right:auto; bottom:auto; margin:-55px 20px 0; padding:27px; opacity:1; transform:none; pointer-events:auto; }
  .rb-room3-title { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .rb-room-track { scroll-behavior:auto; }
  .rb-patara-room .rb-card-image:hover img { transform:none; }
  .rb-room3-card:hover .rb-room3-photo img,.rb-room3-card:focus-within .rb-room3-photo img { transform:none; }
}
.rb-hero-slide[hidden]{display:none!important}.rb-hero-prev,.rb-hero-next{position:absolute;top:48%;z-index:3;width:50px;height:50px;display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;background:transparent;color:white;font-size:30px;font-family:Georgia,serif!important;line-height:1;padding:0}.rb-hero-prev{left:4%}.rb-hero-next{right:4%}.rb-hero-prev:hover,.rb-hero-next:hover{background:#aa8453;border-color:#aa8453}.rb-room3-reveal{position:absolute;z-index:2;bottom:28px;right:24px;background:#aa8453;color:#fff!important;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;font-size:25px}.rb-room3-card:has(img[src*="saronis"]) .rb-room3-photo img{object-fit:contain}.rb-concept-section figure{margin:0}.rb-concept-section figure img{width:100%;height:auto}.rb-concept-section figcaption,.rb-archive-caption{font-size:12px!important;color:#666;margin-top:15px;line-height:1.7}.rb-patara-signature{display:flex;gap:20px;align-items:center;margin-top:36px;background:#fff;box-shadow:0 15px 40px #0001;padding:20px}.rb-patara-signature strong{font-family:var(--rb-serif);font-size:38px;font-weight:400;border-right:1px solid #ddc7a9;padding-right:20px}.rb-patara-signature span{font-size:12px;line-height:1.7}@media(max-width:640px){.rb-hero-prev,.rb-hero-next{width:32px;height:32px;font-size:23px;top:52%}.rb-hero-prev{left:12px}.rb-hero-next{right:12px}}
/* Keep the purchased Light Classic proportions and controls. */
.rb-header{height:88px;padding-inline:max(30px,calc((100% - 1140px)/2));border-bottom:0}.rb-logo{width:180px}.rb-header-over .rb-nav-quote{border-color:#fff7}.rb-hero-shade{background:#0006}.rb-patara-hero .rb-button-light{background:transparent!important;border-color:#ffffff70;color:#fff!important}.rb-patara-hero .rb-button-light:hover{background:#aa8453!important;border-color:#aa8453}.rb-site .rb-hero-prev,.rb-site .rb-hero-next{border-radius:50%}.rb-quick-quote{background:#ffffff24;backdrop-filter:blur(10px);padding:15px;gap:0;bottom:6%}.rb-quick-quote>div{background:transparent;border:1px solid #ffffff20}.rb-quick-quote label{color:#fff}.rb-quick-quote input,.rb-quick-quote select{background:transparent!important;color:#fff!important;border:0!important;color-scheme:dark}.rb-quick-quote input::placeholder{color:#e9e7e2}.rb-quick-quote select option{color:#1b1b1b;background:#fff}.rb-quick-quote button{background:#fff!important;color:#1b1b1b!important;letter-spacing:1px;font-size:12px}.rb-quick-quote button:hover{background:#aa8453!important;color:#fff!important}.rb-patara-side-label .rb-kicker{padding:0 0 15px 14px;border-bottom:1px solid #aa8453;position:relative}.rb-patara-side-label .rb-kicker:before{content:'•';width:auto;height:auto;background:none;position:absolute;left:0;top:0;color:#aa8453}.rb-patara-room .rb-room-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;align-items:center}.rb-patara-room .rb-room-copy h3{grid-area:1/1;margin:0;font-size:30px}.rb-patara-room .rb-room-copy>span:first-child{grid-area:2/1;font-size:11px;letter-spacing:.5px;margin:0;text-transform:none}.rb-patara-room .rb-room-copy>span:last-child{grid-area:1/2/3/3;border:0;background:#aa8453;color:#fff;padding:14px 20px;font-size:11px;letter-spacing:.3px;gap:10px;min-width:0}.rb-patara-room .rb-room-copy .rb-room-details i{color:#fff}.rb-patara-room:has(img[src*="saronis"]) .rb-card-image img{object-fit:contain;background:#eee}.rb-patara-intro .rb-intro-photos{padding-top:60px}.rb-intro-photos>img{border-radius:5px}.rb-intro-photos:has(>img:nth-child(2)){grid-template-columns:1fr 1fr;gap:16px}.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(1){width:75%;justify-self:end;margin-top:25%;aspect-ratio:1}.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(2){aspect-ratio:1}.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(3){width:50%;justify-self:end;aspect-ratio:1}.rb-intro-photos:has(>img:nth-child(2))>img:nth-child(4){width:75%;margin-top:0;aspect-ratio:1}.rb-room3-panel{transform:translateX(20px)}
@media(max-width:900px){.rb-header{padding-inline:30px;height:86px}.rb-logo{width:185px}.rb-nav{top:86px}.rb-quick-quote{bottom:30px}.rb-room-copy{gap:10px}.rb-patara-room .rb-room-copy>span:last-child{padding:12px}.rb-patara-room .rb-room-copy h3{font-size:27px}}
@media(max-width:640px){.rb-header{height:78px;padding-inline:20px}.rb-nav{top:78px}.rb-hero{min-height:830px}.rb-quick-quote{bottom:35px;padding:10px;backdrop-filter:blur(10px)}.rb-patara-room .rb-room-copy{display:block;margin:-35px 18px 0}.rb-patara-room .rb-room-copy h3{font-size:30px;margin:0 0 12px}.rb-patara-room .rb-room-copy>span:first-child{margin:0 0 10px}.rb-patara-room .rb-room-copy>span:last-child{display:inline-flex;margin-top:15px}.rb-patara-intro .rb-intro-photos{padding-top:15px}}
/* Match Patara's Welcome 25/75 split and Services 2 photo overlays. */
.rb-patara-intro { grid-template-columns:minmax(0,1fr) minmax(0,3fr); gap:30px; padding-block:110px; }
.rb-patara-intro-main { min-width:0; }
.rb-patara-intro-main>h2 { font-size:45px; margin:0 0 25px; line-height:1.2; }
.rb-intro-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; }
.rb-patara-intro .rb-intro-photos { padding-top:0; }
.rb-patara-side-label .rb-kicker { display:block; }
.rb-patara-services .rb-services-grid article>a { position:relative; overflow:hidden; }
.rb-patara-services .rb-services-grid article img { aspect-ratio:1/1.3; transition:transform .7s; }
.rb-patara-services .rb-services-grid article>a:after { content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#000a);pointer-events:none; }
.rb-patara-services .rb-services-grid article>a>div { position:absolute;z-index:1;left:20px;right:20px;bottom:40px;padding:0;display:flex;align-items:center;justify-content:space-between;gap:20px; }
.rb-patara-services .rb-services-grid h3 { color:#fff;font-size:30px;line-height:1.2;margin:0; }
.rb-patara-services .rb-services-grid p { display:none; }
.rb-patara-services .rb-services-grid article>a>div>span { font-size:0;color:white;width:44px;height:44px;min-width:44px;border:1px solid #ffffff90;border-radius:50%;display:grid;place-items:center; }
.rb-patara-services .rb-services-grid article>a>div>span:after { content:'↗';font-size:22px; }
.rb-patara-services .rb-services-grid article>a:hover img { transform:scale(1.05); }
@media(max-width:900px){.rb-patara-intro{grid-template-columns:1fr;gap:25px}.rb-patara-side-label{max-width:340px}.rb-services-grid h3{font-size:27px}}
@media(max-width:640px){.rb-patara-intro{padding-block:65px}.rb-patara-intro-main>h2{font-size:37px}.rb-intro-columns{grid-template-columns:1fr;gap:40px}.rb-patara-intro .rb-intro-photos{max-width:380px}.rb-patara-services .rb-services-grid article img{aspect-ratio:1/1.2}}
@media(prefers-reduced-motion:reduce){.rb-patara-services .rb-services-grid article img{transition:none}}
.rb-logo{width:240px}.rb-cta>.rb-wrap>div{min-width:0;overflow-wrap:break-word}
@media(max-width:900px){.rb-logo{width:220px}}
@media(max-width:640px){.rb-logo{width:190px}.rb-cta>.rb-wrap{grid-template-columns:minmax(0,1fr)}.rb-cta h2{font-size:35px}}
.rb-patara-enquiry-band{position:relative;isolation:isolate;overflow:hidden;padding-block:110px}.rb-patara-enquiry-band>.rb-enquiry-image{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;z-index:-2}.rb-patara-enquiry-band:after{content:'';position:absolute;inset:0;background:#0009;z-index:-1}.rb-patara-enquiry-band p,.rb-patara-enquiry-band .rb-kicker{color:#fff}
@media(max-width:640px){.rb-patara-enquiry-band{padding-block:65px}}
