
:root{--ink:#20332c;--muted:#63756c;--cream:#f7f6f0;--white:#fff;--line:#e2e7df;--sage:#dce8df;--deep:#173c30;--accent:#b98155;--red:#c7bab3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{max-width:1220px;margin:auto;padding:0 26px}.announcement{background:#234639;color:#f6f3e7;font-size:12px;letter-spacing:.03em;padding:8px;text-align:center}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,246,240,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.head-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-size:14px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.brand-mark{display:grid;place-items:center;width:39px;height:39px;background:var(--deep);color:#fff;border-radius:50%;font-family:Georgia,serif;font-size:17px;letter-spacing:0}.nav{display:flex;gap:32px;color:#55695d;font-size:13px}.nav a:hover{color:var(--deep)}.nav-cta{border:1px solid #cbd5ca;border-radius:999px;padding:11px 19px;font-size:13px;font-weight:600}.nav-cta:hover{background:var(--sage)}.hero{padding:36px 0 64px}.hero-grid{display:grid;grid-template-columns:1fr 1.04fr;min-height:510px;background:#ebede7;border-radius:20px;overflow:hidden}.hero-copy{padding:64px 58px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:11px;color:#789184}.serif,h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(45px,5.1vw,76px);line-height:1.08;margin:23px 0 20px}h2{font-size:clamp(32px,3vw,47px);line-height:1.15;margin:12px 0 16px}.hero-copy p{max-width:440px;color:#536a5d;line-height:1.8;margin:0 0 30px}.hero-image{position:relative;min-height:410px;background:#bdcbc3}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,48,37,.10),transparent 60%)}.hero-label{position:absolute;bottom:30px;left:30px;z-index:1;border-radius:10px;background:rgba(255,255,255,.92);padding:15px 19px;font-size:13px;color:#425649;box-shadow:0 8px 25px #0001}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;border:0;border-radius:999px;background:var(--deep);color:#fff;padding:14px 24px;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{background:#28604c;transform:translateY(-1px)}.button.alt{background:#fff;color:var(--deep);border:1px solid var(--line)}.button.alt:hover{background:var(--sage)}.intro-row{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:30px 0 28px}.intro-row p{max-width:430px;color:var(--muted)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{padding:10px 16px;border:1px solid var(--line);background:#fff;border-radius:999px;color:#62766a;font-size:12px}.filter.active{background:var(--deep);color:#fff;border-color:var(--deep)}.listing{padding-bottom:84px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.property-card{display:block;overflow:hidden;border:1px solid #e2e8e0;background:#fff;border-radius:16px;transition:box-shadow .22s,transform .22s}.property-card:hover{transform:translateY(-4px);box-shadow:0 20px 36px #24392c13}.card-photo{height:225px;background:#d9e2da;overflow:hidden;position:relative}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.property-card:hover img{transform:scale(1.035)}.photo-chip{position:absolute;left:16px;top:16px;background:#fffef2e8;padding:6px 12px;border-radius:999px;font-size:10px;font-weight:700;color:#355446}.photo-note{position:absolute;right:12px;bottom:12px;background:#153b31a8;color:#fff;padding:4px 8px;border-radius:5px;font-size:10px}.card-info{padding:21px 22px}.card-location{font-size:11px;color:#839287;text-transform:uppercase;letter-spacing:.13em}.card-info h3{margin:8px 0 13px;font:normal 24px/1.15 Georgia,serif}.facts{display:flex;gap:18px;color:#65766d;font-size:12px;flex-wrap:wrap}.card-bottom{margin-top:20px;border-top:1px solid #eef1ec;padding-top:15px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.card-bottom b{font-weight:700;color:#244738}.step-band{background:#e4ebe4;padding:60px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.step-no{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid #8baa99;border-radius:50%;font-family:Georgia,serif}.steps h3{font:normal 25px Georgia,serif;margin:17px 0 9px}.steps p{color:#5a6e60;font-size:14px}.site-footer{background:#183c30;color:#e9eee7;padding:52px 0 27px}.foot-grid{display:flex;justify-content:space-between;gap:30px}.site-footer p{color:#afc4b8;max-width:470px;font-size:13px}.foot-bottom{border-top:1px solid #456152;margin-top:35px;padding-top:20px;color:#a9c0b0;font-size:11px}.detail-hero{padding:34px 0 38px}.crumb{color:#7e8e80;font-size:12px;margin-bottom:23px}.crumb a{text-decoration:underline;text-underline-offset:3px}.detail-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.detail-head h1{font-size:clamp(36px,4.2vw,60px);margin:10px 0}.detail-area{color:#7d8e82;font-size:13px}.big-photo{height:440px;overflow:hidden;border-radius:18px;position:relative;background:#dce7dd}.big-photo img{width:100%;height:100%;object-fit:cover}.photo-disclaimer{position:absolute;bottom:16px;left:16px;background:#fffcf3eb;padding:7px 12px;border-radius:8px;font-size:11px;color:#5b6d5e}.detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(325px,.75fr);gap:60px;padding-top:55px;padding-bottom:80px}.detail-copy h2{font-size:36px}.detail-copy p{color:#5c6c61;line-height:1.9}.icon-facts{display:flex;gap:22px;flex-wrap:wrap;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:28px 0}.icon-facts span{font-size:13px;color:#466052}.features{display:grid;grid-template-columns:1fr 1fr;gap:13px;color:#52685a;margin-top:26px;font-size:13px}.features span:before{content:"✓";display:inline-grid;place-items:center;background:#dbe8de;color:#2d5842;width:23px;height:23px;border-radius:50%;margin-right:10px}.owner-photo{margin-top:28px;border:1px dashed #aabcaa;background:#eff3eb;border-radius:12px;padding:17px 20px;font-size:12px;color:#5b705f}.booking-side{align-self:start;position:sticky;top:110px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 22px 60px #1b382a0b}.booking-side h3{font:normal 26px Georgia,serif;margin:4px 0 8px}.tiny{font-size:11px;color:#89978d}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin:20px 0 12px}.calendar-nav strong{font-size:14px}.round{border:1px solid #dde5dd;background:#fff;width:31px;height:31px;border-radius:50%}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar .week{text-align:center;font-size:10px;color:#95a497;padding:6px 0}.day{aspect-ratio:1/1;display:grid;place-items:center;font-size:11px;border:1px solid transparent;border-radius:8px;background:#f1f5ef;color:#355544;padding:0}.day:hover:not(:disabled){border-color:#6e987d}.day.booked{background:#f5efeb;color:#c2b8b0;text-decoration:line-through;cursor:not-allowed}.day.past{color:#c2cfc4;background:#f6f7f4;cursor:not-allowed}.day.selected{background:#255b45;color:#fff}.day.range{background:#cae2cf;color:#1a4936}.calendar-legend{display:flex;gap:18px;margin-top:14px;color:#8c998d;font-size:10px}.dot{display:inline-block;width:10px;height:10px;background:#edf3ec;border-radius:3px;margin-right:5px}.dot.blocked{background:#eee0d8}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}.field label{font-size:11px;font-weight:700;color:#5e6f64}.field input,.field textarea,.field select{width:100%;border:1px solid #dbe4da;border-radius:9px;padding:11px 12px;color:#2a4335;background:#fff;font-size:12px}.field textarea{min-height:78px;resize:vertical}.booking-side .button{width:100%;margin-top:9px}.calendar-msg{font-size:11px;color:#a56e5b;min-height:16px;margin-top:10px}.mini-info{font-size:11px;color:#819184;margin-top:12px;line-height:1.6}.notice{margin:0 auto 0;background:#fbf4e6;border:1px solid #ebdfc9;color:#776748;border-radius:8px;padding:10px 13px;font-size:12px}.modal-back{position:fixed;inset:0;z-index:100;background:#082b2399;display:grid;place-items:center;padding:22px}.modal{max-width:430px;width:100%;background:#fff;padding:32px;border-radius:18px;box-shadow:0 20px 80px #0003}.modal h3{font:normal 32px Georgia,serif;margin:0 0 10px}.modal p{font-size:14px;color:#67776b}.modal button{margin-top:20px}.hidden{display:none!important}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-copy{padding:50px 36px}.hero-image{height:360px}.cards{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr;gap:26px}.booking-side{position:static}.steps{gap:20px}}@media(max-width:600px){.shell{padding:0 16px}.head-inner{height:65px}.nav{display:none}.nav-cta{padding:9px 12px}.hero{padding:16px 0 34px}.hero-grid{border-radius:12px}.hero-copy{padding:38px 25px}.hero-image{height:270px;min-height:270px}.hero-label{bottom:16px;left:16px}.intro-row{display:block}.cards{grid-template-columns:1fr;gap:18px}.card-photo{height:230px}.step-band{padding:40px 0}.steps{grid-template-columns:1fr;gap:14px}.foot-grid{display:block}.detail-head{display:block}.detail-head h1{font-size:39px}.big-photo{height:295px}.detail-grid{padding-top:33px}.booking-side{padding:20px}.features{grid-template-columns:1fr}.detail-hero{padding-top:20px}}
