@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-500-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-500-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-400-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-400-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-400-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-400-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/jost-300-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/jost-300-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jost-400-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jost-400-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jost-500-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jost-500-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/jost-600-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/jost-600-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jost-700-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jost-700-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#2b2a28;--ink-soft:rgba(43,42,40,.66);--paper:#f7f5f1;--paper-2:#efece5;--line:rgba(43,42,40,.16);--white:#fff;--serif:"EB Garamond",Georgia,serif;--display:"Cormorant Garamond",Georgia,serif;--sans:"Jost",-apple-system,"Segoe UI",sans-serif;--wrap:1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--serif);color:var(--ink);background:var(--paper);font-size:19px;line-height:1.75;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn-pill{font-family:var(--sans);font-weight:400;font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;border:1px solid currentColor;border-radius:40px;padding:.85em 1.9em;transition:.35s ease;display:inline-block;white-space:nowrap}.btn-pill:hover{background:var(--white);color:var(--ink);border-color:var(--white)}.btn-pill-lg{padding:1.05em 2.6em;font-size:.86rem}.btn-pill-dark{border-color:var(--ink);color:var(--ink)}.btn-pill-dark:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .4s ease,box-shadow .4s ease,color .4s ease;color:#fff}.header-inner{max-width:var(--wrap);margin:0 auto;padding:26px 40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-family:var(--display);font-size:2rem;font-weight:500;letter-spacing:.01em;line-height:1;white-space:nowrap}.nav{display:flex;align-items:center;gap:30px;margin-left:auto}.nav a{font-family:var(--sans);font-size:.94rem;font-weight:700;letter-spacing:.06em;opacity:.92;transition:opacity .25s;white-space:nowrap}.nav a:hover,.nav a.active{opacity:1}.nav a.active{border-bottom:1px solid currentColor;padding-bottom:2px}.nav-lang{display:inline-flex;align-items:center;gap:10px;margin-left:2px}.nav .nav-lang .flag,.flag{display:block;width:27px;height:17px;padding:0!important;margin:0;border:0!important;line-height:0;font-size:0;opacity:.4;transition:opacity .25s,box-shadow .25s}.flag svg{width:100%;height:100%;display:block;box-shadow:0 0 0 1px #00000026 inset}.flag:hover{opacity:.85}.nav .nav-lang .flag.current,.flag.current{opacity:1;box-shadow:0 0 0 2px currentColor,0 1px 4px #00000040}.header-cta{margin-left:8px}.site-header.scrolled{background:var(--paper);color:var(--ink);box-shadow:0 1px 0 var(--line)}.site-header.scrolled .btn-pill:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.site-header.solid{background:var(--paper);color:var(--ink);box-shadow:0 1px 0 var(--line);position:sticky}.site-header.solid .btn-pill:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hamburger{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:6px}.hamburger span{width:26px;height:2px;background:currentColor;transition:.3s}.hero{position:relative;height:100vh;min-height:640px;overflow:hidden;background:#3a3a33 url(/assets/img/bg.jpg) center/cover no-repeat;display:flex;align-items:center;justify-content:center}.hero-video-wrap{position:absolute;inset:0;overflow:hidden;pointer-events:none}.hero-video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:56.25vw;min-height:100vh;min-width:177.78vh;border:0}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#14161033,#1416104d)}.hero-content{position:relative;text-align:center;color:#fff;padding:0 20px}.hero-logo{width:min(440px,72vw);margin:0 auto;filter:drop-shadow(0 2px 30px rgba(0,0,0,.35))}.scroll-cue{position:absolute;bottom:38px;left:50%;transform:translate(-50%);color:#fff;display:flex;flex-direction:column;align-items:center;gap:10px;font-family:var(--sans);font-size:.7rem;letter-spacing:.3em;opacity:.85}.scroll-line{width:1px;height:44px;background:#fff;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.page-hero{position:relative;height:56vh;min-height:380px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:#3a3a33 center/cover no-repeat}.page-hero:before{content:"";position:absolute;inset:0;background:#1618126b}.page-hero-inner{position:relative;padding:0 24px}.page-hero .eyebrow{color:#ffffffd9;margin-bottom:14px}.page-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(2.4rem,5vw,4rem);line-height:1.1}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1500px;margin:0 auto;padding:44px}.card{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--img) center/cover no-repeat}.card:before{content:"";position:absolute;inset:0;background:#1e201a52;transition:.4s}.card:hover:before{background:#1e201a1f}.card-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.card-label{position:relative;color:#fff;font-family:var(--display);font-size:2rem;font-weight:500;text-align:center;letter-spacing:.01em;text-shadow:0 2px 20px rgba(0,0,0,.4)}.eyebrow{font-family:var(--sans);text-transform:lowercase;letter-spacing:.28em;font-size:1.05rem;font-weight:400;color:var(--ink-soft)}.section{padding:110px 40px}.section-tight{padding:80px 40px}.measure{max-width:900px;margin:0 auto;text-align:center}.measure p{color:var(--ink-soft);margin-bottom:1.4em;font-size:1.15rem;line-height:1.85}.measure p:last-child{margin-bottom:0}.section-title{font-family:var(--display);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.2;margin-bottom:34px}.center{text-align:center}.lead{font-size:1.22rem}.welcome{padding:110px 40px 90px}.welcome-inner{max-width:940px;margin:0 auto;text-align:center}.welcome-title{font-family:var(--sans);font-weight:400;text-transform:lowercase;letter-spacing:.14em;font-size:1.7rem;color:var(--ink-soft);margin-bottom:40px}.welcome-body p{color:var(--ink-soft);margin-bottom:1.4em;font-size:1.15rem;line-height:1.85}.welcome-body p:last-child{margin-bottom:0}.awards-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:34px;padding:10px 40px 100px}.awards-row img{height:150px;width:auto}@media (max-width:600px){.awards-row{gap:22px;padding-bottom:70px}.awards-row img{height:110px}}.cta-banner.cta-home{background-image:url(/assets/img/hero.jpg)}.location-social{display:grid;grid-template-columns:1fr 1fr;gap:0}.ls-col{padding:70px 60px}.ls-left{display:flex;flex-direction:column}.ls-addr{font-family:var(--display);font-size:1.6rem;line-height:1.35;color:var(--ink);margin-bottom:26px}.ls-map{flex:1;min-height:340px;border:0;width:100%;filter:grayscale(.4)}.ls-social{font-family:var(--sans);font-size:1rem;letter-spacing:.05em;margin-bottom:30px}.ls-social a{border-bottom:1px solid var(--line);padding-bottom:2px;transition:opacity .25s}.ls-social a:hover{opacity:.6}.ls-social span{margin:0 8px;opacity:.4}.ls-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ls-gallery img{width:100%;aspect-ratio:1/1;object-fit:cover}@media (max-width:820px){.location-social{grid-template-columns:1fr}.ls-col{padding:48px 24px}.ls-map{min-height:300px}}.cta-banner{position:relative;padding:130px 20px;text-align:center;background:#2c2e26 url(/assets/img/bg.jpg) center/cover fixed no-repeat}.cta-overlay{position:absolute;inset:0;background:#181a148c}.cta-content{position:relative;color:#fff}.cta-content h2{font-family:var(--display);font-weight:400;font-size:clamp(2rem,4vw,3.1rem);line-height:1.2;margin-bottom:36px}.price-table{max-width:760px;margin:0 auto;border-collapse:collapse;width:100%;text-align:left}.price-table th,.price-table td{padding:18px 16px;border-bottom:1px solid var(--line);font-size:1.08rem}.price-table th{font-family:var(--sans);font-weight:400;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;color:var(--ink-soft)}.price-table td:last-child,.price-table th:last-child{text-align:right;white-space:nowrap}.note{font-size:.98rem;color:var(--ink-soft);max-width:760px;margin:18px auto 0;text-align:left}.amenities{max-width:900px;margin:44px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px 30px;list-style:none;text-align:left}.amenities li{font-size:1.05rem;color:var(--ink-soft);padding-left:26px;position:relative}.amenities li:before{content:"—";position:absolute;left:0;color:var(--ink)}.gallery{padding:100px 40px;text-align:center}.gallery-grid{max-width:var(--wrap);margin:0 auto 44px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:.5s}.gallery-grid img:hover{opacity:.88}.gallery-grid.masonry img{aspect-ratio:auto}.text-link{font-family:var(--sans);text-transform:uppercase;letter-spacing:.2em;font-size:.82rem;border-bottom:1px solid var(--line);padding-bottom:4px;transition:.3s;display:inline-block}.text-link:hover{border-color:var(--ink)}.mosaic{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:210px;grid-auto-flow:row;gap:12px;max-width:1180px;margin:0 auto;padding:40px 24px 20px}.mosaic a,.mosaic img{display:block;width:100%;height:100%}.mosaic img{object-fit:cover;transition:opacity .4s}.mosaic img:hover{opacity:.9}.mosaic>:nth-child(6n+1){grid-column:1/3;grid-row:span 2}.mosaic>:nth-child(6n+2){grid-column:3}.mosaic>:nth-child(6n+3){grid-column:3}.mosaic>:nth-child(6n+4){grid-column:1}.mosaic>:nth-child(6n+5){grid-column:2/4;grid-row:span 2}.mosaic>:nth-child(6n+6){grid-column:1}@media (max-width:760px){.mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:150px;gap:10px}.mosaic>*{grid-column:auto!important;grid-row:auto!important}}@media (max-width:440px){.mosaic{grid-template-columns:1fr;grid-auto-rows:230px}}.award{padding:0 40px 110px;text-align:center}.award img{width:150px;margin:0 auto 18px;border-radius:6px}.award p{font-family:var(--sans);font-size:.92rem;letter-spacing:.05em;color:var(--ink-soft)}.contact-grid{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;text-align:left}.contact-block h3{font-family:var(--display);font-weight:500;font-size:1.5rem;margin-bottom:10px}.contact-block p{color:var(--ink-soft);margin-bottom:6px}.contact-block a{border-bottom:1px solid var(--line)}form.booking{max-width:720px;margin:0 auto;text-align:left;display:grid;grid-template-columns:1fr 1fr;gap:22px}form.booking .full{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:7px}.field label{font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.field input,.field select,.field textarea{font-family:var(--serif);font-size:1.05rem;padding:12px 14px;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:2px}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink)}.form-submit{grid-column:1/-1;text-align:center;margin-top:8px}.booking-widget-slot{max-width:900px;margin:40px auto 0;padding:40px;border:1px dashed var(--line);text-align:center;color:var(--ink-soft);font-family:var(--sans);font-size:.95rem;letter-spacing:.03em;border-radius:6px;background:var(--paper-2)}.form-status{grid-column:1/-1;margin-top:4px;padding:14px 18px;border-radius:3px;font-family:var(--sans);font-size:.95rem;letter-spacing:.02em;text-align:center}.form-status.ok{background:#e8f0e5;color:#33502f;border:1px solid #bcd4b2}.form-status.err{background:#f6e6e2;color:#7a2f22;border:1px solid #e2bab0}.honeypot{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid{border-color:#c0392b;box-shadow:0 0 0 1px #c0392b40}.field .req{color:#c0392b}.page-title{font-family:var(--display);font-weight:600;font-size:clamp(2.6rem,6.5vw,5rem);line-height:1.06;text-align:center;color:#404040;padding:90px 24px 30px}.prose{max-width:800px;margin:0 auto;padding:0 24px 20px}.prose p{color:var(--ink-soft);font-size:1.16rem;line-height:1.8;margin-bottom:1.3em}.prose p:last-child{margin-bottom:0}.prose h2{font-family:var(--sans);text-transform:uppercase;letter-spacing:.1em;font-weight:400;font-size:1.12rem;color:var(--ink);margin:38px 0 16px;line-height:1.4}.prose-quote{max-width:800px;margin:10px auto;padding:20px 24px 0;text-align:center}.prose-quote p{font-family:var(--display);font-style:italic;font-size:1.5rem;color:var(--ink);line-height:1.4}.prose-quote cite{display:block;font-family:var(--sans);font-style:normal;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;color:var(--ink-soft);margin-top:14px}.prose-img{display:block;width:100%;max-width:800px;margin:30px auto;aspect-ratio:3/2;object-fit:cover}.center-actions{text-align:center;padding:34px 0 96px}.text-btn{font-family:var(--sans);text-transform:uppercase;letter-spacing:.2em;font-size:.82rem;color:var(--ink);border:1px solid var(--ink);border-radius:40px;padding:.85em 2em;display:inline-block;transition:.3s}.text-btn:hover{background:var(--ink);color:var(--paper)}.carousel{max-width:820px;margin:30px auto;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:0;scrollbar-width:none}.carousel::-webkit-scrollbar{display:none}.carousel img{flex:0 0 100%;scroll-snap-align:center;width:100%;aspect-ratio:3/2;object-fit:cover}.feat2{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:44px 40px}.feat2 .feat2-media{width:100%;aspect-ratio:4/3;object-fit:cover}.feat2-text{text-align:left}.feat2-text h2{font-family:var(--sans);text-transform:uppercase;letter-spacing:.09em;font-weight:400;font-size:1.35rem;line-height:1.3;color:var(--ink);margin-bottom:20px}.feat2-text p{color:var(--ink-soft);font-size:1.08rem;line-height:1.75;margin-bottom:1em}.feat2-text ul{list-style:none;margin-top:6px}.feat2-text li{color:var(--ink-soft);font-size:1.05rem;padding:7px 0 7px 20px;position:relative;border-bottom:1px solid var(--line)}.feat2-text li:before{content:"–";position:absolute;left:0}.feat2-text .text-link{margin-top:20px}@media (max-width:760px){.feat2{grid-template-columns:1fr;gap:24px;padding:34px 24px}.page-title{padding:70px 22px 24px}}.site-footer{background:var(--paper);padding:0 0 40px;text-align:center;border-top:1px solid var(--line)}.footer-banner{display:block;margin:0 auto;max-width:100%}.footer-banner-wrap{padding:34px 40px 30px;text-align:center}.footer-banner-wrap img{width:100%;max-width:1080px;height:auto;margin:0 auto;border-radius:4px}.footer-nav{font-family:var(--sans);font-size:.82rem;letter-spacing:.04em;line-height:2.2;padding:0 24px 18px}.footer-nav a{margin:0 12px;color:var(--ink-soft);transition:opacity .25s}.footer-nav a:hover{opacity:1;color:var(--ink)}.footer-copy{font-family:var(--sans);font-size:.76rem;letter-spacing:.05em;color:var(--ink-soft);opacity:.8}.cookie{position:fixed;left:24px;bottom:24px;z-index:60;max-width:390px;background:var(--white);padding:26px 28px;box-shadow:0 12px 40px #00000029}.cookie p{font-size:1rem;line-height:1.55;color:var(--ink-soft);margin-bottom:18px}.cookie-btns{display:flex;gap:12px}.btn-solid,.btn-ghost{font-family:var(--sans);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;padding:.7em 1.7em;cursor:pointer;border:1px solid var(--ink);transition:.3s}.btn-solid{background:var(--ink);color:var(--paper)}.btn-solid:hover{opacity:.85}.btn-ghost{background:none;color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}@media (max-width:900px){.gallery-grid,.amenities{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr;gap:40px}}@media (max-width:560px){.cards{grid-template-columns:1fr;padding:20px}.card{aspect-ratio:16/11}}@media (max-width:820px){.header-inner{padding:18px 22px}.brand{font-size:1.6rem}.header-cta{display:none}.hamburger{display:flex}.nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);color:var(--ink);flex-direction:column;gap:0;margin:0;max-height:0;overflow:hidden;transition:max-height .4s ease;box-shadow:0 12px 30px #0000001a}.nav.open{max-height:520px}.nav a{width:100%;padding:16px 24px;border-bottom:1px solid var(--line);opacity:1}.nav a.active{border-bottom:1px solid var(--line)}.site-header:not(.scrolled):not(.solid) .nav a{color:var(--ink)}.section,.welcome{padding:80px 24px}.cta-banner{background-attachment:scroll;padding:90px 20px}.gallery,.award{padding-left:22px;padding-right:22px}form.booking{grid-template-columns:1fr}}@media (max-width:520px){body{font-size:18px}.gallery-grid,.amenities{grid-template-columns:1fr}.cookie{left:12px;right:12px;bottom:12px;max-width:none}}
