@import url('https://api.fontshare.com/v2/css?f[]=clash-display@200,300,400,500,600,700&f[]=satoshi@300,400,500,700,900&f[]=general-sans@200,300,400,500,600,700&display=swap');

:root {
  --bg: #fff;
  --bg-s: #F8FAFC;
  --text: #0F172A;
  --muted: #475569;
  --accent: #2563EB;
  --orange: #FF7A00;
  --gold: #F59E0B;
  --cyan: #00E5FF;
  --purple: #8B5CF6;
  --glass-bg: rgba(255,255,255,0.7);
  --glass-border: rgba(15,23,42,0.08);
  --font-clash: "Clash Display", sans-serif;
  --font-satoshi: "Satoshi", sans-serif;
}

/* ===== RESET ===== */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--bg); }
body { font-family:var(--font-satoshi); background:var(--bg); color:var(--text); overflow-x:hidden; line-height:1.6; -webkit-text-size-adjust:100%; }
::selection { background:var(--accent); color:#fff; }
a { text-decoration:none; color:inherit; }
img { max-width:100%; display:block; height:auto; }
button { cursor:pointer; border:none; background:none; font-family:inherit; color:inherit; }
select, input, textarea { font-family:var(--font-satoshi); -webkit-appearance:none; }

/* ===== CONTAINER ===== */
.container { max-width:1400px; margin:0 auto; padding:0 24px; width:100%; }
.hidden { display:none !important; }

/* ===== UTILITIES ===== */
.text-gradient-blue { background:linear-gradient(to right,var(--accent),var(--cyan)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.text-gradient-gold { background:linear-gradient(to right,var(--gold),var(--orange)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.text-cyan { color:var(--cyan); } .text-gold { color:var(--gold); } .text-orange { color:var(--orange); }
.text-blue { color:var(--accent); } .text-purple { color:var(--purple); }

/* ===== GLASS ===== */
.glass { background:var(--glass-bg); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid var(--glass-border); border-radius:16px; }
.neon-line { height:2px; width:96px; background:linear-gradient(90deg,transparent,var(--accent),var(--cyan),transparent); margin-top:24px; }
.neon-line.center { margin-left:auto; margin-right:auto; }

/* ===== BUTTONS ===== */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:12px; font-family:var(--font-satoshi); font-weight:600; transition:all .3s; cursor:pointer; white-space:nowrap; text-align:center; }
.btn:hover { transform:translateY(-1px); } .btn:active { transform:scale(.97); }
.btn-sm { padding:10px 18px; font-size:14px; }
.btn-md { padding:12px 24px; font-size:15px; }
.btn-lg { padding:14px 28px; font-size:15px; }
.btn-primary { background:linear-gradient(135deg,var(--accent),#1d4ed8); color:#fff; box-shadow:0 4px 14px rgba(37,99,235,0.3); }
.btn-primary:hover { box-shadow:0 6px 20px rgba(37,99,235,0.4); }
.btn-whatsapp { background:linear-gradient(135deg,#22c55e,#16a34a); color:#fff; box-shadow:0 4px 14px rgba(34,197,94,0.3); }
.btn-whatsapp:hover { box-shadow:0 6px 20px rgba(34,197,94,0.4); }
.btn-ghost { border:1px solid var(--glass-border); color:var(--text); padding:12px 24px; font-size:15px; border-radius:12px; }
.btn-ghost:hover { background:var(--bg-s); }
.btn-glass { background:var(--glass-bg); backdrop-filter:blur(16px); border:1px solid var(--glass-border); color:var(--muted); }
.btn-glass:hover { color:var(--text); }

/* ===== SECTIONS ===== */
.section { padding:80px 0; position:relative; overflow:hidden; }
.section-heading { margin-bottom:48px; }
.section-heading.center { text-align:center; }
.section-heading.left { text-align:left; }
.section-label { color:var(--accent); font-size:12px; font-weight:600; letter-spacing:.25em; text-transform:uppercase; margin-bottom:12px; display:block; }
.section-title { font-family:var(--font-clash); font-weight:700; font-size:clamp(26px,5vw,56px); color:var(--text); line-height:1.1; margin-bottom:16px; }
.section-subtitle { color:var(--muted); font-size:16px; max-width:640px; margin:0 auto; line-height:1.7; }

/* ===== FORMS ===== */
select, input[type="text"], input[type="tel"], input[type="email"], input[type="number"], input[type="password"], textarea {
  width:100%; background:var(--bg); border:1px solid var(--glass-border); border-radius:12px;
  padding:12px 16px; color:var(--text); font-size:14px; outline:none; transition:border .3s;
}
select option { background:var(--bg); }
select:focus, input:focus, textarea:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(37,99,235,0.1); }
::placeholder { color:rgba(15,23,42,0.3); }

/* ===== ANIMATIONS ===== */
.anim-reveal { opacity:0; transform:translateY(30px); transition:opacity .7s ease, transform .7s ease; transition-delay:var(--delay,0s); }
.anim-reveal.visible { opacity:1; transform:translateY(0); }
@keyframes float-up { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@keyframes float-down { 0%,100%{transform:translateY(0)} 50%{transform:translateY(10px)} }
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.4} }
@keyframes slide-left { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.pulse-dot { width:8px; height:8px; border-radius:50%; background:#22c55e; animation:pulse 2s infinite; }

/* ===== GRID CLASSES (responsive) ===== */
.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.grid-5 { display:grid; grid-template-columns:repeat(5,1fr); gap:32px; }
.grid-form { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.grid-filter { display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:16px; }

/* ===== NAV ===== */
.nav { position:fixed; top:0; left:0; right:0; z-index:100; padding:16px 0; transition:all .5s; background:rgba(255,255,255,0.85); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
.nav.scrolled { padding:10px 0; border-bottom:1px solid var(--glass-border); box-shadow:0 1px 20px rgba(0,0,0,0.05); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; }
.nav-logo { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.nav-logo img { width:auto; height:auto; max-width:220px; max-height:62px; object-fit:contain; display:block; }
.logo-icon { width:36px; height:36px; border-radius:8px; background:linear-gradient(135deg,var(--accent),var(--cyan)); display:flex; align-items:center; justify-content:center; font-family:var(--font-clash); font-weight:700; color:#fff; font-size:16px; flex-shrink:0; }
.logo-title { font-family:var(--font-clash); font-weight:700; font-size:18px; color:var(--text); display:block; line-height:1; }
.logo-sub { font-size:9px; color:var(--muted); letter-spacing:.2em; text-transform:uppercase; }
.nav-links { display:flex; gap:28px; }
.nav-link { color:var(--muted); font-size:14px; font-weight:500; transition:color .3s; position:relative; }
.nav-link::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:2px; background:var(--accent); transition:width .3s; }
.nav-link:hover { color:var(--text); } .nav-link:hover::after { width:100%; }
.nav-cta { display:flex; align-items:center; gap:10px; }
.nav-phone { color:var(--muted); padding:8px; transition:color .3s; display:flex; } .nav-phone:hover { color:var(--text); }
.nav-toggle { display:none; flex-direction:column; gap:5px; padding:10px; z-index:110; }
.nav-toggle span { width:22px; height:2px; background:var(--text); transition:all .3s; border-radius:2px; display:block; }
.nav-toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-toggle.active span:nth-child(2) { opacity:0; }
.nav-toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Mobile Menu */
.mobile-menu { position:fixed; inset:0; z-index:95; background:rgba(255,255,255,0.98); backdrop-filter:blur(20px); display:none; flex-direction:column; align-items:center; justify-content:center; gap:20px; padding:20px; }
.mobile-menu.open { display:flex; }
.mobile-link { font-family:var(--font-clash); font-weight:700; font-size:24px; color:var(--text); transition:color .3s; padding:8px 0; }
.mobile-link:hover { color:var(--accent); }
.mobile-cta { display:flex; flex-direction:column; gap:12px; margin-top:24px; width:100%; max-width:280px; }
.mobile-cta .btn { width:100%; justify-content:center; }

/* ===== HERO ===== */
.hero { position:relative; min-height:100vh; min-height:100dvh; display:flex; align-items:center; overflow:hidden; }
.hero-glow { position:absolute; border-radius:50%; filter:blur(200px); z-index:0; }
.hero-glow-1 { top:-200px; right:-200px; width:600px; height:600px; }
.hero-glow-2 { bottom:-100px; left:-100px; width:400px; height:400px; }
.hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; padding:120px 0 60px; }
.hero-tag { color:var(--accent); font-size:12px; font-weight:600; letter-spacing:.25em; text-transform:uppercase; display:block; margin-bottom:20px; }
.hero-title { font-family:var(--font-clash); font-weight:700; font-size:clamp(32px,5vw,72px); line-height:1.05; margin-bottom:24px; color:var(--text); }
.hero-sub { color:var(--muted); font-size:16px; max-width:520px; line-height:1.7; margin-bottom:32px; }
.hero-buttons { display:flex; flex-wrap:wrap; gap:12px; }
.hero-cities { margin-top:32px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.hero-cities-label { color:var(--muted); font-size:11px; letter-spacing:.2em; text-transform:uppercase; }
.city-selector { display:flex; gap:6px; flex-wrap:wrap; }
.city-btn { padding:8px 14px; border-radius:8px; font-size:13px; font-weight:500; color:var(--muted); border:1px solid var(--glass-border); transition:all .3s; }
.city-btn:hover { color:var(--text); }
.city-btn.active { background:rgba(37,99,235,0.1); color:var(--accent); border-color:rgba(37,99,235,0.3); }
.hero-metrics { margin-top:32px; display:flex; gap:24px; flex-wrap:wrap; }
.hero-metric-val { font-family:var(--font-clash); font-weight:700; font-size:clamp(20px,3vw,28px); display:block; }
.hero-metric-label { color:var(--muted); font-size:11px; letter-spacing:.12em; text-transform:uppercase; margin-top:2px; }
.hero-scene { position:relative; height:500px; }
.hero-scene canvas { width:100% !important; height:100% !important; }
.hero-scene-badge { position:absolute; bottom:24px; left:24px; display:flex; align-items:center; gap:10px; padding:10px 14px; font-size:12px; color:var(--muted); border-radius:10px; }
.hero-scene-badge strong { color:var(--text); }

/* ===== HERO CAROUSEL ===== */
#hero.hero {
  min-height:100vh;
  min-height:100dvh;
  background:#05070c;
  isolation:isolate;
}
#hero .hero-glow { display:none; }
#hero .container.hero-grid { position:relative; z-index:2; }
.hero-carousel-wrap { position:absolute; inset:0; z-index:0; overflow:hidden; background:#05070c; }
.hero-slide {
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.04);
  transition:opacity 1s ease, transform 6s ease;
}
.hero-slide.active { opacity:1; transform:scale(1); }
.hero-carousel-overlay {
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(3,7,18,.78) 0%,rgba(3,7,18,.52) 42%,rgba(3,7,18,.28) 100%),
    linear-gradient(180deg,rgba(3,7,18,.5) 0%,rgba(3,7,18,.18) 45%,rgba(3,7,18,.76) 100%);
}
#hero .hero-title { color:#fff; text-shadow:0 16px 36px rgba(0,0,0,.34); }
#hero .hero-sub { color:rgba(255,255,255,.84); }
#hero .hero-tag {
  width:max-content;
  max-width:100%;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  backdrop-filter:blur(16px);
}
#hero .city-btn {
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.18);
  color:rgba(255,255,255,.76);
  backdrop-filter:blur(10px);
}
#hero .city-btn:hover,
#hero .city-btn.active { background:rgba(255,255,255,.18); border-color:rgba(255,255,255,.38); color:#fff; }
#hero .hero-cities-label,
#hero .hero-metric-label { color:rgba(255,255,255,.66); }
#hero .hero-scene-badge { background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.2); color:rgba(255,255,255,.76); }
#hero .hero-scene-badge strong { color:#fff; }
.carousel-arrow {
  position:absolute;
  top:50%;
  z-index:4;
  width:44px;
  height:44px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  font-size:20px;
  line-height:1;
  transform:translateY(-50%);
  transition:background .25s ease, border-color .25s ease, transform .25s ease;
  backdrop-filter:blur(14px);
}
.carousel-arrow:hover { background:rgba(255,255,255,.24); border-color:rgba(255,255,255,.42); }
.carousel-arrow:active { transform:translateY(-50%) scale(.96); }
.carousel-arrow.prev { left:18px; }
.carousel-arrow.next { right:18px; }
.carousel-dots {
  position:absolute;
  left:50%;
  bottom:30px;
  z-index:4;
  display:flex;
  align-items:center;
  gap:8px;
  transform:translateX(-50%);
}
.carousel-dot {
  width:9px;
  height:9px;
  padding:0;
  border-radius:999px;
  background:rgba(255,255,255,.44);
  transition:width .25s ease, background .25s ease;
}
.carousel-dot.active { width:34px; background:var(--gold); }
.carousel-dot:focus-visible,
.carousel-arrow:focus-visible { outline:2px solid #fff; outline-offset:3px; }

/* ===== CENTERED PROPERTY SEARCH HERO ===== */
#hero .hero-search-grid {
  display:flex !important;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  min-height:100dvh;
  padding:118px 24px 92px;
}
#hero .hero-search-content {
  width:min(760px,100%);
  margin:0 auto;
  text-align:center;
}
#hero .hero-kicker {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  margin:0 auto 16px;
  padding:6px 12px;
  font-size:10px;
  letter-spacing:.18em;
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.24);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
#hero .hero-search-content .hero-title {
  font-size:clamp(42px,6vw,78px);
  line-height:.98;
  margin:0 auto 16px;
  max-width:780px;
}
#hero .hero-search-content .hero-sub {
  max-width:620px;
  margin:0 auto 26px;
  font-size:16px;
  line-height:1.65;
}
.hero-search-panel {
  width:min(720px,100%);
  margin:0 auto 18px;
  padding:8px;
  display:grid;
  grid-template-columns:1fr 1fr 1.25fr auto;
  align-items:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:18px;
  background:rgba(8,15,28,.34);
  box-shadow:0 22px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.hero-search-field {
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  padding:8px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.09);
  color:#fff;
}
.hero-search-field span {
  color:rgba(255,255,255,.58);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.13em;
}
.hero-search-field select,
.hero-search-field input {
  width:100%;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#fff;
  box-shadow:none;
  font-size:13px;
  outline:none;
}
.hero-search-field select option { color:#0f172a; background:#fff; }
.hero-search-field input::placeholder { color:rgba(255,255,255,.62); }
.hero-search-submit {
  height:54px;
  padding:0 22px;
  border-radius:13px;
  background:linear-gradient(135deg,var(--gold),var(--orange));
  color:#111827;
  font-weight:800;
  box-shadow:0 14px 34px rgba(245,158,11,.34);
  transition:transform .25s ease, box-shadow .25s ease;
}
.hero-search-submit:hover { transform:translateY(-1px); box-shadow:0 18px 44px rgba(245,158,11,.42); }
.hero-centered-buttons {
  justify-content:center;
  margin:0 auto;
}
.btn-ghost-light {
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.1);
  color:#fff;
  backdrop-filter:blur(14px);
}
.btn-ghost-light:hover { background:rgba(255,255,255,.18); }
.hero-centered-metrics {
  justify-content:center;
  margin-top:24px;
}
.hero-centered-metrics .hero-metric {
  min-width:112px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(12px);
}

/* ===== TRUST BAR ===== */
.trust-bar { padding:14px 0; overflow:hidden; }
.trust-track { overflow:hidden; }
.trust-scroll { display:flex; white-space:nowrap; animation:slide-left 30s linear infinite; }
.trust-item { display:inline-flex; align-items:center; gap:16px; padding:0 24px; color:var(--muted); font-size:13px; letter-spacing:.12em; text-transform:uppercase; }
.trust-dot { width:5px; height:5px; border-radius:50%; background:var(--accent); flex-shrink:0; }

/* ===== WHATSAPP FAB ===== */
.wa-fab { position:fixed; bottom:20px; right:20px; z-index:80; width:52px; height:52px; border-radius:50%; background:#22c55e; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 0 20px rgba(34,197,94,0.4); transition:all .3s; transform:scale(0); animation:fab-in .5s ease 2s forwards; }
.wa-fab:hover { box-shadow:0 0 40px rgba(34,197,94,0.6); transform:scale(1.1) !important; }
@keyframes fab-in { to { transform:scale(1); } }

/* ===== PROPERTY CARDS ===== */
.prop-card { overflow:hidden; transition:all .4s; }
.prop-card:hover { border-color:rgba(15,23,42,0.15); transform:translateY(-2px); }
.prop-card-img { height:180px; background:linear-gradient(135deg,rgba(37,99,235,0.06),rgba(139,92,246,0.06)); position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden; border-radius:16px 16px 0 0; }
.prop-card-img img { width:100%; height:100%; object-fit:cover; }
.prop-badge { position:absolute; top:12px; left:12px; padding:4px 10px; border-radius:999px; font-size:11px; font-weight:600; }
.prop-badge.available { background:rgba(34,197,94,0.12); color:#16a34a; border:1px solid rgba(34,197,94,0.2); }
.prop-badge.preleased { background:rgba(245,158,11,0.12); color:var(--gold); border:1px solid rgba(245,158,11,0.2); }
.prop-badge.other { background:rgba(37,99,235,0.12); color:var(--accent); border:1px solid rgba(37,99,235,0.2); }
.prop-invest-badge { position:absolute; top:12px; right:12px; padding:4px 10px; border-radius:999px; font-size:11px; font-weight:600; background:rgba(255,122,0,0.12); color:var(--orange); border:1px solid rgba(255,122,0,0.2); }
.prop-city-badge { position:absolute; bottom:12px; left:12px; display:flex; align-items:center; gap:4px; color:var(--muted); font-size:12px; }
.prop-city-badge svg { color:var(--accent); }
.prop-body { padding:16px; }
.prop-name { font-family:var(--font-clash); font-weight:700; font-size:16px; color:var(--text); display:block; margin-bottom:4px; transition:color .3s; }
.prop-card:hover .prop-name { color:var(--accent); }
.prop-location { color:var(--muted); font-size:12px; margin-bottom:12px; }
.prop-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:12px; }
.prop-stat { padding:8px 10px; border-radius:8px; background:var(--bg-s); border:1px solid var(--glass-border); }
.prop-stat-val { font-family:var(--font-clash); font-weight:700; font-size:15px; }
.prop-stat-lbl { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.prop-details { display:flex; flex-direction:column; gap:6px; margin-bottom:12px; }
.prop-detail { display:flex; justify-content:space-between; font-size:12px; }
.prop-detail-label { color:var(--muted); }
.prop-detail-val { color:var(--text); font-weight:500; }
.prop-price-row { display:flex; align-items:flex-end; justify-content:space-between; padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid var(--glass-border); }
.prop-price-label { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.1em; margin-bottom:2px; }
.prop-price { font-family:var(--font-clash); font-weight:700; font-size:20px; color:var(--gold); }

/* ===== FOOTER ===== */
.footer { border-top:1px solid var(--glass-border); background:var(--bg-s); }
.footer-grid { display:grid; grid-template-columns:1.35fr 1fr 1.15fr 1.35fr; gap:40px; padding:56px 0 44px; }
.footer-brand-text { color:var(--muted); font-size:14px; line-height:1.6; margin-bottom:20px; }
.footer-heading { font-family:var(--font-clash); font-weight:700; margin-bottom:20px; color:var(--text); font-size:16px; }
.footer-heading-spaced { margin-top:26px; margin-bottom:14px; }
.footer-links { display:flex; flex-direction:column; gap:10px; }
.footer-link { color:var(--muted); font-size:14px; transition:color .3s; }
.footer-link:hover { color:var(--text); }
.footer-logo { display:inline-flex; align-items:center; margin-bottom:22px; }
.footer-logo img { width:auto; max-width:240px; max-height:68px; object-fit:contain; display:block; }
.footer-contact-list { display:flex; flex-direction:column; gap:12px; }
.footer-contact-item { display:flex; align-items:flex-start; gap:10px; color:var(--muted); font-size:14px; line-height:1.45; transition:color .3s; margin-bottom:0; }
.footer-contact-item:hover { color:var(--text); }
.footer-contact-item svg { color:var(--accent); flex-shrink:0; margin-top:3px; }
.footer-contact-item.wa:hover { color:#22c55e; }
.footer-contact-item.wa svg { color:#22c55e; }
.footer-address { color:var(--muted); font-size:14px; line-height:1.6; padding-top:2px; }
.footer-city-links { display:flex; flex-wrap:wrap; gap:8px; }
.footer-city-links a { padding:7px 10px; border-radius:999px; background:#fff; border:1px solid var(--glass-border); color:var(--muted); font-size:13px; transition:all .3s; }
.footer-city-links a:hover { color:var(--accent); border-color:rgba(37,99,235,.24); transform:translateY(-1px); }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; padding:24px 0; flex-wrap:wrap; gap:12px; }
.footer-bottom-text { color:var(--muted); font-size:12px; }
.footer-neon { height:1px; background:linear-gradient(90deg,transparent,var(--accent),var(--cyan),transparent); }
.footer-top-btn { width:40px; height:40px; border-radius:8px; display:flex; align-items:center; justify-content:center; color:var(--muted); transition:all .3s; background:var(--glass-bg); border:1px solid var(--glass-border); cursor:pointer; font-size:18px; flex-shrink:0; }
.footer-top-btn:hover { color:var(--text); }

/* ===== STATS ===== */
.stats-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:24px; }
.stat-counter { text-align:center; }
.stat-counter-val { font-family:var(--font-clash); font-weight:700; font-size:clamp(28px,4vw,48px); }
.stat-counter-label { color:var(--muted); font-size:12px; letter-spacing:.1em; text-transform:uppercase; margin-top:4px; }

/* ===== FILTER ===== */
.filter-bar { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; flex-wrap:wrap; gap:12px; }
.filter-bar-left { display:flex; align-items:center; gap:12px; }
.filter-count { color:var(--muted); font-size:14px; }
.filter-panel { padding:20px; margin-bottom:24px; }

/* ================================================================
   RESPONSIVE BREAKPOINTS
   ================================================================ */

/* === TABLET (1024px and below) === */
@media (max-width: 1024px) {
  .container { padding:0 20px; }

  /* Nav */
  .nav-links { display:none; }
  .nav-cta { display:none; }
  .nav-toggle { display:flex; }

  /* Hero */
  .hero-grid { grid-template-columns:1fr; padding:100px 0 50px; }
  .hero-scene { display:none; }
  .hero-title { font-size:clamp(32px,6vw,56px); }

  /* Grids */
  .grid-2 { grid-template-columns:1fr; gap:32px; }
  .grid-3 { grid-template-columns:repeat(2,1fr); gap:20px; }
  .grid-4 { grid-template-columns:repeat(2,1fr); gap:20px; }
  .grid-5 { grid-template-columns:repeat(3,1fr); gap:20px; }
  .grid-filter { grid-template-columns:repeat(3,1fr); }

  /* Stats */
  .stats-grid { grid-template-columns:repeat(3,1fr); gap:20px; }

  /* Footer */
  .footer-grid { grid-template-columns:1fr 1fr; gap:32px; }

  /* Section */
  .section { padding:60px 0; }
  .section-heading { margin-bottom:36px; }
}

/* === MOBILE (768px and below) === */
@media (max-width: 768px) {
  .container { padding:0 16px; }

  .section { padding:48px 0; }
  .section-title { font-size:clamp(24px,7vw,36px); }
  .section-subtitle { font-size:15px; }
  .section-heading { margin-bottom:28px; }

  /* Hero */
  .hero { min-height:auto; }
  .hero-grid { padding:90px 0 40px; gap:24px; }
  .hero-tag { font-size:11px; letter-spacing:.2em; margin-bottom:12px; }
  .hero-title { font-size:clamp(28px,8vw,44px); margin-bottom:16px; }
  .hero-sub { font-size:15px; margin-bottom:24px; }
  .hero-buttons { flex-direction:column; gap:10px; }
  .hero-buttons .btn { width:100%; padding:14px 24px; }
  .hero-cities { flex-direction:column; align-items:flex-start; gap:8px; margin-top:24px; }
  .hero-metrics { gap:20px; margin-top:24px; }
  .hero-metric-val { font-size:20px; }
  .hero-metric-label { font-size:10px; }

  /* Grids */
  .grid-2 { grid-template-columns:1fr; gap:24px; }
  .grid-3 { grid-template-columns:1fr; gap:16px; }
  .grid-4 { grid-template-columns:1fr 1fr; gap:16px; }
  .grid-5 { grid-template-columns:1fr 1fr; gap:16px; }
  .grid-form { grid-template-columns:1fr; gap:12px; }
  .grid-filter { grid-template-columns:1fr 1fr; gap:12px; }

  /* Property cards */
  .prop-card-img { height:160px; }
  .prop-body { padding:14px; }
  .prop-name { font-size:15px; }
  .prop-price { font-size:18px; }

  /* Stats */
  .stats-grid { grid-template-columns:1fr 1fr; gap:16px; }

  /* Footer */
  .footer-grid { grid-template-columns:1fr; gap:24px; }
  .footer-bottom { flex-direction:column; text-align:center; gap:8px; }

  /* Contact form */
  .form-actions { flex-direction:column; }
  .form-actions .btn { width:100%; }

  /* Buttons */
  .btn-lg { padding:14px 24px; font-size:14px; }

  /* About visual */
  .about-visual { display:none; }

  /* Trust bar */
  .trust-item { font-size:12px; padding:0 16px; gap:12px; }

  /* Neon line */
  .neon-line { margin-top:16px; }
}

/* === SMALL MOBILE (480px and below) === */
@media (max-width: 480px) {
  .container { padding:0 14px; }

  .section { padding:36px 0; }

  .hero-grid { padding:80px 0 32px; }
  .hero-title { font-size:clamp(24px,9vw,34px); }
  .hero-sub { font-size:14px; line-height:1.6; }
  .hero-metrics { gap:16px; }

  .grid-4 { grid-template-columns:1fr; gap:14px; }
  .grid-5 { grid-template-columns:1fr 1fr; gap:12px; }
  .grid-filter { grid-template-columns:1fr; gap:10px; }

  .stats-grid { grid-template-columns:1fr 1fr; gap:12px; }

  .prop-stats { grid-template-columns:1fr 1fr; gap:6px; }
  .prop-stat { padding:6px 8px; }
  .prop-stat-val { font-size:14px; }
  .prop-stat-lbl { font-size:8px; }
  .prop-card-img { height:140px; }

  .section-label { font-size:11px; letter-spacing:.2em; }

  .btn-sm { padding:8px 14px; font-size:13px; }
  .btn-lg { padding:12px 20px; font-size:14px; }

  .nav { padding:12px 0; }
  .logo-icon { width:32px; height:32px; font-size:14px; }
  .logo-title { font-size:16px; }

  .mobile-link { font-size:20px; }

  .footer-heading { font-size:15px; }
  .footer-brand-text { font-size:13px; }
}



/* ===== MOBILE HERO FIXES ===== */
@media (max-width: 768px){

.container{
    width:100%;
    max-width:100%;
    padding-left:24px !important;
    padding-right:24px !important;
    margin:auto;
    box-sizing:border-box;
}

.hero,
.hero-section,
.hero-container,
.hero-content,
.hero-text{
    width:100%;
    padding-left:0;
    padding-right:0;
    overflow:hidden;
}

.hero-title,
.hero-heading,
.hero h1{
    font-size:clamp(52px,11vw,72px) !important;
    line-height:0.92 !important;
    letter-spacing:-0.05em !important;
    word-break:break-word;
}

.hero-subtitle,
.hero p{
    font-size:18px !important;
    line-height:1.7 !important;
    margin-top:24px !important;
}

.hero-buttons,
.cta-buttons{
    margin-top:34px !important;
    gap:16px !important;
    width:100%;
}

.hero-buttons .btn,
.cta-buttons .btn,
.btn{
    width:100%;
    border-radius:22px !important;
    padding:18px 22px !important;
    box-shadow:0 10px 30px rgba(37,99,235,0.16);
}

section{
    overflow:hidden;
}

.navbar,
.header{
    padding-left:24px !important;
    padding-right:24px !important;
}

}

/* ===== ADCON REALTY LOGO ===== */

.nav-logo{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    overflow:hidden;
    flex-shrink:0;
}

.nav-logo img{
    width:auto;
    max-width:220px;
    height:auto;
    max-height:54px;
    object-fit:contain;
    display:block;
}

/* tablet */
@media(max-width:1024px){

.nav-logo img{
    max-width:190px;
    max-height:46px;
}

}

/* mobile */
/* MOBILE NAVBAR FIX */

@media(max-width:768px){

.nav{

    padding:8px 0 !important;

}

.nav-inner{

    min-height:54px !important;

    display:flex;
    align-items:center;
    justify-content:space-between;

}

.nav-logo{

    width:140px !important;
    max-width:140px !important;

    flex:0 0 140px !important;

    overflow:hidden;

}

.nav-logo img{

    width:100% !important;
    height:auto !important;

    max-height:none !important;
    max-width:100% !important;

    display:block;
    object-fit:contain;

}

.mobile-menu-toggle{

    width:40px;
    height:40px;

    flex-shrink:0;

}

}

/* small mobile */
@media(max-width:480px){

.nav-logo{

    max-width:120px;

}

.nav-logo img{

    width:100%;
    max-width:120px;
    max-height:28px;

}

}

.footer-socials{

    display:flex;
    align-items:center;
    gap:14px;

    margin-top:28px;

    flex-wrap:wrap;

}

.footer-socials a{

    padding:12px 18px;

    border-radius:14px;

    background:#f4f7fb;

    color:#0f172a;

    text-decoration:none;

    font-weight:600;

    transition:all .3s ease;

}

.footer-socials a:hover{

    background:#2563eb;
    color:#fff;

    transform:translateY(-2px);

}

.footer-social-link{

    display:flex;
    align-items:center;

    margin-top:12px;

    color:#0f172a;
    text-decoration:none;

    font-weight:600;

    transition:.3s ease;

}

.footer-social-link:hover{

    color:#2563eb;
    transform:translateX(4px);

}

.footer-social-link{

    display:flex;
    align-items:center;

    margin-top:12px;

    color:#0f172a;

    text-decoration:none;

    font-weight:600;

    transition:.3s ease;

}

.footer-social-link:hover{

    color:#2563eb;

    transform:translateX(4px);

}

.footer-socials{

    display:flex;
    align-items:center;

    gap:14px;

    margin-bottom:20px;
    margin-top:10px;

}

.social-circle{

    width:46px;
    height:46px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#ffffff;

    border:1px solid rgba(15,23,42,.08);

    color:#0f172a;

    transition:all .3s ease;

    box-shadow:0 10px 30px rgba(15,23,42,.06);

}

.social-circle svg{

    width:20px;
    height:20px;

}

.social-circle:hover{

    transform:translateY(-4px) scale(1.06);

}

.instagram:hover{

    background:linear-gradient(135deg,#ff0080,#ff7a00);

    color:#fff;

}

.facebook:hover{

    background:#1877f2;
    color:#fff;

}

.linkedin:hover{

    background:#0a66c2;
    color:#fff;

}

/* ===== FINAL BRAND + FOOTER OVERRIDES ===== */
.nav .nav-logo { width:auto !important; max-width:240px !important; flex:0 0 auto !important; overflow:visible; }
.nav .nav-logo img { width:auto !important; max-width:220px !important; max-height:62px !important; }
.site-footer .footer-socials { display:flex; align-items:center; gap:12px; margin:18px 0 0; flex-wrap:wrap; }
.site-footer .footer-socials a { padding:0; }
.site-footer .social-circle { width:44px; height:44px; }
.site-footer .footer-neon { margin:0; }

@media(max-width:1024px){
  .nav .nav-logo img { max-width:190px !important; max-height:54px !important; }
}

@media(max-width:768px){
  .nav .nav-logo { max-width:172px !important; flex:0 1 172px !important; }
  .nav .nav-logo img { max-width:172px !important; max-height:50px !important; }
  .footer-grid { grid-template-columns:1fr !important; gap:28px; }
  .footer-logo img { max-width:210px; max-height:60px; }
}

@media(max-width:480px){
  .nav .nav-logo { max-width:150px !important; flex-basis:150px !important; }
  .nav .nav-logo img { max-width:150px !important; max-height:44px !important; }
  .footer-logo img { max-width:190px; max-height:56px; }
  .footer-bottom { align-items:flex-start; text-align:left; }
}

/* ===== FINAL HERO CAROUSEL RESPONSIVE OVERRIDES ===== */
@media (max-width:1024px){
  #hero.hero { min-height:760px; }
  #hero .hero-grid { min-height:760px; align-content:center; }
  .hero-carousel-overlay {
    background:
      linear-gradient(90deg,rgba(3,7,18,.82) 0%,rgba(3,7,18,.5) 68%,rgba(3,7,18,.38) 100%),
      linear-gradient(180deg,rgba(3,7,18,.58) 0%,rgba(3,7,18,.18) 45%,rgba(3,7,18,.78) 100%);
  }
}

@media (max-width:768px){
  #hero.hero { min-height:720px; }
  #hero .hero-grid { min-height:720px; padding:104px 0 86px; }
  #hero .hero-title,
  #hero.hero h1 {
    font-size:clamp(34px,10vw,52px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    word-break:normal;
    overflow-wrap:break-word;
  }
  #hero .hero-sub,
  #hero.hero p {
    max-width:560px;
    font-size:16px !important;
    line-height:1.65 !important;
    margin-top:0 !important;
  }
  #hero .hero-buttons { margin-top:0 !important; gap:12px !important; }
  #hero .hero-buttons .btn { border-radius:14px !important; padding:15px 18px !important; }
  #hero .hero-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:12px; }
  #hero .hero-metric { min-width:0; }
  .carousel-arrow {
    top:auto;
    bottom:26px;
    width:40px;
    height:40px;
    font-size:18px;
    transform:none;
  }
  .carousel-arrow:active { transform:scale(.96); }
  .carousel-arrow.prev { left:16px; }
  .carousel-arrow.next { right:16px; }
  .carousel-dots { bottom:40px; }
}

@media (max-width:480px){
  #hero.hero { min-height:700px; }
  #hero .hero-grid { min-height:700px; padding:96px 0 84px; }
  #hero .hero-title,
  #hero.hero h1 { font-size:clamp(31px,10vw,42px) !important; }
  #hero .hero-sub,
  #hero.hero p { font-size:15px !important; }
  #hero .hero-metrics { grid-template-columns:1fr 1fr 1fr; gap:10px; }
  #hero .hero-metric-label { font-size:9px; letter-spacing:.08em; }
  .carousel-dot.active { width:28px; }
}

/* Search hero wins over legacy hero-grid overrides */
@media (min-width:769px){
  #hero .hero-search-grid { min-height:100vh !important; padding:118px 24px 92px !important; }
}

@media (max-width:1024px){
  #hero .hero-search-grid { display:flex !important; min-height:760px !important; padding:112px 20px 90px !important; }
  #hero .hero-search-content .hero-title { font-size:clamp(40px,7vw,64px) !important; }
}

@media (max-width:768px){
  #hero .hero-search-grid { min-height:760px !important; padding:106px 16px 96px !important; }
  #hero .hero-search-content .hero-title {
    font-size:clamp(34px,10vw,52px) !important;
    line-height:1 !important;
  }
  #hero .hero-search-content .hero-sub {
    font-size:15px !important;
    margin-bottom:20px !important;
  }
  .hero-search-panel {
    grid-template-columns:1fr;
    max-width:460px;
    padding:10px;
    border-radius:20px;
  }
  .hero-search-submit { width:100%; height:48px; }
  .hero-centered-buttons { flex-direction:column; max-width:460px; width:100%; }
  .hero-centered-buttons .btn { width:100%; }
  .hero-centered-metrics {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    width:100%;
    max-width:460px;
    margin-left:auto;
    margin-right:auto;
  }
  .hero-centered-metrics .hero-metric {
    min-width:0;
    padding:9px 7px;
  }
}

@media (max-width:480px){
  #hero .hero-search-grid { min-height:750px !important; padding:100px 14px 92px !important; }
  #hero .hero-kicker { font-size:9px; letter-spacing:.12em; }
  #hero .hero-search-content .hero-title { font-size:clamp(31px,11vw,42px) !important; }
  .hero-search-field { padding:8px 10px; }
}

/* ===== MOBILE/TABLET HERO STABILITY PATCH ===== */
@media (max-width:1024px){
  html, body { overflow-x:hidden; }
  #hero.hero {
    min-height:760px !important;
    min-height:100svh !important;
  }
  #hero .hero-search-grid {
    width:100% !important;
    max-width:100% !important;
    min-height:760px !important;
    min-height:100svh !important;
    padding:112px 20px 86px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  #hero .hero-search-content {
    width:100% !important;
    max-width:720px !important;
    overflow:visible !important;
  }
  #hero .hero-search-content .hero-title {
    font-size:clamp(38px,7vw,60px) !important;
    line-height:1.04 !important;
    letter-spacing:0 !important;
    margin-bottom:14px !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:580px !important;
    margin:0 auto 22px !important;
    font-size:15px !important;
    line-height:1.58 !important;
  }
  .hero-search-panel {
    max-width:680px !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  .hero-search-wide,
  .hero-search-submit { grid-column:1 / -1; }
  .hero-search-submit { width:100%; height:50px; }
  #hero .hero-centered-buttons {
    justify-content:center !important;
    margin-top:12px !important;
    gap:10px !important;
    width:auto !important;
  }
  #hero .hero-centered-buttons .btn {
    width:auto;
    min-width:190px;
    padding:13px 18px !important;
    border-radius:13px !important;
  }
}

