:root{--surface-base:#E4DCCE;--surface-raised:#F6F1E8;--surface-overlay:#fffaf2;--surface-sunken:#DED3C0;--ink-primary:#1C1A17;--ink-secondary:#6B5B4A;--ink-muted:#8A7A66;--accent:#1F3D3A;--accent-hover:#2b514d;--line-subtle:#DED3C0;--font-display:'Cormorant Garamond',serif;--font-body:Jost,sans-serif;--radius-md:8px;--focus:3px;--mobile-breakpoint:480px}
*{box-sizing:border-box}button{font:inherit;cursor:pointer;color:inherit}.theme-toggle{border:0;background:none;opacity:.75;text-transform:uppercase;letter-spacing:inherit;font:inherit}.proposal-note{font:400 11px var(--font-body);color:var(--ink-secondary);letter-spacing:.06em}.resort-stage{overflow:hidden}.resort-stage>[data-om-starter]{flex:none}.resort-stage [data-om-starter="ios-frame"]>div:nth-child(3)>div{overflow:hidden!important}img{display:block}image-slot{display:block;width:100%;height:100%;overflow:hidden}image-slot img{width:100%;height:100%;object-fit:cover}.resort-stage [role="button"]:focus-visible,button:focus-visible,input:focus-visible,a:focus-visible{outline:var(--focus) solid var(--accent);outline-offset:var(--focus)}[role="button"]{touch-action:manipulation}.resort-stage input{min-height:44px}button:disabled,[aria-disabled="true"]{opacity:.5;cursor:wait}.resort-stage [role="button"]:active{opacity:.8}.resort-stage [role="button"]:hover{filter:brightness(.97)}
#resort-dialog{padding:32px;background:var(--surface-raised);color:var(--ink-primary);border:1px solid var(--line-subtle);border-radius:var(--radius-md);max-width:calc(100vw - 32px);width:400px;font-family:var(--font-body)}#resort-dialog::backdrop{background:rgba(28,26,23,.65)}#resort-dialog h2{font:400 32px var(--font-display);margin:0 0 24px}#resort-dialog label{display:block;font-size:15px;margin:16px 0 8px}#resort-dialog input{width:100%;padding:12px;border:1px solid var(--line-subtle);background:var(--surface-overlay);font:inherit}#resort-dialog footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}#resort-dialog button{padding:12px 16px;border:1px solid var(--accent);background:transparent;font:inherit}#resort-dialog button[type="submit"]{background:var(--accent);color:var(--surface-raised)}.resort-tools{display:flex;align-items:center;justify-content:center;gap:24px;font:400 11px var(--font-body);color:var(--ink-secondary);padding:16px}.resort-tools button,.resort-tools a{background:none;border:0;text-decoration:underline;font:inherit;color:inherit;min-height:44px}.save-status{font-size:11px}.media-control{position:absolute;right:24px;bottom:16px;z-index:3;border:1px solid var(--line-subtle);border-radius:var(--radius-md);padding:8px;background:var(--accent);color:var(--surface-raised);font:400 10px var(--font-body);min-height:44px}
@media(max-width:699px){.resort-stage{padding:0!important;gap:0!important;justify-content:flex-start!important;min-height:100dvh!important}.resort-stage>div:first-child{display:none!important}.proposal-note{width:100%;padding:8px;text-align:center;background:var(--surface-base);font-size:10px}.resort-stage [data-om-starter="ios-frame"]{width:100vw!important;height:calc(100dvh - 32px)!important;border-radius:0!important;box-shadow:none!important}.resort-tools{padding:8px;background:var(--surface-base)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:699px){.resort-stage>div:last-child{display:none!important}.resort-stage [data-om-starter="ios-frame"]{height:calc(100dvh - 96px)!important}.resort-tools{height:64px;gap:12px;flex-wrap:wrap}.save-status{width:100%;text-align:center}.resort-tools button,.resort-tools a{min-height:32px}}
@media(max-width:699px){.resort-stage{min-height:calc(100dvh - 96px)!important}.resort-stage [data-om-starter="ios-frame"]{height:calc(100dvh - 128px)!important}.resort-tools{height:96px;gap:0}.resort-tools button,.resort-tools a{min-height:44px}}
@media(max-width:699px){#dc-root,#dc-root>.sc-host{height:auto!important;min-height:0!important}}

/* Larger devices retain the resort's type, palette and photography, with native web layouts. */
:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--page-max:1600px;--reading-max:720px;--content-max:1200px;--hero-height:680px;--tablet-hero:480px;--header-height:96px;--label-size:11px;--body-size:15px;--wordmark-size:32px;--headline-size:72px;--tracking:.16em;--line-strong:#C9BEAC;--accent-wash:#E6EEEA}
.web-header{display:none}
@media(min-width:700px){
  #dc-root,#dc-root>.sc-host{height:auto!important;min-height:0!important}
  .resort-stage{padding:0!important;gap:0!important;justify-content:flex-start!important;min-height:0!important;overflow:visible}
  .resort-stage>div:first-child,.resort-stage>div:last-child{display:none!important}
  .resort-stage>.proposal-note{display:block!important;width:100%;text-align:center;padding:var(--space-2);background:var(--surface-base)}
  .resort-stage [data-om-starter="ios-frame"]{width:100%!important;height:auto!important;min-height:calc(100dvh - var(--space-16));border-radius:0!important;box-shadow:none!important;overflow:visible!important}
  .resort-stage [data-om-starter="ios-frame"]>div:nth-child(1),.resort-stage [data-om-starter="ios-frame"]>div:nth-child(2),.resort-stage [data-om-starter="ios-frame"]>div:nth-child(4){display:none!important}
  .resort-stage [data-om-starter="ios-frame"]>div:nth-child(3),.resort-stage [data-om-starter="ios-frame"]>div:nth-child(3)>div,.app-shell{height:auto!important;overflow:visible!important}
  .web-dark{--surface-raised:#1C1A17;--ink-primary:#F6F1E8;--ink-secondary:#C9BEAC;--line-subtle:#443B32}
  .web-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-6) var(--space-8);min-height:var(--header-height);background:var(--surface-raised);color:var(--ink-primary);border-bottom:1px solid var(--line-subtle);position:sticky;top:0;z-index:20}
  .web-brand{border:0;background:none;padding:0;text-align:left;flex:none;display:flex;flex-direction:column;gap:var(--space-1)}
  .web-brand span{font:400 var(--wordmark-size)/1 var(--font-display)}
  .web-brand small{font:400 9px var(--font-body);letter-spacing:var(--tracking);text-transform:uppercase;color:var(--ink-secondary)}
  .web-nav,.web-actions{display:flex;align-items:center;gap:var(--space-6)}
  .web-header button{min-height:44px;transition:background .2s,color .2s}
  .web-nav-link,.web-actions button{border:0;background:none;padding:var(--space-2) 0;font:400 var(--label-size) var(--font-body);letter-spacing:var(--tracking);text-transform:uppercase;white-space:nowrap}
  .web-nav-link{border-bottom:1px solid transparent;color:var(--ink-secondary)}
  .web-nav-link.is-current{border-color:var(--accent);color:var(--ink-primary)}
  .web-actions{gap:var(--space-4)}
  .web-actions .web-concierge{background:var(--accent);color:var(--surface-raised);padding:var(--space-3) var(--space-4)}
  .web-actions .web-theme{font-size:9px;color:var(--ink-secondary)}
  .web-header button:hover{color:var(--accent-hover)}
  .web-actions .web-concierge:hover{background:var(--accent-hover);color:var(--surface-overlay)}
  .web-header button:active{opacity:.75}
  .mobile-tabs{display:none!important}
  .screen-viewport{overflow:visible!important;min-height:calc(100dvh - var(--header-height) - var(--space-16))!important}
  .screen{width:100%;max-width:var(--content-max);margin:0 auto!important;flex:none!important;min-height:var(--hero-height);padding:var(--space-12) var(--space-8)!important}
  .screen>.screen-section{min-width:0}
  .screen>[style="flex: 1;"]{display:none}
  .screen--home{max-width:var(--page-max);display:grid!important;grid-template-columns:7fr 5fr;padding:0!important;align-items:stretch}
  .screen--home>.section-1{height:auto!important;min-height:var(--hero-height)}
  .screen--home>.section-1>div:nth-last-child(1){padding:0 var(--space-12) var(--space-16)!important}
  .screen--home>.section-1>div:nth-last-child(1)>div:nth-child(2){font-size:var(--headline-size)!important}
  .screen--home>.section-1>div:nth-last-child(1)>div:last-child{font-size:var(--body-size)!important;max-width:40ch!important}
  .screen--home>.section-1>div:nth-child(3),.screen--home>.section-1>div:nth-child(4){padding:var(--space-8)!important}
  .screen--home>.section-2{padding:var(--space-8)!important;gap:var(--space-4)!important}
  .screen--home>.section-2>div[style*="overflow-x"]{flex-wrap:wrap;overflow:visible!important;margin:0!important;padding:0!important}
  .screen--home>.section-2>div[style*="overflow-x"]>div{min-height:44px;display:flex;align-items:center}
  .screen--home .media-control{right:var(--space-8);bottom:var(--space-4)}
  .screen--reserve .resort-collection{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:var(--space-2)!important;border:0!important;background:transparent!important}
  .screen--reserve .resort-collection>div{padding:var(--space-6)!important;min-height:160px!important;border:1px solid var(--line-subtle)}
  .screen--reserve .resort-collection>div>div:last-child>div:first-child{font-size:28px!important}
  .screen--dining .resort-collection{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)!important;overflow:visible!important}
  .screen--dining .resort-collection>div{width:auto!important;min-width:0}
  .screen--dining .resort-collection>div>div:first-child{height:360px!important}
  .screen--dining .resort-collection>div>div:last-child>div:first-child>div:first-child{font-size:28px!important}
  .screen--restaurant,.screen--event{display:grid!important;grid-template-columns:5fr 7fr;gap:0 var(--space-8);align-content:start;position:relative}
  .screen--restaurant>.screen-section,.screen--event>.screen-section{grid-column:2;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}
  .screen--restaurant>.section-1,.screen--event>.section-1{grid-column:1;grid-row:1 / span 20;height:var(--hero-height)!important;position:sticky!important;top:calc(var(--header-height) + var(--space-8));margin:0!important;overflow:hidden}
  .screen--restaurant>.section-1>div[style*="top: 130px"],.screen--event>.section-1>div[style*="top: 130px"]{top:var(--space-8)!important}
  .screen--restaurant>.section-2,.screen--event>.section-2{margin-top:0!important}
  .screen--restaurant>.screen-section[style="flex: 1;"],.screen--event>.screen-section[style="flex: 1;"]{display:none}
  .screen--map{max-width:var(--page-max);display:grid!important;grid-template-columns:8fr 4fr;align-items:stretch;padding:var(--space-8)!important;gap:var(--space-8)}
  .screen--map>.section-1{height:var(--hero-height)!important}
  .screen--map>.section-2{padding:var(--space-8)!important;border:1px solid var(--line-subtle)}
  .screen--map>.section-1>div[style*="top: 70px"]{top:var(--space-8)!important}
  .screen--signin,.screen--onboarding,.screen--checkin,.screen--confirm,.screen--checkout,.screen--profile,.screen--list,.screen--key,.screen--concierge{max-width:var(--reading-max);min-height:var(--hero-height)}
  .screen--signin,.screen--onboarding,.screen--confirm{gap:var(--space-2)}
  .screen--signin>.screen-section:last-of-type,.screen--onboarding>.screen-section:last-of-type{margin-top:var(--space-8)}
  .screen--confirm>svg{margin-top:var(--space-8)}
  .screen--welcome{max-width:var(--page-max);min-height:calc(100dvh - var(--header-height) - var(--space-16));padding:0!important}
  .screen--welcome>.section-4{width:50%;margin-left:auto;padding:var(--space-16)!important;background:var(--accent);min-height:var(--hero-height);justify-content:center}
  .screen--welcome>.section-4>div:nth-child(2){font-size:var(--headline-size)!important}
  .screen--welcome>.section-4>div:nth-child(3){font-size:var(--body-size)!important;max-width:40ch!important}
  .screen--spa .resort-collection,.screen--play .resort-collection{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-8)}
  .screen--spa .resort-collection>div:last-child,.screen--play .resort-collection>div:last-child{grid-column:1/-1}
  .screen--cabanas{max-width:var(--reading-max)}
  .screen--suite,.screen--kids,.screen--experiences,.screen--happenings,.screen--inroom,.screen--transport,.screen--perks,.screen--account,.screen--reservations,.screen--notifications{max-width:1000px}
  .screen--concierge>.screen-section[style*="overflow-x"]{flex-wrap:wrap;overflow:visible!important}
  .resort-tools{background:var(--surface-base);border-top:1px solid var(--line-subtle)}
  .app-shell>div[style*="z-index: 9"]{position:fixed!important;bottom:var(--space-8)!important}
}
@media(min-width:700px) and (max-width:1199px){
  .web-header{flex-wrap:wrap;gap:var(--space-4);padding:var(--space-4) var(--space-8)}
  .web-nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line-subtle);padding-top:var(--space-2)}
  .web-actions{margin-left:auto}.web-actions>button:first-child,.web-actions .web-theme{display:none}
  .screen--home{grid-template-columns:1fr}
  .screen--home>.section-1{height:var(--tablet-hero)!important;min-height:0}
  .screen--home>.section-1>div:nth-last-child(1){padding:0 var(--space-8) var(--space-12)!important}
  .screen--home>.section-2{display:grid!important;grid-template-columns:1fr 1fr;gap:var(--space-6)!important;align-items:start}
  .screen--home>.section-2>div:first-child,.screen--home>.section-2>div:nth-child(2),.screen--home>.section-2>div:nth-child(3),.screen--home>.section-2>div:last-child{grid-column:1/-1}
  .screen--home>.section-2>div:nth-child(4){grid-column:1;margin-top:0!important}
  .screen--home>.section-2>div:nth-child(5){grid-column:2;margin-top:0!important;min-height:120px}
  .screen--reserve .resort-collection{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .screen--dining .resort-collection{grid-template-columns:repeat(2,minmax(0,1fr))}
  .screen--dining .resort-collection>div>div:first-child{height:280px!important}
  .screen--map{grid-template-columns:1fr;padding:0!important;gap:0}
  .screen--map>.section-1{height:560px!important}
  .screen--map>.section-2{display:grid!important;grid-template-columns:1fr 1fr;gap:var(--space-6)!important}
  .screen--map>.section-2>div:first-child,.screen--map>.section-2>div:last-child{grid-column:1/-1}
  .screen--restaurant,.screen--event{grid-template-columns:5fr 7fr;gap:0 var(--space-6)}
  .screen--welcome>.section-4{width:55%;padding:var(--space-8)!important}
}
@media(min-width:1200px) and (max-width:1439px){.web-header{gap:var(--space-4)}.web-nav{gap:var(--space-4)}.web-actions>button:first-child,.web-actions .web-theme{display:none}}
@media(min-width:1920px){.web-header{padding-left:calc((100vw - var(--page-max))/2 + var(--space-8));padding-right:calc((100vw - var(--page-max))/2 + var(--space-8))}}

