:root{color-scheme:light;--chalk: #fbfaf6;--salt: #ffffff;--linen: #f2eadf;--sea-mist: #e5ece6;--sea-glass: #0e7179;--deep-tide: #073f46;--brick: #ad503a;--driftwood: #5f6862;--pier-iron: #17211f;--tide-line: rgba(23, 33, 31, .11);--foam-line: rgba(255, 255, 255, .16);--lift: 0 0 0 1px rgba(23, 33, 31, .06), 0 10px 30px rgba(23, 33, 31, .08);--lift-strong: 0 0 0 1px rgba(23, 33, 31, .08), 0 28px 80px rgba(23, 33, 31, .16);--ink: var(--pier-iron);--muted: var(--driftwood);--line: var(--tide-line);--paper: var(--chalk);--white: var(--salt);--sea: var(--sea-glass);--sea-dark: var(--deep-tide);--coral: var(--brick);--sage: var(--sea-mist);--sand: var(--linen);--shadow: var(--lift-strong);font-family:Avenir,Avenir Next,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;min-height:76px;padding:12px clamp(18px,4vw,56px);background:#fbfaf6eb;border-bottom:1px solid var(--tide-line);backdrop-filter:blur(14px)}.brand img{width:clamp(154px,20vw,212px);height:auto}nav{display:flex;justify-content:center;gap:clamp(14px,3vw,34px);color:var(--muted);font-size:.88rem;font-weight:700}nav a,.site-footer a,.button,.header-cta,.contact-card{transition:color .16s cubic-bezier(.23,1,.32,1),background-color .16s cubic-bezier(.23,1,.32,1),border-color .16s cubic-bezier(.23,1,.32,1),transform .14s cubic-bezier(.23,1,.32,1)}nav a:hover,.site-footer a:hover{color:var(--sea)}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:6px;font-weight:700;white-space:nowrap;box-shadow:0 0 0 1px #17211f0a}.header-cta,.button.primary{background:var(--sea);color:var(--white)}.button.secondary{border:1px solid rgba(255,255,255,.46);background:#ffffff1f;color:var(--white);backdrop-filter:blur(14px)}.property-body .button.secondary{border-color:var(--tide-line);background:#fbfaf6e0;color:var(--ink);backdrop-filter:none}.button:hover,.header-cta:hover,.contact-card:hover{transform:translateY(-1px)}.button:active,.header-cta:active,.contact-card:active{transform:scale(.98)}:focus-visible{outline:3px solid rgba(14,113,121,.32);outline-offset:3px}.hero{position:relative;display:grid;gap:clamp(16px,2.6vw,28px);align-items:end;min-height:calc(100svh - 76px);padding:clamp(22px,3.5vw,44px) clamp(18px,4vw,56px);background:var(--deep-tide)}.property-image img,.location-grid img,.gallery-grid img,.host-section>img,.host-profile img,.hero-property-card img,.property-detail-media img{width:100%;height:100%;object-fit:cover}.hero-copy{display:flex;flex-direction:column;justify-content:end;gap:10px;max-width:680px;color:var(--white)}.hero-intro{display:grid;gap:8px;max-width:760px;color:var(--white)}.eyebrow{margin:0;color:var(--coral);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3,p{margin-top:0;text-wrap:pretty}h1{margin-bottom:0;max-width:10ch;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.75rem,6.4vw,5.9rem);line-height:.9;letter-spacing:-.03em;text-wrap:balance;overflow-wrap:break-word}h2{margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.1rem,4vw,4rem);line-height:1;letter-spacing:-.025em;text-wrap:balance;overflow-wrap:break-word}h3{margin-bottom:12px;font-size:clamp(1.35rem,2vw,2rem);line-height:1.12}.hero-intro>p:not(.eyebrow){max-width:460px;margin-bottom:0;color:#ffffffd4;font-size:clamp(1rem,1.35vw,1.18rem)}.hero-copy .eyebrow{color:#ffffffc2}.hero-actions,.card-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2.4vw,28px)}.hero-property-card{min-width:0}.hero-property-card a{position:relative;display:grid;min-height:clamp(360px,50svh,560px);overflow:clip;border:1px solid var(--foam-line);border-radius:8px;background:var(--deep-tide);box-shadow:0 20px 70px #00000038}.hero-property-card img{position:absolute;inset:0;opacity:.9;transition:opacity .18s cubic-bezier(.23,1,.32,1),transform .22s cubic-bezier(.23,1,.32,1)}.hero-property-card a:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,#073f4614,#073f46d1),linear-gradient(90deg,#073f468a,#073f4614)}.hero-property-card a:hover img{opacity:1;transform:scale(1.02)}.hero-property-copy{position:relative;z-index:1;display:grid;align-content:end;gap:18px;padding:clamp(22px,4vw,42px);color:var(--white)}.hero-property-copy h2{max-width:100%;color:var(--white);font-size:clamp(2rem,3.8vw,4.2rem)}.hero-property-copy .eyebrow,.property-detail-copy .eyebrow{color:#ffffffc2;max-width:100%;overflow-wrap:anywhere}.hero-property-copy dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.hero-property-copy dt{color:#ffffffa8;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-property-copy dd{margin:4px 0 0;color:var(--white);font-weight:800;font-variant-numeric:tabular-nums}.hero-property-copy span{display:inline-flex;width:max-content;min-height:44px;align-items:center;justify-content:center;padding:10px 18px;border:1px solid rgba(255,255,255,.46);border-radius:6px;background:#ffffff1f;font-weight:800;backdrop-filter:blur(14px)}.quick-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--foam-line);border-bottom:1px solid var(--tide-line);background:var(--sea-dark);color:var(--white)}.quick-strip span{display:flex;align-items:center;justify-content:center;min-height:78px;padding:16px;text-align:center;border-right:1px solid var(--foam-line);font-weight:700;font-variant-numeric:tabular-nums}.booking-band{padding:0 clamp(18px,4vw,56px) clamp(34px,5vw,64px);background:var(--deep-tide)}.booking-widget{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(96px,.48fr) minmax(96px,.48fr) auto;gap:12px;align-items:end;padding:clamp(18px,3vw,28px);background:var(--salt);border:1px solid var(--tide-line);border-radius:8px;box-shadow:var(--lift-strong)}.booking-widget-heading{grid-column:1 / -1;display:grid;gap:6px}.booking-widget-heading h2{font-size:clamp(1.45rem,2.5vw,2.35rem)}.booking-field,.booking-field-row{min-width:0}.booking-field{display:grid;gap:6px}.booking-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-field label{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.booking-field input,.booking-field select{width:100%;min-height:44px;padding:10px 12px;color:var(--ink);background:#f2eadf9e;border:1px solid var(--tide-line);border-radius:6px;font:inherit;font-variant-numeric:tabular-nums}.booking-widget button{min-width:176px}.booking-widget button:disabled{cursor:wait;opacity:.64}.booking-message,.booking-note{grid-column:1 / -1;margin:0;color:var(--muted);font-size:.92rem}.booking-panel .booking-widget{grid-template-columns:1fr;padding:0;border:0;box-shadow:none}.booking-panel .booking-widget button{width:100%}.booking-panel-divider{height:1px;margin:28px 0;background:var(--tide-line)}.section{padding:clamp(54px,8vw,108px) clamp(18px,4vw,56px)}.section-heading{display:grid;gap:12px;max-width:850px;margin-bottom:34px}.section-heading.compact{margin-bottom:20px}.property-list{display:grid;gap:34px}.property-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);background:var(--white);border:1px solid var(--tide-line);border-radius:8px;overflow:clip;box-shadow:var(--lift)}.property-image{min-height:540px}.property-body{display:grid;align-content:center;gap:22px;padding:clamp(26px,5vw,56px)}.property-body p,.split p,.host-section p,.contact p{color:var(--muted)}.property-detail-hero{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(360px,.94fr);min-height:calc(86svh - 76px);background:var(--deep-tide)}.property-detail-media{min-height:520px}.property-detail-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:clamp(30px,6vw,72px);color:var(--white)}.property-detail-copy h1{max-width:100%;color:var(--white);font-size:clamp(3rem,6vw,6rem)}.property-detail-copy>p:not(.eyebrow){max-width:620px;color:#ffffffd4;font-size:clamp(1.06rem,1.8vw,1.28rem)}.property-detail-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(320px,.62fr);gap:clamp(28px,6vw,76px);align-items:start}.property-detail-grid>div>p{color:var(--muted);font-size:1.06rem}.booking-panel{position:sticky;top:100px;padding:clamp(22px,3vw,34px);background:var(--white);border:1px solid var(--tide-line);border-radius:8px;box-shadow:var(--lift)}.booking-panel h2{margin-bottom:18px;font-size:clamp(1.6rem,2.6vw,2.6rem)}.amenity-panel-wide ul{columns:2;column-gap:clamp(28px,6vw,76px)}.property-location-list{columns:1;padding:clamp(22px,4vw,38px);background:var(--white);border:1px solid var(--tide-line);border-radius:8px;box-shadow:var(--lift)}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;background:transparent;border:0}.facts div{min-height:108px;padding:16px 18px;background:linear-gradient(180deg,#fbfaf6fa,#f2eadfa3);border:1px solid var(--tide-line);border-radius:6px}.facts dt{color:var(--coral);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.facts dd{margin:6px 0 0;color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.split{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,76px);align-items:start}.location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.location-grid img{aspect-ratio:4 / 5;border-radius:8px;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.muted{background:var(--sage)}.amenity-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.amenity-panel{padding:clamp(24px,4vw,42px);background:var(--white);border:1px solid var(--tide-line);border-radius:8px;box-shadow:var(--lift)}ul{margin:0;padding-left:20px}li+li{margin-top:8px}.gallery-section{display:grid;gap:56px}.gallery-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.gallery-grid img{aspect-ratio:1 / 1;border-radius:6px;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.gallery-grid img:first-child{grid-column:span 2;grid-row:span 2}.reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}figure{margin:0;padding:24px;background:var(--white);border:1px solid var(--tide-line);border-radius:8px;box-shadow:0 0 0 1px #17211f05}blockquote{margin:0 0 16px;color:var(--ink);font-size:1.04rem}figcaption{color:var(--coral);font-weight:800}.host-section{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(28px,6vw,76px);align-items:center;background:var(--sand)}.property-host-section{display:grid;grid-template-columns:minmax(280px,.58fr) minmax(0,1fr);gap:clamp(28px,6vw,76px);align-items:center;background:var(--sand)}.host-profile{display:grid;gap:22px}.host-profile img{aspect-ratio:4 / 3;border-radius:8px;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px;box-shadow:var(--lift)}.host-note{display:grid;gap:22px;max-width:760px;padding:clamp(24px,4vw,42px);background:var(--white);border:1px solid var(--tide-line);border-radius:8px;box-shadow:var(--lift)}.host-note p{margin:0;color:var(--muted);font-size:1.08rem}.host-section>img{aspect-ratio:1 / 1;border-radius:8px;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.location-list{columns:2;margin-top:22px}.contact{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,76px);align-items:center;background:var(--sea-dark);color:var(--white)}.contact p,.contact .eyebrow{color:#ffffffc7}.contact-actions{display:grid;gap:14px}.contact-card{display:grid;gap:6px;padding:22px;background:#ffffff17;border:1px solid var(--foam-line);border-radius:8px}.contact-card span{color:#ffffffc7}.contact-card strong{overflow-wrap:anywhere;font-size:clamp(1.1rem,2vw,1.45rem)}.site-footer{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:center;min-height:90px;padding:22px;color:var(--muted);background:var(--paper)}.site-footer span{color:var(--ink);font-weight:800}.legal-page{padding:clamp(54px,8vw,108px) clamp(18px,4vw,56px)}.legal-page article{max-width:860px;margin:0 auto;padding:clamp(28px,5vw,56px);background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.legal-page h1{max-width:none;margin:10px 0 32px;font-size:clamp(2.6rem,6vw,5rem)}.legal-page h2{margin:34px 0 12px;font-size:clamp(1.55rem,3vw,2.3rem)}.legal-page a{color:var(--sea);font-weight:800;overflow-wrap:anywhere}@media(max-width:1180px){.property-detail-hero,.property-detail-grid{grid-template-columns:1fr}.property-detail-hero{min-height:auto}.property-detail-media{min-height:460px}.property-detail-copy{padding-top:44px;padding-bottom:52px}.property-detail-copy h1{max-width:11ch}.booking-panel{position:static}}@media(max-width:980px){.site-header{grid-template-columns:1fr auto}nav{grid-column:1 / -1;grid-row:2;justify-content:flex-start;overflow-x:auto;padding-bottom:4px}.hero,.hero-intro,.hero-property-grid,.property-card,.split,.host-section,.property-host-section,.contact{grid-template-columns:1fr}.hero{min-height:auto}.hero-property-card a,.property-detail-media,.property-image{min-height:360px}.quick-strip,.booking-widget,.amenity-columns,.reviews{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-widget button,.booking-message{grid-column:1 / -1}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.site-header{min-height:66px;gap:12px}.header-cta{min-height:40px;padding:8px 12px}.hero{padding-top:24px}h1{font-size:clamp(2.5rem,14vw,4.2rem)}.hero-property-card a,.property-detail-media{min-height:300px}.hero-property-copy dl,.amenity-panel-wide ul{columns:1;grid-template-columns:1fr}.quick-strip,.booking-widget,.booking-field-row,.facts,.amenity-columns,.reviews,.location-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-list{columns:1}}
