/* Shared guest surfaces only. Owner workspace skins never inherit these tokens. */
.guest-website{--site-paper:#f7f5ef;--site-ink:#283d32;--site-accent:#405d46;--site-soft:#e8ecdf;--site-line:#d8dcd0;--site-heading:Georgia,'Times New Roman',serif;margin:0;background:var(--site-paper);color:var(--site-ink);font-family:Arial,Helvetica,sans-serif;font-size:1.125rem;line-height:1.65;overflow-wrap:break-word}
.guest-website.palette-clay{--site-paper:#fbf5ee;--site-ink:#4b342c;--site-accent:#8b4b34;--site-soft:#f1e3d7;--site-line:#ddcbbd}
.guest-website.palette-sea{--site-paper:#f6f5f0;--site-ink:#233f49;--site-accent:#315b67;--site-soft:#e2eaeb;--site-line:#cddadc}
.guest-website.type-simple{--site-heading:Arial,Helvetica,sans-serif}
.guest-website h1,.guest-website h2,.guest-website h3{font-family:var(--site-heading);font-weight:400;letter-spacing:-.035em;line-height:1.12;color:var(--site-ink)}
.site-page h1,.site-hero h1{font-size:clamp(2.4rem,4.6vw,4.4rem)}
.site-section h2,.site-story h2{font-size:clamp(1.9rem,3vw,2.8rem)}
.site-stays h3{font-size:1.65rem}
.site-header{display:flex;align-items:center;gap:24px;padding:22px 4.5%;background:var(--site-paper);border-bottom:1px solid var(--site-line);position:relative;z-index:40}
.site-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--site-heading);font-size:1.45rem;line-height:1.15;letter-spacing:-.03em;text-decoration:none;font-weight:500}
.site-brand img{width:48px;height:48px;object-fit:contain}
.site-nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,1.6vw,26px);flex-wrap:wrap;font-size:1rem}
.site-nav a,.site-footer a{text-decoration:none}
.site-nav a:hover,.site-nav a[aria-current],.site-footer a:hover{text-decoration:underline;text-underline-offset:6px}
.site-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--site-accent);border:1px solid var(--site-accent);color:#fff!important;text-decoration:none;padding:13px 24px;border-radius:4px;font-size:1rem;font-weight:600;min-height:48px;transition:filter .15s}
.site-button:hover{filter:brightness(.85)}
.site-book{white-space:nowrap}.site-mobile-menu{display:none}.site-skip{position:fixed;top:-90px;left:20px;padding:12px;background:var(--site-paper);z-index:100}.site-skip:focus{top:10px}
.site-width{width:min(1240px,91%);margin-inline:auto}
.site-hero{position:relative;min-height:min(640px,72vh);display:flex;align-items:center;background:#364638;isolation:isolate}
.site-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.site-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,24,17,.76),rgba(10,24,17,.20))}
.site-hero-copy{padding:70px 6%;width:min(820px,100%);color:white}
.guest-website .site-hero h1{color:white;margin:20px 0 24px;max-width:780px;white-space:pre-line}
.site-hero-copy>p:not(.site-eyebrow){font-size:1.25rem;max-width:580px;line-height:1.7;margin-bottom:30px}
.site-hero .site-button{background:var(--site-paper);color:var(--site-ink)!important;border-color:var(--site-paper)}
.site-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;font-weight:600;margin:0 0 12px}
.site-intro{padding-block:56px 8px}.site-intro .site-prose{max-width:860px}
.site-prose{font-size:1.2rem;line-height:1.75;white-space:normal}.site-prose p{margin:0 0 1.3em;white-space:pre-line}.site-prose p:last-child{margin-bottom:0}
.site-section{padding-block:52px}.site-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}
.site-text-link{display:inline-flex;gap:14px;font-size:1.05rem;font-weight:600;border-bottom:1px solid currentColor;padding-block:8px;text-decoration:none}.site-text-link:hover{opacity:.75}
.site-stays{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(310px,100%),1fr));gap:28px}.site-stays>article{box-shadow:none;border:0;border-radius:0;background:transparent}.site-stays>article a>div:last-child{padding-inline:0}.site-stays>article a>div:first-child{border-radius:3px}.site-stays h3{font-size:1.7rem}
.site-story{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:5%;padding-block:30px}.site-story>div{padding-block:10px}.site-story h2{margin-bottom:16px}.site-story p:not(.site-eyebrow){margin-bottom:20px;line-height:1.75;max-width:520px;font-size:1.15rem}.site-story-photo{height:380px;display:block}.site-story-photo img{width:100%;height:100%;object-fit:cover;border-radius:3px}.site-story-reverse .site-story-photo{order:2}
.site-footer{margin-top:48px;padding:48px 4.5% 22px;background:var(--site-soft);display:grid;grid-template-columns:1fr 1fr;gap:40px;font-size:1rem}.site-footer p{margin-top:12px}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:flex-start;gap:12px 28px}.site-footer-bottom{border-top:1px solid var(--site-line);padding-top:20px;grid-column:1/-1;display:flex;justify-content:space-between;font-size:.85rem}
.site-page{padding-block:65px}.site-page-heading{text-align:center;margin:0 auto 50px;max-width:820px}.site-page-heading p:last-child:not(.site-eyebrow){max-width:650px;margin:24px auto 0;font-size:1.2rem}.site-page-photo{width:100%;max-height:640px;object-fit:cover;border-radius:3px}.site-page-body{max-width:760px;margin:50px auto}.site-page-action{text-align:center;margin:24px auto}.site-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:45px}.site-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px}.site-gallery figcaption{font-size:.85rem;margin-top:10px}
/* One stay: a feature card instead of a lone grid card stretched across the page. */
.site-feature{display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;background:var(--site-soft);border-radius:6px;overflow:hidden}
.site-feature-photo{display:block;min-height:340px}.site-feature-photo img{width:100%;height:100%;max-height:480px;object-fit:cover;display:block}
.site-feature-copy{padding:36px 40px;display:flex;flex-direction:column;justify-content:center}
.site-feature-copy h3{font-size:clamp(1.7rem,2.4vw,2.2rem);margin:0 0 10px}
.site-feature-copy p:not(.site-eyebrow){margin:0 0 16px;line-height:1.7}
.site-facts{font-weight:600}
.site-price strong{font-size:1.4rem;font-weight:600}
.site-feature-copy .site-button{align-self:flex-start;margin-top:6px}
/* One page (mode "compact"): photo mosaic, then the stay beside booking and the host. */
.cp-photos{position:relative;display:grid;grid-template-columns:3fr 2fr;gap:8px;margin-top:24px;height:min(460px,52vh)}
.cp-photos img{width:100%;height:100%;object-fit:cover;display:block}
.cp-photo-lead,.cp-photo-grid a{display:block;overflow:hidden;min-height:0}
.cp-photo-lead{border-radius:6px 0 0 6px}.cp-photo-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;min-height:0}
.cp-photo-grid a:nth-child(2){border-top-right-radius:6px}.cp-photo-grid a:nth-child(4){border-bottom-right-radius:6px}
.cp-all-photos{position:absolute;right:14px;bottom:14px;background:var(--site-paper);color:var(--site-ink);border-radius:4px;padding:8px 14px;font-size:.95rem;font-weight:600;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.cp-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;align-items:start;padding-block:32px 8px}
.cp-intro h1{font-size:clamp(2rem,3.4vw,3rem);margin:0 0 10px}
.cp-lead{font-size:1.25rem;line-height:1.65;margin:14px 0 0}
.cp-block{padding-top:28px;margin-top:28px;border-top:1px solid var(--site-line)}
.cp-block h2{font-size:clamp(1.5rem,2.2vw,2rem);margin:0 0 12px}
.cp-block p{margin:0 0 12px;line-height:1.7}
.cp-amenities{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px}
.cp-amenities li{display:flex;gap:10px;align-items:baseline}
.cp-rules{padding-left:1.1em;margin:0}.cp-rules li{margin-bottom:8px}
.cp-with-photo{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:start}
.cp-side-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;margin-top:52px}
.cp-area-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.cp-area-photos figure{margin:0}.cp-area-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.cp-area-photos figcaption{font-size:.9rem;margin-top:6px}
.cp-side{display:grid;gap:20px}
.cp-card{background:var(--site-soft);border-radius:6px;padding:24px}
.cp-book .site-price{margin:0 0 4px}.cp-book .site-price strong{font-size:1.6rem}
.cp-book-button{width:100%;margin-top:14px}
.cp-small{font-size:.9rem;margin:12px 0 0;opacity:.85}
.cp-mobile-book{display:none;margin-top:18px}.cp-mobile-book .site-price{margin:0 0 10px}.cp-mobile-book .site-button{width:100%}
.cp-host-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;margin-bottom:16px}
.cp-host h2{font-size:1.6rem;margin:0 0 10px}.cp-host p{margin:0 0 10px;line-height:1.65}
/* Existing property, enquiry and signed guest forms share the same theme. */
.guest-website .bg-white,.guest-website .bg-stone-50,.guest-website [class~='bg-[#F7F3ED]'],.guest-website [class~='bg-[#fffaf3]']{background-color:var(--site-paper)}
.guest-website .text-stone-950,.guest-website .text-stone-900,.guest-website .text-teal-900,.guest-website .text-teal-800,.guest-website .text-teal-700{color:var(--site-ink)}
.guest-website .border-stone-200{border-color:var(--site-line)}
.guest-website .bg-teal-50,.guest-website .bg-stone-100{background-color:var(--site-soft)}
.guest-website .bg-stone-950,.guest-website .bg-teal-600,.guest-website .bg-teal-700,.guest-website .bg-teal-800{background-color:var(--site-accent);color:white}
/* Full-size photos sit on near-black, never the theme colour, so their colours look true (Vanessa, 12 Oct 2026). */
.guest-website .photo-viewer{background-color:#0d0d0c;color:#fff}
.guest-website input,.guest-website select,.guest-website textarea{accent-color:var(--site-accent)}
.guest-website :focus-visible{outline:3px solid var(--site-accent);outline-offset:4px}
@media(min-width:1600px){.site-header{padding-inline:max(4.5%,calc((100vw - 1500px)/2))}}
@media(max-width:1100px){.site-nav{display:none}.site-header{padding:18px 4.5%}.site-book{margin-left:auto}.site-mobile-menu{display:block}.site-mobile-menu summary{cursor:pointer;list-style:none;font-size:.85rem;padding:10px}.site-mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:var(--site-paper);border-bottom:1px solid var(--site-line);padding:16px 5%;display:grid;grid-template-columns:1fr 1fr;gap:12px}.site-mobile-menu nav a{padding:10px}.site-hero{min-height:560px}}
@media(max-width:900px){.cp-photos{grid-template-columns:1fr;height:auto}.cp-photo-lead img{aspect-ratio:4/3}.cp-photo-lead{border-radius:6px}.cp-photo-grid{display:none}.cp-layout{grid-template-columns:1fr;gap:24px}.cp-mobile-book{display:block}.cp-amenities{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-with-photo{grid-template-columns:1fr}.cp-side-photo{margin-top:0}}
@media(max-width:640px){.site-header{gap:10px}.site-brand{font-size:1.13rem;max-width:65%}.site-brand img{width:34px;height:34px}.site-book{display:none}.site-mobile-menu{margin-left:auto}.site-hero{min-height:520px}.site-hero-copy{padding:70px 6%}.site-hero h1{font-size:3.2rem}.site-intro{grid-template-columns:1fr;gap:14px;padding-block:45px}.site-section{padding-block:45px}.site-story{grid-template-columns:1fr;gap:8px;padding-block:25px}.site-story-reverse .site-story-photo{order:0}.site-story-photo{height:260px}.site-feature{grid-template-columns:1fr}.site-feature-photo{min-height:0}.site-feature-photo img{aspect-ratio:4/3;max-height:none}.site-feature-copy{padding:22px 20px 26px}.site-intro{padding-block:36px 0}.site-story>div{padding-block:24px}.site-section-heading{align-items:start}.site-footer{grid-template-columns:1fr;padding-top:38px;margin-top:40px}.site-footer nav{justify-content:flex-start}.site-page{padding-block:38px}.site-page-heading{margin-bottom:30px}.site-page-body{margin-block:30px}.site-gallery{grid-template-columns:1fr;gap:24px}.site-page-photo{min-height:240px}.site-footer-bottom{gap:20px}.site-page h1,.site-hero h1{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){.guest-website *{scroll-behavior:auto!important;transition:none!important}}

.site-counts{grid-column:1/-1;font-size:.75rem;max-width:650px}.site-counts summary{cursor:pointer}
