/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.hidden{display:none}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--navy:#071942;--navy-soft:#122755;--gold:#d4ad3f;--paper:#f5f1e8;--paper-deep:#e9e2d4;--ink:#17203a;--muted:#667083;--line:#17203a29;--serif:"Cormorant Garamond", Georgia, serif;--sans:"DM Sans", Arial, sans-serif;--shell:min(1320px, calc(100% - 64px));--gold-ink:#80661f;--section-space:clamp(86px, 8.3vw, 124px);--shadow:0 30px 90px #07194224}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0}body:before{content:"";pointer-events:none;z-index:20;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}.section-shell{width:var(--shell);margin:0 auto}.section-pad{padding:var(--section-space) 0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--gold);color:var(--navy);padding:12px 16px;font-weight:700;transition:top .25s;position:fixed;top:-64px;left:16px}.skip-link:focus{top:16px}.site-header{z-index:10;color:#fff;transition:background .3s,color .3s,box-shadow .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;position:fixed;inset:0 0 auto}.site-header.scrolled{color:var(--navy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;box-shadow:0 1px #07194214,0 10px 30px #0719420a}.header-shell{width:var(--shell);justify-content:space-between;align-items:center;gap:32px;min-height:88px;margin:auto;display:flex}.brand,.footer-wordmark{align-items:center;display:inline-flex}.brand-logo-frame{place-items:center;width:80px;height:80px;display:grid}.brand-logo,.footer-logo-frame img{object-fit:contain;width:100%;height:100%}.brand-flower{color:var(--gold);font-size:31px;line-height:1;display:inline-block;transform:rotate(45deg)}.brand-copy{letter-spacing:.18em;font-size:18px;line-height:.85;display:grid}.brand-copy strong{letter-spacing:.28em;font-size:10px;font-weight:600}.brand-copy span{font-family:var(--serif);letter-spacing:.08em;font-size:25px}.site-nav{color:#ffffffe8;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:clamp(16px,2.2vw,34px);font-size:12px;font-weight:500;display:flex}.site-nav a{padding:12px 0;transition:color .25s;position:relative}.site-nav a:not(.nav-booking):after{content:"";background:var(--gold);height:1px;transition:right .25s;position:absolute;bottom:5px;left:0;right:100%}.site-nav a:not(.nav-booking):hover,.site-nav a:not(.nav-booking):focus-visible{color:var(--gold)}.site-nav a:not(.nav-booking):hover:after,.site-nav a:not(.nav-booking):focus-visible:after{right:0}.site-nav a[aria-current=page]:not(.nav-booking){color:var(--gold)}.site-nav a[aria-current=page]:not(.nav-booking):after{right:0}.site-header.scrolled .site-nav{color:var(--navy)}.site-header.scrolled .site-nav a:not(.nav-booking):hover,.site-header.scrolled .site-nav a:not(.nav-booking):focus-visible,.site-header.scrolled .site-nav a[aria-current=page]:not(.nav-booking){color:var(--gold-ink)}.nav-booking{background:var(--gold);min-height:54px;color:var(--navy);border-radius:4px;font-weight:700;transition:transform .25s,background .25s,color .25s;padding:16px 25px!important}.site-nav .nav-booking:hover,.site-nav .nav-booking:focus-visible{color:var(--navy);background:#e4c45f;transform:translateY(-1px)}.language-switcher{border-left:1px solid #ffffff4d;align-items:center;gap:7px;margin-left:-5px;padding-left:22px;display:inline-flex}.language-switcher-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.language-option{color:#ffffffa8;letter-spacing:.08em;justify-content:center;align-items:center;min-width:34px;height:34px;font-size:11px;display:inline-flex;padding:0!important}.language-option:after{display:none!important}.language-option:hover,.language-option:focus-visible,.language-option.is-active{color:var(--gold)}.language-option.is-active{border:1px solid;border-radius:50%}.site-header.scrolled .language-switcher{border-color:#07194229}.site-header.scrolled .language-option{color:#07194294}.site-header.scrolled .language-option:hover,.site-header.scrolled .language-option:focus-visible,.site-header.scrolled .language-option.is-active{color:var(--gold-ink)}.menu-toggle{color:currentColor;background:0 0;border:0;padding:10px 0 10px 10px;display:none}.menu-toggle span:not(.sr-only){background:currentColor;width:28px;height:1px;margin:5px 0;transition:transform .25s;display:block}.mobile-nav{display:none}.hero{background:var(--navy);color:#fff;align-items:center;min-height:max(740px,100svh);display:flex;position:relative;overflow:hidden}.hero-image,.hero-wash{position:absolute;inset:0}.hero-image{object-fit:cover;object-position:66% center;filter:saturate(.86);width:100%;height:100%;transform:scale(1.02)}.hero-wash{background:linear-gradient(90deg,#051b3ff5 0%,#051b3fd1 30%,#051b3f66 55%,#051b3f0d 80%)}.hero-content{z-index:1;width:var(--shell);max-width:1320px;margin:0 auto;padding:126px 0 54px;position:relative}.hero-eyebrow{color:var(--gold);letter-spacing:.24em;align-items:center;gap:13px;margin-bottom:27px;font-size:12px;font-weight:600;display:flex}.eyebrow{color:var(--gold-ink);letter-spacing:.22em;text-transform:uppercase;margin:0 0 19px;font-size:11px;font-weight:700;line-height:1.25}.eyebrow:before{content:"";background:currentColor;width:28px;height:1px;margin:0 13px 4px 0;display:inline-block}.hero-eyebrow:before{flex:0 0 28px;width:28px;margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.035em;font-weight:500}h1{text-wrap:balance;max-width:660px;margin-bottom:25px;font-size:clamp(58px,8vw,112px);line-height:.82}.hero h1{letter-spacing:-.045em;max-width:720px;margin-bottom:22px;font-size:clamp(64px,6.3vw,100px);font-weight:400;line-height:.98}.hero h1 span,.hero h1 em{display:block}.hero h1 em{color:var(--gold);font-style:italic;font-weight:400}h2{text-wrap:balance;margin-bottom:22px;font-size:clamp(44px,5vw,70px);line-height:.94}h3{margin-bottom:13px;font-size:35px;line-height:.95}.hero-lede{color:#ffffffe0;max-width:580px;margin-bottom:34px;font-size:18px;line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:42px;display:flex}.button{letter-spacing:.16em;text-transform:uppercase;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:20px;min-height:52px;padding:14px 21px;font-size:11px;font-weight:700;transition:transform .22s,background .22s,color .22s,border-color .22s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button-gold{background:var(--gold);color:var(--navy)}.button-gold:hover,.button-gold:focus-visible{background:#e4c45f}.button-outline-light{color:#fff;border-color:#ffffffa6}.button-outline-light:hover,.button-outline-light:focus-visible{color:var(--navy);background:#fff}.text-link{color:var(--navy);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:12px;padding-bottom:5px;font-size:12px;font-weight:700;transition:gap .22s,color .22s;display:inline-flex}.text-link:hover,.text-link:focus-visible{color:var(--gold-ink);gap:16px}.text-link-light{color:#fff;border-color:#fff9}.hero-actions .button{border-radius:4px;min-height:58px;padding:17px 29px}.hero-actions .button:hover,.hero-actions .button:focus-visible{transform:translateY(-1px)}.hero-actions .text-link{gap:14px}.hero-action-arrow{transition:transform .25s;display:inline-block}.hero-actions a:hover .hero-action-arrow,.hero-actions a:focus-visible .hero-action-arrow{transform:translate(4px)}.hero-meta{color:#ffffffd1;letter-spacing:0;text-transform:none;align-items:center;gap:0;margin-top:66px;font-size:13px;display:flex}.hero-benefit{border-right:1px solid #ffffff61;align-items:center;gap:12px;min-height:30px;padding:0 23px;display:inline-flex}.hero-benefit:first-child{padding-left:0}.hero-benefit:last-child{border-right:0;padding-right:0}.hero-benefit svg{fill:none;width:26px;height:26px;stroke:var(--gold);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none}.intro{grid-template-columns:minmax(0,.86fr) minmax(380px,1.14fr);align-items:center;gap:clamp(50px,10vw,150px);display:grid}.intro-copy{padding-left:clamp(0px,3vw,48px)}.intro-copy h2{max-width:560px}.body-copy{max-width:480px;color:var(--muted);font-size:17px;line-height:1.8}.intro-copy .text-link{margin-top:28px}.intro-image-wrap{padding-right:34px;position:relative}.intro-image-wrap:before{content:"";z-index:-1;border:1px solid #9c7d2780;position:absolute;inset:34px 0 0 34px}.intro-image-wrap img{aspect-ratio:1.08;object-fit:cover;width:100%}.image-caption{color:var(--muted);letter-spacing:.05em;padding:14px 18px 0;font-size:11px;display:block}.hotel-intro{isolation:isolate;background:var(--paper);color:var(--ink);padding:clamp(100px,8vw,140px) 0 clamp(112px,9vw,150px);position:relative;overflow:hidden}.hotel-intro:before,.hotel-intro:after{content:"";z-index:0;filter:blur(11px);opacity:.45;pointer-events:none;-webkit-user-select:none;user-select:none;background-color:#4148371c;position:absolute;-webkit-mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat;mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat}.hotel-intro:before{opacity:.5;width:520px;height:680px;top:-165px;left:-250px;transform:rotate(-16deg)}.hotel-intro:after{width:690px;height:850px;bottom:-310px;right:-245px;transform:rotate(19deg)}.hotel-intro-shell{z-index:1;width:var(--shell);grid-template-rows:auto auto;grid-template-columns:minmax(0,.98fr) minmax(0,1.25fr);align-items:start;gap:28px clamp(56px,6.5vw,92px);display:grid;position:relative}.hotel-intro-copy{grid-area:1/1;padding-left:clamp(0px,1.2vw,20px)}.hotel-intro-eyebrow{color:var(--gold-ink);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:17px;margin:0 0 7px;font-size:15px;font-weight:600;line-height:1.3;display:flex}.hotel-intro-eyebrow span{background:currentColor;flex:0 0 56px;width:56px;height:2px}.hotel-intro-kicker{color:var(--muted);letter-spacing:.22em;text-transform:uppercase;margin:0 0 26px 73px;font-size:12px;font-weight:600;line-height:1.4}.hotel-intro-copy h2{max-width:640px;color:var(--navy);letter-spacing:-.045em;text-wrap:balance;margin-bottom:25px;font-size:clamp(58px,4.7vw,82px);font-weight:400;line-height:.91}.hotel-intro-copy h2 em{color:var(--gold);font-style:italic;font-weight:400}.hotel-intro .body-copy{max-width:550px;color:var(--muted);margin-bottom:0;font-size:18px;line-height:1.62}.hotel-intro-divider{background:#17203a38;width:min(100%,550px);height:1px;margin-top:34px}.hotel-intro-facts{grid-area:2/1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.hotel-intro-fact{align-items:flex-start;gap:16px;min-width:0;padding:0 22px 0 0;display:flex}.hotel-intro-fact+.hotel-intro-fact{border-left:1px solid #17203a33;padding:0 0 0 24px}.hotel-intro-fact>svg{fill:none;width:34px;height:34px;stroke:var(--gold);stroke-width:1.55px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 34px;margin-top:5px}.hotel-intro-fact-copy{min-width:0}.hotel-intro-fact-copy strong{color:var(--navy);font:400 clamp(40px, 3.1vw, 54px)/.95 var(--serif);letter-spacing:-.045em;white-space:nowrap;margin:0 0 3px;display:block}.hotel-intro-fact-label{color:var(--navy);letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;line-height:1.4;display:block}.hotel-intro-fact-copy p{max-width:190px;color:var(--muted);margin:0;font-size:14px;line-height:1.5}.hotel-intro-visual{aspect-ratio:1.34;grid-area:1/2/span 2;align-self:start;min-width:0;position:relative}.hotel-intro-image-main{background:var(--paper-deep);width:100%;height:100%;margin:0;overflow:hidden}.hotel-intro-image-main img{object-fit:cover;object-position:58% center;width:100%;height:100%}.hotel-intro-image-detail{z-index:2;background:var(--paper);width:clamp(250px,19vw,300px);color:var(--ink);margin:0;padding:10px 10px 13px;position:absolute;bottom:-78px;left:calc(-1*clamp(54px,6vw,98px));box-shadow:0 20px 50px #141f361f}.hotel-intro-image-detail img{aspect-ratio:1.1;object-fit:cover;object-position:center 58%;width:100%}.hotel-intro-image-detail figcaption{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;padding:11px 7px 0;font-size:9px;font-weight:600;line-height:1.5}.numbers{background:var(--navy);color:#fff;border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;position:relative;overflow:hidden}.numbers:after{display:none}.numbers-shell{grid-template-columns:minmax(180px,.48fr) minmax(0,1.52fr);align-items:center;gap:clamp(38px,7vw,105px);padding:48px 0 54px;display:grid}.numbers-intro h2{max-width:240px;color:var(--paper);margin:0;font-size:clamp(33px,3.2vw,46px);line-height:.9}.numbers-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.number-item{border-right:1px solid #ffffff38;min-height:0;padding:5px 24px}.number-item:first-child{padding-left:0}.number-item:last-child{border-right:0;padding-right:0}.number-item strong{color:var(--paper);font:500 clamp(38px, 4vw, 57px)/.9 var(--serif);font-variant-numeric:tabular-nums;letter-spacing:-.04em;margin-bottom:5px;display:block}.number-label{color:#ffffffad;letter-spacing:.12em;text-transform:uppercase;max-width:130px;font-size:10px;line-height:1.45;display:block}.rooms{background:var(--paper-deep);position:relative;overflow:hidden}.rooms:before{content:"Habitaciones";color:#07194209;font:500 clamp(130px, 19vw, 285px)/.72 var(--serif);letter-spacing:-.08em;pointer-events:none;white-space:nowrap;position:absolute;top:110px;right:-70px}.rooms>.section-shell{z-index:1;position:relative}.section-heading{margin-bottom:62px}.split-heading{justify-content:space-between;align-items:end;gap:50px;display:flex}.split-heading h2{max-width:620px;margin-bottom:0}.heading-note{max-width:300px;color:var(--muted);margin:0 0 6px;font-size:14px;line-height:1.7}.rooms .section-heading{border-bottom:1px solid var(--line);margin-bottom:54px;padding-bottom:32px}.rooms .heading-note{max-width:350px}.room-grid{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(185px,.72fr);align-items:start;gap:clamp(20px,2.5vw,36px);display:grid}.room-feature{min-width:0}.room-offset{margin-top:40px}.room-card-link{color:inherit;display:block;position:relative}.room-card-link:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.room-card-link:after{content:"↗";z-index:2;background:var(--paper);width:38px;height:38px;color:var(--navy);opacity:0;border-radius:50%;place-items:center;font-size:16px;transition:opacity .22s,transform .22s;display:grid;position:absolute;bottom:14px;right:14px;transform:translateY(6px)}.room-card-link:hover:after,.room-card-link:focus-visible:after{opacity:1;transform:none}.room-title-link{color:inherit;transition:color .25s}.room-title-link:hover,.room-title-link:focus-visible{color:var(--gold-ink)}.room-image{background:var(--navy-soft);margin-bottom:18px;position:relative;overflow:hidden}.room-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#07194233);position:absolute;inset:0}.room-image img{aspect-ratio:1.08;object-fit:cover;width:100%;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.room-feature:hover .room-image img{transform:scale(1.025)}.room-card-gallery,.collection-card-gallery{flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:2px 0 6px;display:flex}.rooms .room-card-gallery{display:none}.gallery-thumb{background:var(--paper);cursor:zoom-in;border:1px solid #0000;flex:0 0 64px;width:64px;height:58px;padding:0;transition:border-color .2s,transform .2s;overflow:hidden}.gallery-thumb:hover,.gallery-thumb:focus-visible,.gallery-thumb[aria-current=true]{border-color:var(--gold);transform:translateY(-2px)}.gallery-thumb img{object-fit:cover;width:100%;height:100%}.room-type{color:var(--gold-ink);letter-spacing:.18em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:700}.room-copy{border-top:1px solid var(--line);padding-top:18px}.room-copy h3{text-wrap:balance}.room-copy p:not(.room-type){max-width:320px;color:var(--muted);margin-bottom:22px;font-size:14px;line-height:1.65}.room-copy .text-link{font-size:10px}.room-more-panel{background:var(--navy);color:#fff;align-self:start;margin-top:40px;padding:28px 22px 26px}.room-more-panel h3{color:var(--paper);margin-bottom:17px;font-size:39px;line-height:.88}.room-more-intro{color:#ffffffb8;margin-bottom:21px;font-size:13px;line-height:1.65}.room-tags{grid-template-columns:1fr;display:grid}.room-tags a{color:#ffffffeb;border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:12px;line-height:1.3;transition:color .25s,padding .25s;display:flex}.room-tags a:after{content:"↗";color:var(--gold);flex:none;font-size:13px;transition:transform .25s}.room-tags a:hover,.room-tags a:focus-visible{color:var(--gold);padding-left:5px}.room-tags a:hover:after,.room-tags a:focus-visible:after{transform:translate(3px,-2px)}.room-more-note{color:#ffffff85;margin:21px 0 0;font-size:11px;line-height:1.55}.room-detail-hero{grid-template-columns:minmax(0,.91fr) minmax(380px,1.09fr);align-items:center;gap:clamp(48px,9vw,130px);min-height:720px;padding-top:150px;padding-bottom:90px;display:grid}.room-detail-copy{padding-left:clamp(0px,3vw,48px)}.back-link{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:54px;font-size:11px;font-weight:700;transition:color .25s;display:inline-flex}.back-link:hover,.back-link:focus-visible{color:var(--gold-ink)}.room-detail-copy h1{max-width:620px;color:var(--navy);margin-bottom:27px;font-size:clamp(60px,7vw,104px);line-height:.82}.room-detail-lede{max-width:500px;color:var(--muted);margin-bottom:33px;font-size:17px;line-height:1.8}.room-detail-visual{min-width:0}.room-detail-image{padding-right:34px;position:relative}.room-detail-image:before{content:"";z-index:-1;border:1px solid #9c7d2780;position:absolute;inset:34px 0 0 34px}.room-detail-image img{aspect-ratio:.9;object-fit:cover;width:100%}.room-detail-label{background:var(--navy);color:#fff;letter-spacing:.12em;text-transform:uppercase;padding:13px 18px;font-size:11px;font-weight:700;position:absolute;bottom:0;right:0}.room-detail-thumbnails{flex-wrap:wrap;gap:9px;margin-top:16px;padding:2px 0 7px;display:flex}.room-detail-thumbnails .gallery-thumb{flex-basis:78px;width:78px;height:67px}.room-gallery-hint{color:var(--muted);letter-spacing:.04em;margin:1px 0 0;font-size:11px}.room-detail-content{grid-template-columns:minmax(280px,.75fr) minmax(430px,1.25fr);align-items:start;gap:clamp(55px,10vw,150px);display:grid}.room-amenities h2,.price-panel h2{max-width:390px;margin-bottom:28px}.room-feature-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px;max-width:480px;margin:0;padding:0;list-style:none;display:grid}.room-feature-grid li{border-bottom:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:10px;padding:14px 0;font-size:13px;line-height:1.45;display:flex}.room-feature-grid li span{color:var(--gold-ink)}.price-panel{background:var(--paper-deep);padding:38px 42px 42px}.price-intro{max-width:490px;color:var(--muted);margin-bottom:25px;font-size:14px;line-height:1.7}.price-table-wrap{overflow-x:auto}.price-table{border-collapse:collapse;width:100%;min-width:440px;color:var(--ink);font-size:13px}.price-table th,.price-table td{text-align:right;border-bottom:1px solid #17203a24;padding:14px 10px}.price-table th:first-child,.price-table td:first-child{text-align:left;padding-left:0}.price-table thead th{color:var(--gold-ink);letter-spacing:.12em;text-transform:uppercase;font-size:10px}.price-table tbody th{font-weight:600}.price-note{color:var(--muted);margin:24px 0 26px;font-size:12px;line-height:1.6}.price-unavailable{color:var(--muted);background:#ffffff7a;margin:0 0 25px;padding:18px;font-size:13px;line-height:1.65}.room-secondary-image{max-width:180px;margin-top:34px}.room-secondary-image img{aspect-ratio:1;object-fit:cover;width:100%}.room-secondary-image span{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:7px;font-size:10px;display:block}.room-gallery{padding-top:26px}.room-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.room-gallery-item{background:var(--paper-deep);margin:0;overflow:hidden}.room-gallery-image{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.room-gallery-item img{aspect-ratio:1.16;object-fit:cover;width:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1);display:block}.room-gallery-item:hover img,.room-gallery-image:focus-visible img{transform:scale(1.04)}.room-detail-cta{margin-top:20px}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{z-index:100;color:#fff;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.gallery-lightbox-backdrop{cursor:zoom-out;background:#030c22e6;border:0;width:100%;height:100%;position:absolute;inset:0}.gallery-lightbox-dialog{z-index:1;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;width:min(1120px,100%);max-height:calc(100dvh - 56px);display:grid;position:relative}.gallery-lightbox-figure{grid-area:1/2;margin:0}.gallery-lightbox-figure img{object-fit:contain;width:100%;max-height:calc(100dvh - 145px)}.gallery-lightbox-caption{color:#ffffffd1;text-align:center;margin:14px 0 0;font-size:13px}.gallery-lightbox-close{z-index:2;color:#fff;cursor:pointer;background:#07194299;border:1px solid #ffffff80;border-radius:50%;width:42px;height:42px;font-size:30px;line-height:1;position:absolute;top:-10px;right:-5px}.gallery-lightbox-nav{color:#fff;cursor:pointer;background:#07194299;border:1px solid #ffffff80;width:42px;height:52px;font-size:24px}.gallery-lightbox-prev{grid-area:1/1;justify-self:start}.gallery-lightbox-next{grid-area:1/3;justify-self:end}.gallery-lightbox-count{color:#ffffff9e;letter-spacing:.16em;text-align:center;text-transform:uppercase;grid-area:2/2;margin:18px 0 0;font-size:11px}.gallery-lightbox-close:hover,.gallery-lightbox-close:focus-visible,.gallery-lightbox-nav:hover,.gallery-lightbox-nav:focus-visible{border-color:var(--gold);color:var(--gold)}.gallery-lightbox-close:disabled,.gallery-lightbox-nav:disabled{opacity:.35;cursor:default}body.gallery-is-open{overflow:hidden}.listing-hero{min-height:535px;padding-top:150px;padding-bottom:80px}.listing-hero h1,.about-hero h1,.reservation-hero h1{max-width:780px;color:var(--navy);margin-bottom:25px;font-size:clamp(64px,8vw,112px);line-height:.82}.listing-lede{max-width:620px;color:var(--muted);font-size:18px;line-height:1.75}.listing-section{padding-top:100px}.listing-heading{max-width:680px;margin-bottom:70px}.listing-heading h2{margin-bottom:0}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:66px 42px;display:grid}.collection-card-image{background:#b8b3a9;display:block;overflow:hidden}.collection-card-image img{aspect-ratio:1.08;object-fit:cover;width:100%;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.collection-card:hover .collection-card-image img{transform:scale(1.025)}.collection-card-copy{padding-top:22px}.collection-card-copy h3{margin-bottom:14px}.collection-card-copy>p:not(.room-type){min-height:74px;color:var(--muted);margin-bottom:22px;font-size:14px;line-height:1.65}.about-hero,.reservation-hero{grid-template-columns:minmax(0,.92fr) minmax(380px,1.08fr);align-items:center;gap:clamp(48px,9vw,130px);min-height:720px;padding-top:150px;padding-bottom:90px;display:grid}.about-hero-copy,.reservation-hero-copy{padding-left:clamp(0px,3vw,48px)}.about-hero-image,.reservation-hero-image{padding-right:34px;position:relative}.about-hero-image:before,.reservation-hero-image:before{content:"";z-index:-1;border:1px solid #9c7d2780;position:absolute;inset:34px 0 0 34px}.about-hero-image img,.reservation-hero-image img{aspect-ratio:.92;object-fit:cover;width:100%}.about-story{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:center;gap:clamp(50px,10vw,150px);display:grid}.about-story-copy h2{max-width:570px}.about-story-copy .body-copy+.body-copy{margin-top:20px}.about-facts{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.about-facts div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:150px;padding:24px}.about-facts span{color:var(--gold-ink);font:500 48px/.9 var(--serif);display:block}.about-facts p{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.4}.about-services{background:var(--paper-deep)}.service-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.service-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:235px;padding:28px}.service-grid h3{margin:0 0 10px;font-size:31px}.service-grid p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.reservation-list{padding-top:100px}.reservation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.reservation-room-card{background:var(--paper-deep);padding:24px}.reservation-room-head{grid-template-columns:150px 1fr;align-items:center;gap:22px;margin-bottom:24px;display:grid}.reservation-room-head img{object-fit:cover;width:150px;height:150px}.reservation-room-head h3{margin-bottom:14px;font-size:31px}.reservation-room-head .text-link{font-size:10px}.reservation-room-card .price-table{min-width:0;font-size:12px}.reservation-room-card .price-table th,.reservation-room-card .price-table td{padding:11px 7px}.reservation-note{margin-top:34px}.comfort{grid-template-columns:minmax(300px,.91fr) minmax(0,1.09fr);align-items:center;gap:clamp(40px,6vw,88px);display:grid}.comfort-media{padding:0 0 55px 55px;position:relative}.comfort-media:before{content:"";z-index:-1;border:1px solid #9c7d2785;position:absolute;inset:31px 28px 0 0}.comfort-image{position:relative}.comfort-image img{aspect-ratio:1.22;object-fit:cover;filter:saturate(.86);width:100%}.comfort-image .image-caption{background:var(--navy);color:#ffffffd6;letter-spacing:.12em;text-transform:uppercase;padding:13px 17px 12px;font-size:10px;position:absolute;bottom:0;right:0}.comfort-detail{background:var(--paper);width:min(190px,42%);margin:0;padding:9px 9px 12px;position:absolute;bottom:0;left:0;box-shadow:0 24px 65px #0719422e}.comfort-detail img{aspect-ratio:1.05;object-fit:cover;width:100%}.comfort-detail figcaption{color:var(--muted);padding:10px 5px 0;font-size:10px;line-height:1.4}.comfort-copy h2{max-width:560px}.feature-list{max-width:550px;margin:34px 0 0;padding:0;list-style:none}.feature-list li{border-top:1px solid var(--line);grid-template-columns:26px minmax(0,1fr);align-items:start;gap:15px;padding:18px 0;display:grid}.feature-icon{fill:none;width:24px;height:24px;stroke:var(--gold-ink);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}.feature-list strong{margin-bottom:3px;font-size:15px;display:block}.feature-list p{color:var(--muted);margin:0;font-size:14px}.comfort-link{margin-top:29px;font-size:10px}.restaurant{isolation:isolate;background:var(--navy);color:#fff;padding:112px 0 54px;position:relative;overflow:hidden}.restaurant-standalone:after{content:"";z-index:-1;opacity:.18;pointer-events:none;background:#d4ad3f94;width:min(34vw,470px);height:94%;position:absolute;top:3%;right:-3%;-webkit-mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat;mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat}.restaurant-shell{width:min(1404px,100% - 64px);max-width:1404px}.restaurant-layout{grid-template:"intro main""features secondary""actions secondary""note secondary"/minmax(0,.38fr) minmax(0,.62fr);align-items:stretch;gap:16px clamp(28px,3vw,40px);padding-left:43px;display:grid;position:relative}.restaurant-layout:before{content:"";background:#d4ad3fad;width:1px;position:absolute;top:8px;bottom:0;left:0}.restaurant-intro{grid-area:intro;align-self:center;min-width:0}.restaurant-location{color:var(--gold);letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:15px;margin:0 0 22px;font-size:10px;font-weight:600;line-height:1.5;display:flex}.restaurant-location span{background:var(--gold);flex:0 0 46px;width:46px;height:1px}.restaurant-logo{width:min(205px,100%);margin:0 0 17px}.restaurant-logo img{object-fit:contain;width:100%;height:auto;display:block}.restaurant h1{max-width:520px;color:var(--paper);letter-spacing:-.035em;margin:0 0 17px;font-size:clamp(62px,5vw,74px);font-weight:400;line-height:.94}.restaurant h1 span{white-space:nowrap;display:block}.restaurant-lede{color:#f5f1e8db;max-width:480px;margin:0;font-size:15px;line-height:1.6}.restaurant-photo{background:var(--paper-deep);border:1px solid #d4ad3f9e;border-radius:11px;min-width:0;min-height:0;margin:0;position:relative;overflow:hidden;box-shadow:0 16px 38px #00000024}.restaurant-photo:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0000 8%,#071942b8);position:absolute;inset:34% 0 0}.restaurant-photo img{z-index:0;object-fit:cover;width:100%;height:100%;transition:transform .32s cubic-bezier(.2,.7,.2,1);position:relative}.restaurant-photo:hover img{transform:scale(1.03)}.restaurant-photo figcaption{z-index:2;color:var(--paper);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:12px;padding:17px 22px 19px;font-size:9px;font-weight:600;line-height:1.5;display:flex;position:absolute;bottom:0;left:0;right:0}.restaurant-photo figcaption:before{content:"";background:var(--gold);flex:0 0 30px;width:30px;height:1px}.restaurant-photo-main{aspect-ratio:1.84;grid-area:main;min-height:390px}.restaurant-photo-main img{object-position:50% 55%}.restaurant-photo-callout{z-index:2;color:#f5f1e8e8;font:500 10px/1.65 var(--serif);letter-spacing:.18em;text-transform:uppercase;grid-template-columns:46px auto;align-items:start;column-gap:14px;display:grid;position:absolute;top:34px;right:26px}.restaurant-photo-callout:before{content:"";background:var(--gold);height:1px;margin-top:7px}.restaurant-meta{min-width:0;color:var(--gold);grid-area:features;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.restaurant-feature{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;min-width:0;padding:3px 12px;font-size:9px;font-weight:600;line-height:1.45;display:flex}.restaurant-feature:first-child{padding-left:0}.restaurant-feature+.restaurant-feature{border-left:1px solid #ffffff38}.restaurant-feature-icon{fill:none;width:34px;height:34px;stroke:var(--gold);stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 34px}.restaurant-actions{grid-area:actions;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;display:grid}.restaurant-actions .button{border-radius:3px;justify-content:space-between;gap:14px;min-width:0;min-height:56px;padding:14px 20px}.restaurant-button-arrow{flex:none;font-size:15px;transition:transform .25s}.restaurant-actions .button:hover .restaurant-button-arrow,.restaurant-actions .button:focus-visible .restaurant-button-arrow{transform:translate(2px,-2px)}.restaurant-secondary-gallery{grid-area:secondary;grid-template-rows:minmax(230px,1fr);grid-template-columns:1.4fr 1fr;gap:16px;min-width:0;min-height:0;display:grid}.restaurant-photo-secondary{height:100%}.restaurant-photo-secondary img{object-position:center}.restaurant-reservation-note{background:#ffffff09;border:1px solid #d4ad3f47;border-radius:7px;grid-area:note;grid-template-columns:34px minmax(0,1fr) 16px;align-items:start;gap:13px;min-width:0;padding:17px 18px;display:grid}.restaurant-calendar-icon{fill:none;width:29px;height:29px;stroke:var(--gold);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.restaurant-reservation-copy h2{color:var(--gold);font:600 10px/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0 0 4px}.restaurant-reservation-copy p{color:#f5f1e8c4;margin:0;font-size:11px;line-height:1.55}.restaurant-reservation-copy a{color:var(--gold);text-underline-offset:3px;-webkit-text-decoration:underline #d4ad3fa6;text-decoration:underline #d4ad3fa6}.restaurant-reservation-copy a:hover,.restaurant-reservation-copy a:focus-visible{color:#f1d577}.restaurant-note-arrow{color:var(--gold);align-self:center;font-size:17px}.restaurant-more-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:48px 0 0 43px;display:grid}.restaurant-photo-more{aspect-ratio:1.55}.restaurant-photo-more img{position:absolute;inset:0}.restaurant-story{isolation:isolate;color:var(--navy);background:#f8f5ed;padding:clamp(96px,6.7vw,112px) 0 clamp(66px,6.7vw,104px);scroll-margin-top:88px;position:relative;overflow:hidden}.restaurant-story:before,.restaurant-story:after{z-index:-1;content:"";opacity:.1;pointer-events:none;background:#a77c2a7a;width:370px;height:500px;position:absolute;-webkit-mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat;mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat}.restaurant-story:before{bottom:-185px;left:-130px;transform:rotate(-22deg)}.restaurant-story:after{top:20px;right:-115px;transform:rotate(9deg)}.restaurant-story-layout{grid-template:"visual copy""visual values""visual actions"/minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:0 clamp(38px,5.3vw,82px);width:min(1450px,100% - 64px);display:grid}.restaurant-story-visual{grid-area:visual;width:100%;min-width:0;height:clamp(500px,40vw,585px);position:relative}.restaurant-story-year{z-index:2;border-left:1px solid #a77c2aa3;flex-direction:column;align-items:flex-start;width:35%;padding:60px 0 19px 27px;display:flex;position:absolute;top:14%;left:0}.restaurant-story-year>span:first-child{color:#a77c2a;letter-spacing:.24em;text-transform:uppercase;font-size:10px;font-weight:700}.restaurant-story-year strong{color:#071b41;font:400 clamp(84px, 8vw, 120px)/.86 var(--serif);letter-spacing:-.055em}.restaurant-story-year>span:nth-of-type(2){color:#667080;letter-spacing:.16em;margin-top:15px;font-size:8px;font-weight:700;line-height:1.8}.restaurant-story-year i{background:#d9af45;width:66px;height:1px;margin-top:23px}.restaurant-story-photo{aspect-ratio:3/4;outline-offset:8px;background:var(--paper-deep);border:1px solid #a77c2a8c;border-radius:4px;outline:1px solid #a77c2a59;width:62%;margin:0;position:absolute;top:0;right:1%;overflow:hidden}.restaurant-story-photo img{object-fit:cover;object-position:55% center;width:100%;height:100%;transition:transform .32s}.restaurant-story-photo:hover img{transform:scale(1.025)}.restaurant-story-note{z-index:3;color:#667080;background:linear-gradient(145deg,#fcfaf3,#f3eee3);border:1px solid #a77c2a59;outline:7px solid #fcfaf3f2;flex-direction:column;align-items:flex-start;gap:9px;width:min(55%,325px);padding:22px 24px 20px;display:flex;position:absolute;bottom:70px;left:8%;box-shadow:0 12px 28px #251f1329}.restaurant-story-note:before{content:"";background:#d9af45;width:34px;height:1px}.restaurant-story-note>span{color:#a77c2a;letter-spacing:.18em;font-size:7px;font-weight:700}.restaurant-story-note strong{font:500 clamp(16px, 1.45vw, 19px)/1.22 var(--serif)}.restaurant-story-caption{color:#a77c2a;letter-spacing:.025em;margin:0;font-family:Allura,cursive;font-size:clamp(22px,2.2vw,28px);font-weight:400;line-height:1;position:absolute;bottom:12px;left:17%;transform:rotate(-3deg)}.restaurant-story-copy{grid-area:copy;align-self:center;padding:5px 0 0}.restaurant-story-eyebrow{color:#a77c2a;letter-spacing:.23em;text-transform:uppercase;margin:0 0 17px;font-size:10px;font-weight:700;line-height:1.4}.restaurant-story-copy h2{color:#071b41;max-width:700px;font:400 clamp(47px, 4.5vw, 68px)/1.04 var(--serif);letter-spacing:-.025em;margin:0 0 20px}.restaurant-story-copy>p:not(.restaurant-story-eyebrow){color:#667080;max-width:740px;font:400 16px/1.65 var(--serif);margin:0 0 15px}.restaurant-story-values{border-top:1px solid #d8d0c2;grid-area:values;grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0 0;padding:0;list-style:none;display:grid}.restaurant-story-values li{grid-template-columns:34px minmax(0,1fr);align-content:start;gap:12px;padding:13px 11px 0 0;display:grid}.restaurant-story-values li+li{border-left:1px solid #d8d0c2;padding-left:14px}.restaurant-story-values svg{fill:none;stroke:#d0a534;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35px;width:32px;height:32px;margin-top:1px}.restaurant-story-values li div{gap:5px;min-width:0;display:grid}.restaurant-story-values span{color:#667080;font:500 11px/1 var(--serif)}.restaurant-story-values strong{color:#27334d;letter-spacing:.13em;font-size:8px;font-weight:700;line-height:1.45}.restaurant-story-values p{color:#667080;font:400 13px/1.4 var(--serif);margin:0}.restaurant-story-actions{flex-wrap:wrap;grid-area:actions;gap:12px;margin-top:22px;display:flex}.restaurant-story-actions .button{letter-spacing:.15em;justify-content:space-between;gap:17px;min-width:214px;min-height:56px;padding:15px 19px;font-size:9px}.restaurant-story-actions .button span{font-size:15px;transition:transform .22s}.restaurant-story-actions .button:hover span,.restaurant-story-actions .button:focus-visible span{transform:translate(2px,-2px)}.restaurant-story-actions .button-outline-light{color:#071b41;border-color:#071b41}.restaurant-story-actions .button-outline-light:hover,.restaurant-story-actions .button-outline-light:focus-visible{color:#f8f5ed;background:#071b41;border-color:#071b41}@media (width<=900px){.restaurant-story{padding:84px 0 72px;scroll-margin-top:76px}.restaurant-story-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy""visual""values""actions";row-gap:0}.restaurant-story-copy{max-width:760px}.restaurant-story-copy h2{max-width:690px;font-size:clamp(48px,7vw,62px)}.restaurant-story-copy>p:not(.restaurant-story-eyebrow){max-width:730px}.restaurant-story-visual{width:min(100%,590px);height:510px;margin:28px auto 4px}.restaurant-story-year{width:36%}.restaurant-story-photo{width:63%}.restaurant-story-values{margin-top:18px}}@media (width<=767px){.restaurant-story{padding:92px 0 58px;scroll-margin-top:76px}.restaurant-story-layout{width:calc(100% - 40px)}.restaurant-story-eyebrow{letter-spacing:.19em;margin-bottom:12px;font-size:9px}.restaurant-story-copy h2{margin-bottom:16px;font-size:clamp(36px,10vw,44px);line-height:1.02}.restaurant-story-copy>p:not(.restaurant-story-eyebrow){margin-bottom:12px;font-size:15px;line-height:1.62}.restaurant-story-visual{height:clamp(355px,100vw,430px);margin-top:20px}.restaurant-story-year{width:39%;padding:30px 0 14px 14px;top:9%}.restaurant-story-year>span:first-child{font-size:8px}.restaurant-story-year strong{font-size:clamp(69px,21vw,94px)}.restaurant-story-year>span:nth-of-type(2){letter-spacing:.11em;margin-top:10px;font-size:6px}.restaurant-story-year i{width:42px;margin-top:14px}.restaurant-story-photo{width:61%;top:0;right:0}.restaurant-story-note{outline-width:6px;gap:7px;width:min(63%,275px);padding:14px 15px 13px;bottom:53px;left:2%}.restaurant-story-note>span{font-size:6px}.restaurant-story-note strong{font-size:clamp(14px,4vw,17px)}.restaurant-story-caption{font-size:clamp(21px,6vw,26px);bottom:5px;left:11%}.restaurant-story-values{grid-template-columns:1fr;margin-top:9px}.restaurant-story-values li{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:13px 3px 12px}.restaurant-story-values li+li{border-top:1px solid #d8d0c2;border-left:0;padding-left:3px}.restaurant-story-values svg{width:29px;height:29px}.restaurant-story-values li div{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 10px}.restaurant-story-values span{text-align:right;grid-area:1/2}.restaurant-story-values strong{grid-area:1/1;font-size:8px}.restaurant-story-values p{grid-column:1/-1;font-size:13px}.restaurant-story-actions{grid-template-columns:1fr;gap:8px;margin-top:17px;display:grid}.restaurant-story-actions .button{width:100%;min-height:54px}}.location{grid-template-columns:minmax(280px,.85fr) minmax(400px,1.15fr);align-items:center;gap:clamp(32px,6vw,88px);display:grid}.location-copy{padding-left:clamp(0px,3vw,48px)}.location-copy h2{max-width:520px}.location-kicker{color:var(--gold-ink);letter-spacing:.16em;text-transform:uppercase;margin:-8px 0 23px;font-size:10px;font-weight:700}.contact-lines{border-top:1px solid var(--line);color:var(--navy);margin:31px 0 0;font-size:13px;font-weight:600;display:grid}.contact-lines a{border-bottom:1px solid var(--line);grid-template-columns:92px 1fr;gap:16px;padding:13px 0;display:grid}.contact-lines a span{color:var(--gold-ink);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.contact-lines a:hover,.contact-lines a:focus-visible{color:var(--gold-ink)}.location-card{position:relative}.location-maps{gap:14px;display:grid}.map-frame{height:clamp(340px,34vw,480px);box-shadow:var(--shadow);background:#d9d5c9;position:relative;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.map-provider{z-index:2;background:var(--navy);color:var(--paper);letter-spacing:.14em;text-transform:uppercase;padding:9px 11px;font-size:9px;font-weight:700;position:absolute;top:14px;left:14px;box-shadow:0 8px 22px #07194233}.waze-link{background:var(--navy);color:var(--paper);letter-spacing:.12em;text-transform:uppercase;justify-self:start;align-items:center;gap:12px;padding:13px 15px;font-size:10px;font-weight:700;transition:transform .25s,background .25s,color .25s;display:inline-flex}.waze-link:hover,.waze-link:focus-visible{background:var(--gold);color:var(--navy);transform:translateY(-2px)}.final-cta{padding:var(--section-space) 0;background:var(--paper-deep)}.final-cta-inner{text-align:center}.final-cta h2{max-width:700px;margin:0 auto 17px}.final-cta p:not(.eyebrow){color:var(--muted);margin-bottom:30px}.final-cta-home{background:var(--paper-deep);color:var(--ink);border-top:1px solid #07194214;border-bottom:1px solid #07194224;position:relative;overflow:hidden}.final-cta-home:before{content:"Cañas";color:#0719420b;font:500 clamp(170px, 25vw, 370px)/.72 var(--serif);letter-spacing:-.08em;pointer-events:none;position:absolute;bottom:-66px;right:-34px}.final-cta-home .final-cta-inner{z-index:1;text-align:left;grid-template-columns:minmax(0,.95fr) minmax(310px,.8fr);align-items:center;gap:clamp(55px,9vw,135px);display:grid;position:relative}.final-cta-home .final-cta-copy{padding-left:clamp(0px,3vw,48px)}.final-cta-home h2{max-width:610px;color:var(--navy);margin:0 0 23px;font-size:clamp(52px,5.8vw,82px);line-height:.86}.final-cta-home p:not(.eyebrow){max-width:430px;color:var(--muted);margin-bottom:31px;font-size:16px;line-height:1.7}.final-cta-actions{flex-wrap:wrap;align-items:center;gap:27px;display:flex}.final-cta-home .text-link-light{color:var(--navy);border-color:#07194261}.final-cta-visual{max-width:490px;margin:0 0 0 auto;padding:0 0 28px 28px;position:relative}.final-cta-visual:before{content:"";border:1px solid #d4ad3f9e;position:absolute;inset:28px 0 0}.final-cta-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#07194273);position:absolute;inset:0 0 28px 28px}.final-cta-visual img{z-index:1;aspect-ratio:.92;object-fit:cover;filter:saturate(.78)contrast(1.03);width:100%;transition:transform .75s cubic-bezier(.2,.7,.2,1);position:relative}.final-cta-visual:hover img{transform:scale(1.035)}.final-cta-visual figcaption{z-index:2;color:#ffffffde;letter-spacing:.13em;text-align:right;text-transform:uppercase;font-size:10px;line-height:1.5;position:absolute;bottom:47px;right:17px}.site-footer{background:var(--navy);color:#fff;padding:44px 0 18px;position:relative;overflow:hidden}.site-footer:before{content:"Hotel Cañas";color:#ffffff09;font:500 clamp(125px, 19vw, 280px)/.72 var(--serif);letter-spacing:-.08em;pointer-events:none;white-space:nowrap;position:absolute;bottom:-54px;right:-55px}.footer-grid{z-index:1;grid-template-columns:minmax(230px,1.35fr) minmax(135px,.65fr) minmax(300px,1.25fr);gap:clamp(28px,5.5vw,80px);padding-bottom:28px;display:grid;position:relative}.footer-brand .footer-wordmark{margin-bottom:8px}.footer-logo-frame{place-items:center;width:72px;height:72px;display:grid}.footer-brand p{color:#ffffffb8;max-width:300px;margin:0;font-size:14px;line-height:1.5}.footer-place{letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold)!important;margin-top:10px!important;font-size:11px!important;line-height:1.5!important}.footer-nav{color:#ffffffb3;align-content:start;gap:7px;font-size:13px;display:grid}.footer-nav a,.footer-contact a{transition:color .25s,transform .25s}.footer-nav a:hover,.footer-nav a:focus-visible,.footer-contact a:hover,.footer-contact a:focus-visible{color:var(--gold)}.footer-label{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:700}.footer-contact{color:#ffffffb3;border-left:1px solid #d4ad3f8c;align-content:start;gap:8px;padding-left:clamp(20px,2.6vw,35px);font-size:13px;display:grid}.footer-contact-link{align-items:baseline;gap:12px;display:flex}.footer-contact-link span{color:#ffffff9e;letter-spacing:.1em;text-transform:uppercase;flex:0 0 62px;font-size:10px;font-weight:700}.footer-socials{letter-spacing:.1em;text-transform:uppercase;border-top:1px solid #ffffff29;gap:16px;margin-top:8px;padding-top:11px;font-size:11px;font-weight:600;display:flex}.footer-socials a span{margin-left:5px;transition:transform .25s;display:inline-block}.footer-socials a:hover span,.footer-socials a:focus-visible span{transform:translate(2px,-2px)}.footer-booking{gap:14px;width:fit-content;min-height:41px;margin-top:12px;padding:10px 14px;font-size:10px}.footer-bottom{z-index:1;color:#ffffff9e;letter-spacing:.06em;text-transform:uppercase;border-top:1px solid #fff3;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;grid-template-areas:"copyright tagline moderation";align-items:center;gap:12px clamp(12px,2vw,28px);padding-top:12px;font-size:10px;line-height:1.5;display:grid;position:relative}.footer-copyright{grid-area:copyright}.footer-bottom-tagline{text-align:center;grid-area:tagline}.footer-moderation{color:#ffffff94;white-space:nowrap;grid-area:moderation;justify-self:end;align-items:center;gap:8px;display:inline-flex}.footer-moderation a{border-radius:3px;justify-content:center;align-items:center;min-height:38px;transition:opacity .2s;display:inline-flex}.footer-moderation a:hover{opacity:.82}.footer-moderation img{object-fit:contain;width:64px;height:auto;display:block}.reveal{opacity:1;transform:none}.has-motion .reveal:not(.is-visible){opacity:0;transform:translateY(22px)}:focus-visible{outline:2px solid var(--gold-ink);outline-offset:4px}.hero :focus-visible,.restaurant :focus-visible,.site-footer :focus-visible,.room-more-panel :focus-visible,.price-panel :focus-visible,.reservations-page .reservation-room-card:nth-child(2n) :focus-visible,.mobile-nav :focus-visible,.site-header:not(.scrolled) :focus-visible{outline-color:var(--gold)}.error-page{background:var(--paper);min-height:100dvh;color:var(--navy);place-items:center;display:grid;position:relative;overflow:hidden}.error-page:before{content:"";filter:blur(11px);opacity:.42;pointer-events:none;background-color:#4148371c;width:620px;height:760px;position:absolute;bottom:-280px;right:-230px;-webkit-mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat;mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat}.error-page-inner{z-index:1;width:var(--shell);position:relative}.error-page h1{max-width:640px}.error-page .body-copy{color:var(--muted);margin-bottom:30px}@media (width<=1180px) and (width>=901px){.header-shell{width:var(--shell);gap:22px}.site-nav{letter-spacing:.1em;gap:clamp(12px,1.55vw,18px);font-size:11px}.nav-booking{padding-left:20px!important;padding-right:20px!important}}@media (width<=900px){:root{--shell:min(100% - 48px, 840px);--section-space:clamp(78px, 9vw, 96px)}.header-shell{width:var(--shell);justify-content:center;min-height:76px}.brand-logo-frame{width:68px;height:68px}.menu-toggle,.site-nav{display:none}.mobile-nav{z-index:30;padding:8px 10px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#071942f5;border-top:1px solid #ffffff1f;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -14px 40px #0719424d}.mobile-nav a,.mobile-nav button{color:#f5f1e894;min-width:0;font:700 8px/1 var(--sans);letter-spacing:.1em;text-align:center;text-transform:uppercase;background:0 0;border:0;justify-items:center;gap:5px;padding:3px 2px 4px;transition:color .25s,transform .25s,background .25s;display:grid}.mobile-nav a:hover,.mobile-nav a:focus-visible,.mobile-nav button:hover,.mobile-nav button:focus-visible,.mobile-nav a.is-active,.mobile-nav button.is-active{color:var(--gold)}.mobile-nav a:active,.mobile-nav button:active{transform:scale(.96)}.mobile-nav-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:25px;height:25px;transition:transform .25s,color .25s}.mobile-nav a.is-active .mobile-nav-icon,.mobile-nav button.is-active .mobile-nav-icon{transform:translateY(-1px)}.mobile-nav-booking{border-radius:50%;width:72px;height:72px;position:relative;box-shadow:0 5px 20px #d4ad3f6b;border:5px solid var(--navy)!important;background:var(--gold)!important;color:var(--navy)!important;margin:-27px auto -1px!important;padding:9px 4px 7px!important}.mobile-nav-booking .mobile-nav-icon{stroke-width:1.8px;width:29px;height:29px;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-nav-booking span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mobile-nav-menu-toggle{cursor:pointer}.site-nav.is-open{right:16px;bottom:calc(69px + env(safe-area-inset-bottom));z-index:29;background:var(--paper);color:var(--navy);opacity:1;pointer-events:auto;border:1px solid #07194221;gap:0;padding:14px 20px;display:grid;position:fixed;left:16px;transform:none;box-shadow:0 -12px 35px #07194238}.site-nav.is-open a{border-bottom:1px solid var(--line);padding:12px 0}.site-nav.is-open a:last-child{text-align:center;border:0;margin-top:10px}.site-nav.is-open .language-switcher{border-top:1px solid var(--line);border-left:0;justify-content:center;gap:8px;margin:12px 0 2px;padding:12px 0 0}.site-nav.is-open .language-option{color:var(--muted);border:0;font-size:10px;padding:0!important}.site-nav.is-open .language-option.is-active{border:1px solid var(--gold);color:var(--navy)}.site-nav.is-open .language-switcher a:last-child{text-align:center;border:0;margin-top:0}.site-footer{padding-bottom:calc(18px + 76px + env(safe-area-inset-bottom))}.hero{min-height:max(680px,100svh)}.hero-content{width:var(--shell);padding:120px 0 64px}.hero h1{max-width:620px;font-size:clamp(58px,8.5vw,78px)}.hero-meta{margin-top:48px}.intro,.comfort,.location{grid-template-columns:1fr;gap:62px}.hotel-intro-shell{width:var(--shell);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:24px 36px}.hotel-intro-copy{padding-left:0}.hotel-intro-copy h2{font-size:clamp(49px,6.3vw,64px)}.hotel-intro .body-copy{font-size:16px}.hotel-intro-visual{height:clamp(400px,50vw,470px)}.hotel-intro-image-detail{width:clamp(190px,22vw,220px);bottom:-42px;left:-26px}.hotel-intro-fact{gap:10px;padding-right:12px}.hotel-intro-fact+.hotel-intro-fact{padding-left:12px}.hotel-intro-fact>svg{flex-basis:28px;width:28px;height:28px}.hotel-intro-fact-copy strong{font-size:clamp(38px,5.5vw,46px)}.hotel-intro-fact-label{letter-spacing:.08em;font-size:9px}.hotel-intro-fact-copy p{font-size:13px}.room-detail-hero{grid-template-columns:1fr;gap:62px;min-height:auto;padding-top:125px}.room-detail-copy{padding-left:0}.room-detail-copy h1{max-width:650px}.room-detail-visual{max-width:580px;margin-left:auto}.room-detail-image{max-width:none;margin-left:0}.room-detail-content{grid-template-columns:1fr;gap:70px}.room-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-panel{max-width:700px}.listing-hero{min-height:auto;padding-top:125px}.listing-hero h1{max-width:650px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 28px}.about-hero,.reservation-hero{grid-template-columns:1fr;gap:62px;min-height:auto;padding-top:125px}.about-hero-copy,.reservation-hero-copy{padding-left:0}.about-hero-image,.reservation-hero-image{max-width:580px;margin-left:auto}.about-story{grid-template-columns:1fr;gap:62px}.service-grid{grid-template-columns:repeat(2,1fr)}.reservation-grid{grid-template-columns:1fr}.intro-copy{padding-left:0}.intro-image-wrap{max-width:580px;margin-left:auto}.numbers-shell{grid-template-columns:minmax(160px,.5fr) minmax(0,1.5fr);gap:28px}.numbers-intro h2{max-width:205px}.rooms .section-heading{margin-bottom:52px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-feature:last-child{grid-column:auto;max-width:none}.room-more-panel{grid-column:1/-1;margin-top:0}.room-offset{margin-top:30px}.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:28px 24px;padding-bottom:24px}.footer-brand{grid-column:1/-1}.final-cta-home .final-cta-inner{grid-template-columns:1fr;gap:58px}.final-cta-home .final-cta-copy{padding-left:0}.final-cta-visual{width:100%;max-width:580px;margin-left:auto}}@media (width<=1100px){.hotel-intro{padding:88px 0 100px}.hotel-intro:before{opacity:.52;width:430px;height:560px;top:-165px;left:-285px}.hotel-intro:after{opacity:.42;width:550px;height:690px;bottom:-340px;right:-295px}.hotel-intro-shell{width:var(--shell);grid-template-rows:auto;grid-template-columns:minmax(0,1fr);row-gap:0}.hotel-intro-copy{grid-area:auto/1;max-width:700px}.hotel-intro-copy h2{max-width:680px;margin-bottom:22px;font-size:clamp(56px,9vw,72px);line-height:.93}.hotel-intro .body-copy{max-width:620px;font-size:17px}.hotel-intro-divider{margin-top:27px}.hotel-intro-visual{aspect-ratio:1.34;grid-area:auto/1;height:auto;margin:30px 0 24px}.hotel-intro-image-main{aspect-ratio:1.48;height:auto}.hotel-intro-image-detail{width:min(285px,76%);margin:-42px 0 0 20px;position:relative;bottom:auto;left:auto;right:auto}.hotel-intro-image-detail img{aspect-ratio:1.12}.hotel-intro-facts{grid-area:auto/1}.restaurant{padding:94px 0 48px}.restaurant-shell{width:var(--shell)}.restaurant-standalone:after{opacity:.11;width:420px;right:-150px}.restaurant-layout{grid-template:"intro""main""features""actions""secondary""note"/minmax(0,1fr);gap:24px;padding-left:24px}.restaurant-intro{max-width:760px}.restaurant h1{font-size:clamp(58px,8vw,72px)}.restaurant-photo-main{aspect-ratio:1.72;min-height:0}.restaurant-meta,.restaurant-actions,.restaurant-secondary-gallery,.restaurant-reservation-note{max-width:760px}.restaurant-secondary-gallery{grid-template-rows:auto;grid-template-columns:1.2fr 1fr}.restaurant-photo-secondary{aspect-ratio:1.48;height:auto}.restaurant-actions{max-width:620px}.restaurant-more-gallery{margin-left:24px}}@media (width<=560px){:root{--shell:calc(100% - 40px);--section-space:68px}.site-footer{padding-top:36px}.footer-logo-frame{width:60px;height:60px}.header-shell{width:var(--shell)}.brand-logo-frame{width:62px;height:62px}h1{max-width:360px;font-size:clamp(55px,17vw,84px)}h2{font-size:clamp(43px,11vw,53px)}.hotel-intro{padding:76px 0 86px}.hotel-intro:before{display:none}.hotel-intro:after{filter:blur(10px);opacity:.36;width:370px;height:480px;bottom:-245px;right:-225px;transform:rotate(20deg)}.hotel-intro-shell{width:calc(100% - 40px)}.hotel-intro-eyebrow{letter-spacing:.16em;gap:12px;margin-bottom:5px;font-size:13px}.hotel-intro-eyebrow span{flex-basis:42px;width:42px}.hotel-intro-kicker{letter-spacing:.17em;margin:0 0 22px 54px;font-size:10px}.hotel-intro-copy h2{margin-bottom:18px;font-size:clamp(42px,12vw,58px);line-height:.96}.hotel-intro .body-copy{font-size:16px;line-height:1.62}.hotel-intro-divider{margin-top:24px}.hotel-intro-visual{margin-top:26px}.hotel-intro-image-main{aspect-ratio:1.2}.hotel-intro-image-main img{object-position:58% center}.hotel-intro-image-detail{width:min(260px,84%);margin:-34px 0 0 12px;padding:8px 8px 11px}.hotel-intro-image-detail figcaption{padding:9px 6px 0;font-size:8px}.hotel-intro-facts{grid-template-columns:minmax(0,1fr);row-gap:18px}.hotel-intro-fact{gap:14px;padding:0 0 17px}.hotel-intro-fact+.hotel-intro-fact{border-top:1px solid #17203a2e;border-left:0;padding:17px 0 0}.hotel-intro-fact>svg{flex-basis:32px;width:32px;height:32px;margin-top:3px}.hotel-intro-fact-copy strong{font-size:47px}.hotel-intro-fact-label{letter-spacing:.11em;margin-bottom:4px;font-size:10px}.hotel-intro-fact-copy p{max-width:none;font-size:14px}.hero{align-items:flex-end;min-height:100svh}.hero-image{object-position:66% center}.hero-wash{background:linear-gradient(90deg,#051b3feb 0%,#051b3fcc 60%,#051b3f6b 100%),linear-gradient(#051b3f1f 25%,#051b3f9e 100%)}.hero-content{width:var(--shell);padding:110px 0 calc(112px + env(safe-area-inset-bottom))}.hero-eyebrow{letter-spacing:.14em;gap:10px;margin-bottom:20px;font-size:9px}.hero-eyebrow:before{flex-basis:20px;width:20px}.hero h1{max-width:100%;margin-bottom:18px;font-size:clamp(46px,13vw,58px);line-height:.98}.hero-lede{max-width:440px;margin-bottom:25px;font-size:16px;line-height:1.5}.hero-actions{justify-items:start;gap:19px;display:grid}.hero-actions .button{width:100%;min-height:56px;padding:15px 21px}.hero-actions .text-link{font-size:10px}.hero-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;margin-top:34px;font-size:11px;display:grid}.hero-benefit,.hero-benefit:first-child,.hero-benefit:last-child{border:0;gap:8px;min-height:27px;padding:0}.hero-benefit svg{width:23px;height:23px}.hero-benefit:nth-child(3){grid-column:1/-1}.numbers-shell{grid-template-columns:1fr;gap:30px;padding:42px 0 48px}.numbers-intro h2{max-width:230px;font-size:37px}.numbers-grid{grid-template-columns:repeat(2,1fr)}.number-item,.number-item:first-child,.number-item:last-child{min-height:0;padding:16px 13px}.number-item:nth-child(2),.number-item:nth-child(4){border-right:0}.number-item:first-child,.number-item:nth-child(2){border-bottom:1px solid #ffffff38}.number-item strong{font-size:43px}.number-label{letter-spacing:.1em;font-size:9px}.split-heading{display:block}.heading-note{margin-top:24px}.section-heading{margin-bottom:48px}.rooms .section-heading{margin-bottom:43px;padding-bottom:27px}.room-grid{display:block}.room-feature,.room-feature:last-child{max-width:none;margin:0 0 54px}.room-offset{margin-top:0}.room-feature:last-child{margin-bottom:0}.room-more-panel{margin-top:-16px;padding:27px 19px 24px}.room-more-panel h3{font-size:35px}.room-more-intro{font-size:13px}.room-tags a{font-size:12px}.room-detail-hero{width:100%;padding-top:110px;padding-bottom:65px}.back-link{margin-bottom:38px}.room-detail-copy h1{font-size:clamp(55px,17vw,84px)}.listing-hero,.about-hero,.reservation-hero{width:100%;padding-top:110px;padding-bottom:65px}.listing-hero h1,.about-hero h1,.reservation-hero h1{font-size:clamp(55px,17vw,84px)}.collection-grid{display:block}.collection-card{margin-bottom:64px}.collection-card:last-child{margin-bottom:0}.collection-card-copy>p:not(.room-type){min-height:0}.about-hero-image,.reservation-hero-image{padding-right:20px}.about-hero-image:before,.reservation-hero-image:before{inset:20px 0 0 20px}.service-grid{grid-template-columns:1fr}.about-facts div{min-height:130px;padding:18px}.reservation-room-card{padding:18px 14px}.reservation-room-head{grid-template-columns:100px 1fr;gap:15px}.reservation-room-head img{width:100px;height:100px}.reservation-room-head h3{font-size:27px}.room-detail-lede{font-size:16px}.room-detail-image{padding-right:20px}.room-detail-image:before{inset:20px 0 0 20px}.room-detail-label{padding:11px 13px;font-size:9px}.room-detail-thumbnails .gallery-thumb{flex-basis:70px;width:70px;height:60px}.room-detail-thumbnails{scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.room-detail-content{gap:56px}.room-gallery-grid{display:block}.room-gallery-item{margin-bottom:18px}.room-gallery-item:last-child{margin-bottom:0}.room-feature-grid{grid-template-columns:1fr}.price-panel{padding:30px 20px 32px}.gallery-lightbox{padding:16px}.gallery-lightbox-dialog{grid-template-columns:32px minmax(0,1fr) 32px;max-height:calc(100dvh - 32px)}.gallery-lightbox-nav{width:30px;height:42px;font-size:18px}.gallery-lightbox-close{width:36px;height:36px;font-size:25px;top:-14px;right:-8px}.gallery-lightbox-figure img{max-height:calc(100dvh - 120px)}.room-image img{aspect-ratio:1.08}.comfort-media{max-width:520px;padding:0 20px 44px 28px}.comfort-image{max-width:none}.comfort-media:before{inset:20px 0 0 20px}.comfort-detail{width:180px}.feature-list{margin-top:30px}.location-copy{padding-left:0}.location-card{min-height:auto}.location-maps{gap:12px}.map-frame{height:320px}.contact-lines a{grid-template-columns:78px 1fr;gap:12px}.map-provider{padding:8px 10px;top:12px;left:12px}.waze-link{padding:11px 12px;font-size:9px}.final-cta-home{padding:80px 0 88px}.final-cta-home h2{font-size:53px}.final-cta-actions{flex-direction:column;align-items:flex-start;gap:21px}.final-cta-visual{padding:0 0 20px 20px}.final-cta-visual:before{inset:20px 0 0}.final-cta-visual:after{inset:0 0 20px 20px}.final-cta-visual figcaption{font-size:9px;bottom:34px;right:13px}.footer-grid{grid-template-columns:1fr;gap:22px;padding-bottom:20px}.footer-brand{grid-column:auto}.footer-contact{border-top:1px solid #d4ad3f8c;border-left:0;padding:14px 0 0}.footer-booking{justify-content:space-between;width:100%}.footer-bottom{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copyright moderation""tagline tagline";align-items:center;gap:5px 12px}.footer-bottom-tagline{text-align:left}.footer-moderation{gap:6px}.footer-moderation a{min-height:34px}.footer-moderation img{width:52px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal,.has-motion .reveal:not(.is-visible){opacity:1;transform:none}}@media (width<=560px){.restaurant{padding:88px 0 42px}.restaurant-standalone:after{display:none}.restaurant-layout{gap:20px;padding-left:15px}.restaurant-layout:before{top:0}.restaurant-location{letter-spacing:.12em;gap:9px;margin-bottom:16px;font-size:8px}.restaurant-location span{flex-basis:28px;width:28px}.restaurant-logo{width:min(175px,100%);margin-bottom:13px}.restaurant h1{margin-bottom:13px;font-size:clamp(39px,11vw,48px);line-height:.94}.restaurant-lede{font-size:14px;line-height:1.6}.restaurant-photo-main{aspect-ratio:1.23;border-radius:8px}.restaurant-photo-callout{letter-spacing:.13em;grid-template-columns:25px auto;column-gap:8px;font-size:8px;top:17px;right:12px}.restaurant-photo figcaption{gap:8px;padding:12px 13px 14px;font-size:8px}.restaurant-photo figcaption:before{flex-basis:22px;width:22px}.restaurant-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.restaurant-feature{letter-spacing:.045em;flex-direction:column;align-items:flex-start;gap:5px;padding:0 6px;font-size:7px}.restaurant-feature:first-child{padding-left:0}.restaurant-feature-icon{flex-basis:27px;width:27px;height:27px}.restaurant-actions{grid-template-columns:minmax(0,1fr);gap:9px}.restaurant-actions .button{width:100%;min-height:54px;padding:14px 18px}.restaurant-secondary-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.restaurant-photo-secondary{aspect-ratio:1.02;border-radius:8px}.restaurant-reservation-note{grid-template-columns:27px minmax(0,1fr) 12px;gap:9px;padding:13px 12px}.restaurant-calendar-icon{width:25px;height:25px}.restaurant-reservation-copy h2{font-size:9px}.restaurant-reservation-copy p{font-size:10px}.restaurant-more-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:30px 0 0 15px}.restaurant-photo-more{aspect-ratio:1.08;border-radius:8px}.price-table-wrap{overflow:visible}.price-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;min-width:0;font-size:13px}.price-table thead{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.price-table tbody{gap:10px;display:grid}.price-table tbody tr{background:#17203a09;border:1px solid #17203a24;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;padding:12px;display:grid}.price-table tbody th{border-bottom:1px solid #17203a26;grid-column:1/-1;font-size:14px;font-weight:700;text-align:left!important;padding:0 0 8px!important}.price-table tbody td{text-align:left;border:0;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;font-size:14px;font-weight:700;display:flex;padding:7px 2px 0!important}.price-table tbody td:before{content:attr(data-label);color:var(--gold-ink);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:700;line-height:1.35}.reservations-page .reservation-room-card:nth-child(2n) .price-table tbody tr,.room-page .price-panel .price-table tbody tr{background:#f5f1e80f;border-color:#f5f1e82e}.reservations-page .reservation-room-card:nth-child(2n) .price-table tbody th,.room-page .price-panel .price-table tbody th{border-color:#f5f1e833}.reservations-page .reservation-room-card:nth-child(2n) .price-table tbody td:before,.room-page .price-panel .price-table tbody td:before{color:var(--gold)}}.internal-hero{width:100%;max-width:none;min-height:730px;color:var(--navy);isolation:isolate;background:linear-gradient(132deg,#faf7f0 0%,#f1ebdd 100%);margin:0;padding:162px max(32px,50vw - 660px) 92px;position:relative;overflow:hidden}.internal-hero:before,.internal-hero:after{content:"";z-index:0;filter:blur(11px);opacity:.42;pointer-events:none;-webkit-user-select:none;user-select:none;background-color:#4148371c;position:absolute;-webkit-mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat;mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat}.internal-hero:before{opacity:.48;width:500px;height:650px;top:-165px;left:-245px;transform:rotate(-16deg)}.internal-hero:after{opacity:.38;width:600px;height:740px;bottom:-285px;right:-230px;transform:rotate(19deg)}.internal-hero>*{z-index:1;position:relative}.internal-hero .back-link{color:var(--muted)}.internal-hero .back-link:hover,.internal-hero .back-link:focus-visible,.internal-hero .eyebrow{color:var(--gold-ink)}.internal-hero h1,.internal-hero .listing-lede,.internal-hero .room-detail-lede{color:var(--navy)}.internal-hero h1{letter-spacing:-.045em;max-width:760px;margin-bottom:25px;font-size:clamp(58px,6.4vw,90px);line-height:.9}.internal-hero .listing-lede,.internal-hero .room-detail-lede{max-width:560px;color:var(--muted)}.internal-hero .text-link-light{color:var(--navy);border-color:#07194257}.internal-hero .about-hero-copy,.internal-hero .reservation-hero-copy,.internal-hero .room-detail-copy{padding-left:0}.internal-hero .about-hero-image,.internal-hero .reservation-hero-image,.internal-hero .room-detail-visual{z-index:1;position:relative}.internal-hero .about-hero-image:before,.internal-hero .reservation-hero-image:before,.internal-hero .room-detail-image:before{border-color:#d4ad3f94}.internal-hero .about-hero-image img,.internal-hero .reservation-hero-image img,.internal-hero .room-detail-image img{box-shadow:0 28px 72px #07194221}.internal-hero .room-detail-copy h1{color:var(--navy)}.internal-hero .room-detail-label{background:var(--gold);color:var(--navy)}.about-page .internal-story{position:relative}.about-page .internal-story:before{content:"1944";z-index:-1;color:#0719420b;font:500 clamp(150px, 23vw, 330px)/.7 var(--serif);letter-spacing:-.09em;pointer-events:none;position:absolute;bottom:0;right:-3vw}.about-page .about-story-copy{padding-left:clamp(0px,3vw,48px)}.about-page .about-facts{background:var(--navy);color:var(--paper);border-color:#f5f1e82e;box-shadow:0 28px 70px #07194229}.about-page .about-facts div{border-color:#f5f1e82e}.about-page .about-facts span{color:var(--gold)}.about-page .about-facts p{color:#f5f1e8a8}.about-page .about-services{background:var(--paper-deep);position:relative;overflow:hidden}.about-page .about-services:before{content:"Hotel Cañas";color:#0719420b;font:500 clamp(120px, 20vw, 270px)/.72 var(--serif);letter-spacing:-.08em;white-space:nowrap;pointer-events:none;position:absolute;bottom:-57px;right:-36px}.about-page .about-services .section-shell{z-index:1;position:relative}.about-page .service-grid{border-color:#17203a2e;grid-template-columns:repeat(12,minmax(0,1fr))}.about-page .service-grid article{background:#f5f1e857;border-color:#17203a2e;min-height:255px;transition:background .3s,transform .3s}.about-page .service-grid article:first-child{grid-column:span 5}.about-page .service-grid article:nth-child(2),.about-page .service-grid article:nth-child(3){grid-column:span 7}.about-page .service-grid article:nth-child(4){grid-column:span 5}.about-page .service-grid article:hover{background:var(--paper);transform:translateY(-4px)}.collection-page .listing-hero{background:linear-gradient(132deg,#faf7f0 0%,#f1ebdd 100%);min-height:570px;padding-top:150px;padding-bottom:76px}.collection-page .listing-hero:before{display:block}.collection-page .listing-section{padding-top:var(--section-space)}.collection-page .listing-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:40px;max-width:none;margin-bottom:60px;padding-bottom:30px;display:flex}.collection-page .listing-heading h2{max-width:650px}.collection-page .collection-grid{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:64px 44px}.collection-page .collection-card{min-width:0}.collection-page .collection-card:nth-child(2n){margin-top:52px}.collection-page .collection-card-image{background:0 0;padding-right:25px;position:relative;overflow:visible}.collection-page .collection-card-image:after{content:"";z-index:-1;pointer-events:none;border:1px solid #9c7d277a;position:absolute;inset:25px 0 0 25px}.collection-page .collection-card-image img{aspect-ratio:1.08;box-shadow:0 25px 70px #0719421c}.collection-page .collection-card-gallery{margin:14px 0 0;padding-left:25px}.collection-page .collection-card-copy{border-top:1px solid var(--line);max-width:590px;padding:27px 0 0 25px}.collection-page .collection-card-copy h3{font-size:clamp(38px,4vw,55px)}.collection-page .collection-card-copy>p:not(.room-type){max-width:500px;min-height:0;margin-bottom:24px;font-size:15px;line-height:1.75}.reservations-page .reservation-list{width:100%;max-width:none;padding:var(--section-space) max(32px, calc((100vw - 1320px) / 2));background:var(--paper-deep)}.reservations-page .reservation-list .section-heading{max-width:980px}.reservations-page .reservation-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:30px}.reservations-page .reservation-room-card{border-top:2px solid var(--gold);background:var(--paper);grid-column:span 6;min-width:0;padding:29px;transition:transform .3s,box-shadow .3s;box-shadow:0 24px 60px #07194214}.reservations-page .reservation-room-card:nth-child(3n){grid-column:2/span 6}.reservations-page .reservation-room-card:hover{transform:translateY(-3px);box-shadow:0 30px 75px #07194224}.reservations-page .reservation-room-head{grid-template-columns:170px 1fr;gap:26px;margin-bottom:28px}.reservations-page .reservation-room-head img{filter:saturate(.84);width:170px;height:170px}.reservations-page .reservation-room-head h3{font-size:clamp(34px,3.2vw,48px)}.reservations-page .reservation-room-card:nth-child(2n){background:var(--navy);color:var(--paper)}.reservations-page .reservation-room-card:nth-child(2n) .room-type,.reservations-page .reservation-room-card:nth-child(2n) .price-table thead th{color:var(--gold)}.reservations-page .reservation-room-card:nth-child(2n) .price-table{color:var(--paper)}.reservations-page .reservation-room-card:nth-child(2n) .price-table th,.reservations-page .reservation-room-card:nth-child(2n) .price-table td{border-color:#f5f1e833}.reservations-page .reservation-room-card:nth-child(2n) .price-unavailable{color:#f5f1e8b3;background:#f5f1e81a}.reservations-page .reservation-note{max-width:760px}.room-page .room-detail-content{padding-top:var(--section-space)}.room-page .room-amenities{padding-left:clamp(0px,3vw,48px)}.room-page .price-panel{background:var(--navy);color:var(--paper);box-shadow:0 26px 70px #07194229}.room-page .price-panel .eyebrow,.room-page .price-panel .price-table thead th{color:var(--gold)}.room-page .price-panel .price-intro,.room-page .price-panel .price-note{color:#f5f1e8ad}.room-page .price-panel .price-table{color:var(--paper)}.room-page .price-panel .price-table th,.room-page .price-panel .price-table td{border-color:#f5f1e833}.room-page .price-panel .price-unavailable{color:#f5f1e8b8;background:#f5f1e81a}.room-page .room-gallery{padding-top:var(--section-space)}.room-page .room-gallery-item{background:var(--navy)}.room-page .room-gallery-item img{filter:saturate(.88)}.internal-final-cta{margin-top:0}.internal-final-cta .final-cta-inner{min-height:540px}@media (width<=900px){.internal-hero{min-height:auto;padding:140px max(20px,50vw - 420px) 80px}.internal-hero:before{opacity:.4;width:390px;height:510px;inset:-150px auto auto -250px}.internal-hero:after{opacity:.34;width:470px;height:590px;bottom:-300px;right:-285px}.internal-hero h1{max-width:650px;font-size:clamp(56px,8vw,76px)}.about-page .about-story-copy,.room-page .room-amenities{padding-left:0}.about-page .service-grid article:nth-child(n){grid-column:span 6}.collection-page .listing-heading{display:block}.collection-page .collection-grid{gap:60px 28px}.collection-page .collection-card:nth-child(2n){margin-top:34px}.reservations-page .reservation-list{padding:var(--section-space) max(20px, calc((100vw - 840px) / 2))}.reservations-page .reservation-room-card,.reservations-page .reservation-room-card:nth-child(3n){grid-column:span 6}.reservations-page .reservation-room-head{grid-template-columns:125px 1fr;gap:18px}.reservations-page .reservation-room-head img{width:125px;height:125px}.internal-final-cta .final-cta-inner{min-height:0}}@media (width<=560px){.internal-hero{padding:112px 20px 68px}.internal-hero:before{display:none}.internal-hero:after{filter:blur(10px);opacity:.34;width:350px;height:455px;bottom:-245px;right:-220px}.internal-hero h1{font-size:clamp(50px,14vw,68px);line-height:.94}.collection-page .listing-section{padding-top:92px}.collection-page .collection-grid{display:block}.collection-page .collection-card,.collection-page .collection-card:nth-child(2n){margin:0 0 70px}.collection-page .collection-card:last-child{margin-bottom:0}.reservations-page .reservation-list{padding:var(--section-space) 20px}.collection-page .collection-card-image{padding-right:20px}.collection-page .collection-card-image:after{inset:20px 0 0 20px}.collection-page .collection-card-gallery,.collection-page .collection-card-copy{padding-left:20px}.collection-page .collection-card-copy h3{font-size:43px}.reservations-page .reservation-grid{display:block}.reservations-page .reservation-room-card,.reservations-page .reservation-room-card:nth-child(3n){margin-bottom:22px}.reservations-page .reservation-room-card:last-child{margin-bottom:0}.reservations-page .reservation-room-head{grid-template-columns:100px 1fr}.reservations-page .reservation-room-head img{width:100px;height:100px}.reservations-page .reservation-room-head h3{font-size:29px}.room-page .room-detail-content{padding-top:88px}}@keyframes mobile-menu-enter{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=900px){.mobile-menu-backdrop{z-index:29;-webkit-backdrop-filter:blur(5px);background:#0719427a;animation:.22s both mobile-menu-backdrop-in;display:block;position:fixed;inset:0}.mobile-menu-backdrop[hidden]{display:none}body.mobile-menu-open{overflow:hidden}body.mobile-menu-open .site-header{z-index:31}body.mobile-menu-open .site-header.scrolled{-webkit-backdrop-filter:none;transition:none}.site-nav.is-open{z-index:32;right:14px;bottom:calc(82px + env(safe-area-inset-bottom));border:1px solid #d4ad3f7a;border-top:3px solid var(--gold);max-height:min(72vh,540px);color:var(--paper);background:#071942fb;gap:0;padding:0 16px 14px;animation:.24s cubic-bezier(.2,.7,.2,1) both mobile-menu-enter;display:grid;left:14px;overflow-y:auto;box-shadow:0 24px 70px #020a1d61,inset 0 0 0 1px #ffffff0a}.site-nav.is-open:before{content:"Hotel Cañas";color:var(--gold);font:500 27px/.9 var(--serif);letter-spacing:-.02em;border-bottom:1px solid #f5f1e829;padding:18px 4px 14px;display:block}.site-nav.is-open>a{color:#f5f1e8d4;letter-spacing:.16em;border-bottom:1px solid #f5f1e821;justify-content:space-between;align-items:center;min-height:48px;padding:12px 4px;font-size:10px;display:flex}.site-nav.is-open>a:not(.nav-booking):after{content:"↗";width:auto;height:auto;color:var(--gold);opacity:.8;background:0 0;font-size:14px;position:static;transform:none}.site-nav.is-open>a:not(.nav-booking):hover,.site-nav.is-open>a:not(.nav-booking):focus-visible{color:var(--gold)}.site-nav.is-open>.nav-booking{background:var(--gold);min-height:49px;color:var(--navy);border:0;justify-content:center;margin:15px 0 4px;font-size:10px;padding:13px 16px!important}.site-nav.is-open>.nav-booking:after{display:none}.site-nav.is-open .language-switcher{border-top:1px solid #f5f1e829;border-left:0;justify-content:center;gap:10px;margin:12px 0 0;padding:15px 0 2px}.site-nav.is-open .language-option,.site-nav.is-open .language-switcher a:last-child{color:#f5f1e89e;border:0;min-width:30px;height:30px;margin-top:0;font-size:10px;padding:0!important}.site-nav.is-open .language-option:hover,.site-nav.is-open .language-option:focus-visible,.site-nav.is-open .language-option.is-active{border:1px solid var(--gold);color:var(--gold)}}@keyframes mobile-menu-backdrop-in{0%{opacity:0}to{opacity:1}}.reservation-request-page{background:var(--paper);overflow:hidden}.reservation-request-hero{min-height:0;padding-top:132px;padding-bottom:92px;display:block}.reservation-request-intro{z-index:1;max-width:850px;position:relative}.reservation-request-intro h1{max-width:850px;margin-bottom:21px;font-size:clamp(58px,7.2vw,88px);line-height:.94}.reservation-request-intro .room-detail-lede{max-width:680px}.reservation-request-layout{z-index:1;grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);align-items:start;gap:clamp(30px,5vw,76px);margin-top:43px;display:grid;position:relative}.reservation-request-form{border-top:3px solid var(--gold);background:#ffffffbd;min-width:0;padding:clamp(26px,3.5vw,44px);box-shadow:0 24px 65px #0719421a}.reservation-request-form-heading{margin-bottom:21px}.reservation-request-form-heading .eyebrow{margin-bottom:9px}.reservation-request-form-heading h2{margin:0;font-size:clamp(38px,4vw,52px);line-height:.98}.reservation-request-notice{border-left:3px solid var(--gold);color:var(--navy);background:#d4ad3f1f;margin-bottom:25px;padding:16px 18px}.reservation-request-notice strong{margin-bottom:5px;font-size:13px;display:block}.reservation-request-notice p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.reservation-request-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 16px;display:grid}.reservation-request-field{min-width:0;color:var(--navy);letter-spacing:.04em;gap:8px;font-size:12px;font-weight:700;display:grid}.reservation-request-field-wide{grid-column:1/-1}.reservation-request-field input,.reservation-request-field select{width:100%;min-height:54px;color:var(--navy);font:500 15px/1.3 var(--sans);letter-spacing:0;background:#ffffffc7;border:1px solid #17203a33;border-radius:2px;padding:13px 14px}.reservation-request-field input:focus,.reservation-request-field select:focus{border-color:var(--gold-ink);outline-offset:1px;outline:2px solid #9c7d272e}.reservation-request-field input::placeholder{color:#17203a7a}.reservation-request-breakfast{border:0;min-width:0;margin:0;padding:0}.reservation-request-breakfast legend{color:var(--navy);letter-spacing:.04em;margin-bottom:9px;font-size:12px;font-weight:700}.reservation-breakfast-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.reservation-breakfast-choice{min-height:52px;color:var(--navy);cursor:pointer;background:#ffffff8c;border:1px solid #17203a33;align-items:center;gap:10px;padding:11px 13px;font-size:12px;font-weight:600;transition:border-color .2s,background .2s;display:flex}.reservation-breakfast-choice:has(input:checked){border-color:var(--gold-ink);background:#d4ad3f1f}.reservation-breakfast-choice input{width:17px;height:17px;accent-color:var(--gold-ink);flex:0 0 17px;margin:0}.reservation-request-contact-title{border-top:1px solid var(--line);margin-top:9px;padding-top:18px}.reservation-request-contact-title .eyebrow{margin:0}.reservation-request-estimate{background:var(--navy);color:var(--paper);margin-top:23px;padding:22px 23px 18px}.reservation-request-estimate-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.reservation-request-estimate-heading .eyebrow{white-space:nowrap;margin:0}.reservation-request-estimate-heading>p:last-child{color:#f5f1e8a8;text-align:right;max-width:300px;margin:0;font-size:11px;line-height:1.45}.reservation-request-estimate-details{border-bottom:1px solid #f5f1e82e;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;padding-bottom:14px;display:grid}.reservation-request-estimate-details div{gap:4px;display:grid}.reservation-request-estimate-details span,.reservation-request-estimate-total span{color:#f5f1e8a3;letter-spacing:.1em;text-transform:uppercase;font-size:10px}.reservation-request-estimate-details strong{font-size:14px;font-weight:600}.reservation-request-estimate-total{justify-content:space-between;align-items:baseline;gap:16px;padding-top:13px;display:flex}.reservation-request-estimate-total span{color:var(--gold);font-weight:700}.reservation-request-estimate-total strong{color:var(--paper);font:600 30px/.95 var(--serif);text-align:right}.reservation-request-no-charge{color:var(--muted);margin:13px 0 14px;font-size:11px;line-height:1.5}.reservation-request-submit{justify-content:space-between;width:100%;min-height:56px;padding:15px 18px;font-size:10px}.reservation-request-status{color:var(--navy);margin:12px 0 0;font-size:13px;line-height:1.5}.reservation-request-fallback{color:var(--gold-ink);text-underline-offset:3px;margin-top:9px;font-size:13px;font-weight:700;text-decoration:underline;display:inline-flex}.reservation-request-fallback[hidden]{display:none}.reservation-request-no-script{color:var(--muted);margin:13px 0 0;font-size:12px;line-height:1.5}.reservation-request-next{background:var(--navy);color:var(--paper);padding:31px 30px;position:sticky;top:112px;box-shadow:0 24px 65px #0719421f}.reservation-request-next>.eyebrow{margin-bottom:9px}.reservation-request-next h2{max-width:340px;color:var(--paper);margin-bottom:23px;font-size:clamp(36px,4vw,48px);line-height:.98}.reservation-request-next ol{gap:0;margin:0;padding:0;list-style:none;display:grid}.reservation-request-next li{border-top:1px solid #f5f1e82e;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:12px;padding:15px 0;display:grid}.reservation-request-next li>span{color:var(--gold);font:500 20px/1 var(--serif)}.reservation-request-next li p{color:#f5f1e8d1;margin:0;font-size:13px;line-height:1.5}.reservation-request-next-note{border-top:1px solid #f5f1e82e;margin-top:19px;padding-top:17px}.reservation-request-next-note strong{color:var(--gold);font-size:12px}.reservation-request-next-note p{color:#f5f1e8ad;margin:6px 0 0;font-size:12px;line-height:1.5}.reservation-request-phone{color:var(--paper);letter-spacing:.05em;margin-top:18px;font-size:13px;font-weight:700;display:inline-flex}.restaurant-reservation-dialog{width:min(640px,100% - 32px);max-width:none;max-height:min(92svh,850px);color:var(--navy);background:0 0;border:0;margin:auto;padding:0;position:fixed;inset:0;overflow:auto;box-shadow:0 30px 90px #07194247}.restaurant-reservation-dialog::backdrop{background:#041026c7}.restaurant-reservation-dialog-panel{border-top:3px solid var(--gold);background:var(--paper);padding:clamp(24px,4vw,42px)}.restaurant-reservation-dialog-heading{grid-template-columns:minmax(0,1fr) 40px;align-items:start;gap:20px;margin-bottom:22px;display:grid}.restaurant-reservation-dialog-heading .eyebrow{margin-bottom:10px}.restaurant-reservation-dialog-heading h2{color:var(--navy);margin:0 0 9px;font-size:clamp(38px,5vw,50px);line-height:.95}.restaurant-reservation-dialog-heading p:last-child{max-width:470px;color:var(--muted);margin:0;font-size:13px;line-height:1.55}.restaurant-reservation-close{width:40px;height:40px;color:var(--navy);cursor:pointer;font:400 27px/1 var(--sans);background:0 0;border:1px solid #17203a33;place-items:center;transition:background .2s,color .2s,border-color .2s;display:grid}.restaurant-reservation-close:hover,.restaurant-reservation-close:focus-visible{border-color:var(--navy);background:var(--navy);color:var(--paper)}.restaurant-reservation-dialog .reservation-request-notice{margin-bottom:20px}.restaurant-reservation-dialog .reservation-request-form{box-shadow:none;background:0 0;border:0;padding:0}.restaurant-reservation-dialog .reservation-request-fields{gap:15px 14px}.restaurant-reservation-dialog .reservation-request-field textarea{resize:vertical;width:100%;min-height:88px;color:var(--navy);font:500 15px/1.4 var(--sans);letter-spacing:0;background:#ffffffc7;border:1px solid #17203a33;border-radius:2px;padding:13px 14px}.restaurant-reservation-dialog .reservation-request-field textarea:focus{border-color:var(--gold-ink);outline-offset:1px;outline:2px solid #9c7d272e}.restaurant-reservation-dialog .reservation-request-field small{color:var(--muted);font-size:11px;font-weight:500}.restaurant-reservation-dialog .reservation-request-submit{margin-top:20px}.restaurant-reservation-dialog .reservation-request-status:empty{display:none}.restaurant-reservation-dialog .reservation-request-no-script a{color:var(--gold-ink);text-underline-offset:3px;font-weight:700;text-decoration:underline}@media (width<=900px){.reservation-request-hero{padding-top:124px;padding-bottom:76px}.reservation-request-intro{max-width:760px}.reservation-request-intro h1{font-size:clamp(58px,9vw,76px)}.reservation-request-layout{grid-template-columns:1fr;gap:24px;margin-top:34px}.reservation-request-form{max-width:760px}.reservation-request-next{max-width:760px;position:static}}@media (width<=560px){.reservation-request-hero{width:100%;padding-top:108px;padding-bottom:60px}.reservation-request-intro h1{font-size:clamp(48px,13vw,62px)}.reservation-request-intro .room-detail-lede{font-size:16px}.reservation-request-layout{gap:18px;margin-top:25px}.reservation-request-form{padding:22px 16px}.reservation-request-form-heading h2{font-size:39px}.reservation-request-notice{margin-bottom:20px;padding:14px}.reservation-request-notice p{font-size:12px}.reservation-request-fields{grid-template-columns:1fr;gap:14px}.reservation-request-field-wide{grid-column:auto}.reservation-request-contact-title{margin-top:5px}.reservation-request-breakfast{grid-column:auto}.reservation-breakfast-options{gap:8px}.reservation-breakfast-choice{gap:7px;min-height:50px;padding:10px 8px;font-size:11px}.reservation-request-estimate{margin-top:19px;padding:18px 15px 15px}.reservation-request-estimate-heading{gap:9px;display:grid}.reservation-request-estimate-heading>p:last-child{text-align:left}.reservation-request-estimate-total strong{font-size:27px}.reservation-request-next{padding:24px 20px}.reservation-request-next h2{font-size:39px}.restaurant-reservation-dialog{width:calc(100% - 24px);max-height:calc(100svh - 24px)}.restaurant-reservation-dialog-panel{padding:22px 18px}.restaurant-reservation-dialog-heading{grid-template-columns:minmax(0,1fr) 36px;gap:10px;margin-bottom:18px}.restaurant-reservation-dialog-heading h2{font-size:39px}.restaurant-reservation-close{width:36px;height:36px}.restaurant-reservation-dialog .reservation-request-fields{grid-template-columns:1fr;gap:13px}.restaurant-reservation-dialog .reservation-request-field-wide{grid-column:auto}}@media (width<=900px){.site-footer{padding:10px 0 calc(76px + env(safe-area-inset-bottom))}.site-footer:before,.footer-grid{display:none}.footer-bottom{width:var(--shell);letter-spacing:.06em;text-align:center;border:0;padding:0;font-size:9px;line-height:1.4;display:block}.footer-bottom-tagline,.footer-moderation{display:none}}.restaurant-menu-page{background:var(--paper);overflow:clip}.restaurant-menu-hero{isolation:isolate;background:var(--navy);color:var(--paper);padding:132px 0 66px;position:relative;overflow:hidden}.restaurant-menu-hero:after{content:"";z-index:-1;opacity:.15;pointer-events:none;background:#d4ad3f8a;width:min(34vw,470px);height:125%;position:absolute;top:-12%;right:-7%;-webkit-mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat;mask:url(/assets/palm-shadow.svg) 50%/contain no-repeat}.restaurant-menu-hero-shell{grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);align-items:center;gap:clamp(42px,7vw,104px);display:grid}.restaurant-menu-hero-copy{min-width:0}.restaurant-menu-back{color:#f5f1e8b3;letter-spacing:.08em;margin-bottom:27px;font-size:11px;font-weight:600;transition:color .2s;display:inline-flex}.restaurant-menu-back:hover,.restaurant-menu-back:focus-visible{color:var(--gold)}.restaurant-menu-eyebrow{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;margin:0 0 14px;font-size:10px;font-weight:700;line-height:1.45}.restaurant-menu-hero h1{max-width:630px;color:var(--paper);font:400 clamp(58px, 7vw, 88px)/.89 var(--serif);letter-spacing:-.035em;margin:0 0 17px}.restaurant-menu-intro{color:#f5f1e8d1;max-width:560px;font:400 17px/1.65 var(--serif);margin:0}.restaurant-menu-details{color:#f5f1e8ad;letter-spacing:.1em;text-transform:uppercase;gap:5px;margin-top:23px;font-size:10px;font-weight:600;line-height:1.5;display:grid}.restaurant-menu-download{letter-spacing:.1em;border-radius:3px;align-items:center;gap:22px;min-height:52px;margin-top:25px;padding:14px 19px;font-size:9px;display:inline-flex}.restaurant-menu-download span{font-size:15px}.restaurant-menu-hero-photo{aspect-ratio:1.28;background:var(--navy-soft);border:1px solid #d4ad3fb8;border-radius:10px;min-width:0;margin:0;position:relative;overflow:hidden;box-shadow:0 25px 70px #00000038}.restaurant-menu-hero-photo:after{content:"";pointer-events:none;background:linear-gradient(#0000,#071942b8);position:absolute;inset:48% 0 0}.restaurant-menu-hero-photo img{object-fit:cover;object-position:center 56%;width:100%;height:100%}.restaurant-menu-hero-photo figcaption{z-index:1;color:var(--paper);letter-spacing:.15em;text-transform:uppercase;font-size:9px;font-weight:600;position:absolute;bottom:18px;left:20px;right:20px}.restaurant-menu-viewer{padding-top:47px}.restaurant-menu-viewer-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px;display:flex}.restaurant-menu-viewer-heading .restaurant-menu-eyebrow{margin-bottom:5px}.restaurant-menu-viewer-heading h2{color:var(--navy);font:500 clamp(36px, 4.5vw, 52px)/.98 var(--serif);margin:0 0 4px}.restaurant-menu-viewer-heading p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.restaurant-menu-viewer-heading>a{color:var(--navy);letter-spacing:.08em;text-transform:uppercase;border:1px solid #0719422e;flex:none;align-items:center;gap:10px;padding:12px 14px;font-size:9px;font-weight:700;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.restaurant-menu-viewer-heading>a:hover,.restaurant-menu-viewer-heading>a:focus-visible{border-color:var(--navy);background:var(--navy);color:var(--paper)}.restaurant-menu-flipbook{background:var(--navy);border:1px solid #d4ad3fb3;border-radius:5px;overflow:hidden;box-shadow:0 20px 55px #07194221}.restaurant-menu-flipbook iframe{background:var(--navy);border:0;width:100%;height:clamp(560px,78svh,820px);display:block}.restaurant-menu-viewer-fallback{color:var(--muted);text-align:right;margin:10px 0 0;font-size:11px;line-height:1.5}.restaurant-menu-viewer-fallback a{color:var(--gold-ink);text-underline-offset:3px;font-weight:700;text-decoration:underline}.restaurant-menu-text-section{padding-top:29px;padding-bottom:73px}.restaurant-menu-language-note{border-left:2px solid var(--gold);color:var(--muted);background:#d4ad3f1c;margin:0 0 24px;padding:12px 16px;font-size:12px;line-height:1.5}.restaurant-menu-text-version{background:#ffffff61;border:1px solid #07194226}.restaurant-menu-text-version summary{min-height:56px;color:var(--navy);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;padding:13px 17px;font-size:10px;font-weight:700;list-style:none;display:flex}.restaurant-menu-text-version summary::-webkit-details-marker{display:none}.restaurant-menu-text-version summary:after{color:var(--gold-ink);content:"+";font:400 25px/1 var(--serif)}.restaurant-menu-text-version[open] summary:after{content:"−"}.restaurant-menu-text-content{padding:0 17px 19px}.restaurant-menu-text-content .restaurant-menu-grid{margin-top:8px}.restaurant-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:19px;display:grid}.restaurant-menu-category{border:1px solid #0719421f;border-top:2px solid var(--gold);background:#ffffff78;min-width:0;padding:24px 24px 23px;scroll-margin-top:165px}.restaurant-menu-category-wide{grid-column:1/-1}.restaurant-menu-category-heading{margin-bottom:10px}.restaurant-menu-category-heading p{color:var(--gold-ink);letter-spacing:.17em;text-transform:uppercase;margin:0 0 4px;font-size:8px;font-weight:700;line-height:1.4}.restaurant-menu-category-heading h2{color:var(--navy);font:500 clamp(30px, 3.5vw, 40px)/1.05 var(--serif);letter-spacing:-.015em;margin:0}.restaurant-menu-items{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px;margin:0;padding:0;list-style:none;display:grid}.restaurant-menu-items li{border-top:1px solid #0719421f;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:14px 0 12px;display:grid}.restaurant-menu-items li>div{min-width:0}.restaurant-menu-items h3{color:var(--navy);letter-spacing:.045em;text-transform:uppercase;margin:0;font-size:10px;font-weight:700;line-height:1.45}.restaurant-menu-items p{color:var(--muted);font:400 13px/1.45 var(--serif);margin:4px 0 0}.restaurant-menu-items data{color:var(--gold-ink);font:600 18px/1 var(--serif);white-space:nowrap;padding-top:1px}.restaurant-menu-price-alt{color:var(--gold-ink);font:600 15px/1 var(--serif);padding-top:5px;display:inline-block}.restaurant-menu-items-compact{grid-template-columns:1fr}.restaurant-menu-items-compact li{padding:11px 0}.restaurant-menu-accompaniment{color:var(--muted);font:400 13px/1.5 var(--serif);background:#d4ad3f1c;margin:12px 0 0;padding:12px 13px}.restaurant-menu-accompaniment strong{color:var(--gold-ink);font-family:var(--sans);letter-spacing:.07em;text-transform:uppercase;font-size:9px}.restaurant-menu-disclaimer{color:var(--muted);margin:20px 0 0;font-size:11px;line-height:1.5}.restaurant-menu-booking{background:var(--navy);color:var(--paper);padding:43px 0}.restaurant-menu-booking-inner{justify-content:space-between;align-items:center;gap:30px;display:flex}.restaurant-menu-booking-inner .restaurant-menu-eyebrow{margin-bottom:7px}.restaurant-menu-booking-inner h2{color:var(--paper);font:500 clamp(33px, 4vw, 44px)/1 var(--serif);margin:0 0 5px}.restaurant-menu-booking-inner p:last-child{color:#f5f1e8b3;margin:0;font-size:12px}.restaurant-menu-booking-inner .button{letter-spacing:.09em;border-radius:3px;flex:none;justify-content:space-between;gap:22px;min-height:54px;padding:15px 18px;font-size:9px}@media (width<=900px){.restaurant-menu-hero{padding-top:112px}.restaurant-menu-hero-shell{grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:32px}.restaurant-menu-hero h1{font-size:clamp(54px,8vw,72px)}.restaurant-menu-intro{font-size:15px}.restaurant-menu-items{column-gap:18px}}@media (width<=620px){.restaurant-menu-hero{padding:101px 0 35px}.restaurant-menu-hero:after{opacity:.1;width:310px;right:-150px}.restaurant-menu-hero-shell{grid-template-columns:1fr;gap:25px}.restaurant-menu-back{margin-bottom:21px;font-size:10px}.restaurant-menu-eyebrow{font-size:9px}.restaurant-menu-hero h1{margin-bottom:13px;font-size:clamp(51px,14vw,68px)}.restaurant-menu-intro{font-size:15px;line-height:1.55}.restaurant-menu-details{gap:4px;margin-top:17px;font-size:8px}.restaurant-menu-download{min-height:47px;margin-top:19px;padding:12px 15px;font-size:8px}.restaurant-menu-hero-photo{aspect-ratio:1.55;width:100%}.restaurant-menu-hero-photo img{object-position:center 50%}.restaurant-menu-viewer{padding-top:29px}.restaurant-menu-viewer-heading{gap:15px;margin-bottom:15px;display:grid}.restaurant-menu-viewer-heading h2{font-size:39px}.restaurant-menu-viewer-heading>a{justify-self:start;min-height:42px}.restaurant-menu-flipbook iframe{height:clamp(500px,76svh,700px)}.restaurant-menu-viewer-fallback{text-align:left}.restaurant-menu-text-section{width:calc(100% - 30px);padding-top:24px;padding-bottom:49px}.restaurant-menu-text-version summary{min-height:52px;padding:12px;font-size:9px}.restaurant-menu-text-content{padding:0 11px 12px}.restaurant-menu-grid{grid-template-columns:1fr;gap:13px}.restaurant-menu-category,.restaurant-menu-category-wide{grid-column:auto;padding:20px 16px 17px;scroll-margin-top:132px}.restaurant-menu-category-heading{margin-bottom:7px}.restaurant-menu-category-heading h2{font-size:34px}.restaurant-menu-items,.restaurant-menu-items-compact{grid-template-columns:1fr}.restaurant-menu-items li{gap:8px;padding:12px 0 10px}.restaurant-menu-items h3{font-size:9px}.restaurant-menu-items p{font-size:13px}.restaurant-menu-items data{font-size:17px}.restaurant-menu-booking{padding:31px 0 37px}.restaurant-menu-booking-inner{gap:19px;display:grid}.restaurant-menu-booking-inner h2{font-size:37px}.restaurant-menu-booking-inner p:last-child{font-size:11px}.restaurant-menu-booking-inner .button{width:100%}}
