
:root{
  --green:#073f37;--green2:#0b5146;--cream:#fbf7ef;--sand:#f3eadc;
  --coral:#f36f4f;--ink:#123d37;--muted:#66766f;--white:#fff;
  --shadow:0 18px 45px rgba(20,55,47,.12);--radius:22px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff;line-height:1.55}
h1,h2,h3{font-family:"Playfair Display",serif;line-height:1.04;margin:0}
h1{font-size:clamp(3rem,6vw,6.6rem);letter-spacing:-.045em}
h2{font-size:clamp(2.25rem,4vw,4.5rem);letter-spacing:-.035em}
h3{font-size:1.55rem}
p{margin:.8rem 0;color:var(--muted)}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,92%);margin:auto}
.eyebrow{font-size:.73rem;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--coral);margin-bottom:14px}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--coral);color:#fff;padding:16px 25px;border-radius:999px;font-weight:700;font-size:.9rem;box-shadow:0 10px 25px rgba(243,111,79,.24);transition:.2s}
.btn:hover{transform:translateY(-2px)} .btn.secondary{background:#fff;color:var(--green);box-shadow:none;border:1px solid #dcd8cf}
nav{height:78px;display:flex;align-items:center;background:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid #eee9df}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{font-family:"Playfair Display";font-weight:700;font-size:1.45rem}.brand small{display:block;font-family:"DM Sans";font-size:.52rem;letter-spacing:.16em;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:30px;font-size:.88rem;font-weight:600}
.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#fff9ef 0%,#f5eadc 62%,#e5d1ba 100%);padding:75px 0 35px}
.hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:rgba(255,255,255,.38);right:-150px;top:-230px}
.hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:42px;position:relative;z-index:2}
.hero-copy p{font-size:1.08rem;max-width:610px}.hero-actions{display:flex;gap:14px;align-items:center;margin:27px 0 20px;flex-wrap:wrap}
.trust-row{display:flex;gap:22px;flex-wrap:wrap;font-size:.8rem;font-weight:600}.trust-row span:before{content:"✓";margin-right:7px;color:var(--green)}
.hero-visual{position:relative;padding:35px 0}
.property{min-height:455px;border-radius:80px 20px 20px 20px;background:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.25)),url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1200&q=85") center/cover;box-shadow:var(--shadow);border:8px solid rgba(255,255,255,.7)}
.laptop{position:absolute;left:-35px;right:10px;bottom:5px;background:#202522;border:9px solid #202522;border-bottom-width:22px;border-radius:14px;box-shadow:0 24px 45px rgba(0,0,0,.24);overflow:hidden}
.screen{height:265px;background:linear-gradient(rgba(4,42,35,.08),rgba(4,42,35,.25)),url("https://images.unsplash.com/photo-1600047509807-ba8f99d2cdde?auto=format&fit=crop&w=1200&q=85") center/cover;position:relative;color:#fff;padding:35px}
.screen:before{content:"OCEAN VIEW    Rooms    Gallery    Contact";position:absolute;top:0;left:0;right:0;background:#fff;color:#153d36;padding:10px 18px;font-size:.62rem}
.screen strong{font-family:"Playfair Display";display:block;font-size:2.35rem;margin-top:70px;line-height:.95}
.price-badge{position:absolute;right:-10px;top:4px;background:var(--coral);color:#fff;width:128px;height:128px;border-radius:50%;display:grid;place-content:center;text-align:center;box-shadow:var(--shadow);z-index:5}.price-badge b{font-family:"Playfair Display";font-size:2.5rem;line-height:1}
.strip{background:var(--green);color:#fff;padding:26px 0}.strip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.strip-item{display:flex;gap:15px;align-items:center}.strip-icon{font-size:1.8rem}.strip p{color:#d4e1dd;font-size:.8rem;margin:2px 0}
section{padding:90px 0}
.compare{background:#fff}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.compare-card{background:var(--cream);padding:34px;border-radius:var(--radius);min-height:335px;position:relative;overflow:hidden}.compare-card.good{background:#f7f7f1}.compare-list{list-style:none;padding:0;margin:22px 0}.compare-list li{padding:6px 0;color:#586a64}.bad li:before{content:"×";background:#ff7055;color:white;border-radius:50%;display:inline-grid;place-content:center;width:19px;height:19px;margin-right:9px}.good-list li:before{content:"✓";background:var(--green);color:white;border-radius:50%;display:inline-grid;place-content:center;width:19px;height:19px;margin-right:9px}
.section-head{text-align:center;max-width:800px;margin:0 auto 48px}.benefit-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;text-align:center}.icon-circle{width:74px;height:74px;margin:0 auto 16px;border-radius:50%;display:grid;place-content:center;background:var(--cream);font-size:1.8rem}.benefit h4{margin:0 0 8px}.benefit p{font-size:.8rem}
.showcase{background:var(--cream)}.showcase-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:55px;align-items:center}.browser-stack{position:relative;min-height:400px}.browser{position:absolute;border-radius:12px;background:#fff;box-shadow:var(--shadow);border:6px solid #fff;overflow:hidden}.browser img{width:100%;height:100%;object-fit:cover}.browser.one{width:72%;height:340px;left:14%;top:15px;z-index:3}.browser.two{width:54%;height:275px;left:0;top:65px;transform:rotate(-5deg)}.browser.three{width:54%;height:275px;right:0;top:65px;transform:rotate(5deg)}
.process{background:var(--green);color:#fff;position:relative}.process p{color:#d4e1dd}.process .section-head h2{color:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;text-align:center}.step-num{width:48px;height:48px;background:#fff;color:var(--green);border-radius:50%;display:grid;place-content:center;font-weight:700;margin:0 auto 16px}.steps h3{font-size:1.25rem;font-family:"DM Sans"}
.pricing{background:#fff}.pricing-grid{display:grid;grid-template-columns:.85fr 1.35fr .55fr;gap:35px;align-items:center}.checks{columns:2;list-style:none;padding:0}.checks li{break-inside:avoid;padding:8px 0;font-size:.88rem}.checks li:before{content:"✓";display:inline-grid;place-content:center;background:var(--green);color:#fff;width:18px;height:18px;border-radius:50%;margin-right:8px;font-size:.7rem}.price-card{background:#fff;padding:30px;text-align:center;border-radius:18px;box-shadow:var(--shadow);border:1px solid #eee}.price-card .amount{font-family:"Playfair Display";font-size:4rem;line-height:1}.price-card ul{text-align:left;padding:0;list-style:none;font-size:.8rem}.price-card li{padding:5px 0}.price-card li:before{content:"✓ ";color:var(--green);font-weight:700}
.testimonials{background:#fff7f0}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.quote{background:#fff;padding:28px;border-radius:16px;box-shadow:0 8px 25px rgba(20,55,47,.07)}.quote q{font-family:"Playfair Display";font-size:1.2rem;font-style:italic}.quote small{display:block;margin-top:20px;font-weight:700}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.faq details{background:var(--cream);border-radius:12px;padding:17px 20px}.faq summary{cursor:pointer;font-weight:700}.faq details p{font-size:.9rem}
.final-cta{padding:105px 0;color:#fff;text-align:center;background:linear-gradient(rgba(5,42,36,.45),rgba(5,42,36,.55)),url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=1800&q=85") center/cover}.final-cta h2{color:#fff;max-width:800px;margin:auto}.final-cta p{color:#fff}.final-cta .btn{margin:18px 0}
footer{background:var(--green);color:#fff;padding:35px 0}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-links{display:flex;gap:25px;font-size:.8rem}
@media(max-width:900px){
 .nav-links a:not(.btn){display:none}.hero-grid,.showcase-grid,.pricing-grid{grid-template-columns:1fr}.hero{padding-top:40px}.hero-visual{min-height:520px}.strip-grid{grid-template-columns:1fr}.benefit-grid{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:1fr 1fr}.price-card{max-width:380px}.showcase-grid{gap:20px}
}
@media(max-width:620px){
 section{padding:65px 0}.compare-grid,.quotes,.faq-grid{grid-template-columns:1fr}.benefit-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.checks{columns:1}.hero-visual{min-height:430px}.property{min-height:370px}.laptop{left:0}.screen{height:220px}.price-badge{width:100px;height:100px}.footer-row{flex-direction:column;text-align:center}.footer-links{flex-wrap:wrap;justify-content:center}
}

:focus-visible{outline:3px solid var(--green2);outline-offset:5px}
.skip-link{position:absolute;left:16px;top:-80px;background:white;padding:12px;z-index:100}.skip-link:focus{top:12px}
.contact-hero{padding:75px 0;background:linear-gradient(110deg,#fff9ef,#f3eadc)}
.contact-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:start}
.contact-copy h1{font-size:clamp(3rem,5.5vw,5.2rem)}.contact-copy>p{font-size:1.08rem;max-width:520px}
.contact-card{background:white;border:1px solid #eee9df;border-radius:22px;padding:36px;box-shadow:var(--shadow)}
.contact-card h2{font-size:2.2rem}.contact-card label{display:block;font-size:.88rem;font-weight:700;margin-top:18px}
input,textarea,select{display:block;width:100%;font:inherit;color:var(--ink);background:var(--cream);border:1px solid #d5d9d2;border-radius:10px;padding:12px;margin-top:7px}textarea{resize:vertical;min-height:130px}
button.btn{border:0;cursor:pointer;margin-top:22px}button:disabled{opacity:.65;cursor:not-allowed}
.form-note{font-size:.82rem}.contact-detail{border-top:1px solid #dcd8cf;margin-top:28px;padding-top:24px}.contact-detail a{overflow-wrap:anywhere;text-decoration:underline}
.contact-points{list-style:none;padding:0;margin:26px 0}.contact-points li{margin:12px 0}.contact-points li:before{content:'✓';margin-right:12px;color:var(--green)}
.contact-next{background:var(--green);color:white}.contact-next p{color:#d4e1dd}.contact-next h2{color:white}
@media(max-width:1100px){.nav-links{gap:15px}}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:35px}.nav-links a.contact-link{display:inline}.contact-hero{padding:45px 0}}
@media(max-width:480px){.nav-inner{gap:10px}.brand{font-size:1.12rem}.nav-links{gap:10px}.nav-links .btn{font-size:.65rem;padding:12px}.contact-card{padding:24px}.nav-links a.contact-link{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