@media (max-width:768px){
  .container { padding-left:16px !important; padding-right:16px !important; }
  .nav { padding:7px 0 !important; }
  .nav-inner { min-height:52px !important; }
  .nav .nav-logo { max-width:142px !important; flex-basis:142px !important; }
  .nav .nav-logo img { max-width:142px !important; max-height:42px !important; }
  .nav-toggle { width:42px; height:42px; align-items:center; justify-content:center; }

  #hero.hero {
    min-height:720px !important;
    min-height:100svh !important;
  }
  #hero .hero-search-grid {
    min-height:720px !important;
    min-height:100svh !important;
    padding:92px 16px 88px !important;
  }
  #hero .hero-kicker {
    margin-bottom:12px !important;
    padding:6px 10px !important;
    font-size:9px !important;
    letter-spacing:.12em !important;
  }
  #hero .hero-search-content .hero-title {
    font-size:clamp(32px,9vw,44px) !important;
    line-height:1.05 !important;
    margin-bottom:12px !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:420px !important;
    font-size:14px !important;
    line-height:1.55 !important;
    margin-bottom:16px !important;
  }
  .hero-search-panel {
    max-width:420px !important;
    grid-template-columns:1fr !important;
    padding:8px !important;
    gap:7px !important;
    border-radius:17px !important;
  }
  .hero-search-field {
    padding:8px 10px !important;
    border-radius:11px !important;
  }
  .hero-search-field span { font-size:9px !important; }
  .hero-search-field select,
  .hero-search-field input { font-size:13px !important; min-height:22px; }
  .hero-search-submit {
    height:46px !important;
    border-radius:12px !important;
  }
  #hero .hero-centered-buttons {
    width:100% !important;
    max-width:420px !important;
    margin:10px auto 0 !important;
    gap:9px !important;
  }
  #hero .hero-centered-buttons .btn {
    width:100% !important;
    min-width:0 !important;
    padding:12px 16px !important;
    border-radius:12px !important;
    font-size:14px !important;
  }
  #hero .hero-centered-metrics {
    max-width:420px !important;
    margin-top:14px !important;
    gap:7px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    padding:7px 5px !important;
    border-radius:10px !important;
  }
  #hero .hero-metric-val { font-size:18px !important; }
  #hero .hero-metric-label {
    font-size:8px !important;
    letter-spacing:.06em !important;
    line-height:1.2 !important;
  }
  .carousel-arrow {
    bottom:22px !important;
    width:38px !important;
    height:38px !important;
  }
  .carousel-dots { bottom:34px !important; }
}

