/* ==========================================================================
   VAREON REALTY — second-client visual system
   Same functional engine, intentionally distinct design language.
   ========================================================================== */
:root,[data-theme="light"]{
  --brand-gold:#17b6d6;--brand-gold-deep:#087c96;
  --bg:#f3f6f8;--bg-2:#e8eef2;--surface-rgb:255,255,255;--surface:#fff;
  --card:rgba(255,255,255,.96);--panel:rgba(255,255,255,.985);
  --text:#0e1720;--muted:#5b6874;--accent-rgb:23,182,214;--accent:#17b6d6;
  --accent-dark:#087c96;--accent-soft:#dff6fb;--on-accent:#041217;--gold:var(--accent-dark);
  --border:rgba(14,23,32,.13);--border-strong:rgba(14,23,32,.22);--border-soft:rgba(14,23,32,.06);
  --shadow-rgb:19,38,52;--shadow:0 30px 80px rgba(19,38,52,.13);--shadow-soft:0 14px 38px rgba(19,38,52,.08);
  --page-glow-1:rgba(23,182,214,.14);--page-glow-2:rgba(255,255,255,.92);--page-glow-3:rgba(8,124,150,.08);
  --field-bg:#fff;--field-placeholder:#78828c;
}
[data-theme="dark"]{
  --brand-gold:#42d7f4;--brand-gold-deep:#17b6d6;
  --bg:#0b1016;--bg-2:#070b10;--surface-rgb:16,23,31;--surface:#10171f;
  --card:rgba(16,23,31,.97);--panel:rgba(16,23,31,.99);--text:#f0f6fa;--muted:#a8b6c3;
  --accent-rgb:66,215,244;--accent:#42d7f4;--accent-dark:#17b6d6;--accent-soft:rgba(66,215,244,.12);
  --on-accent:#031014;--border:rgba(240,246,250,.14);--border-strong:rgba(240,246,250,.23);--border-soft:rgba(240,246,250,.07);
  --shadow-rgb:0,0,0;--shadow:0 30px 90px rgba(0,0,0,.50);--shadow-soft:0 16px 44px rgba(0,0,0,.34);
  --page-glow-1:rgba(66,215,244,.10);--page-glow-2:rgba(66,215,244,.025);--page-glow-3:rgba(0,0,0,.48);
  --field-bg:#0d151d;--field-placeholder:#788897;
}

