@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500;600&family=Playfair+Display:wght@500;600&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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,ui-sans-serif, system-ui, 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{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 utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.sticky\!{position:sticky!important}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-6{margin:calc(var(--spacing) * 6)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.w-55{width:calc(var(--spacing) * 55)}.flex-shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.pt-44{padding-top:calc(var(--spacing) * 44)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f8f6f2;--surface:#fff;--surface-soft:#f2eee7;--text:#111;--text-soft:#68635c;--accent:#8b7355;--accent-dark:#715d45;--border:#e5e5e5;--danger:#9a413a;--radius:10px;--shadow:0 24px 70px #2d241917;--shadow-soft:0 10px 35px #2d24190f;--cursor-x:50vw;--cursor-y:50vh}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{background:var(--background);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.65;overflow-x:hidden}a{color:inherit;text-decoration:none}img{object-fit:cover;background:var(--surface-soft);max-width:100%;display:block}img.image-unavailable{opacity:0}button,input,select,textarea{font:inherit}button{color:inherit}::selection{color:var(--text);background:#d8cdbf}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--accent);border:3px solid var(--background);border-radius:999px}.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}.loader-screen{z-index:5000;text-align:center;background:var(--background);place-content:center;gap:.55rem;animation:.3s fade;display:grid;position:fixed;inset:0}.loader-screen div{width:5.5rem;height:5.5rem;color:var(--accent);letter-spacing:.14em;border:1px solid #8b73558c;border-radius:50%;place-items:center;margin:auto;font-family:Cormorant Garamond,serif;font-size:1.2rem;animation:1.8s ease-in-out infinite loader-breathe;display:grid}.loader-screen p{letter-spacing:.03em;margin:.5rem 0 0;font-family:Playfair Display,serif;font-size:1.45rem}.loader-screen span{color:var(--text-soft);letter-spacing:.18em;text-transform:uppercase;font-size:.65rem}@keyframes loader-breathe{50%{border-color:var(--accent);transform:scale(1.035)}}.cursor-dot,.cursor-ring{left:var(--cursor-x);top:var(--cursor-y);pointer-events:none;z-index:3000;display:none;position:fixed;transform:translate(-50%,-50%)}.cursor-dot{background:var(--accent);border-radius:50%;width:4px;height:4px}.cursor-ring{border:1px solid #8b735580;border-radius:50%;width:30px;height:30px;transition:width .18s,height .18s}@media (pointer:fine){.cursor-dot,.cursor-ring{display:block}}.site-header{z-index:1000;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8f6f2e6;border-bottom:1px solid #e5e5e5e6;position:sticky;top:0}.navbar{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1500px;margin:auto;padding:.85rem clamp(1rem,3vw,3.5rem);display:flex}.brand{flex-shrink:0;align-items:center;gap:.85rem;display:flex}.brand span{border:1px solid var(--accent);width:2.85rem;height:2.85rem;color:var(--accent);letter-spacing:.08em;border-radius:50%;place-items:center;font-family:Cormorant Garamond,serif;font-size:.9rem;display:grid}.brand b{letter-spacing:.19em;font-family:Cormorant Garamond,serif;font-size:1.05rem;font-weight:600;line-height:1;display:grid}.brand small{color:var(--text-soft);letter-spacing:.2em;text-transform:uppercase;margin-top:.32rem;font-family:Inter,sans-serif;font-size:.57rem;font-weight:500}.nav-links{align-items:center;gap:.1rem;display:flex}.nav-links a,.filter-pill{color:#5f5b55;letter-spacing:.04em;background:0 0;border:0;padding:.62rem .68rem;font-size:.76rem;transition:color .2s,background .2s}.nav-links a:hover,.nav-links a:focus-visible,.nav-links a.active{color:var(--text);outline:none}.nav-links a.active{box-shadow:inset 0 -1px 0 var(--accent)}.nav-actions{align-items:center;gap:.55rem;display:flex}.menu-btn,.icon-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:50%;place-items:center;width:2.6rem;height:2.6rem;display:grid}.menu-btn{display:none}.menu-btn:focus-visible,.icon-btn:focus-visible,.filter-pill:focus-visible,.dot-btn:focus-visible,.gallery-tile:focus-visible,.interactive-card:focus-visible{outline-offset:3px;outline:2px solid #8b73558c}.btn{isolation:isolate;border:1px solid var(--accent);background:var(--accent);color:#fff;letter-spacing:.09em;text-transform:uppercase;min-height:2.85rem;box-shadow:none;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;gap:.55rem;padding:.82rem 1.2rem;font-size:.76rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,transform .2s;display:inline-flex;position:relative;overflow:hidden}.btn:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px)}.btn:focus-visible{outline-offset:3px;outline:2px solid #8b73557a}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.48;pointer-events:none;cursor:not-allowed}.btn-label{justify-content:center;align-items:center;gap:.55rem;display:inline-flex}.btn-secondary{color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:0 0;border-color:#cfc7bd}.btn-secondary:hover{background:var(--surface);border-color:var(--accent)}.hero .btn-secondary{background:#ffffffe6;border-color:#ffffffbf}.hero .btn-secondary:hover{background:#fff;border-color:#fff}.btn-ghost{color:var(--text);border-color:var(--border);background:0 0}.btn-ghost:hover{background:var(--surface);border-color:#d7d2ca}.btn-load{background:inherit;justify-content:center;align-items:center;gap:.5rem;display:flex;position:absolute;inset:0}.btn[aria-busy=true] .btn-label{opacity:0}.spin{animation:1s linear infinite spin}.ripple{pointer-events:none;background:#ffffff59;border-radius:50%;width:.7rem;height:.7rem;animation:.5s ease-out ripple;position:absolute;transform:translate(-50%,-50%)scale(0)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ripple{to{opacity:0;transform:translate(-50%,-50%)scale(16)}}.hero{place-items:center;min-height:calc(100vh - 1px);padding:9rem 1rem 8rem;display:grid;position:relative;overflow:hidden}.hero-media{width:100%;height:108%;transform:translateY(calc(var(--cursor-y,0px)*.0015));filter:saturate(.76)contrast(.96)brightness(.88);position:absolute;inset:0}.hero-overlay{background:linear-gradient(90deg,#241d1694,#241d1638 55%,#241d1661),linear-gradient(#0000 52%,#241d1685);position:absolute;inset:0}.hero-content{z-index:2;text-align:center;color:#fff;width:min(92vw,900px);max-width:900px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.24em;color:var(--accent);margin:0 0 1rem;font-size:.68rem;font-weight:600}.hero .eyebrow{color:#e7ded2}.hero h1{letter-spacing:-.035em;color:#fff;margin:.12em 0;font-family:Cormorant Garamond,serif;font-size:clamp(4rem,10vw,8.2rem);font-weight:500;line-height:.84}.tagline{color:#f1eae1;margin:.8rem 0 1rem;font-family:Playfair Display,serif;font-size:clamp(1.25rem,2.5vw,2rem);font-style:italic}.hero p:not(.eyebrow):not(.tagline){color:#ffffffd1;max-width:650px;margin:0 auto 2rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;line-height:1.55}.hero-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;display:flex}.floating-booking-card{z-index:3;gap:.55rem;width:min(22rem,86vw);padding:1.35rem;display:grid;position:absolute;bottom:4.5rem;right:clamp(1rem,4vw,5rem)}.floating-booking-card .eyebrow{margin-bottom:.15rem}.floating-booking-card strong{font-family:Playfair Display,serif;font-size:1.08rem;font-weight:500}.floating-booking-card span{color:var(--text-soft);font-size:.88rem}.scroll-indicator{z-index:4;border:1px solid #ffffffa6;border-radius:999px;width:1.35rem;height:2.7rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.scroll-indicator span{background:#fff;border-radius:50%;width:.22rem;height:.22rem;animation:1.8s ease-in-out infinite scroll;position:absolute;top:.42rem;left:50%}@keyframes scroll{to{opacity:0;transform:translate(-50%,1.15rem)}}.section-padding{padding:clamp(6rem,10vw,9.5rem) clamp(1rem,4vw,4rem)}.dark-panel{background:var(--surface)}.section-heading{text-align:center;max-width:790px;margin:0 auto 4rem}.align-left{text-align:left;margin-left:0}.section-heading h2{letter-spacing:-.025em;margin:.12em 0 .45em;font-family:Cormorant Garamond,serif;font-size:clamp(2.6rem,5.8vw,5.1rem);font-weight:500;line-height:.98}.section-heading p{color:var(--text-soft);max-width:680px;margin-left:auto;margin-right:auto;font-size:.98rem}.align-left p{margin-left:0}.glass-card,.story-card,.booking-form,.testimonial-card{border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;border:1px solid #e5e5e5f2}.reveal,.image-reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(20px)}.reveal.is-visible,.image-reveal.is-visible{opacity:1;transform:none}.about-grid,.restaurant-layout,.spa-layout,.booking-layout,.contact-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2rem,5vw,5.5rem);max-width:1320px;margin:auto;display:grid}.story-card{overflow:hidden}.story-card img{filter:saturate(.84);width:100%;height:32rem}.story-card div{padding:2rem}.story-card h3,.mission-stack h3,.amenity-card h3,.spa-item h3,.chef-card h3{font-family:Playfair Display,serif;font-weight:500}.mission-stack{gap:1rem;display:grid}.mission-stack article,.info-card,.amenity-card,.contact-card{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:1.45rem}.mission-stack article{grid-template-columns:auto 1fr;align-items:start;column-gap:1rem;display:grid}.mission-stack article svg{grid-row:1/3;margin-top:.15rem}.mission-stack article h3,.mission-stack article p{margin-top:0}.mission-stack svg,.amenity-card svg,.contact-card svg,.spa-item svg{color:var(--accent);stroke-width:1.45px}.stats-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(5,1fr);gap:1px;max-width:1320px;margin:4.5rem auto 0;display:grid}.stat-card{text-align:center;background:var(--background);padding:2rem 1rem}.stat-card strong{color:var(--accent);font-family:Cormorant Garamond,serif;font-size:2.7rem;font-weight:500;line-height:1;display:block}.stat-card span{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.suite-grid{grid-template-columns:repeat(3,1fr);gap:1.35rem;max-width:1380px;margin:0 auto;display:grid}.suite-card{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:.75rem}.interactive-card{transition:transform .25s,box-shadow .25s,border-color .25s}.interactive-card:hover{box-shadow:var(--shadow);border-color:#d9d4cc;transform:translateY(-4px)}.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow)}.suite-image{aspect-ratio:4/3;border-radius:6px;position:relative;overflow:hidden}.suite-image img,.gallery-tile img,.food-card img{filter:saturate(.82);width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.suite-card:hover img,.gallery-tile:hover img,.food-card:hover img{transform:scale(1.025)}.suite-image span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text);letter-spacing:.04em;background:#ffffffe6;padding:.42rem .64rem;font-size:.72rem;font-weight:600;position:absolute;bottom:.8rem;left:.8rem}.suite-body{gap:.8rem;padding:1.15rem .45rem .35rem;display:grid}.suite-body h3{justify-content:space-between;gap:1rem;margin:0;font-family:Playfair Display,serif;font-size:1.28rem;font-weight:500;display:flex}.suite-body h3 span,.rating{color:var(--accent);align-items:center;gap:.25rem;font:600 .78rem Inter;display:inline-flex}.suite-body p,.suite-body li{color:var(--text-soft);font-size:.88rem}.suite-body ul{gap:.38rem;margin:0;padding:0;list-style:none;display:grid}.suite-body li{align-items:center;gap:.45rem;display:flex}.suite-body li svg{color:var(--accent);stroke-width:1.6px}.skeleton{background:linear-gradient(90deg,#eeeae4,#f7f5f1,#eeeae4) 0 0/220% 100%;border-radius:6px;animation:1.4s infinite pulse}.skeleton.media{height:16rem}.skeleton.line{height:1rem;margin:1rem}.skeleton.short{width:55%}.table-shell{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:1320px;box-shadow:var(--shadow-soft);margin:3rem auto 0;overflow:auto}.table-intro{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.35rem;display:flex}.table-intro h3{font-family:Playfair Display,serif;font-weight:500}.table-intro p{color:var(--text-soft);margin:0;font-size:.85rem}table{border-collapse:collapse;width:100%;min-width:720px}thead{z-index:1;background:#f4f1ec;position:sticky;top:0}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.95rem 1rem;font-size:.86rem}th{color:var(--text-soft);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:600}tr:hover{background:#faf9f7}.numeric{text-align:right}.table-skeleton{height:2.4rem}.inline-error{color:var(--danger);align-items:center;gap:.8rem;display:flex}@keyframes pulse{50%{opacity:.5}}.amenity-grid{grid-template-columns:repeat(4,1fr);gap:1rem;max-width:1320px;margin:auto;display:grid}.amenity-card{min-height:12.5rem}.amenity-card h3{margin:1.2rem 0 .45rem;font-size:1.05rem}.amenity-card p,.spa-item p,.chef-card p{color:var(--text-soft);font-size:.88rem}.food-gallery{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.food-card{border-radius:var(--radius);aspect-ratio:1/1.1;margin:0;position:relative;overflow:hidden}.food-card:first-child{grid-row:span 2}.food-card figcaption{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;padding:.5rem .7rem;font-family:Playfair Display,serif;font-size:.9rem;position:absolute;bottom:1rem;left:1rem}.chef-card{gap:1rem;margin:1.5rem 0 1.8rem;padding:1.2rem;display:flex}.chef-card svg{color:var(--accent);stroke-width:1.4px;min-width:2rem}.spa-image img{border-radius:var(--radius);width:100%;height:49rem;box-shadow:var(--shadow);filter:saturate(.78)}.spa-item{border-top:1px solid var(--border);background:0 0;gap:1rem;margin:1rem 0;padding:1.05rem;display:flex}.spa-item:last-of-type{border-bottom:1px solid var(--border)}.gallery-controls{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;max-width:1320px;margin:0 auto 2rem;display:flex}.filter-pills{flex-wrap:wrap;gap:.45rem;display:flex}.filter-pill{border:1px solid var(--border);cursor:pointer;background:var(--surface);border-radius:999px;padding:.55rem .85rem}.filter-pill:hover,.filter-pill:focus-visible,.filter-pill.active{background:var(--text);border-color:var(--text);color:#fff;outline:none}.search-wrap,.password-wrap{align-items:center;display:flex;position:relative}.search-wrap svg{color:var(--text-soft);position:absolute;left:.9rem}.search-wrap input{padding-left:2.5rem}.masonry-gallery{columns:4 16rem;column-gap:1rem;max-width:1320px;margin:auto}.gallery-tile{break-inside:avoid;border-radius:var(--radius);background:var(--surface);text-align:left;cursor:pointer;border:0;width:100%;margin:0 0 1rem;padding:0;display:block;position:relative;overflow:hidden}.gallery-tile img{aspect-ratio:4/3}.gallery-tile:nth-child(4n+1) img{aspect-ratio:3/4}.gallery-tile span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;gap:.15rem;padding:.68rem;font-family:Playfair Display,serif;font-size:.92rem;display:grid;position:absolute;inset:auto .75rem .75rem}.gallery-tile small{color:var(--accent);text-transform:uppercase;letter-spacing:.16em;font-family:Inter,sans-serif;font-size:.6rem}.empty-state,.error-block{text-align:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-width:740px;margin:2rem auto;padding:2.4rem}.empty-state span{background:var(--surface-soft);width:3.8rem;height:3.8rem;color:var(--accent);border-radius:50%;place-items:center;margin:auto;display:grid}.empty-state h3,.error-block h3{font-family:Playfair Display,serif;font-weight:500}.empty-state p,.error-block p{color:var(--text-soft)}.error-block{color:var(--text);place-items:center;gap:1rem;display:grid}.error-block svg{color:var(--danger)}.testimonial-card{text-align:center;max-width:840px;margin:auto;padding:3rem}.testimonial-card>svg{color:var(--accent);stroke-width:1.2px;margin:auto}.stars{color:var(--accent);justify-content:center;gap:.25rem;margin:1rem;display:flex}.testimonial-card p{font-family:Cormorant Garamond,serif;font-size:1.65rem;line-height:1.45}.guest-row{justify-content:center;align-items:center;gap:1rem;display:flex}.guest-row img{filter:saturate(.75);border-radius:50%;width:4.3rem;height:4.3rem}.guest-row span{color:var(--text-soft);font-size:.8rem;display:block}.testimonial-actions{justify-content:center;gap:.55rem;margin-top:1.4rem;display:flex}.dot-btn{cursor:pointer;background:#d6d0c7;border:0;border-radius:50%;width:.55rem;height:.55rem;padding:0}.dot-btn.active{background:var(--accent);transform:scale(1.2)}.accordion{border-top:1px solid var(--border);gap:0;max-width:920px;margin:auto;display:grid}.accordion-item{border-bottom:1px solid var(--border);background:0 0;overflow:hidden}.accordion-item>button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:1.45rem 0;font-family:Playfair Display,serif;font-size:1.05rem;display:flex}.accordion-item button svg{color:var(--accent);stroke-width:1.4px;transition:transform .2s}.accordion-item button[aria-expanded=true] svg{transform:rotate(180deg)}.accordion-panel{grid-template-rows:0fr;transition:grid-template-rows .28s;display:grid}.accordion-panel.open{grid-template-rows:1fr}.accordion-panel p{color:var(--text-soft);margin:0;padding:0 2.8rem 1.45rem 0;overflow:hidden}.booking-layout{align-items:start}.booking-form{padding:1.5rem}.form-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.field{gap:.42rem;margin-bottom:1rem;display:grid}.field label{color:var(--text);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:600}.field-control{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:4px;padding:.88rem .95rem;transition:border-color .18s,box-shadow .18s,background .18s}.field-control::placeholder{color:#9a958e}.field-control:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #8b73551a}.field-control.filled{border-color:#cfc7bd}.field-control.error{border-color:var(--danger);box-shadow:0 0 0 2px #9a413a14}.field-control:disabled{opacity:.55;cursor:not-allowed;background:#f1eee9}.field-error{color:var(--danger);margin:0;font-size:.78rem}.field-hint{color:var(--text-soft);margin:0;font-size:.78rem}textarea.field-control{resize:vertical}.full-width{width:100%}.booking-note{align-items:center;gap:1rem;margin-top:1.4rem;padding:1.1rem;display:flex}.booking-note svg{color:var(--accent);stroke-width:1.4px;flex-shrink:0}.password-wrap .field-control{padding-right:3rem}.password-wrap button{color:var(--text-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:.1rem;display:flex;position:absolute;right:.5rem}.reservation-history{border-top:1px solid var(--border);grid-column:1/-1;margin-top:1rem;padding-top:3.5rem}.history-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.history-heading .eyebrow{margin-bottom:.35rem}.history-heading h3{margin:0;font-family:Cormorant Garamond,serif;font-size:2.4rem;font-weight:500}.history-signin,.history-loading{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;display:flex}.history-signin p{color:var(--text-soft);margin:0}.history-loading{color:var(--text-soft);justify-content:center}.history-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.history-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem;display:flex}.history-card h4{margin:.6rem 0 .15rem;font-family:Playfair Display,serif;font-size:1.05rem;font-weight:500}.history-card p,.history-card small{color:var(--text-soft);margin:0;font-size:.82rem}.status-chip{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;display:inline-block}.status-chip.cancelled{color:#8b8176}.contact-grid{align-items:stretch}.map-card{border-radius:var(--radius);border:1px solid var(--border);text-align:center;min-height:29rem;box-shadow:var(--shadow-soft);background:#ede8e0;place-content:center;padding:2rem;display:grid;position:relative;overflow:hidden}.map-card:before,.map-card:after{content:"";background:#8b735521;position:absolute}.map-card:before{width:140%;height:1px;top:44%;left:-20%;transform:rotate(-14deg)}.map-card:after{width:1px;height:140%;top:-20%;left:58%;transform:rotate(18deg)}.map-card div{background:var(--surface);width:4.6rem;height:4.6rem;color:var(--accent);z-index:1;border:1px solid #d7cfc4;border-radius:50%;place-items:center;margin:auto;display:grid}.map-card p{z-index:1;font-family:Cormorant Garamond,serif;font-size:2rem;line-height:1.1}.map-card span{color:var(--text-soft);z-index:1}.contact-cards{gap:1rem;display:grid}.contact-card{align-content:center;gap:.45rem;display:grid}.contact-card span{color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:.62rem}.contact-card strong{word-break:break-word;font-family:Playfair Display,serif;font-weight:500}.site-footer{background:#f0ece5;border-top:1px solid #ded8cf;padding:5rem clamp(1rem,4vw,4rem) 2rem}.footer-grid{grid-template-columns:1.3fr .7fr 1fr;gap:3rem;max-width:1320px;margin:auto;display:grid}.footer-grid h3{font-family:Playfair Display,serif;font-weight:500}.footer-grid p{color:var(--text-soft);font-size:.88rem}.footer-grid a:not(.brand){color:var(--text-soft);margin:.5rem 0;font-size:.86rem;display:block}.footer-grid a:hover{color:var(--accent-dark)}.social-links{gap:.65rem;margin-top:1.3rem;display:flex}.social-links a{border:1px solid #d8d2c9;border-radius:50%;place-items:center;width:2.35rem;height:2.35rem;display:grid!important}.social-links svg{stroke-width:1.4px;width:1rem}.newsletter-form{grid-template-columns:1fr auto;gap:.55rem;display:grid}.newsletter-form .field-error{grid-column:1/-1}.footer-bottom{color:#777168;letter-spacing:.04em;border-top:1px solid #d8d2c9;flex-wrap:wrap;justify-content:space-between;gap:1rem;max-width:1320px;margin:3rem auto 0;padding-top:1.2rem;font-size:.72rem;display:flex}.toast-root{z-index:4000;gap:.7rem;width:min(24rem,100vw - 2rem);display:grid;position:fixed;top:5.8rem;right:1rem}.toast{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:auto 1fr auto;align-items:start;gap:.8rem;padding:1rem;animation:.22s toast-in;display:grid}.toast p{color:var(--text-soft);margin:.2rem 0 0;font-size:.82rem}.toast button{color:var(--text-soft);cursor:pointer;background:0 0;border:0}.toast-success>svg{color:var(--accent)}.toast-error>svg{color:var(--danger)}.toast-info>svg{color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)}}.modal-overlay{z-index:3500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2a231b73;place-items:center;padding:1rem;animation:.2s fade;display:grid;position:fixed;inset:0}.modal-panel{background:var(--surface);width:min(44rem,96vw);max-height:90vh;color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem;animation:.2s scale;overflow:auto;box-shadow:0 30px 90px #231d1638}.modal-head{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;align-items:start;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;display:grid}.modal-head .eyebrow{grid-column:1;margin-bottom:.15rem}.modal-head h2{grid-column:1;margin:.1rem 0;font-family:Cormorant Garamond,serif;font-size:2.4rem;font-weight:500}.modal-head .icon-btn{grid-area:1/2/3}.modal-form{gap:.4rem;display:grid}.auth-panel,.auth-unavailable{gap:1rem;display:grid}.auth-unavailable{text-align:center;place-items:center}.auth-unavailable svg{color:var(--danger)}.lightbox-content img{filter:saturate(.82);border-radius:6px;width:100%;max-height:62vh}.lightbox-content p{color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem}.lightbox-actions{justify-content:space-between;gap:1rem;display:flex}@keyframes fade{0%{opacity:0}}@keyframes scale{0%{opacity:0;transform:translateY(8px)}}@media (width<=1180px){.nav-links a{padding:.6rem .45rem;font-size:.7rem}.suite-grid{grid-template-columns:repeat(2,1fr)}.amenity-grid{grid-template-columns:repeat(3,1fr)}.about-grid,.restaurant-layout,.spa-layout,.booking-layout,.contact-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(3,1fr)}.floating-booking-card{margin-top:2rem;position:relative;bottom:auto;right:auto}.hero{align-content:center}}@media (width<=880px){.menu-btn{display:grid}.nav-book{display:none}.nav-links{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffffa;flex-direction:column;align-items:stretch;padding:1rem;display:none;position:fixed;top:4.8rem;left:1rem;right:1rem}.nav-links.open{display:flex}.nav-links a{text-align:center;padding:.75rem}.suite-grid,.amenity-grid,.form-grid,.food-gallery,.footer-grid,.history-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:clamp(3.6rem,17vw,6rem)}.section-padding{padding:5.5rem 1rem}.table-intro,.footer-bottom{display:block}.newsletter-form{grid-template-columns:1fr}.masonry-gallery{columns:2 15rem}.spa-image img{height:34rem}.cursor-dot,.cursor-ring{display:none}}@media (width<=560px){.navbar{padding:.75rem}.brand b{font-size:.92rem}.brand span{width:2.55rem;height:2.55rem}.stats-grid{grid-template-columns:1fr}.hero{padding-top:7rem}.hero-actions,.lightbox-actions{flex-direction:column}.hero-actions .btn,.lightbox-actions .btn{width:100%}.nav-actions .btn-ghost{display:none}.floating-booking-card{width:100%}.guest-row{flex-direction:column}.toast-root{top:auto;bottom:1rem}.masonry-gallery{columns:1}.history-heading,.history-signin,.history-card{flex-direction:column;align-items:stretch}.history-heading{display:flex}.history-heading .btn,.history-signin .btn,.history-card .btn{width:100%}.story-card img{height:23rem}.section-heading h2{font-size:clamp(2.5rem,14vw,3.8rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.image-reveal{opacity:1;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