@media (max-width:480px){
  .container { padding-left:14px !important; padding-right:14px !important; }
  .nav .nav-logo { max-width:126px !important; flex-basis:126px !important; }
  .nav .nav-logo img { max-width:126px !important; max-height:38px !important; }
  #hero.hero { min-height:700px !important; min-height:100svh !important; }
  #hero .hero-search-grid { padding:86px 14px 82px !important; }
  #hero .hero-search-content .hero-title {
    font-size:clamp(29px,10vw,38px) !important;
    line-height:1.06 !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:350px !important;
    font-size:13px !important;
  }
  .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics { max-width:350px !important; }
  #hero .hero-centered-metrics {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  #hero .hero-metric-val { font-size:16px !important; }
  #hero .hero-metric-label { font-size:7px !important; }
  .carousel-arrow { display:none !important; }
  .carousel-dots { bottom:24px !important; }
}

/* ===== APP-LIKE MOBILE UI OVERRIDES: DESKTOP UNCHANGED ===== */
@media (max-width:1024px){
  body { background:#eaf4ff; }
  .nav {
    background:rgba(255,255,255,.94) !important;
    box-shadow:0 10px 30px rgba(15,23,42,.08);
  }
  #hero.hero {
    background:#dbeeff !important;
    overflow:hidden;
  }
  #hero .hero-carousel-wrap {
    inset:0 0 auto 0;
    height:330px;
    border-radius:0 0 30px 30px;
    box-shadow:0 22px 60px rgba(15,23,42,.24);
  }
  #hero .hero-slide { background-position:center top; }
  #hero .hero-carousel-overlay {
    background:
      linear-gradient(180deg,rgba(2,6,23,.2) 0%,rgba(2,6,23,.5) 100%),
      linear-gradient(90deg,rgba(2,6,23,.36),rgba(2,6,23,.18));
  }
  #hero .hero-search-grid {
    align-items:flex-start !important;
    min-height:auto !important;
    padding-top:122px !important;
    padding-bottom:42px !important;
  }
  #hero .hero-search-content {
    max-width:640px !important;
    padding:28px;
    border-radius:30px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(255,255,255,.86);
    box-shadow:0 24px 70px rgba(15,23,42,.18);
    color:#0f172a;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }
  #hero .hero-kicker {
    background:#eff6ff !important;
    border-color:#dbeafe !important;
    color:#2563eb !important;
    box-shadow:none !important;
  }
  #hero .hero-search-content .hero-title {
    color:#0f172a !important;
    text-shadow:none !important;
  }
  #hero .hero-search-content .hero-sub {
    color:#64748b !important;
  }
  .hero-search-panel {
    background:#fff !important;
    border:1px solid #e5e7eb !important;
    box-shadow:0 16px 36px rgba(15,23,42,.08) !important;
  }
  .hero-search-field {
    background:#f8fafc !important;
    border-color:#e5e7eb !important;
    color:#0f172a !important;
  }
  .hero-search-field span { color:#64748b !important; }
  .hero-search-field select,
  .hero-search-field input { color:#0f172a !important; }
  .hero-search-field input::placeholder { color:#94a3b8 !important; }
  .hero-search-submit {
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 14px 30px rgba(15,23,42,.24) !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    box-shadow:0 14px 30px rgba(15,23,42,.22) !important;
  }
  #hero .btn-ghost-light {
    background:#f8fafc !important;
    color:#0f172a !important;
    border-color:#e5e7eb !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    background:#f8fafc !important;
    border-color:#e5e7eb !important;
    box-shadow:none !important;
  }
  #hero .hero-metric-label { color:#64748b !important; }
  .carousel-dots {
    top:294px;
    bottom:auto !important;
  }
  .carousel-dot { background:rgba(255,255,255,.58); }
  .carousel-dot.active { background:#0f172a; }
}

@media (max-width:768px){
  #hero .hero-carousel-wrap {
    height:250px;
    border-radius:0 0 26px 26px;
  }
  #hero .hero-search-grid {
    padding-top:96px !important;
    padding-bottom:36px !important;
  }
  #hero .hero-search-content {
    max-width:430px !important;
    padding:22px 16px 18px;
    border-radius:26px;
  }
  #hero .hero-search-content .hero-title {
    font-size:clamp(30px,8.8vw,40px) !important;
    line-height:1.08 !important;
  }
  #hero .hero-search-content .hero-sub {
    font-size:13.5px !important;
    line-height:1.5 !important;
  }
  .hero-search-panel {
    margin-bottom:12px !important;
    border-radius:18px !important;
  }
  .hero-search-field {
    min-height:52px;
    justify-content:center;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr;
  }
  #hero .hero-centered-buttons .btn {
    padding:12px 10px !important;
    font-size:12.5px !important;
    white-space:normal;
    line-height:1.2;
  }
  #hero .hero-centered-metrics {
    margin-top:12px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:54px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .carousel-dots { top:225px; }
  .section {
    background:#f8fbff !important;
  }
  .section-heading.center,
  .section-heading.left {
    text-align:left;
  }
  .section-title {
    font-size:clamp(25px,7vw,34px) !important;
    line-height:1.12;
  }
  .section-subtitle {
    margin-left:0;
    font-size:14px;
  }
  .prop-card {
    border-radius:24px !important;
    box-shadow:0 18px 42px rgba(15,23,42,.08);
  }
  .prop-card-img {
    height:190px !important;
    border-radius:24px 24px 0 0 !important;
  }
  .prop-body { padding:16px !important; }
  .footer {
    background:#f8fbff !important;
  }
  .footer-grid {
    padding-top:34px !important;
  }
}

