:root{--pool-deep: #0b3d47;--pool: #14808c;--pool-mid: #1aa6b7;--water: #d7f4f2;--sand: #f3ead8;--sand-deep: #e4d3b4;--sun: #f0b429;--leaf: #2f6b4f;--coral: #c45c3e;--ink: #142428;--ink-soft: #3d4f52;--paper: #fffdf8;--line: rgba(20, 36, 40, .12);--shadow: 0 18px 50px rgba(11, 61, 71, .12);--radius: 1.25rem;--font-display: "Fraunces", "Iowan Old Style", Georgia, serif;--font-ui: "Outfit", "Avenir Next", sans-serif;--space: clamp(1rem, 2.4vw, 1.6rem);--wide: 72rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(1200px 500px at 10% -10%,rgba(26,166,183,.16),transparent 50%),var(--paper);font-family:var(--font-ui);font-size:1.05rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,strong{font-family:var(--font-display);letter-spacing:-.03em;line-height:1.15}h1{font-size:clamp(2.2rem,7vw,4.4rem);font-weight:640;margin:0 0 .8rem}h2{font-size:clamp(1.8rem,4.4vw,3rem);margin:0 0 .8rem}h3{font-size:1.35rem;margin:0 0 .45rem}p{margin:0 0 1rem}p:last-child{margin-bottom:0}.shell{width:min(calc(100% - 2rem),var(--wide));margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:1rem;top:-3rem;z-index:40;padding:.65rem .9rem;background:var(--sun);color:var(--ink);font-weight:600;text-decoration:none}.skip-link:focus{top:1rem}.eyebrow{margin:0 0 .55rem;color:var(--pool-deep);font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.lede,.section-head p,.pets-split p,.location-split p{color:var(--ink-soft);max-width:42rem}.section{padding:clamp(4rem,8vw,6.5rem) 0}.section-head{max-width:40rem;margin-bottom:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.2rem;border-radius:999px;border:1px solid transparent;text-decoration:none;font-weight:600}.btn-primary{background:var(--sun);color:var(--ink)}.btn-secondary{background:var(--paper);color:var(--pool-deep);border-color:#0b3d4733}.btn-ghost{background:transparent;color:var(--pool-deep);border-color:#0b3d4747}.btn:focus-visible,.site-nav a:focus-visible,.book-card:focus-visible,.wordmark:focus-visible,.nav-toggle:focus-visible,.site-footer a:focus-visible,.direct-inline a:focus-visible,.email-line a:focus-visible,.gallery-item:focus-visible,.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:3px solid var(--sun);outline-offset:3px}.site-header{position:sticky;top:0;z-index:20;background:#fffdf8b8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid transparent}.site-header.is-scrolled{border-bottom-color:var(--line)}.header-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.25rem}.wordmark,.footer-mark{display:flex;align-items:center;gap:.7rem;text-decoration:none}.wordmark strong,.footer-mark strong{display:block;font-size:1.05rem}.wordmark small,.footer-mark small{display:block;color:var(--ink-soft);font-family:var(--font-ui);font-size:.75rem;letter-spacing:.04em}.mark{width:2.1rem;height:2.1rem;border-radius:50%;background:radial-gradient(circle at 50% 38%,var(--sun) 0 .42rem,transparent .44rem),linear-gradient(#1aa6b7,#0b3d47);box-shadow:inset 0 -.55rem #d9c39a}.nav-toggle{width:2.85rem;height:2.85rem;flex-shrink:0;border:1px solid var(--line);border-radius:.8rem;background:var(--paper)}.nav-toggle-lines,.nav-toggle-lines:before,.nav-toggle-lines:after{display:block;width:1.1rem;height:2px;margin:0 auto;background:var(--ink);content:""}.nav-toggle-lines:before{transform:translateY(-6px)}.nav-toggle-lines:after{transform:translateY(4px)}.site-nav{display:none;position:absolute;inset:4.25rem 1rem auto;padding:.75rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.site-nav.is-open,.site-nav a{display:block}.site-nav a{padding:.8rem .9rem;text-decoration:none;font-weight:500}.nav-book{color:var(--pool-deep)}.hero{position:relative;padding:1rem 0 2rem}.hero-art{position:relative;overflow:hidden;border-radius:1.5rem;margin:0 1rem 1.5rem;background:#0b3d47;box-shadow:var(--shadow)}.hero-photo{display:block;width:100%;height:16rem;object-fit:cover}.hero-inset{position:absolute;right:.75rem;bottom:.75rem;width:38%;max-width:11rem;border-radius:.85rem;border:3px solid #fffdf8;box-shadow:var(--shadow);object-fit:cover;aspect-ratio:1}.hero-copy{padding-bottom:1rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.4rem 0 .9rem}.direct-inline{margin:.85rem 0 0;color:var(--ink-soft);font-size:.95rem}.direct-inline a{color:var(--pool-deep);font-weight:600}.disclaimer-inline{display:inline-block;margin-left:.35rem;font-weight:600;color:var(--ink)}.rating-note{color:var(--ink-soft);font-size:.95rem}.rating-note span{display:inline-block}.fact-row{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;margin:1.3rem 0 0;list-style:none}.fact-row li{padding:.45rem .75rem;border-radius:999px;background:var(--sand);font-size:.92rem;font-weight:600}.bento,.amenity-grid,.rules-grid,.book-grid,.footer-grid{display:grid;gap:1rem}.card,.honesty-card,.book-card,.amenity-grid li,.rules-grid div{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.card-feature{background:var(--pool-deep);color:var(--paper);border-color:transparent}.card-feature p{color:#d7f4f2}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.gallery-item{display:block;overflow:hidden;border-radius:.7rem;background:#0b3d47;aspect-ratio:4 / 3}.gallery-item img{width:100%;height:100%;object-fit:cover}.lightbox{width:min(96vw,56rem);max-width:none;padding:.75rem;border:0;border-radius:1rem;background:#10272c;color:#fffdf8}.lightbox::backdrop{background:#0a1c20b8}.lightbox img{width:100%;max-height:72vh;object-fit:contain;background:#0b3d47;border-radius:.6rem}.lightbox-caption{margin:.55rem 0 0;text-align:center}.lightbox-close,.lightbox-nav{min-height:2.5rem;padding:.4rem .8rem;border:1px solid rgba(255,253,248,.28);border-radius:999px;background:transparent;color:#fffdf8;font-weight:600}.lightbox-close{display:block;margin:0 0 .65rem auto}.lightbox-nav{margin-top:.55rem}.pets-photo{margin:0;overflow:hidden;border-radius:1.1rem;background:var(--sand)}.pets-photo img{width:100%;height:12rem;object-fit:cover}.pets-photo figcaption{padding:.55rem .8rem .75rem;color:var(--ink-soft);font-size:.82rem}.amenity-grid li{list-style:none}.amenity-grid{padding:0;margin:0}.amenity-grid span{display:block;margin-bottom:.55rem;color:var(--pool);font-size:.78rem;font-weight:700;letter-spacing:.08em}.amenity-grid em{display:block;margin-top:.25rem;color:var(--ink-soft);font-style:normal}.pets{background:linear-gradient(180deg,#eef8f6 0%,var(--paper) 100%)}.pets-split,.location-split{display:grid;gap:1.5rem}.pets-photo img{height:20rem}.check-list,.honesty-card ul{margin:1rem 0 0;padding:0;list-style:none}.check-list li,.honesty-card li{padding:.55rem 0;border-bottom:1px solid var(--line)}.check-list li:before{content:"✓ ";color:var(--leaf);font-weight:700}.honesty-card{background:var(--sand)}.honesty-kicker,.book-kicker{margin-bottom:.6rem;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pool-deep)}.rules-grid dt{color:var(--ink-soft);font-size:.85rem}.rules-grid dd{margin:.2rem 0 0;font-family:var(--font-display);font-size:1.45rem}.book{background:var(--pool-deep);color:var(--paper)}.book .eyebrow,.book .section-head p{color:#bde7e8}.book-card{color:var(--ink);text-decoration:none;background:var(--paper);box-shadow:var(--shadow)}.book-card-alt{background:#fff8ea}.book-card span{display:inline-block;margin-top:1rem;font-weight:700;color:var(--pool)}.direct-panel{margin-top:1rem;padding:1.4rem 1.3rem 1.25rem;background:var(--paper);color:var(--ink);border-radius:var(--radius);box-shadow:var(--shadow)}.direct-panel .book-kicker{color:var(--pool-deep)}.direct-panel p{color:var(--ink-soft);max-width:42rem}.email-line{margin:1rem 0;font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.85rem);letter-spacing:-.03em}.email-line a{color:var(--pool-deep);font-weight:640;text-decoration-thickness:2px;text-underline-offset:.18em}.disclaimer{margin-top:1rem;padding:.85rem .95rem;background:var(--sand);border-radius:.85rem;color:var(--ink);font-size:.95rem}.site-footer{padding:3rem 0 8.5rem;background:#10272c;color:#dce8ea}.site-footer a{display:block;width:max-content;margin-bottom:.45rem;color:#dce8ea}.site-footer p a{display:inline;width:auto;margin:0}.credits,.credits a{display:inline;color:#9bb3b7;font-size:.85rem}.book-dock{position:fixed;right:0;bottom:0;left:0;z-index:80;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.45rem;padding:.75rem .7rem calc(.75rem + env(safe-area-inset-bottom,0px));background:#10272c;border-top:1px solid rgba(255,253,248,.12);box-shadow:0 -10px 30px #0b3d4747}.book-dock .btn{padding-inline:.45rem;font-size:.88rem}.book-dock .btn-secondary,.book-dock .btn-ghost{background:transparent;color:var(--paper);border-color:#fffdf859}@media(min-width:800px){.nav-toggle{display:none}.site-nav,.site-nav.is-open{display:flex;position:static;align-items:center;gap:.2rem;padding:0;background:transparent;border:0;box-shadow:none}.site-nav a{padding:.45rem .7rem;border-radius:999px}.nav-book{background:var(--sand);padding-inline:.9rem}.hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:1.5rem;width:min(calc(100% - 2rem),var(--wide));margin:1rem auto 2rem;padding:0}.hero-art{order:2;margin:0;min-height:34rem}.hero-photo{height:34rem}.hero-inset{max-width:13.5rem;width:34%}.gallery-grid{grid-template-columns:repeat(4,1fr)}.hero-copy{order:1;padding:1rem 0 1rem .2rem}.bento{grid-template-columns:repeat(3,1fr)}.card-feature{grid-column:span 2}.amenity-grid,.rules-grid{grid-template-columns:repeat(3,1fr)}.pets-split,.location-split,.book-grid,.footer-grid{grid-template-columns:1fr 1fr;gap:2rem;align-items:center}.footer-grid{align-items:start;grid-template-columns:1.3fr .7fr 1.2fr}.book-dock{display:none}.site-footer{padding-bottom:3.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body.nav-open{overflow:hidden}
