:root{--ink:#133140;--paper:#fffdf8;--ocean:#174b59;--gold:#e8bd80;--line:#d9dfdd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b36a22;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:21px 5.5%;background:var(--paper)}.brand{text-decoration:none;font:25px/1.15 Georgia,serif;white-space:nowrap}.brand span{display:block;font:10px/1.5 Arial,sans-serif;letter-spacing:2.8px;margin-top:9px}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav a{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);padding:13px 25px;text-decoration:none;background:var(--ink);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.button:hover{background:var(--ocean)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper);margin-top:13px}.button.light:hover{background:var(--gold)}.hero{position:relative;min-height:640px;height:78vh;max-height:880px;color:white;background:var(--ink)}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 52%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,23,33,.38),rgba(4,23,33,0) 72%),linear-gradient(0deg,rgba(4,23,33,.12),transparent 45%)}.hero-copy{position:relative;text-shadow:0 2px 12px rgba(4,23,33,.4);padding:105px 7%;max-width:880px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.2px;line-height:1.7;margin:0 0 26px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1;margin:0}h1{font-size:clamp(44px,5.3vw,80px);letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:19px;line-height:1.65;margin:24px 0}.photo-label{position:absolute;right:5.5%;bottom:24px;font-size:10px;letter-spacing:2px}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 8%;border-bottom:1px solid var(--line)}.facts>div{display:flex;align-items:center;justify-content:center;gap:15px;border-right:1px solid var(--line)}.facts>div:last-child{border:0}.facts strong{font:37px Georgia,serif;font-weight:400}.facts span{font-size:14px}.section{padding:90px 7%;max-width:1600px;margin:auto}h2{font-size:clamp(36px,3.7vw,56px);letter-spacing:-1.2px}h3{font-size:27px}p{margin:20px 0;color:inherit}.intro{padding-bottom:45px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.intro-grid p:first-child{margin-top:0}.gallery{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;padding-top:10px;padding-bottom:85px}.photo{padding:0;background:none;border:0;text-align:left;color:var(--ink);cursor:pointer;min-width:0}.photo img{width:100%;height:380px;object-fit:cover;display:block}.photo>span{display:flex;justify-content:space-between;font-size:14px;padding-top:15px}.photo:hover img{filter:brightness(.95)}.terrace{display:grid;grid-template-columns:1fr 1fr;gap:110px;background:var(--ink);color:white;max-width:none}.terrace>div{max-width:600px}.terrace .eyebrow{color:var(--gold)}.terrace p{color:#e2e9eb}.small{font-size:14px;line-height:1.7}.amenities{border-left:1px solid #46606a;padding-left:60px}.amenities h3{margin:5px 0 30px}.amenities ul{list-style:none;padding:0;margin:0}.amenities li{padding:10px 0;border-bottom:1px solid #35515d;font-size:15px}.neighborhood{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding-top:105px;padding-bottom:105px}.text-link{font-size:14px;text-underline-offset:6px}.walks>div{position:relative;padding:0 0 23px 52px;margin-bottom:24px;border-bottom:1px solid var(--line)}.walks>div>span{position:absolute;left:0;top:3px;color:#53717c;font-size:12px}.walks h3{font-size:29px}.walks p{font-size:14px;margin:8px 0 0}.booking{background:#e8eeeb;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:100px}.booking-note{font-size:14px;max-width:360px;border-top:1px solid #b9cbc5;margin-top:30px;padding-top:22px}.booking form{background:white;padding:36px;max-width:540px;width:100%}.booking form>p{font-size:14px;margin:8px 0 24px}.date-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:14px;margin-bottom:18px}input,select{display:block;width:100%;min-width:0;background:#fff;border:1px solid #b4c1c4;border-radius:0;padding:11px 10px;margin-top:6px;color:var(--ink);height:48px;font-size:16px}.booking form .button{width:100%;margin:2px 0 13px}.booking form .form-help{font-size:12px;margin-bottom:15px}#stay-result{background:#edf3f5;padding:14px;margin-bottom:18px;font-size:14px}.faq{max-width:1050px;padding-bottom:100px}.faq h2{margin-bottom:40px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-size:17px;cursor:pointer}details p{font-size:15px;max-width:750px;margin-bottom:4px}footer{background:var(--ink);color:#fff;padding:42px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>span{font-size:12px}footer .brand{font-size:23px}dialog{border:0;padding:20px;background:var(--paper);max-width:min(1000px,94vw);color:var(--ink)}dialog::backdrop{background:rgba(4,20,29,.85)}dialog img{max-width:100%;max-height:72vh;display:block;margin:auto}dialog p{margin:12px 0 0;font-size:14px}.close{display:block;margin:0 0 15px auto;background:none;border:1px solid var(--line);padding:8px 15px;cursor:pointer;color:var(--ink)}.skip{position:absolute;left:12px;top:-80px;z-index:10;background:white;padding:12px}.skip:focus{top:12px}@media(max-width:800px){header{padding:18px 5%;gap:15px}.brand{font-size:22px}.brand span{font-size:9px;letter-spacing:1.9px}nav>a:not(.button){display:none}nav .button{padding:10px 14px;font-size:12px}.hero{min-height:590px;height:76vh}.hero-copy{padding:90px 6%}.hero-copy .eyebrow{max-width:245px;font-size:11px}h1{font-size:51px;letter-spacing:-1.5px}.hero-copy>p:not(.eyebrow){font-size:17px}.photo-label{font-size:9px}.facts{padding:25px 4%}.facts>div{display:block;text-align:center}.facts strong{display:block;font-size:30px}.facts span{font-size:12px}.section{padding:60px 6%}.intro-grid,.terrace,.neighborhood,.booking{grid-template-columns:1fr;gap:35px}.intro-grid p:first-child{margin-top:0}.gallery{padding-top:0;gap:18px;grid-template-columns:1fr}.photo img{height:300px}.amenities{border-left:0;border-top:1px solid #46606a;padding:30px 0 0}.neighborhood .walks{margin-top:12px}.booking form{max-width:none;padding:26px}.booking-note{max-width:none}.faq{padding-bottom:65px}footer{flex-direction:column;align-items:flex-start;padding:35px 6%;gap:14px}footer p{margin:0}.date-fields{gap:10px}}@media(max-width:370px){.brand{font-size:19px}nav .button{padding:10px}.hero-copy h1{font-size:43px}.date-fields{grid-template-columns:1fr}.hero-copy{padding-top:65px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-gallery-link{display:inline-block;margin:20px 0 0 24px;color:white;text-underline-offset:6px;font-size:14px}.photo-section{padding-top:20px}.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.gallery-heading p:last-child{font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.gallery-grid .photo img{height:auto;aspect-ratio:3/2;object-fit:cover}.gallery-grid .photo{align-self:start}.gallery-controls{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:15px}.gallery-controls p{text-align:center;margin:0}.gallery-controls button{border:1px solid var(--line);background:white;padding:10px 16px;color:var(--ink);cursor:pointer;min-height:44px}.gallery-controls button:hover{background:#e8eeeb}#photo-count{text-align:center;font-size:12px;margin-top:10px}dialog img{width:100%;height:min(65vh,650px);object-fit:contain}dialog{width:min(1040px,94vw)}
@media(max-width:800px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.gallery-heading{display:block}.gallery-heading h2{font-size:36px}.gallery-heading p:last-child{margin:16px 0 0}.photo-section{padding-top:5px}.hero-gallery-link{margin-left:16px}.gallery-controls{gap:10px}.gallery-controls button{padding:9px 12px}.gallery-controls p{font-size:13px}dialog img{height:55vh}}
@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}.hero-gallery-link{display:block;margin-left:0}.gallery-controls{flex-wrap:wrap}.gallery-controls p{order:3;width:100%;font-size:14px}.gallery-heading h2{font-size:32px}}