@media (max-width:480px){
  #hero .hero-carousel-wrap { height:218px; }
  #hero .hero-search-grid {
    padding-top:82px !important;
    padding-bottom:30px !important;
  }
  #hero .hero-search-content {
    padding:18px 13px 15px;
    border-radius:24px;
  }
  #hero .hero-search-content .hero-title {
    font-size:clamp(27px,9.2vw,36px) !important;
  }
  #hero .hero-search-content .hero-sub {
    font-size:12.5px !important;
    margin-bottom:12px !important;
  }
  .hero-search-panel {
    padding:7px !important;
    gap:6px !important;
  }
  .hero-search-field {
    min-height:48px;
    padding:7px 9px !important;
  }
  .hero-search-submit { height:44px !important; }
  #hero .hero-centered-buttons {
    gap:7px !important;
  }
  #hero .hero-centered-buttons .btn {
    padding:11px 8px !important;
    font-size:12px !important;
  }
  #hero .hero-centered-metrics {
    gap:6px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:48px;
  }
  .carousel-dots { top:196px; }
  .prop-card-img { height:170px !important; }
}

/* ===== FINAL REFERENCE-STYLE MOBILE APP UI ===== */
@media (min-width:769px) and (max-width:1024px){
  body { background:#eef7ff !important; }
  #hero.hero {
    min-height:820px !important;
    background:#5f7f9f !important;
    padding:0 !important;
  }
  #hero .hero-carousel-wrap {
    inset:96px 32px auto 32px !important;
    height:610px !important;
    border-radius:34px !important;
    overflow:hidden !important;
    box-shadow:0 36px 90px rgba(15,23,42,.34) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,.06) 0%,rgba(2,6,23,.18) 38%,rgba(2,6,23,.86) 100%) !important;
  }
  #hero .hero-search-grid {
    min-height:820px !important;
    padding:260px 56px 76px !important;
    align-items:flex-end !important;
  }
  #hero .hero-search-content {
    max-width:620px !important;
    margin:0 auto !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    text-align:left !important;
  }
  #hero .hero-kicker {
    background:rgba(255,255,255,.14) !important;
    border-color:rgba(255,255,255,.2) !important;
    color:#fff !important;
  }
  #hero .hero-search-content .hero-title {
    color:#fff !important;
    text-shadow:0 14px 30px rgba(0,0,0,.42) !important;
  }
  #hero .hero-search-content .hero-sub { color:rgba(255,255,255,.82) !important; }
  .hero-search-panel {
    background:rgba(255,255,255,.96) !important;
    border:1px solid rgba(255,255,255,.86) !important;
    border-radius:24px !important;
    box-shadow:0 22px 60px rgba(15,23,42,.24) !important;
  }
}

@media (max-width:768px){
  html, body {
    background:#557797 !important;
    overflow-x:hidden !important;
  }
  .nav {
    top:10px !important;
    left:14px !important;
    right:14px !important;
    width:auto !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.92) !important;
    box-shadow:0 16px 40px rgba(15,23,42,.16) !important;
  }
  .nav-inner {
    min-height:48px !important;
    padding-left:12px !important;
    padding-right:8px !important;
  }
  .nav .nav-logo { max-width:132px !important; flex-basis:132px !important; }
  .nav .nav-logo img { max-width:132px !important; max-height:36px !important; }
  .nav-toggle {
    width:38px !important;
    height:38px !important;
    border-radius:14px;
    background:#f8fafc;
  }

  #hero.hero {
    min-height:760px !important;
    background:#557797 !important;
    overflow:visible !important;
    padding:0 !important;
  }
  #hero .hero-carousel-wrap {
    position:absolute !important;
    inset:82px 18px auto 18px !important;
    height:590px !important;
    border-radius:30px !important;
    overflow:hidden !important;
    background:#05070c !important;
    box-shadow:0 34px 80px rgba(15,23,42,.36) !important;
  }
  #hero .hero-slide {
    background-position:center center !important;
    transform:scale(1.02) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,.08) 0%,rgba(2,6,23,.16) 34%,rgba(2,6,23,.9) 100%) !important;
  }
  #hero .hero-search-grid {
    width:100% !important;
    min-height:760px !important;
    padding:300px 32px 46px !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
  }
  #hero .hero-search-content {
    width:100% !important;
    max-width:390px !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    text-align:left !important;
    color:#fff !important;
    overflow:visible !important;
  }
  #hero .hero-kicker {
    display:inline-flex !important;
    margin:0 0 12px !important;
    padding:6px 10px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.15) !important;
    border:1px solid rgba(255,255,255,.2) !important;
    color:rgba(255,255,255,.92) !important;
    box-shadow:none !important;
    font-size:9px !important;
    letter-spacing:.12em !important;
  }
  #hero .hero-search-content .hero-title {
    max-width:320px !important;
    margin:0 0 8px !important;
    color:#fff !important;
    font-size:clamp(30px,9vw,42px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-shadow:0 12px 28px rgba(0,0,0,.45) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:290px !important;
    margin:0 0 16px !important;
    color:rgba(255,255,255,.78) !important;
    font-size:12.5px !important;
    line-height:1.45 !important;
  }
  .hero-search-panel {
    width:100% !important;
    max-width:100% !important;
    margin:0 0 13px !important;
    padding:8px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    border-radius:24px !important;
    background:#fff !important;
    border:1px solid rgba(255,255,255,.9) !important;
    box-shadow:0 20px 50px rgba(0,0,0,.24) !important;
  }
  .hero-search-field {
    min-height:46px !important;
    padding:8px 12px !important;
    border-radius:16px !important;
    background:#f6f8fb !important;
    border:1px solid #eef2f7 !important;
    color:#0f172a !important;
  }
  .hero-search-field span {
    color:#64748b !important;
    font-size:8px !important;
    letter-spacing:.14em !important;
  }
  .hero-search-field select,
  .hero-search-field input {
    color:#0f172a !important;
    font-size:13px !important;
    min-height:20px !important;
  }
  .hero-search-field input::placeholder { color:#94a3b8 !important; }
  .hero-search-submit {
    height:46px !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#0f172a !important;
    box-shadow:inset 0 0 0 1px #e5e7eb, 0 10px 24px rgba(15,23,42,.12) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:240px !important;
    margin:0 auto !important;
    gap:8px !important;
  }
  #hero .hero-centered-buttons .btn {
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    font-size:13px !important;
    font-weight:800 !important;
    box-shadow:0 16px 32px rgba(0,0,0,.26) !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#fff !important;
    color:#0f172a !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    display:none !important;
  }
  #hero .hero-centered-metrics {
    display:none !important;
  }
  .carousel-dots {
    top:auto !important;
    bottom:148px !important;
    gap:5px !important;
  }
  .carousel-dot {
    width:5px !important;
    height:5px !important;
    background:rgba(255,255,255,.48) !important;
  }
  .carousel-dot.active {
    width:18px !important;
    background:#fff !important;
  }
  .carousel-arrow { display:none !important; }

  .trust-bar {
    margin-top:0 !important;
    background:#557797 !important;
    border:0 !important;
  }
  .section {
    background:#f5f9ff !important;
    overflow:hidden !important;
  }
  .section .container {
    max-width:430px !important;
  }
  .section-heading.center,
  .section-heading.left {
    text-align:left !important;
  }
  .section-label {
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    background:#eaf3ff;
    letter-spacing:.16em !important;
  }
  .section-title {
    font-size:clamp(24px,7vw,32px) !important;
  }
  .glass {
    border-radius:24px !important;
  }
  .prop-card {
    border-radius:26px !important;
    background:#fff !important;
    box-shadow:0 18px 44px rgba(15,23,42,.08) !important;
  }
  .prop-card-img {
    height:186px !important;
    border-radius:26px 26px 0 0 !important;
  }
  .prop-body { padding:16px !important; }
  .footer { background:#f5f9ff !important; }
}

@media (max-width:480px){
  .nav {
    left:12px !important;
    right:12px !important;
  }
  #hero.hero {
    min-height:730px !important;
  }
  #hero .hero-carousel-wrap {
    inset:76px 14px auto 14px !important;
    height:570px !important;
    border-radius:28px !important;
  }
  #hero .hero-search-grid {
    min-height:730px !important;
    padding:278px 28px 42px !important;
  }
  #hero .hero-search-content .hero-title {
    max-width:285px !important;
    font-size:clamp(28px,9vw,37px) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:260px !important;
    font-size:12px !important;
  }
  .hero-search-panel {
    border-radius:22px !important;
  }
  .carousel-dots {
    bottom:138px !important;
  }
}

/* ===== FIRST-VIEW MOBILE HERO + RELIABLE MENU ===== */
@media (max-width:768px){
  body.menu-open { overflow:hidden !important; }
  .mobile-menu {
    z-index:9998 !important;
    display:flex !important;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px) scale(.98);
    transition:opacity .25s ease, transform .25s ease, visibility .25s ease;
    background:rgba(248,251,255,.98) !important;
  }
  .mobile-menu.open {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
  }
  .mobile-link {
    width:min(300px,100%);
    padding:13px 18px !important;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 28px rgba(15,23,42,.08);
    font-size:20px !important;
    text-align:center;
  }
  .mobile-cta {
    width:min(300px,100%);
  }

  #hero.hero {
    min-height:100svh !important;
    height:100svh !important;
    max-height:820px;
    background:#557797 !important;
    overflow:hidden !important;
  }
  #hero .hero-carousel-wrap {
    inset:76px 14px 18px 14px !important;
    height:auto !important;
    min-height:0 !important;
    border-radius:30px !important;
  }
  #hero .hero-search-grid {
    min-height:100svh !important;
    height:100svh !important;
    padding:0 30px 62px !important;
    align-items:flex-end !important;
  }
  #hero .hero-search-content {
    max-width:360px !important;
    margin:0 auto !important;
  }
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-content .hero-title {
    max-width:285px !important;
    margin-bottom:8px !important;
    font-size:clamp(29px,8.8vw,40px) !important;
    line-height:1.03 !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:270px !important;
    margin-bottom:18px !important;
    font-size:12px !important;
    line-height:1.45 !important;
  }
  #hero .hero-search-panel {
    display:none !important;
  }
  #hero .hero-centered-buttons {
    display:block !important;
    width:168px !important;
    max-width:168px !important;
    margin:0 auto !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    height:48px !important;
    width:168px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    justify-content:center !important;
    background:#fff !important;
    color:#0f172a !important;
    font-size:13px !important;
    font-weight:900 !important;
    box-shadow:0 16px 40px rgba(0,0,0,.32) !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light,
  #hero .hero-centered-metrics {
    display:none !important;
  }
  .carousel-dots {
    left:50% !important;
    top:auto !important;
    bottom:116px !important;
    transform:translateX(-50%) !important;
  }
  .trust-bar {
    display:none !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-grid {
    padding-left:26px !important;
    padding-right:26px !important;
    padding-bottom:54px !important;
  }
  #hero .hero-search-content .hero-title {
    max-width:260px !important;
    font-size:clamp(27px,8.6vw,34px) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:245px !important;
  }
  .carousel-dots {
    bottom:108px !important;
  }
}