body{background:linear-gradient(180deg,var(--bg),var(--bg-2));}
.page{width:min(1320px,calc(100% - 48px));}
.site-navbar{top:18px;}
.site-navbar .nav-inner,.nav-inner{
  min-height:72px;border-radius:18px!important;border:1px solid var(--border)!important;
  background:color-mix(in srgb,var(--panel) 90%,transparent)!important;
  box-shadow:0 12px 36px rgba(var(--shadow-rgb),.10)!important;padding:10px 12px 10px 16px!important;
}
.logo-mark{border-radius:14px!important;box-shadow:none!important;background:#0d1117!important;}
.logo-mark img{border-radius:14px!important;}
.nav-brand{font-family:"Geologica",sans-serif!important;font-weight:900!important;letter-spacing:.16em!important;font-size:16px!important;}
.nav-link,.nav-cta,.lang-btn{border-radius:10px!important;}
.nav-cta{background:var(--text)!important;color:var(--bg)!important;border-color:var(--text)!important;}
[data-theme="dark"] .nav-cta{background:var(--accent)!important;color:#031014!important;border-color:var(--accent)!important;}
.site-navbar .nav-link.active-page::after{display:none!important;}
.site-navbar .nav-link.active-page{background:var(--accent-soft)!important;color:var(--accent-dark)!important;}
.theme-toggle{border-radius:10px!important;box-shadow:none!important;}

.home-page .page>.hero{
  min-height:680px!important;margin-top:108px!important;position:relative;overflow:hidden;align-items:center!important;
  background:
    linear-gradient(110deg,rgba(5,13,18,.98) 0%,rgba(5,13,18,.92) 43%,rgba(5,13,18,.48) 72%,rgba(5,13,18,.78) 100%),
    radial-gradient(circle at 78% 34%,rgba(66,215,244,.40),transparent 18%),
    linear-gradient(135deg,#0b1016 0%,#102630 57%,#0c141b 100%)!important;
}
.home-page .page>.hero::before{
  content:"V";position:absolute;right:max(24px,calc((100vw - 1220px)/2));top:50%;transform:translateY(-53%);
  font-family:"Geologica",sans-serif;font-weight:900;font-size:clamp(280px,35vw,590px);line-height:.72;letter-spacing:-.12em;
  color:transparent;-webkit-text-stroke:1px rgba(126,230,249,.18);text-shadow:0 0 80px rgba(23,182,214,.12);pointer-events:none;
}
.home-page .page>.hero::after{
  content:"SELECTED / PROPERTY / COLLECTION";position:absolute;right:max(34px,calc((100vw - 1220px)/2));bottom:42px;
  color:rgba(255,255,255,.55);font:700 11px/1.2 "JetBrains Mono",monospace;letter-spacing:.20em;writing-mode:vertical-rl;
}
.hero-content{max-width:720px!important;position:relative;z-index:2;}
.hero .eyebrow{background:rgba(66,215,244,.10)!important;border:1px solid rgba(66,215,244,.38)!important;color:#7ee6f9!important;border-radius:8px!important;backdrop-filter:none!important;}
.hero h1{font-size:clamp(58px,7.6vw,112px)!important;line-height:.86!important;letter-spacing:-.065em!important;max-width:800px!important;}
.hero p{max-width:640px!important;color:rgba(255,255,255,.76)!important;font-size:clamp(16px,1.5vw,20px)!important;}
.hero-btn{border-radius:10px!important;min-height:52px!important;padding:0 22px!important;}
.hero-btn.primary{background:var(--accent)!important;color:#041217!important;box-shadow:0 14px 34px rgba(23,182,214,.25)!important;}
.hero-btn.secondary{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;}

.home-page .page>.stats{grid-template-columns:repeat(3,1fr)!important;gap:0!important;margin:0 0 110px!important;border-bottom:1px solid var(--border);}
.stat{border:0!important;border-top:1px solid var(--border)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:34px 22px!important;}
.stat+ .stat{border-left:1px solid var(--border)!important;}
.stat strong{font-family:"Geologica",sans-serif!important;font-size:clamp(38px,4vw,64px)!important;letter-spacing:-.06em!important;color:var(--text)!important;}
.stat span{font-family:"JetBrains Mono",monospace!important;font-size:11px!important;letter-spacing:.12em!important;text-transform:uppercase!important;}

.section-head{padding-top:16px!important;border-top:1px solid var(--border);}
.section-head h2,.services-head h2,.about-copy h2{font-family:"Geologica",sans-serif!important;letter-spacing:-.05em!important;}
.home-latest-label,.about-eyebrow,.services-eyebrow{color:var(--accent-dark)!important;}
.grid{gap:18px!important;}
.property-card,.card{border-radius:18px!important;border:1px solid var(--border)!important;box-shadow:none!important;background:var(--panel)!important;overflow:hidden!important;}
.property-card:hover,.card:hover{transform:translateY(-5px)!important;border-color:color-mix(in srgb,var(--accent) 55%,var(--border))!important;box-shadow:0 22px 55px rgba(var(--shadow-rgb),.12)!important;}
.image-wrap{border-radius:0!important;}
.badge,.featured-label,.modal-label{border-radius:7px!important;}
.price,.featured-price,.modal-price{color:var(--accent-dark)!important;font-family:"JetBrains Mono",monospace!important;}
.btn{border-radius:9px!important;}

.featured-card{border-radius:22px!important;border:1px solid var(--border)!important;box-shadow:none!important;overflow:hidden!important;background:var(--panel)!important;}
.featured-image{border-radius:0!important;}
.featured-content{padding:clamp(28px,4vw,52px)!important;}
.catalog-link-card,.section-cta-card{border-radius:16px!important;box-shadow:none!important;background:transparent!important;border:1px solid var(--border)!important;min-height:118px!important;}
.catalog-link-card .arrow,.section-cta-card .arrow{border-radius:10px!important;background:var(--accent)!important;color:#031014!important;}

.map-showcase{border:1px solid var(--border)!important;border-radius:20px!important;box-shadow:none!important;overflow:hidden!important;background:var(--panel)!important;}
#propertiesMap{filter:saturate(.65) contrast(1.04);}
.home-map-toolbar{border-bottom:1px solid var(--border)!important;background:var(--panel)!important;}
.home-map-reset{border-radius:9px!important;}

.page-hero{margin-top:138px!important;border-bottom:0!important;padding-bottom:78px!important;position:relative!important;}
.page-hero::before{content:"";position:absolute;left:0;top:30px;width:62px;height:5px;border-radius:999px;background:var(--accent);}
.page-hero .eyebrow{margin-left:82px!important;border-radius:7px!important;}
.page-hero h1{font-size:clamp(54px,7vw,96px)!important;max-width:1020px!important;}
.page-hero p{max-width:760px!important;}
.controls{border-radius:16px!important;box-shadow:none!important;border:1px solid var(--border)!important;background:var(--panel)!important;}
.control select,.control input{border-radius:9px!important;}

.about,.services-section{border-radius:20px!important;box-shadow:none!important;border:1px solid var(--border)!important;background:var(--panel)!important;}
.about-panel{border-radius:16px!important;background:var(--text)!important;color:var(--bg)!important;}
.about-panel .about-metric,.about-panel .about-note{border-color:rgba(255,255,255,.14)!important;}
.about-panel .about-metric strong{color:var(--accent)!important;}
.service-card{border-radius:14px!important;box-shadow:none!important;border:1px solid var(--border)!important;}
.service-number{color:var(--accent-dark)!important;}

.property-modal{border-radius:20px!important;border:1px solid var(--border)!important;box-shadow:0 40px 110px rgba(0,0,0,.44)!important;}
.modal-image,.modal-image img{border-radius:14px!important;}
.modal-close{border-radius:10px!important;}

.site-footer{margin-top:110px!important;background:#080d12!important;color:#eaf3f7!important;border-top:1px solid rgba(255,255,255,.08)!important;}
.footer-inner{padding-top:56px!important;}
.footer-brand{font-family:"Geologica",sans-serif!important;letter-spacing:.22em!important;color:#fff!important;}
.site-footer a{color:#b8c7d1!important;}
.site-footer .footer-contact-btn{color:#031014!important;background:#42d7f4!important;border-radius:8px!important;}

/* Contact page has large inline styles; these rules intentionally win. */
.contact-layout,.contact-card,.contact-form,.info-box{border-radius:18px!important;box-shadow:none!important;border-color:var(--border)!important;}
.contact-page h1,.contact-hero h1{letter-spacing:-.055em!important;}

/* Admin: same engine, different product shell. */
[data-theme-scope="admin"] body,.admin-page{background:linear-gradient(180deg,var(--bg),var(--bg-2))!important;}
[data-theme-scope="admin"] .topbar{border-radius:16px!important;box-shadow:none!important;border:1px solid var(--border)!important;background:var(--panel)!important;}
[data-theme-scope="admin"] .brand .logo,[data-theme-scope="admin"] .logo{border-radius:12px!important;background:#0d1117!important;box-shadow:none!important;}
[data-theme-scope="admin"] .nav-link,[data-theme-scope="admin"] .lang-toggle,[data-theme-scope="admin"] .logout-link,[data-theme-scope="admin"] .btn{border-radius:9px!important;}
[data-theme-scope="admin"] .nav-link.active,[data-theme-scope="admin"] .btn:not(.secondary){background:var(--accent)!important;color:#031014!important;}
[data-theme-scope="admin"] .hero,[data-theme-scope="admin"] .panel,[data-theme-scope="admin"] .card,[data-theme-scope="admin"] .property-card,[data-theme-scope="admin"] .login-card{border-radius:18px!important;box-shadow:none!important;border:1px solid var(--border)!important;}
[data-theme-scope="admin"] .hero h2,[data-theme-scope="admin"] .panel-head h2,[data-theme-scope="admin"] .login-card h1{letter-spacing:-.04em!important;}
[data-theme-scope="admin"] .field input,[data-theme-scope="admin"] .field textarea,[data-theme-scope="admin"] .field select,[data-theme-scope="admin"] input,[data-theme-scope="admin"] textarea,[data-theme-scope="admin"] select{border-radius:9px!important;}
[data-theme-scope="admin"] .property-image{border-radius:12px!important;}
[data-theme-scope="admin"] .property-price{color:var(--accent-dark)!important;}

@media(max-width:1080px){
  .nav-inner{border-radius:16px!important;}
  .nav-menu{border-radius:16px!important;}
  .home-page .page>.hero::before{right:-90px;opacity:.62;}
}
@media(max-width:760px){
  .page{width:min(100% - 28px,1320px)!important;}
  .home-page .page>.hero{min-height:620px!important;margin-top:98px!important;padding-left:22px!important;padding-right:22px!important;}
  .home-page .page>.hero::before{font-size:360px!important;right:-140px!important;}
  .home-page .page>.hero::after{display:none;}
  .hero h1{font-size:clamp(52px,15vw,76px)!important;}
  .home-page .page>.stats{grid-template-columns:1fr!important;}
  .stat+.stat{border-left:0!important;}
  .page-hero{margin-top:118px!important;padding-top:56px!important;}
  .page-hero .eyebrow{margin-left:0!important;}
  .page-hero::before{top:28px;width:42px;}
}
