
/* ============ TOKENS ============ */
:root{
  --green:#005C2B;
  --green-deep:#043D1D;
  --green-mid:#0B6C31;
  --ink:#101210;
  --ink-soft:#5c5f5a;
  --paper:#F7F6F2;
  --white:#fff;
  --line-dark:rgba(255,255,255,.14);
  --line-light:rgba(16,18,16,.10);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Roboto',sans-serif;
  background:var(--paper);
  color:var(--ink);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--green);color:#fff}
::-webkit-scrollbar{width:9px}
::-webkit-scrollbar-track{background:#111311}
::-webkit-scrollbar-thumb{background:var(--green);border-radius:99px}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}

h1,h2,h3,.cond{font-family:'Roboto Condensed',sans-serif;text-transform:uppercase;letter-spacing:.01em;font-weight:700;line-height:.95}

.label{
  font-family:'Roboto Condensed',sans-serif;
  font-size:12px;font-weight:400;
  letter-spacing:.35em;text-transform:uppercase;
  color:var(--green);display:flex;align-items:center;gap:14px;
}
.label::before{content:'';width:34px;height:1px;background:var(--green)}
.label.on-dark{color:#7ee2a8}
.label.on-dark::before{background:#7ee2a8}

/* ============ NOISE + CURSOR ============ */
.noise{position:fixed;inset:-50%;z-index:9998;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:noiseShift .6s steps(4) infinite;}
@keyframes noiseShift{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}100%{transform:translate(0,0)}}

.cursor,.cursor-dot{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;mix-blend-mode:difference;display:none}
@media(pointer:fine){.cursor,.cursor-dot{display:block}}
.cursor{width:38px;height:38px;border:1px solid rgba(255,255,255,.75);transition:transform .25s var(--ease),opacity .3s;margin:-19px 0 0 -19px}
.cursor-dot{width:5px;height:5px;background:#fff;margin:-2.5px 0 0 -2.5px}
.cursor.grow{transform:scale(2.1);border-color:rgba(255,255,255,.4)}

/* ============ PRELOADER ============ */
.preloader{position:fixed;inset:0;z-index:10000;background:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;transition:clip-path 1s var(--ease);clip-path:inset(0 0 0 0)}
.preloader.done{clip-path:inset(0 0 100% 0)}
.pre-logo{width:54px;height:84px}
.pre-bar{width:180px;height:1px;background:rgba(255,255,255,.15);overflow:hidden}
.pre-bar i{display:block;height:100%;width:0%;background:var(--green-mid);transition:width .15s linear}
.pre-num{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;color:rgba(255,255,255,.5)}

/* ============ HEADER ============ */
header{position:fixed;top:0;left:0;right:0;z-index:900;padding:26px 48px;display:flex;align-items:center;justify-content:space-between;transition:transform .45s var(--ease),background .35s,padding .35s,border-color .35s;border-bottom:1px solid transparent}
header.hide{transform:translateY(-110%)}
header.scrolled{padding:14px 48px;background:rgba(12,14,12,.72);backdrop-filter:blur(16px);border-color:rgba(255,255,255,.07)}
.logo{display:flex;align-items:center;gap:13px;color:#fff}
.logo svg{width:34px;height:52px;flex-shrink:0}
.logo-txt b{font-family:'Roboto Condensed';font-size:22px;font-weight:700;letter-spacing:.06em;display:block;line-height:1}
.logo-txt span{font-family:'Roboto Condensed';font-size:9.5px;letter-spacing:.42em;color:rgba(255,255,255,.65);text-transform:uppercase;display:block;margin-top:4px}
nav.desktop{display:flex;gap:38px}
nav.desktop a{font-family:'Roboto Condensed';font-size:13.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.82);position:relative;padding:4px 0}
nav.desktop a::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:#fff;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}
nav.desktop a:hover::after{transform:scaleX(1);transform-origin:left}
.hdr-right{display:flex;align-items:center;gap:22px}
.hdr-phone{font-family:'Roboto Condensed';font-size:15px;letter-spacing:.08em;color:#fff;font-weight:400}
.btn{
  display:inline-flex;align-items:center;gap:12px;
  font-family:'Roboto Condensed';font-size:13.5px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  padding:17px 30px;color:#fff;background:var(--green);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
  transition:background .3s,color .3s,letter-spacing .3s;position:relative;overflow:hidden;
}
.btn:hover{background:#0b7437;letter-spacing:.26em}
.btn.ghost{background:transparent;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.dark{box-shadow:inset 0 0 0 1px rgba(16,18,16,.25)}
.burger{display:none;flex-direction:column;gap:6px;padding:8px;z-index:960}
.burger i{width:26px;height:1.5px;background:#fff;transition:.35s var(--ease)}

/* ============ HERO ============ */
.hero{position:relative;height:100vh;min-height:680px;overflow:hidden;background:var(--ink);color:#fff;display:flex;flex-direction:column}
.hero-bg{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.6s ease}
.slide.active{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.08)}
.slide.active img{animation:kb 8s linear forwards}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.12)}}
.hero-overlay{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(8,10,8,.62) 0%,rgba(8,10,8,.28) 40%,rgba(8,10,8,.78) 100%),
  radial-gradient(120% 90% at 70% 20%,rgba(0,92,43,.38),transparent 60%);}
.hero-watermark{position:absolute;right:-2vw;top:50%;transform:translateY(-52%);font-family:'Roboto Condensed';font-weight:700;font-size:44vh;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);user-select:none;pointer-events:none}
.hero-inner{position:relative;z-index:5;flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 48px;max-width:1500px;width:100%;margin:0 auto}
.hero-tag{display:inline-flex;align-items:center;gap:12px;margin-bottom:30px;opacity:0}
.hero-tag .dot{width:7px;height:7px;border-radius:50%;background:#39d47f;box-shadow:0 0 0 0 rgba(57,212,127,.55);animation:pulseDot 2s infinite}
@keyframes pulseDot{70%{box-shadow:0 0 0 11px transparent}100%{box-shadow:0 0 0 0 transparent}}
.hero-tag span{font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.hero h1{font-size:clamp(46px,8.4vw,124px);color:#fff}
.hero h1 .row{display:block;overflow:hidden}
.hero h1 .row>span{display:block;transform:translateY(115%)}
.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px #fff}
.hero h1 .grn{color:#3ddc84}
.hero-sub{margin-top:26px;max-width:520px;font-weight:300;font-size:16.5px;line-height:1.65;color:rgba(255,255,255,.78);opacity:0}
/* search panel */
.search{position:relative;z-index:6;margin:44px auto 0;width:min(1180px,calc(100% - 96px));opacity:0;transform:translateY(30px)}
.search-tabs{display:flex;gap:6px;margin-bottom:-1px;position:relative;z-index:2;padding-left:6px}
.stab{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.75);padding:13px 26px;clip-path:polygon(10px 0,100% 0,100% 100%,0 100%,0 10px);transition:.3s}
.stab.active{background:var(--green);color:#fff}
.stab:not(.active):hover{color:#fff}
.search-body{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:1px;background:rgba(255,255,255,.16);backdrop-filter:blur(18px);clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%)}
.sfield{background:rgba(10,12,10,.66);padding:8px 22px;display:flex;flex-direction:column;justify-content:center;min-height:76px}
.sfield label{font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:6px}
.sfield select{appearance:none;background:transparent url("data:image/svg+xml,%3Csvg width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23ffffff88'/%3E%3C/svg%3E") no-repeat right center;border:none;color:#fff;font-family:'Roboto';font-size:15px;outline:none;cursor:pointer}
.sfield select option{color:#111;background:#fff}
.search-btn{background:var(--green);color:#fff;font-family:'Roboto Condensed';font-weight:700;letter-spacing:.24em;text-transform:uppercase;font-size:14px;padding:0 46px;display:flex;align-items:center;gap:12px;transition:background .3s,letter-spacing .3s}
.search-btn:hover{background:#0b7437;letter-spacing:.3em}
.hero-stats{position:relative;z-index:6;border-top:1px solid var(--line-dark);display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:26px 48px;border-left:1px solid var(--line-dark);display:flex;flex-direction:column;gap:4px}
.stat:first-child{border-left:none}
.stat b{font-family:'Roboto Condensed';font-size:clamp(26px,3vw,40px);font-weight:700;color:#fff}
.stat b i{font-style:normal;color:#3ddc84}
.stat > span{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.55)}

/* ============ MARQUEE ============ */
.marquee{background:var(--ink);border-block:1px solid var(--line-dark);overflow:hidden;padding:20px 0;white-space:nowrap}
.mq-track{display:flex;width:max-content;animation:mq 32s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
.mq-group{display:flex;align-items:center;gap:56px;padding-right:56px}
.mq-group span{font-family:'Roboto Condensed';font-size:15px;letter-spacing:.34em;text-transform:uppercase;color:rgba(255,255,255,.45);display:inline-flex;align-items:center;gap:56px}
.mq-group span::after{content:'';width:8px;height:8px;background:var(--green-mid);transform:rotate(45deg);flex-shrink:0}
@keyframes mq{to{transform:translateX(-50%)}}

/* ============ SECTION SHELL ============ */
.sec{padding:120px 48px;max-width:1560px;margin:0 auto;width:100%}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:64px}
.sec-title{font-size:clamp(36px,4.6vw,68px);margin-top:22px}
.sec-title em{font-style:normal;color:inherit;-webkit-text-fill-color:transparent;-webkit-text-stroke:1.3px currentColor}
.num{font-family:'Roboto Condensed';font-size:14px;letter-spacing:.3em;color:var(--ink-soft)}

/* ============ FILTERS ============ */
.chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;padding:12px 22px;border:1px solid var(--line-light);color:var(--ink-soft);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:.3s}
.chip:hover{border-color:var(--green);color:var(--green)}
.chip.active{background:var(--ink);border-color:var(--ink);color:#fff}

/* ============ CARDS ============ */
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.card{background:#fff;border:1px solid var(--line-light);position:relative;transition:transform .5s var(--ease),box-shadow .5s;will-change:transform}
.card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -22px rgba(10,20,12,.25)}
.card-img{aspect-ratio:4/3;overflow:hidden;position:relative}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.card:hover .card-img img{transform:scale(1.09)}
.badge{position:absolute;top:14px;left:14px;z-index:3;background:var(--green);color:#fff;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:8px 14px;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}
.fav{position:absolute;top:12px;right:12px;z-index:3;width:40px;height:40px;background:rgba(12,14,12,.45);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:.3s}
.fav svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:1.6;transition:.25s}
.fav:hover svg{fill:#ff5a5a;stroke:#ff5a5a}
.card-diag{position:absolute;inset:auto 0 0 0;height:46%;z-index:2;background:linear-gradient(200deg,transparent 40%,rgba(6,10,7,.55));opacity:0;transition:opacity .5s;clip-path:polygon(0 100%,0 55%,100% 0,100% 100%)}
.card:hover .card-diag{opacity:1}
.price-float{position:absolute;bottom:16px;left:16px;z-index:3;font-family:'Roboto Condensed';font-size:22px;color:#fff;opacity:0;transform:translateY(10px);transition:.45s var(--ease) .05s}
.card:hover .price-float{opacity:1;transform:translateY(0)}
.card-body{padding:22px 24px 24px}
.card-meta{display:flex;gap:16px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px}
.card-meta b{color:var(--green);font-weight:500}
.card-title{font-family:'Roboto Condensed';font-size:19px;font-weight:400;line-height:1.35;text-transform:none;color:var(--ink);min-height:52px}
.card-foot{margin-top:16px;padding-top:16px;border-top:1px solid var(--line-light);display:flex;align-items:center;justify-content:space-between}
.card-price{font-family:'Roboto Condensed';font-size:23px;font-weight:700}
.card-price small{font-size:13px;color:var(--ink-soft);font-weight:400;margin-left:6px;letter-spacing:.06em}
.card-link{font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);display:inline-flex;align-items:center;gap:8px}
.card-link svg{transition:transform .35s var(--ease)}
.card:hover .card-link svg{transform:translateX(6px)}
.loadmore-wrap{display:flex;justify-content:center;margin-top:56px}

/* ============ MAP SECTION ============ */
.map-sec{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.map-sec::before{content:'';position:absolute;left:-140px;top:-140px;width:480px;height:480px;background:radial-gradient(circle,rgba(11,108,49,.28),transparent 65%)}
.map-wrap{display:grid;grid-template-columns:420px 1fr;gap:56px;align-items:start}
.map-list{display:flex;flex-direction:column;max-height:520px;overflow-y:auto;padding-right:8px}
.map-list::-webkit-scrollbar{width:4px}
.map-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14)}
.map-citybar{display:flex;gap:10px;margin-bottom:26px;border-bottom:1px solid var(--line-dark);padding-bottom:18px;position:relative;z-index:6}
.map-citybtn{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.2em;text-transform:uppercase;background:transparent;border:1px solid rgba(255,255,255,.22);color:rgba(255,255,255,.55);padding:10px 22px;cursor:pointer;transition:.3s}
.map-citybtn:hover{border-color:#3ddc84;color:#fff}
.map-citybtn.on{background:#0B6C31;border-color:#0B6C31;color:#fff}
.ml-item{display:flex;align-items:center;justify-content:space-between;padding:17px 4px;border-bottom:1px solid var(--line-dark);cursor:pointer;transition:.3s;position:relative}
.ml-item .n{font-family:'Roboto Condensed';font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.62);transition:.3s;display:flex;align-items:center;gap:14px}
.ml-item .n i{width:6px;height:6px;background:rgba(255,255,255,.3);transform:rotate(45deg);transition:.3s;font-style:normal}
.ml-item .c{font-family:'Roboto Condensed';font-size:14px;color:rgba(255,255,255,.4)}
.ml-item:hover .n,.ml-item.act .n{color:#fff}
.ml-item.act .n i{background:#3ddc84;box-shadow:0 0 14px #3ddc84}
.map-panel{position:relative;aspect-ratio:16/9.4;background:
  linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),
  radial-gradient(90% 120% at 30% 20%,#12251a,#0b0e0c 75%);
  background-size:56px 56px,56px 56px,cover;
  border:1px solid var(--line-dark);overflow:hidden}
.map-road{position:absolute;background:rgba(255,255,255,.05)}
.map-river{position:absolute;right:-6%;top:-12%;width:34%;height:150%;background:linear-gradient(105deg,transparent 46%,rgba(61,220,132,.10) 47%,rgba(61,220,132,.10) 53%,transparent 54%);transform:rotate(14deg)}
.pin{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:9px;cursor:pointer;z-index:4}
.pin .pt{position:relative;width:13px;height:13px;background:#3ddc84;transform:rotate(45deg);box-shadow:0 0 0 0 rgba(61,220,132,.5);animation:pinPulse 2.4s infinite}
@keyframes pinPulse{0%{box-shadow:0 0 0 0 rgba(61,220,132,.45)}70%{box-shadow:0 0 0 15px transparent}100%{box-shadow:0 0 0 0 transparent}}
.pin span{font-family:'Roboto Condensed';font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75);background:rgba(10,12,10,.6);backdrop-filter:blur(6px);padding:5px 11px;white-space:nowrap;opacity:0;transform:translateY(6px);transition:.35s var(--ease)}
.pin:hover span,.pin.act span{opacity:1;transform:translateY(0)}
.pin.act .pt{background:#fff;animation:none;box-shadow:0 0 18px rgba(255,255,255,.6)}
.map-info{position:absolute;left:22px;bottom:22px;z-index:6;background:rgba(10,13,10,.82);backdrop-filter:blur(14px);border:1px solid var(--line-dark);padding:20px 26px;max-width:330px;clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%)}
.map-info h4{font-family:'Roboto Condensed';font-size:20px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.map-info p{font-size:13px;color:rgba(255,255,255,.6);line-height:1.55;margin-bottom:14px}
.map-info a{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#3ddc84;display:inline-flex;gap:8px;align-items:center}
.map-legend-note{margin-top:18px;font-size:12.5px;color:rgba(255,255,255,.4);letter-spacing:.06em;display:flex;gap:10px;align-items:center}
.map-legend-note svg{flex-shrink:0;opacity:.6}

/* ============ SELL CTA ============ */
.sell{position:relative;background:linear-gradient(118deg,var(--green-deep),var(--green) 58%,#0a6e33);color:#fff;overflow:hidden}
.sell::before,.sell::after{content:'';position:absolute;inset:0;pointer-events:none}
.sell::before{background:
  linear-gradient(64deg,transparent 49.7%,rgba(255,255,255,.05) 50%) 0 0/340px 340px,
  linear-gradient(-64deg,transparent 49.7%,rgba(255,255,255,.04) 50%) 170px 170px/340px 340px}
.sell-roof{position:absolute;right:-60px;bottom:-40px;width:min(46vw,600px);opacity:.16;transform:rotate(-6deg)}
.sell-inner{position:relative;max-width:1560px;margin:0 auto;padding:130px 48px;display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:center}
.sell h2{font-size:clamp(40px,5.4vw,84px);color:#fff;margin-top:24px}
.sell p{margin-top:24px;max-width:480px;font-weight:300;font-size:16px;line-height:1.7;color:rgba(255,255,255,.82)}
.steps{display:flex;flex-direction:column}
.step{display:flex;gap:26px;align-items:flex-start;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.step:last-child{border-bottom:none}
.step .sn{font-family:'Roboto Condensed';font-weight:700;font-size:30px;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.75);line-height:1;min-width:52px}
.step b{font-family:'Roboto Condensed';font-size:18px;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:6px}
.step span{font-size:14px;font-weight:300;color:rgba(255,255,255,.72);line-height:1.55}
.btn.white{background:#fff;color:var(--green-deep);margin-top:38px}

/* ============ REALTORS ============ */
.realtors-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.real-card{position:relative;background:var(--ink);overflow:hidden;aspect-ratio:3/3.8;cursor:pointer}
.real-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.9) contrast(1.05);transition:.7s var(--ease)}
.real-card::before{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(160deg,var(--green) 0%,rgba(4,61,29,.35) 55%,rgba(8,10,8,.85) 100%);mix-blend-mode:multiply;opacity:.9;transition:.5s}
.real-card::after{content:'';position:absolute;left:0;right:0;bottom:0;height:44%;z-index:2;background:linear-gradient(0deg,rgba(5,8,6,.9),transparent)}
.real-card:hover img{filter:grayscale(0);transform:scale(1.06)}
.real-info{position:absolute;left:22px;right:22px;bottom:22px;z-index:4;color:#fff}
.real-role{display:inline-block;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.26em;text-transform:uppercase;background:var(--green);padding:7px 13px;margin-bottom:12px;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}
.real-name{font-family:'Roboto Condensed';font-size:21px;font-weight:400;text-transform:none}
.real-slogan{margin-top:8px;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.6)}

/* ============ FOOTER ============ */
footer{background:var(--ink);color:#fff;padding:100px 48px 0;overflow:hidden;position:relative}
.ft-grid{max-width:1560px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:80px}
.ft-slogan{margin-top:26px;font-weight:300;font-size:15px;line-height:1.7;color:rgba(255,255,255,.6);max-width:360px}
.ft-h{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:22px}
.ft-col a,.ft-col span{display:block;font-size:14.5px;color:rgba(255,255,255,.78);padding:7px 0;transition:.3s}
.ft-col a:hover{color:#3ddc84;padding-left:6px}
.ft-word{font-family:'Roboto Condensed';font-weight:700;font-size:clamp(90px,17vw,270px);text-align:center;line-height:.78;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);user-select:none;transform:translateY(12%)}
.ft-bottom{border-top:1px solid var(--line-dark);padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:12.5px;color:rgba(255,255,255,.4);letter-spacing:.08em}

/* reveal helper */
.rv{opacity:0;transform:translateY(46px)}

/* ============ SMART SEARCH ============ */
.smart{grid-column:1/-1;background:rgba(10,12,10,.72);padding:16px 22px 14px;display:flex;flex-direction:column;gap:11px}
.smart-row{display:flex;align-items:center;gap:14px}
.smart-row svg{flex-shrink:0}
.smart input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-size:17px;font-weight:300;min-width:0}
.smart input::placeholder{color:rgba(255,255,255,.38)}
.schips{display:flex;flex-wrap:wrap;gap:8px;min-height:0}
.schip{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#062d15;background:#3ddc84;padding:6px 13px;clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);animation:chipIn .3s var(--ease)}
.schip.alt{background:rgba(255,255,255,.14);color:#fff}
@keyframes chipIn{from{opacity:0;transform:translateY(6px) scale(.9)}}
.smart-hint{font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.35)}
.smart-row .search-btn{flex-shrink:0;padding:0 32px;height:52px;font-size:13px}
.btn.ghost.dark{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(16,18,16,.32)}
.btn.ghost.dark:hover{background:rgba(16,18,16,.06);letter-spacing:.26em}
/* TOAST */
.toast{position:fixed;left:50%;bottom:34px;visibility:hidden;opacity:0;pointer-events:none;z-index:9500;background:var(--ink);color:#fff;border:1px solid var(--line-dark);padding:16px 26px;font-family:'Roboto Condensed';font-size:14px;letter-spacing:.12em;text-transform:uppercase;transition:opacity .4s var(--ease);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);display:flex;gap:12px;align-items:center}
.toast.show{visibility:visible;opacity:1;pointer-events:auto}
.toast i{width:8px;height:8px;background:#3ddc84;transform:rotate(45deg);font-style:normal}
/* ============ REVIEWS ============ */
.revs{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.rev{background:#fff;border:1px solid var(--line-light);padding:30px;position:relative;transition:transform .5s var(--ease),box-shadow .5s}
.rev:hover{transform:translateY(-6px);box-shadow:0 26px 50px -20px rgba(10,20,12,.22)}
.rev .q{font-family:'Roboto Condensed';font-size:64px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(0,92,43,.35);position:absolute;top:18px;right:24px}
.rev .stars{color:var(--green);letter-spacing:4px;font-size:14px;margin-bottom:16px}
.rev p{font-size:15px;line-height:1.75;color:#33362f;font-weight:300;min-height:120px}
.rev .who{margin-top:20px;padding-top:18px;border-top:1px solid var(--line-light);display:flex;align-items:center;gap:13px}
.rev .who b{font-family:'Roboto Condensed';font-size:16px;font-weight:400}
.rev .who span{display:block;font-size:11.5px;color:#a9aca6;letter-spacing:.1em;margin-top:3px}
.rev .ava{width:44px;height:44px;border-radius:50%;object-fit:cover}
/* ============ FAQ ============ */
.faq-sec{background:#fff;border-block:1px solid var(--line-light)}
.faq-list{max-width:900px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--line-light)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 4px;font-family:'Roboto Condensed';font-size:19px;font-weight:400;text-transform:none;transition:color .25s}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:var(--green)}
.faq-item summary .pm{flex-shrink:0;width:34px;height:34px;border:1px solid var(--line-light);display:flex;align-items:center;justify-content:center;position:relative;transition:.3s;clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px)}
.faq-item summary .pm::before,.faq-item summary .pm::after{content:'';position:absolute;background:var(--green);transition:.3s}
.faq-item summary .pm::before{width:13px;height:1.6px}
.faq-item summary .pm::after{width:1.6px;height:13px}
.faq-item[open] summary .pm{background:var(--green);border-color:var(--green)}
.faq-item[open] summary .pm::before{background:#fff}
.faq-item[open] summary .pm::after{transform:scaleY(0);background:#fff}
.faq-item .ans{padding:0 60px 28px 4px;font-size:15.5px;line-height:1.75;color:var(--ink-soft);font-weight:300;max-width:820px}
/* ============ BLOG ============ */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.bcard{background:#fff;border:1px solid var(--line-light);display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s}
.bcard:hover{transform:translateY(-8px);box-shadow:0 30px 60px -22px rgba(10,20,12,.25)}
.bcard-img{aspect-ratio:16/10;overflow:hidden}
.bcard-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.bcard:hover .bcard-img img{transform:scale(1.08)}
.bcard-body{padding:24px 26px 26px;display:flex;flex-direction:column;flex:1}
.bmeta{display:flex;gap:14px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px}
.bmeta b{color:var(--green);font-weight:500}
.bmeta span{color:#a9aca6}
.bcard h3{font-family:'Roboto Condensed';font-weight:400;font-size:20px;line-height:1.35;text-transform:none;flex:1}
.bcard .more{margin-top:18px;font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--green)}
/* ============ SEO TEXT ============ */
.seo{padding-top:100px}
.seo-in{max-width:900px}
.seo h2{font-size:clamp(26px,3vw,38px);margin-bottom:24px}
.seo p{font-weight:300;font-size:15.5px;line-height:1.85;color:var(--ink-soft);margin-bottom:16px}
.seo p b{color:var(--ink);font-weight:500}
.seo-landmarks{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.seo-landmarks a{font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;padding:11px 18px;border:1px solid var(--line-light);background:#fff;color:var(--ink-soft);transition:.25s;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
.seo-landmarks a:hover{border-color:var(--green);color:var(--green)}

/* ============ RESPONSIVE ============ */
@media(max-width:1280px){
  nav.desktop{display:none}
  .burger{display:flex}
  .search-body{grid-template-columns:1fr 1fr}
  .search-btn{padding:22px;grid-column:span 2}
  .map-wrap{grid-template-columns:1fr}
  .revs,.blog-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1024px){
  .grid{grid-template-columns:repeat(2,1fr)}
  .realtors-grid{grid-template-columns:repeat(2,1fr)}
  .sell-inner{grid-template-columns:1fr}
  .hero-stats{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(3){border-left:none;border-top:1px solid var(--line-dark)}
  .stat:nth-child(4){border-top:1px solid var(--line-dark)}
  .hdr-phone{display:none}
  .revs,.blog-grid{grid-template-columns:repeat(2,1fr)}
  /* гарячі пропозиції — слайдер на мобільних */
  #cardsGrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -22px;padding:4px 22px 16px;scrollbar-width:none}
  #cardsGrid::-webkit-scrollbar{display:none}
  #cardsGrid .card{min-width:82%;scroll-snap-align:center}
  #cardsGrid .card:hover{transform:none}
  .loadmore-wrap{margin-top:34px}
}
@media(max-width:640px){
  header{padding:18px 22px}
  header.scrolled{padding:12px 22px}
  .hero-inner,.sec{padding-left:22px;padding-right:22px}
  .search{width:calc(100% - 44px)}
  .search-body{grid-template-columns:1fr}
  .search-btn{grid-column:span 1}
  .grid,.realtors-grid{grid-template-columns:1fr}
  .sec{padding:80px 22px}
  .stat{padding:18px 22px}
  .ft-grid{grid-template-columns:1fr;gap:40px}
  .hero-watermark{font-size:30vh}
  .revs,.blog-grid{grid-template-columns:1fr}
  .faq-item .ans{padding-right:8px}
  .smart input{font-size:15px}
}
/* ============ HOT OFFERS: BW→COLOR ============ */
#cardsGrid .card-img img{filter:grayscale(.92) contrast(1.04);transition:transform 1.1s var(--ease),filter .9s var(--ease)}
#cardsGrid .card.inview .card-img img,#cardsGrid .card:hover .card-img img{filter:grayscale(0) contrast(1)}
/* ============ CITY MAP (Leaflet) ============ */
#mapBox{position:absolute;inset:0;background:#0b0e0c;z-index:1}
.leaflet-container{font:inherit;background:#0b0e0c}
.leaflet-control-attribution{background:rgba(10,13,10,.7)!important;color:rgba(255,255,255,.4)!important;font-size:9px!important}
.leaflet-control-attribution a{color:rgba(255,255,255,.5)!important}
.leaflet-bar a{background:#101310!important;color:#fff!important;border-color:rgba(255,255,255,.15)!important}
.leaflet-bar a:hover{background:#005C2B!important}
.leaflet-tooltip{background:rgba(10,13,10,.92);border:1px solid rgba(61,220,132,.45);color:#fff;font-family:'Roboto Condensed',sans-serif;font-size:12.5px;letter-spacing:.06em;border-radius:0;box-shadow:none;padding:6px 10px}
.leaflet-tooltip-top:before{border-top-color:rgba(61,220,132,.45)}
body.light .leaflet-container{background:#eef0e9}
body.light .leaflet-tooltip{background:rgba(255,255,255,.96);color:#16211a;border-color:rgba(0,92,43,.45)}
body.light .leaflet-tooltip-top:before{border-top-color:rgba(0,92,43,.45)}
body.light .leaflet-control-attribution{background:rgba(255,255,255,.75)!important;color:#7a837c!important}
body.light .leaflet-control-attribution a{color:#5d6a5f!important}
.ml-item.sub .n{font-size:13.5px;color:rgba(255,255,255,.42)}
.ml-item.sub .n em{font-style:normal;font-size:9.5px;letter-spacing:.14em;color:rgba(255,255,255,.3);text-transform:uppercase}
body.light .ml-item.sub .n{color:#8a948b}
/* ============ LIGHT THEME ============ */
body.light{--paper:#FAF7EF}
body.light .hero-overlay{background:linear-gradient(180deg,rgba(250,247,239,.86) 0%,rgba(250,247,239,.45) 42%,rgba(250,247,239,.92) 100%),radial-gradient(120% 90% at 70% 20%,rgba(0,92,43,.16),transparent 60%)}
body.light .hero-watermark{-webkit-text-stroke-color:rgba(0,92,43,.14)}
body.light .hero-tag span{color:#2c4a38}
body.light .hero h1{color:#0E3520}
body.light .hero h1 em{-webkit-text-stroke-color:#0E3520}
body.light .hero h1 .grn{color:var(--green)}
body.light .hero-sub{color:#42544a}
body.light .hero-tag .dot{background:var(--green);box-shadow:0 0 0 0 rgba(0,92,43,.4)}
@keyframes pulseDotL{70%{box-shadow:0 0 0 11px transparent}100%{box-shadow:0 0 0 0 transparent}}
body.light .search{--glass:rgba(255,255,255,.86)}
body.light .search-tabs{padding-left:6px}
body.light .stab{color:#42544a}
body.light .stab.active{background:var(--green);color:#fff}
body.light .search-body{background:rgba(16,30,20,.12);backdrop-filter:blur(18px)}
body.light .sfield{background:rgba(255,255,255,.88)}
body.light .sfield label{color:#7a837c}
body.light .sfield select{color:#16211a;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23005C2B'/%3E%3C/svg%3E")}
body.light .smart{background:rgba(255,255,255,.92);border-bottom:1px solid rgba(0,92,43,.12)}
body.light .smart input{color:#16211a}
body.light .smart input::placeholder{color:#9aa39b}
body.light .smart-hint{color:#9aa39b}
body.light .hero-stats{border-top:1px solid rgba(16,18,16,.12)}
body.light .stat{border-left:1px solid rgba(16,18,16,.12)}
body.light .stat b,body.light .stat b i{color:#0E3520}
body.light .stat span{color:#6d7a70}
body.light .marquee{background:#F1ECDD;border-block:1px solid rgba(16,18,16,.08)}
body.light .mq-group span{color:#5d6a5f}
body.light .mq-group span::after{background:var(--green)}
body.light .map-sec{background:#F3EFE2;color:var(--ink)}
body.light .map-sec::before{background:radial-gradient(circle,rgba(11,108,49,.14),transparent 65%)}
body.light .map-sec .sec-title{color:#0E3520}
body.light .map-sec .sec-title em{-webkit-text-stroke-color:#0E3520}
body.light .ml-item{border-bottom:1px solid rgba(16,18,16,.1)}
body.light .ml-item .n{color:#42544a}
body.light .ml-item:hover .n,body.light .ml-item.act .n{color:#0E3520}
body.light .ml-item .c{color:#8a948b}
body.light .map-list::-webkit-scrollbar-thumb{background:rgba(16,18,16,.15)}
body.light .map-citybar{border-bottom-color:rgba(16,18,16,.1)}
body.light .map-citybtn{border-color:rgba(16,18,16,.22);color:#5d6a5f}
body.light .map-citybtn:hover{border-color:var(--green);color:#0E3520}
body.light .map-citybtn.on{background:#0B6C31;border-color:#0B6C31;color:#fff}
body.light .map-panel{background:linear-gradient(rgba(0,92,43,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,92,43,.05) 1px,transparent 1px),radial-gradient(90% 120% at 30% 20%,#E9F2E9,#F7F5EC 75%);background-size:56px 56px,56px 56px,cover;border-color:rgba(16,18,16,.1)}
body.light .map-road{background:rgba(0,92,43,.08)}
body.light .map-river{background:linear-gradient(105deg,transparent 46%,rgba(0,92,43,.12) 47%,rgba(0,92,43,.12) 53%,transparent 54%)}
body.light .pin span{color:#16211a;background:rgba(255,255,255,.85)}
body.light .pin.act .pt{background:var(--green);box-shadow:0 0 16px rgba(0,92,43,.45)}
body.light .map-info{background:rgba(255,255,255,.92);border-color:rgba(16,18,16,.1)}
body.light .map-info p{color:#5d6a5f}
body.light .map-info a{color:var(--green)}
body.light .map-legend-note{color:#8a948b}
body.light .btn.ghost{box-shadow:inset 0 0 0 1px rgba(14,53,32,.3)}
body.light .sell{background:linear-gradient(118deg,#064D25,var(--green-mid) 58%,#0F8040)}
body.light footer{background:#0B4A24}
/* LIGHT HEADER */
body.light header{background:rgba(250,247,239,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(16,18,16,.08)}
body.light header.scrolled{background:rgba(250,247,239,.94)}
body.light .logo{color:#0E3520}
body.light .logo-txt span{color:#5d6a5f}
body.light nav.desktop a{color:#42544a}
body.light nav.desktop a.act,body.light nav.desktop a:hover{color:#0E3520}
body.light nav.desktop a.act::after,body.light nav.desktop a:hover::after{background:var(--green)}
body.light .hdr-phone{color:#0E3520}
body.light .burger i{background:#0E3520}
body.light .theme-btn{border-color:rgba(16,18,16,.28);color:#0E3520}
body.light .theme-btn:hover{border-color:var(--green);color:var(--green)}
.theme-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);color:#fff;transition:.3s;flex-shrink:0}
.theme-btn:hover{border-color:#3ddc84;color:#3ddc84}
.theme-btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.6}
.theme-btn .ic-sun{display:none}
body.light .theme-btn .ic-sun{display:block}
body.light .theme-btn .ic-moon{display:none}


/* ===== HOT SLIDER ===== */
.hot-wrap{position:relative}
#cardsGrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:24px;padding:4px 4px 20px;scrollbar-width:none;cursor:grab}
#cardsGrid::-webkit-scrollbar{display:none}
#cardsGrid.dragging{scroll-snap-type:none;cursor:grabbing}
#cardsGrid .card{min-width:370px;scroll-snap-align:start}
.hs-arrow{position:absolute;top:36%;z-index:6;width:54px;height:54px;border-radius:50%;background:var(--ink);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 14px 34px rgba(5,10,6,.35);transition:background .3s,opacity .3s,transform .3s}
.hs-arrow:hover{background:var(--green);transform:scale(1.06)}
.hs-arrow svg{width:20px;height:12px;stroke:#fff;fill:none}
.hs-arrow.prev{left:-12px}
.hs-arrow.next{right:-12px}
.hs-arrow.dim{opacity:.3;pointer-events:none}
@media(max-width:1024px){
  #cardsGrid .card{min-width:82%}
  .hs-arrow{display:none}
  .hot-wrap{margin:0 -22px;padding:0 22px}
}

/* ===== CATALOG PAGE ===== */

:root{
  --green:#005C2B;--green-deep:#043D1D;--green-mid:#0B6C31;
  --ink:#101210;--ink-soft:#5c5f5a;
  --paper:#F7F6F2;--white:#fff;
  --line-dark:rgba(255,255,255,.14);--line-light:rgba(16,18,16,.10);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Roboto',sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:var(--green);color:#fff}
::-webkit-scrollbar{width:9px}
::-webkit-scrollbar-track{background:#111311}
::-webkit-scrollbar-thumb{background:var(--green);border-radius:99px}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
input,select{font-family:'Roboto'}
h1,h2,h3,.cond{font-family:'Roboto Condensed',sans-serif;text-transform:uppercase;letter-spacing:.01em;font-weight:700;line-height:.95}

.noise{position:fixed;inset:-50%;z-index:9998;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:noiseShift .6s steps(4) infinite}
@keyframes noiseShift{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}100%{transform:translate(0,0)}}

.cursor,.cursor-dot{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;mix-blend-mode:difference;display:none}
@media(pointer:fine){.cursor,.cursor-dot{display:block}}
.cursor{width:38px;height:38px;border:1px solid rgba(255,255,255,.75);transition:transform .25s var(--ease);margin:-19px 0 0 -19px}
.cursor-dot{width:5px;height:5px;background:#fff;margin:-2.5px 0 0 -2.5px}
.cursor.grow{transform:scale(2.1);border-color:rgba(255,255,255,.4)}

/* HEADER */
header{position:fixed;top:0;left:0;right:0;z-index:900;padding:14px 48px;display:flex;align-items:center;justify-content:space-between;background:rgba(12,14,12,.72);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}
.logo{display:flex;align-items:center;gap:13px;color:#fff}
.logo svg{width:30px;height:46px;flex-shrink:0}
.logo-txt b{font-family:'Roboto Condensed';font-size:20px;font-weight:700;letter-spacing:.06em;display:block;line-height:1}
.logo-txt span{font-family:'Roboto Condensed';font-size:9px;letter-spacing:.42em;color:rgba(255,255,255,.65);text-transform:uppercase;display:block;margin-top:4px}
nav.desktop{display:flex;gap:38px}
nav.desktop a{font-family:'Roboto Condensed';font-size:13.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.82);position:relative;padding:4px 0}
nav.desktop a.act,nav.desktop a:hover{color:#fff}
nav.desktop a.act::after,nav.desktop a:hover::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:#3ddc84}
.hdr-right{display:flex;align-items:center;gap:22px}
.hdr-phone{font-family:'Roboto Condensed';font-size:15px;letter-spacing:.08em;color:#fff}
.btn{display:inline-flex;align-items:center;gap:12px;font-family:'Roboto Condensed';font-size:13.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:15px 28px;color:#fff;background:var(--green);clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);transition:.3s}
.btn:hover{background:#0b7437;letter-spacing:.26em}
.btn.ghost{background:transparent;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.dark{box-shadow:inset 0 0 0 1px rgba(16,18,16,.25);color:var(--ink)}
.burger{display:none;flex-direction:column;gap:6px;padding:8px}
.burger i{width:26px;height:1.5px;background:#fff}

/* PAGE HEAD */
.page-head{background:var(--ink);color:#fff;padding:150px 48px 56px;position:relative;overflow:hidden}
.page-head::before{content:'';position:absolute;right:-80px;top:-120px;font-family:'Roboto Condensed';font-weight:700;font-size:340px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.06);content:'24'}
.crumb{font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.5);display:flex;gap:12px;align-items:center;margin-bottom:22px}
.crumb a:hover{color:#3ddc84}
.crumb i{font-style:normal;color:rgba(255,255,255,.3)}
.page-head h1{font-size:clamp(38px,5vw,72px);color:#fff}
.page-head h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.4px #fff}
.page-sub{margin-top:16px;font-weight:300;font-size:15.5px;color:rgba(255,255,255,.65)}

/* LAYOUT */
.catalog{max-width:1560px;margin:0 auto;padding:48px;display:grid;grid-template-columns:300px 1fr;gap:44px;align-items:start}

/* SIDEBAR */
.sidebar{position:sticky;top:96px;background:#fff;border:1px solid var(--line-light);padding:28px 26px;max-height:calc(100vh - 130px);overflow-y:auto}
.f-group{padding:20px 0;border-bottom:1px solid var(--line-light)}
.f-group:first-child{padding-top:0}
.f-group:last-child{border-bottom:none;padding-bottom:0}
.f-title{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}
.f-title b{color:var(--green);font-weight:700}
.ck{display:flex;align-items:center;gap:12px;padding:7px 0;cursor:pointer;font-size:14.5px;color:var(--ink);user-select:none;transition:color .2s}
.ck:hover{color:var(--green)}
.ck input{display:none}
.ck .box{width:19px;height:19px;border:1px solid rgba(16,18,16,.28);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:.2s;clip-path:polygon(3px 0,100% 0,100% calc(100% - 3px),calc(100% - 3px) 100%,0 100%,0 3px)}
.ck .box svg{width:11px;height:11px;stroke:#fff;stroke-width:2.6;fill:none;opacity:0;transform:scale(.4);transition:.2s}
.ck input:checked+.box{background:var(--green);border-color:var(--green)}
.ck input:checked+.box svg{opacity:1;transform:scale(1)}
.ck .cnt{margin-left:auto;font-size:12px;color:#a9aca6}
.rooms{display:flex;gap:8px}
.rbtn{flex:1;padding:10px 0;border:1px solid var(--line-light);font-family:'Roboto Condensed';font-size:14px;letter-spacing:.06em;color:var(--ink-soft);transition:.25s;clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px)}
.rbtn:hover{border-color:var(--green);color:var(--green)}
.rbtn.on{background:var(--ink);border-color:var(--ink);color:#fff}
.range-row{display:flex;gap:10px}
.range-row .fld{flex:1;position:relative}
.fld input{width:100%;border:1px solid var(--line-light);background:var(--paper);padding:12px 14px;font-size:14px;outline:none;transition:border-color .25s}
.fld input:focus{border-color:var(--green)}
.fld span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:#a9aca6}
.f-reset{width:100%;margin-top:22px;text-align:center;font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);padding:13px;border:1px dashed rgba(16,18,16,.25);transition:.25s;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
.f-reset:hover{color:var(--green);border-color:var(--green)}

/* TOOLBAR */
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px;flex-wrap:wrap}
.found{font-size:14.5px;color:var(--ink-soft)}
.found b{font-family:'Roboto Condensed';color:var(--ink);font-size:17px}
.tools{display:flex;gap:10px;align-items:center}
.sort{position:relative}
.sort select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235c5f5a'/%3E%3C/svg%3E") no-repeat right 14px center;border:1px solid var(--line-light);padding:12px 38px 12px 16px;font-size:13.5px;outline:none;cursor:pointer;color:var(--ink)}
.views{display:flex;border:1px solid var(--line-light);background:#fff}
.vbtn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#a9aca6;transition:.25s}
.vbtn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.6}
.vbtn.on{background:var(--ink);color:#fff}
.mob-filter{display:none;font-family:'Roboto Condensed';font-size:13px;letter-spacing:.2em;text-transform:uppercase;padding:12px 20px;border:1px solid var(--line-light);background:#fff;align-items:center;gap:10px}

/* AI CHIPS + TOAST */
.ai-chips{display:none;flex-wrap:wrap;gap:8px;margin-bottom:20px;align-items:center}
.ai-chips .lbl{font-family:'Roboto Condensed';font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin-right:6px;display:flex;align-items:center;gap:8px}
.schip{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#062d15;background:#3ddc84;padding:6px 13px;clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);animation:chipIn .3s var(--ease)}
.schip.alt{background:rgba(0,92,43,.1);color:var(--green)}
@keyframes chipIn{from{opacity:0;transform:translateY(6px) scale(.9)}}
.toast{position:fixed;left:50%;bottom:34px;visibility:hidden;opacity:0;pointer-events:none;z-index:9500;background:var(--ink);color:#fff;padding:16px 26px;font-family:'Roboto Condensed';font-size:14px;letter-spacing:.12em;text-transform:uppercase;transition:opacity .4s var(--ease);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);display:flex;gap:12px;align-items:center}
.toast.show{visibility:visible;opacity:1;pointer-events:auto}
.toast i{width:8px;height:8px;background:#3ddc84;transform:rotate(45deg);font-style:normal}

/* GRID */
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.card{background:#fff;border:1px solid var(--line-light);position:relative;transition:transform .5s var(--ease),box-shadow .5s;will-change:transform}
.card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -22px rgba(10,20,12,.25)}
.card.hide{display:none}
.card-img{aspect-ratio:4/3;overflow:hidden;position:relative}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.card:hover .card-img img{transform:scale(1.09)}
.badge{position:absolute;top:14px;left:14px;z-index:3;background:var(--green);color:#fff;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:8px 14px;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}
.badge.gray{background:rgba(12,14,12,.72);backdrop-filter:blur(6px)}
.fav{position:absolute;top:12px;right:12px;z-index:3;width:40px;height:40px;background:rgba(12,14,12,.45);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:.3s}
.fav svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:1.6;transition:.25s}
.fav:hover svg{fill:#ff5a5a;stroke:#ff5a5a}
.card-diag{position:absolute;inset:auto 0 0 0;height:46%;z-index:2;background:linear-gradient(200deg,transparent 40%,rgba(6,10,7,.55));opacity:0;transition:opacity .5s;clip-path:polygon(0 100%,0 55%,100% 0,100% 100%)}
.card:hover .card-diag{opacity:1}
.price-float{position:absolute;bottom:16px;left:16px;z-index:3;font-family:'Roboto Condensed';font-size:22px;color:#fff;opacity:0;transform:translateY(10px);transition:.45s var(--ease) .05s}
.card:hover .price-float{opacity:1;transform:translateY(0)}
.card-body{padding:22px 24px 24px}
.card-meta{display:flex;gap:16px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px}
.card-meta b{color:var(--green);font-weight:500}
.card-title{font-family:'Roboto Condensed';font-size:19px;font-weight:400;line-height:1.35;text-transform:none;color:var(--ink);min-height:52px}
.card-foot{margin-top:16px;padding-top:16px;border-top:1px solid var(--line-light);display:flex;align-items:center;justify-content:space-between}
.card-price{font-family:'Roboto Condensed';font-size:23px;font-weight:700}
.card-price small{font-size:13px;color:var(--ink-soft);font-weight:400;margin-left:6px;letter-spacing:.06em}
.card-link{font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);display:inline-flex;align-items:center;gap:8px}
.card-link svg{transition:transform .35s var(--ease)}
.card:hover .card-link svg{transform:translateX(6px)}

/* LIST VIEW */
.grid.list{grid-template-columns:1fr}
.grid.list .card{display:grid;grid-template-columns:340px 1fr}
.grid.list .card-img{aspect-ratio:auto;min-height:100%}
.grid.list .card-title{min-height:0}
.grid.list .card-foot{border-top:none;padding-top:0;margin-top:auto}
.grid.list .card-body{display:flex;flex-direction:column;padding-bottom:26px}

/* LOAD MORE / PAGINATION */
.loadmore-wrap{display:flex;justify-content:center;margin-top:48px;gap:8px}
.pager{display:flex;gap:8px}
.pbtn{min-width:46px;height:46px;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:15px;background:#fff;border:1px solid var(--line-light);color:var(--ink-soft);transition:.25s;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
.pbtn:hover{border-color:var(--green);color:var(--green)}
.pbtn.on{background:var(--ink);border-color:var(--ink);color:#fff}
.empty{display:none;text-align:center;padding:80px 20px;color:var(--ink-soft)}
.empty h3{font-size:26px;color:var(--ink);margin-bottom:12px}

/* FOOTER */
footer{background:var(--ink);color:#fff;padding:90px 48px 0;overflow:hidden;margin-top:40px}
.ft-grid{max-width:1560px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:70px}
.ft-slogan{margin-top:26px;font-weight:300;font-size:15px;line-height:1.7;color:rgba(255,255,255,.6);max-width:360px}
.ft-h{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:22px}
.ft-col a,.ft-col span{display:block;font-size:14.5px;color:rgba(255,255,255,.78);padding:7px 0;transition:.3s}
.ft-col a:hover{color:#3ddc84;padding-left:6px}
.ft-word{font-family:'Roboto Condensed';font-weight:700;font-size:clamp(90px,17vw,270px);text-align:center;line-height:.78;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);user-select:none;transform:translateY(12%)}
.ft-bottom{border-top:1px solid var(--line-dark);padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:12.5px;color:rgba(255,255,255,.4);letter-spacing:.08em}

/* MOBILE DRAWER */
.backdrop{position:fixed;inset:0;background:rgba(8,10,8,.55);z-index:940;opacity:0;pointer-events:none;transition:.35s}
.drawer-open .backdrop{opacity:1;pointer-events:auto}
@media(max-width:1280px){
  nav.desktop{display:none}
  .catalog{grid-template-columns:1fr}
  .sidebar{position:fixed;left:0;top:0;bottom:0;z-index:950;width:min(340px,88vw);max-height:none;border-radius:0;transform:translateX(-105%);transition:transform .45s var(--ease);padding-top:80px}
  .drawer-open .sidebar{transform:translateX(0)}
  .mob-filter{display:inline-flex}
  .side-close{position:absolute;top:22px;right:22px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-light);color:var(--ink);font-size:18px}
  .grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){.grid,.grid.list{grid-template-columns:1fr}.grid.list .card{grid-template-columns:1fr}.grid.list .card-img{aspect-ratio:4/3}}
@media(max-width:640px){
  header,.page-head,footer{padding-left:22px;padding-right:22px}
  .catalog{padding:28px 22px}
  .hdr-phone{display:none}
  .ft-grid{grid-template-columns:1fr;gap:40px}
  .page-head::before{font-size:200px}
}
.side-close{display:none}
@media(max-width:1280px){.side-close{display:flex}}

/* ===== OBJECT PAGE ===== */

:root{
  --green:#005C2B;--green-deep:#043D1D;--green-mid:#0B6C31;
  --ink:#101210;--ink-soft:#5c5f5a;
  --paper:#F7F6F2;--white:#fff;
  --line-dark:rgba(255,255,255,.14);--line-light:rgba(16,18,16,.10);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Roboto',sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:var(--green);color:#fff}
::-webkit-scrollbar{width:9px}
::-webkit-scrollbar-track{background:#111311}
::-webkit-scrollbar-thumb{background:var(--green);border-radius:99px}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
h1,h2,h3,.cond{font-family:'Roboto Condensed',sans-serif;text-transform:uppercase;letter-spacing:.01em;font-weight:700;line-height:.95}

.noise{position:fixed;inset:-50%;z-index:9998;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:noiseShift .6s steps(4) infinite}
@keyframes noiseShift{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}100%{transform:translate(0,0)}}
.cursor,.cursor-dot{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;mix-blend-mode:difference;display:none}
@media(pointer:fine){.cursor,.cursor-dot{display:block}}
.cursor{width:38px;height:38px;border:1px solid rgba(255,255,255,.75);transition:transform .25s var(--ease);margin:-19px 0 0 -19px}
.cursor-dot{width:5px;height:5px;background:#fff;margin:-2.5px 0 0 -2.5px}
.cursor.grow{transform:scale(2.1)}

/* HEADER */
header{position:fixed;top:0;left:0;right:0;z-index:900;padding:14px 48px;display:flex;align-items:center;justify-content:space-between;background:rgba(12,14,12,.72);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}
.logo{display:flex;align-items:center;gap:13px;color:#fff}
.logo svg{width:30px;height:46px}
.logo-txt b{font-family:'Roboto Condensed';font-size:20px;letter-spacing:.06em;display:block;line-height:1}
.logo-txt span{font-family:'Roboto Condensed';font-size:9px;letter-spacing:.42em;color:rgba(255,255,255,.65);text-transform:uppercase;display:block;margin-top:4px}
nav.desktop{display:flex;gap:38px}
nav.desktop a{font-family:'Roboto Condensed';font-size:13.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.82);position:relative;padding:4px 0}
nav.desktop a.act,nav.desktop a:hover{color:#fff}
nav.desktop a.act::after,nav.desktop a:hover::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:#3ddc84}
.hdr-right{display:flex;align-items:center;gap:22px}
.hdr-phone{font-family:'Roboto Condensed';font-size:15px;letter-spacing:.08em;color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:'Roboto Condensed';font-size:13.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:16px 28px;color:#fff;background:var(--green);clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);transition:.3s}
.btn:hover{background:#0b7437;letter-spacing:.26em}
.btn.ghost{background:transparent;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.ghost.dark{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(16,18,16,.32)}
.btn.ghost.dark:hover{background:rgba(16,18,16,.06)}
.btn.ghost.dark{box-shadow:inset 0 0 0 1px rgba(16,18,16,.25);color:var(--ink)}
.btn.full{width:100%}
.burger{display:none;flex-direction:column;gap:6px;padding:8px}
.burger i{width:26px;height:1.5px;background:#fff}

/* PAGE TOP */
.crumb-wrap{background:var(--ink);padding:96px 48px 0}
.crumb{max-width:1560px;margin:0 auto;font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.5);display:flex;gap:12px;flex-wrap:wrap}
.crumb a:hover{color:#3ddc84}
.crumb i{font-style:normal;color:rgba(255,255,255,.3)}
.crumb span{color:rgba(255,255,255,.85)}

.obj-wrap{max-width:1560px;margin:0 auto;padding:34px 48px 100px;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:44px;align-items:start}
.obj-wrap>div,.obj-wrap>.side,.desc,.blk{min-width:0}

/* GALLERY */
.gal-main{position:relative;aspect-ratio:16/9.6;overflow:hidden;background:#0c0e0c;border-radius:2px}
.gslide{position:absolute;inset:0;opacity:0;transition:opacity .7s var(--ease)}
.gslide.on{opacity:1}
.gslide img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}
#dimLb{position:fixed;inset:0;z-index:3000;background:rgba(8,10,8,.93);display:none;align-items:center;justify-content:center;cursor:zoom-out}
#dimLb.on{display:flex}
#dimLb img{max-width:94vw;max-height:92vh;object-fit:contain;cursor:pointer}
#dimLb .x{position:absolute;top:18px;right:22px;width:44px;height:44px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;border-radius:0}
#dimLb .x:hover{background:#005C2B;border-color:#005C2B}
.g-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:52px;height:52px;background:rgba(10,12,10,.5);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:#fff;transition:.25s}
.g-nav:hover{background:var(--green)}
.g-nav.prev{left:18px}.g-nav.next{right:18px}
.g-nav svg{width:20px;height:12px;stroke:#fff;stroke-width:1.6;fill:none}
.g-count{position:absolute;right:18px;bottom:16px;z-index:5;font-family:'Roboto Condensed';font-size:13px;letter-spacing:.2em;color:#fff;background:rgba(10,12,10,.55);backdrop-filter:blur(8px);padding:8px 14px}
.g-fav{position:absolute;top:16px;right:16px;z-index:5;width:46px;height:46px;background:rgba(10,12,10,.5);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:.3s}
.g-fav svg{width:19px;height:19px;stroke:#fff;fill:none;stroke-width:1.6;transition:.25s}
.g-fav:hover svg,.g-fav.on svg{fill:#ff5a5a;stroke:#ff5a5a}
.g-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}
.g-thumbs button{aspect-ratio:16/10;overflow:hidden;opacity:.45;transition:.3s;outline:2px solid transparent}
.g-thumbs button.on{opacity:1;outline-color:var(--green)}
.g-thumbs img{width:100%;height:100%;object-fit:cover}

/* TITLE + FACTS */
.obj-title{margin-top:30px;font-size:clamp(28px,3.4vw,44px)}
.obj-loc{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--ink-soft);font-size:15px}
.obj-loc svg{width:15px;height:15px;stroke:var(--green);fill:none;stroke-width:1.6}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line-light);background:#fff;margin-top:26px}
.fact{padding:20px 24px;border-left:1px solid var(--line-light)}
.fact:first-child{border-left:none}
.fact b{font-family:'Roboto Condensed';font-size:26px;display:block}
.fact b small{font-size:14px;color:var(--ink-soft);font-weight:400;margin-left:4px}
.fact span{font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);display:block;margin-top:5px}

/* BLOCKS */
.blk{margin-top:52px}
.blk-h{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.blk-h .n{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;color:var(--green)}
.blk-h h2{font-size:26px}
.blk-h::after{content:'';flex:1;height:1px;background:var(--line-light)}
.desc{font-weight:300;font-size:16px;line-height:1.8;color:#33362f;max-width:820px}
.desc p+p{margin-top:14px}

/* CHARS */
.chars{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;background:#fff;border:1px solid var(--line-light);padding:10px 30px}
.ch{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:15px 0;border-bottom:1px dashed rgba(16,18,16,.12);font-size:15px}
.ch:nth-last-child(-n+2){border-bottom:none}
.ch span{color:var(--ink-soft)}
.ch b{font-weight:500;text-align:right}

/* MAP MINI */
.map-mini{position:relative;aspect-ratio:16/6.4;border:1px solid var(--line-light);overflow:hidden;background:
  linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
  radial-gradient(100% 140% at 30% 20%,#12251a,#0b0e0c 75%);
  background-size:52px 52px,52px 52px,cover}
.map-mini .road{position:absolute;background:rgba(255,255,255,.05)}
.map-mini .pin{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:9px}
.map-mini .pt{width:14px;height:14px;background:#3ddc84;transform:rotate(45deg);animation:pp 2.2s infinite}
@keyframes pp{0%{box-shadow:0 0 0 0 rgba(61,220,132,.45)}70%{box-shadow:0 0 0 16px transparent}100%{box-shadow:0 0 0 0 transparent}}
.map-mini .pin span{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#fff;background:rgba(10,13,10,.7);backdrop-filter:blur(6px);padding:6px 13px}
.map-note{position:absolute;left:18px;bottom:16px;color:rgba(255,255,255,.55);font-size:12.5px;letter-spacing:.04em}

/* SIMILAR */
.sim-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.card{background:#fff;border:1px solid var(--line-light);position:relative;transition:transform .5s var(--ease),box-shadow .5s}
.card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -22px rgba(10,20,12,.25)}
.card-img{aspect-ratio:4/3;overflow:hidden;position:relative}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.card:hover .card-img img{transform:scale(1.09)}
.badge{position:absolute;top:14px;left:14px;z-index:3;background:var(--green);color:#fff;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:8px 14px;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}
.card-body{padding:20px 22px 22px}
.card-meta{display:flex;gap:14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}
.card-meta b{color:var(--green);font-weight:500}
.card-title{font-family:'Roboto Condensed';font-size:18px;font-weight:400;line-height:1.35;text-transform:none;min-height:48px}
.card-foot{margin-top:14px;padding-top:14px;border-top:1px solid var(--line-light);display:flex;align-items:center;justify-content:space-between}
.card-price{font-family:'Roboto Condensed';font-size:21px}
.card-price small{font-size:12.5px;color:var(--ink-soft);font-weight:400;margin-left:6px}
.card-link{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--green)}

/* SIDEBAR */
.side{position:sticky;top:92px;display:flex;flex-direction:column;gap:20px}
.price-card{background:#fff;border:1px solid var(--line-light);padding:28px;clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%)}
.price-card .p{font-family:'Roboto Condensed';font-size:40px;font-weight:700}
.price-card .pm{color:var(--ink-soft);font-size:17px;font-weight:500;margin-top:6px}
.price-card .pm .pm-num{font-family:'Roboto Condensed';font-weight:700;color:var(--ink);font-size:22px}
body:not(.light) .price-card .pm .pm-num{color:#EDF1EA}
.cur-switch{display:flex;gap:8px;margin-top:14px}
.cur-switch a{width:40px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-light);font-family:'Roboto Condensed';font-size:17px;color:var(--ink-soft);text-decoration:none;transition:.25s;background:#fff}
.cur-switch a:hover{border-color:var(--green);color:var(--green)}
.cur-switch a.on{background:var(--green);border-color:var(--green);color:#fff}
.cur-switch-cat{margin-left:6px}
body:not(.light) .cur-switch a{background:#151815}
.price-card .upd{margin-top:14px;font-size:12.5px;color:#a9aca6;display:flex;gap:8px;align-items:center}
.price-card .upd i{width:7px;height:7px;border-radius:50%;background:#39d47f;display:inline-block}
.price-card .btns{margin-top:22px;display:flex;flex-direction:column;gap:10px}
.share-row{display:flex;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line-light)}
.share-row a{flex:1;text-align:center;font-family:'Roboto Condensed';font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--line-light);padding:10px 4px;transition:.25s}
.share-row a:hover{color:var(--green);border-color:var(--green)}
/* curator */
.curator{background:var(--ink);color:#fff;padding:26px;position:relative;overflow:hidden;clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%)}
.curator::before{content:'';position:absolute;right:-40px;top:-40px;width:180px;height:180px;background:linear-gradient(64deg,transparent 49.6%,rgba(255,255,255,.07) 50%);transform:rotate(8deg)}
.cur-top{display:flex;gap:16px;align-items:center;position:relative}
.cur-top img{width:72px;height:72px;object-fit:cover;outline:2px solid rgba(255,255,255,.2);outline-offset:3px}
.cur-role{display:inline-block;font-family:'Roboto Condensed';font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;background:var(--green);padding:6px 11px;margin-bottom:8px}
.cur-name{font-family:'Roboto Condensed';font-size:19px;font-weight:400}
.cur-exp{font-size:12px;color:rgba(255,255,255,.55);letter-spacing:.08em;margin-top:3px}
.cur-note{margin:18px 0;padding:14px 16px;background:rgba(255,255,255,.06);font-size:13.5px;line-height:1.6;color:rgba(255,255,255,.8);position:relative}
.cur-contacts{display:flex;flex-direction:column;gap:9px;position:relative}
.cur-contacts a{display:flex;align-items:center;gap:12px;font-family:'Roboto Condensed';font-size:16px;letter-spacing:.06em;color:#fff;padding:11px 14px;border:1px solid var(--line-dark);transition:.25s}
.cur-contacts a:hover{border-color:#3ddc84;color:#3ddc84}
.cur-contacts svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}
/* form */
.form-card{background:#fff;border:1px solid var(--line-light);padding:28px}
.form-card h3{font-size:20px;margin-bottom:6px}
.form-card .fs{font-size:13.5px;color:var(--ink-soft);margin-bottom:20px}
.fld{margin-bottom:12px}
.fld input,.fld textarea{width:100%;border:1px solid var(--line-light);background:var(--paper);padding:14px 16px;font-size:14.5px;outline:none;transition:border-color .25s;resize:vertical}
.fld input:focus,.fld textarea:focus{border-color:var(--green)}
.form-ok{display:none;text-align:center;padding:34px 10px}
.form-ok svg{width:52px;height:52px;stroke:var(--green);fill:none;stroke-width:1.4;margin:0 auto 16px}
.form-ok b{font-family:'Roboto Condensed';font-size:20px;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:8px}
.form-ok span{font-size:14px;color:var(--ink-soft)}

footer{background:var(--ink);color:#fff;padding:90px 48px 0;overflow:hidden;margin-top:60px}
.ft-grid{max-width:1560px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:70px}
.ft-slogan{margin-top:26px;font-weight:300;font-size:15px;line-height:1.7;color:rgba(255,255,255,.6);max-width:360px}
.ft-h{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:22px}
.ft-col a,.ft-col span{display:block;font-size:14.5px;color:rgba(255,255,255,.78);padding:7px 0;transition:.3s}
.ft-col a:hover{color:#3ddc84;padding-left:6px}
.ft-word{font-family:'Roboto Condensed';font-weight:700;font-size:clamp(90px,17vw,270px);text-align:center;line-height:.78;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);user-select:none;transform:translateY(12%)}
.ft-bottom{border-top:1px solid var(--line-dark);padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:12.5px;color:rgba(255,255,255,.4);letter-spacing:.08em}

@media(max-width:1280px){
  nav.desktop{display:none}
  .obj-wrap{grid-template-columns:1fr}
  .side{position:static;order:-1}
  .sim-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){.facts{grid-template-columns:repeat(2,1fr)}.fact:nth-child(3){border-left:none}.chars{grid-template-columns:1fr}.ch:nth-last-child(2){border-bottom:1px dashed rgba(16,18,16,.12)}.ch:last-child{border-bottom:none}.sim-grid{grid-template-columns:1fr}}
@media(max-width:640px){
  header,.crumb-wrap,.obj-wrap,footer{padding-left:22px;padding-right:22px}
  .hdr-phone{display:none}
  .g-thumbs{grid-template-columns:repeat(5,1fr);gap:6px}
  .ft-grid{grid-template-columns:1fr;gap:40px}
}

/* ===== EXTRA ===== */
.rev-ava{width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:18px;flex-shrink:0}
.real-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:90px;color:rgba(255,255,255,.85);background:linear-gradient(160deg,var(--green),var(--green-deep))}
.cur-fallback{width:72px;height:72px;border-radius:0;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:34px;font-weight:700;flex-shrink:0;outline:2px solid rgba(255,255,255,.2);outline-offset:3px}

/* ===== DROPDOWN MENU ===== */
nav.desktop .has-sub{position:relative}
nav.desktop .caret{margin-left:6px;opacity:.6;transition:transform .3s}
nav.desktop .has-sub:hover .caret{transform:rotate(180deg)}
.sub-menu{position:absolute;top:calc(100% + 14px);left:-20px;min-width:250px;background:rgba(14,17,14,.94);backdrop-filter:blur(18px);border:1px solid var(--line-dark);padding:12px 0;opacity:0;visibility:hidden;transform:translateY(12px);transition:.35s var(--ease);z-index:950;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%)}
.has-sub:hover .sub-menu,.has-sub:focus-within .sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.sub-menu .sub-head{padding:8px 24px 6px;font-family:'Roboto Condensed';font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.sub-menu a{display:block;padding:9px 24px;font-family:'Roboto Condensed';font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.78);transition:.25s}
.sub-menu a:hover{color:#3ddc84;background:rgba(255,255,255,.05);padding-left:30px}
body.light .sub-menu{background:rgba(250,247,239,.97);border-color:rgba(16,18,16,.1)}
body.light .sub-menu .sub-head{color:#9aa39b}
body.light .sub-menu a{color:#42544a}
body.light .sub-menu a:hover{color:var(--green);background:rgba(0,92,43,.06)}
/* ===== GLASS FILTER ===== */
.catalog-full{max-width:1560px;margin:0 auto;padding:34px 48px 100px}
.glass-filter{position:sticky;top:74px;z-index:60;background:rgba(252,251,248,.78);backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);border:1px solid rgba(16,18,16,.09);box-shadow:0 24px 54px -24px rgba(10,20,12,.3);padding:18px 22px 14px;margin-bottom:30px;clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%)}
.gf-row{display:flex;gap:18px;align-items:flex-end;flex-wrap:wrap}
.gf-field{display:flex;flex-direction:column;gap:7px}
.gf-field>label{font-family:'Roboto Condensed';font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft)}
.gf-field select,.gf-field .fld input{height:46px;border:1px solid rgba(16,18,16,.14);background:#fff;padding:0 14px;font-size:14px;outline:none;transition:border-color .25s;min-width:110px}
.gf-field select:focus,.gf-field .fld input:focus{border-color:var(--green)}
.gf-grow{flex:1;min-width:200px}
.gf-grow select{width:100%}
.range-row{display:flex;gap:8px}
.range-row .fld{flex:1;position:relative}
.range-row .fld input{width:100%}
.gf-actions .btn{height:46px;padding:0 28px}
.gf-more{display:none;gap:18px;align-items:flex-end;flex-wrap:wrap;padding-top:14px;margin-top:14px;border-top:1px dashed rgba(16,18,16,.12)}
.gf-more.open{display:flex}
.gf-toggle{margin-top:10px;font-family:'Roboto Condensed';font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);display:inline-flex;align-items:center;gap:8px;transition:.25s}
.gf-toggle:hover,.gf-toggle.open{color:var(--green)}
.gf-toggle svg{transition:transform .3s}
.gf-toggle.open svg{transform:rotate(180deg)}
.gf-reset{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);align-self:center;padding-bottom:14px}
.gf-reset:hover{color:var(--green)}
.rooms{display:flex;gap:8px}
#catGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
#catGrid.v2{grid-template-columns:repeat(2,minmax(0,1fr))}
#catGrid.vlist{display:flex;flex-direction:column;gap:22px}
#catGrid.vlist .card{display:grid;grid-template-columns:340px 1fr}
#catGrid.vlist .card-img{aspect-ratio:auto;min-height:230px}
#catGrid.vlist .card-title{min-height:0}
#catGrid.vlist .card-foot{border-top:none;padding-top:0;margin-top:auto}
#catGrid.vlist .card-body{display:flex;flex-direction:column;padding-bottom:26px}
.views{display:flex;border:1px solid var(--line-light);background:#fff}
.vbtn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#a9aca6;transition:.25s}
.vbtn.on{background:var(--ink);color:#fff}
@media(max-width:1280px){#catGrid,#catGrid.v2{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1024px){
  .glass-filter{position:static}
  .gf-row{flex-direction:column;align-items:stretch}
  .gf-field,.gf-grow{min-width:0}
  .gf-actions .btn{width:100%}
  #catGrid,#catGrid.v2{grid-template-columns:repeat(2,1fr)}
  .catalog-full{padding:24px 22px 80px}
}
@media(max-width:640px){
  #catGrid,#catGrid.v2{grid-template-columns:1fr}
  #catGrid.vlist .card{grid-template-columns:1fr}
  .catalog-full{padding:20px 22px 70px}
}
/* ===== EXTRA ===== */
.rev-ava{width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:18px;flex-shrink:0}
.real-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:90px;color:rgba(255,255,255,.85);background:linear-gradient(160deg,var(--green),var(--green-deep))}
.cur-fallback{width:72px;height:72px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Roboto Condensed';font-size:34px;font-weight:700;flex-shrink:0;outline:2px solid rgba(255,255,255,.2);outline-offset:3px}
/* ===== MENU POLISH + FILTER GRID ===== */
.sub-menu{min-width:300px;padding:16px 0}
.sub-menu .sub-head{padding:10px 28px 8px}
.sub-menu a{padding:11px 28px;font-size:13px;letter-spacing:.14em;line-height:1.4}
.sub-menu a::before{content:'';width:5px;height:5px;background:#3ddc84;transform:rotate(45deg) scale(0);transition:.25s;flex-shrink:0}
.sub-menu a:hover{padding-left:36px}
.sub-menu a:hover::before{transform:rotate(45deg) scale(1)}
nav.desktop .has-sub > a{display:inline-flex;align-items:center;gap:7px}
.gf-row{display:flex;gap:14px;align-items:end;flex-wrap:nowrap}
.gf-row .gf-toggle{height:48px;margin:0;align-self:end}
.gf-field,.gf-grow{gap:8px}
.gf-grow{flex:1 1 220px;min-width:200px}
.gf-rooms .rbtn{width:48px;height:48px;min-width:48px;padding:0;font-size:15px}
.gf-more{display:none;padding-top:16px;margin-top:6px;border-top:1px dashed rgba(16,18,16,.12)}
.gf-more.open{display:block}
.gf-more .gf-row{display:flex;flex-wrap:wrap}
.gf-more .gf-reset{height:48px;display:flex;align-items:center;padding:0 6px;margin:0 0 0 auto;border:none}
@media(max-width:1200px){.gf-row{flex-wrap:wrap}.gf-row .gf-field{flex:1 1 200px}}
@media(max-width:760px){.gf-row,.gf-more .gf-row{flex-direction:column;align-items:stretch}.gf-more .gf-reset{margin:6px 0 0}}
/* ===== DROPDOWN NARROW ===== */
.sub-menu{min-width:232px;padding:12px 0}
.sub-menu .sub-head{padding:9px 22px 6px}
.sub-menu a{padding:10px 22px;font-size:12.5px;letter-spacing:.12em}
.sub-menu a:hover{padding-left:28px}
/* ===== ADD OBJECT WIZARD ===== */
.ao-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:36px;align-items:start}
@media(max-width:1024px){.ao-grid{grid-template-columns:1fr}}
.ao-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.ao-tab{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:13px 22px;border:1px solid rgba(16,18,16,.14);background:#fff;color:var(--ink-soft);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:.25s}
.ao-tab:hover{border-color:var(--green);color:var(--green)}
.ao-tab.on{background:var(--green);border-color:var(--green);color:#fff}
.ao-form-body label,.ao-form-body .form-field label{display:block;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px}
.ao-form-body .wpcf7-form input[type=text],.ao-form-body .wpcf7-form input[type=tel],.ao-form-body .wpcf7-form input[type=email],.ao-form-body .wpcf7-form input[type=number],.ao-form-body .wpcf7-form select,.ao-form-body .wpcf7-form textarea{width:100%;height:48px;border:1px solid rgba(16,18,16,.14);background:#fff;padding:0 14px;font-size:14.5px;outline:none;margin-bottom:14px;font-family:'Roboto';transition:border-color .25s;border-radius:0}
.ao-form-body .wpcf7-form textarea{height:auto;padding:14px}
.ao-form-body .wpcf7-form input:focus,.ao-form-body .wpcf7-form select:focus,.ao-form-body .wpcf7-form textarea:focus{border-color:var(--green)}
.ao-form-body .wpcf7-form .wpcf7-submit{height:52px;width:100%;background:var(--green);color:#fff;border:none;font-family:'Roboto Condensed';font-size:14px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);transition:background .3s}
.ao-form-body .wpcf7-form .wpcf7-submit:hover{background:#0b7437}
.ao-form-body .wpcf7-form input[type=file]{border:1px dashed rgba(16,18,16,.25);background:var(--paper);padding:26px 14px;cursor:pointer}
.ao-form-body .wpcf7-form input[type=checkbox],.ao-form-body .wpcf7-form input[type=radio]{width:18px;height:18px;accent-color:var(--green);margin-right:8px}
.ao-form-body .wpcf7-form .wpcf7-list-item{margin-left:0}
.form-field-select-wrapper{display:block;width:100%;margin-bottom:14px}
.form-field-select-wrapper select{width:100%;height:48px;border:1px solid rgba(16,18,16,.14);background:#fff;padding:0 14px;font-size:14.5px;outline:none;border-radius:0}
.select2-container .select2-selection--single{height:48px;border:1px solid rgba(16,18,16,.14);border-radius:0}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:48px;padding:0 14px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:48px}
.select2-dropdown{border-radius:0;border-color:rgba(16,18,16,.14)}
/* ===== DROPDOWN v3 (balance + icons) ===== */
.sub-menu{min-width:252px;padding:14px 0}
.sub-menu .sub-head{padding:12px 26px 8px}
.sub-menu a{display:flex;align-items:center;gap:13px;padding:11px 26px 11px 20px;font-size:12.5px;letter-spacing:.13em}
.sub-menu a::before{content:'';width:6px;height:6px;background:var(--green-mid);transform:rotate(45deg);flex-shrink:0;opacity:.6;transition:.25s}
.sub-menu a:hover{padding-left:26px;color:#3ddc84}
.sub-menu a:hover::before{opacity:1;background:#3ddc84}
body.light .sub-menu a::before{background:var(--green)}
body.light .sub-menu a:hover::before{background:var(--green)}
/* ===== DROPDOWN v4 final ===== */
.sub-menu{min-width:264px;padding:16px 0 14px}
.sub-menu .sub-head{padding:6px 30px 12px;font-size:10px;letter-spacing:.32em;color:rgba(255,255,255,.35)}
.sub-menu a{display:flex;align-items:center;gap:14px;padding:11px 30px 11px 26px;font-size:12.5px;letter-spacing:.13em;color:rgba(255,255,255,.82);transition:padding .25s,color .25s,background .25s}
.sub-menu a::before{content:'';width:6px;height:6px;background:#3ddc84;transform:rotate(45deg);flex-shrink:0;opacity:.85;box-shadow:0 0 8px rgba(61,220,132,.45)}
.sub-menu a:hover{padding-left:34px;color:#fff;background:rgba(61,220,132,.07)}
.sub-menu a:hover::before{box-shadow:0 0 14px rgba(61,220,132,.9)}
body.light .sub-menu a{color:#42544a}
body.light .sub-menu a::before{background:var(--green);box-shadow:none;opacity:.7}
body.light .sub-menu a:hover{background:rgba(0,92,43,.06);color:var(--green)}
body.light .sub-menu a:hover::before{box-shadow:none;opacity:1}
body.light .sub-menu .sub-head{color:#9aa39b}
/* ===== LOGO THEME + SIZE ===== */
.logo-img{height:66px;width:auto;transition:filter .35s}
body:not(.light) .logo-img{filter:brightness(0) invert(1)}
footer .logo img{height:72px;width:auto;filter:brightness(0) invert(1)}
.pre-logo{filter:brightness(0) invert(1)}
body.light .pre-logo{filter:none}
.logo-txt b{font-size:25px}
.logo-txt span{font-size:10.5px;letter-spacing:.46em;margin-top:5px}
.logo{gap:16px}
/* ===== DROPDOWN v5 compact ===== */
.sub-menu{min-width:0;width:206px;padding:13px 0 11px}
.sub-menu .sub-head{padding:6px 14px 9px;font-size:9.5px}
.sub-menu a{padding:10px 14px 10px 11px;gap:11px;font-size:12px}
.sub-menu a:hover{padding-left:17px}
body.light .sub-menu{background:rgba(252,251,248,.97)}
/* ===== DROPDOWN v6 indent ===== */
.sub-menu a{padding:10px 14px 10px 16px;gap:12px}
.sub-menu a:hover{padding-left:22px}
.sub-menu .sub-head{padding:6px 16px 9px}
/* ===== REALTOR PHOTOS: без зеленого ===== */
.real-card::before{display:none}
.real-card::after{background:linear-gradient(0deg,rgba(5,8,6,.88) 0%,rgba(5,8,6,.25) 60%,transparent 100%)}
.r-photo::before{display:none}
.r-photo::after{background:linear-gradient(0deg,rgba(5,8,6,.55),transparent 55%)}
/* ===== REALTOR PAGE ===== */

/* ===== REALTOR PAGE ===== */

:root{
  --green:#005C2B;--green-deep:#043D1D;--green-mid:#0B6C31;
  --ink:#101210;--ink-soft:#5c5f5a;
  --paper:#F7F6F2;--white:#fff;
  --line-dark:rgba(255,255,255,.14);--line-light:rgba(16,18,16,.10);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Roboto',sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:var(--green);color:#fff}
::-webkit-scrollbar{width:9px}
::-webkit-scrollbar-track{background:#111311}
::-webkit-scrollbar-thumb{background:var(--green);border-radius:99px}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
h1,h2,h3,.cond{font-family:'Roboto Condensed',sans-serif;text-transform:uppercase;letter-spacing:.01em;font-weight:700;line-height:.95}

.noise{position:fixed;inset:-50%;z-index:9998;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:noiseShift .6s steps(4) infinite}
@keyframes noiseShift{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}100%{transform:translate(0,0)}}
.cursor,.cursor-dot{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;mix-blend-mode:difference;display:none}
@media(pointer:fine){.cursor,.cursor-dot{display:block}}
.cursor{width:38px;height:38px;border:1px solid rgba(255,255,255,.75);transition:transform .25s var(--ease);margin:-19px 0 0 -19px}
.cursor-dot{width:5px;height:5px;background:#fff;margin:-2.5px 0 0 -2.5px}
.cursor.grow{transform:scale(2.1)}

header{position:fixed;top:0;left:0;right:0;z-index:900;padding:14px 48px;display:flex;align-items:center;justify-content:space-between;background:rgba(12,14,12,.72);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}
.logo{display:flex;align-items:center;gap:13px;color:#fff}
.logo svg{width:30px;height:46px}
.logo-txt b{font-family:'Roboto Condensed';font-size:20px;letter-spacing:.06em;display:block;line-height:1}
.logo-txt span{font-family:'Roboto Condensed';font-size:9px;letter-spacing:.42em;color:rgba(255,255,255,.65);text-transform:uppercase;display:block;margin-top:4px}
nav.desktop{display:flex;gap:38px}
nav.desktop a{font-family:'Roboto Condensed';font-size:13.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.82);position:relative;padding:4px 0}
nav.desktop a.act,nav.desktop a:hover{color:#fff}
nav.desktop a.act::after,nav.desktop a:hover::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:#3ddc84}
.hdr-right{display:flex;align-items:center;gap:22px}
.hdr-phone{font-family:'Roboto Condensed';font-size:15px;letter-spacing:.08em;color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:'Roboto Condensed';font-size:13.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:16px 28px;color:#fff;background:var(--green);clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);transition:.3s}
.btn:hover{background:#0b7437;letter-spacing:.26em}
.btn.ghost{background:transparent;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.ghost.dark{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(16,18,16,.32)}
.btn.ghost.dark:hover{background:rgba(16,18,16,.06)}
.btn.full{width:100%}
.burger{display:none;flex-direction:column;gap:6px;padding:8px}
.burger i{width:26px;height:1.5px;background:#fff}

.crumb-wrap{background:var(--ink);padding:96px 48px 0}
.crumb{max-width:1560px;margin:0 auto;font-family:'Roboto Condensed';font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.5);display:flex;gap:12px}
.crumb a:hover{color:#3ddc84}
.crumb i{font-style:normal;color:rgba(255,255,255,.3)}
.crumb span{color:rgba(255,255,255,.85)}

/* HERO */
.r-hero{background:var(--ink);color:#fff;padding:44px 48px 84px;position:relative;overflow:hidden}
.r-hero::before{content:'';position:absolute;right:-60px;bottom:-80px;width:420px;height:420px;background:radial-gradient(circle,rgba(11,108,49,.35),transparent 65%)}
.r-grid{max-width:1560px;margin:0 auto;display:grid;grid-template-columns:380px 1fr;gap:64px;align-items:center;position:relative}
.r-photo{position:relative;aspect-ratio:3/3.6;overflow:hidden;clip-path:polygon(0 0,100% 0,100% calc(100% - 34px),calc(100% - 34px) 100%,0 100%)}
.r-photo img{width:100%;height:100%;object-fit:cover}
.r-photo::before{content:'';position:absolute;inset:0;background:linear-gradient(160deg,var(--green) 0%,rgba(4,61,29,.25) 45%,transparent 80%);mix-blend-mode:multiply;z-index:2}
.r-photo::after{content:'';position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(0deg,rgba(5,8,6,.55),transparent);z-index:2}
.r-badge{position:absolute;left:20px;bottom:20px;z-index:4;font-family:'Roboto Condensed';font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;background:var(--green);color:#fff;padding:9px 15px;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}
.r-role{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.34em;text-transform:uppercase;color:#7ee2a8;margin-bottom:18px;display:flex;align-items:center;gap:14px}
.r-role::before{content:'';width:34px;height:1px;background:#7ee2a8}
.r-name{font-size:clamp(38px,5vw,68px);color:#fff}
.r-slogan{margin-top:14px;font-weight:300;font-size:17px;color:rgba(255,255,255,.7)}
.r-contacts{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.r-stats{max-width:1560px;margin:44px auto 0;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line-dark);position:relative}
.rstat{padding:24px 30px;border-left:1px solid var(--line-dark);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.rstat:first-child{border-left:none}
.rstat b{font-family:'Roboto Condensed';font-size:clamp(26px,2.6vw,36px);display:block}
.rstat b i{font-style:normal;color:#3ddc84}
.rstat span{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.5);display:block;margin-top:5px}
/* сертифікат АФНУ та відгук Google у статистиці рієлтора */
.rstat-cert{gap:12px}
.rstat-cert img{width:100%;max-width:110px;height:auto;max-height:84px;object-fit:contain;background:transparent;border:0;padding:0}
.rstat-cert img{content:url('/wp-content/themes/dim24/assets/img/afnu-color.png')}
.rstat-cert span{margin-top:0}
.rstat-review{justify-content:center}
.rstat-review a{display:inline-flex;flex-direction:column;align-items:center;gap:5px;font-family:'Roboto Condensed';font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:#3ddc84;border:1px solid rgba(61,220,132,.4);padding:12px 18px;transition:.25s}
.rstat-review a:hover{background:rgba(61,220,132,.1);border-color:#3ddc84}
.rstat-review a span{font-size:10px;letter-spacing:.2em;color:rgba(255,255,255,.55);margin:0}

/* BODY */
.r-body{max-width:1560px;margin:0 auto;padding:70px 48px 100px;display:grid;grid-template-columns:1fr 380px;gap:56px;align-items:start}
.blk-h{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.blk-h .n{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;color:var(--green)}
.blk-h h2{font-size:26px}
.blk-h::after{content:'';flex:1;height:1px;background:var(--line-light)}
.about{font-weight:300;font-size:16px;line-height:1.8;color:#33362f;max-width:820px}
.about p+p{margin-top:14px}
.spec-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.spec-chips span{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:10px 18px;border:1px solid var(--line-light);background:#fff;color:var(--ink-soft);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}

/* REVIEWS */
.revs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.rev{background:#fff;border:1px solid var(--line-light);padding:26px}
.rev .stars{color:var(--green);letter-spacing:4px;font-size:14px;margin-bottom:14px}
.rev p{font-size:14.5px;line-height:1.7;color:#33362f;font-weight:300}
.rev .who{margin-top:18px;padding-top:16px;border-top:1px solid var(--line-light);display:flex;align-items:center;gap:12px}
.rev .who b{font-family:'Roboto Condensed';font-size:15px;font-weight:400}
.rev .who span{display:block;font-size:11.5px;color:#a9aca6;letter-spacing:.1em}
.rev .ava{width:40px;height:40px;border-radius:50%;object-fit:cover}

/* LISTINGS */
.listings{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.card{background:#fff;border:1px solid var(--line-light);position:relative;transition:transform .5s var(--ease),box-shadow .5s}
.card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -22px rgba(10,20,12,.25)}
.card-img{aspect-ratio:4/3;overflow:hidden;position:relative}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.card:hover .card-img img{transform:scale(1.09)}
.badge{position:absolute;top:14px;left:14px;z-index:3;background:var(--green);color:#fff;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:8px 14px;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}
.card-body{padding:20px 22px 22px}
.card-meta{display:flex;gap:14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}
.card-meta b{color:var(--green);font-weight:500}
.card-title{font-family:'Roboto Condensed';font-size:18px;font-weight:400;line-height:1.35;text-transform:none;min-height:48px}
.card-foot{margin-top:14px;padding-top:14px;border-top:1px solid var(--line-light);display:flex;align-items:center;justify-content:space-between}
.card-price{font-family:'Roboto Condensed';font-size:21px}
.card-price small{font-size:12.5px;color:var(--ink-soft);font-weight:400;margin-left:6px}
.card-link{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--green)}
.all-obj{display:flex;justify-content:center;margin-top:40px}

/* SIDEBAR */
.side{position:sticky;top:92px;display:flex;flex-direction:column;gap:20px}
.c-card{background:var(--ink);color:#fff;padding:28px;clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);position:relative;overflow:hidden}
.c-card::before{content:'';position:absolute;right:-40px;top:-40px;width:200px;height:200px;background:linear-gradient(64deg,transparent 49.6%,rgba(255,255,255,.07) 50%);transform:rotate(8deg)}
.c-card h3{font-size:20px;margin-bottom:8px;position:relative}
.c-card .cs{font-size:13.5px;color:rgba(255,255,255,.6);margin-bottom:20px;position:relative}
.c-card .btns{display:flex;flex-direction:column;gap:10px;position:relative}
.c-note{background:#fff;border:1px solid var(--line-light);padding:24px 26px;font-size:14px;line-height:1.7;color:var(--ink-soft)}
.c-note b{color:var(--ink);font-family:'Roboto Condensed';font-weight:400;font-size:16px;display:block;margin-bottom:8px;text-transform:none}
.c-note .grn{color:var(--green);font-weight:500}

/* FORM */
.form-card{background:#fff;border:1px solid var(--line-light);padding:28px}
.form-card h3{font-size:20px;margin-bottom:6px}
.form-card .fs{font-size:13.5px;color:var(--ink-soft);margin-bottom:20px}
.fld{margin-bottom:12px}
.fld input,.fld textarea{width:100%;border:1px solid var(--line-light);background:var(--paper);padding:14px 16px;font-size:14.5px;outline:none;transition:border-color .25s;resize:vertical}
.fld input:focus,.fld textarea:focus{border-color:var(--green)}
.form-ok{display:none;text-align:center;padding:34px 10px}
.form-ok svg{width:52px;height:52px;stroke:var(--green);fill:none;stroke-width:1.4;margin:0 auto 16px}
.form-ok b{font-family:'Roboto Condensed';font-size:20px;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:8px}
.form-ok span{font-size:14px;color:var(--ink-soft)}

footer{background:var(--ink);color:#fff;padding:90px 48px 0;overflow:hidden;margin-top:60px}
.ft-grid{max-width:1560px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:70px}
.ft-slogan{margin-top:26px;font-weight:300;font-size:15px;line-height:1.7;color:rgba(255,255,255,.6);max-width:360px}
.ft-h{font-family:'Roboto Condensed';font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:22px}
.ft-col a,.ft-col span{display:block;font-size:14.5px;color:rgba(255,255,255,.78);padding:7px 0;transition:.3s}
.ft-col a:hover{color:#3ddc84;padding-left:6px}
.ft-word{font-family:'Roboto Condensed';font-weight:700;font-size:clamp(90px,17vw,270px);text-align:center;line-height:.78;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);user-select:none;transform:translateY(12%)}
.ft-bottom{border-top:1px solid var(--line-dark);padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:12.5px;color:rgba(255,255,255,.4);letter-spacing:.08em}

@media(max-width:1280px){
  nav.desktop{display:none}
  .r-grid{grid-template-columns:1fr;gap:36px}
  .r-photo{max-width:380px}
  .r-stats{grid-template-columns:repeat(2,1fr)}
  .rstat:nth-child(3){border-left:none}
  .rstat{border-top:1px solid var(--line-dark)}
  .rstat:nth-child(-n+2){border-top:none}
  .r-body{grid-template-columns:1fr}
  .side{position:static}
  .listings,.revs{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){.listings,.revs{grid-template-columns:1fr}}
@media(max-width:640px){
  header,.crumb-wrap,.r-hero,.r-body,footer{padding-left:22px;padding-right:22px}
  .hdr-phone{display:none}
  .ft-grid{grid-template-columns:1fr;gap:40px}
  .r-stats{grid-template-columns:1fr}
  .rstat{border-left:none}
  .rstat:nth-child(2){border-top:1px solid var(--line-dark)}
}

/* ===== FILTER ALIGN v2 ===== */
.gf-row{align-items:end}
.gf-field{display:flex;flex-direction:column;justify-content:flex-end;gap:8px}
.gf-field>label{height:15px;line-height:15px;margin:0 0 0 2px;flex-shrink:0}
.gf-rooms .rooms,.gf-field .range-row{height:48px}
.gf-rooms .rbtn{height:48px;line-height:46px}
.gf-field select{height:48px}
/* ===== LOGO PLATE + EXCL BADGE ===== */
.logo-plate{display:inline-flex;flex-direction:column;gap:4px;background:var(--ink);color:#fff;padding:11px 20px 12px 16px;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);text-align:left;transition:filter .35s,background .35s}
.lp-name{font-family:'Roboto Condensed';font-weight:700;font-size:25px;line-height:1;letter-spacing:.03em}
.lp-name b{color:#3ddc84;font-weight:700}
.lp-desc{font-family:'Roboto Condensed';font-size:9.5px;letter-spacing:.36em;text-transform:uppercase;opacity:.6;white-space:nowrap}
body:not(.light) .logo-plate{background:#fff;color:var(--ink)}
body:not(.light) .lp-name b{color:var(--green)}
footer .logo-plate{padding:14px 26px 15px 20px}
footer .lp-name{font-size:30px}
footer .lp-desc{font-size:11px}
.badge-excl{position:absolute;top:14px;left:14px;z-index:3;background:#fff;color:var(--green);font-family:'Roboto Condensed';font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:8px 13px;border:1px solid var(--green);clip-path:polygon(5px 0,100% 0,100% 100%,0 100%,0 5px)}
/* ===== LOGO: mark + text ===== */
.logo{display:inline-flex;align-items:center;gap:14px}
.logo-mark{height:58px;width:auto;transition:filter .35s}
.logo-text{height:62px;width:auto;transition:filter .35s}
body:not(.light) .logo-mark{filter:brightness(0) invert(1)}
body:not(.light) .logo-text{filter:brightness(0) invert(1)}
footer .logo{gap:16px}
footer .logo-mark{height:64px}
footer .logo-text{height:72px}

/* ===== DIM24 FIXES 2026-08: квіз, слайдер мініфото, код об'єкта, реальна міні-карта ===== */

/* --- Код об'єкта біля ціни --- */
.obj-code{display:flex;justify-content:space-between;align-items:baseline;gap:10px;background:rgba(0,92,43,.08);border-left:4px solid var(--green);padding:12px 16px;margin-bottom:16px}
.obj-code b{font-family:'Roboto Condensed';font-size:15px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#005C2B}
.obj-code span{font-family:'Roboto Condensed';font-size:26px;font-weight:700;color:#005C2B;letter-spacing:.04em;line-height:1}
body:not(.light) .obj-code{background:rgba(61,220,132,.08);border-left-color:#3ddc84}
body:not(.light) .obj-code b,body:not(.light) .obj-code span{color:#3ddc84}

/* --- Міні-слайдер фото в картках списків --- */
a.card-body{color:inherit;text-decoration:none;display:flex;flex-direction:column;cursor:pointer}
.card-slider{overflow:hidden}
.cs-track{position:absolute;inset:0}
.cs-track img{width:100%;height:100%;object-fit:cover;display:block}
.cs-track img.cs-hid{display:none}
.cs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:30px;height:30px;border:0;background:rgba(10,12,10,.55);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;cursor:pointer;transition:.2s;padding:0}
.cs-arrow.prev{left:8px}.cs-arrow.next{right:8px}
.cs-arrow:hover{background:var(--green)}
.card-slider:hover .cs-arrow,.cs-arrow:focus-visible{display:flex}
.cs-dots{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);z-index:4;display:flex;gap:5px}
.cs-dots i{width:6px;height:6px;background:rgba(255,255,255,.45);transform:rotate(45deg);transition:.25s;cursor:pointer}
.cs-dots i.on{background:#fff}

#catGrid .card-img{aspect-ratio:16/11}
@media(max-width:900px){.card-slider:hover .cs-arrow{display:none}}
.g-thumbs{display:flex!important;grid-template-columns:none!important;gap:10px;margin-top:10px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:var(--green) transparent}
.g-thumbs button{flex:0 0 auto;width:132px;aspect-ratio:16/10;scroll-snap-align:start;border:0;padding:0;background:#000}
.g-thumbs::-webkit-scrollbar{height:5px}
.g-thumbs::-webkit-scrollbar-thumb{background:var(--green)}
@media(max-width:1024px){.g-thumbs button{width:96px}.g-thumbs{grid-template-columns:none}}

/* --- Реальна міні-карта локації в картці об'єкта --- */
.map-mini-real{position:relative}
#objMap{position:absolute;inset:0;z-index:1}
.leaflet-container{background:#0b0e0c;font:inherit}
.map-mini-real .map-note{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:500;font-family:'Roboto Condensed';font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(10,13,10,.75);backdrop-filter:blur(6px);padding:7px 14px;white-space:nowrap}

/* --- Квіз «Продати / Здати» --- */
.quiz{max-width:100%}
.quiz-head{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.quiz-step{font-family:'Roboto Condensed';font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#6b7a70;white-space:nowrap}
body:not(.light) .quiz-step{color:rgba(255,255,255,.55)}
.quiz-bar{flex:1;height:3px;background:rgba(16,18,16,.08);position:relative;overflow:hidden}
body:not(.light) .quiz-bar{background:rgba(255,255,255,.1)}
.quiz-bar i{display:block;height:100%;background:var(--green);transition:width .45s var(--ease)}
.quiz-q{display:none}
.quiz-q.on{display:block;animation:quizIn .45s var(--ease)}
@keyframes quizIn{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}
.quiz-title{font-family:'Roboto Condensed';font-size:clamp(20px,2.6vw,28px);text-transform:uppercase;letter-spacing:.03em;margin:8px 0 20px}
.quiz-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.quiz-card{text-align:left;background:rgba(0,92,43,.04);border:1px solid var(--line-light);padding:20px 18px;cursor:pointer;transition:.25s;font-family:inherit}
.quiz-card b{display:block;font-family:'Roboto Condensed';font-size:17px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.quiz-card span{font-size:12.5px;color:var(--ink-soft);font-weight:300;line-height:1.45;display:block}
.quiz-card:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,92,43,.12)}
.quiz-card:hover b{color:var(--green)}
.quiz-param{margin-bottom:20px}
.quiz-param label{display:block;font-family:'Roboto Condensed';font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#6b7a70;margin-bottom:9px}
.quiz-param label em{text-transform:none;letter-spacing:0;font-style:normal;color:#98a29a}
body:not(.light) .quiz-param label{color:rgba(255,255,255,.55)}
.quiz-chips{display:flex;gap:9px;flex-wrap:wrap}
.qchip{font-family:'Roboto Condensed';font-size:14.5px;padding:11px 20px;border:1px solid var(--line-light);background:transparent;cursor:pointer;transition:.22s;letter-spacing:.03em}
.qchip:hover{border-color:var(--green)}
.qchip.on{background:var(--green);border-color:var(--green);color:#fff}
.quiz-param select,.quiz-field input,.quiz-field textarea{width:100%;border:1px solid var(--line-light);background:transparent;padding:13px 15px;font:inherit;font-size:14.5px;outline:none;transition:border-color .25s}
.quiz-param select:focus,.quiz-field input:focus,.quiz-field textarea:focus{border-color:var(--green)}
.quiz-field{margin-bottom:12px}
.quiz-err{color:#c0392b;font-size:13px;min-height:19px;margin:2px 0 8px}
.quiz-send,#quizSend{margin-top:8px}
#quizSend[disabled]{cursor:wait}
.quiz-privacy{font-size:11.5px;color:#98a29a;margin-top:12px;line-height:1.5}
.quiz-done{text-align:center;padding:34px 0 10px}
.quiz-nav{margin-top:18px}
.quiz-back{background:none;border:0;font:inherit;font-size:13.5px;color:#6b7a70;cursor:pointer;padding:6px 0;letter-spacing:.04em}
.quiz-back:hover{color:var(--green)}
body:not(.light) .quiz-back{color:rgba(255,255,255,.5)}
@media(max-width:1024px){.quiz-cards{grid-template-columns:repeat(2,1fr)}}


/* ===== DIM24 FIX: гарячі пропозиції — рівномірна сітка-слайдер ===== */
#cardsGrid .card{flex:0 0 calc(25% - 18px);width:auto;min-width:0;display:flex;flex-direction:column}
#cardsGrid .card-body{flex:1;display:flex;flex-direction:column}
#cardsGrid .card-title{min-height:52px}
#cardsGrid .card-foot{margin-top:auto}
@media(max-width:1440px){#cardsGrid .card{flex-basis:calc(33.333% - 16px)}}
@media(max-width:1100px){#cardsGrid .card{flex-basis:calc(50% - 12px)}}
@media(max-width:1024px){#cardsGrid .card{flex:0 0 82%;min-width:82%}}


/* ===== DARK THEME: внутрішні сторінки (дефолт без .light) =====
   Головна має власні темні секції; тут покриваємо каталог, картку,
   рієлторів, майстер-форми. Бекап попереднього стану:
   assets/css/dim24.backup-2026-08-27.css */

body:not(.light){
  --paper:#0E110E;
  --ink-soft:#A9B3AA;
  --line-light:rgba(255,255,255,.13);
}
body:not(.light){background:#0E110E;color:#EDF1EA}
body:not(.light) select option{background:#161916;color:#EDF1EA}

/* --- surfaces --- */
body:not(.light) .card,
body:not(.light) .facts,
body:not(.light) .price-card,
body:not(.light) .chars,
body:not(.light) .rev,
body:not(.light) .bcard,
body:not(.light) .form-card,
body:not(.light) .c-note,
body:not(.light) .sidebar{background:#141714;border-color:rgba(255,255,255,.10)}
.ct-mail{color:var(--green);font-size:16px}
body:not(.light) .ct-mail{color:#3ddc84}
body:not(.light) .c-note b{color:#EDF1EA}
body:not(.light) .c-note .ct-mail{color:#3ddc84}
body:not(.light) .c-note svg{stroke:#3ddc84}

body:not(.light) .card:hover{box-shadow:0 22px 46px rgba(0,0,0,.5)}
body:not(.light) .card-title{color:#EDF1EA}
body:not(.light) .desc{color:#C9D2CA}
body:not(.light) .g-thumbs button{background:#000}
body:not(.light) .cs-track img{opacity:1}
body:not(.light) .badge-excl{border-color:rgba(61,220,132,.35)}
body:not(.light) .cur-switch a{background:#151815}
body:not(.light) .obj-code{background:rgba(61,220,132,.08);border-left-color:#3ddc84}
body:not(.light) .obj-code b,body:not(.light) .obj-code span{color:#3ddc84}
body:not(.light) .upd,body:not(.light) .cur-top + .cur-note{color:#98a29a}

/* --- glass filter & sort controls --- */
body:not(.light) .glass-filter{background:rgba(14,17,14,.84);border-color:rgba(255,255,255,.12);box-shadow:0 24px 54px -24px rgba(0,0,0,.65)}
body:not(.light) .gf-field>label{color:#8a948b}
body:not(.light) .gf-field select,
body:not(.light) .gf-field .fld input,
body:not(.light) .sort select,
body:not(.light) .sfield select,
body:not(.light) .sfield input,
body:not(.light) .form-field-select-wrapper select,
body:not(.light) .ao-form-body .wpcf7-form input[type=text],
body:not(.light) .ao-form-body .wpcf7-form input[type=tel],
body:not(.light) .ao-form-body .wpcf7-form input[type=email],
body:not(.light) .ao-form-body .wpcf7-form textarea,
body:not(.light) .quiz-param select,
body:not(.light) .quiz-field input,
body:not(.light) .quiz-field textarea{background:#151815;color:#EDF1EA;border-color:rgba(255,255,255,.15)}
body:not(.light) .gf-field select:focus,
body:not(.light) .gf-field .fld input:focus,
body:not(.light) .sort select:focus,
body:not(.light) .quiz-param select:focus,
body:not(.light) .quiz-field input:focus,
body:not(.light) .quiz-field textarea:focus{border-color:#3ddc84}
body:not(.light) .gf-toggle,body:not(.light) .gf-reset{color:#8a948b}
body:not(.light) .rooms button,
body:not(.light) .room-chip{color:#cfd6cf;border-color:rgba(255,255,255,.18)}

/* --- views switcher & pagination --- */
body:not(.light) .views{background:transparent}
body:not(.light) .vbtn{color:#8a948b}
body:not(.light) .vbtn.on{background:#005C2B;color:#fff}
body:not(.light) .pbtn{color:#aeb8ae}
body:not(.light) .pbtn.on{background:#005C2B;border-color:#005C2B;color:#fff}

/* --- team / realtors --- */
body:not(.light) .real-card,
body:not(.light) .realtor-card{background:#141714;border-color:rgba(255,255,255,.10)}
body:not(.light) .spec-chips span{background:transparent;border-color:rgba(255,255,255,.16);color:#cfd6cf}

/* --- news/blog singles --- */
body:not(.light) article.post-card,
body:not(.light) .post-card,
body:not(.light) .news-card{background:#141714;border-color:rgba(255,255,255,.10)}

/* --- головна: секції з хардкодженим білим фоном у темній темі --- */
body:not(.light) .faq-sec{background:#121511;border-color:rgba(255,255,255,.10)}
body:not(.light) .rev p{color:#C9D2CA}
body:not(.light) .rev .who b{color:#EDF1EA}
body:not(.light) .revs-section .sec-title{color:#EDF1EA}

/* --- сторінка «Продати/Здати»: праві підказки (.steps верстані під тьмяний фон) --- */
body.light.page-template-page-add-object .step{border-bottom-color:rgba(16,18,16,.12)}
body.light.page-template-page-add-object .step .sn{-webkit-text-stroke-color:rgba(16,18,16,.55)}
body.light.page-template-page-add-object .step b{color:#1d2a20}
body.light.page-template-page-add-object .step span{color:#5c6a5f}
body.light.page-template-page-add-object .quiz-title{color:#14201a}
body.light.page-template-page-add-object .quiz-step,body.light.page-template-page-add-object .quiz-privacy{color:#8a948b}
body.light .quiz-card:hover{border-color:var(--green)}
body.light.page-template-page-add-object .ao-grid > div:first-child .quiz-param label em{color:#98a29a}

/* --- квіз «Продати/Здати» у темній темі: написи та картки --- */
body:not(.light) .quiz-title,
body:not(.light) .quiz-card b,
body:not(.light) .quiz-card span,
body:not(.light) .quiz-param label,
body:not(.light) .quiz-field label,
body:not(.light) .quiz-q > p{color:#EDF1EA!important}
body:not(.light) .quiz-card span{color:#A9B3AA!important}
body:not(.light) .qchip{color:#EDF1EA!important}
body:not(.light) .qchip.on{color:#fff!important}
body:not(.light) .quiz-param label em{color:#98a29a}
body:not(.light) .quiz-card{background:rgba(61,220,132,.05);border-color:rgba(255,255,255,.14)}
body:not(.light) .quiz-card:hover{border-color:#3ddc84;box-shadow:0 12px 28px rgba(0,0,0,.45)}
body:not(.light) .quiz-card:hover b{color:#3ddc84}
body:not(.light) .quiz-privacy,body:not(.light) .quiz-step{color:#8a948b}
body:not(.light) .quiz-bar{background:rgba(255,255,255,.12)}
body:not(.light) .quiz-back{color:#8a948b}

/* ===== MOBILE POLISH (тільки ≤760px, десктоп не чіпаємо) ===== */
@media(max-width:760px){
  /* загальні захисти від гортання по горизонталі */
  body{overflow-x:hidden}
  .obj-wrap>div,.obj-wrap>.side,.curator,.price-card,.form-card,.c-note,.chars,.facts,.blk,.desc,.card{min-width:0;max-width:100%}
  .cur-contacts{display:flex;flex-direction:column;gap:10px;align-items:stretch}
  .cur-contacts a{justify-content:flex-start;word-break:break-word}
  .obj-title{font-size:clamp(24px,7vw,34px);word-break:break-word}
  .chars{padding:8px 18px}
  .ch{gap:12px;padding:12px 0;font-size:13.5px}
  .ch b{text-align:right;flex-shrink:0;max-width:55%}
  .facts{grid-template-columns:repeat(2,1fr)!important}
  .fact{padding:14px 16px}
  .fact b{font-size:20px}
  .price-card .p{font-size:30px}
  .pm,.price-card .pm{font-size:15px}
  .pm-num{font-size:19px}
  .obj-code b{font-size:20px}
  .quiz-photo{padding:26px 16px}
  .map-sec .sec-head p{max-width:100%}
  .sec{padding-left:20px;padding-right:20px}
  header{padding-left:20px;padding-right:20px}
  .obj-wrap,.catalog-full{padding-left:20px;padding-right:20px}
}

.btn-sell-short{display:none}
/* ===== MOBILE: головна (десктоп не чіпаємо) ===== */
@media(max-width:760px){
  /* лого менше — не налазить на theme-btn */
  .logo{gap:8px}
  .logo-mark{height:34px}
  .logo-text{height:38px}
  header{padding-top:14px;padding-bottom:14px;gap:12px}
  .hdr-right{gap:8px}
  header .btn{padding:11px 14px;font-size:11px}
  .btn-sell-full{display:none}
  .btn-sell-short{display:inline}
  header .hdr-right .btn{display:none}
  /* map-info — мінімізований, не перекриває карту */
  .map-info{left:10px;right:10px;bottom:10px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
  .map-info h4{margin-bottom:0;font-size:15px}
  .map-info p{display:none}
  .map-info a{font-size:11px}
  /* чіпи фільтра пропозицій — компактні, горизонтальний скрол */
  .chips{flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .chips::-webkit-scrollbar{display:none}
  .chip{padding:9px 15px;font-size:11.5px;white-space:nowrap;flex:0 0 auto}
  /* секції — менше вертикального простору */
  .sec{padding-top:56px;padding-bottom:56px}
  .sec-head{margin-bottom:26px}
  .sec-head p{display:none}
  .map-sec .sec-head{margin-bottom:26px}
  .sell-inner{padding:56px 20px!important;gap:26px!important}
  /* карта: список орієнтирів — дві колонки компактно */
  .map-wrap{grid-template-columns:1fr!important;gap:20px!important}
  .map-list{display:grid!important;grid-template-columns:1fr 1fr;gap:0 14px;max-height:300px;overflow-y:auto}
  .ml-item{padding:11px 2px}
  .ml-item .n{font-size:13px;gap:8px}
  .ml-item .c{font-size:12px}
  .map-citybar{padding-bottom:12px;margin-bottom:14px}
  .map-citybtn{padding:8px 16px;font-size:11.5px}
  .map-info{padding:16px}
  .map-info h4{font-size:18px}
  .map-info p{font-size:13px}
  /* команда як слайдер: 82% картки, скрол */
  .realtors-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;scrollbar-width:none}
  .realtors-grid::-webkit-scrollbar{display:none}
  .realtors-grid .real-card{flex:0 0 78%;scroll-snap-align:start}
  /* футер */
  .ft-bottom{flex-direction:column;gap:14px;align-items:flex-start}
  .ft-grid{gap:28px}
  .ft-word{font-size:clamp(70px,22vw,140px);margin-top:24px}
  
}
body:not(.light) .qchip{background:transparent;color:#EDF1EA;border-color:rgba(255,255,255,.16)}
body:not(.light) .qchip:hover{border-color:#3ddc84}
body:not(.light) .qchip.on{background:#005C2B;border-color:#005C2B;color:#fff}
body:not(.light) .quiz-param select{background-color:#151815;color:#EDF1EA;border-color:rgba(255,255,255,.16);height:50px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23EDF1EA' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px}
body:not(.light) .quiz-param select option{background:#151815;color:#EDF1EA}
body:not(.light) #quizNext{background:var(--green);color:#fff}
body:not(.light) #quizNext:hover{background:#0b7437}
body:not(.light) #quizNext[disabled]{background:#1c201c;color:#7a847b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);cursor:not-allowed}
.quiz-param select{height:50px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23005C2B' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px;cursor:pointer}
#quizNext[disabled]{cursor:not-allowed}
/* поле площі та інші інпути квізу — як у скляному фільтрі каталогу */
.quiz-param input[type=text]{width:100%;height:50px;border:1px solid var(--line-light);background:var(--paper);padding:0 16px;font-size:15px;outline:none;font-family:'Roboto';transition:border-color .25s}
.quiz-param input[type=text]:focus{border-color:var(--green)}
.quiz-field input,.quiz-field textarea{height:50px}
.quiz-field textarea{height:auto;min-height:96px;resize:vertical}
body:not(.light) .quiz-param input[type=text],
body:not(.light) .quiz-field input,
body:not(.light) .quiz-field textarea{background:#151815;color:#EDF1EA;border-color:rgba(255,255,255,.16)}
body:not(.light) .quiz-param input[type=text]:focus,
body:not(.light) .quiz-field input:focus{border-color:#3ddc84}
#quizNext2{background:var(--green);color:#fff}
#quizNext2:hover{background:#0b7437}
/* крок фото в квізі */
.quiz-photo{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px dashed rgba(0,92,43,.4);background:rgba(0,92,43,.04);padding:34px 20px;cursor:pointer;text-align:center;transition:.25s}
.quiz-photo:hover,.quiz-photo.drag{border-color:var(--green);background:rgba(0,92,43,.08)}
.quiz-photo b{font-family:'Roboto Condensed';font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.quiz-photo span{font-size:12.5px;color:var(--ink-soft);font-weight:300}
.quiz-photos-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.quiz-photos-list:empty{display:none}
.qp-item{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;background:rgba(0,92,43,.06);border:1px solid var(--line-light);padding:6px 12px}
.qp-item i{font-style:normal;cursor:pointer;color:#c0392b;font-weight:700}
body:not(.light) .quiz-photo{border-color:rgba(61,220,132,.35);background:rgba(61,220,132,.05)}
body:not(.light) .quiz-photo:hover,body:not(.light) .quiz-photo.drag{border-color:#3ddc84;background:rgba(61,220,132,.1)}
body:not(.light) .quiz-photo b{color:#3ddc84}
body:not(.light) .quiz-photo span{color:#8a948b}
body:not(.light) .qp-item{background:#1c201c;border-color:rgba(255,255,255,.12);color:#EDF1EA}

/* --- футер: соцмережі квадратними кнопками + кнопка «Вгору» --- */
.ft-social{display:flex;gap:10px;align-items:center}
.ft-social a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);color:rgba(255,255,255,.75);transition:.25s}
.ft-social a:hover{border-color:#3ddc84;color:#3ddc84;transform:translateY(-2px)}




/* --- мобільне меню (drawer) --- */
.mobile-menu{position:fixed;top:0;right:0;bottom:0;z-index:965;width:min(320px,86vw);background:rgba(10,12,10,.97);backdrop-filter:blur(18px);border-left:1px solid var(--line-dark);padding:86px 30px 40px;visibility:hidden;transition:visibility .45s;display:flex;flex-direction:column;gap:4px;overflow-y:auto}
body.menu-open .mobile-menu{visibility:visible}
body.menu-open .backdrop{opacity:1;pointer-events:auto}
.mobile-menu a{display:block;padding:13px 0;font-family:'Roboto Condensed';font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.85);border-bottom:1px solid var(--line-dark);transition:.25s}
.mobile-menu a:hover{color:#3ddc84;padding-left:8px}
.mobile-menu .mm-sub{padding-left:16px}
.mobile-menu .mm-sub a{font-size:13.5px;color:rgba(255,255,255,.55);border-bottom:none;padding:9px 0}
.mobile-menu .mm-sub a:hover{color:#3ddc84}
.mobile-menu .mm-phone{margin-top:22px;font-family:'Roboto Condensed';font-size:18px;color:#3ddc84;border-bottom:none}
body.menu-open .burger i:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
body.menu-open .burger i:nth-child(2){opacity:0}
body.menu-open .burger i:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
body.light .mobile-menu{background:rgba(250,247,239,.98);border-left-color:rgba(16,18,16,.1)}
body.light .mobile-menu a{color:#1d2a20;border-bottom-color:rgba(16,18,16,.1)}
body.light .mobile-menu .mm-sub a{color:#5d6a5f}
body.light .mobile-menu .mm-phone{color:var(--green)}
body.menu-open{overflow:hidden}
/* burger: помітний на всіх темах і фонах */
.burger{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.25);background:rgba(14,17,14,.55);backdrop-filter:blur(8px)}
@media(min-width:1281px){.burger{display:none}}
body.light .burger{border-color:rgba(16,18,16,.2);background:rgba(255,255,255,.75)}

/* заголовок «Місто на карті»: білий у dark, темний у light */
.sec-title-map{color:#fff}
.sec-title-map em{-webkit-text-stroke-color:#fff}
body.light .sec-title-map{color:#0E3520}
body.light .sec-title-map em{-webkit-text-stroke-color:#0E3520}

/* ===== MOBILE: фільтри каталогу (≤760px) ===== */
@media(max-width:760px){
  .glass-filter{padding:14px 14px 12px;border-radius:0}
  .gf-row,.gf-more .gf-row{flex-direction:column;align-items:stretch;gap:10px}
  .gf-field{flex:0 0 auto!important;width:100%}
  .gf-field>label{margin-bottom:5px}
  .gf-field select,.gf-field .fld input{height:44px;min-width:0;width:100%;padding:0 12px;font-size:15px}
  .range-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .rooms{flex-wrap:wrap}
  .rooms button{flex:1 0 auto;min-width:44px;padding:10px 0;text-align:center}
  .gf-actions{display:flex;gap:10px}
  .gf-actions .btn{flex:1;height:46px;padding:0 12px}
  .gf-toggle{margin-top:8px}
  .gf-more{padding-top:10px;margin-top:10px}
  /* тулбар: знайдено/сорти/валюта — переноси і компакт */
  .toolbar{flex-wrap:wrap;gap:10px}
  .toolbar .found{width:100%}
  .tools{flex-wrap:wrap;gap:8px;width:100%}
  .tools .sort{flex:1 1 30%}
  .tools .sort select{height:40px;font-size:12px;padding:0 10px;min-width:0;width:100%}
  .views{width:100%;justify-content:space-between}
  .vbtn{flex:1;height:40px}
  .cur-switch-cat{margin-left:0;width:100%;justify-content:space-between}
  .cur-switch-cat a{flex:1;height:38px}
  /* пагінація */
  .pages,.loadmore-wrap{gap:8px}
  .pbtn{min-width:38px;height:40px}
}

/* ===== MOBILE: картка об'єкта — порядок блоків (≤760px) ===== */
@media(max-width:760px){
  .obj-wrap{display:flex;flex-direction:column;gap:0!important}
  /* 1 фото+галерея, 2 заголовок+локація, 3 код+ціна, 4 опис, 5 характеристики, 6 локація, 7 рієлтор, 8 схожі */
  .obj-wrap>div:first-child{display:contents}
  .gal-main,.g-thumbs,.obj-title,.obj-loc,.blk,.price-card,.curator,.chars,.facts{width:100%}
  .side-price{display:contents;position:static}
  .price-card{margin-top:12px}
  .curator{margin-top:30px}
  .price-card{order:3}
  .obj-title{order:2}
  .obj-loc{order:2}
  .facts{display:none}
  .blk-desc{order:4}
  .blk-chars{order:5}
  .blk-map{order:6}
  .curator{order:7}
  .blk-sim{order:8}
  /* характеристики — 2 стовпчики */
  .chars{grid-template-columns:1fr 1fr!important;gap:0 20px;padding:6px 16px}
  .ch{font-size:13px;padding:11px 0;gap:10px}
  .ch span{font-size:12px}
  /* price-card компакт */
  .price-card{padding:20px}
  .price-card .p{font-size:26px}
  /* curator не sticky */
  .side{position:static}
  .side>*{width:100%}
}
/* ===== MOBILE: компактні кнопки й відступи (≤760px) ===== */
@media(max-width:760px){
  /* галерея: стрілки і лічильник менші */
  .g-nav{width:36px;height:36px}
  .g-nav.prev{left:8px}
  .g-nav.next{right:8px}
  .g-nav svg{width:15px;height:9px}
  .g-count{right:10px;bottom:8px;padding:5px 10px;font-size:11px}
  .g-fav{width:36px;height:36px;top:10px;right:10px}
  .g-fav svg{width:15px;height:15px}
  .g-thumbs{margin-top:8px!important;gap:6px}
  .g-thumbs button{width:64px;height:44px}
  .obj-title{margin-top:10px!important}
  .obj-loc{margin-top:6px}
  .g-thumbs{margin-bottom:0!important}
  .gal-main{aspect-ratio:16/10.5}
  /* міні-слайдери карток */
  .cs-arrow{width:26px;height:26px}
  /* hero слайдер стрілки */
  .hs-arrow{width:38px;height:38px}
  /* theme-btn і burger трохи менші */
  .theme-btn{width:36px;height:36px}
  .burger{width:38px;height:38px}
  
  /* пусте місце між блоками картки об''єкта */
  .blk{margin-top:22px}
  .blk-h{margin-bottom:14px}
  .obj-title{margin-top:18px}
  .facts{margin-top:16px}
  .g-thumbs{gap:6px}
  /* вертикальний ритм секцій */
  .sec{padding-top:44px;padding-bottom:44px}
  .sec-head{margin-bottom:20px}
}body:not(.light) .about{color:#C9D2CA}
body:not(.light) .r-stats{border-color:rgba(255,255,255,.14)}
body:not(.light) .rstat{border-left-color:rgba(255,255,255,.14)}body.light 
/* кнопка «Вгору» — єдине чисте правило */
.to-top{position:fixed;right:16px;bottom:16px;z-index:9999;width:46px;height:46px;background:#005C2B;color:#fff;border:1px solid #3ddc84;border-radius:2px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 22px rgba(0,92,43,.5);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .35s,visibility .35s,transform .35s}
.to-top.on{opacity:1;visibility:visible;transform:translateY(0)}
.to-top:hover{background:#0b7437}

/* ===== MOBILE: тулбар каталогу — без views (слайдер завжди), ціна/м² компактні ===== */
@media(max-width:760px){
  .views{display:none!important}
  /* карточка об''єкта: ціна за м² менша і сіра */
  .pm{font-size:14px!important;color:var(--ink-soft)}
  .pm .pm-num{font-size:16px!important;font-weight:500}
}body:not(.light) .found b{color:#3ddc84}