/* ===== MOBILE SPACING POLISH ===== */
@media (max-width:768px){
  #hero.hero {
    margin-bottom:18px !important;
  }
  #hero .hero-carousel-wrap {
    top:90px !important;
  }
  #hero .hero-search-grid {
    padding-top:336px !important;
    padding-bottom:30px !important;
  }
  .section {
    padding-top:54px !important;
    padding-bottom:54px !important;
  }
  #about.section,
  .trust-bar + .section {
    padding-top:62px !important;
  }
  .trust-bar {
    padding:18px 0 !important;
  }
}

@media (max-width:390px){
  #hero .hero-carousel-wrap {
    top:84px !important;
  }
  #hero .hero-search-grid {
    padding-top:306px !important;
    padding-bottom:26px !important;
  }
  .section {
    padding-top:48px !important;
    padding-bottom:48px !important;
  }
}

/* ===== FINAL CASCADE LOCK: MOBILE HERO OVERLAY + FIRST-SCREEN FIT ===== */
@media (max-width:768px){
  #hero.hero {
    height:100svh !important;
    min-height:640px !important;
    max-height:860px !important;
    margin:0 0 18px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:absolute !important;
    inset:80px 14px auto 14px !important;
    height:250px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    box-shadow:0 24px 58px rgba(31,67,104,.22) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.1) 42%,rgba(2,6,23,.82) 100%) !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
    height:100svh !important;
    min-height:640px !important;
    max-height:860px !important;
    padding:0 14px 13px !important;
  }
  #hero .hero-search-content {
    position:static !important;
    width:min(430px,100%) !important;
    max-width:430px !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:247px !important;
    width:auto !important;
    max-width:310px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(25px,7.2vw,34px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.5) !important;
    z-index:3 !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:319px !important;
    width:auto !important;
    max-width:300px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.84) !important;
    font-size:11px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.46) !important;
    z-index:3 !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:7px !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 8px !important;
    padding:9px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.98) !important;
    border:1px solid rgba(226,236,248,.92) !important;
    box-shadow:0 18px 42px rgba(31,67,104,.15) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .hero-search-field {
    min-height:43px !important;
    padding:7px 10px !important;
    border-radius:15px !important;
    background:#f7fbff !important;
    border:1px solid #e9f1fb !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:42px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 26px rgba(15,23,42,.2) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    margin:0 0 8px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:40px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
    width:100% !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:44px !important;
    padding:6px 4px !important;
    border-radius:15px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 10px 22px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val {
    font-size:15px !important;
    line-height:1 !important;
  }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:6.5px !important;
    line-height:1.08 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero,
  #hero .hero-search-grid {
    min-height:620px !important;
  }
  #hero .hero-carousel-wrap {
    inset:76px 10px auto 10px !important;
    height:236px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid {
    padding:0 10px 10px !important;
  }
  #hero .hero-search-content .hero-title {
    top:238px !important;
    left:22px !important;
    right:22px !important;
    max-width:285px !important;
    font-size:clamp(24px,7.4vw,31px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:303px !important;
    left:22px !important;
    right:22px !important;
    max-width:280px !important;
    font-size:10.5px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:6px !important;
  }
  #hero .hero-search-field {
    min-height:40px !important;
    padding:6px 8px !important;
  }
  #hero .hero-search-submit {
    height:40px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:38px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:40px !important;
  }
}

/* ===== FINAL GAP FIX: BRING SEARCH STACK UNDER HERO IMAGE ===== */
@media (max-width:768px){
  #hero .hero-search-content {
    display:block !important;
    height:auto !important;
    padding-top:clamp(390px,49svh,418px) !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-content {
    padding-top:clamp(374px,48svh,398px) !important;
  }
  #hero .hero-search-panel {
    margin-bottom:7px !important;
  }
  #hero .hero-centered-buttons {
    margin-bottom:7px !important;
  }
}

/* ===== TRUE FINAL STACK LIFT: KEEP TEXT ON IMAGE, MOVE CONTROLS UP ===== */
@media (max-width:768px){
  #hero .hero-search-content {
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    height:100% !important;
    padding-top:0 !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:translateY(clamp(-132px,-14svh,-98px)) !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:translateY(-112px) !important;
  }
}

/* ===== TRUE FINAL BALANCE: TITLE ON BANNER, CONTROLS BELOW IT ===== */
@media (max-width:768px){
  #hero .hero-search-content .hero-title {
    top:170px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:248px !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:translateY(clamp(-56px,-5.5svh,-34px)) !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-content .hero-title {
    top:162px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:232px !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:translateY(-42px) !important;
  }
}

/* ===== REAL LAST CLEAN MOBILE HERO RESET ===== */
@media (max-width:768px){
  .nav { z-index:10000 !important; }
  .nav-toggle { position:relative !important; z-index:10002 !important; }
  .mobile-menu { z-index:9998 !important; }

  #hero.hero {
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 0 18px !important;
    padding:84px 0 24px !important;
    overflow:visible !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    height:300px !important;
    min-height:0 !important;
    margin:0 12px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    z-index:1 !important;
    box-shadow:0 24px 58px rgba(31,67,104,.2) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,.02) 0%,rgba(2,6,23,.2) 45%,rgba(2,6,23,.86) 100%) !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    width:100% !important;
    padding:16px 12px 0 !important;
    margin:0 !important;
    align-items:initial !important;
    justify-content:initial !important;
    transform:none !important;
  }
  #hero .hero-search-content {
    position:static !important;
    display:block !important;
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
    transform:none !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    top:-150px !important;
    left:18px !important;
    right:18px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(29px,7.8vw,38px) !important;
    line-height:1.04 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 26px rgba(0,0,0,.52) !important;
    z-index:3 !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    top:-63px !important;
    left:18px !important;
    right:18px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.86) !important;
    font-size:12px !important;
    line-height:1.42 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.5) !important;
    z-index:3 !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:none !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 10px !important;
    padding:10px !important;
    gap:8px !important;
    border:1px solid rgba(226,236,248,.95) !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.98) !important;
    box-shadow:0 18px 42px rgba(31,67,104,.14) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .hero-search-field {
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:16px !important;
    background:#f8fbff !important;
    border:1px solid #e9f1fb !important;
    color:#0f172a !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:44px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 26px rgba(15,23,42,.18) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    gap:8px !important;
    margin:0 0 10px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    width:100% !important;
    gap:8px !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    padding:7px 4px !important;
    border-radius:16px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 10px 22px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val { font-size:16px !important; line-height:1 !important; }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:7px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero { padding-top:78px !important; }
  #hero .hero-carousel-wrap {
    height:276px !important;
    margin:0 10px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid { padding:14px 10px 0 !important; }
  #hero .hero-search-content .hero-title {
    top:-140px !important;
    left:16px !important;
    right:16px !important;
    max-width:300px !important;
    font-size:clamp(27px,7.8vw,34px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-58px !important;
    left:16px !important;
    right:16px !important;
    max-width:290px !important;
    font-size:11px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:7px !important;
    border-radius:22px !important;
  }
  #hero .hero-search-field {
    min-height:42px !important;
    padding:7px 9px !important;
  }
  #hero .hero-search-submit { height:41px !important; }
  #hero .hero-centered-buttons .btn {
    height:39px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric { min-height:43px !important; }
}

/* ===== ABSOLUTE LAST MOBILE NAV CLICK FIX ===== */
@media (max-width:768px){
  .nav {
    z-index:10000 !important;
  }
  .nav-toggle {
    position:relative !important;
    z-index:10002 !important;
  }
  .mobile-menu {
    z-index:9998 !important;
  }
}

/* ===== CLEAN MOBILE RESET: STABLE APP-LIKE HERO ===== */
@media (max-width:768px){
  .nav {
    z-index:10000 !important;
  }
  .nav-toggle {
    position:relative !important;
    z-index:10002 !important;
  }
  .mobile-menu {
    z-index:9998 !important;
  }
  body.menu-open {
    overflow:hidden !important;
  }

  #hero.hero {
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 0 18px !important;
    padding:84px 0 24px !important;
    overflow:visible !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    height:300px !important;
    min-height:0 !important;
    margin:0 12px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    z-index:1 !important;
    box-shadow:0 24px 58px rgba(31,67,104,.2) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,.02) 0%,rgba(2,6,23,.2) 45%,rgba(2,6,23,.86) 100%) !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    width:100% !important;
    padding:16px 12px 0 !important;
    margin:0 !important;
    align-items:initial !important;
    justify-content:initial !important;
    transform:none !important;
  }
  #hero .hero-search-content {
    position:static !important;
    display:block !important;
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
    transform:none !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    top:-150px !important;
    left:18px !important;
    right:18px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(29px,7.8vw,38px) !important;
    line-height:1.04 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 26px rgba(0,0,0,.52) !important;
    z-index:3 !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    top:-63px !important;
    left:18px !important;
    right:18px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.86) !important;
    font-size:12px !important;
    line-height:1.42 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.5) !important;
    z-index:3 !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:none !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 10px !important;
    padding:10px !important;
    gap:8px !important;
    border:1px solid rgba(226,236,248,.95) !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.98) !important;
    box-shadow:0 18px 42px rgba(31,67,104,.14) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .hero-search-field {
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:16px !important;
    background:#f8fbff !important;
    border:1px solid #e9f1fb !important;
    color:#0f172a !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:44px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 26px rgba(15,23,42,.18) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    gap:8px !important;
    margin:0 0 10px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    width:100% !important;
    gap:8px !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    padding:7px 4px !important;
    border-radius:16px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 10px 22px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val {
    font-size:16px !important;
    line-height:1 !important;
  }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:7px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero {
    padding-top:78px !important;
  }
  #hero .hero-carousel-wrap {
    height:276px !important;
    margin:0 10px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid {
    padding:14px 10px 0 !important;
  }
  #hero .hero-search-content .hero-title {
    top:-140px !important;
    left:16px !important;
    right:16px !important;
    max-width:300px !important;
    font-size:clamp(27px,7.8vw,34px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-58px !important;
    left:16px !important;
    right:16px !important;
    max-width:290px !important;
    font-size:11px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:7px !important;
    border-radius:22px !important;
  }
  #hero .hero-search-field {
    min-height:42px !important;
    padding:7px 9px !important;
  }
  #hero .hero-search-submit {
    height:41px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:39px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:43px !important;
  }
}

/* ===== FINAL MOBILE FIRST FOLD: OVERLAY COPY, NO WASTED GAP ===== */
@media (max-width:768px){
  #hero.hero {
    height:100svh !important;
    min-height:640px !important;
    max-height:860px !important;
    margin:0 0 18px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:absolute !important;
    inset:80px 14px auto 14px !important;
    height:250px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    box-shadow:0 24px 58px rgba(31,67,104,.22) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.1) 42%,rgba(2,6,23,.82) 100%) !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
    height:100svh !important;
    min-height:640px !important;
    max-height:860px !important;
    padding:0 14px 13px !important;
  }
  #hero .hero-search-content {
    position:static !important;
    width:min(430px,100%) !important;
    max-width:430px !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:247px !important;
    width:auto !important;
    max-width:310px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(25px,7.2vw,34px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.5) !important;
    z-index:3 !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:319px !important;
    width:auto !important;
    max-width:300px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.84) !important;
    font-size:11px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.46) !important;
    z-index:3 !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:7px !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 8px !important;
    padding:9px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.98) !important;
    border:1px solid rgba(226,236,248,.92) !important;
    box-shadow:0 18px 42px rgba(31,67,104,.15) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .hero-search-field {
    min-height:43px !important;
    padding:7px 10px !important;
    border-radius:15px !important;
    background:#f7fbff !important;
    border:1px solid #e9f1fb !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:42px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 26px rgba(15,23,42,.2) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    margin:0 0 8px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:40px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
    width:100% !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:44px !important;
    padding:6px 4px !important;
    border-radius:15px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 10px 22px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val {
    font-size:15px !important;
    line-height:1 !important;
  }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:6.5px !important;
    line-height:1.08 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero,
  #hero .hero-search-grid {
    min-height:620px !important;
  }
  #hero .hero-carousel-wrap {
    inset:76px 10px auto 10px !important;
    height:236px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid {
    padding:0 10px 10px !important;
  }
  #hero .hero-search-content .hero-title {
    top:238px !important;
    left:22px !important;
    right:22px !important;
    max-width:285px !important;
    font-size:clamp(24px,7.4vw,31px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:303px !important;
    left:22px !important;
    right:22px !important;
    max-width:280px !important;
    font-size:10.5px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:6px !important;
  }
  #hero .hero-search-field {
    min-height:40px !important;
    padding:6px 8px !important;
  }
  #hero .hero-search-submit {
    height:40px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:38px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:40px !important;
  }
}

