@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');

:root{
  --ink:#101820;--muted:#66717b;--paper:#f6f8f9;--white:#fff;
  --accent:#16b978;--accent-dark:#07885a;--line:#dfe5e8;--navy:#0b1821;
  --shadow:0 18px 50px rgba(15,30,40,.10);--radius:20px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.08;margin:0 0 18px}h1{font-size:clamp(3rem,7vw,6.5rem);letter-spacing:-.06em}h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.04em}h3{font-size:1.25rem}
a{color:inherit;text-decoration:none}.site-header{height:82px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(0,0,0,.06)}
.brand{display:flex;align-items:center;gap:10px;font-size:1.05rem}.brand b{font-weight:800}.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--navy);color:white;font-weight:800;font-size:.78rem}
nav{display:flex;align-items:center;gap:26px;font-size:.92rem;font-weight:600}.nav-button{padding:11px 17px;border:1px solid var(--line);border-radius:999px}
.hero{min-height:650px;background:var(--navy);color:#fff;position:relative;overflow:hidden;padding:110px 8%;display:flex;align-items:center;justify-content:space-between}.hero:after{content:"";position:absolute;width:650px;height:650px;border-radius:50%;right:-180px;top:-160px;background:radial-gradient(circle,rgba(22,185,120,.45),transparent 65%)}.hero-glow{position:absolute;width:350px;height:350px;left:38%;bottom:-240px;border-radius:50%;background:rgba(22,185,120,.25);filter:blur(50px)}.hero-content,.hero-card{position:relative;z-index:2}.hero-content{max-width:820px}.hero h1 span{color:#62e2ae}.hero p{font-size:1.15rem;color:#cbd6dc;max-width:590px}.eyebrow{display:block;letter-spacing:.17em;font-size:.72rem;font-weight:800;color:#73e5b6;margin-bottom:17px}.eyebrow.dark{color:var(--accent-dark)}
.primary-button{display:inline-flex;gap:16px;align-items:center;border:0;border-radius:999px;background:var(--accent);color:#062016;padding:14px 22px;font-weight:800;margin-top:16px;cursor:pointer;transition:.2s}.primary-button:hover{transform:translateY(-2px);background:#2bd38f}.hero-card{width:300px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:28px;border-radius:25px;backdrop-filter:blur(15px);box-shadow:var(--shadow)}.mini-label{font-size:.68rem;letter-spacing:.16em;color:#a7bbc4}.hero-stat{display:flex;align-items:center;gap:15px;margin:40px 0 25px}.hero-stat strong{font:800 4rem/1 Manrope}.hero-stat span{color:#b9c9cf}.hero-line{height:1px;background:rgba(255,255,255,.15)}.hero-card p{font-size:.9rem;color:#c1d0d6}
.search-panel{margin:-42px auto 0;position:relative;z-index:5;width:min(90%,1180px);background:#fff;border-radius:24px;padding:28px 32px;box-shadow:var(--shadow);display:flex;justify-content:space-between;align-items:center;gap:25px}.search-panel h2{font-size:2rem;margin:0}.search-form{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:9px;flex:1;max-width:680px}
input,textarea,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;font:inherit;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(22,185,120,.12)}textarea{min-height:110px;resize:vertical}
.property-section{width:min(90%,1180px);margin:100px auto}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.result-count{color:var(--muted)}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.property-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 25px rgba(15,30,40,.05)}.property-image{height:220px;background-size:cover;background-position:center;position:relative}.availability{display:inline-block;background:#d9faea;color:#087247;padding:6px 11px;border-radius:999px;font-size:.72rem;font-weight:800}.property-image .availability{position:absolute;left:16px;top:16px}.property-body{padding:22px}.property-top{display:flex;justify-content:space-between;gap:10px}.property-top h3{margin:0}.property-top strong{white-space:nowrap}.property-top small,.detail-price small{font-size:.75rem;color:var(--muted);font-weight:500}.location{color:var(--muted);margin:5px 0 18px}.features{display:flex;gap:18px;color:#55616a;font-size:.85rem;border-top:1px solid var(--line);padding-top:15px}.text-link{display:inline-block;margin-top:20px;color:var(--accent-dark);font-weight:800;font-size:.9rem}
.about{background:var(--navy);color:#fff;padding:100px 8%;display:grid;grid-template-columns:1fr 1fr;gap:90px}.about p{color:#c2d0d5;font-size:1.1rem}.about-points{display:grid;gap:14px;margin-top:28px}.about-points div{display:flex;gap:25px;border-top:1px solid rgba(255,255,255,.14);padding-top:15px}.about-points strong{color:#67dfae}.about-points span{color:#d8e2e6}.footer{background:#071117;color:#b8c5ca;padding:45px 8%;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;font-size:.9rem}.footer strong{color:#fff}.footer p{margin:7px 0}.footer-links{display:flex;flex-direction:column;gap:7px}.copyright{text-align:right}
.empty-state{background:#fff;border:1px dashed #bbc7cd;border-radius:18px;padding:40px;text-align:center;color:var(--muted)}
.detail-hero{width:min(92%,1200px);margin:65px auto 100px;display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.detail-image{height:600px;border-radius:28px;background-size:cover;background-position:center;box-shadow:var(--shadow)}.detail-copy .location{font-size:1.05rem}.detail-price{font:800 2.7rem Manrope;margin:22px 0}.large-features{font-size:.95rem;margin:25px 0}.detail-copy>p{color:#59656d}.detail-copy .primary-button{margin-top:20px}
.form-page{width:min(92%,920px);margin:65px auto 100px}.form-page.narrow{max-width:700px}.form-intro{margin-bottom:30px}.form-intro p{color:var(--muted)}.center{text-align:center}.security-note{margin-top:20px;background:#eefbf5;border:1px solid #ccefe0;padding:15px;border-radius:14px;display:grid;gap:3px}.security-note span{color:#52635a;font-size:.88rem}.application-form{display:grid;gap:22px}.application-form fieldset{border:1px solid var(--line);border-radius:18px;background:#fff;padding:24px}.application-form legend{font:700 1.15rem Manrope;padding:0 8px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-grid.three{grid-template-columns:repeat(3,1fr)}label{font-size:.83rem;font-weight:700;display:grid;gap:6px}.checkbox-row{display:flex;grid-template-columns:none;align-items:flex-start;gap:12px;font-weight:500}.checkbox-row input{width:18px;margin-top:4px}.wide{width:100%;justify-content:center}.alert{padding:15px;border-radius:13px;margin-bottom:20px}.alert.error{background:#fff0f0;color:#a52424;border:1px solid #f0caca}
.fee-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:35px;text-align:center;box-shadow:var(--shadow)}.fee-card>span{color:var(--muted)}.fee-card>strong{display:block;font:800 3.5rem Manrope;margin:5px 0 15px}.fee-card p{color:var(--muted)}.tiny{font-size:.76rem}
.success-page{width:min(92%,700px);margin:90px auto;text-align:center}.success-icon{width:70px;height:70px;border-radius:50%;background:#d9faea;color:#087247;display:grid;place-items:center;font-size:2rem;font-weight:800;margin:0 auto 25px}.reference-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin:25px 0;display:grid;gap:3px}.reference-card span{font-size:.78rem;color:var(--muted)}.reference-card strong{font-family:monospace;font-size:1.1rem}
.dashboard{min-height:calc(100vh - 82px);background:#f1f4f5}.admin-wrap{width:min(94%,1250px);margin:auto;padding:45px 0}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.admin-actions{display:flex;gap:10px}.admin-nav{background:var(--navy);color:white;padding:15px 3%;display:flex;gap:22px;align-items:center}.admin-nav a{color:#d7e3e7;font-size:.9rem}.admin-nav .push{margin-left:auto}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--line);padding:22px;border-radius:17px}.stat-card span{color:var(--muted);font-size:.8rem}.stat-card strong{display:block;font:800 2rem Manrope}.admin-table{width:100%;border-collapse:collapse;background:#fff;border-radius:17px;overflow:hidden}.admin-table th,.admin-table td{text-align:left;padding:14px;border-bottom:1px solid var(--line);font-size:.88rem}.admin-table th{background:#f7f9fa}.actions{display:flex;gap:8px}.small-button{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700}.danger{color:#b42323}.admin-form{background:#fff;padding:28px;border:1px solid var(--line);border-radius:18px}.login-page{min-height:calc(100vh - 82px);display:grid;place-items:center;padding:40px}.login-card{width:min(92%,430px);background:#fff;padding:35px;border-radius:22px;box-shadow:var(--shadow)}.login-card form{display:grid;gap:15px}
@media(max-width:900px){.hero{padding:80px 7%;display:block}.hero-card{display:none}.search-panel{display:block}.search-form{grid-template-columns:1fr 1fr;margin-top:20px}.property-grid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr;gap:20px}.detail-hero{grid-template-columns:1fr}.detail-image{height:420px}.footer{grid-template-columns:1fr 1fr}.copyright{text-align:left}}
@media(max-width:620px){nav a:not(.nav-button){display:none}.hero{min-height:600px}.search-form,.form-grid,.form-grid.three{grid-template-columns:1fr}.property-grid{grid-template-columns:1fr}.section-heading{display:block}.detail-image{height:300px}.about{padding:70px 7%}.footer{grid-template-columns:1fr}.site-header{padding:0 4%}.form-page{margin-top:40px}.stat-grid{grid-template-columns:1fr}}
