/* ComparaTasación / Spatial architecture direction.
   Native CSS and original canvas geometry. Controls 3px, panels 4px;
   circular buttons are reserved for scene navigation. Layers: scene 0,
   content 1, navigation 10. Theme is selected at document level. */
:root,:root:not([data-theme=light]),:root[data-theme=dark]{
  color-scheme:dark;--bg:#080c10;--surface:#10161b;--ink:#f1f4f3;
  --text:#c8d0d3;--muted:#9ba8ae;--line:#2c373e;--green:#e0f259;
  --button-text:#10150a;--soft:#151d23;--warm:#151d23;--error:#ffb0a2;
  --accent:#e0f259;--accent-ink:#10150a;--shadow:none;--radius:4px;
  --ease-out:cubic-bezier(.23,1,.32,1);--scene-grid:rgba(175,197,204,.065);
  --scene-glow:rgba(145,173,174,.055);--display-weight:420;
}
:root[data-theme=light]{
  color-scheme:light;--bg:#eef1ef;--surface:#f9fbf9;--ink:#142025;
  --text:#34474f;--muted:#52656b;--line:#b5c2c3;--green:#526000;
  --button-text:#f8fbf0;--soft:#e0e7e4;--warm:#e0e7e4;--error:#a12f26;
  --accent:#e0f259;--accent-ink:#172000;--scene-grid:rgba(39,63,70,.08);
  --scene-glow:rgba(106,139,140,.09);
}
html{scroll-padding-top:32px}body{background:var(--bg);color:var(--text);font-size:15px;line-height:1.75;letter-spacing:-.012em}
::selection{background:var(--accent);color:var(--accent-ink)}
main{min-width:0}h1,h2,h3{color:var(--ink);font-weight:var(--display-weight);letter-spacing:-.055em}
.wrap{width:min(1440px,calc(100% - 112px))}
.eyebrow{color:var(--muted);font-size:10px;letter-spacing:.17em;font-weight:600}
.button,.head-actions .button.small,input:not([type=checkbox]),select,.menu-button{border-radius:3px}
.button{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);font-size:12px;min-height:51px;letter-spacing:.01em;font-weight:650;transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease,transform 150ms var(--ease-out)}
.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}
.button.light{background:var(--accent);color:var(--accent-ink)}
.button:active{transform:scale(.98)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:6px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--green);outline-offset:3px;border-color:var(--green)}
input:not([type=checkbox]),select,textarea{background:var(--surface);color:var(--ink);border-color:var(--line);font-size:15px;min-height:52px}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
input[type=checkbox]{accent-color:var(--green)}
.preview{background:var(--bg);padding:6px 0;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.025em;color:var(--muted)}
.preview .wrap{display:flex;justify-content:space-between;align-items:center}.preview span{font-size:9px;color:var(--muted)}
.header{background:var(--bg);border-bottom:1px solid var(--line);position:relative;z-index:10}
.head-inner{min-height:83px;gap:32px}.brand{font-size:20px;letter-spacing:-.9px;color:var(--ink);white-space:nowrap}
.brand-sign{background:var(--accent);color:var(--accent-ink);height:28px;width:28px;font-size:25px;margin-right:9px}
.head-inner nav{margin-left:auto;gap:28px;font-size:11px;font-weight:500;letter-spacing:.01em}.head-inner nav a{color:var(--muted)}
.head-inner nav a.active{color:var(--ink);text-decoration-color:var(--green);text-underline-offset:9px}
.head-actions{gap:14px}.head-actions .button.small{background:transparent;border:1px solid var(--line);color:var(--ink);font-size:10px;letter-spacing:.025em;padding:11px 16px;min-height:42px}
.theme{color:var(--muted);font-size:19px;min-width:40px;height:44px}

