:root{--green:#193c32;--gold:#d4b57d;--paper:#f8f6f1;--ink:#243d34;--muted:#65716a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.14}h1{font-size:clamp(50px,6.2vw,92px);letter-spacing:-3px}h2{font-size:clamp(34px,4vw,54px);letter-spacing:-1.8px}h3{font-size:29px;letter-spacing:-.7px}em{font-weight:400}p{margin-bottom:20px}.wrap{max-width:1280px;margin:auto;padding:0 64px}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:700;line-height:1.6;margin-bottom:22px}.topline{height:35px;background:var(--green);color:#eee7d9;display:flex;justify-content:space-between;align-items:center;padding:0 48px;font-size:9px;letter-spacing:1.6px}.topline span{letter-spacing:.5px}header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;background:var(--paper);height:100px;padding:10px 40px;gap:20px;box-shadow:0 1px 0 #193c3215}.brand{display:flex;align-items:center;gap:10px}.brand img{height:76px;width:76px;object-fit:contain}.brand span{font-family:Georgia,serif;font-size:18px;letter-spacing:.5px;line-height:1.4}.brand small{display:block;font:8px Arial;letter-spacing:3px;margin-top:5px}nav{display:flex;align-items:center;gap:22px;font-size:11px}nav a{padding:10px 0}nav .special{border-bottom:1px solid var(--gold)}nav a[aria-current]{font-weight:700}nav a:hover,.textlink:hover{color:#957036}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:50px;padding:14px 24px;background:var(--green);color:white;border:1px solid var(--green);font-size:11px;font-weight:600;letter-spacing:.3px}.button:hover{background:#2e594b}.button.gold{background:var(--gold);color:#17392f;border-color:var(--gold)}.button.gold:hover{background:#e2c797}.button.compact{font-size:10px;min-height:42px;padding:12px 20px}.button.outline{background:transparent;border-color:#ffffff88;color:#fff}.button.outline:hover{background:#ffffff18}.actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.textlink{background:none;border:0;padding:0 0 6px;border-bottom:1px solid #94a39a;font-size:11px;font-weight:700;display:inline-block}.hero{height:690px;max-height:85vh;min-height:570px;position:relative;color:white}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#092a25d9 0%,#12302b66 55%,#10302815),linear-gradient(0deg,#08231e80,transparent 30%)}.hero-copy{position:absolute;left:max(64px,calc((100vw - 1152px)/2));top:65px;max-width:590px}.hero-copy .eyebrow{color:#e1ccaa}.hero h1{margin-bottom:22px}.hero h1 em{color:#ead4ab}.hero-copy>p:not(.eyebrow){max-width:380px;font-size:13px;color:#f2f1e8;line-height:1.8}.hero-foot{position:absolute;bottom:28px;left:64px;right:64px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px}.featurebar{display:flex;justify-content:space-evenly;padding:24px 45px;border-bottom:1px solid #d9dfd6;font-size:11px;letter-spacing:.4px}.featurebar span+span{border-left:1px solid #cfd8d0;padding-left:40px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:90px;padding-bottom:90px}.intro>div:nth-child(2){padding-top:35px;color:var(--muted);font-size:13px}.intro h2{margin-bottom:0}.rooms-section{background:#eeeee6;padding:85px 0}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px}.sectionhead h2{margin-bottom:0}.sectionhead>p{font-size:12px;color:var(--muted);margin-bottom:6px;max-width:320px}.filters{display:flex;gap:8px;margin:35px 0 30px;flex-wrap:wrap}.filters button{padding:9px 20px;border:1px solid #ccd3c9;border-radius:30px;background:transparent;font-size:11px}.filters button.selected{color:white;background:var(--green);border-color:var(--green)}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.roomcard{background:var(--paper);display:flex;flex-direction:column}.roomphoto{position:relative}.roomphoto img{width:100%;height:255px;object-fit:cover}.gallery-button{position:absolute;bottom:14px;right:14px;background:#f8f6f1ed;border:0;padding:8px 12px;font-size:10px}.roomtag{position:absolute;left:14px;top:14px;background:var(--green);color:white;padding:5px 10px;font-size:9px;letter-spacing:1px}.roomcontent{padding:25px;display:flex;flex-direction:column;flex:1}.roomcontent h3{font-size:26px;margin-bottom:12px}.roommeta{font-size:10px;letter-spacing:.3px;padding-bottom:15px;border-bottom:1px solid #d8ddd3;margin-bottom:15px;color:#69756e}.roomdesc{font-size:12px;color:var(--muted);line-height:1.8;flex:1}.roomactions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.roomactions .button{min-height:40px;padding:11px 16px;font-size:10px;gap:14px}.roomactions>a:not(.button){font-size:10px;text-decoration:underline;text-underline-offset:4px}.rate{font-size:13px;font-weight:700}.estate-banner{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;padding-top:95px;padding-bottom:95px;align-items:center}.estate-banner>img{height:400px;width:100%;object-fit:cover}.estate-banner>div>p:not(.eyebrow){font-size:13px;color:var(--muted)}.experiences{background:#e5e9df;padding:85px 0 45px}.experience-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:20px;margin-top:40px}.experience-card{background:var(--paper);padding:35px;display:flex;flex-direction:column;min-height:410px}.experience-card p:not(.eyebrow){font-size:12px;color:var(--muted);flex:1}.experience-card h3{margin:45px 0 25px}.experience-card .number{font-size:9px;letter-spacing:1.8px}.experience-card .textlink{align-self:flex-start}.experience-card.dark{background:var(--green);color:#f1ecdf}.experience-card.dark p{color:#c7d0c5}.experience-card.photo{padding:0;position:relative;overflow:hidden}.experience-card.photo>img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.experience-card.photo>div{position:relative;margin-top:auto;color:white;padding:30px;background:linear-gradient(transparent,#102f28e8)}.experience-card.photo h3{margin:0 0 18px}.experience-card.photo p{color:#fff}.experience-card.photo .eyebrow{margin-top:60px}.experience-note{font-size:10px;color:#657167;text-align:center;margin:30px 0 0}.rental-teaser{padding-top:95px;padding-bottom:95px;text-align:center;max-width:800px}.rental-teaser p:not(.eyebrow){font-size:13px;color:var(--muted)}.testimonials{background:#eae7dc;padding:80px 0}.testimonials h2{margin-bottom:35px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.quotes article{border-top:1px solid #bac6b9;padding-top:15px}.quotes article>span{font:60px Georgia;color:#8f9c89;line-height:1}.quotes p{font-size:13px;color:#56665d}.quotes strong{font-size:11px}.quotes small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;padding-top:90px;padding-bottom:90px}.faq>div>p:not(.eyebrow){font-size:12px;color:var(--muted)}details{border-bottom:1px solid #d3d9ce}summary{padding:22px 25px 22px 0;cursor:pointer;font-size:13px;list-style:none;position:relative}summary:after{content:'+';position:absolute;right:5px;font-size:20px;top:18px}details[open] summary:after{content:'−'}details p{font-size:12px;color:var(--muted);padding-right:25px}.contact{background:var(--green);color:#f2ecdd;padding:75px 0}.contact-inner{display:flex;justify-content:space-between;gap:50px}.contact h2{font-size:52px}.contact h2 em{color:var(--gold)}.contactdetails{font-size:13px;min-width:280px}.contactdetails>a{display:block;margin-bottom:15px}.social{display:flex;gap:25px;margin-top:30px;font-size:11px}.contact .eyebrow{color:#d6c393}footer{padding:30px 0;background:#113027;color:#c9d3c5;font-size:10px}footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}footer span{letter-spacing:1px}footer small{display:block;font-size:9px;letter-spacing:0}footer div div{display:flex;gap:25px}footer p{margin:0;font-size:9px}#menu{display:none}.subpage[hidden],.roomcard[hidden],#home-page[hidden]{display:none}.pagehero{height:470px;position:relative;color:white}.pagehero>img{width:100%;height:100%;object-fit:cover}.pagehero>div{position:absolute;inset:0;background:linear-gradient(90deg,#10382de8,#193c3233);padding:65px max(64px,calc((100vw - 1152px)/2))}.pagehero h1{font-size:64px}.pagehero p{max-width:450px}.staylength{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:55px 0;border-bottom:1px solid #d3dacf;margin-bottom:70px}.staylength p:not(.eyebrow){font-size:12px;color:var(--muted)}.rentalrow{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:center;padding:40px 0;border-bottom:1px solid #d3dacf}.rentalrow>img{height:300px;width:100%;object-fit:cover}.rentalrow p{font-size:13px;color:var(--muted)}.rentalrate{color:var(--green)!important;background:#e8ede2;padding:15px;font-size:12px!important}.rentalterms{padding:75px 0}.termsgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:35px 0}.termsgrid h3{font-size:23px}.termsgrid p{font-size:12px;color:var(--muted)}.bfhero{position:relative;min-height:670px;background:#10281f;color:white;display:grid;grid-template-columns:1fr 1fr}.bfhero>img{width:100%;height:100%;object-fit:cover}.bfcopy{padding:70px 60px}.bfcopy h1{font-size:55px}.bfcopy h1 em{color:var(--gold)}.bfprice{font:80px/1.1 Georgia;color:var(--gold);margin-bottom:20px}.bfcopy>p:not(.eyebrow){font-size:13px;color:#ccd4c7}.bfstatus{font-size:10px!important;text-transform:uppercase;letter-spacing:2px}.bfback{display:block;margin-top:24px;font-size:11px}dialog{width:min(1000px,94vw);padding:25px;border:0;color:var(--green);background:var(--paper);max-height:92vh}dialog::backdrop{background:#08251ee6}.dialogbar{display:flex;justify-content:space-between;align-items:center}.dialogbar h3{font-size:25px;margin-bottom:15px}.dialogbar .eyebrow{margin-bottom:6px}.dialogbar>button{border:0;background:none;padding:15px;font-size:20px}.gallery-stage{display:flex;align-items:center;justify-content:center;gap:12px}.gallery-stage>img{height:55vh;max-width:calc(100% - 90px);object-fit:contain}.gallery-stage>button{border:1px solid #cbd3c7;background:transparent;height:38px;width:38px;flex-shrink:0}.gallery-bottom{margin-top:15px;font-size:11px}#thumbnails{display:flex;gap:8px;margin-top:10px;overflow:auto}#thumbnails button{background:none;border:2px solid transparent;padding:0;flex-shrink:0}#thumbnails button.active{border-color:var(--green)}#thumbnails img{height:55px;width:75px;object-fit:cover}.skip{position:absolute;top:-100px;left:15px;background:var(--gold);padding:10px;z-index:99}.skip:focus{top:10px}:focus-visible{outline:3px solid #b48a41;outline-offset:4px}
@media(min-width:1500px){.hero{height:780px;max-height:none}.hero-copy{top:100px}}@media(max-width:1150px){header{padding:10px 25px}.brand span{display:none}nav{gap:18px}.wrap{padding-left:40px;padding-right:40px}.hero-copy{left:40px}.room-grid{gap:20px}.roomcontent{padding:20px}.experience-card{padding:25px}.experience-grid{grid-template-columns:1fr 1fr 1fr}.featurebar span+span{padding-left:25px}}
@media(max-width:800px){.topline{padding:0 20px;font-size:8px;height:30px}.topline span{display:none}header{height:78px;padding:8px 18px;gap:10px}.brand img{height:58px;width:58px}.brand span{display:block;font-size:12px}.brand small{font-size:6px;letter-spacing:2px}header>.compact{margin-left:auto;font-size:9px;min-height:38px;padding:10px 12px}#menu{display:block;order:3;border:0;background:none;font-size:23px;padding:10px}nav{display:none;position:absolute;top:78px;left:0;right:0;flex-direction:column;align-items:stretch;padding:20px 30px;background:var(--paper);border-bottom:1px solid #ccd3c9;gap:0;font-size:13px}nav.open{display:flex}nav a{padding:12px 0}.hero{height:640px;min-height:600px;max-height:none}.hero>img{object-position:62% center}.shade{background:linear-gradient(90deg,#092a25dd,#12302b44),linear-gradient(0deg,#08231e80,transparent 30%)}.hero-copy{top:65px;left:28px;right:28px;max-width:500px}.hero h1{font-size:65px;letter-spacing:-2.5px}.hero-copy>p:not(.eyebrow){max-width:330px}.hero-foot{left:28px;right:28px}.hero-foot span:nth-child(2){display:none}.wrap{padding-left:25px;padding-right:25px}.featurebar{overflow:auto;justify-content:flex-start;gap:25px;padding:20px 25px;white-space:nowrap;font-size:10px}.featurebar span+span{padding-left:25px}.intro{grid-template-columns:1fr;gap:15px;padding-top:60px;padding-bottom:60px}.intro>div:nth-child(2){padding-top:0}.rooms-section{padding:60px 0}.sectionhead{display:block}.sectionhead>p{margin-top:22px}.room-grid{grid-template-columns:repeat(2,1fr);gap:20px}.roomphoto img{height:240px}.roomcontent h3{font-size:25px}.estate-banner{grid-template-columns:1fr;gap:30px;padding-top:60px;padding-bottom:60px}.estate-banner>img{height:350px}.experiences{padding:60px 0 35px}.experience-grid{grid-template-columns:1fr}.experience-card{min-height:300px;padding:30px}.experience-card.photo{min-height:410px}.experience-card h3{margin-top:25px}.experience-card .textlink{margin-top:10px}.rental-teaser{padding-top:60px;padding-bottom:60px}.testimonials{padding:60px 0}.quotes{grid-template-columns:1fr;gap:30px}.faq{grid-template-columns:1fr;gap:25px;padding-top:60px;padding-bottom:60px}.contact{padding:60px 0}.contact-inner{flex-direction:column}.contact h2{font-size:43px}footer .wrap{align-items:flex-start;flex-wrap:wrap}footer div div{gap:15px}.pagehero{height:420px}.pagehero>div{padding:60px 25px}.pagehero h1{font-size:48px}.staylength{grid-template-columns:1fr;gap:20px;padding:40px 0;margin-bottom:45px}.staylength h3{margin-bottom:10px}.staylength .eyebrow{margin-bottom:10px}.staylength article{border-bottom:1px solid #d3dacf}.rentalrow{grid-template-columns:1fr;gap:25px}.rentalrow>img{height:280px}.termsgrid{grid-template-columns:1fr;gap:15px}.bfhero{grid-template-columns:1fr}.bfhero>img{height:250px}.bfcopy{padding:45px 25px}.bfcopy h1{font-size:43px}.bfprice{font-size:68px}.gallery-stage>img{height:48vh;max-width:calc(100% - 70px)}.gallery-stage{gap:6px}.gallery-stage>button{width:30px;height:35px}dialog{padding:15px}}
@media(max-width:520px){.brand span{font-size:10px}.brand img{width:50px}.room-grid{grid-template-columns:1fr}.roomphoto img{height:290px}.hero h1{font-size:60px}.hero .actions{gap:10px}.hero .button{padding:13px 17px;font-size:10px;gap:15px}.filters{gap:7px}.filters button{padding:8px 15px;font-size:10px}.estate-banner>img{height:260px}.roomcontent{padding:25px}.roomdesc{font-size:13px}.roommeta{font-size:11px}.sectionhead h2,h2{font-size:38px}.contact h2{font-size:39px}footer div div{flex-wrap:wrap}footer .wrap>p{width:100%}.hero-copy .eyebrow{font-size:9px}header>.compact{padding:10px;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.booking-section{padding:80px 0;background:#e9ede3}.booking-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;margin-top:35px}.booking-grid form{padding:32px;background:var(--paper)}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-grid label{font-size:11px;font-weight:600;display:block}.booking-grid input:not([type=checkbox]),.booking-grid select,.booking-grid textarea{display:block;width:100%;padding:12px;border:1px solid #cbd3c7;background:white;color:var(--ink);font:13px Arial;margin-top:8px;border-radius:0;min-height:43px}.booking-notes{margin-top:20px}.booking-help{font-size:11px;color:var(--muted);margin-top:20px}.policy-check{display:flex!important;gap:10px;align-items:flex-start;margin-top:25px}.policy-check input{margin:4px 0 0}.booking-special{margin-top:20px;padding:15px;background:#ebe0c9;font-size:12px}.deposit-panel{padding:35px;background:var(--green);color:#f2ecdd}.deposit-panel p:not(.eyebrow){font-size:12px;color:#d2dbd0}.deposit-panel h4{font-size:12px;margin:24px 0 10px}.deposit-amount{font:44px Georgia;color:var(--gold);margin:25px 0}.deposit-amount small{font:8px Arial;display:block;letter-spacing:1.7px;margin-top:10px}.honeypot{position:absolute;left:-10000px;opacity:0}.booking-grid [hidden]{display:none!important}#booking-message{font-size:13px;margin-top:20px}#booking-success{font-size:12px}@media(max-width:800px){.booking-section{padding:55px 0}.booking-grid{grid-template-columns:1fr;gap:25px}.booking-grid form{padding:25px}}@media(max-width:520px){.booking-fields{grid-template-columns:1fr;gap:15px}.booking-grid form{padding:20px}.deposit-panel{padding:25px}}
.stay-details{font-size:13px;line-height:1.6;margin:14px 0}.stay-details summary{cursor:pointer;font-weight:600}.stay-details p{margin:12px 0}.stay-details ul{padding-left:18px}.roomphoto:has(>span:first-child){background:#ced8cd}.roomdesc{overflow-wrap:anywhere}
