/* VIP-2 / VIP-3: content-rich editorial styling. Kept separate from the original theme. */
.vip-revised .room-hero h1{font-size:clamp(62px,8.8vw,138px);line-height:.94;letter-spacing:-.065em;max-width:1000px;text-wrap:balance}
.vip-revised .room-hero h1 em{display:block;font-weight:400;white-space:normal}
.vip-revised .room-intro h2{font-size:clamp(46px,5.4vw,78px);line-height:1.04;text-wrap:balance}
.vip-revised .room-intro-grid{grid-template-columns:.93fr 1.07fr;gap:clamp(40px,6vw,110px)}
.vip-revised .room-copy{max-width:750px}
.vip-revised .room-copy .lead{font-size:clamp(19px,2vw,25px);line-height:1.42;color:#292722}
.vip-revised .room-copy p{font-size:clamp(13px,1.05vw,15px);line-height:1.7}
.vip-formats{margin-top:27px;padding:25px 0 0;border-top:1px solid #d2cdc3}
.vip-formats h3{font-family:"Playfair Display",serif;font-size:clamp(26px,2.6vw,35px);font-weight:400;letter-spacing:-.02em;margin:0 0 6px}
.vip-formats p.vip-formats-intro{font-size:13px;margin:0 0 12px;color:#746f67}
.vip-formats-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}
.vip-formats-list li{border-top:1px solid #ded9d0;padding:11px 0 9px;min-width:0}
.vip-formats-list strong{font-size:10px;text-transform:uppercase;letter-spacing:.06em;display:block;font-weight:600;color:#22201e;margin-bottom:5px;line-height:1.45}
.vip-formats-list span{font-size:12px;line-height:1.5;display:block;color:#756f66}
.vip-revised .room-benefits{gap:0;margin-top:67px}
.vip-revised .room-benefit{padding:23px 20px 22px 0}
.vip-revised .room-benefit:nth-child(n){padding-left:0;border-left:0}
.vip-revised .room-benefit span{text-transform:none;letter-spacing:normal;line-height:1.55}
.vip-revised .room-benefit span strong{display:block;color:#1d1b17;font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-weight:650}
.vip-revised .room-benefit span small{display:block;color:#736f68;font-size:12px;line-height:1.5;letter-spacing:normal;text-transform:none}
.vip-revised .room-gallery-head h2{font-size:clamp(64px,7vw,104px);line-height:1}
.vip-revised .room-experience-inner{grid-template-columns:.84fr 1.16fr;gap:clamp(35px,6vw,100px);align-items:start}
.vip-revised .room-experience h2{font-size:clamp(48px,5.5vw,77px);line-height:1.03;text-wrap:balance}
.vip-revised .room-experience-copy{max-width:465px;font-size:14px;line-height:1.65}
.vip-revised .ritual-row{grid-template-columns:42px minmax(0,1fr);gap:18px;align-items:start;padding:19px 0}
.vip-revised .ritual-row b{padding-top:1px}
.vip-revised .ritual-text strong{display:block;font-size:11px;letter-spacing:.09em;margin-bottom:9px}
.vip-revised .ritual-text span{display:block;font-size:12px;text-transform:none;letter-spacing:normal;line-height:1.55;color:#7b746b}
.vip-revised .room-price h2{font-size:clamp(62px,6.4vw,90px);line-height:1}
.vip-revised .price-intro{font-size:14px;line-height:1.7;max-width:430px}
.vip-revised .room-price-inner{grid-template-columns:.85fr 1.15fr;gap:clamp(32px,5vw,90px)}
.vip-revised .price-line{gap:15px;padding:23px 0}
.vip-revised .price-line-info{min-width:0}
.vip-revised .price-line-info span{display:block;font-weight:600;color:#282622}
.vip-revised .price-line-info small{display:block;margin-top:7px;font-size:11px;line-height:1.5;color:#777168}
.vip-revised .price-line strong{font-size:clamp(13px,1.25vw,17px);white-space:nowrap}
.vip-revised .price-promo{background:rgba(158,128,93,.11);padding-inline:16px;margin-inline:-16px;border-bottom-color:#c4af94}
.vip-revised .price-promo strong{color:#735536}
.vip-revised .price-note{font-size:11px;line-height:1.65;margin-top:24px}
.vip-revised .price-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
.vip-revised .price-actions a{display:flex;justify-content:center;text-align:center;min-width:0;min-height:48px;height:auto;padding:12px 15px;font-size:10px;line-height:1.35}
.vip-revised .price-actions .dark{grid-column:1 / -1;font-weight:600}
.vip-revised .price-actions a:last-child{grid-column:1 / -1}
@media(max-width:900px){
 .vip-revised .room-hero h1{font-size:clamp(56px,12.2vw,104px);line-height:1.02;max-width:100%}
 .vip-revised .room-intro h2{font-size:clamp(40px,9vw,66px)}
 .vip-revised .room-intro-grid{grid-template-columns:1fr;gap:35px}
 .vip-formats-list{grid-template-columns:1fr 1fr}
 .vip-revised .room-benefits{grid-template-columns:1fr 1fr;gap:0}
 .vip-revised .room-benefit{padding-right:14px}
 .vip-revised .room-experience-inner,.vip-revised .room-price-inner{grid-template-columns:1fr;gap:38px}
 .vip-revised .room-experience h2{font-size:clamp(44px,8.3vw,66px)}
 .vip-revised .room-price h2{font-size:clamp(55px,10vw,78px)}
 .vip-revised .room-mobile-bar{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:540px){
 .vip-revised .room-hero h1{font-size:clamp(53px,12vw,72px)}
 .vip-revised .room-hero-content{padding-bottom:94px}
 .vip-formats-list{grid-template-columns:1fr}
 .vip-revised .room-benefits{grid-template-columns:1fr}
 .vip-revised .room-benefit:nth-child(n){padding-left:0;border-left:0}
 .vip-revised .room-benefit span small{font-size:12px}
 .vip-revised .price-line{gap:14px}
 .vip-revised .price-line strong{font-size:13px}
 .vip-revised .price-promo{margin-inline:-9px;padding-inline:9px}
 .vip-revised .price-actions a{font-size:9px}
 .vip-revised .room-mobile-bar a{font-size:7px;letter-spacing:.02em}
}
