/*
Theme Name: Ахтуба
Theme URI: https://baza-ahtuba.ru
Author: Ахтуба
Description: Тема для рыболовной базы «Ахтуба». Адаптивный дизайн (десктоп и мобильная версия), управление через «Внешний вид → Настроить» и разделы «Дома», «Рыбы», «Отзывы», «Галерея».
Version: 1.2.0
Requires at least: 5.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: ahtuba
*/

:root{
  --green:#8cc43f;
  --green-dark:#76a933;
  --text:#676f7c;
  --head:#434955;
  --dark:#2b2b2b;
  --grey:#f2f2f2;
  --pad:35px;
  --font:'Rubik',sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:300 14px/24px var(--font);color:var(--text);background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto;border:0}
a{color:var(--green);text-decoration:none;transition:color .2s}
a:hover{color:var(--green-dark)}
h1,h2,h3,h4{font-family:var(--font);font-weight:300;color:var(--head);margin:0 0 .6176em}
h2{font-size:34px;line-height:47.6px}
p{margin:0 0 1.5em}
ul{margin:0;padding:0;list-style:none}
.screen-reader-text{position:absolute;left:-9999px}
.l-canvas{background:#fff;position:relative}
.btn,.w-btn,button.btn{display:inline-block;border:0;cursor:pointer;background:var(--green);color:#fff;font:300 13px/26px var(--font);text-transform:uppercase;padding:0 23.4px;border-radius:18.2px;transition:background .2s;box-shadow:0 0 0 0 rgba(0,0,0,.18)}
.btn:hover{background:var(--green-dark);color:#fff}
.btn-lg{line-height:38px;padding:0 34px;font-size:14px;border-radius:22px}

/* ---------- Header (desktop) ---------- */
.l-header{position:absolute;top:0;left:0;right:0;z-index:100;color:#fff;
  background:linear-gradient(rgba(28,28,28,.89) 44%,rgba(28,28,28,.4) 75%,rgba(255,255,255,0) 100%)}
.hb-top,.hdr-m{display:none}
.hdr-main{padding:0 var(--pad)}
.hdr-in{position:relative;max-width:1240px;margin:0 auto;height:110px}
.hdr-logo{position:absolute;left:0;top:15px;width:322px;height:80px;display:block}
.hdr-logo img{display:block;width:322px;height:80px;object-fit:contain;object-position:left center}
.hdr-logo .site-title{font-size:26px;font-weight:500;color:#fff;text-transform:uppercase;line-height:80px}
.hdr-weather .w-box{position:absolute;left:416px;top:21px;width:160px;height:36px;border-radius:4px;background:#eb2626;color:#fff;font-size:12px}
.w-box a.w-city{position:absolute;left:0;top:0;width:65px;text-align:center;line-height:33px;font-weight:700;color:#fff}
.w-box .w-deg{position:absolute;left:108px;top:0;width:44px;font-size:18px;line-height:36px;color:#fff;font-weight:400}
.hdr-weather .w-live{background:none;overflow:visible}
.hdr-weather .btn{position:absolute;left:417px;top:65px}
.hdr-links a{position:absolute;left:594px;display:flex;align-items:center;color:#fff;font-size:14px;line-height:27px;white-space:nowrap}
.hdr-links a:nth-child(1){top:23px}
.hdr-links a:nth-child(2){top:70px}
.hdr-links svg{width:22px;height:22px;fill:#fff;margin:0 10px 0 0;flex:none}
.hdr-phones{position:absolute;right:321px;top:15px;text-align:right;color:#fff}
.hdr-phones strong{display:block;font-weight:300;font-size:13px;line-height:15px;margin-bottom:14px}
.hdr-phones a{display:block;color:#fff;font-size:15px;line-height:18px;margin-bottom:15px}
.hdr-addr{position:absolute;right:0;top:27px;width:260px;text-align:right;color:#fff;font-size:15px;line-height:18px}
.hdr-addr .hrs{margin-top:7px;line-height:20.5px}
.hdr-nav{padding:0 var(--pad);height:50px}
.hdr-m{display:none}
.nav ul{display:flex;justify-content:center;flex-wrap:wrap}
.nav li{position:relative}
.nav a{display:block;color:#fff;font-size:16px;line-height:49px;margin-top:1px;padding:0 20px}
.nav a:hover,.nav .current-menu-item>a{color:var(--green)}
.nav .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:200px;background:#2b2b2b;z-index:5;flex-direction:column}
.nav li:hover>.sub-menu{display:flex}
.nav .sub-menu a{line-height:36px;font-size:14px;margin:0}
.burger{display:none}

/* ---------- Hero ---------- */
.hero{position:relative;height:100vh;background:#333 center/cover no-repeat;color:#fff;text-align:center}
.hero-in{position:absolute;left:0;right:0;top:53.7%;transform:translateY(-50%);padding:0 10px}
.hero h1{margin:0 auto;color:#fff;font-weight:400;font-size:min(80px,6.4516vw);line-height:min(75px,6.0484vw);width:min(726px,58.55vw)}
.hero p{margin:min(44px,3.55vw) 0 0;font-size:min(34px,2.742vw);line-height:min(22px,1.774vw);color:#fff}
.hero-badge{position:absolute;right:35px;bottom:35px;z-index:2}
.hero-badge img{max-width:180px;display:block}

/* ---------- Sections ---------- */
.sec{position:relative;padding:28px var(--pad)}
.sec-in{max-width:1240px;margin:0 auto}
.sec-grey{background:var(--grey)}
.sec-img{background:#444 center/cover no-repeat}
.sec-fix{background-attachment:fixed}
.sec-rev{background-size:auto;background-repeat:repeat}
.sec-head{text-align:center}
.sec-head h2{margin:0 0 .6176em}
.sec-head .desc{margin:0 0 1.5em;text-align:center}
.hook{display:block;margin:0 auto 1.5em;width:17px;height:25px}
.sec-white h2,.sec-white .desc{color:#fff}

/* fish */
.fish-wrap{display:grid;grid-template-columns:279px minmax(0,1fr);gap:41px}
.fish-l{text-align:center}
.fish-l h2{margin:0 0 .6176em}
.fish-l .desc{margin:0 0 1.5em}
.fish-l .wifi{display:block;margin:0 auto;width:100px;height:100px}
.fish{display:flex;flex-wrap:wrap;align-items:center}
.fish a{display:block;width:184px;text-align:center;line-height:0}
.fish img{display:inline-block;max-width:100%;width:auto;height:auto}

/* about */
.about h2{text-align:center;color:var(--text);margin:0 0 .5882em}
.about p:last-child{margin-bottom:0}

/* leisure */
.leis{display:grid;grid-template-columns:385px minmax(0,1fr);gap:42px}
.leis-t{padding:120px 45px 0;text-align:center}
.leis-t h2{margin:0 0 .6176em}
.leis-t .desc{margin:0 0 1.5em}
.leis-t p.lt{margin:0 0 1.5em}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,385px));gap:41px 42px;justify-content:start}
.tile{position:relative;display:block;aspect-ratio:1;background:#555 center/cover no-repeat;color:#fff;overflow:hidden}
.tile::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.2);transition:background .3s}
.tile:hover::before{background:rgba(140,196,63,.45)}
.tile h4{position:absolute;top:18%;left:10.1%;right:10.1%;margin:0;color:#fff;font-size:30px;line-height:42px;text-align:center}
.tiles .tile:nth-child(3){grid-column:2}

/* carousels */
.car{position:relative}
.car-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
.car-track::-webkit-scrollbar{display:none}
.car-btn{position:absolute;top:50%;margin-top:-15px;width:30px;height:30px;padding:0;border:0;background:none;cursor:pointer;color:var(--green);font-size:30px;line-height:30px;z-index:3}
.car-prev{left:-15px}.car-next{right:-15px}
.houses .car-btn{width:20px;height:20px;margin-top:-10px;font-size:22px;line-height:20px}
.slide{flex:0 0 33.3333%;scroll-snap-align:start;text-align:center;padding:0 60px}
.slide img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.slide p{margin:1.5em 0}
.slide p span{display:inline-block;font-weight:700;color:var(--green)}
.slide p a{color:inherit}
.houses-btn{margin-top:131px;text-align:center}
.houses-btn .btn{margin-bottom:4px}
.sec-houses .sec-head{margin-bottom:111px}
.sec-houses .sec-head .hook{margin-bottom:0}
.sec-rev .sec-head{margin-bottom:51px}
.sec-rev .sec-head .hook,.sec-full .sec-head .hook{margin-bottom:0}
.rev-slide{flex:0 0 100%;scroll-snap-align:start}
.review{margin:0 15px 0 41px}
.review q{display:block;quotes:none;font:italic 300 18px/28.08px var(--font);color:var(--text)}
.rev-a{margin-top:15px;overflow:hidden;min-height:60px}
.rev-av{float:left;width:60px;height:60px;border-radius:50%;background:#ddd center/cover no-repeat;margin-right:15px}
.rev-n{display:block;font-weight:600;line-height:24px;height:30px}
.sec-rev .car{margin-bottom:55px}

/* gallery */
.sec-full{padding:28px 0 24px}
.sec-full .sec-head{margin-bottom:47px}
.gallery{display:grid;grid-template-columns:repeat(5,1fr);padding:0 4px}
.gallery a{display:block;padding:4px;aspect-ratio:1}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .3s}
.gallery a:hover img{opacity:.85}

/* lightbox */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;display:none;align-items:center;justify-content:center}
.lb.on{display:flex}
.lb img{max-width:92vw;max-height:90vh;box-shadow:0 0 30px #000}
.lb button{position:absolute;background:none;border:0;color:#fff;font-size:42px;cursor:pointer;padding:14px;line-height:1}
.lb .x{top:6px;right:10px}.lb .p{left:6px;top:50%}.lb .n{right:6px;top:50%}

/* ---------- Footer ---------- */
.l-footer{background:var(--dark);color:#fff;padding:28px var(--pad);font-size:12.6px;line-height:21px}
.f-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:385px 172px 172px minmax(0,385px);gap:42px}
.l-footer h3{font-size:28px;line-height:39.2px;color:#fff;margin:0 0 22px}
.f-menu{display:grid;grid-template-columns:214px 1fr;padding-left:16px}
.f-menu li{margin-bottom:7px}
.f-menu a{color:var(--green)}
.f-menu a:hover{color:#fff}
.f-c{text-align:center}
.f-s{text-align:left}
.f-s h3{margin-bottom:21px}
.f-s p{margin:0 0 21px;color:#fff}
.f-s .btn{display:block;width:155px;margin:0 auto}
.f-soc{display:flex;justify-content:center;gap:4px;margin-bottom:27px}
.f-soc a{position:relative;display:block;width:50px;height:50px;border-radius:50%;box-shadow:inset 0 0 0 2px #e8e9eb;color:var(--green)}
.f-soc a svg{position:absolute;left:15px;top:15px;width:20px;height:20px;fill:currentColor}
.f-soc a:hover{background:var(--green);color:#fff}
.f-rules{display:block;width:100%;background:#333;color:#fff;font:300 10px/20px var(--font);text-transform:uppercase;border:0;border-radius:18.2px;padding:0 15px;cursor:pointer}
.f-wx{width:160px;height:110px;margin:0 auto;background:#e67272;color:#fff;position:relative;text-align:left;overflow:hidden}
.f-wx b{position:absolute;left:19px;top:5px;font-size:35px;line-height:36px;font-weight:700}
.f-wx .c{position:absolute;left:19px;top:46px;font-size:14px;line-height:17px;font-weight:400}
.f-wx .d{position:absolute;left:19px;top:65px;font-size:11px;line-height:13px;font-weight:400}
.f-wx a{position:absolute;left:0;right:0;bottom:6px;text-align:center;color:#fff;font-size:10px;line-height:20px}
.f-copy{margin-top:33px;text-align:center;color:var(--text);line-height:21px}
.f-copy a{color:var(--green)}
.to-top{position:fixed;right:15px;bottom:30px;width:50px;height:50px;background:rgba(0,0,0,.3);color:#fff;border:0;cursor:pointer;font-size:28px;line-height:50px;opacity:0;pointer-events:none;transition:.3s;z-index:90;border-radius:0}
.to-top.on{opacity:1;pointer-events:auto}



/* ---------- Inner pages ---------- */
.page-top{padding:150px var(--pad) 40px;background:#2b2b2b center/cover;color:#fff;text-align:center;position:relative}
.page-top::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.45)}
.page-top h1{position:relative;color:#fff;font-size:44px;font-weight:400;margin:0}
.entry{max-width:1040px;margin:0 auto;padding:50px var(--pad)}
.entry img{border-radius:2px}
.entry h2,.entry h3{margin-top:1.4em}
.entry table{border-collapse:collapse;width:100%}
.entry td,.entry th{border:1px solid #ddd;padding:8px 10px}
.house-meta{background:var(--grey);padding:18px 22px;margin-bottom:26px;font-size:16px;display:flex;gap:24px;flex-wrap:wrap;align-items:center}
.pager{text-align:center;margin-top:30px}
.pager a,.pager span{display:inline-block;padding:4px 12px;margin:2px}

/* ---------- Booking modal & form ---------- */
.modal{position:fixed;inset:0;z-index:9990;background:rgba(0,0,0,.65);display:none;overflow:auto;padding:30px 12px}
.modal.on{display:block}
.modal-box{background:#fff;max-width:760px;margin:0 auto;padding:34px 36px;position:relative;border-radius:3px}
.modal-x{position:absolute;right:10px;top:4px;background:none;border:0;font-size:34px;cursor:pointer;color:#666}
.bk-note{background:#f6f9ee;border-left:4px solid var(--green);padding:14px 18px;font-size:13px;margin-bottom:22px}
.bk label{display:block;margin:0 0 14px;font-size:13px;color:var(--head)}
.bk input,.bk select,.bk textarea{display:block;width:100%;margin-top:5px;padding:9px 11px;font:300 14px var(--font);border:1px solid #cfd4d6;border-radius:3px;background:#fff;color:#333}
.bk input:focus,.bk select:focus,.bk textarea:focus{outline:0;border-color:var(--green)}
.bk .row{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.bk small{display:block;color:#8a9199;margin-top:4px;line-height:1.4}
.bk .hp{position:absolute;left:-9999px}
.bk-msg{padding:12px 16px;margin-bottom:16px;border-radius:3px}
.bk-msg.ok{background:#e8f5d4;color:#3f6a0f}
.bk-msg.err{background:#fde4e4;color:#9c1c1c}

/* ---------- Responsive ---------- */
@media (max-width:1200px){.hdr-links{display:none}}
@media (max-width:1000px){.hdr-addr{display:none}}
@media (max-width:900px){
  :root{--pad:24px}
  .l-header{position:fixed;background:none}
  .admin-bar .l-header{top:32px}
  .hb-top{display:block;position:relative;background:#8cc43f;height:40px}
  .hb-top .bk{position:absolute;left:16px;top:13px;width:155px;text-align:center;color:#fff;font:300 13px/26px var(--font);text-transform:uppercase;background:none;border:0;padding:0}
  .m-plan{position:absolute;left:230px;top:11px;display:flex;align-items:center;color:#fff;font-size:16px;line-height:19px;white-space:nowrap}
  .m-plan svg{width:31px;height:19px;fill:#fff;margin-right:0}
  .m-plan span{margin-left:0;line-height:27px}
  .hdr-main{background:#8cc43f;height:30px;padding:0 16px}
  .hdr-in{height:30px;max-width:none}
  .hdr-logo{top:0;width:121px;height:30px}
  .hdr-logo img{width:121px;height:30px}
  .hdr-logo .site-title{font-size:14px;line-height:30px}
  .hdr-weather,.hdr-links,.hdr-phones{display:none}
  .hdr-addr{display:block;left:166px;right:auto;top:-1px;width:190px;text-align:left;font-size:12px;line-height:18px}
  .hdr-addr .adr{display:none}
  .hdr-addr .hrs{margin:0;line-height:18px}
  .hdr-nav{background:#f2f3f5;height:30px;padding:0;position:relative;border-bottom:1px solid #e8e9eb}
  .hdr-m{display:flex;align-items:center;height:29px;padding-left:3px}
  .burger{display:flex;flex-direction:column;justify-content:center;gap:3px;width:45px;height:29px;padding:0 0 0 12px;background:none;border:0;cursor:pointer}
  .burger span{display:block;width:20px;height:3px;background:#aab2bd;border-radius:0}
  .m-ph{display:flex;align-items:center;gap:4px;color:var(--green);font-size:13px;line-height:19.5px;margin-right:3px}
  .m-ph svg{width:14px;height:14px;fill:var(--green);opacity:.55}
  .hdr-nav .nav{display:none;position:absolute;left:0;right:0;top:100%;background:#f2f3f5;border-bottom:1px solid #e8e9eb}
  .hdr-nav .nav.open{display:block}
  .nav ul{display:block}
  .nav a{color:#aab2bd;font-size:15px;line-height:45.4px;margin:0;padding:0 16px;border-bottom:1px solid #e8e9eb}
  .nav a:hover,.nav .current-menu-item>a{color:var(--green)}
  .nav .sub-menu{display:block;position:static;background:rgba(0,0,0,.03);min-width:0}
  .nav .sub-menu a{padding-left:32px;font-size:14px;line-height:36px}
  .hero-in{top:51.2%}
  .fish-wrap,.leis{grid-template-columns:minmax(0,1fr);gap:0}
  .fish-l{max-width:420px;margin:0 auto}
  .fish{justify-content:center;margin-top:30px}
  .leis-t{max-width:420px;margin:0 auto}
  .tiles{grid-template-columns:minmax(0,385px);justify-content:center;gap:40px;margin-top:92px}
  .tiles .tile:nth-child(3){grid-column:auto}
  .tiles .tile:nth-child(2){margin-top:32px}
  .sec-fix{background-attachment:scroll}
  .slide{flex-basis:50%}
  .gallery{grid-template-columns:repeat(3,1fr)}
  .f-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .l-footer{font-size:14.4px;line-height:24px}
  .l-footer h3{font-size:24px;line-height:33.6px}
  .f-menu{grid-template-columns:minmax(0,1fr);padding-left:19px;margin-top:32px}
  .f-menu ul+ul{margin-top:24px}
  .f-menu li{margin-bottom:8px}
  .f-s{margin-top:25px}
  .f-s p{margin:0 0 24px}
  .f-c{margin-top:25px}
  .f-soc{margin-bottom:27px}
  .f-rules{width:265px;margin:0 auto}
  .f-copy{margin-top:30px;font-size:14.4px;line-height:24px}
  .modal-box{padding:26px 18px}
  .bk .row{grid-template-columns:1fr}
  .page-top{padding-top:150px}
}
@media (max-width:600px){
  body{font-size:16px;line-height:28px}
  h2{font-size:26px;line-height:36.4px}
  .sec{padding:24px}
  .sec-full{padding:24px 19px}
  .tile h4{font-size:24px;line-height:33.6px;top:19.3%}
  .fish-r{display:none}
  .slide{flex-basis:100%}
  .sec-rev .sec-head{margin-bottom:54px}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .tile{aspect-ratio:1}
  .tiles{margin-top:112px}
  .fish-l{margin-bottom:32px}
  .sec-houses .sec-head{margin-bottom:115px}
  .houses-btn{margin-top:130px}
  .l-footer{padding-top:24px;padding-bottom:24px}
  .f-grid>:first-child{margin-top:0}
  .f-c{margin-top:32px}
  .f-s{margin-top:24px}
  .l-footer h3{margin-bottom:16px}
  .f-menu{margin-top:49px}
  .f-c .f-soc{margin-top:18px}
  .f-rules{white-space:nowrap}
  .sec-rev .car{margin-bottom:83px}
  .sec-full .sec-head{margin-bottom:49px}
  .f-copy{margin-top:72px}
  .page-top h1{font-size:30px}
}
.houses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 0}
.houses-grid .slide{padding:0 30px}
@media (max-width:900px){.houses-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.houses-grid{grid-template-columns:1fr}}
@media (min-width:1241px){.slide{padding:0 59.67px}}

/* ===== v1.2: подложки, ховеры, анимации как на старом сайте ===== */
.btn,.w-btn,button.btn{position:relative;overflow:hidden;z-index:0;transition:background-color .3s,color .3s}
.btn::before,.w-btn::before{content:"";position:absolute;left:0;right:0;top:0;height:0;background:rgba(0,0,0,.1);transition:height .3s;z-index:-1}
.btn:hover::before,.w-btn:hover::before{height:100%}
.btn:hover{background:var(--green)}
.leis-t{margin-top:60px;padding:60px 45px 75px;background:#fff}
.sec-houses .sec-head{margin-bottom:51px}
.car.houses .slide{border:solid transparent;border-width:0 15px;background:#fff padding-box;padding:60px 45px 75px;color:var(--text)}
.car.houses .slide p{margin:21px 0}
.car.houses .slide p a{color:var(--text)}
.fish a{opacity:.66;transition:opacity .3s}
.fish a:hover{opacity:1}
.tile{background-color:transparent}
.tile::before{content:"";position:absolute;inset:0;background:inherit;background-size:cover;background-position:50% 50%;transform:translateY(0);transform-origin:50% 0;transition:transform .3s linear;z-index:0}
.tile::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.2);opacity:.25;transition:opacity .4s cubic-bezier(.175,.885,.32,1.275);z-index:1}
.tile:hover::before{background:inherit;background-size:cover;background-position:50% 50%;transform:scale(1.3);transition-duration:7s}
.tile:hover::after{opacity:.75}
.tile h4{z-index:2;transform:translateY(30px);transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}
.tile:hover h4{transform:translateY(0)}
.gallery a{position:relative}
.gallery a::after{content:"";position:absolute;inset:4px;background:#fff;opacity:0;transition:opacity .3s;pointer-events:none}
.gallery a:hover::after{opacity:.5}
.gallery a:hover img{opacity:1}
.f-soc a{overflow:hidden;z-index:0}
.f-soc a::before{content:"";position:absolute;left:0;right:0;top:0;height:0;transition:height .3s;z-index:-1;background:var(--green)}
.f-soc a:hover{background:none;color:#fff}
.f-soc a:hover::before{height:100%}
.f-soc a[href*="youtube"]::before{background:#cd201f}
.f-soc a[href*="vk.com"]::before{background:#4c75a3}
.f-soc a[href*="instagram"]::before{background:radial-gradient(circle at 35% 100%,#fec564,transparent 50%),radial-gradient(circle at 10% 140%,#feda7e,transparent 50%),radial-gradient(ellipse at 0 -25%,#5258cf,transparent 50%),radial-gradient(ellipse at 20% -50%,#5258cf,transparent 50%),radial-gradient(ellipse at 100% 0,#893dc2,transparent 50%),radial-gradient(ellipse at 60% -20%,#893dc2,transparent 50%),radial-gradient(ellipse at 100% 100%,#d9317a,transparent),linear-gradient(#6559ca,#bc318f 30%,#e42e66 50%,#fa5332 70%,#ffdc80 100%)}
.entry a:not(.btn):hover{color:#e35d5d}
.nav>ul>li:first-child>a::before,.nav>div>ul>li:first-child>a::before{content:"1";position:absolute;top:7px;right:5px;width:12px;height:12px;padding:5px 0 0 5px;box-sizing:content-box;border-radius:15px;background:red;color:#fff;font-size:10px;line-height:8px;font-weight:300}
.hero{overflow:hidden}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-in,.hero-badge{z-index:1}
.hero-in h1,.hero-in p{animation:ahFade .3s cubic-bezier(.645,.045,.355,1) both}
@keyframes ahFade{from{opacity:0}to{opacity:1}}
@media (min-width:901px){
  .nav a{position:relative}
  .nav a:hover,.nav .current-menu-item>a{color:#fff}
  .nav a::after{content:"";position:absolute;left:20px;right:20px;bottom:6px;height:2px;background:#fff;opacity:0;transition:.3s}
  .nav a:hover::after{bottom:10.4px;opacity:1}
  .nav .sub-menu a::after{display:none}
}
@media (min-width:1241px){.car.houses .slide{padding:60px 44.67px 75px}}
@media (max-width:900px){
  .nav>ul>li:first-child>a::before,.nav>div>ul>li:first-child>a::before{top:50%;margin-top:-8px;right:auto;left:130px}
  .leis-t{max-width:none}
}
@media (max-width:600px){
  .sec-houses .sec-head{margin-bottom:55px}
}
.gallery a{cursor:zoom-in}
.car-dots{display:flex;justify-content:center;margin:0;padding:10px 0;height:44px;list-style:none}
.car-dots li{width:20px;height:20px;margin:0 5px;display:flex;align-items:center;justify-content:center}
.car-dots button{width:12px;height:12px;padding:0;border:0;border-radius:50%;background:var(--green);opacity:.5;cursor:pointer;transition:opacity .3s}
.car-dots li.on button,.car-dots button:hover{opacity:1}
/* ===== Контент перенесённых страниц (VC/Impreza) ===== */
.entry .l-section{padding:0}
.entry .l-section-h{max-width:1240px;margin:0 auto}
.entry .g-cols,.entry .vc_row{display:flex;flex-wrap:wrap;margin:0 -21px}
.entry .wpb_column{padding:0 21px;min-width:0;flex:1 1 0}
.entry .vc_col-sm-12{flex:0 0 100%}.entry .vc_col-sm-6{flex:0 0 50%}.entry .vc_col-sm-4{flex:0 0 33.333%}.entry .vc_col-sm-8{flex:0 0 66.666%}.entry .vc_col-sm-3{flex:0 0 25%}.entry .vc_col-sm-9{flex:0 0 75%}.entry .vc_col-sm-2{flex:0 0 16.666%}.entry .vc_col-sm-10{flex:0 0 83.333%}
.entry .wpb_text_column,.entry .wpb_content_element{margin-bottom:24px}
.entry .wpb_text_column:last-child{margin-bottom:0}
.entry img{max-width:100%;height:auto}
.entry .alignleft{float:left;margin:0 24px 16px 0}.entry .alignright{float:right;margin:0 0 16px 24px}.entry .aligncenter{display:block;margin:0 auto 16px}
.entry ul{list-style:disc;padding-left:1.5em;margin:0 0 1.5em}.entry ol{padding-left:1.5em;margin:0 0 1.5em}
.entry li{margin-bottom:.4em}
.entry table{width:100%;border-collapse:collapse;margin:0 0 1.5em}.entry td,.entry th{border:1px solid #e8e9eb;padding:8px 12px;text-align:left}
.entry iframe{max-width:100%}
.entry .w-gallery-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.entry .w-gallery.cols_1 .w-gallery-list{grid-template-columns:1fr}.entry .w-gallery.cols_2 .w-gallery-list{grid-template-columns:repeat(2,1fr)}.entry .w-gallery.cols_3 .w-gallery-list{grid-template-columns:repeat(3,1fr)}.entry .w-gallery.cols_5 .w-gallery-list{grid-template-columns:repeat(5,1fr)}.entry .w-gallery.cols_6 .w-gallery-list{grid-template-columns:repeat(6,1fr)}
.entry .w-gallery-item{display:block;position:relative;padding:4px;cursor:zoom-in}
.entry .w-gallery-item-img{position:relative;line-height:0}
.entry .w-gallery-item img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.entry .w-gallery-item-img::after{content:"";position:absolute;inset:0;background:#fff;opacity:0;transition:opacity .3s}
.entry .w-gallery-item:hover .w-gallery-item-img::after{opacity:.5}
.entry .w-btn-wrapper{margin:4.8px 0}.entry .w-btn-wrapper.align_center{text-align:center}
.entry .w-sharing,.entry .w-blognav,.entry .w-blog-post-meta-author,.entry .vc_empty_space_inner{display:none}
.entry .w-blog-post{margin-bottom:40px}.entry .w-blog-post-title{font-size:24px;line-height:1.4;margin:0 0 8px}
.entry .w-blog-post-meta{font-size:13px;color:#999;margin-bottom:8px}.entry .w-blog-post-meta>*{margin-right:12px}
.entry .g-filters{display:none}
.entry .w-slider img,.entry .w-image img{display:block;width:100%}
.entry .w-slider-json{display:none}
.entry .w-separator{border-top:1px solid #e8e9eb;margin:24px 0}
.entry .w-iconbox{text-align:center;margin-bottom:24px}
@media (max-width:900px){.entry .wpb_column{flex:0 0 100% !important}.entry .w-gallery-list{grid-template-columns:repeat(2,1fr) !important}}

/* ===== v1.3: внутренние страницы как на старом сайте ===== */
.l-titlebar{position:relative;padding:160px 35px 0;background:#e35d5d;color:#fff;overflow:hidden}
.l-titlebar.tb-primary{background:#8cc43f}.l-titlebar.tb-alternate{background:#676f7c}.l-titlebar.tb-default{background:#f2f3f5}
.l-titlebar-img{position:absolute;inset:0;background:50% 50%/cover no-repeat}
.l-titlebar-overlay{position:absolute;inset:0}
.l-titlebar-h{position:relative;max-width:1240px;margin:0 auto;padding:28px 0;min-height:100px;display:flex;align-items:center}
.l-titlebar h1,.l-titlebar .tb-h1{display:inline-block;margin:4.2px 21px 4.2px 0;font-size:25.2px;line-height:35.28px;font-weight:300;color:#fff}
.l-titlebar.tb-alternate h1,.l-titlebar.tb-alternate .tb-h1{color:#8cc43f}
.l-titlebar.tb-default h1{color:var(--head)}
.l-main .entry{max-width:none;padding:0 35px}
.entry>article,.entry>.post-list,.entry>.pager,.entry>.l-section{max-width:1240px;margin-left:auto;margin-right:auto}
.entry .l-section.height_small{padding:28px 0}.entry .l-section.height_medium{padding:56px 0}.entry .l-section.height_large{padding:84px 0}.entry .l-section.height_auto{padding:0}
.entry .l-section.color_custom{margin-left:-35px;margin-right:-35px;padding-left:35px;padding-right:35px}
.entry .l-section.height_auto .l-section-h{padding:0}
.post-head{padding:56px 0 0}
.post-head .w-blog-post-title{font-size:40px;line-height:1.4;font-weight:300;color:var(--head);margin:0 0 21px}
.post-head .w-blog-post-meta{font-size:14px;line-height:24px;margin:0 0 21px;color:var(--text)}
.post-head .w-blog-post-meta>*{margin-right:21px}
.post-head .w-blog-post-meta a{color:inherit}
.post-list{padding:56px 0}
.post-list .w-blog-post{display:flex;gap:30px;margin-bottom:50px}
.post-list .pl-img{flex:0 0 35%}.post-list .pl-img img{display:block;width:100%}
.post-list .w-blog-post-title{font-size:24px;margin:0 0 10px}.post-list .w-blog-post-title a{color:var(--head)}
.pager{padding-bottom:56px;text-align:center}.pager .page-numbers{display:inline-block;padding:0 10px;color:var(--text)}.pager .current{color:var(--green)}
.royalSlider{position:relative;margin-bottom:24px}
.rs-main{position:relative;aspect-ratio:868/525;display:flex;align-items:center;justify-content:center;overflow:hidden}
.rs-main img{max-width:100%;max-height:100%;display:block;cursor:zoom-in}
.rs-thumbs{display:flex;justify-content:center;flex-wrap:wrap;gap:4px;margin-top:4px}
.rs-thumbs img{width:56px;height:56px;object-fit:cover;cursor:pointer;opacity:.6;transition:opacity .3s}
.rs-thumbs img.on,.rs-thumbs img:hover{opacity:1}
.rs-arr{position:absolute;top:50%;margin-top:-25px;width:50px;height:50px;border:0;background:rgba(0,0,0,.3);color:#fff;font-size:30px;line-height:50px;cursor:pointer;z-index:2;opacity:0;transition:opacity .3s}
.royalSlider:hover .rs-arr{opacity:1}.rs-prev{left:0}.rs-next{right:0}
.entry .w-slider{margin-bottom:24px}
@media (max-width:900px){
  .l-titlebar{padding:100px 24px 0}
  .l-main .entry{padding:0 24px}
  .entry .l-section.color_custom{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}
  .post-head .w-blog-post-title{font-size:28px}
  .post-list .w-blog-post{flex-direction:column;gap:16px}
  .rs-arr{opacity:1}
}
.hdr-phones a svg{width:13px;height:15px;fill:#fff;margin-right:8px;vertical-align:-2px}
.m-ph svg{fill:#aab2bd}
.car-track{align-items:flex-start}
.leis-t{align-self:start}
.houses-btn{margin-top:11px}
.sec-rev .car{margin-bottom:11px}
@media (max-width:600px){.houses-btn{margin-top:19px}.sec-rev .car{margin-bottom:39px}.tiles{margin-top:30px}}
.car.houses .slide .btn{vertical-align:top}
.houses-btn .btn{vertical-align:top}
.l-preloader{position:fixed;top:0;left:0;right:0;height:100%;z-index:11111;overflow:hidden;background:#fff;transition:height .45s}
.l-preloader.done{height:0}
.l-preloader-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:opacity .3s}
.l-preloader.done .l-preloader-spinner{opacity:0}
.l-preloader img{display:block;max-width:25rem;height:auto}
.entry .l-section.color_custom{margin-left:0;margin-right:0;padding-left:0;padding-right:0}
.entry .rs-thumbs img{width:56px;height:56px;flex:0 0 56px;display:block}
.entry .rs-main img{width:auto}
.post-cols{display:flex;justify-content:space-between;align-items:flex-start;max-width:1240px;margin:0 auto}
.post-cols .l-content{width:70%;min-width:0}
.post-cols .l-sidebar{width:25%;padding:56px 0}
.post-cols>.l-content>article{max-width:none}
.saidbar-home{background:#8cc43f;padding:60px 45px 75px;max-width:271px;color:#fff}
.saidbar-home h3{font-size:28px;line-height:39.2px;color:#fff;margin:0 0 21px}
.saidbar-home p{margin:0 0 21px}.saidbar-home p:last-child{margin:0}
.saidbar-home a{color:#fff}.saidbar-home a:hover{color:#2b2b2b}
.for_blognav{padding:29px 0 28px}
.w-blognav{display:flex}
.w-blognav>*{flex:1 1 50%;padding:0 30.8px;color:var(--text);display:block}
.w-blognav-next{text-align:right}
.w-blognav-meta{display:block;font-size:11.2px;line-height:19.6px;text-transform:uppercase;opacity:.7}
.w-blognav-title{display:block;font-size:14px;line-height:24px}
.w-blognav a:hover{color:var(--green)}
@media (max-width:900px){.post-cols{display:block}.post-cols .l-content,.post-cols .l-sidebar{width:auto}.post-cols .l-sidebar{padding:0 0 40px}.saidbar-home{max-width:none}}
.entry .us-frame>p{display:none}
.entry blockquote{margin:0;padding:0 0 0 28px;border-left:5px solid #8cc43f;font-style:italic}
.entry .wpb_text_column,.entry .wpb_content_element{margin-bottom:21px}
.entry .w-slider,.entry .royalSlider{margin-bottom:0}
.rs-thumbs{margin-top:5px}
.entry .for_blognav .w-blognav{display:flex}
/* ===== v1.4: блоки конструктора на внутренних страницах ===== */
.entry .l-section.width_full{width:100vw;position:relative;left:50%;margin-left:-50vw;max-width:none}
.entry .l-section.width_full>.l-section-h{max-width:none}
.entry .l-section.width_full .g-cols{margin:0}.entry .l-section.width_full .wpb_column{padding:0}
.entry .w-blog .g-filters,.entry .w-portfolio .g-filters{display:block}
.g-filters.style_1{background:#f2f3f5;text-align:center;font-size:0;line-height:0}
.g-filters-list{display:inline-block}
.g-filters-item{display:inline-block;vertical-align:top;font-size:14px;line-height:49px;padding:0 16.8px;cursor:pointer;color:var(--text);transition:.2s}
.g-filters-item:hover{color:var(--green)}
.g-filters-item.active{background:#fff;color:var(--green)}
.entry .w-blog-list{display:flex;flex-wrap:wrap}
.entry .w-blog[class*="cols_"] .w-blog-post{flex:0 0 auto}
.entry .w-blog.cols_2 .w-blog-post{width:50%}.entry .w-blog.cols_3 .w-blog-post{width:33.333%}.entry .w-blog.cols_4 .w-blog-post{width:25%}
.entry .w-blog.layout_tiles .w-blog-list{margin:2px}
.entry .w-blog.layout_tiles .w-blog-post{padding:2px;margin:0}
.entry .w-blog.layout_tiles .w-blog-post-h{position:relative;overflow:hidden}
.entry .w-blog.layout_tiles .w-blog-post-preview{position:relative;overflow:hidden}
.entry .w-blog.layout_tiles .w-blog-post-preview img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .3s}
.entry .w-blog.layout_tiles .w-blog-post-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(30,30,30,.8))}
.entry .w-blog.layout_tiles .w-blog-post-h:hover .w-blog-post-preview img{transform:scale(1.2)}
.entry .w-blog.layout_tiles .w-blog-post-body{position:absolute;left:0;right:0;bottom:0;padding:0 28px 14px;pointer-events:none;color:#fff}
.entry .w-blog.layout_tiles .w-blog-post-title{font-size:16.8px;line-height:24px;font-weight:700;margin:0}
.entry .w-blog.layout_tiles .w-blog-post-title a{color:#fff !important}
.entry .w-blog.layout_tiles .w-blog-post-meta,.entry .w-blog.layout_tiles .w-blog-post-content,.entry .w-blog.layout_tiles .w-blog-post-more{display:none}
.entry .w-blog-post-preview-icon{display:none}
.entry .w-blog.layout_classic .w-blog-list,.entry .w-blog.layout_smallcircle .w-blog-list{display:block;margin-top:42px}
.entry .w-blog.layout_classic .w-blog-post,.entry .w-blog.layout_smallcircle .w-blog-post{margin:0 0 70px;width:auto}
.entry .w-blog.layout_classic .w-blog-post-h,.entry .w-blog.layout_smallcircle .w-blog-post-h{display:flex;gap:44px;align-items:flex-start}
.entry .w-blog.layout_classic .w-blog-post-h>a,.entry .w-blog.layout_smallcircle .w-blog-post-h>a{flex:0 0 260px}
.entry .w-blog.layout_classic .w-blog-post-preview img,.entry .w-blog.layout_smallcircle .w-blog-post-preview img{display:block;width:260px;height:260px;object-fit:cover}
.entry .w-blog.layout_classic .w-blog-post-body,.entry .w-blog.layout_smallcircle .w-blog-post-body{flex:1;min-width:0}
.entry .w-blog.layout_classic .w-blog-post-title,.entry .w-blog.layout_smallcircle .w-blog-post-title{font-size:34px;line-height:47.6px;margin:0 0 14px}
.entry .w-blog.layout_classic .w-blog-post-title a,.entry .w-blog.layout_smallcircle .w-blog-post-title a{color:var(--head)}
.entry .w-blog .w-blog-post-meta{font-size:12.6px;line-height:16.8px;color:#aab2bd;margin:0 0 5px}
.entry .w-blog .w-blog-post-meta a{color:#aab2bd}
.entry .w-blog .w-blog-post-meta-author{display:none}
.g-loadmore{position:relative}
.g-loadmore-btn{background:#f2f3f5;padding:28px;text-align:center;font-size:16.8px;line-height:24px;color:var(--text);cursor:pointer;transition:background-color .3s}
.g-loadmore-btn:hover{background:#e8e9eb}
.g-loadmore.done,.g-preloader{display:none}
.entry .w-portfolio-list{display:flex;flex-wrap:wrap;margin:0 4px}
.entry .w-portfolio-item{position:static !important;padding:4px;text-align:center}
.entry .w-portfolio.cols_6 .w-portfolio-item{width:16.666%}.entry .w-portfolio.cols_5 .w-portfolio-item{width:20%}.entry .w-portfolio.cols_4 .w-portfolio-item{width:25%}.entry .w-portfolio.cols_3 .w-portfolio-item{width:33.333%}
.entry .w-portfolio-item-anchor{display:block;position:relative;overflow:hidden;background:#fff;cursor:zoom-in}
.entry .w-portfolio-item-image{aspect-ratio:1;background:#fff 50% 50%/cover no-repeat}
.entry .w-portfolio-item-image img{display:none}
.entry .w-portfolio-item-meta{position:absolute;left:0;right:0;bottom:0;padding:70px 28px 21px;color:#fff;opacity:0;transition:opacity 1s cubic-bezier(.4,0,.2,1)}
.entry .w-portfolio-item-meta::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(30,30,30,.8))}
.entry .w-portfolio-item-anchor:hover .w-portfolio-item-meta{opacity:1}
.entry .w-portfolio-item-title{position:relative;font-size:16.8px;line-height:23.52px;color:#fff;margin:0}
.entry .w-portfolio-item-arrow{display:none}
.entry .w-portfolio-item.hide,.entry .w-blog-post.hide{display:none}
.entry .w-iconbox{text-align:center}
.entry .w-iconbox-icon{display:inline-block;line-height:0;color:var(--green);margin-bottom:0}
.entry .w-iconbox-icon img{width:auto;max-height:75px}
.entry .w-iconbox-title{font-size:24px;line-height:33.6px;padding:14.4px 0;margin:0;color:var(--text)}
.entry .w-iconbox-text{margin-top:0}
.entry .cl-ib{display:inline-block;vertical-align:top;position:relative;width:100%;overflow:hidden;color:#fff}
.entry .cl-ib.ratio_1x1{aspect-ratio:1}.entry .cl-ib.ratio_4x3{aspect-ratio:4/3}.entry .cl-ib.ratio_3x2{aspect-ratio:3/2}.entry .cl-ib.ratio_2x1{aspect-ratio:2/1}
.entry .cl-ib-h{position:absolute;inset:0;overflow:hidden;background-color:inherit}
.entry .cl-ib-image,.entry .cl-ib-content{position:absolute;inset:0}
.entry .cl-ib-image{background:50% 50%/cover no-repeat;background-color:inherit;transform-origin:50% 0;transition:transform .3s linear}
.entry .cl-ib-image img{display:none}
.entry .cl-ib-image::after{content:"";position:absolute;inset:0;background-color:inherit;opacity:.25;transition:opacity .4s}
.entry .cl-ib-content{z-index:2;text-align:center;padding:10%}
.entry .cl-ib-title{line-height:1.4;margin:0 !important;color:inherit !important;transform:translateY(30px);transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}
.entry .cl-ib-desc{font-size:13px;line-height:1.5;margin-top:15px;opacity:0;transform:scale(.7);transition:transform .4s,opacity .4s}
.entry .cl-ib-desc p{display:none}
.entry .cl-ib:hover .cl-ib-image{transform:scale(1.3);transition-duration:7s}
.entry .cl-ib:hover .cl-ib-image::after{opacity:.75}
.entry .cl-ib:hover .cl-ib-title{transform:translateY(0)}
.entry .cl-ib:hover .cl-ib-desc{opacity:.75;transform:scale(1)}
.entry .w-image{line-height:0}.entry .w-image.align_center{text-align:center}.entry .w-image img{width:auto;display:inline-block}
.entry .w-gallery.cols_7 .w-gallery-list{grid-template-columns:repeat(7,1fr)}
.entry .wpcf7-contact-form-not-found{display:none}
@media (max-width:900px){
  .entry .w-blog.cols_4 .w-blog-post,.entry .w-blog.cols_3 .w-blog-post{width:50%}
  .entry .w-portfolio.cols_6 .w-portfolio-item,.entry .w-portfolio.cols_5 .w-portfolio-item{width:33.333%}
  .entry .w-blog.layout_classic .w-blog-post-h,.entry .w-blog.layout_smallcircle .w-blog-post-h{display:block}
  .entry .w-blog.layout_classic .w-blog-post-title,.entry .w-blog.layout_smallcircle .w-blog-post-title{font-size:24px;line-height:1.4;margin-top:16px}
}
@media (max-width:600px){
  .entry .w-blog.cols_4 .w-blog-post,.entry .w-blog.cols_3 .w-blog-post,.entry .w-blog.cols_2 .w-blog-post{width:100%}
  .entry .w-portfolio.cols_6 .w-portfolio-item,.entry .w-portfolio.cols_5 .w-portfolio-item,.entry .w-portfolio.cols_4 .w-portfolio-item{width:50%}
  .g-filters-item{line-height:40px;padding:0 10px}
}
.entry>article{max-width:none}
.entry .l-section>.l-section-h{max-width:1240px;margin-left:auto;margin-right:auto}
.entry .l-section.width_full{width:auto;left:auto;position:relative;margin-left:-35px;margin-right:-35px}
.entry .l-section.width_full>.l-section-h{max-width:none}
.post-cols .entry .l-section.width_full,.post-cols .l-section.width_full{margin-left:0;margin-right:0}
@media (max-width:900px){.entry .l-section.width_full{margin-left:-24px;margin-right:-24px}}
.entry .w-blog-post.lm-hide{display:none}
.rs-thumbs{flex-wrap:nowrap;overflow-x:auto;justify-content:safe center;margin-top:0;scrollbar-width:none}.rs-thumbs::-webkit-scrollbar{display:none}
.entry h1,.entry h2,.entry h3,.entry h4,.entry h5,.entry h6{margin-top:0;margin-bottom:21px}
.entry h2,.entry h3{margin-top:0}
.entry .wpb_text_column .wpb_wrapper>:last-child{margin-bottom:0}
.rs-banner{position:relative;width:100%;background:50% 50%/cover no-repeat;overflow:hidden}
.rs-grid{position:absolute;left:50%;top:0;transform:translateX(-50%)}
.rs-layer{position:absolute;color:#fff;line-height:1.2;white-space:normal;animation:ahFade .3s both}
.rs-layer img{max-width:none;display:block}
body.inner .l-canvas{display:flex;flex-direction:column;min-height:100vh}
body.inner .l-main{flex:1 0 auto}
@media (max-width:900px){.l-titlebar-h{padding:32px 0;min-height:114px}.l-titlebar h1,.l-titlebar .tb-h1{font-size:28.8px;line-height:40px}.post-head{padding-top:24px}.post-head .w-blog-post-title{font-size:30px;line-height:42px;margin-bottom:16px}.post-head .w-blog-post-meta{padding:6.4px 0 19.2px;margin:0}}
.entry .us-frame>img:not(:first-child),.entry .us-frame>a:not(:first-child){display:none}
/* ===== v1.5: подвал как на старом сайте ===== */
.f-menu li{position:relative;padding-left:16.8px}
.f-menu li::before{content:"";position:absolute;left:2px;top:6px;width:5px;height:5px;border:solid #676f7c;border-width:1.5px 1.5px 0 0;transform:rotate(45deg)}
.f-soc a{border-radius:5px;box-shadow:inset 0 0 0 2px #e8e9eb}
.f-rules{background:#333;border-radius:14px;padding:0 18px}
.f-wx2{display:inline-block;text-align:left}
.f-wx2 a{color:inherit}
.f-copy{color:var(--text)}
.f-copy img{display:inline-block;vertical-align:-2px}
.f-copy a{color:var(--green)}
.hdr-weather .w-live{background:none}
/* ===== v1.6: пошаговая заявка ===== */
.bkw{max-width:640px;padding:30px 34px 26px}
.bkw h3{font-size:26px;line-height:1.3;margin:0 40px 18px 0}
.bk-steps{display:flex;list-style:none;margin:0 0 22px;padding:0;counter-reset:s;gap:6px}
.bk-steps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:#aab2bd;position:relative;cursor:default}
.bk-steps li::before{content:"";position:absolute;top:15px;left:-50%;right:50%;height:2px;background:#e8e9eb;z-index:0}
.bk-steps li:first-child::before{display:none}
.bk-steps li span{position:relative;z-index:1;width:30px;height:30px;border-radius:50%;background:#fff;border:2px solid #e8e9eb;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;transition:.2s}
.bk-steps li em{font-style:normal}
.bk-steps li.can{cursor:pointer}
.bk-steps li.done span{background:var(--green);border-color:var(--green);color:#fff}
.bk-steps li.done::before,.bk-steps li.on::before{background:var(--green)}
.bk-steps li.on span{border-color:var(--green);color:var(--green)}
.bk-steps li.on em,.bk-steps li.done em{color:var(--head)}
.bk-draft{background:#f6f9ee;border-radius:6px;padding:10px 14px;font-size:13px;margin:0 0 16px}
.bk-draft button{background:none;border:0;color:var(--green);text-decoration:underline;cursor:pointer;font:inherit;padding:0;margin-left:4px}
.bk fieldset{border:0;margin:0;padding:0;min-width:0}
.bk legend{font-size:18px;color:var(--head);margin:0 0 14px;padding:0}
.bk label{font-size:13px;color:#555;margin:0 0 14px}
.bk label i{font-style:normal;color:#aab2bd;margin-left:4px}
.bk input,.bk select,.bk textarea{padding:11px 12px;font-size:15px;border-radius:6px;border:1px solid #d7dbe0;transition:border-color .2s,box-shadow .2s}
.bk input:focus,.bk select:focus,.bk textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(140,196,63,.18)}
.bk .bad{border-color:#e35d5d;box-shadow:0 0 0 3px rgba(227,93,93,.12)}
.bk-err{display:block;color:#e35d5d;font-size:12px;margin-top:4px}
.bk-nights{font-size:13px;color:var(--green);margin:-6px 0 12px;min-height:18px}
.bk-nights.warn{color:#e35d5d}
.bk-q{font-size:14px;color:var(--head);margin:4px 0 14px}
.bk-q small{display:block;color:#8a9199;font-size:12px}
.bk-seg{display:inline-flex;margin-top:8px;border:1px solid #d7dbe0;border-radius:20px;overflow:hidden}
.bk-seg label{margin:0}
.bk-seg input{position:absolute;opacity:0;width:1px;height:1px}
.bk-seg span{display:block;padding:7px 22px;font-size:14px;cursor:pointer;color:#555;transition:.2s}
.bk-seg input:checked+span{background:var(--green);color:#fff}
.bk-seg input:focus-visible+span{box-shadow:inset 0 0 0 2px #2b2b2b}
.bk-sub{background:#f7f8f9;border-radius:8px;padding:14px 14px 2px;margin:-4px 0 16px}
.bk-hint{font-size:13px;color:#8a9199;margin:0 0 14px;line-height:1.5}
.bk-safe{font-size:12px;color:#8a9199;margin:0}
.bk-sum{margin:0 0 14px;border:1px solid #e8e9eb;border-radius:8px;overflow:hidden}
.bk-sum>div{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:9px 14px;border-top:1px solid #f0f1f3;font-size:14px}
.bk-sum>div:first-child{border-top:0}
.bk-sum dt{color:#8a9199;font-size:13px}
.bk-sum dt button{display:block;background:none;border:0;padding:0;color:var(--green);font:12px var(--font);cursor:pointer;text-decoration:underline}
.bk-sum dd{margin:0;color:var(--head);word-break:break-word}
.bk-rules{font-size:13px;margin:0 0 14px}.bk-rules summary{cursor:pointer;color:var(--green)}.bk-rules div{padding:8px 0 0;color:#555}
.bk .bk-check{display:flex;gap:10px;align-items:flex-start;font-size:13px}
.bk .bk-check input{width:18px;height:18px;margin:2px 0 0;flex:0 0 18px}
.bk-nav{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #f0f1f3}
.bk-back{background:none;border:0;color:#8a9199;font:14px var(--font);cursor:pointer;padding:8px 0}
.bk-back:hover{color:var(--head)}
.bk-saved{flex:1;text-align:center;font-size:12px;color:#aab2bd;opacity:0;transition:opacity .3s}
.bk-saved.on{opacity:1}
.bk-next,.bk-send{min-width:150px}
.bk-done{text-align:center;padding:10px 0}
.bk-done-ic{width:64px;height:64px;border-radius:50%;background:var(--green);color:#fff;font-size:32px;line-height:64px;margin:0 auto 14px}
.bk-done h4{font-size:22px;margin:0 0 8px}
@media (max-width:600px){
  #booking.modal{padding:0}
  #booking .modal-box{min-height:100%;border-radius:0;padding:22px 16px 90px}
  .bkw h3{font-size:21px}
  .bk-steps li em{display:none}
  .bk-steps li.on em{display:block;position:absolute;top:36px;white-space:nowrap}
  .bk-steps{margin-bottom:34px}
  .bk-nav{position:fixed;left:0;right:0;bottom:0;background:#fff;padding:12px 16px;margin:0;box-shadow:0 -4px 16px rgba(0,0,0,.08);z-index:2}
  .bk-next,.bk-send{min-width:0;flex:0 0 auto}
  .bk-sum>div{grid-template-columns:1fr;gap:2px}
  .bk input,.bk select,.bk textarea{font-size:16px}
}
#booking [hidden]{display:none !important}
/* ===== v1.7: цена в записи и миниатюры слайдера как на старом сайте ===== */
.entry .bg-dom-cena{background:#8cc43f;color:#fff;font-size:18px;line-height:28px;padding:10px;margin:0}
.entry .bg-dom-cena p{margin:0;color:#fff}
.entry .bg-dom-cena strong{font-weight:700;color:#fff}
.entry .l-section.color_custom .wpb_text_column{margin-bottom:0}
.entry .rs-thumbs{justify-content:flex-start;gap:4px;padding-top:4px;margin:0}
.entry .rs-thumbs img{opacity:1;transition:opacity .3s,background-color .3s;background:#8cc43f}
.entry .rs-thumbs img.on{opacity:.3}
.entry .rs-thumbs img:hover{opacity:.8}
@media (max-width:767px){.entry .l-section .g-cols>.wpb_column:not(:last-child){margin-bottom:32px}.entry .rs-thumbs img{width:64px;height:64px;flex-basis:64px}}
.rs-t{display:block;line-height:0;background:#8cc43f;flex:0 0 auto}
.entry .bg-dom-cena{line-height:24px}
@media (max-width:767px){.entry .bg-dom-cena{line-height:28px}}
.entry .rs-thumbs{justify-content:safe center}
@media (min-width:768px){
  .entry .l-section.color_custom:has(.bg-dom-cena)>.l-section-h>.g-cols{flex-wrap:nowrap;align-items:center}
  .entry .l-section.color_custom:has(.bg-dom-cena) .wpb_column{flex:0 1 auto !important;max-width:none}
  .entry .l-section.color_custom:has(.bg-dom-cena) .wpb_column:last-child{flex:1 1 auto !important}
  .entry .bg-dom-cena p{white-space:nowrap}
}
/* ===== v1.8: записи-«статьи» с большой обложкой (как preview_trendy) ===== */
.post-hero{position:relative;min-height:577px;padding:160px 35px 0;background:#f2f3f5;text-align:center;overflow:hidden}
.ph-img{position:absolute;inset:0;background:50% 50%/cover no-repeat}
.ph-body{position:relative;max-width:1240px;margin:0 auto;padding:160px 0 0}
.ph-body h1{font-size:40px;line-height:56px;font-weight:700;color:#fff;margin:0 0 21px}
.ph-cat{position:absolute;left:0;right:0;top:118px;font-size:0}
.ph-cat a{display:inline-block;font-size:9.8px;line-height:25.2px;font-weight:700;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.3);padding:0 11.2px;margin:2.1px;border-radius:70px}
.post-hero+.l-main .entry>article{padding-top:56px}
@media (max-width:900px){.post-hero{min-height:420px;padding-top:100px}.ph-body{padding-top:110px}.ph-cat{top:68px}.ph-body h1{font-size:28px;line-height:1.3}}
.post-hero+.l-main .entry>article{padding-bottom:56px}
.post-hero+.l-main .entry>article{max-width:1240px}
.post-hero+.l-main .post-content h2{padding-top:14px}
@media (min-width:768px){.entry .rs-thumbs{padding-top:0}}
.hs-wrap{position:relative;line-height:0;max-width:100%}
.hs-wrap img{display:block;width:100%;height:auto}
.hs-svg{position:absolute;inset:0;width:100%;height:100%}
.hs-svg polygon,.hs-svg rect,.hs-svg circle{fill:#fff;fill-opacity:0;stroke:#fff;stroke-opacity:0;stroke-width:2;transition:.2s;cursor:pointer;vector-effect:non-scaling-stroke}
.hs-svg a:hover polygon,.hs-svg a:hover rect,.hs-svg a:hover circle,.hs-svg a:focus polygon{fill:#3ca2a2;fill-opacity:.81;stroke:#235b6e;stroke-opacity:1}
.hs-tip{position:absolute;z-index:3;transform:translate(-50%,calc(-100% - 14px));background:#2e2d29;color:#dfebe5;font-size:13px;line-height:1.4;padding:6px 10px;border-radius:3px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}
.hs-tip.on{opacity:1}
.entry .hotspots-container,.entry .hotspots-image-container{max-width:none}
.entry .rs-thumbs{padding:4px 0 0 4px;gap:4px}
/* v1.4: тексты заявки */
#booking .bk-intro{background:#f7f8f3;border-left:3px solid #8cc43f;border-radius:4px;padding:10px 14px;margin:0 0 16px;font-size:13px;line-height:1.5;color:#555}
#booking .bk-intro summary{cursor:pointer;font-weight:500;color:#333}
#booking .bk-intro p{margin:6px 0 0;white-space:pre-line}
#booking .bk-pre,#booking .bk-hint{display:block;font-size:12px;line-height:1.45;color:#888;margin:4px 0 0;font-weight:400}
#booking .bk-terms{max-height:220px;overflow:auto;background:#f7f8f3;border-radius:4px;padding:10px 14px;font-size:12.5px;line-height:1.5;white-space:pre-line;color:#555;margin:12px 0}
#booking .bk-link{background:none;border:0;padding:0;color:#8cc43f;text-decoration:underline;cursor:pointer;font:inherit}
/* v1.4.2: секции во всю ширину, как на старом сайте */
.l-main .entry .post-content>.l-section,.l-main .entry .post-content>.wpb_row{margin-left:-35px!important;margin-right:-35px!important;padding-left:35px;padding-right:35px}
.l-main .entry .post-content>.l-section.width_full{padding-left:0;padding-right:0}
@media (max-width:900px){.l-main .entry .post-content>.l-section,.l-main .entry .post-content>.wpb_row{margin-left:-24px!important;margin-right:-24px!important;padding-left:24px;padding-right:24px}.l-main .entry .post-content>.l-section.width_full{padding-left:0;padding-right:0}}
.l-main .entry .post-content>.l-section.width_full{width:calc(100% + 70px);left:-35px;position:relative}
@media (max-width:900px){.l-main .entry .post-content>.l-section.width_full{width:calc(100% + 48px);left:-24px}}
.rs-arr,.rs-arr:hover,.car-btn,[class*="-arr"],[class*="prev"]:not(.w-blognav-prev),[class*="next"]:not(.w-blognav-next):not(.bk-next){background:none!important;box-shadow:none!important}
.rs-arr{text-shadow:0 1px 4px rgba(0,0,0,.5)}
.entry .krug-cena{border:1px solid #c6a841;border-radius:50px;padding:10px}
.entry .krug-cena h3,.entry .krug-cena h4{font-size:28px;line-height:39.2px;text-align:center;margin:0 0 21px}
.entry .l-section.color_custom h2{color:#676f7c}
/* фильтр галереи по центру, как на оригинале (style_2) */
.entry .g-filters.style_2{display:block;text-align:center;font-size:0;line-height:0;margin:0 0 1.5rem;padding:0 35px;width:100%;box-sizing:border-box}
.entry .g-filters.style_2 .g-filters-list{display:inline-block;max-width:100%}
.entry .g-filters.style_2 .g-filters-item{display:inline-block;font-size:14.4px;line-height:48px;padding:0 9.6px;border-radius:0;background:none;color:#676f7c}
.entry .g-filters.style_2 .g-filters-item:hover{color:#8cc43f}
.entry .g-filters.style_2 .g-filters-item.active{background:#f2f3f5;color:#8cc43f}
@media (max-width:900px){.entry .g-filters.style_2{padding:0 24px}.entry .g-filters.style_2 .g-filters-item{line-height:40px}}
/* прилипающее меню справа */
@media (min-width:901px){.post-cols{align-items:flex-start}.post-cols>.l-sidebar{position:-webkit-sticky;position:sticky;top:20px;align-self:flex-start}.admin-bar .post-cols>.l-sidebar{top:52px}}
/* full-width секции: одна схема для всех страниц */
.l-main .entry .post-content>.l-section.width_full{margin-left:0!important;margin-right:0!important;width:calc(100% + 70px)!important;left:-35px!important;max-width:none;position:relative}
@media (max-width:900px){.l-main .entry .post-content>.l-section.width_full{width:calc(100% + 48px)!important;left:-24px!important}}
/* документ заявки */
#booking .bk-doc{margin:14px 0;padding:14px 16px;border:1px solid #e3e5e8;border-radius:6px;background:#fafbf8}
#booking .bk-doc-t{font-weight:500;color:#333;margin:0 0 10px;font-size:14px}
#booking .bk-doc-b{display:flex;flex-wrap:wrap;gap:8px}
#booking .bk-doc-b button{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:1px solid #8cc43f;border-radius:4px;background:#fff;color:#5d8f1f;font:inherit;font-size:14px;cursor:pointer;transition:.2s}
#booking .bk-doc-b button:hover{background:#8cc43f;color:#fff}
#booking .bk-done .bk-doc{text-align:left;margin:16px auto;max-width:420px}
@media (max-width:480px){#booking .bk-doc-b button{flex:1 1 100%;justify-content:center}}
/* архивы рубрик/блога как на оригинале: круглые фото, сайдбар */
.arch-cols .post-list{padding:56px 0 0}
.arch-cols .post-list .w-blog-post{display:flex;gap:43px;align-items:flex-start;margin:0 0 70px}
.arch-cols .post-list .pl-img{flex:0 0 260px;width:260px;height:260px;border-radius:50%;overflow:hidden;display:block}
.arch-cols .post-list .pl-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.arch-cols .post-list .pl-img:hover img{transform:scale(1.05)}
.arch-cols .pl-body{flex:1;min-width:0}
.arch-cols .post-list .w-blog-post-title{font-size:34px;line-height:47.6px;font-weight:300;margin:0 0 14px}
.arch-cols .post-list .w-blog-post-title a{color:#434955}.arch-cols .post-list .w-blog-post-title a:hover{color:#8cc43f}
.arch-cols .w-blog-post-meta{margin:0}.arch-cols .pl-cat a{font-size:12.6px;line-height:16.8px;color:#aab2bd}
.arch-cols .pl-exc{margin-top:4.2px;color:#676f7c}.arch-cols .pl-exc p{margin:0}
@media (max-width:900px){.arch-cols .post-list .w-blog-post{flex-direction:column;align-items:center;text-align:center;gap:20px}.arch-cols .post-list .pl-img{width:200px;height:200px;flex-basis:200px}.arch-cols .post-list .w-blog-post-title{font-size:26px;line-height:36px}}
/* согласия и cookie */
#booking .bk-consents{display:grid;gap:8px;margin:12px 0}
#booking .bk-consents a{color:#5d8f1f;text-decoration:underline}
.ah-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:9998;max-width:760px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:14px 18px;background:#2b2f36;color:#e8eaed;border-radius:8px;box-shadow:0 6px 24px rgba(0,0,0,.25);font-size:14px;line-height:1.5}
.ah-cookie[hidden]{display:none}
.ah-cookie p{margin:0;flex:1}.ah-cookie a{color:#8cc43f;text-decoration:underline}
.ah-cookie-ok{flex:none;border:0;border-radius:4px;background:#8cc43f;color:#fff;padding:9px 18px;font:inherit;cursor:pointer}
.ah-cookie-ok:hover{background:#7ab232}
@media (max-width:600px){.ah-cookie{flex-direction:column;align-items:stretch;text-align:left}.ah-cookie-ok{width:100%}}
/* простые страницы (рыбы и т.п.) без секций WPBakery — текст в контейнере 1240, как на старом сайте */
.l-main .entry .post-content>:not(.l-section):not(.wpb_row):not(style):not(script){max-width:1240px;margin-left:auto;margin-right:auto}
.l-main .entry .post-content:not(:has(>.l-section)){padding:56px 0}
.l-main .entry .post-content:not(:has(>.l-section)) img{max-width:100%;height:auto}
/* пустые абзацы-обёртки (только <style>/пусто) не дают отступов — убирает щели под заголовком */
.entry p:empty,.entry p:has(>style:only-child),.entry p:has(>script:only-child){margin:0!important;padding:0!important;height:0}

/* Правила оплаты — структурированный текст */
#rules .bk-note{background:#fff;border-left:0;padding:0;font-size:14px;line-height:1.55;color:#333}
#rules .rules h4{margin:20px 0 8px;font-size:16px;font-weight:500;color:#26384a;border-bottom:2px solid var(--green);padding-bottom:4px}
#rules .rules h4:first-of-type{margin-top:14px}
#rules .rules p{margin:0 0 8px}
#rules .rules ul{margin:0 0 8px;padding-left:20px;list-style:disc}
#rules .rules li{margin:3px 0}
#rules .rules table{width:100%;border-collapse:collapse;margin:0 0 8px}
#rules .rules td{padding:5px 8px;border-bottom:1px solid #eee}
#rules .rules tr:nth-child(odd) td{background:#f7f9f2}
#rules .rules td:last-child{text-align:right;white-space:nowrap;font-weight:500}
#rules .rules-note{font-size:13px;color:#777;font-style:italic}
