/* Green Luxury Home — shared styles */
:root{
  --green:#0F6E56; --green-d:#085041; --green-l:#E1F5EE;
  --ink:#17211E; --mut:#5b6663; --line:#dfe5e2;
  --bg:#ffffff; --soft:#f5f7f6; --amber:#BA7517;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.65;font-size:16px}
img{max-width:100%;display:block}
a{color:var(--green);text-decoration:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}

/* header */
.top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:62px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:600;
  letter-spacing:.5px;font-size:15px;white-space:nowrap}
.brand b{color:var(--green);font-weight:600}
.brand small{display:block;font-size:10.5px;font-weight:400;color:var(--mut);letter-spacing:1.2px}
nav.main{display:flex;gap:22px;align-items:center}
nav.main a{color:var(--ink);font-size:14px;padding:6px 2px;border-bottom:2px solid transparent}
nav.main a:hover,nav.main a.on{border-bottom-color:var(--green);color:var(--green)}
.btn{display:inline-block;background:var(--green);color:#fff;padding:9px 20px;border-radius:8px;
  font-size:14px;border:0;cursor:pointer}
.btn:hover{background:var(--green-d)}
.btn.ghost{background:transparent;color:var(--green);border:1.5px solid var(--green)}
.btn.dark{background:var(--ink)}

/* hero */
.hero{position:relative;color:#fff}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(8,26,20,.78) 0%,rgba(8,26,20,.35) 60%,rgba(8,26,20,.15) 100%)}
.hero .inner{position:relative;max-width:1120px;margin:0 auto;padding:130px 22px 120px}
.hero h1{font-size:42px;line-height:1.2;font-weight:600;max-width:640px}
.hero p.sub{margin-top:16px;font-size:18px;max-width:560px;color:#e8efe9}
.hero .cta{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}
.hero .cta .btn{font-size:15px;padding:12px 26px}
.hero .wa{background:#1FA855}
.hero .wa:hover{background:#178a45}

/* sections */
section{padding:64px 0}
section.alt{background:var(--soft)}
.eyebrow{color:var(--green);font-size:13px;letter-spacing:2px;font-weight:600;text-transform:uppercase}
h2.sec{font-size:30px;font-weight:600;margin:6px 0 10px}
p.lead{color:var(--mut);max-width:680px;font-size:16.5px}
.grid{display:grid;gap:22px}
.g2{grid-template-columns:1fr 1fr}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;
  transition:transform .18s, box-shadow .18s;display:block;color:var(--ink)}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(15,50,40,.10)}
.card .ph{aspect-ratio:4/3;object-fit:cover;width:100%}
.card .body{padding:18px 20px 22px}
.card h3{font-size:18px;font-weight:600}
.card p{color:var(--mut);font-size:14px;margin-top:6px}
.tag{display:inline-block;background:var(--green-l);color:var(--green-d);font-size:12px;
  padding:3px 10px;border-radius:20px;margin-bottom:10px;font-weight:600}

/* feature list */
.feats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px}
.feat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px}
.feat .ic{font-size:26px}
.feat h4{font-size:16px;font-weight:600;margin:10px 0 6px}
.feat p{font-size:13.5px;color:var(--mut)}

