:root{
  --bg:#08141b;
  --bg2:#0c1d26;
  --panel:#112c37;
  --panel2:#173844;
  --text:#f5f1e9;
  --muted:#a5b4ba;
  --red:#ed1838;
  --red2:#ff4661;
  --cream:#f1ece3;
  --ink:#122028;
  --border:#294955;
  --max:1240px;
  --display:"Prata",Georgia,serif;
  --body:"Onest",system-ui,sans-serif;
}
body{font-family:var(--body);background:
  radial-gradient(circle at 85% 4%,rgba(237,24,56,.08),transparent 24rem),
  linear-gradient(180deg,#08141b 0%,#0b1921 100%);
}
h1,h2{font-family:var(--display);font-weight:400}
button,a,input,select{outline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--red2)}
.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
.label,.mini-label{color:#ff6078}
.label.dark{color:#aa1430}
.city-card small{color:#aabac0}
.footer{color:#a7b7bd}
.note,.plan-disclaimer{color:#9fb0b7}

/* Header */
.topbar{background:#0d222b;border-color:rgba(255,255,255,.08)}
.header{background:rgba(8,20,27,.88);box-shadow:0 8px 30px rgba(0,0,0,.08);display:flex;align-items:center}
.header>.header-inner{width:100%}
.header>.logo{margin-left:max(24px,calc((100vw - var(--max))/2 + 30px))}
.header>nav{margin-left:auto}
.header>.header-cta{margin-right:max(24px,calc((100vw - var(--max))/2 + 30px))}
.header>.logo,.header>nav,.header>.header-cta{position:relative;z-index:2}
.header.legacy-header{display:flex;align-items:center;gap:24px;padding:18px max(24px,calc((100vw - var(--max))/2 + 30px))}
.header.legacy-header>.logo{margin:0}
.header.legacy-header>nav{display:flex;margin-left:auto;gap:24px;color:#b7c5ca;font-size:12px}
.header.legacy-header>.header-cta{margin:0}
.mobile-toggle{display:none;width:42px;height:42px;border:1px solid #355460;border-radius:12px;background:transparent;color:#fff;align-items:center;justify-content:center}
.mobile-toggle span,.mobile-toggle span:before,.mobile-toggle span:after{display:block;width:18px;height:1px;background:#fff;content:"";position:relative;transition:.2s}
.mobile-toggle span:before{position:absolute;top:-6px}.mobile-toggle span:after{position:absolute;top:6px}
.header.mobile-open .mobile-toggle span{background:transparent}
.header.mobile-open .mobile-toggle span:before{top:0;transform:rotate(45deg)}
.header.mobile-open .mobile-toggle span:after{top:0;transform:rotate(-45deg)}

/* Hero */
.hero{grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:58px;min-height:760px}
.hero h1{letter-spacing:-.045em;max-width:770px}
.hero h1 span,.two-col h2 span{font-family:var(--body);font-weight:700}
.hero p{font-size:17px;max-width:700px}
.hero-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.hero-points span{padding:9px 12px;border:1px solid #2b4c58;border-radius:999px;color:#b8c6cb;font-size:10px}
.hero-visual{background-image:linear-gradient(180deg,rgba(4,14,20,.02),rgba(4,14,20,.68)),url('https://uyutpro-realty.ru/wp-content/uploads/2026/10/%D0%A0%D0%B5%D0%B7%D0%B8%D0%B4%D0%B5%D0%BD%D1%86%D0%B8%D1%8F-%D0%BC%D0%BE%D1%80%D0%B5%D0%B9.jpg')}
.hero-visual-mark{position:absolute;top:28px;left:30px;z-index:2;padding:9px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(8,20,27,.5);backdrop-filter:blur(12px);font-size:9px;letter-spacing:.16em}
.benefit-badge>div{display:grid;gap:8px}
.benefit-badge>div span{font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.benefit-badge em{max-width:205px;text-align:right;font-size:10px;line-height:1.45;color:#e8edef}

/* Content blocks */
.trust-grid,.principles-grid,.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:46px}
.trust-grid article,.principles-grid article{min-height:190px;padding:24px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,#102630,#0d2029)}
.service-card{min-height:290px;padding:28px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(145deg,#102630,#0d2029);display:flex;flex-direction:column;align-items:flex-start}
.service-card h2{font-size:34px;margin:18px 0 12px}
.service-card p{color:var(--muted);font-size:13px;line-height:1.75;margin:0 0 28px}
.service-card .red-btn,.service-card .outline-btn{margin-top:auto}
.trust-grid b,.principles-grid span{font-size:10px;letter-spacing:.14em;color:var(--red);font-weight:800}
.trust-grid h3,.principles-grid h3{margin:34px 0 9px;font-size:21px}
.trust-grid p,.principles-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.spotlight{border-top:1px solid rgba(255,255,255,.06)}
.project-grid-featured .project-card{position:relative}
.project-card{transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.project-card:hover{transform:translateY(-6px);border-color:#496a77;box-shadow:0 24px 60px rgba(0,0,0,.22)}
.project-image{transition:filter .25s ease,transform .25s ease}
.project-card:hover .project-image{filter:saturate(1.06) contrast(1.02)}
.city-section{padding-top:90px}
.city-grid-large{grid-template-columns:repeat(5,1fr)}
.city-card-accent{background:linear-gradient(145deg,#311621,#172f39);border-color:rgba(237,24,56,.5)}
.city-card-saratov{background:linear-gradient(145deg,#efeae1,#e2ded6);color:#17242b;border-color:#d9d5cc}
.city-card-saratov small{color:#7b6e70}

/* Saratov */
.saratov-section{background:var(--cream);color:var(--ink)}
.saratov-inner{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
.saratov-copy h2{font-size:clamp(42px,5vw,64px);line-height:1.02;letter-spacing:-.045em;margin:16px 0}
.saratov-copy p{max-width:700px;color:#5d6a70;font-size:15px;line-height:1.75}
.saratov-office{min-height:310px;padding:30px;border-radius:22px;background:#10252e;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 20px 50px rgba(18,32,40,.16)}
.saratov-office strong{font-family:var(--display);font-size:50px;font-weight:400}
.saratov-office p{font-size:15px;margin:9px 0}
.saratov-office span{color:#a8b9bf;font-size:11px}

/* Forms */
.consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:9px!important;font-size:9px!important;line-height:1.45;color:#9eb0b6!important}
.consent input{width:16px!important;height:16px!important;margin:1px 0 0;padding:0!important}
.consent a{text-decoration:underline}
.contact-form button{width:100%}
.modal-box{max-height:88vh;overflow:auto}
.modal[aria-hidden="false"]{display:block}
.float-discount{border:0}
.success{margin-top:12px}

/* Inner city/project pages */
.city-hero,.project-hero{padding-top:110px;padding-bottom:70px;position:relative}
.city-hero:before,.project-hero:before{content:"";position:absolute;right:30px;top:60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(237,24,56,.13),transparent 68%);pointer-events:none}
.city-hero h1,.project-hero h1{font-size:clamp(48px,7vw,84px);line-height:1;letter-spacing:-.04em;margin:18px 0;max-width:1000px}
.city-hero h1 span,.project-hero h1 span{font-family:var(--body);font-weight:700;color:var(--red)}
.city-hero p,.project-hero p{max-width:790px;color:#aab9be;font-size:16px;line-height:1.75}
.project-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);gap:24px}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}
.gallery-item{min-height:360px;border:0;border-radius:19px;background:#17313c center/cover no-repeat;position:relative;overflow:hidden}
.gallery-item span{position:absolute;left:15px;bottom:15px;padding:7px 9px;border-radius:8px;background:rgba(0,0,0,.48);color:#fff;font-size:10px}
.benefit-card{padding:28px;border:1px solid rgba(237,24,56,.36);border-radius:20px;background:linear-gradient(145deg,#182f39,#301721);align-self:start;position:sticky;top:128px}
.benefit-card h3{font-size:29px;line-height:1.08;margin:18px 0}
.benefit-card p,.benefit-card small{color:#aebdc2;font-size:11px;line-height:1.65}
.big-benefit{font-family:var(--display);font-size:64px;color:var(--red);line-height:1;margin:28px 0 10px}
.apartment-grid{display:grid;grid-template-columns:310px 1fr;gap:18px}
.filter-panel.vertical{display:grid;gap:12px;align-content:start}
.filter-panel.vertical label{display:grid;gap:6px;font-size:10px;color:#9fb0b7}
.plan-placeholder{min-height:330px;border:1px dashed #385965;border-radius:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;background:rgba(255,255,255,.02)}
.plan-placeholder span{max-width:530px;color:#9eafb5;font-size:12px;line-height:1.7;margin:10px 0 18px}
.plan-disclaimer,.note{margin-top:12px;color:#80949c;font-size:10px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.feature-grid>div{padding:24px;border:1px solid var(--border);border-radius:16px;background:#10242d}
.feature-grid b{color:var(--red);font-size:10px}.feature-grid h3{font-size:20px;margin:30px 0 8px}.feature-grid p{color:#9fb0b7;font-size:12px;margin:0}

/* Generic WordPress pages */
.content-page{max-width:920px;margin:0 auto;padding:120px 30px}
.content-page h1{font-size:clamp(44px,6vw,72px);line-height:1;margin-bottom:34px}
.content-page .entry-content{color:#c0cbcf}
.content-page .entry-content h2{font-size:34px;margin-top:42px;color:#fff}
.content-page .entry-content p,.content-page .entry-content li{font-size:15px;line-height:1.8}
.error-page{text-align:center;min-height:70vh;display:grid;place-items:center}
.error-page .error-code{font-family:var(--display);font-size:110px;color:var(--red);line-height:1}

/* Motion */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.project-card,.city-card,.red-btn{transition:none}}

/* Stronger hierarchy + clean filter/application blocks */
.topbar{min-height:58px!important;padding:12px 24px!important;background:linear-gradient(90deg,#ef1d3f,#bb102d)!important;border:0!important;color:#fff!important;box-shadow:0 10px 30px rgba(239,29,63,.16)}
.topbar b{font-size:15px!important;letter-spacing:.02em}
.topbar .dot,.topbar>span:first-child{color:#fff!important}
.topbar button{border:1px solid rgba(255,255,255,.45)!important;border-radius:999px!important;background:#fff!important;color:#bd102d!important;padding:9px 15px!important;font-weight:900!important}
.project-hero h1,.city-hero h1{font-size:clamp(62px,8vw,104px)!important;line-height:.94!important;letter-spacing:-.055em!important}
.project-hero p,.city-hero p{font-size:18px!important;line-height:1.7!important;max-width:900px!important}
.benefit-band{background:linear-gradient(135deg,#ef1d3f,#b50e2a)!important;border:0!important;box-shadow:0 22px 60px rgba(239,29,63,.2)}
.benefit-band h2{font-size:clamp(48px,6vw,76px)!important;line-height:1!important}
.benefit-band p{font-size:15px!important;color:#fff!important;max-width:800px}
.big-benefit{font-size:82px!important;text-shadow:0 12px 36px rgba(239,29,63,.25)}
.benefit-card{border-color:rgba(239,29,63,.7)!important;box-shadow:0 24px 70px rgba(0,0,0,.18)}
.label,.mini-label{font-size:12px;line-height:1.4;letter-spacing:.15em}
.section-title h2,.two-col h2,.page-section>h2,.project-layout h2,.apartment-section .section-title h2,.filter-section>h2{
  font-size:clamp(46px,5.2vw,68px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.project-body h3{font-size:30px}
.feature-grid h3{font-size:24px}
.apartment-section{padding-top:90px}
.apartment-section .section-title{margin-bottom:34px}
.apartment-grid{gap:24px;align-items:start}
.filter-panel.vertical{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  padding:22px!important;
  border:1px solid var(--border)!important;
  border-radius:18px!important;
  background:#10252e!important;
}
.filter-panel.vertical>b{display:block;font-size:19px;margin-bottom:2px}
.filter-panel.vertical label{display:grid!important;gap:7px!important;font-size:12px!important;color:#b8c6cb!important}
.filter-panel.vertical select,
.filter-section select{
  width:100%;
  min-height:52px;
  padding:0 13px;
  border:1px solid #355560;
  border-radius:11px;
  background:#0b1d25;
  color:#fff;
}
.plan-area{display:grid;gap:12px}
.plan-placeholder{min-height:360px}
.plan-placeholder b{font-size:18px;letter-spacing:.08em}
.plan-placeholder span{font-size:14px;line-height:1.7}
.plan-disclaimer,.note{font-size:12px;line-height:1.65}
.filter-section .filter-panel{
  display:grid!important;
  grid-template-columns:minmax(190px,1.05fr) repeat(3,minmax(150px,.8fr)) auto;
  gap:12px;
  align-items:end;
  margin-top:26px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:18px;
  background:#10252e;
}
.filter-section .filter-panel>div b,
.filter-section .filter-panel>div span{display:block}
.filter-section .filter-panel>div b{font-size:16px}
.filter-section .filter-panel>div span{margin-top:5px;color:#9fb0b7;font-size:11px}
.consent{margin-top:2px;padding:10px 0 2px;font-size:10px!important;color:#b5c3c8!important}
.consent a{color:#fff;text-decoration:underline;text-underline-offset:2px}

/* Responsive */
@media(max-width:1020px){
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-visual{min-height:560px}
  .city-grid-large{grid-template-columns:repeat(3,1fr)}
  .saratov-inner{grid-template-columns:1fr}
  .project-layout{grid-template-columns:1fr}
  .benefit-card{position:static}
  .apartment-grid{grid-template-columns:1fr}
  .filter-section .filter-panel{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .mobile-toggle{display:inline-flex}
  .header-inner{position:relative}
  .header .header-cta{display:none}
  .header nav{display:none;position:absolute;left:14px;right:14px;top:calc(100% + 8px);padding:12px;border:1px solid #294955;border-radius:16px;background:#0d2029;box-shadow:0 20px 50px rgba(0,0,0,.35);flex-direction:column;gap:0}
  .header.mobile-open nav{display:flex}
  .header nav a{padding:13px 12px;border-bottom:1px solid rgba(255,255,255,.06);font-size:12px}
  .header nav a:last-child{border-bottom:0}
  .hero{padding-top:48px}
  .hero h1{font-size:45px}
  .hero-visual{min-height:450px}
  .benefit-badge{display:block}
  .benefit-badge em{display:block;margin-top:12px;text-align:left}
  .trust-grid,.principles-grid,.service-grid{grid-template-columns:1fr}
  .city-grid-large{grid-template-columns:1fr 1fr}
  .saratov-copy h2{font-size:42px}
  .gallery{grid-template-columns:1fr}.gallery-item{min-height:300px}
  .feature-grid{grid-template-columns:1fr}
  .filter-section .filter-panel{grid-template-columns:1fr}
  .section-title h2,.two-col h2,.page-section>h2,.project-layout h2,.apartment-section .section-title h2,.filter-section>h2{font-size:40px}
}
.manager-dashboard{max-width:1180px;margin:0 auto;padding:120px 30px}
.manager-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}
.manager-head h1{font-size:clamp(42px,6vw,70px);margin:10px 0 0}
.manager-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.manager-stats>div{padding:24px;border:1px solid var(--border);border-radius:18px;background:#10252e}
.manager-stats span,.manager-stats small{display:block;color:#9fb0b7;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.manager-stats b{display:block;font-family:var(--display);font-size:52px;font-weight:400;color:#fff;margin:8px 0}
.manager-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:18px;background:#0d2029}
.manager-table{width:100%;border-collapse:collapse;min-width:760px}
.manager-table th,.manager-table td{padding:15px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px}
.manager-table th{color:#8fa3aa;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.manager-table td a{color:#fff;font-weight:700}
.manager-login{max-width:720px;margin:120px auto;padding:34px;border:1px solid var(--border);border-radius:20px;background:#10252e}
.manager-login h2{font-size:42px;margin:0 0 14px}
.manager-login p{color:var(--muted)}
@media(max-width:760px){.manager-head{display:block}.manager-head .outline-btn{margin-top:16px}.manager-stats{grid-template-columns:1fr}.manager-dashboard{padding:80px 18px}}

.nagoria-visual{background:
  radial-gradient(circle at 25% 25%,rgba(237,24,56,.18),transparent 18rem),
  linear-gradient(145deg,#173844,#0a1920)!important}
.nagoria-visual:before{content:"НАГОРИЯ";position:absolute;inset:auto 18px 18px auto;font-family:var(--display);font-size:34px;color:rgba(255,255,255,.14);letter-spacing:.03em}

@media(max-width:480px){
  .city-grid-large{grid-template-columns:1fr}
  .hero-visual{min-height:410px}
  .saratov-office strong{font-size:42px}
}