/* ===== FINAL MOBILE HERO REORGANIZE: TEXT OVERLAY + FIT FIRST VIEW ===== */
@media (max-width:768px){
  #hero.hero {
    height:100svh !important;
    min-height:720px !important;
    max-height:none !important;
    margin-bottom:10px !important;
  }
  #hero .hero-carousel-wrap {
    top:88px !important;
    left:14px !important;
    right:14px !important;
    height:246px !important;
    border-radius:26px !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.08) 42%,rgba(2,6,23,.82) 100%) !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    height:100svh !important;
    min-height:720px !important;
    padding:0 14px 14px !important;
    align-items:stretch !important;
  }
  #hero .hero-search-content {
    position:static !important;
    max-width:430px !important;
    height:100% !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    padding:0 !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:254px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(27px,7.7vw,38px) !important;
    line-height:1.02 !important;
    z-index:3 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.46) !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:337px !important;
    max-width:310px !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.82) !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
    z-index:3 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.45) !important;
  }
  #hero .hero-search-panel {
    grid-template-columns:1fr 1fr !important;
    margin:0 0 8px !important;
    padding:9px !important;
    gap:7px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-field {
    min-height:45px !important;
    padding:7px 10px !important;
    border-radius:15px !important;
  }
  #hero .hero-search-wide {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
    height:43px !important;
  }
  #hero .hero-centered-buttons {
    margin-bottom:8px !important;
    gap:8px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:40px !important;
    font-size:11.5px !important;
  }
  #hero .hero-centered-metrics {
    gap:7px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:42px !important;
    padding:5px !important;
    border-radius:14px !important;
  }
  #hero .hero-metric-val {
    font-size:15px !important;
    line-height:1 !important;
  }
  #hero .hero-metric-label {
    font-size:6.5px !important;
    line-height:1.1 !important;
  }
}

@media (max-width:390px){
  #hero.hero,
  #hero .hero-search-grid {
    min-height:690px !important;
  }
  #hero .hero-carousel-wrap {
    top:82px !important;
    height:236px !important;
  }
  #hero .hero-search-content .hero-title {
    top:244px !important;
    left:26px !important;
    right:26px !important;
    max-width:295px !important;
    font-size:clamp(25px,7.2vw,34px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:320px !important;
    left:26px !important;
    right:26px !important;
    max-width:280px !important;
    font-size:10.5px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:6px !important;
  }
  #hero .hero-search-field {
    min-height:41px !important;
  }
  #hero .hero-search-submit {
    height:40px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:38px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:39px !important;
  }
}

/* ===== COMPACT FULLY FUNCTIONAL MOBILE HERO ===== */
@media (max-width:768px){
  #hero.hero {
    height:100svh !important;
    min-height:680px !important;
    max-height:820px !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    inset:72px 16px auto 16px !important;
    height:250px !important;
    border-radius:28px !important;
    box-shadow:0 24px 64px rgba(31,67,104,.25) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,.04) 0%,rgba(2,6,23,.2) 48%,rgba(2,6,23,.78) 100%) !important;
  }
  #hero .hero-search-grid {
    height:100svh !important;
    min-height:680px !important;
    max-height:820px !important;
    padding:260px 16px 18px !important;
    align-items:start !important;
  }
  #hero .hero-search-content {
    max-width:420px !important;
    width:100% !important;
    margin:0 auto !important;
    text-align:left !important;
  }
  #hero .hero-search-content .hero-title {
    max-width:260px !important;
    color:#fff !important;
    font-size:clamp(24px,7.6vw,32px) !important;
    line-height:1.05 !important;
    margin:-112px 0 5px 14px !important;
    text-shadow:0 10px 24px rgba(0,0,0,.44) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:245px !important;
    color:rgba(255,255,255,.82) !important;
    font-size:11px !important;
    line-height:1.38 !important;
    margin:0 0 18px 14px !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 10px !important;
    padding:10px !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    border-radius:26px !important;
    background:rgba(255,255,255,.98) !important;
    box-shadow:0 20px 48px rgba(31,67,104,.16) !important;
  }
  #hero .hero-search-field {
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:16px !important;
    background:#f7fbff !important;
    border:1px solid #edf3fb !important;
  }
  #hero .hero-search-wide {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
    height:44px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 28px rgba(15,23,42,.22) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 10px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    display:flex !important;
    width:100% !important;
    height:42px !important;
    min-width:0 !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.1 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:8px !important;
    width:100% !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    padding:7px 5px !important;
    border-radius:16px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 12px 28px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val { font-size:16px !important; }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:7px !important;
    letter-spacing:.04em !important;
  }
  .carousel-dots {
    bottom:auto !important;
    top:300px !important;
  }
  .carousel-dot.active {
    background:#fff !important;
  }
}

@media (max-width:390px){
  #hero.hero,
  #hero .hero-search-grid {
    min-height:660px !important;
  }
  #hero .hero-carousel-wrap {
    height:230px !important;
    top:70px !important;
  }
  #hero .hero-search-grid {
    padding-top:244px !important;
  }
  #hero .hero-search-content .hero-title {
    margin-top:-100px !important;
    max-width:240px !important;
    font-size:clamp(22px,7.2vw,30px) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:230px !important;
    font-size:10.5px !important;
    margin-bottom:14px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:6px !important;
  }
  #hero .hero-search-field {
    min-height:42px !important;
    padding:6px 8px !important;
  }
  #hero .hero-search-submit {
    height:40px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:39px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:43px !important;
  }
  .carousel-dots {
    top:278px !important;
  }
}

/* ===== APPLE-STYLE TYPOGRAPHY SYSTEM ===== */
:root {
  --font-apple: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  --font-clash: var(--font-apple);
  --font-satoshi: var(--font-apple);
}

html,
body,
button,
input,
select,
textarea {
  font-family:var(--font-apple) !important;
  font-synthesis-weight:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

body {
  letter-spacing:0;
}

.section-title,
.hero-title,
.logo-title,
.mobile-link,
.prop-name,
.prop-price,
.prop-stat-val,
.stat-counter-val,
.footer-heading,
.hero-metric-val {
  font-family:var(--font-apple) !important;
  letter-spacing:0 !important;
}

.hero-title,
.section-title {
  font-weight:750 !important;
  line-height:1.03 !important;
}

.section-title {
  max-width:860px;
}

.hero-sub,
.section-subtitle,
.footer-brand-text,
.prop-location,
.prop-detail,
.footer-link,
.footer-contact-item,
.footer-address,
body {
  font-weight:400;
}

.nav-link,
.btn,
.hero-search-submit,
.city-btn,
.prop-badge,
.prop-invest-badge {
  font-weight:600 !important;
}

.section-label,
.hero-tag,
.hero-cities-label,
.hero-metric-label,
.prop-stat-lbl,
.prop-price-label,
.trust-item,
.logo-sub,
.stat-counter-label,
.hero-search-field span {
  letter-spacing:.04em !important;
  text-transform:none !important;
  font-weight:600 !important;
}

.section-label,
.hero-tag {
  font-size:13px !important;
}

.hero-search-field span,
.prop-stat-lbl,
.prop-price-label,
.hero-metric-label {
  font-size:10px;
}

.btn,
.hero-search-submit,
select,
input,
textarea {
  font-size:15px;
}

@media (max-width:768px){
  .hero-title,
  .section-title {
    font-weight:760 !important;
  }
  .section-label,
  .hero-tag {
    font-size:12px !important;
    letter-spacing:.02em !important;
  }
  .mobile-link {
    font-weight:650 !important;
  }
  .btn,
  .hero-search-submit,
  select,
  input,
  textarea {
    font-size:14px;
  }
}

/* ===== MOBILE HERO CLEAN VIEW: KEEP TEXT READABLE, HIDE DOTS ===== */
@media (max-width:768px){
  #hero .hero-kicker,
  #hero .hero-search-content .hero-title,
  #hero .hero-search-content .hero-sub {
    display:block !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow {
    display:none !important;
  }
  #hero .hero-search-content .hero-title {
    width:max-content !important;
    max-width:min(280px,88vw) !important;
    margin:-108px 0 7px 10px !important;
    padding:10px 12px 8px !important;
    border-radius:18px !important;
    background:rgba(4,10,22,.58) !important;
    color:#fff !important;
    font-size:clamp(24px,7vw,34px) !important;
    line-height:1.03 !important;
    letter-spacing:0 !important;
    text-shadow:0 8px 20px rgba(0,0,0,.4) !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:min(286px,88vw) !important;
    margin:0 0 14px 10px !important;
    padding:8px 11px !important;
    border-radius:15px !important;
    background:rgba(4,10,22,.42) !important;
    color:rgba(255,255,255,.88) !important;
    font-size:11.5px !important;
    line-height:1.4 !important;
    backdrop-filter:blur(12px) !important;
    -webkit-backdrop-filter:blur(12px) !important;
  }
  #hero .hero-search-grid {
    padding-top:318px !important;
  }
  #hero .hero-search-panel {
    margin-top:0 !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-grid {
    padding-top:288px !important;
  }
  #hero .hero-search-content .hero-title {
    max-width:min(250px,86vw) !important;
    margin-top:-98px !important;
    font-size:clamp(22px,6.8vw,30px) !important;
  }
  #hero .hero-search-content .hero-sub {
    max-width:min(255px,86vw) !important;
    font-size:10.5px !important;
    margin-bottom:12px !important;
  }
}

/* ===== FINAL MOBILE SPACING POLISH ===== */
@media (max-width:768px){
  #hero.hero {
    margin-bottom:18px !important;
  }
  #hero .hero-carousel-wrap {
    top:90px !important;
  }
  #hero .hero-search-grid {
    padding-top:336px !important;
    padding-bottom:30px !important;
  }
  .section {
    padding-top:54px !important;
    padding-bottom:54px !important;
  }
  #about.section,
  .trust-bar + .section {
    padding-top:62px !important;
  }
  .trust-bar {
    padding:18px 0 !important;
  }
}

@media (max-width:390px){
  #hero .hero-carousel-wrap {
    top:84px !important;
  }
  #hero .hero-search-grid {
    padding-top:306px !important;
    padding-bottom:26px !important;
  }
  .section {
    padding-top:48px !important;
    padding-bottom:48px !important;
  }
}

/* ===== TRUE FINAL MOBILE HERO: OVERLAY COPY + FIRST-VIEW FIT ===== */
@media (max-width:768px){
  #hero.hero {
    height:100svh !important;
    min-height:640px !important;
    max-height:860px !important;
    margin:0 0 18px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:absolute !important;
    inset:80px 14px auto 14px !important;
    height:250px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    box-shadow:0 24px 58px rgba(31,67,104,.22) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.1) 42%,rgba(2,6,23,.82) 100%) !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
    height:100svh !important;
    min-height:640px !important;
    max-height:860px !important;
    padding:0 14px 13px !important;
  }
  #hero .hero-search-content {
    position:static !important;
    width:min(430px,100%) !important;
    max-width:430px !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:247px !important;
    width:auto !important;
    max-width:310px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(25px,7.2vw,34px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.5) !important;
    z-index:3 !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    top:319px !important;
    width:auto !important;
    max-width:300px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.84) !important;
    font-size:11px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.46) !important;
    z-index:3 !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:7px !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 8px !important;
    padding:9px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.98) !important;
    border:1px solid rgba(226,236,248,.92) !important;
    box-shadow:0 18px 42px rgba(31,67,104,.15) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .hero-search-field {
    min-height:43px !important;
    padding:7px 10px !important;
    border-radius:15px !important;
    background:#f7fbff !important;
    border:1px solid #e9f1fb !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:42px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 26px rgba(15,23,42,.2) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    margin:0 0 8px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:40px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
    width:100% !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:44px !important;
    padding:6px 4px !important;
    border-radius:15px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 10px 22px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val {
    font-size:15px !important;
    line-height:1 !important;
  }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:6.5px !important;
    line-height:1.08 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero,
  #hero .hero-search-grid {
    min-height:620px !important;
  }
  #hero .hero-carousel-wrap {
    inset:76px 10px auto 10px !important;
    height:236px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid {
    padding:0 10px 10px !important;
  }
  #hero .hero-search-content .hero-title {
    top:238px !important;
    left:22px !important;
    right:22px !important;
    max-width:285px !important;
    font-size:clamp(24px,7.4vw,31px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:303px !important;
    left:22px !important;
    right:22px !important;
    max-width:280px !important;
    font-size:10.5px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:6px !important;
  }
  #hero .hero-search-field {
    min-height:40px !important;
    padding:6px 8px !important;
  }
  #hero .hero-search-submit {
    height:40px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:38px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:40px !important;
  }
}

/* ===== TRUE FINAL GAP FIX: SEARCH STACK DIRECTLY BELOW BANNER ===== */
@media (max-width:768px){
  #hero .hero-search-content {
    display:block !important;
    flex-direction:initial !important;
    justify-content:initial !important;
    height:auto !important;
    padding-top:clamp(390px,49svh,418px) !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-content {
    padding-top:clamp(374px,48svh,398px) !important;
  }
  #hero .hero-search-panel {
    margin-bottom:7px !important;
  }
  #hero .hero-centered-buttons {
    margin-bottom:7px !important;
  }
}

/* ===== ABSOLUTE LAST MOBILE BALANCE ===== */
@media (max-width:768px){
  #hero .hero-search-content {
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    height:100% !important;
    padding-top:0 !important;
  }
  #hero .hero-search-content .hero-title {
    top:170px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:248px !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:translateY(clamp(-56px,-5.5svh,-34px)) !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-content .hero-title {
    top:162px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:232px !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:translateY(-42px) !important;
  }
}

