/* Shared art direction from hotel-vendome-test, adapted to the existing pages. */
body::before{background:#f4e8d6 url("img/bg1.jpg") center top/1240px auto repeat}
.heritage-strip{background:var(--terracotta);color:var(--white);font-weight:400;font-size:14px;padding:10px 20px}
.site-header{background:#f6eee8f5;border-bottom:1px solid var(--sand);box-shadow:none}
.bar{min-height:96px}
.brand{color:var(--terracotta);font-size:21px;font-weight:400}
.brand small{color:var(--muted);font-size:12px}
.main-nav a{color:var(--ink);font-size:14px;font-weight:400}
.main-nav a:hover,.main-nav a:focus-visible{color:var(--terracotta)}
.languages{border-color:var(--sand);border-radius:3px}
.languages a{color:var(--terracotta);font-size:12px}
.languages a[aria-current="true"]{background:var(--terracotta);color:var(--white)}
.button{border-radius:3px;font-size:14px;transition:background .2s,transform .2s}
.button:hover{transform:translateY(-2px)}
.header-book{background:var(--terracotta);color:var(--white)}
.header-book:hover{background:var(--terracotta-dark);color:var(--white)}
h1,h2,h3{font-weight:400}
.hero,.page-hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;min-height:0;margin-top:48px;overflow:visible;border-radius:0;box-shadow:none;background:none}
.hero::after,.page-hero::after{display:none}
.hero-panel,.page-hero>.page-panel{grid-column:1;grid-row:1;position:static;width:auto;margin:0;padding:0;background:none;box-shadow:none;border-radius:0}
.hero-panel h1{font-size:clamp(40px,4.2vw,62px);line-height:1.12}
.page-hero h1{font-size:clamp(36px,3.8vw,54px)}
.hero-text{font-size:17px}
.hero>.image-carousel,.page-hero>.image-carousel{grid-column:2;grid-row:1;position:relative;inset:auto;height:530px;border-radius:180px 180px 5px 5px;overflow:hidden;box-shadow:0 16px 38px #313a4520}
.image-carousel .carousel-slide{inset:0 auto auto 50%;width:auto;max-width:none;height:calc(100% - 60px);transform:translateX(-50%);object-fit:initial}
.carousel-controls{inset:auto 0 0;padding:8px 16px;height:60px;background:var(--cream);justify-content:flex-end}
.carousel-controls button{background:transparent;color:var(--ink);border:1px solid var(--sand);border-radius:3px}
.carousel-controls button:hover{background:var(--terracotta);color:var(--white)}
.eyebrow{font-size:12px}
.highlights{margin:48px 0 0;width:100%;border:1px solid var(--sand);border-radius:0;background:#fffdfb66;box-shadow:none}
.highlights strong{color:var(--ink);font-family:Arial,sans-serif;font-size:14px}
.highlights span{font-size:14px}
.section{padding-top:90px;scroll-margin-top:115px}
.about{align-items:center;gap:55px}
.about .lead{font-size:17px}
.room{background:#fffdfba6;border-radius:5px;transition:transform .25s,box-shadow .25s}
.room:hover{transform:translateY(-5px);box-shadow:0 16px 28px #313a451a}
.room img{height:260px;aspect-ratio:auto;object-fit:cover}
.room h3{font-size:32px}
.room div{padding:22px}
.room p{font-size:16px}
.room a:not(.button),.text-link,.legal a,.company-disclosure a{color:var(--terracotta);font-size:14px;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.room a:not(.button):hover,.text-link:hover,.legal a:hover{color:var(--terracotta-dark)}
.room .button{color:var(--white)}
.info-grid article,.amenities-grid article,.logo-grid a,.terms-grid article,.location-copy{background:#fffdfb88;border-radius:5px;box-shadow:none}
.services{border-radius:5px}
.services article{border-radius:4px}
.contact{border-radius:5px}
.site-footer{background:none;color:var(--muted);border-top:1px solid var(--sand);margin-top:30px}
.site-footer a{color:var(--terracotta);text-underline-offset:5px}
.copyright{color:var(--muted)}
/* Soft light follows the mouse, using the existing warm palette. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .pointer-surface{position:relative;isolation:isolate}
  .pointer-surface::before{content:"";position:absolute;inset:0;z-index:3;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle 180px at var(--pointer-x,50%) var(--pointer-y,50%),rgba(255,253,251,.23),transparent 75%);transition:opacity .25s ease}
  .pointer-surface.pointer-active::before{opacity:1}
  .room,.amenities-grid article,.logo-grid a{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
  .room.pointer-active,.amenities-grid article.pointer-active,.logo-grid a.pointer-active{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-4px);box-shadow:0 18px 36px rgba(49,58,69,.14);border-color:var(--terracotta)}
  .image-carousel .carousel-slide{transition:transform .65s ease}
  .image-carousel.pointer-active .carousel-slide{transform:translateX(-50%) scale(1.025)}
  .button{overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
  .button.pointer-active{transform:translateY(-3px);box-shadow:0 8px 20px rgba(178,89,71,.24)}
  .button:active{transform:translateY(0) scale(.98);box-shadow:none}
  .main-nav a{position:relative;padding-block:8px}
  .main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
  .main-nav a:hover::after,.main-nav a:focus-visible::after{transform:scaleX(1)}
  .carousel-controls button{transition:transform .2s ease,background .2s ease}
  .carousel-controls button:hover{transform:scale(1.08)}
}
:focus-visible{outline:3px solid var(--terracotta);outline-offset:4px}
@media(max-width:1020px){.bar{gap:14px}.brand{font-size:18px}.main-nav{border-color:var(--sand)}.hero,.page-hero{gap:30px}.hero>.image-carousel,.page-hero>.image-carousel{height:490px}}
@media(max-width:760px){.bar{min-height:80px}.brand{font-size:17px}.brand small{font-size:10px}.heritage-strip{font-size:12px}.hero,.page-hero{display:grid;grid-template-columns:1fr;gap:28px;margin-top:30px}.hero-panel,.page-hero>.page-panel{grid-column:1;grid-row:1;width:100%;margin:0;padding:0;background:none}.hero>.image-carousel,.page-hero>.image-carousel{grid-column:1;grid-row:2;width:100%;height:410px;border-radius:120px 120px 4px 4px}.hero-panel h1{font-size:43px}.page-hero h1{font-size:38px}.highlights{margin-top:28px;grid-template-columns:1fr 1fr}.highlights article{padding:16px 12px}.highlights span{font-size:13px}.section{padding-top:65px}.about{gap:24px}.room img{height:280px}.header-book{display:inline-flex;min-height:44px}.main-nav{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