/* The first screen is a usable selector, set inside an architectural scene. */
.spatial-hero{position:relative;isolation:isolate;min-height:calc(100dvh - 111px);display:flex;flex-direction:column;justify-content:center;padding-block:25px 24px;overflow:hidden}
.spatial-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--scene-grid) 1px,transparent 1px) 0 0/25% 100%,linear-gradient(0deg,var(--scene-grid) 1px,transparent 1px) 0 0/100% 33.333%;pointer-events:none}
.spatial-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;min-height:390px;position:relative}
.spatial-copy{position:relative;z-index:1;padding-block:22px 30px}
.spatial-copy .eyebrow{font-size:10px;color:var(--muted);margin:0 0 29px;display:flex;align-items:center;gap:13px}
.spatial-copy .eyebrow:before{content:'';width:25px;height:2px;background:var(--green);flex-shrink:0}
.spatial-copy h1{font-size:clamp(58px,6.3vw,104px);font-weight:420;line-height:1.02;letter-spacing:-.065em;max-width:790px;margin:0}
.spatial-copy h1 span{display:block;color:var(--green)}
.spatial-copy .hero-description{font-size:14px;line-height:1.9;color:var(--muted);max-width:340px;margin:28px 0 0}
.architectural-scene{position:relative;min-width:0;height:430px;align-self:center;margin:0}
.architectural-scene:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 53% 53%,var(--scene-glow),transparent 65%);pointer-events:none}
.architecture-canvas{width:100%;height:100%;display:block;touch-action:pan-y}
.scene-caption{position:absolute;top:18px;left:24px;right:0;display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}
.scene-caption>span:first-child{display:flex;gap:13px;align-items:center}.scene-caption b{color:var(--green);font-size:11px;font-weight:500;min-width:21px}
.scene-navigation{display:flex;gap:22px;align-items:center;position:absolute;bottom:0;left:24px;right:0}
.scene-choices{display:flex;gap:20px;flex:1;align-items:center}
.scene-choices button{padding:10px 0;background:none;border:0;border-bottom:1px solid transparent;font-size:10px;letter-spacing:.02em;color:var(--muted);min-height:44px;cursor:pointer;white-space:nowrap}
.scene-choices button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--green)}
.scene-arrows{display:flex;gap:9px}.scene-arrows button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:19px;cursor:pointer;display:grid;place-items:center;transition:border-color 180ms ease,background-color 180ms ease}
.spatial-search-wrap{margin-top:27px;position:relative;z-index:1}
.hotel-search.immersive-search{border:1px solid var(--line);border-radius:4px;background:var(--surface);padding:22px 24px 14px;display:grid;grid-template-columns:minmax(150px,1.15fr) minmax(130px,.8fr) minmax(180px,1fr) minmax(220px,1.05fr);gap:5px 25px;max-width:none}
.immersive-search .hotel-search-fields{display:contents}.immersive-search .hotel-search-fields>div{min-width:0;grid-row:1}
.immersive-search label{color:var(--muted);font-size:10px;line-height:1.6;font-weight:500;letter-spacing:.025em;display:block;margin-bottom:8px}
.immersive-search :is(input,select){background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;font-size:15px;min-height:43px;padding:4px 25px 7px 0}
.immersive-search select option{background:var(--surface);color:var(--ink)}
.immersive-search .hotel-search-button{grid-column:4;grid-row:1;align-self:end;width:100%;font-size:11px;letter-spacing:0;min-height:52px;margin:0;gap:12px;padding-inline:18px;white-space:nowrap}
.immersive-search .hotel-search-button>span:last-child{font-size:24px;font-weight:400}
.immersive-search .field-note{grid-column:1/4;grid-row:2;font-size:10px;line-height:1.7;color:var(--muted);margin:8px 0 0;max-width:100%}
.immersive-search .form-disclosure{grid-column:1/4;grid-row:4;margin:0!important;font-size:9px;line-height:1.8;color:var(--muted)}
.immersive-search>.error{grid-column:1/-1;grid-row:auto;padding:10px 0;color:var(--error);margin:0}
.scene-extra-fields{grid-column:1/-1;grid-row:3;border:0;margin-top:2px;padding:0}
.scene-extra-fields summary{list-style:revert;font-size:10px;line-height:1.8;color:var(--muted);cursor:pointer;display:list-item;width:max-content;max-width:100%;padding:7px 0;margin-left:12px}
.scene-extra-fields .hotel-profile-fields{max-width:650px;margin:12px 0 20px;gap:30px}
.scene-extra-fields .hotel-profile-fields select{font-size:14px}
.immersive-search .hotel-profile-fields:not(.scene-extra-fields .hotel-profile-fields){grid-column:1/-1}
.spatial-bridge{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:21px;color:var(--muted);font-size:10px;letter-spacing:.02em}
.spatial-bridge a{color:var(--text);text-decoration:none;display:flex;align-items:center;gap:22px;min-height:35px}
.spatial-bridge a span{color:var(--green);font-size:18px}

