:root{
  --ink:#14202c;
  --muted:#68717b;
  --gold:#b78a43;
  --gold-dark:#8e6528;
  --cream:#f8f4ed;
  --line:#e7e2da;
  --white:#fff;
  --shadow:0 20px 55px rgba(20,32,44,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{color:inherit;text-decoration:none}
button,select{font:inherit}
img{max-width:100%;display:block}
.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.demo-banner{background:#13202c;color:#fff;text-align:center;padding:7px 16px;font-size:12px;letter-spacing:.02em}
.site-header{background:rgba(255,255,255,.96);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(20,32,44,.07);backdrop-filter:blur(14px)}
.nav-wrap{height:76px;display:flex;align-items:center;gap:28px}.brand{margin-right:auto}.brand img{width:220px;height:auto}.nav{display:flex;gap:25px;font-size:14px}.nav a{position:relative;padding:28px 0 24px}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:2px;background:var(--gold);transition:.2s}.nav a:hover:after{right:0}.nav-actions{display:flex;align-items:center;gap:10px}.lang-btn,.menu-toggle{border:1px solid var(--line);background:white;border-radius:10px;cursor:pointer}.lang-btn{height:40px;width:44px;font-weight:700}.menu-toggle{display:none;padding:8px 12px;font-size:20px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:13px 19px;font-weight:700;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn-gold{background:linear-gradient(135deg,#c99d54,#9b6e2f);color:#fff;box-shadow:0 10px 25px rgba(161,115,47,.24)}.btn-small{padding:11px 16px;font-size:13px}.btn-large{padding:16px 24px}.btn-ghost{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}
.hero{position:relative;min-height:550px;background-image:linear-gradient(90deg,rgba(10,19,29,.87) 0%,rgba(10,19,29,.64) 43%,rgba(10,19,29,.05) 75%),url('assets/images/hero.webp');background-size:cover;background-position:center;display:flex;align-items:center;padding:70px 0 120px}.hero-content{position:relative;z-index:2}.hero-copy{max-width:620px;color:#fff}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.19em;margin:0 0 15px;text-transform:uppercase}.eyebrow.dark{color:var(--gold-dark)}.hero h1,.listings-section h2,.about-section h2,.cta h2{font-family:Georgia,"Times New Roman",serif}.hero h1{font-size:clamp(42px,5vw,70px);line-height:1.02;margin:0 0 18px;letter-spacing:-.03em}.hero-lead{font-size:18px;max-width:560px;color:rgba(255,255,255,.87);margin:0 0 28px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}
.search-card{position:absolute;z-index:4;left:50%;bottom:-42px;transform:translateX(-50%);background:white;border-radius:16px;box-shadow:var(--shadow);padding:17px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px}.search-card label{border:1px solid var(--line);border-radius:10px;padding:8px 13px}.search-card label span{display:block;font-size:11px;color:var(--muted);font-weight:700;margin-bottom:3px}.search-card select{border:0;width:100%;background:transparent;color:var(--ink);outline:none;font-weight:650}.search-btn{min-width:150px}
.trust-strip{padding:82px 0 40px}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.trust-grid article{display:flex;align-items:center;gap:12px}.trust-icon{font-size:25px;color:var(--gold);width:36px}.trust-grid strong{display:block;font-size:14px}.trust-grid small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.listings-section{padding:38px 0 80px;background:linear-gradient(#fff,#fbfaf8)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.section-head h2{font-size:38px;line-height:1.1;margin:0;letter-spacing:-.02em}.section-note{margin:0;max-width:390px;color:var(--muted);font-size:13px;text-align:right}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.villa-card{background:white;border:1px solid #ebe7df;border-radius:14px;overflow:hidden;box-shadow:0 10px 32px rgba(20,32,44,.06);transition:.22s}.villa-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(20,32,44,.11)}.villa-card[hidden]{display:none}.card-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#eee}.card-media img{width:100%;height:100%;object-fit:cover;transition:.35s}.villa-card:hover .card-media img{transform:scale(1.035)}.badge{position:absolute;left:12px;top:12px;background:rgba(183,138,67,.94);color:#fff;padding:6px 10px;border-radius:7px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.card-body{padding:18px}.location{font-size:12px;color:var(--muted);margin:0 0 5px}.card-body h3{font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1.2;margin:0 0 14px}.specs{display:flex;gap:13px;flex-wrap:wrap;color:#34404c;font-weight:750;font-size:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}.specs small{font-size:10px;color:var(--muted);font-weight:600}.villa-desc{font-size:13px;line-height:1.6;color:#5e6872;margin:14px 0 12px}.feature-list{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:4px}.feature-list span{font-size:10px;font-weight:800;color:#785725;background:#f7f0e4;border:1px solid #eadcc4;border-radius:999px;padding:6px 8px}.price{font-size:21px;font-weight:850;color:#825b24;margin:14px 0}.card-btn{width:100%;border:1px solid var(--gold);background:white;color:#855f26;border-radius:8px;padding:11px;font-weight:800;cursor:pointer}.card-btn:hover{background:#fbf5eb}.no-result{padding:30px;text-align:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.about-section{padding:78px 0;background:#f7f2ea}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.about-section h2{font-size:42px;line-height:1.08;margin:0}.about-section p{color:#4e5964;margin-top:0}.text-link{display:inline-block;margin-top:15px;color:var(--gold-dark);font-weight:800}
.cta{padding:68px 0;background:linear-gradient(110deg,#14202c,#263849);color:white}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-size:40px;line-height:1.1;margin:4px 0 10px}.cta p{margin:0;color:rgba(255,255,255,.75)}
footer{padding:48px 0 22px;background:#fff}.footer-grid{display:grid;grid-template-columns:1.25fr .7fr 1fr;gap:30px;border-bottom:1px solid var(--line);padding-bottom:30px}.footer-grid p,.footer-grid a{color:var(--muted);font-size:13px}.footer-grid img{width:200px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:18px;color:#8a9198;font-size:11px}
@media(max-width:1000px){.nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:18px 25px;border-bottom:1px solid var(--line);flex-direction:column}.nav.open{display:flex}.nav a{padding:8px 0}.nav a:after{display:none}.menu-toggle{display:block}.nav-actions .btn{display:none}.search-card{grid-template-columns:1fr 1fr}.search-btn{grid-column:1/-1}.listing-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.shell{width:min(100% - 26px,1180px)}.site-header .nav-wrap{height:66px;gap:10px}.brand img{width:170px}.hero{min-height:620px;padding:55px 0 185px;background-position:64% center}.hero h1{font-size:43px}.hero-lead{font-size:16px}.search-card{bottom:-112px;grid-template-columns:1fr;padding:13px}.search-card label{padding:7px 11px}.search-btn{grid-column:auto}.trust-strip{padding-top:145px}.trust-grid{grid-template-columns:1fr 1fr;gap:24px 15px}.listing-grid{grid-template-columns:1fr}.section-head{display:block}.section-head h2{font-size:34px}.section-note{text-align:left;margin-top:13px}.about-grid{grid-template-columns:1fr;gap:22px}.about-section h2{font-size:35px}.cta-inner{display:block}.cta .btn{margin-top:24px;width:100%}.cta h2{font-size:34px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.demo-banner{font-size:10px}.nav{top:66px}.nav-actions{margin-left:auto}}
