@font-face{font-family:Material Symbols Rounded;font-style:normal;font-weight:100 700;font-display:block;src:url(../media/material-symbols-rounded.08_ellfs5s_fo.woff2)format("woff2")}.material-symbols-rounded{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-family:Material Symbols Rounded;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}
:root{--ink:#18231f;--forest:#274d3d;--cream:#f5f0e7;--gold:#c99c58;--white:#fff;--muted:#68716c;--line:#ded8cc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{object-fit:cover}.container{width:min(1160px,100% - 40px);margin-inline:auto}.site-header{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-bottom:1px solid #00000014;position:sticky;top:0}.header-inner{align-items:center;gap:34px;min-height:78px;display:flex}.brand{align-items:center;gap:11px;margin-right:auto;line-height:1.05;display:flex}.brand-mark{background:var(--forest);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:25px;display:grid}.brand strong{font-family:Georgia,serif;font-size:19px;display:block}.brand small{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-top:4px;font-size:10px;display:block}.site-header nav{gap:24px;font-size:14px;font-weight:600;display:flex}.site-header nav a:hover,.text-link:hover{color:var(--forest)}.header-actions{align-items:center;gap:14px;display:flex}.language{font-size:13px;font-weight:800}.mobile-menu{display:none}.button{isolation:isolate;background:linear-gradient(135deg,#356b55 0%,var(--forest) 52%,#19372b 100%);color:#fff;letter-spacing:.015em;border:1px solid #ffffff38;border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:0 26px;font-size:14px;font-weight:800;transition:transform .22s,box-shadow .22s,filter .22s,color .22s,background .22s;display:inline-flex;position:relative;overflow:hidden;transform:translateY(0);box-shadow:0 10px 24px #18372b3d,inset 0 1px #ffffff2e}.button:before{content:"";z-index:-1;background:linear-gradient(110deg,#0000 18%,#ffffff4d 46%,#0000 72%);transition:transform .55s;position:absolute;inset:-2px;transform:translate(-125%)skew(-15deg)}.button:hover{background:linear-gradient(135deg,#3f7861 0%,#2d5a47 52%,#1c3d30 100%);transform:translateY(-2px);box-shadow:0 15px 30px #18372b52,inset 0 1px #ffffff38}.button:hover:before{transform:translate(125%)skew(-15deg)}.button:active{transform:translateY(1px)scale(.99);box-shadow:0 6px 14px #18372b3d}.button:focus-visible{outline-offset:4px;outline:3px solid #f1cf92}.button-small{min-height:42px;padding-inline:19px}.button-secondary{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border-color:#ffffffc7;box-shadow:0 10px 24px #00000029,inset 0 1px #ffffff2e}.button-secondary:hover{color:var(--ink);background:#fff;border-color:#fff;box-shadow:0 15px 30px #00000038}.hero{color:#fff;align-items:flex-end;min-height:690px;display:flex;position:relative}.hero-overlay{background:linear-gradient(90deg,#0c1914c7,#0c19143d 70%),linear-gradient(#0000,#0c191459);position:absolute;inset:0}.hero-content{z-index:1;padding-block:100px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#f1cf92;margin:0 0 15px;font-size:12px;font-weight:800}.eyebrow.dark{color:#9a6b2d}.hero h1,.page-hero h1{letter-spacing:-.025em;max-width:790px;margin:0;font:500 clamp(40px,6vw,74px)/1.06 Georgia,serif}.hero-content>p:not(.eyebrow){max-width:650px;margin:24px 0 32px;font-size:18px}.hero-buttons{flex-wrap:wrap;gap:12px;display:flex}.section{padding:100px 0}.section.no-top{padding-top:15px}.section-tint{background:var(--cream)}h2{margin:0 0 24px;font:500 clamp(31px,4vw,49px)/1.15 Georgia,serif}h3{font:500 24px/1.2 Georgia,serif}.lead{color:#414a46;font-size:20px}.feature-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:50px;display:grid}.feature-grid article{background:#fff;padding:40px}.feature-grid article span,.contact-card>span{color:#9a6b2d;letter-spacing:.15em;text-transform:uppercase;font-size:12px;font-weight:800}.feature-grid p{color:var(--muted)}.split{grid-template-columns:1.08fr .92fr;align-items:center;gap:70px;display:grid}.split-image,.room-image{min-height:520px;position:relative;overflow:hidden}.text-link{color:var(--forest);margin-top:15px;font-weight:800;display:inline-block}.page-hero{background:var(--cream);padding:105px 0 65px}.page-hero .lead{max-width:700px}.room-list{gap:70px;display:grid}.room-card{background:var(--cream);grid-template-columns:1.15fr .85fr;display:grid}.room-card.reverse{grid-template-columns:.85fr 1.15fr}.room-copy{padding:60px}.amenities{columns:2;color:#48524d;margin:30px 0;padding:0;list-style:none}.placeholder{text-align:center;color:#655d52;background:#ddd3c2;place-items:center;min-height:400px;padding:30px;display:grid}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:360px;gap:18px;display:grid}.gallery-grid figure{margin:0;position:relative;overflow:hidden}.gallery-grid .wide{grid-column:1/-1}.about-split{align-items:start}.contact-grid{background:var(--line);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.contact-card{background:#fff;min-width:0;padding:35px}.contact-card h2{overflow-wrap:anywhere;margin-top:16px;font-size:25px}.booking-panel{background:var(--cream);justify-content:space-between;align-items:center;gap:30px;margin-top:60px;padding:45px;display:flex}.booking-panel h2{margin-bottom:8px;font-size:32px}footer{background:var(--ink);color:#fff;padding:65px 0 20px}.footer-grid{grid-template-columns:1.2fr 1.4fr 1fr 1.4fr;gap:35px;display:grid}.footer-grid p{color:#b9c0bc;font-size:14px}.footer-bottom{color:#aab2ae;border-top:1px solid #39443f;justify-content:space-between;margin-top:45px;padding-top:20px;font-size:13px;display:flex}.not-found{place-content:center;justify-items:center;min-height:100vh;padding:25px;display:grid}.not-found h1{margin:0;font:500 100px/1 Georgia,serif}@media (max-width:960px){.site-header .desktop-nav{display:none}.header-inner{min-height:68px}.button-small{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;font-weight:800;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu[open] nav{border:1px solid var(--line);background:#fff;flex-direction:column;gap:0;min-width:250px;padding:18px;display:flex;position:absolute;top:45px;right:0;box-shadow:0 18px 40px #00000024}.mobile-menu nav a{padding:10px}.hero{min-height:650px}.feature-grid{grid-template-columns:1fr}.split,.room-card,.room-card.reverse{grid-template-columns:1fr;gap:0}.split{gap:35px}.room-card.reverse .placeholder{order:2}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.container{width:min(100% - 28px,1160px)}.brand strong{font-size:17px}.hero{min-height:620px}.hero-content{padding-block:70px}.hero h1,.page-hero h1{font-size:39px}.hero-content>p:not(.eyebrow){font-size:16px}.hero-buttons .button{width:100%}.section{padding:70px 0}.feature-grid article,.room-copy{padding:30px}.split-image,.room-image{min-height:340px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.gallery-grid .wide{grid-column:auto}.contact-grid{grid-template-columns:1fr}.booking-panel{flex-direction:column;align-items:flex-start;padding:30px}.booking-panel .button{width:100%}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:15px}.amenities{columns:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.city-hero{isolation:isolate;background:var(--forest);color:#fff;align-items:flex-end;min-height:490px;display:flex;position:relative;overflow:hidden}.city-hero-image{z-index:-2;object-position:center 48%}.city-hero-overlay{z-index:-1;background:linear-gradient(90deg,#0a1813d1 0%,#0a181394 55%,#0a181347 100%),linear-gradient(#0000 40%,#0a18134d);position:absolute;inset:0}.city-hero .eyebrow.dark{color:#f1cf92}.city-hero .lead{color:#ffffffe6;max-width:850px;margin-top:30px}.section-intro{max-width:760px;margin-bottom:45px}.attraction-grid{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:45px;display:grid}.attraction-grid article{border:1px solid var(--line);background:#fff;min-height:240px;padding:40px;position:relative;overflow:hidden}.attraction-grid article:after{content:"";border:1px solid #274d3d1f;border-radius:50%;width:160px;height:160px;position:absolute;bottom:-70px;right:-55px}.attraction-grid .attraction-copy>span:not(.icon-label){color:#9a6b2d;letter-spacing:.18em;margin-bottom:30px;font:700 13px/1 Arial,sans-serif;display:block}.attraction-grid h3{margin:0 0 14px}.attraction-grid p{color:var(--muted);margin:0}.attraction-grid.plain{grid-template-columns:repeat(4,1fr)}.attraction-grid.plain article{background:var(--cream);min-height:270px}.attraction-grid article.has-image{padding:0}.attraction-image{background:#ddd3c2;height:220px;position:relative}.attraction-image img{transition:transform .55s}.attraction-grid article.has-image:hover .attraction-image img{transform:scale(1.035)}.attraction-grid article.has-image .attraction-copy{padding:30px}.attraction-grid article.has-image .icon-label{margin-bottom:20px}.travel-note{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;gap:40px;padding:45px;display:flex}.travel-note>div{max-width:700px}.travel-note p:last-child{color:#d1d7d3;margin-bottom:0}@media (max-width:960px){.attraction-grid.plain{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.city-hero{min-height:520px}.attraction-grid,.attraction-grid.plain{grid-template-columns:1fr;margin-top:30px}.attraction-grid article,.attraction-grid.plain article{min-height:0;padding:30px}.attraction-grid article.has-image{padding:0}.travel-note{flex-direction:column;align-items:flex-start;padding:30px}.travel-note .button{width:100%}}.icon-label.material-symbols-rounded{width:52px;height:52px;color:var(--forest);font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;background:#edf3ef;border:1px solid #274d3d24;border-radius:50%;place-items:center;margin-bottom:26px;font-family:Material Symbols Rounded;font-size:27px;font-style:normal;font-weight:400;line-height:1;display:grid;box-shadow:inset 0 1px #ffffffd9,0 7px 18px #274d3d14}.feature-grid .icon-label{color:var(--forest)}.footer-stars{color:var(--gold);letter-spacing:.18em;margin-top:8px;font-size:17px;line-height:1}.footer-address-link{text-underline-offset:4px;-webkit-text-decoration:underline #c99c588c;text-decoration:underline #c99c588c}.footer-address-link:hover{color:#fff;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold)}.map-link-icon.material-symbols-rounded{color:var(--gold);vertical-align:-4px;margin-left:5px;font-size:18px;line-height:1;display:inline-block}.cookie-consent{z-index:100;border:1px solid var(--line);max-width:1160px;color:var(--ink);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:30px;margin-inline:auto;padding:24px 26px;display:flex;position:fixed;bottom:24px;left:24px;right:24px;box-shadow:0 20px 60px #00000038}.cookie-consent-copy{max-width:700px}.cookie-consent-copy strong{font:500 22px/1.2 Georgia,serif}.cookie-consent-copy p{color:var(--muted);margin:7px 0 0;font-size:14px;line-height:1.5}.cookie-consent-actions{flex-shrink:0;gap:10px;display:flex}.cookie-button{border:1px solid var(--forest);background:var(--forest);color:#fff;cursor:pointer;border-radius:999px;min-height:44px;padding:0 18px;font:700 13px Arial,sans-serif}.cookie-button:hover{background:#356b55}.cookie-button-secondary{color:var(--forest);background:#fff}.cookie-button-secondary:hover{background:var(--cream)}.cookie-button:focus-visible,.cookie-settings-link:focus-visible{outline-offset:3px;outline:3px solid #f1cf92}.cookie-settings-link{color:#aab2ae;font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.cookie-settings-link:hover{color:#fff}@media (max-width:700px){.cookie-consent{flex-direction:column;align-items:stretch;gap:18px;padding:22px;bottom:14px;left:14px;right:14px}.cookie-consent-actions{flex-direction:column-reverse}.cookie-button{width:100%}}.footer-legal-links{align-items:center;gap:20px;display:flex}.footer-legal-links>a{color:#aab2ae;text-underline-offset:4px;text-decoration:underline}.footer-legal-links>a:hover{color:#fff}.legal-content{max-width:820px}.legal-content h2{margin-top:52px;font-size:32px}.legal-content h2:first-child{margin-top:0}.legal-content p{color:#48524d;font-size:17px}.legal-email{margin-top:0}@media (max-width:640px){.footer-legal-links{flex-direction:column;align-items:flex-start;gap:10px}}.gallery-photo{background:linear-gradient(110deg,#e9e3d9 8%,#f6f2eb 28%,#e9e3d9 48%) 0 0/220% 100%;animation:1.5s linear infinite gallery-shimmer}.gallery-image{opacity:0;transition:opacity .65s,transform .9s;transform:scale(1.025)}.gallery-photo.is-loaded{background:0 0;animation:none}.gallery-photo.is-loaded .gallery-image{opacity:1;transform:scale(1)}@keyframes gallery-shimmer{to{background-position-x:-220%}}@media (prefers-reduced-motion:reduce){.gallery-photo{animation:none}.gallery-image{transition:none;transform:none}.gallery-photo.is-loaded .gallery-image{opacity:1}}.brand-stars{color:var(--gold);letter-spacing:.08em;margin-right:7px;font-size:9px}@media (min-width:961px){.feature-grid{grid-template-columns:repeat(4,1fr)}.feature-grid article{padding:34px}}.brand-mark{width:46px;height:48px;box-shadow:none;background:0 0;border:0;border-radius:0}.brand-logo{object-fit:contain;width:100%;height:100%}.booking-panel .button{white-space:nowrap}@media (max-width:640px){.booking-panel .button{padding-inline:12px;font-size:13px}}.travel-note .button{max-width:310px;min-height:56px;color:var(--ink);text-align:center;white-space:normal;background:#fff;border-color:#fff;flex:none;padding:12px 24px;line-height:1.35;box-shadow:0 12px 28px #0003}.travel-note .button:hover{color:var(--ink);background:#f1cf92;border-color:#f1cf92}.travel-note .button:focus-visible{outline-color:#fff}@media (max-width:640px){.travel-note .button{max-width:none}}