/* Interior pages share the same space, grid and accent. */
.content-crumb{color:var(--muted);font-size:10px;padding-top:25px;letter-spacing:.02em}
.content-hero,.page-intro{position:relative;padding-block:58px 55px;border-bottom:1px solid var(--line);overflow:hidden}
.content-hero:after,.page-intro:after{content:'';position:absolute;inset:0 0 0 38%;z-index:-1;background:repeating-linear-gradient(90deg,var(--scene-grid),var(--scene-grid) 1px,transparent 1px,transparent 33.33%);pointer-events:none}
.content-hero h1,.page-intro h1{font-size:clamp(46px,5.4vw,84px);font-weight:420;line-height:1.06;letter-spacing:-.06em;margin-block:18px 25px;max-width:1040px}
.content-hero .lead,.page-intro .lead{font-size:16px;line-height:1.85;color:var(--muted);max-width:700px}
.content-hero.has-aside{grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:75px;align-items:center}
.content-hero.has-aside h1{font-size:clamp(44px,4.8vw,76px)}
.interior-model{height:175px;max-width:460px;margin:9px 0 -5px;opacity:.88}.interior-model canvas{height:100%;width:100%;display:block}
.hero-rate-summary{background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--green);border-radius:4px;padding:30px;color:var(--ink)}
.hero-rate-summary .eyebrow,.hero-rate-summary p:not(.eyebrow),.hero-rate-summary small{color:var(--muted)}
.hero-rate-summary h2{font-size:29px;font-weight:450;color:var(--ink)}
.hero-rate-summary dl>div{border-color:var(--line);padding-block:11px;font-size:12px}.hero-rate-summary dd{color:var(--green);font-size:15px;font-weight:500}
.hero-rate-summary .button{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);border-radius:3px}
.content-section,.editorial-types,.editorial-faq,.editorial-how{padding-block:78px}
.content-row{border-color:var(--line);padding-block:27px}.content-row h2{font-size:clamp(26px,2.7vw,40px);font-weight:450}
.content-row .row-number{color:var(--muted);font-size:11px}.content-row .row-arrow{color:var(--green);font-size:30px}
.content-row p{color:var(--muted)}
.content-table,.calculator-panel,.content-estimator,.content-aside,.aside-box,.content-note,.info-box,.contact-panel,.request-note{background:var(--surface);border-color:var(--line);border-radius:4px;color:var(--text)}
.content-estimator{border-top:2px solid var(--green)}.content-estimator h2{font-weight:450}
.content-table th,.tariff-table th{background:var(--soft);color:var(--text)}
.content-table td,.content-table th,.tariff-table td{border-color:var(--line)}
.content-links a,.purpose-links a,.clean-list li,.content-steps li{border-color:var(--line)}
.content-callout,.content-cta,.bottom-cta{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:4px;padding:45px}
.content-callout h2,.content-cta h2,.bottom-cta h2{color:var(--ink);font-weight:420;font-size:clamp(30px,3.6vw,50px)}
.content-callout p,.content-cta p,.bottom-cta p{color:var(--muted);opacity:1}
.reading p,.content-two p,.article-grid article p{color:var(--text)}
.reading h2,.content-two h2,.article-grid article h2{font-weight:450;font-size:30px}
.info-box{border-left:2px solid var(--green)}
.text-link,.inline-links a{color:var(--green)}
.faqs details,.content-faq details{border-color:var(--line);border-radius:0;background:transparent}
.faqs summary{font-weight:450;font-size:18px}.faqs p{color:var(--muted)}

