:root{--ink:#183344;--sand:#f5f1e8;--gold:#b99461}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}.preview{background:var(--ink);color:white;font-size:12px;letter-spacing:2px;padding:8px 5%;display:flex;justify-content:space-between}.preview span{letter-spacing:.6px}header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 5%}.brand{font:38px/1 Georgia,serif;letter-spacing:5px;text-align:center}.brand small{display:block;font:10px/2.5 Arial,sans-serif;letter-spacing:3px}nav{display:flex;align-items:center;gap:34px;font-size:14px}.button{display:inline-block;background:var(--ink);color:white;padding:15px 27px;border:1px solid var(--ink);font-size:14px;letter-spacing:.6px}.button:hover{background:#31596e}.hero{position:relative;min-height:660px;height:73vh;max-height:900px;color:white}.hero>img{height:100%;position:absolute;object-position:center 55%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,32,43,.76),rgba(8,32,43,.12) 80%)}.hero-copy{position:relative;padding:75px 8%;max-width:900px}.eyebrow{font-size:12px;letter-spacing:2.8px;font-weight:bold;margin:0 0 22px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12;margin:0}h1{font-size:clamp(46px,5.2vw,78px);letter-spacing:-2px}h1 em{font-weight:400}h2{font-size:clamp(34px,3.5vw,52px);letter-spacing:-1px}h3{font-size:27px}.hero-copy>p:not(.eyebrow){margin:25px 0;font-size:17px}.light{background:white;color:var(--ink);border-color:white}.light:hover{background:var(--sand)}.hero-foot{position:absolute;bottom:30px;right:5%;font-size:12px;letter-spacing:3px}.ribbon{display:flex;justify-content:space-evenly;gap:20px;padding:25px 5%;background:var(--sand);font-size:14px}.section{padding:95px 8%}.intro{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:8%}.intro p:not(.eyebrow){max-width:440px;margin:25px 0}.intro figure{margin:0}.intro img{height:430px}.intro figcaption{font-size:11px;letter-spacing:2px;margin-top:15px}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:8px;font-size:14px}.text-link span{padding-left:30px}.amenities{background:var(--sand)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.section-head>p{max-width:370px;margin:0}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.amenity-grid img{height:310px}.amenity-grid span{display:block;font-size:11px;letter-spacing:2px;margin:23px 0 12px}.amenity-grid p{font-size:15px}.photos{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:230px 230px;gap:16px}.photos button{padding:0;border:0;background:var(--sand);overflow:hidden}.photos button:first-child{grid-row:span 2}.photos button:last-child{grid-column:span 2}.photos img{height:100%;transition:transform .3s}.photos button:hover img{transform:scale(1.035)}.note{display:flex;gap:70px;align-items:center;justify-content:center;background:var(--sand)}.monogram{width:160px;height:160px;flex-shrink:0;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:90px Georgia;color:var(--gold)}.note>div:last-child{max-width:580px}.draft{color:#556774}.signature{font:italic 27px Georgia}.stay{text-align:center}.stay form{display:flex;gap:15px;max-width:740px;margin:35px auto 0;align-items:end;text-align:left}.stay label{flex:1;font-size:12px;text-transform:uppercase;letter-spacing:1px}.stay input{display:block;width:100%;padding:12px;border:1px solid #c7ced1;color:var(--ink);background:white;margin-top:6px;min-height:54px}.stay .button{min-height:54px}#booking-message{font-size:13px;color:#556774}footer{background:var(--ink);color:white;padding:50px 8%;display:flex;justify-content:space-between;align-items:center;font-size:14px}footer>span{font:italic 20px Georgia}dialog{padding:15px;border:0;max-width:90vw;max-height:92vh;background:var(--sand);color:var(--ink)}dialog::backdrop{background:#081d2be0}dialog img{max-height:75vh;object-fit:contain;width:auto;max-width:85vw}dialog p{margin:10px 0 0}.close{position:absolute;right:20px;top:20px;border:0;border-radius:50%;background:white;color:var(--ink);font-size:30px;width:44px;height:44px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b99461;outline-offset:4px}@media(max-width:760px){.preview span{display:none}header{height:95px;padding:0 6%}.brand{font-size:30px}.brand small{font-size:8px}nav{gap:0}nav>a:not(.button){display:none}nav .button{padding:12px;font-size:12px}.hero{min-height:630px;height:77vh;max-height:780px}.hero-copy{padding:65px 7%}.hero h1{font-size:48px}.eyebrow{font-size:11px;letter-spacing:1.8px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-foot{bottom:20px}.ribbon{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:12px;text-align:center}.section{padding:60px 7%}.intro{grid-template-columns:1fr;gap:35px}.intro img{height:330px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:22px}.amenity-grid{grid-template-columns:1fr;gap:30px}.amenity-grid img{height:300px}.photos{grid-template-columns:1fr 1fr;grid-template-rows:250px 180px 180px}.photos button:first-child{grid-column:span 2;grid-row:auto}.photos button:last-child{grid-column:span 2}.note{gap:25px;align-items:start}.monogram{width:55px;height:55px;font-size:36px}.note h2{font-size:32px}.stay form{flex-wrap:wrap;gap:12px}.stay label{min-width:40%}.stay .button{width:100%}footer{flex-direction:column;gap:20px;text-align:center}footer p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photos img{transition:none}}
/* Reference-inspired coastal homepage */
:root{--ink:#102f44;--sand:#f3f7fa;--gold:#296293}body{background:#fff}.preview{padding:4px 5%;font-size:10px;letter-spacing:1.8px;background:#eaf1f6;color:var(--ink)}header{height:105px;background:linear-gradient(110deg,#f8fafc,#eef5fa 70%,#f8f6f0);padding:0 5%}.brand{font-size:32px;letter-spacing:4px}nav{gap:25px;font-family:Georgia,serif}nav .button{font-family:Arial,sans-serif}.button{border-radius:3px;text-transform:uppercase;font-size:12px;letter-spacing:1.2px;padding:14px 24px;box-shadow:0 3px 7px #102f4415}.hero{height:620px;min-height:620px;max-height:none}.hero>img{object-position:center 53%}.shade{background:linear-gradient(90deg,#0a304357,transparent 75%),linear-gradient(0deg,#08233455,transparent 45%)}.hero-copy{padding:70px 7%}.hero h1{font-size:70px;line-height:1.02;letter-spacing:-2px;text-shadow:0 2px 10px #153e4d22}.hero-copy>p:not(.eyebrow){font-size:19px;line-height:1.5;max-width:490px}.booking-wrap{position:absolute;bottom:19px;left:7%;right:7%}#dates{display:flex;gap:14px;background:#fff;padding:15px;border-radius:6px;box-shadow:0 5px 18px #0003;align-items:stretch;color:var(--ink)}#dates label{flex:1;font-size:12px;line-height:1.3;border:1px solid #dfe6eb;border-radius:4px;padding:8px 12px}#dates input{display:block;width:100%;border:0;background:white;color:var(--ink);font:14px Arial;padding:7px 0 0;min-height:29px}#dates .button{min-width:220px}#booking-message{text-align:center;color:white;font-size:11px;letter-spacing:1px;margin:15px 0 0;text-shadow:0 1px 4px #000}.ribbon{background:#fff;padding:35px 6%;gap:0}.ribbon>div{width:25%;text-align:center;border-right:1px solid #dce4eb;display:flex;flex-direction:column;align-items:center}.ribbon>div:last-child{border:0}.ribbon b{font-size:32px;font-weight:400;line-height:1;color:#296293;margin-bottom:12px}.ribbon span{font:20px Georgia}.ribbon small{font-size:12px;margin-top:9px}.section{padding:65px 6%}.intro{grid-template-columns:1fr 1fr;gap:5%;padding-top:15px}.intro img{height:400px;border-radius:3px}.intro h2{font-size:40px;line-height:1.1}.intro .eyebrow{margin-bottom:12px}.intro p.script-line{font:italic 32px/1.3 Georgia;color:#296293;margin:12px 0 22px}.intro p:not(.eyebrow):not(.script-line){font-size:16px;margin:18px 0 24px;max-width:none}.coastal-banner{min-height:300px;text-align:center;background:linear-gradient(#e9f4fccc,#f2f8fc55),url('assets/beach.jpg') center 60%/cover;display:grid;place-items:center;padding:45px 6%}.coastal-banner h2{font-size:36px}.coastal-banner p{font-size:15px;margin:18px 0 22px}.amenities{background:#f5f8fa}.section-head h2{font-size:40px}.amenity-grid img{height:260px;border-radius:3px}.photos img{border-radius:3px}footer{padding:40px 6%;background:#102f44}h3{font-size:25px}@media(min-width:1500px){header,main,footer,.preview{max-width:1600px;margin:auto}}@media(max-width:760px){header{height:85px;padding:0 5%}.brand{font-size:26px}.brand small{font-size:8px;letter-spacing:2px}nav .button{font-size:10px;padding:12px}.preview{font-size:9px}.hero{height:660px;min-height:660px}.hero-copy{padding:42px 6%}.hero h1{font-size:51px}.hero-copy>p:not(.eyebrow){font-size:16px;max-width:290px}.hero>img{object-position:55% center}.booking-wrap{left:5%;right:5%;bottom:18px}#dates{flex-wrap:wrap;gap:9px;padding:11px}#dates label{min-width:40%;padding:8px}#dates input{font-size:13px}#dates .button{width:100%;min-height:44px}#booking-message{font-size:9px;letter-spacing:.5px}.ribbon{grid-template-columns:1fr 1fr;padding:24px 5%;gap:23px 0}.ribbon>div{width:100%}.ribbon>div:nth-child(2){border:0}.ribbon b{font-size:27px}.ribbon span{font-size:17px}.ribbon small{font-size:11px}.section{padding:45px 6%}.intro{grid-template-columns:1fr;gap:27px;padding-top:10px}.intro img{height:320px}.intro h2{font-size:33px}.intro p.script-line{font-size:27px}.coastal-banner{min-height:310px}.coastal-banner h2{font-size:30px}.coastal-banner br{display:none}.section-head h2{font-size:34px}.amenity-grid img{height:270px}}
/* Three selectable, fully colored design directions. */
body[data-theme]{--page:#102738;--panel:#183649;--panel-alt:#1e4053;--text:#f5f0e6;--muted:#c0cfda;--accent:#d6b780;--line:#416071;--field:#102a3c;--ink:var(--text);background:var(--page);color:var(--text)}
body[data-theme="teal"]{--page:#0c3437;--panel:#15484a;--panel-alt:#205658;--text:#eff8ed;--muted:#b9d7cf;--accent:#98ddcd;--line:#407375;--field:#103b3e}
body[data-theme="charcoal"]{--page:#282521;--panel:#35302b;--panel-alt:#443b32;--text:#f7ead6;--muted:#d2c4b4;--accent:#d7a875;--line:#6d5b48;--field:#2b2723}
.style-picker{padding:16px 5%;background:var(--page);color:var(--text);text-align:center;border-bottom:1px solid var(--line)}.style-picker>span{font-size:11px;letter-spacing:2px;display:block;margin-bottom:10px}.style-picker>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.style-picker button{border:1px solid var(--line);background:transparent;color:var(--text);padding:10px 18px;border-radius:30px;font-size:14px}.style-picker button[aria-pressed="true"]{background:var(--accent);color:var(--page);border-color:var(--accent)}.style-picker p{font-size:13px;color:var(--muted);margin:10px 0 0}
body[data-theme] header{background:var(--panel);color:var(--text)}body[data-theme] .button{background:var(--accent);color:var(--page);border-color:var(--accent);box-shadow:none}body[data-theme] .button:hover{filter:brightness(1.12)}body[data-theme] .hero{color:#fff}body[data-theme] .shade{background:linear-gradient(90deg,#051b3280,transparent 85%),linear-gradient(0deg,#061a2770,transparent 55%)}body[data-theme] #dates{background:var(--panel);color:var(--text);border:1px solid var(--line)}body[data-theme] #dates label{background:var(--field);border-color:var(--line)}body[data-theme] #dates input{background:var(--field);color:var(--text);color-scheme:dark}body[data-theme] .ribbon{background:var(--panel)}body[data-theme] .ribbon>div{border-color:var(--line)}body[data-theme] .ribbon b,body[data-theme] .eyebrow,body[data-theme] .intro p.script-line{color:var(--accent)}body[data-theme] .ribbon small,body[data-theme] .intro p:not(.eyebrow):not(.script-line),body[data-theme] .section-head>p,body[data-theme] .amenity-grid p{color:var(--muted)}body[data-theme] .intro{padding-top:55px}body[data-theme] .amenities{background:var(--panel)}body[data-theme] .gallery{background:var(--page)}body[data-theme] .coastal-banner{background:linear-gradient(#071f36aa,#071f3699),url('assets/beach.jpg') center 60%/cover;color:#fff}body[data-theme] footer{background:var(--panel-alt);color:var(--text)}body[data-theme] dialog{background:var(--panel);color:var(--text)}body[data-theme] .close{background:var(--accent);color:var(--page)}
body[data-theme="teal"] h1,body[data-theme="teal"] h2,body[data-theme="teal"] h3{font-family:'Trebuchet MS',Arial,sans-serif;letter-spacing:-1.5px}body[data-theme="teal"] .hero h1{font-weight:600;font-size:66px}body[data-theme="teal"] .button{border-radius:30px;text-transform:none;font-size:14px;letter-spacing:.3px}body[data-theme="teal"] .intro img,body[data-theme="teal"] .amenity-grid img,body[data-theme="teal"] .photos img{border-radius:18px}body[data-theme="teal"] .intro p.script-line{font-family:'Trebuchet MS',Arial,sans-serif;font-style:normal;font-size:25px}body[data-theme="teal"] .shade{background:linear-gradient(90deg,#003c4199,transparent 85%),linear-gradient(0deg,#073c4666,transparent 55%)}
body[data-theme="charcoal"] .hero-copy{padding-top:80px}body[data-theme="charcoal"] .hero h1{font-style:italic;font-size:76px;font-weight:400}body[data-theme="charcoal"] .button{border-radius:0;letter-spacing:1.7px}body[data-theme="charcoal"] .intro img{border:8px solid var(--panel-alt)}body[data-theme="charcoal"] .brand{color:var(--accent)}body[data-theme="charcoal"] .shade{background:linear-gradient(90deg,#3121158c,transparent 85%),linear-gradient(0deg,#23180f88,transparent 55%)}
@media(max-width:760px){.style-picker{padding:14px 4%}.style-picker button{font-size:12px;padding:9px 12px}.style-picker p{font-size:12px}body[data-theme="teal"] .hero h1{font-size:46px}body[data-theme="charcoal"] .hero h1{font-size:54px}body[data-theme="charcoal"] .hero-copy{padding-top:42px}body[data-theme] .intro{padding-top:40px}}
header .brand{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;letter-spacing:1px;flex-shrink:0}header .brand-wave{width:65px;height:23px;color:var(--accent)}header .brand>span{font:19px/1.25 Georgia,serif;letter-spacing:1px}header .brand small{font:9px/1.5 Arial,sans-serif;letter-spacing:1.6px}header nav{gap:24px}body[data-theme] .reference-footer{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:43px 5%;background:#0c2b40;color:#f1f5f7;text-align:center}.reference-footer>div{padding:0 18px;border-right:1px solid #456072}.reference-footer>div:last-child{border:0}.footer-icon{width:48px;height:48px;border:1px solid #c0d1dc;border-radius:50%;display:grid;place-items:center;margin:0 auto 17px;font:29px Georgia}.reference-footer h3{font:14px/1.4 Georgia,serif!important;letter-spacing:1.4px!important;margin:0 0 8px}.reference-footer p{font-size:13px;line-height:1.5;margin:0;color:#d6e3eb}@media(max-width:1050px){header nav{gap:16px}header .brand>span{font-size:16px}header .brand small{font-size:8px;letter-spacing:1px}header nav a{font-size:12px}header nav .button{padding:13px 14px}}@media(max-width:760px){header .brand>span{font-size:13px;letter-spacing:.5px}header .brand small{font-size:7px;letter-spacing:.4px}header .brand-wave{width:47px;height:18px}header{height:92px}header nav .button{font-size:9px;padding:12px 10px}body[data-theme] .reference-footer{grid-template-columns:1fr 1fr;gap:30px 0;padding:35px 4%}.reference-footer>div:nth-child(2){border:0}.reference-footer h3{font-size:11px!important;letter-spacing:1px!important}.reference-footer p{font-size:12px}.footer-icon{width:40px;height:40px;font-size:25px}}
/* Light coastal palettes: tinted backgrounds rather than white. */
body[data-theme="seaglass"]{--page:#dceee7;--panel:#cce3dc;--panel-alt:#bad8d0;--text:#173f42;--muted:#385c5b;--accent:#23676c;--line:#a0c6bc;--field:#e7f2e9}
body[data-theme="linen"]{--page:#eee2ca;--panel:#e4d5b8;--panel-alt:#d6c29e;--text:#233e4b;--muted:#4c5b5c;--accent:#28556b;--line:#bdad91;--field:#f3e9d7}
body[data-theme="sky"]{--page:#dfedf6;--panel:#cbdfee;--panel-alt:#b8d2e6;--text:#183b59;--muted:#3c5c76;--accent:#245d89;--line:#9bbbd1;--field:#e8f2f9}
body[data-theme="coral"]{--page:#f3e0d8;--panel:#ebcfc3;--panel-alt:#dfbbae;--text:#503b37;--muted:#70554b;--accent:#985941;--line:#c69f91;--field:#f7e9e0}
body:is([data-theme="seaglass"],[data-theme="linen"],[data-theme="sky"],[data-theme="coral"]) #dates input{color-scheme:light}
body:is([data-theme="seaglass"],[data-theme="linen"],[data-theme="sky"],[data-theme="coral"]) .button,body:is([data-theme="seaglass"],[data-theme="linen"],[data-theme="sky"],[data-theme="coral"]) .style-picker button[aria-pressed="true"]{color:#fffaf2}
body:is([data-theme="seaglass"],[data-theme="linen"],[data-theme="sky"],[data-theme="coral"]) .hero .shade{background:linear-gradient(90deg,#123b5366,transparent 85%),linear-gradient(0deg,#16394750,transparent 55%)}
.style-picker button[data-theme-choice]::before{content:'';display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:7px;vertical-align:0;border:1px solid currentColor;background:var(--swatch)}
[data-theme-choice="seaglass"]{--swatch:#a6cfc0}[data-theme-choice="linen"]{--swatch:#ddc49a}[data-theme-choice="sky"]{--swatch:#a8cfe9}[data-theme-choice="coral"]{--swatch:#e6b4a2}[data-theme-choice="navy"]{--swatch:#183649}[data-theme-choice="teal"]{--swatch:#205658}[data-theme-choice="charcoal"]{--swatch:#443b32}
header nav{gap:20px}header nav>a:not(.button){white-space:nowrap}header nav .button{white-space:nowrap}.guest-reviews{background:var(--panel);text-align:center}.guest-reviews>p:last-child{color:var(--muted)}.faq-section{max-width:1000px;margin:auto}.faq-section h2{margin-bottom:30px}.faq-section details{border-bottom:1px solid var(--line);padding:18px 0}.faq-section summary{cursor:pointer;font:20px Georgia,serif}.faq-section details p{color:var(--muted);max-width:720px}@media(min-width:761px) and (max-width:1150px){header{padding:15px 4%;height:auto;gap:18px;flex-wrap:wrap;justify-content:center}header nav{gap:19px}}@media(max-width:760px){header{height:auto;min-height:110px;padding:15px 5%;flex-wrap:wrap;gap:15px;justify-content:center}header nav{width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 17px}header nav>a:not(.button){display:block;font-size:13px}header nav .button{font-size:10px;padding:9px 13px}.faq-section summary{font-size:18px}}
.review-summary{margin:22px 0;color:var(--muted)}.review-summary strong{font-size:24px;color:var(--text)}.review-card{max-width:780px;margin:25px auto 20px;min-height:220px;padding:30px;background:var(--field);border:1px solid var(--line);border-radius:5px}#review-score{font-size:14px;letter-spacing:1px;color:var(--accent);margin:0}#review-quote{font:30px/1.4 Georgia,serif;margin:20px 0}#review-author{font-size:15px;margin:15px 0 6px}.review-excerpt,.review-updated{font-size:12px;color:var(--muted)}.review-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin-bottom:25px}.review-controls button{min-height:44px;border:1px solid var(--line);background:var(--field);color:var(--text);padding:8px 15px;border-radius:4px}.review-controls span{font-size:14px}#review-pause{font-size:13px}.review-updated{margin-top:20px}@media(max-width:760px){.review-card{padding:25px 18px;min-height:250px}#review-quote{font-size:25px}.review-controls{gap:10px}}
.reference-footer>.footer-contact{grid-column:1/-1;border:0;border-top:1px solid #456072;margin-top:35px;padding:30px 0 0;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:25px}.footer-contact strong{font:21px Georgia,serif}.footer-contact address{font-style:normal;font-size:14px;line-height:1.7;color:#d6e3eb;margin-top:10px}.footer-contact>div:last-child{text-align:right;display:flex;flex-direction:column;gap:8px}.footer-contact span{font-size:13px;color:#d6e3eb}.footer-contact a{font:24px Georgia,serif;text-decoration:underline;text-underline-offset:5px}@media(max-width:760px){.reference-footer>.footer-contact{flex-direction:column;text-align:center;margin-top:0}.footer-contact>div:last-child{text-align:center}}
body[data-theme="aqua"]{--page:#d3f1ef;--panel:#a9dedd;--panel-alt:#85c5c8;--text:#123f49;--muted:#34606a;--accent:#146474;--line:#80babe;--field:#e0f5ef}
body[data-theme="blue"]{--page:#d7eaf6;--panel:#adcfe5;--panel-alt:#87b5d5;--text:#12344f;--muted:#3b5971;--accent:#184e7c;--line:#7da9c7;--field:#e4f0f7}
body[data-theme="mint"]{--page:#e0f0da;--panel:#bfdcba;--panel-alt:#a3c89f;--text:#234b41;--muted:#48695b;--accent:#2d6b57;--line:#98bd98;--field:#eaf5e4}
body[data-theme="peach"]{--page:#f8dfcc;--panel:#efc4a8;--panel-alt:#dfa685;--text:#513d36;--muted:#72584a;--accent:#98503a;--line:#c9977a;--field:#fbeadd}
body[data-theme="lavender"]{--page:#e7e4f2;--panel:#cdc8e4;--panel-alt:#b0accf;--text:#383d60;--muted:#585c7a;--accent:#545b89;--line:#aaa4c7;--field:#f0edf7}
body[data-theme="slate"]{--page:#34596d;--panel:#294a5e;--panel-alt:#203d51;--text:#eff5f5;--muted:#c5d8e0;--accent:#b8dce8;--line:#678b9c;--field:#3e6377}
body:is([data-theme="aqua"],[data-theme="blue"],[data-theme="mint"],[data-theme="peach"],[data-theme="lavender"]) #dates input{color-scheme:light}
body:is([data-theme="aqua"],[data-theme="blue"],[data-theme="mint"],[data-theme="peach"],[data-theme="lavender"]) .button,body:is([data-theme="aqua"],[data-theme="blue"],[data-theme="mint"],[data-theme="peach"],[data-theme="lavender"]) .style-picker button[aria-pressed="true"]{color:#fffaf2}
[data-theme-choice="aqua"]{--swatch:#79cece}[data-theme-choice="blue"]{--swatch:#7cb5de}[data-theme-choice="mint"]{--swatch:#a4cf9c}[data-theme-choice="peach"]{--swatch:#eab08a}[data-theme-choice="lavender"]{--swatch:#b4acd8}[data-theme-choice="slate"]{--swatch:#34596d}.style-picker .hero-choices{margin-top:14px;padding-top:13px;border-top:1px solid var(--line);align-items:center}.hero-choices>span{font-size:13px}.hero-choices button{font-size:12px;padding:7px 13px}.hero>img{object-position:center center}
.local-guide{background:var(--page)}.guide-heading{font:30px Georgia,serif;margin:35px 0 22px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-grid.destinations{grid-template-columns:repeat(4,1fr)}.guide-card{background:var(--field);padding:28px 24px;border:1px solid var(--line);border-radius:5px;display:flex;flex-direction:column;align-items:start}.guide-card .eyebrow{font-size:11px;letter-spacing:1.2px;line-height:1.6;margin-bottom:13px}.guide-card h3{font-size:25px}.guide-card>p:not(.eyebrow){font-size:15px;color:var(--muted);margin:16px 0 24px}.guide-card .text-link{margin-top:auto;font-size:14px}.guide-note{font-size:13px;color:var(--muted);margin-top:25px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1000px){.guide-grid.destinations{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.guide-grid,.guide-grid.destinations{grid-template-columns:1fr}.guide-heading{font-size:27px}.guide-card{padding:25px}}
main img[role="button"]{cursor:zoom-in}main img[role="button"]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}#lightbox{width:min(1100px,94vw);max-width:94vw;max-height:94vh;padding:20px;border-radius:8px}#lightbox .close{z-index:3}.gallery-stage{position:relative;display:flex;align-items:center;justify-content:center;height:65vh}.gallery-stage>img{width:100%;max-width:100%;height:100%;max-height:65vh;object-fit:contain}.gallery-prev,.gallery-next{position:absolute;top:45%;z-index:2;border:1px solid var(--line);background:var(--field);color:var(--text);width:46px;height:55px;font:38px Georgia;border-radius:5px}.gallery-prev{left:0}.gallery-next{right:0}.gallery-caption{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:8px 0}.gallery-caption p{font-size:16px}#gallery-count{font-size:14px;white-space:nowrap}.gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:8px 2px}.gallery-thumbnails button{padding:2px;background:transparent;border:2px solid transparent;flex:0 0 75px;height:58px;border-radius:3px}.gallery-thumbnails button[aria-pressed="true"]{border-color:var(--accent)}#lightbox .gallery-thumbnails img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){#lightbox{padding:12px}.gallery-stage{height:58vh}.gallery-stage>img{max-height:58vh}.gallery-caption p{font-size:14px}.gallery-prev,.gallery-next{width:38px;height:48px}.gallery-thumbnails button{flex-basis:62px;height:50px}}
.hero .shade,.hero .hero-copy{pointer-events:none}.hero .hero-copy a{pointer-events:auto}
.location-section{background:var(--panel)}.location-address{max-width:440px}.location-address h3{font-size:26px;margin-bottom:12px}.location-address address{font-style:normal;font-size:17px;line-height:1.6}.location-address p{font-size:15px;color:var(--muted);margin:15px 0}.location-map{display:block;width:100%;height:460px;border:1px solid var(--line);border-radius:5px;background:var(--field)}@media(max-width:760px){.location-address{margin-top:25px}.location-map{height:340px}}@media(min-width:761px) and (max-width:1250px){header:not(.estate-header){height:auto;min-height:105px;flex-wrap:wrap;justify-content:center;gap:18px;padding:18px 4%}header:not(.estate-header) nav{flex-wrap:wrap;justify-content:center;gap:16px}}
.faq-page-main{min-height:65vh}.faq-back{display:block;max-width:1000px;margin:35px auto 0;padding:0 6%;font-size:14px;text-decoration:underline;text-underline-offset:4px}.standalone-faq .faq-section{padding-top:35px}.standalone-faq summary{line-height:1.45}.standalone-faq nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
.contact-link{border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px;padding:0;cursor:pointer}.footer-contact .contact-link{font:23px Georgia;padding:8px 0}#contact-dialog{width:min(540px,94vw);max-height:90svh;padding:32px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);overflow:auto}#contact-dialog::backdrop{background:#061827bc}.contact-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:var(--text);font-size:30px;width:44px;height:44px}#contact-dialog h2{font:34px/1.2 Georgia;margin-right:20px}#contact-dialog>p:not(.eyebrow){color:var(--muted);font-size:15px}#contact-form label{display:block;font-size:14px;margin:16px 0}#contact-form input,#contact-form textarea{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid var(--line);border-radius:4px;background:var(--field);color:var(--text);font:16px Arial}#contact-form textarea{resize:vertical}#contact-form .button{width:100%}.contact-preview,#contact-status{font-size:13px;color:var(--muted)}#contact-form input:focus-visible,#contact-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