/* ===== EOF CLEAN MOBILE HERO RESET ===== */
@media (max-width:768px){
  .nav { z-index:10000 !important; }
  .nav-toggle { position:relative !important; z-index:10002 !important; }
  .mobile-menu { z-index:9998 !important; }
  #hero.hero {
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 0 18px !important;
    padding:84px 0 24px !important;
    overflow:visible !important;
    background:linear-gradient(180deg,#eef6ff 0%,#dcecff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    height:300px !important;
    min-height:0 !important;
    margin:0 12px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    z-index:1 !important;
    box-shadow:0 24px 58px rgba(31,67,104,.2) !important;
  }
  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,.02) 0%,rgba(2,6,23,.2) 45%,rgba(2,6,23,.86) 100%) !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:relative !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    width:100% !important;
    padding:16px 12px 0 !important;
    margin:0 !important;
    align-items:initial !important;
    justify-content:initial !important;
    transform:none !important;
  }
  #hero .hero-search-content {
    position:static !important;
    display:block !important;
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
    transform:none !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    top:-150px !important;
    left:18px !important;
    right:18px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(29px,7.8vw,38px) !important;
    line-height:1.04 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 26px rgba(0,0,0,.52) !important;
    z-index:3 !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    top:-63px !important;
    left:18px !important;
    right:18px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.86) !important;
    font-size:12px !important;
    line-height:1.42 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.5) !important;
    z-index:3 !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:none !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 10px !important;
    padding:10px !important;
    gap:8px !important;
    border:1px solid rgba(226,236,248,.95) !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.98) !important;
    box-shadow:0 18px 42px rgba(31,67,104,.14) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .hero-search-field {
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:16px !important;
    background:#f8fbff !important;
    border:1px solid #e9f1fb !important;
    color:#0f172a !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:44px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:0 12px 26px rgba(15,23,42,.18) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    gap:8px !important;
    margin:0 0 10px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:none !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid #e5edf7 !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    width:100% !important;
    gap:8px !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    padding:7px 4px !important;
    border-radius:16px !important;
    background:#fff !important;
    border:1px solid #e8f1fb !important;
    box-shadow:0 10px 22px rgba(31,67,104,.08) !important;
  }
  #hero .hero-metric-val { font-size:16px !important; line-height:1 !important; }
  #hero .hero-metric-label {
    color:#64748b !important;
    font-size:7px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero { padding-top:78px !important; }
  #hero .hero-carousel-wrap {
    height:276px !important;
    margin:0 10px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid { padding:14px 10px 0 !important; }
  #hero .hero-search-content .hero-title {
    top:-140px !important;
    left:16px !important;
    right:16px !important;
    max-width:300px !important;
    font-size:clamp(27px,7.8vw,34px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-58px !important;
    left:16px !important;
    right:16px !important;
    max-width:290px !important;
    font-size:11px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:7px !important;
    border-radius:22px !important;
  }
  #hero .hero-search-field {
    min-height:42px !important;
    padding:7px 9px !important;
  }
  #hero .hero-search-submit { height:41px !important; }
  #hero .hero-centered-buttons .btn {
    height:39px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric { min-height:43px !important; }
}

/* ===== EOF STRUCTURE FIX: HERO MUST STACK ON MOBILE ===== */
@media (max-width:768px){
  #hero.hero {
    display:block !important;
  }
}

/* ===== EOF CRISP HERO IMAGE LOCK ===== */
#hero .hero-carousel-wrap,
#hero .hero-slide {
  filter:none !important;
  -webkit-filter:none !important;
}

#hero .hero-slide {
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  transform:none !important;
  transition:opacity .45s ease !important;
  will-change:opacity !important;
  image-rendering:auto !important;
  backface-visibility:hidden !important;
}

#hero .hero-slide.active {
  opacity:1 !important;
  transform:none !important;
}

#hero .hero-carousel-overlay {
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (max-width:768px){
  #hero .hero-carousel-wrap {
    display:block !important;
    transform:none !important;
    background:#e8f2ff !important;
  }
  #hero .hero-slide {
    background-position:center center !important;
  }
  #hero .hero-carousel-overlay {
    background:
      linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.08) 42%,rgba(2,6,23,.82) 100%) !important;
  }
}

/* ===== EOF ADCON TITLE COLOR + TIGHT SUBHEADING GAP ===== */
#hero .hero-search-content .hero-title {
  color:#0b315f !important;
  margin-bottom:8px !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.35),
    0 10px 26px rgba(0,0,0,.38) !important;
}

#hero .hero-search-content .hero-title .text-gradient-gold {
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:#d4a13a !important;
  color:#d4a13a !important;
}

#hero .hero-search-content .hero-sub {
  margin-top:0 !important;
}

@media (max-width:768px){
  #hero .hero-search-grid {
    padding-top:42px !important;
  }
  #hero .hero-search-content .hero-title {
    top:-170px !important;
    color:#8fcaff !important;
    margin-bottom:0 !important;
    text-shadow:
      0 2px 0 rgba(6,18,42,.7),
      0 10px 24px rgba(0,0,0,.48) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-43px !important;
  }
  #hero .hero-search-panel {
    margin-top:40px !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-grid {
    padding-top:38px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-34px !important;
  }
  #hero .hero-search-panel {
    margin-top:40px !important;
  }
}

/* ===== FINAL AUTHORITATIVE MOBILE GLASS HERO ===== */
@media (max-width:768px){
  #hero.hero {
    position:relative !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding:80px 0 24px !important;
    margin:0 0 18px !important;
    overflow:visible !important;
    background:
      radial-gradient(circle at 18% 8%,rgba(255,255,255,.92),rgba(255,255,255,0) 32%),
      linear-gradient(180deg,#eaf5ff 0%,#d7eaff 100%) !important;
  }
  #hero .hero-carousel-wrap {
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    display:block !important;
    width:auto !important;
    height:344px !important;
    min-height:0 !important;
    margin:0 12px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    transform:none !important;
    filter:none !important;
    -webkit-filter:none !important;
    z-index:1 !important;
    box-shadow:0 24px 58px rgba(31,67,104,.18) !important;
  }
  #hero .hero-slide {
    filter:none !important;
    -webkit-filter:none !important;
    transform:none !important;
    background-size:cover !important;
    background-position:center center !important;
  }
  #hero .hero-carousel-overlay {
    background:
      linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.06) 38%,rgba(2,6,23,.58) 100%) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  #hero .carousel-dots,
  #hero .carousel-arrow,
  #hero .hero-kicker {
    display:none !important;
  }
  #hero .hero-search-grid {
    position:static !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    width:100% !important;
    margin:0 !important;
    padding:16px 12px 0 !important;
    transform:none !important;
  }
  #hero .hero-search-content {
    position:static !important;
    display:block !important;
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
    transform:none !important;
  }
  #hero .hero-search-content .hero-title {
    position:absolute !important;
    top:238px !important;
    left:26px !important;
    right:26px !important;
    width:max-content !important;
    max-width:calc(100% - 52px) !important;
    margin:0 !important;
    padding:12px 14px 10px !important;
    border-radius:20px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.34),rgba(255,255,255,.16)) !important;
    border:1px solid rgba(255,255,255,.46) !important;
    box-shadow:0 16px 38px rgba(2,6,23,.18), inset 0 1px 0 rgba(255,255,255,.44) !important;
    backdrop-filter:blur(18px) saturate(1.28) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.28) !important;
    color:#123b6d !important;
    font-size:clamp(29px,7.8vw,35px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-shadow:0 1px 0 rgba(255,255,255,.45), 0 12px 28px rgba(0,0,0,.18) !important;
    z-index:4 !important;
  }
  #hero .hero-search-content .hero-title .text-gradient-gold {
    background:none !important;
    -webkit-background-clip:initial !important;
    background-clip:initial !important;
    -webkit-text-fill-color:#d4a13a !important;
    color:#d4a13a !important;
    text-shadow:0 1px 0 rgba(255,255,255,.42), 0 10px 24px rgba(0,0,0,.22) !important;
  }
  #hero .hero-search-content .hero-sub {
    position:absolute !important;
    top:342px !important;
    left:26px !important;
    right:26px !important;
    width:auto !important;
    max-width:calc(100% - 52px) !important;
    margin:0 !important;
    padding:9px 12px !important;
    border-radius:16px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.26),rgba(255,255,255,.12)) !important;
    border:1px solid rgba(255,255,255,.38) !important;
    box-shadow:0 12px 28px rgba(2,6,23,.14), inset 0 1px 0 rgba(255,255,255,.36) !important;
    backdrop-filter:blur(16px) saturate(1.2) !important;
    -webkit-backdrop-filter:blur(16px) saturate(1.2) !important;
    color:rgba(255,255,255,.92) !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.35) !important;
    z-index:4 !important;
  }
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:none !important;
  }
  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 10px !important;
    padding:10px !important;
    gap:8px !important;
    border-radius:26px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.58),rgba(255,255,255,.28)) !important;
    border:1px solid rgba(255,255,255,.64) !important;
    box-shadow:0 22px 48px rgba(31,67,104,.16), inset 0 1px 0 rgba(255,255,255,.58) !important;
    backdrop-filter:blur(22px) saturate(1.35) !important;
    -webkit-backdrop-filter:blur(22px) saturate(1.35) !important;
  }
  #hero .hero-search-field {
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.38) !important;
    border:1px solid rgba(255,255,255,.56) !important;
    color:#0f172a !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.5) !important;
  }
  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }
  #hero .hero-search-submit {
    height:44px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#0d2d55,#10223e) !important;
    color:#fff !important;
    box-shadow:0 14px 30px rgba(13,45,85,.25) !important;
  }
  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    gap:8px !important;
    margin:0 0 10px !important;
  }
  #hero .hero-centered-buttons .btn,
  #hero .hero-centered-buttons .btn-primary,
  #hero .hero-centered-buttons .btn-ghost-light {
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-shadow:0 14px 30px rgba(31,67,104,.12) !important;
  }
  #hero .hero-centered-buttons .btn-primary {
    background:linear-gradient(135deg,#0d2d55,#10223e) !important;
    color:#fff !important;
  }
  #hero .hero-centered-buttons .btn-ghost-light {
    background:rgba(255,255,255,.52) !important;
    color:#0d2d55 !important;
    border:1px solid rgba(255,255,255,.64) !important;
    backdrop-filter:blur(18px) saturate(1.28) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.28) !important;
  }
  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    width:100% !important;
    gap:8px !important;
    margin:0 !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    padding:7px 4px !important;
    border-radius:17px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.56),rgba(255,255,255,.3)) !important;
    border:1px solid rgba(255,255,255,.62) !important;
    box-shadow:0 14px 32px rgba(31,67,104,.1), inset 0 1px 0 rgba(255,255,255,.5) !important;
    backdrop-filter:blur(18px) saturate(1.28) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.28) !important;
  }
  #hero .hero-metric-val {
    font-size:16px !important;
    line-height:1 !important;
    color:#1f6fb8 !important;
    -webkit-text-fill-color:#1f6fb8 !important;
  }
  #hero .hero-metric-label {
    color:#5d6d80 !important;
    font-size:7px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
  }
}

@media (max-width:390px){
  #hero.hero {
    padding-top:76px !important;
  }
  #hero .hero-carousel-wrap {
    height:330px !important;
    margin:0 10px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-grid {
    padding:14px 10px 0 !important;
  }
  #hero .hero-search-content .hero-title {
    top:224px !important;
    left:22px !important;
    right:22px !important;
    max-width:calc(100% - 44px) !important;
    font-size:clamp(27px,7.7vw,33px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:326px !important;
    left:22px !important;
    right:22px !important;
    max-width:calc(100% - 44px) !important;
    font-size:10.8px !important;
  }
  #hero .hero-search-panel {
    padding:8px !important;
    gap:7px !important;
    border-radius:24px !important;
  }
  #hero .hero-search-field {
    min-height:42px !important;
    padding:7px 9px !important;
  }
  #hero .hero-search-submit {
    height:41px !important;
  }
  #hero .hero-centered-buttons .btn {
    height:39px !important;
    font-size:11px !important;
  }
  #hero .hero-centered-metrics .hero-metric {
    min-height:43px !important;
  }
}

/* ===== FINAL POSITIONING FIX: TEXT RELATIVE TO HERO IMAGE, NOT SEARCH GRID ===== */
@media (max-width:768px){
  #hero .container.hero-grid.hero-search-grid {
    position:static !important;
  }
}

/* ===== FINAL DETERMINISTIC MOBILE OVERLAY OFFSETS ===== */
@media (max-width:768px){
  #hero .hero-search-content .hero-title {
    top:-202px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-76px !important;
  }
}

@media (max-width:390px){
  #hero .hero-search-content .hero-title {
    top:-202px !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-76px !important;
  }
}

/* ===== VISIBLE HERO IMAGE COPY: SOURCE OF TRUTH ===== */
.hero-image-copy {
  display:none;
}

@media (max-width:768px){
  #hero .hero-search-content > .hero-title,
  #hero .hero-search-content > .hero-sub,
  #hero .hero-search-content > .hero-overlay-cta {
    display:none !important;
  }
  #hero .hero-carousel-wrap {
    position:relative !important;
    overflow:hidden !important;
  }
  #hero .hero-image-copy {
    position:absolute !important;
    left:14px !important;
    right:14px !important;
    bottom:14px !important;
    z-index:5 !important;
    display:block !important;
    padding:14px !important;
    border-radius:22px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.48),rgba(255,255,255,.2)) !important;
    border:1px solid rgba(255,255,255,.58) !important;
    box-shadow:0 18px 44px rgba(2,6,23,.22), inset 0 1px 0 rgba(255,255,255,.5) !important;
    backdrop-filter:blur(20px) saturate(1.35) !important;
    -webkit-backdrop-filter:blur(20px) saturate(1.35) !important;
  }
  #hero .hero-image-copy h1 {
    margin:0 0 8px !important;
    font-family:var(--font-apple) !important;
    font-size:clamp(28px,7.6vw,35px) !important;
    font-weight:780 !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    color:#123b6d !important;
    text-shadow:0 1px 0 rgba(255,255,255,.45), 0 12px 28px rgba(0,0,0,.18) !important;
  }
  #hero .hero-image-copy h1 span {
    color:#d4a13a !important;
    -webkit-text-fill-color:#d4a13a !important;
  }
  #hero .hero-image-copy p {
    margin:0 0 12px !important;
    max-width:310px !important;
    color:rgba(255,255,255,.95) !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.36) !important;
  }
  #hero .hero-image-copy a {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:36px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#0d2d55,#123b6d) !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:760 !important;
    text-decoration:none !important;
    box-shadow:0 14px 30px rgba(13,45,85,.32) !important;
  }
}

@media (max-width:390px){
  #hero .hero-image-copy {
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    padding:13px !important;
    border-radius:20px !important;
  }
  #hero .hero-image-copy h1 {
    font-size:clamp(27px,7.4vw,32px) !important;
  }
  #hero .hero-image-copy p {
    font-size:10.8px !important;
  }
  #hero .hero-image-copy a {
    height:34px !important;
  }
}

/* ===== FINAL HERO OVERLAY COPY + CTA LOCK ===== */
.hero-overlay-cta {
  display:none;
}