/* Pricing is still a comparison, with calmer panels and a clear total. */
.booking-section{background:var(--bg);border-block:1px solid var(--line);padding-block:62px}
.booking-search-wrap{padding-block:30px}.booking-page .hotel-search{background:var(--surface);border-color:var(--line);border-radius:4px}
.flow-progress{border-color:var(--line)}.flow-progress li{color:var(--muted)}
.flow-progress .is-current,.flow-progress [aria-current=step]{color:var(--green)}
.flow-stage-heading h2{font-weight:420;font-size:clamp(34px,3.8vw,55px)}
.flow-stage-heading p,.booking-search-summary,.flow-search-summary{color:var(--muted)}
.flow-stage-heading .eyebrow{color:var(--muted)}
.flow-progress button{border-radius:0}
.booking-empty,.booking-form,.booking-summary,.booking-selected,.booking-confirmation,.booking-aside,.booking-selection,.flow-success{background:var(--surface);border-color:var(--line);border-radius:4px;color:var(--text)}
.booking-selected strong,.booking-selected h3,.booking-confirmation h2{color:var(--ink)}
.booking-selected .eyebrow,.booking-selected>p,.booking-selected>small{color:var(--muted)}
.booking-selected>p:last-child{border-color:var(--line)}
.booking-summary :is(p,small),.booking-summary dt{color:var(--muted)}
.landing-rates{padding-block:62px 72px}.landing-rate-heading{align-items:flex-end;gap:35px}
.landing-rate-heading h2{font-weight:420;font-size:clamp(34px,3.8vw,55px)}
.rate-config{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:27px;margin-bottom:30px}
.rate-config-fields label{font-size:11px;font-weight:500;color:var(--muted)}
.rate-config-actions{border-color:var(--line)}
.rate-card{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:28px;box-shadow:none}
.rate-card[data-provider=b]{border-top:2px solid var(--green);padding-top:27px}
.rate-provider{border-color:var(--line);gap:13px}.rate-provider-name{font-size:13px;line-height:1.55;font-weight:600}
.rate-provider small{font-size:10px;line-height:1.7}.rate-mode{font-size:10px;letter-spacing:.025em}
.rate-letter,.rate-card[data-provider=b] .rate-letter,.rate-card[data-provider=c] .rate-letter{background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:2px;font-size:17px;font-weight:450;height:35px;width:35px}
.rate-card[data-provider=b] .rate-letter{border-color:var(--green);color:var(--green)}
.rate-heading h3{font-size:29px;font-weight:450;line-height:1.13;letter-spacing:-.045em;margin-block:13px 19px}
.rate-heading>p:not(.eyebrow){font-size:12px;color:var(--muted)}
.rate-total{border-color:var(--line);padding-block:17px 24px}
.rate-total>strong{font-size:clamp(40px,3.7vw,56px);font-weight:420;letter-spacing:-.07em;color:var(--ink)}
.rate-card[data-provider=a] .rate-total>strong{color:var(--green)}
.rate-inclusions{font-size:12px;line-height:1.9;color:var(--text)}.rate-inclusions li:before{font-weight:400;color:var(--green)}
.rate-inclusions li.rate-limitation{font-weight:500}.rate-inclusions li.rate-limitation:before{color:var(--error)}
.rate-conditions summary{font-size:11px;font-weight:500;color:var(--green)}.rate-conditions p{color:var(--muted)}
.rate-choose,.rate-card[data-provider=b] .rate-choose{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:3px;min-height:51px;font-size:12px}
.rate-card[data-provider=a] .rate-choose{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.rate-card.is-selected{outline:1px solid var(--green);border-color:var(--green)}
.hotel-offers .rate-card{padding:28px;column-gap:35px;grid-template-columns:minmax(180px,.9fr) minmax(0,1.6fr) 245px}
.hotel-offers .rate-total{border-color:var(--line)}.hotel-offers .rate-total>strong{font-size:44px}
.landing-request{background:var(--surface);border-color:var(--line);border-radius:4px;padding:32px}
.landing-request .booking-form{background:var(--bg)}
.rate-footnote{font-size:11px;color:var(--muted)}
.hotel-search:not(.immersive-search) input,.hotel-search:not(.immersive-search) select{background:var(--bg);color:var(--ink);border-color:var(--line)}

/* Continue the visual rhythm beyond the first screen. */
.editorial-section-head h2{font-size:clamp(36px,4.2vw,65px);font-weight:420;letter-spacing:-.055em}
.editorial-section-head p:not(.eyebrow){color:var(--muted)}
.property-feature{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:35px}
.property-feature h3{font-weight:420;color:var(--ink)}.property-feature p{color:var(--muted)}.property-feature .text-link{color:var(--green)}
.property-category{color:var(--muted);font-size:10px;letter-spacing:.1em}
.property-feature svg{color:var(--green)}
.property-links a{border-color:var(--line)}.property-links a span,.property-links a p{color:var(--muted)}.property-links a strong{font-weight:450;font-size:24px;color:var(--ink)}
.editorial-purpose{border-color:var(--line);padding-block:75px}.purpose-statement h2{font-weight:420}.purpose-statement h2 span{color:var(--green)}
.purpose-panel{background:var(--surface);border:1px solid var(--line);border-radius:4px;color:var(--text);padding:35px}
.purpose-panel p{color:var(--muted)}.purpose-panel a{color:var(--ink);border-color:var(--line)}
.process-grid{gap:35px}.process-grid>div{border-color:var(--line)}.process-grid h3{font-weight:450;font-size:25px}.process-grid p{color:var(--muted)}
.process-grid>div>span{background:transparent;border-radius:0;color:var(--green)}
.editorial-cta{background:var(--surface);border:1px solid var(--line);border-radius:4px;color:var(--ink)}
.editorial-cta h2{color:var(--ink);font-weight:420}.editorial-cta p{color:var(--muted)}.editorial-cta .button{background:var(--accent);color:var(--accent-ink)}
.guide-list a{border-color:var(--line)}.guide-list h2{font-weight:450}.guide-list a>span,.guide-list p{color:var(--muted)}
.guide-feature,.guide-secondary{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:4px}
.guide-feature h3,.guide-secondary h3{color:var(--ink);font-weight:450}
.guide-feature p,.guide-secondary p,.guide-feature .guide-type,.guide-secondary .guide-type{color:var(--muted)}
.guide-feature .guide-cta,.guide-secondary .guide-cta{color:var(--green)}
.editorial-final{background:var(--surface);color:var(--text);border-block:1px solid var(--line)}
.editorial-final .eyebrow,.final-content p,.final-content>div>p,.final-content small{color:var(--muted)}
.final-content h2{color:var(--ink);font-weight:420}
.final-content .button{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.portal-panel,.portal-aside,.portal-card,.portal-actions,.portal-message,.portal-context{background:var(--surface);border-color:var(--line);border-radius:4px;color:var(--text)}
.portal-heading h1{font-weight:420}.portal-selected{background:var(--soft);border-color:var(--line)}
dialog{background:var(--surface);border:1px solid var(--line);border-radius:4px;color:var(--text)}dialog::backdrop{background:rgba(1,5,8,.8);backdrop-filter:blur(8px)}
footer{background:var(--bg);border-top:1px solid var(--line);padding-top:65px}.footer-top{padding-bottom:50px}
.footer-top .footer-brand{color:var(--ink);font-weight:550;font-size:25px;letter-spacing:-1.2px}
.footer-top strong{font-weight:500;font-size:11px;color:var(--ink)}.footer-top>div>a{font-size:11px;color:var(--muted)}
.footer-top p{color:var(--muted);font-size:12px}.footer-top p.tiny{font-size:10px}.footer-bottom{color:var(--muted);border-color:var(--line);font-size:10px;letter-spacing:.02em}

@media(hover:hover) and (pointer:fine){
  .head-inner nav a:hover{color:var(--ink)}.button:hover{filter:none;background:var(--ink);border-color:var(--ink);color:var(--bg)}
  .button.secondary:hover,.rate-choose:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
  .scene-arrows button:hover{border-color:var(--green);background:var(--soft)}
  .kinetic-link h2,.kinetic-link strong,.kinetic-link .row-arrow{transition:transform 220ms var(--ease-out),color 180ms ease}
  .kinetic-link:hover h2,.kinetic-link:hover strong{transform:translateX(6px);color:var(--green)}.kinetic-link:hover .row-arrow{transform:translate(3px,-3px)}
}
@media(prefers-reduced-motion:no-preference){
  .spatial-copy .eyebrow{animation:scene-enter 550ms var(--ease-out) both}
  .spatial-copy h1{animation:scene-enter 700ms 65ms var(--ease-out) both}
  .spatial-copy .hero-description{animation:scene-enter 700ms 130ms var(--ease-out) both}
  .spatial-search-wrap{animation:scene-enter 650ms 190ms var(--ease-out) both}
  @keyframes scene-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
}
@media(min-width:1600px){.spatial-hero{padding-block:45px 35px}.spatial-layout{min-height:480px}.architectural-scene{height:495px}.spatial-search-wrap{margin-top:35px}}
@media(max-width:1200px){
  .wrap{width:calc(100% - 72px)}.head-inner{gap:20px}.head-inner nav{gap:19px}.head-actions .button.small{padding-inline:12px}.brand{font-size:18px}
  .spatial-copy h1{font-size:clamp(56px,6.7vw,80px)}.architectural-scene{height:395px}.scene-caption{left:10px}.scene-navigation{left:10px;gap:15px}.scene-choices{gap:14px}
  .hotel-search.immersive-search{grid-template-columns:1.05fr .7fr .95fr 1.2fr;column-gap:20px;padding-inline:20px}.immersive-search .hotel-search-button{font-size:10px;padding-inline:12px;gap:7px}
  .content-hero.has-aside{gap:45px}.hotel-offers .rate-card{grid-template-columns:minmax(155px,.9fr) minmax(0,1.4fr) 205px;gap:23px}.hotel-offers .rate-total>strong{font-size:37px}
}
@media(max-width:1000px){
  .head-inner nav{gap:16px}.head-actions .button.small{display:none}.spatial-copy h1{font-size:clamp(50px,6.6vw,68px)}
  .hotel-search.immersive-search{grid-template-columns:1fr 1fr 1fr;gap:8px 22px}.immersive-search .hotel-search-button{grid-row:2;grid-column:3;font-size:10px;margin-top:13px}.immersive-search .field-note{grid-row:2;grid-column:1/3;align-self:center;max-width:420px;margin:12px 0}.immersive-search .form-disclosure{grid-column:1/-1}
  .spatial-bridge{font-size:10px}.scene-choices{gap:12px}.scene-choices button{font-size:9px}.scene-arrows button{width:37px;height:37px}
}
@media(max-width:850px){
  .wrap{width:calc(100% - 48px)}.head-inner{min-height:75px;padding-block:12px;gap:15px}.head-inner nav{margin:0;font-size:14px}.head-inner nav.open{padding-block:15px}.head-inner nav a{padding:13px 0;border-top:1px solid var(--line)}
  .head-actions{margin-left:auto}.menu-button{font-size:11px;min-height:42px;border:1px solid var(--line);background:transparent;letter-spacing:.03em}
  .preview .wrap{display:flex;gap:10px}.preview span{font-size:9px}.spatial-hero{min-height:0;padding-block:30px 25px}
  .spatial-layout{grid-template-columns:1fr 1fr;min-height:330px}.spatial-copy h1{font-size:clamp(43px,6.6vw,62px)}.spatial-copy .eyebrow{font-size:9px;letter-spacing:.1em;gap:10px;margin-bottom:23px}.spatial-copy .hero-description{font-size:13px;margin-top:22px;max-width:290px}
  .architectural-scene{height:345px}.scene-caption{top:0;font-size:8px;letter-spacing:.06em}.scene-caption>span:last-child{display:none}.scene-navigation{bottom:-1px;gap:10px}.scene-choices{gap:10px}.scene-choices button{font-size:9px}.scene-arrows{gap:5px}.scene-arrows button{width:34px;height:34px;font-size:17px}.scene-arrows button:first-child{display:none}
  .content-hero.has-aside{grid-template-columns:1fr;gap:30px}.content-hero h1,.page-intro h1,.content-hero.has-aside h1{font-size:clamp(42px,6.5vw,62px)}
  .hero-rate-summary{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.hero-rate-summary .eyebrow{grid-column:1/-1}.hero-rate-summary h2{grid-column:1;grid-row:2}.hero-rate-summary dl{grid-column:2;grid-row:2/5;margin:0}.hero-rate-summary .button{grid-column:1/-1}.hero-rate-summary small{grid-column:1/-1}
  .interior-model{max-width:420px;height:160px}.hotel-offers .rate-card{grid-template-columns:1fr 1fr;gap:0 25px}.hotel-offers .rate-total>strong{font-size:43px}
  .rate-card{padding:27px}.rate-card[data-provider=b]{padding-top:26px}.rate-mode{margin-left:auto}.rate-total>strong{font-size:43px}
  .landing-rate-heading{align-items:flex-start}.landing-rates,.content-section,.editorial-types,.editorial-faq,.editorial-how{padding-block:48px}.editorial-purpose{padding-block:50px}
  .booking-section{padding-block:42px}.spatial-search-wrap{margin-top:20px}.property-layout{gap:30px}.purpose-panel{padding:28px}
}
@media(max-width:600px){
  .wrap{width:calc(100% - 36px)}.head-inner{min-height:70px;gap:10px}.brand{font-size:18px}.brand-sign{width:25px;height:25px;margin-right:7px;font-size:23px}.theme{font-size:18px;min-width:35px;width:35px}.head-actions{gap:0}.menu-button{font-size:10px;padding:8px 11px}
  .preview{padding:5px 0}.preview .wrap{font-size:8px;display:flex;gap:12px}.preview span{display:inline;font-size:8px;margin:0;line-height:1.4;text-align:right;max-width:150px}
  .spatial-hero{padding-top:29px;overflow:hidden}.spatial-hero:before{background-size:50% 100%,100% 25%}
  .spatial-layout{display:flex;flex-direction:column;min-height:0;gap:0;align-items:stretch}.spatial-copy{padding-block:0;z-index:1}.spatial-copy .eyebrow{font-size:8px;margin-bottom:20px;letter-spacing:.09em}
  .spatial-copy h1{font-size:clamp(45px,9.8vw,63px);line-height:1.04;letter-spacing:-.065em;max-width:100%}.spatial-copy .hero-description{font-size:12px;line-height:1.85;margin-top:20px;max-width:290px}
  .architectural-scene{height:250px;margin-top:8px;align-self:stretch}.scene-caption{top:6px;left:0;right:0;font-size:8px}.scene-caption b{font-size:10px}.scene-caption>span:last-child{display:inline}.scene-caption>span:first-child{gap:8px}.scene-navigation{left:0;right:0;bottom:0}.scene-choices{gap:21px}.scene-choices button{font-size:10px}.scene-arrows button{width:38px;height:38px}.scene-arrows button:first-child{display:grid}
  .spatial-search-wrap{margin-top:22px}.hotel-search.immersive-search{display:flex;flex-direction:column;padding:22px 20px 15px;gap:0;max-width:100%}.immersive-search .hotel-search-fields{display:grid;grid-template-columns:1fr;gap:20px}.immersive-search .hotel-search-fields>div{grid-row:auto}.immersive-search label{font-size:11px;margin-bottom:6px}.immersive-search input,.immersive-search select{font-size:16px;min-height:45px;padding-bottom:9px}.immersive-search .hotel-search-button{order:1;font-size:12px;min-height:53px;margin-top:20px}.immersive-search .field-note{font-size:10px;margin-top:11px;max-width:none;align-self:stretch}.scene-extra-fields{order:2;margin:8px 0 4px}.scene-extra-fields summary{font-size:10px;min-height:32px}.scene-extra-fields .hotel-profile-fields{grid-template-columns:1fr;margin-top:16px;gap:20px}.immersive-search .form-disclosure{order:3;font-size:9px}.immersive-search>.error{order:0;font-size:12px}.spatial-bridge{margin-top:13px;display:block;font-size:9px}.spatial-bridge>a{margin-top:6px;justify-content:space-between;font-size:10px}
  .content-hero,.page-intro{padding-block:35px}.content-hero h1,.page-intro h1,.content-hero.has-aside h1{font-size:clamp(39px,9vw,54px);line-height:1.08;margin-block:17px 22px}.content-hero .lead,.page-intro .lead{font-size:15px;line-height:1.85}.content-crumb{font-size:10px;gap:8px}.content-hero.has-aside{gap:25px}.hero-rate-summary{display:block;padding:25px}.hero-rate-summary h2{font-size:28px}.hero-rate-summary dl{margin-top:22px}.hero-rate-summary p:not(.eyebrow){font-size:14px}.hero-rate-summary small{font-size:11px}.interior-model{height:155px;margin-top:5px}
  .landing-rate-heading h2,.flow-stage-heading h2{font-size:35px}.rate-config{padding:21px}.rate-config-fields label{font-size:12px}.rate-config input,.rate-config select{font-size:16px}.rate-config-actions>p{font-size:12px}.rate-config-actions .button{font-size:12px;min-height:51px}
  .rate-card,.hotel-offers .rate-card{display:flex;padding:25px;gap:0}.rate-card[data-provider=b]{padding-top:24px}.rate-provider-name{font-size:14px}.rate-provider small{font-size:10px}.rate-mode{font-size:10px}.rate-heading h3,.hotel-offers .rate-heading h3{font-size:32px}.rate-heading>p:not(.eyebrow){font-size:14px;line-height:1.8}.rate-total>strong,.hotel-offers .rate-total>strong{font-size:49px}.rate-total>span,.rate-total>small{font-size:11px}.rate-inclusions{font-size:13px;line-height:1.9}.rate-inclusions li{padding-block:7px}.rate-conditions summary{font-size:12px;min-height:30px}.rate-conditions p{font-size:13px}.rate-choose{font-size:13px;min-height:53px}.rate-footnote{font-size:12px}.landing-request{padding:20px}.landing-request .booking-form{padding:20px}
  .content-row{padding-block:25px}.content-row h2{font-size:27px}.content-row p{font-size:13px}.content-callout,.content-cta,.bottom-cta{padding:27px}.content-callout h2,.content-cta h2,.bottom-cta h2{font-size:32px}.reading h2,.content-two h2,.article-grid article h2{font-size:27px}
  .editorial-section-head h2{font-size:38px}.property-feature{min-height:350px;padding:28px}.property-feature h3{font-size:46px}.property-links a strong{font-size:23px}.purpose-panel{padding:27px}.purpose-statement h2{font-size:43px}.editorial-cta{padding:28px}.editorial-cta h2{font-size:38px}.faqs summary{font-size:17px;line-height:1.6}
  footer{padding-top:43px}.footer-top{padding-bottom:35px;gap:30px 18px}.footer-top>div>a{font-size:12px}.footer-bottom{font-size:10px}.booking-page .hotel-search{padding:23px}.booking-page .hotel-search input,.booking-page .hotel-search select{font-size:16px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.kinetic-link:hover :is(h2,strong,.row-arrow){transform:none}}