/* split */
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
.split .ph{border-radius:14px;object-fit:cover;width:100%;aspect-ratio:16/11}
.check{list-style:none;margin-top:18px}
.check li{padding:7px 0 7px 30px;position:relative;color:#2a3532;font-size:15px}
.check li:before{content:"";position:absolute;left:0;top:12px;width:17px;height:17px;
  border-radius:50%;background:var(--green-l)}
.check li:after{content:"";position:absolute;left:5px;top:16px;width:7px;height:4px;
  border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}

/* spec table */
table.spec{width:100%;border-collapse:collapse;margin-top:24px;font-size:14.5px;background:#fff}
table.spec th,table.spec td{border:1px solid var(--line);padding:10px 14px;text-align:left;vertical-align:top}
table.spec th{background:var(--soft);font-weight:600;width:30%}
table.spec td b{font-weight:600}

/* gallery */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.gal img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%}

/* video */
.vid{border-radius:14px;overflow:hidden;background:#000;aspect-ratio:16/9;width:100%}
.vid video{width:100%;height:100%;object-fit:cover}

/* CTA band */
.band{background:var(--green-d);color:#fff;text-align:center;padding:70px 22px}
.band h2{font-size:30px;font-weight:600}
.band p{color:#cfe4da;margin-top:10px}
.band .btn{margin-top:24px;background:#fff;color:var(--green-d);font-weight:600}
.band .btn.wa{background:#1FA855;color:#fff}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
form.inq{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px}
form.inq label{display:block;font-size:13.5px;font-weight:600;margin:14px 0 6px}
form.inq input,form.inq select,form.inq textarea{width:100%;border:1px solid var(--line);
  border-radius:8px;padding:10px 12px;font-size:15px;font-family:inherit;background:var(--soft)}
form.inq input:focus,form.inq select:focus,form.inq textarea:focus{outline:2px solid var(--green-l);border-color:var(--green)}
form.inq button{margin-top:20px;width:100%;font-size:16px;padding:13px}
.chan{border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:16px;display:flex;gap:16px;align-items:flex-start}
.chan .ic{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  font-size:22px;background:var(--green-l);flex:none}
.chan h4{font-size:16px;font-weight:600}
.chan p{font-size:14px;color:var(--mut);margin-top:3px;word-break:break-all}
.chan a.btn{margin-top:10px;background:#1FA855;font-size:13.5px;padding:7px 16px}

/* footer */
footer{background:#0d1714;color:#9fb0a9;padding:44px 0 30px;font-size:14px}
footer .cols{display:grid;grid-template-columns:1.3fr 1fr .8fr 1fr;gap:30px}
footer h5{color:#fff;font-size:14px;font-weight:600;margin-bottom:12px}
footer a{color:#9fb0a9;display:block;padding:3px 0}
footer a:hover{color:#fff}
footer .fine{border-top:1px solid #22302b;margin-top:30px;padding-top:18px;font-size:12.5px;color:#6d7f78}

/* floating whatsapp */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:80;width:56px;height:56px;border-radius:50%;
  background:#1FA855;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(0,0,0,.25)}
.wa-float svg{width:30px;height:30px;fill:#fff}

/* responsive */
@media(max-width:900px){
  .g3,.g4,.feats{grid-template-columns:1fr 1fr}
  .split,.contact-grid,footer .cols{grid-template-columns:1fr}
  .hero h1{font-size:32px}
  nav.main{display:none}
  .hero .inner{padding:90px 22px 80px}
}
@media(max-width:560px){
  .g2,.g3,.g4,.feats,.gal{grid-template-columns:1fr}
  .gal{grid-template-columns:1fr 1fr}
}

/* inquiry fallback (no WhatsApp): copyable summary */
[hidden]{display:none!important}
.fallback{margin-top:18px;border:1px solid var(--green-l);background:var(--green-l);border-radius:12px;padding:18px 18px 16px}
.fb-title{font-weight:600;font-size:15px;color:var(--green-d)}
.fb-note{font-size:13.5px;color:#3d514b;margin-top:4px;line-height:1.7}
.fallback pre{margin:12px 0;background:#fff;border:1px solid #cfe8de;border-radius:8px;padding:12px 14px;
  font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.65;color:#23302c;
  white-space:pre-wrap;word-break:break-word;max-height:230px;overflow:auto}
.fb-acts{display:flex;gap:10px;flex-wrap:wrap}
.fb-acts .btn{padding:8px 16px;font-size:13.5px;cursor:pointer;border:none;font-family:inherit}
.fb-acts .btn.ghost{background:#fff}
.fb-acts .btn:disabled{opacity:.65;cursor:default}