.reviews{border-top:1px solid var(--line)}.reviews-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.reviews-heading h2{max-width:640px}.review-rating{flex-shrink:0;text-align:right}.review-rating>strong{font:72px/1 Georgia,serif}.review-rating>strong>span{font-size:30px}.review-rating p{font-size:14px;margin:12px 0 0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.review-card{margin:0;padding:30px;background:#f1f3ee;border-top:3px solid var(--gold);display:flex;flex-direction:column}.review-score{font-size:14px;letter-spacing:1px;margin:0 0 20px;color:var(--ocean);font-weight:600}.review-card blockquote{font:26px/1.35 Georgia,serif;margin:0}.review-summary{font-size:15px;line-height:1.7;margin:20px 0 28px}.review-card figcaption{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.review-card figcaption strong,.review-card figcaption span{display:block}.review-card figcaption span{margin-top:4px;color:#52636b}.reviews-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:28px}.reviews-footer p{font-size:13px;max-width:550px;margin:0}.reviews-footer a{flex-shrink:0}@media(max-width:1000px){nav{gap:20px}.review-card{padding:24px}.review-card blockquote{font-size:23px}.reviews-heading h2{max-width:520px}}@media(max-width:800px){.reviews-heading{display:block}.review-rating{text-align:left;margin-top:30px}.review-rating>strong{font-size:56px}.review-grid{grid-template-columns:1fr}.reviews-footer{display:block}.reviews-footer a{display:inline-block;margin-top:18px}}

.review-rating>img{display:block;width:210px;height:auto;margin-left:auto;border-radius:8px}@media(max-width:800px){.review-rating>img{width:180px;margin-left:0}}

.property-highlights{padding-top:20px;padding-bottom:55px}.highlight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.highlight-grid article{border-top:1px solid var(--line);padding-top:24px}.highlight-grid article>span{display:flex;align-items:center;justify-content:center;width:46px;height:46px;background:#e5eeeb;border-radius:50%;font-size:25px;color:var(--ocean);margin-bottom:20px}.highlight-grid h3{font-size:24px;line-height:1.25}.highlight-grid p{font-size:15px;line-height:1.6;margin:12px 0 0}@media(max-width:800px){.highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.property-highlights{padding-top:0;padding-bottom:45px}}@media(max-width:420px){.highlight-grid{grid-template-columns:1fr}.highlight-grid article{display:grid;grid-template-columns:46px 1fr;column-gap:18px}.highlight-grid article>span{grid-row:1/3}.highlight-grid p{grid-column:2}.highlight-grid h3{font-size:23px}}

.guest-trust-strip{display:flex;align-items:center;justify-content:center;gap:22px;padding:19px 7%;background:#e9f5f5;color:var(--ink);text-decoration:none;border-bottom:1px solid #d3e5e5}.trust-score{font:38px/1 Georgia,serif;white-space:nowrap}.trust-score>span{font-size:22px}.trust-copy{display:flex;align-items:center;gap:22px;font-size:14px}.trust-copy>strong{font-size:16px}.trust-copy>strong>span{color:#2459c4;margin-right:6px}.trust-link{font-size:14px;text-decoration:underline;text-underline-offset:4px;margin-left:22px;white-space:nowrap}.guest-trust-strip:hover{background:#dcefee}@media(max-width:800px){.guest-trust-strip{padding:18px 6%;gap:16px;justify-content:flex-start}.trust-copy{display:block;line-height:1.5}.trust-copy>span{display:block;margin-top:2px}.trust-link{margin-left:auto}}@media(max-width:520px){.guest-trust-strip{flex-wrap:wrap;column-gap:16px;row-gap:8px}.trust-score{font-size:35px}.trust-copy>strong{font-size:15px}.trust-copy>span{font-size:13px}.trust-link{margin-left:0;width:100%;font-size:13px}}

.guest-trust-strip{gap:26px;padding:10px 7%;flex-wrap:nowrap;background:#e7f8fc}.guest-trust-strip:hover{background:#def1f6}.trust-original-badge{display:block;width:126px;height:auto;flex-shrink:0}.trust-badge-caption{display:flex;flex-direction:column;gap:7px;font-size:14px}.trust-badge-caption>strong{font-weight:500}.trust-badge-caption>span{text-decoration:underline;text-underline-offset:4px}.review-rating>img{width:190px}@media(max-width:800px){.guest-trust-strip{justify-content:center}.review-rating>img{width:170px}}@media(max-width:520px){.guest-trust-strip{padding:10px 5%;gap:18px}.trust-original-badge{width:110px}.trust-badge-caption{font-size:13px;gap:8px}.trust-badge-caption>strong{max-width:165px}}

/* Compact original guest badge strip. */
.guest-trust-strip{padding:4px 7%;gap:20px}.trust-original-badge{width:90px}
@media(max-width:520px){.guest-trust-strip{padding:4px 5%;gap:16px}.trust-original-badge{width:90px}}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact>div>p:not(.eyebrow){max-width:400px}.contact form{padding:36px;background:#f1f3ee;max-width:540px;width:100%}.contact form .button{width:100%}.contact .form-help{font-size:14px;line-height:1.6}.contact textarea{display:block;width:100%;margin-top:6px;padding:11px 10px;border:1px solid #b4c1c4;border-radius:0;color:var(--ink);font:inherit;font-size:16px;resize:vertical;min-height:130px}.contact textarea:focus-visible{outline:3px solid #b36a22;outline-offset:5px}.contact-trap{display:none}.contact input[type=hidden]{display:none}@media(max-width:1100px){nav{gap:16px}}@media(max-width:800px){.contact{grid-template-columns:1fr;gap:30px}.contact form{max-width:none;padding:26px}}@media(max-width:420px){.contact .date-fields{grid-template-columns:1fr}}

/* Compact enquiry forms, with readable field text. */
.contact{padding-top:50px;padding-bottom:50px;gap:55px}.contact form{max-width:480px;padding:22px}.contact-identity{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact label{margin-bottom:10px;line-height:1.4}.contact input,.contact select{height:40px;margin-top:4px;padding:7px 9px}.contact textarea{height:82px;min-height:82px;margin-top:4px;padding:7px 9px;line-height:1.4}.contact .form-help{margin:10px 0 14px;font-size:12px;line-height:1.5}.contact form .button{padding:9px 18px}.booking input[type=hidden]{display:none}.booking form .date-fields{gap:12px}@media(max-width:800px){.contact{gap:24px}.contact form{max-width:480px;padding:20px}}@media(max-width:520px){.contact-identity{grid-template-columns:1fr;gap:0}}@media(max-width:420px){.contact .date-fields{grid-template-columns:1fr 1fr;gap:8px}.contact form{padding:16px}.booking form .date-fields{grid-template-columns:1fr}}

/* A compact invitation, with enquiry forms opened on demand. */
.enquiry-cta{position:relative;background:var(--ink);color:#fff;text-align:center;padding:54px 6% 48px}.contact-anchor{position:absolute;top:0;left:0}.enquiry-cta h2{font-size:clamp(36px,4.6vw,64px);line-height:1.12;letter-spacing:-1px}.enquiry-cta h2 em{font-weight:400}.enquiry-cta>p{color:#e2e9eb;font-size:16px;line-height:1.7;margin:24px auto 28px}.enquiry-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.enquiry-actions .button{padding:13px 25px;min-width:205px;font-size:15px}.enquiry-primary{background:#fffdf8;color:var(--ink);border-color:#fffdf8}.enquiry-primary:hover{background:#e8bd80;color:var(--ink)}.enquiry-secondary{background:transparent;border-color:#8a9da6;color:white}.enquiry-secondary:hover{background:var(--ocean)}.enquiry-dialog{width:480px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 32px);overflow:auto;padding:22px;border:0;background:var(--paper)}.enquiry-dialog::backdrop{background:rgba(4,20,29,.65)}.enquiry-close{display:block;margin:0 0 12px auto;padding:4px 8px;border:0;background:transparent;color:var(--ink);font:14px Arial,sans-serif;cursor:pointer}.enquiry-dialog form{margin:0}.enquiry-dialog h3{font-size:28px;margin:0 0 20px}.enquiry-dialog form>p{font-size:14px;margin:8px 0 16px}.enquiry-dialog label{font-size:14px;line-height:1.4;margin-bottom:12px}.enquiry-dialog input,.enquiry-dialog select{height:40px;margin-top:4px;padding:7px 9px}.enquiry-dialog input[type=hidden]{display:none}.enquiry-dialog textarea{display:block;width:100%;height:82px;min-height:82px;resize:vertical;padding:7px 9px;margin-top:4px;font:16px/1.4 Arial,sans-serif;border:1px solid #b4c1c4;color:var(--ink);background:white}.enquiry-dialog textarea:focus-visible{outline:3px solid #b36a22;outline-offset:5px}.enquiry-dialog .button{width:100%;padding:10px 18px}.enquiry-dialog .form-help{font-size:12px;line-height:1.5;margin:12px 0}.enquiry-dialog .text-link{display:inline-block;margin-top:10px}.enquiry-dialog .contact-identity,.enquiry-dialog .date-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:520px){.enquiry-cta{padding:40px 6%}.enquiry-actions{gap:12px}.enquiry-actions .button{width:100%;max-width:320px}.enquiry-dialog{padding:18px}.enquiry-dialog .contact-identity{grid-template-columns:1fr;gap:0}}@media(max-width:360px){.enquiry-dialog .date-fields{grid-template-columns:1fr;gap:0}}