@media (min-width:769px){
  #hero .hero-search-content .hero-title {
    color:#fff !important;
  }
  #hero .hero-search-content .hero-title .text-gradient-gold {
    background:linear-gradient(135deg,#f4c15d,#d4a13a) !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    color:#d4a13a !important;
  }
}

@media (max-width:768px){
  #hero .hero-carousel-wrap {
    height:370px !important;
  }
  #hero .hero-search-content .hero-title {
    top:-222px !important;
    left:26px !important;
    right:26px !important;
    width:auto !important;
    max-width:calc(100% - 52px) !important;
    padding:12px 14px 10px !important;
    border-radius:20px 20px 14px 14px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.44),rgba(255,255,255,.18)) !important;
    border:1px solid rgba(255,255,255,.5) !important;
    border-bottom:0 !important;
    box-shadow:0 16px 38px rgba(2,6,23,.18), inset 0 1px 0 rgba(255,255,255,.48) !important;
    backdrop-filter:blur(18px) saturate(1.3) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.3) !important;
    color:#123b6d !important;
    font-size:clamp(28px,7.4vw,34px) !important;
    line-height:1.02 !important;
    z-index:5 !important;
  }
  #hero .hero-search-content .hero-title .text-gradient-gold {
    background:none !important;
    -webkit-background-clip:initial !important;
    background-clip:initial !important;
    -webkit-text-fill-color:#d4a13a !important;
    color:#d4a13a !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-127px !important;
    left:26px !important;
    right:26px !important;
    max-width:calc(100% - 52px) !important;
    padding:0 14px 10px !important;
    border-radius:0 !important;
    background:linear-gradient(135deg,rgba(255,255,255,.44),rgba(255,255,255,.18)) !important;
    border:1px solid rgba(255,255,255,.5) !important;
    border-top:0 !important;
    border-bottom:0 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18) !important;
    backdrop-filter:blur(18px) saturate(1.3) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.3) !important;
    color:#f8fbff !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
    z-index:5 !important;
  }
  #hero .hero-overlay-cta {
    position:absolute !important;
    top:-74px !important;
    left:26px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:36px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#0d2d55,#123b6d) !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:750 !important;
    text-decoration:none !important;
    box-shadow:0 14px 30px rgba(13,45,85,.32) !important;
    z-index:6 !important;
  }
  #hero .hero-search-panel {
    margin-top:16px !important;
  }
}

@media (max-width:390px){
  #hero .hero-carousel-wrap {
    height:360px !important;
  }
  #hero .hero-search-content .hero-title {
    top:-214px !important;
    left:22px !important;
    right:22px !important;
    max-width:calc(100% - 44px) !important;
    font-size:clamp(27px,7.2vw,32px) !important;
  }
  #hero .hero-search-content .hero-sub {
    top:-122px !important;
    left:22px !important;
    right:22px !important;
    max-width:calc(100% - 44px) !important;
    font-size:10.8px !important;
  }
  #hero .hero-overlay-cta {
    top:-70px !important;
    left:22px !important;
    height:34px !important;
  }
}

/* ===== FINAL REFERENCE MOBILE HERO: CLEAN TEXT + PROPER SPACING ===== */
@media (max-width:768px){
  #hero.hero {
    position:relative !important;
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding:78px 0 24px !important;
    margin:0 !important;
    overflow:visible !important;
    background:linear-gradient(180deg,#eef7ff 0%,#dcecff 100%) !important;
  }

  #hero .hero-carousel-wrap {
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    display:block !important;
    width:auto !important;
    height:300px !important;
    min-height:0 !important;
    margin:0 12px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    transform:none !important;
    filter:none !important;
    z-index:1 !important;
    box-shadow:0 22px 52px rgba(31,67,104,.16) !important;
  }

  #hero .hero-slide {
    background-size:cover !important;
    background-position:center center !important;
    transform:none !important;
    filter:none !important;
  }

  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.12) 46%,rgba(2,6,23,.88) 100%) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  #hero .hero-image-copy,
  #hero .hero-overlay-cta,
  #hero .hero-kicker,
  #hero .carousel-arrow,
  #hero .carousel-dots {
    display:none !important;
  }

  #hero .container.hero-grid.hero-search-grid,
  #hero .hero-search-grid {
    position:static !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:16px 12px 0 !important;
    transform:none !important;
  }

  #hero .hero-search-content {
    position:static !important;
    display:block !important;
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:left !important;
    transform:none !important;
  }

  #hero .hero-search-content > .hero-title {
    position:absolute !important;
    display:block !important;
    left:30px !important;
    right:30px !important;
    top:220px !important;
    width:auto !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:#fff !important;
    font-size:clamp(30px,8.4vw,40px) !important;
    font-weight:820 !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.48) !important;
    z-index:5 !important;
  }

  #hero .hero-search-content > .hero-title .text-gradient-gold {
    background:none !important;
    -webkit-background-clip:initial !important;
    background-clip:initial !important;
    -webkit-text-fill-color:#ff9800 !important;
    color:#ff9800 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.45) !important;
  }

  #hero .hero-search-content > .hero-sub {
    position:absolute !important;
    display:block !important;
    left:30px !important;
    right:30px !important;
    top:348px !important;
    width:auto !important;
    max-width:320px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    color:rgba(255,255,255,.9) !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.5) !important;
    z-index:5 !important;
  }

  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    transform:none !important;
  }

  #hero .hero-search-panel {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 10px !important;
    padding:10px !important;
    gap:8px !important;
    border-radius:26px !important;
    background:rgba(255,255,255,.82) !important;
    border:1px solid rgba(255,255,255,.9) !important;
    box-shadow:0 20px 44px rgba(31,67,104,.14), inset 0 1px 0 rgba(255,255,255,.75) !important;
    backdrop-filter:blur(18px) saturate(1.24) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.24) !important;
  }

  #hero .hero-search-field {
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.5) !important;
    border:1px solid rgba(219,231,245,.95) !important;
    color:#0f172a !important;
  }

  #hero .hero-search-wide,
  #hero .hero-search-submit {
    grid-column:1 / -1 !important;
  }

  #hero .hero-search-submit {
    height:44px !important;
    border-radius:999px !important;
    background:#0f172a !important;
    color:#fff !important;
    box-shadow:none !important;
  }

  #hero .hero-centered-buttons {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:8px !important;
    width:100% !important;
    margin:0 0 10px !important;
  }

  #hero .hero-centered-buttons .btn {
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    overflow:hidden !important;
    box-shadow:none !important;
  }

  #hero .hero-centered-buttons .btn-primary {
    background:#0f172a !important;
    color:#fff !important;
  }

  #hero .hero-centered-buttons .btn-ghost-light {
    background:rgba(255,255,255,.86) !important;
    color:#0f172a !important;
    border:1px solid rgba(255,255,255,.95) !important;
  }

  #hero .hero-centered-metrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    width:100% !important;
    margin:0 !important;
  }

  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    padding:7px 4px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.88) !important;
    border:1px solid rgba(255,255,255,.95) !important;
    box-shadow:0 12px 26px rgba(31,67,104,.08) !important;
  }

  #hero .hero-metric-val {
    font-size:16px !important;
    line-height:1 !important;
    color:#1f6fb8 !important;
    -webkit-text-fill-color:#1f6fb8 !important;
  }

  #hero .hero-metric-label {
    color:#66788d !important;
    font-size:7px !important;
    line-height:1.1 !important;
    letter-spacing:0 !important;
  }
}

@media (max-width:390px){
  #hero.hero {
    padding-top:76px !important;
  }

  #hero .hero-carousel-wrap {
    height:300px !important;
    margin:0 10px !important;
    border-radius:24px !important;
  }

  #hero .container.hero-grid.hero-search-grid,
  #hero .hero-search-grid {
    padding:14px 10px 0 !important;
  }

  #hero .hero-search-content > .hero-title {
    left:28px !important;
    right:28px !important;
    top:214px !important;
    max-width:300px !important;
    font-size:clamp(28px,8.2vw,36px) !important;
  }

  #hero .hero-search-content > .hero-sub {
    left:28px !important;
    right:28px !important;
    top:338px !important;
    max-width:292px !important;
    font-size:10.8px !important;
  }

  #hero .hero-search-panel {
    padding:8px !important;
    gap:7px !important;
    border-radius:24px !important;
  }

  #hero .hero-search-field {
    min-height:42px !important;
    padding:7px 9px !important;
  }

  #hero .hero-search-submit {
    height:41px !important;
  }

  #hero .hero-centered-buttons .btn {
    height:39px !important;
    font-size:11px !important;
  }
}

/* ===== TRUE FINAL MOBILE REFERENCE HERO ===== */
@media (max-width:768px){
  #hero .hero-search-content > .hero-title,
  #hero .hero-search-content > .hero-sub,
  #hero .hero-search-content > .hero-overlay-cta {
    display:none !important;
  }

  #hero .hero-image-copy {
    position:absolute !important;
    left:18px !important;
    right:18px !important;
    bottom:22px !important;
    z-index:6 !important;
    display:block !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  #hero .hero-image-copy h1 {
    margin:0 0 6px !important;
    padding:0 !important;
    font-family:var(--font-apple) !important;
    max-width:315px !important;
    font-size:clamp(29px,8.1vw,38px) !important;
    font-weight:820 !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    color:#fff !important;
    text-shadow:0 10px 24px rgba(0,0,0,.58) !important;
  }

  #hero .hero-image-copy h1 span {
    display:block !important;
    color:#ff9800 !important;
    -webkit-text-fill-color:#ff9800 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.52) !important;
  }

  #hero .hero-image-copy p {
    margin:0 !important;
    padding:0 !important;
    max-width:315px !important;
    color:rgba(255,255,255,.9) !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
    text-shadow:0 8px 18px rgba(0,0,0,.58) !important;
  }

  #hero .hero-image-copy a {
    display:none !important;
  }
}

@media (max-width:390px){
  #hero .hero-image-copy {
    left:18px !important;
    right:18px !important;
    bottom:20px !important;
  }

  #hero .hero-image-copy h1 {
    max-width:292px !important;
    font-size:clamp(28px,8vw,36px) !important;
  }

  #hero .hero-image-copy p {
    max-width:292px !important;
    font-size:10.8px !important;
  }
}

/* ===== CLIENT MATCH MOBILE PREVIEW: SCREENSHOT-EXACT COMPACT HERO ===== */
@media (max-width:768px){
  body {
    background:#dcecff !important;
    overflow-x:hidden !important;
  }

  .nav {
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    padding:10px 0 0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .nav-inner {
    width:calc(100% - 34px) !important;
    max-width:360px !important;
    min-height:61px !important;
    margin:0 auto !important;
    padding:0 14px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.92) !important;
    border:1px solid rgba(255,255,255,.95) !important;
    box-shadow:0 12px 28px rgba(31,67,104,.10) !important;
    backdrop-filter:blur(18px) saturate(1.2) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.2) !important;
  }

  .nav .nav-logo,
  .nav .nav-logo img {
    max-width:136px !important;
    max-height:39px !important;
  }

  .nav-toggle {
    width:40px !important;
    height:40px !important;
    padding:9px !important;
    border-radius:14px !important;
    background:rgba(248,251,255,.72) !important;
    align-items:center !important;
    justify-content:center !important;
  }

  #hero.hero {
    padding-top:78px !important;
    padding-bottom:24px !important;
    background:linear-gradient(180deg,#eef7ff 0%,#dcecff 100%) !important;
  }

  #hero .hero-carousel-wrap,
  #hero .container.hero-grid.hero-search-grid {
    width:calc(100% - 34px) !important;
    max-width:360px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  #hero .hero-search-content,
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    width:100% !important;
    max-width:360px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  #hero .hero-carousel-wrap {
    height:283px !important;
    border-radius:22px !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    box-shadow:0 18px 44px rgba(31,67,104,.14) !important;
  }

  #hero .hero-slide {
    background-position:center center !important;
  }

  #hero .hero-carousel-overlay {
    background:linear-gradient(180deg,rgba(2,6,23,0) 0%,rgba(2,6,23,.08) 43%,rgba(2,6,23,.88) 100%) !important;
  }

  #hero .hero-image-copy {
    left:17px !important;
    right:17px !important;
    bottom:21px !important;
  }

  #hero .hero-image-copy h1 {
    max-width:310px !important;
    margin-bottom:7px !important;
    font-size:clamp(31px,8.35vw,36px) !important;
    line-height:.96 !important;
  }

  #hero .hero-image-copy p {
    max-width:300px !important;
    font-size:11.2px !important;
    line-height:1.28 !important;
  }

  #hero .container.hero-grid.hero-search-grid,
  #hero .hero-search-grid {
    padding:16px 0 0 !important;
  }

  #hero .hero-search-panel {
    margin-top:0 !important;
    margin-bottom:11px !important;
    padding:10px !important;
    gap:8px !important;
    border-radius:23px !important;
    box-shadow:0 18px 42px rgba(31,67,104,.13), inset 0 1px 0 rgba(255,255,255,.75) !important;
  }

  #hero .hero-search-field {
    min-height:50px !important;
    border-radius:15px !important;
  }

  #hero .hero-search-submit {
    height:42px !important;
  }

  #hero .hero-centered-buttons {
    gap:8px !important;
    margin-bottom:10px !important;
  }

  #hero .hero-centered-buttons .btn {
    height:40px !important;
    font-size:11.5px !important;
    font-weight:760 !important;
  }

  #hero .hero-centered-metrics {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
  }

  #hero .hero-centered-metrics .hero-metric {
    min-height:48px !important;
    border-radius:14px !important;
  }

  .whatsapp-fab {
    width:54px !important;
    height:54px !important;
    right:18px !important;
    bottom:18px !important;
  }
}

@media (max-width:390px){
  .nav-inner,
  #hero .hero-carousel-wrap,
  #hero .container.hero-grid.hero-search-grid {
    width:calc(100% - 32px) !important;
    max-width:none !important;
  }

  #hero .hero-search-content,
  #hero .hero-search-panel,
  #hero .hero-centered-buttons,
  #hero .hero-centered-metrics {
    width:100% !important;
    max-width:none !important;
  }

  #hero .hero-image-copy h1 {
    font-size:clamp(30px,8.25vw,35px) !important;
  }
}