@media(min-width:700px){
  .screen--home>.section-1>div[style*="justify-content: space-between"]{display:none!important}
  .screen--experiences .resort-collection{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)!important;overflow:visible!important}
  .screen--experiences .resort-collection>div{width:auto!important;min-width:0}
  .screen--experiences .resort-collection>div>div:first-child{height:320px!important}
  .screen--suite>.section-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .screen--suite>.section-3>div{padding:var(--space-6)!important;min-height:128px!important}
  .screen--account{display:grid!important;grid-template-columns:7fr 5fr;gap:var(--space-6);align-content:start}
  .screen--account>.screen-section{margin:0!important;padding:0!important;grid-column:1;min-width:0}
  .screen--account>.section-1{grid-column:1/-1}
  .screen--account>.section-2{grid-row:2}
  .screen--account>.section-3{grid-row:3 / span 3}
  .screen--account>.section-4{grid-column:2;grid-row:2;padding:var(--space-6)!important}
  .screen--account>.section-5{grid-column:2;grid-row:3}
  .screen--account>.section-6{grid-column:2;grid-row:4;padding:var(--space-4)!important}
  .screen--account>.section-7{grid-column:2;grid-row:5;padding:var(--space-4)!important}
  .screen--spa>.section-2,.screen--kids>.section-2{height:320px!important}
  .screen--happenings>.section-2{min-height:320px!important}
  .screen--happenings .resort-collection{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-8)}
}
@media(min-width:700px) and (max-width:1199px){
  .screen--home>.section-2>div:nth-child(4){grid-row:4 / span 2}
  .screen--home>.section-2>div:nth-child(5){grid-row:4}
  .screen--home>.section-2>div:last-child{grid-column:2;grid-row:5;grid-template-columns:1fr!important}
  .screen--reserve .resort-collection{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .screen--play .resort-collection{grid-template-columns:1fr}
  .screen--restaurant>.section-1,.screen--event>.section-1{position:relative!important;top:0!important}
}
@media(min-width:700px){.screen-viewport{overflow-x:clip!important}.web-actions .web-concierge{color:var(--surface-overlay)}}
@media(min-width:1200px){.screen--home>.section-1{height:calc(100dvh - var(--header-height) - var(--space-8))!important;min-height:var(--hero-height);position:sticky!important;top:var(--header-height);align-self:start}}
