/* ============================================================
   NEO redesign — dosug39: header / logo / footer (orange theme)
   ============================================================ */
:root{
  --neo-primary:#0ea5e9;
  --neo-primary-dark:#0284c7;
  --neo-dark:#08222e;
  --neo-dark-2:#0d3347;
  --neo-cream:#f0f9ff;
  --neo-muted:#7fb6cf;
  --neo-border:#dbeefe;
}
.neo-wrap{max-width:1100px;margin:0 auto;padding:0 15px;box-sizing:border-box;}

/* ============ LOGO ============ */
.neo-logo{display:inline-flex;flex-direction:column;line-height:1;text-decoration:none;cursor:pointer;}
.neo-logo:hover,.neo-logo:focus{text-decoration:none;}
.neo-logo__mark{font-family:'ProximaNovaBold',Arial,sans-serif;font-size:34px;font-weight:800;color:var(--neo-dark);letter-spacing:-1.5px;text-transform:lowercase;white-space:nowrap;}
.neo-logo__mark .neo-logo__accent{color:var(--neo-primary);}
.neo-logo__sub{font-size:10.5px;color:var(--neo-muted);letter-spacing:2.2px;text-transform:uppercase;margin-top:5px;white-space:nowrap;}

/* ============ HEADER ============ */
.neo-header{background:#fff;box-shadow:0 2px 12px rgba(43,26,18,.06);}
/* top utility bar */
.neo-topbar{background:var(--neo-dark);color:#fff;font-size:13px;}
.neo-topbar__in{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:5px 15px;flex-wrap:wrap;gap:6px;}
.neo-city{display:flex;align-items:center;gap:6px;color:#fff;}
.neo-city .fa-home{color:var(--neo-primary);}
.neo-city label.city{margin:0;color:#d8c8bc;font-weight:400;font-size:13px;}
.neo-city .city_btn{background:transparent;border:none;color:#fff;font-weight:600;padding:0 2px;font-size:13px;cursor:pointer;}
.neo-city .city_btn:hover,.neo-city .city_btn:focus{color:var(--neo-primary);}
.neo-city .city_btn .caret{margin-left:4px;border-top-color:#fff;}
.neo-city .city_btn:hover .caret{border-top-color:var(--neo-primary);}
.neo-city .dropdown-menu{background:#fff;border-radius:8px;border:1px solid #dbeefe;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:6px;}
.neo-city .dropdown-menu li a{color:var(--neo-dark);padding:7px 14px;border-radius:6px;font-size:13px;}
.neo-city .dropdown-menu li a:hover{color:var(--neo-primary);background:var(--neo-cream);}
.neo-topbar__right{display:flex;align-items:center;gap:18px;}
.neo-toplink{color:#fff;}
.neo-toplink a{color:#fff;text-decoration:none;transition:color .2s;}
.neo-toplink a:hover{color:var(--neo-primary);text-decoration:none;}
.neo-toplink i{margin-right:5px;color:var(--neo-primary);}

/* main header row */
.neo-header__main{border-bottom:3px solid var(--neo-primary);}
.neo-header__in{display:flex;align-items:center;gap:24px;padding:14px 15px;}
.neo-nav{flex:1 1 auto;display:flex;justify-content:center;}
.neo-menu{display:flex;list-style:none;margin:0;padding:0;gap:6px;flex-wrap:wrap;justify-content:center;}
.neo-menu li{list-style:none;}
.neo-menu li a{display:block;padding:9px 13px;color:var(--neo-dark);font-size:15px;font-weight:600;text-decoration:none;border-radius:8px;transition:all .2s;white-space:nowrap;}
.neo-menu li a:hover{color:var(--neo-primary);background:var(--neo-cream);text-decoration:none;}
.neo-menu li.active a,.neo-menu li.here a{color:#fff;background:var(--neo-primary);}
.neo-menu li.active a:hover,.neo-menu li.here a:hover{color:#fff;background:var(--neo-primary-dark);}
.neo-header__actions{display:flex;align-items:center;gap:14px;flex:0 0 auto;}
.neo-btn{display:inline-block;padding:11px 22px;background:var(--neo-primary);color:#fff;font-size:15px;font-weight:700;border-radius:8px;text-decoration:none;transition:all .2s;white-space:nowrap;border:none;cursor:pointer;}
.neo-btn:hover,.neo-btn:focus{background:var(--neo-primary-dark);color:#fff;text-decoration:none;box-shadow:0 6px 16px rgba(2,132,199,.35);transform:translateY(-1px);}

/* hamburger (mobile) */
.neo-header .menu-opener{display:none;cursor:pointer;align-items:center;float:none;margin-left:0;}
.neo-header .menu-opener .bars{width:30px;margin-right:0;}
.neo-header .menu-opener .bars .bar{width:30px;height:3px;margin-bottom:5px;background:var(--neo-dark);border-radius:2px;}
.neo-header .menu-opener .bars .bar:last-child{margin-bottom:0;}
.neo-header .menu-opener:hover .bars .bar{background:var(--neo-primary);}

/* ============ FOOTER ============ */
.neo-footer{margin-top:40px;background:var(--neo-dark);color:#e7d8cf;}
.neo-footer__main{padding:44px 0 30px;}
.neo-footer .neo-logo__mark{color:#fff;}
.neo-footer .neo-logo__sub{color:#8d7a6c;}
.neo-footer__about{margin-top:18px;font-size:13px;line-height:1.7;color:#7fb6cf;max-width:280px;}
.neo-footer__title{font-size:15px;font-weight:700;color:#fff;margin:0 0 16px;}
.neo-footer__title--pay{margin-top:0;}
.neo-social{display:inline-flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;}
.neo-social:hover,.neo-social:focus{text-decoration:none;}
.neo-social__icon{width:74px;height:74px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;color:#fff;box-shadow:0 6px 18px rgba(0,0,0,.28);transition:transform .2s;}
.neo-social:hover .neo-social__icon{transform:translateY(-3px);}
.neo-social__icon--tg{background:linear-gradient(135deg,#2AABEE,#1f8fd0);}
.neo-social__icon--max{background:linear-gradient(135deg,#0064FF,#0046c0);}
.neo-social__label{font-size:13px;font-weight:600;color:#e7d8cf;}
.neo-social:hover .neo-social__label{color:var(--neo-primary);}
.neo-footer__pay{display:inline-block;color:var(--neo-primary);font-weight:700;font-size:14px;text-decoration:none;}
.neo-footer__pay:hover{color:#fff;text-decoration:none;}
.neo-footer__pay-note{font-size:12.5px;color:#8d7a6c;margin:8px 0 0;}
.neo-footer__sbp{margin-top:14px;display:block;}
.neo-footer__bottom{border-top:1px solid #0d3347;padding:18px 0;}
.neo-footer__bottom-in{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.neo-footer__copy{font-size:13px;color:#7fb6cf;}
.neo-footer__links{display:flex;gap:22px;align-items:center;}
.neo-footer__links a{color:#e7d8cf;font-size:13.5px;text-decoration:none;}
.neo-footer__links a:hover{color:var(--neo-primary);text-decoration:none;}
.neo-footer__links .feedback{cursor:pointer;}
.neo-footer__note{font-size:11.5px;color:#7a685a;padding-top:12px;line-height:1.6;}
.neo-footer-col{margin-bottom:26px;}

/* ============ RESPONSIVE ============ */
@media (max-width:991px){
  .neo-nav{justify-content:flex-start;}
  .neo-menu{gap:2px;}
  .neo-menu li a{padding:9px 9px;font-size:14px;}
}
@media (max-width:768px){
  .neo-header__in{flex-wrap:wrap;gap:14px;position:relative;}
  .neo-header .menu-opener{display:flex;}
  .neo-nav{display:none;flex:1 1 100%;order:3;}
  .neo-nav.open{display:block;}
  .neo-menu{flex-direction:column;align-items:stretch;gap:2px;}
  .neo-menu li a{text-align:left;}
  .neo-header__actions{margin-left:auto;}
  .neo-logo__mark{font-size:28px;}
  .neo-topbar__right{gap:12px;}
}
@media (max-width:560px){
  .neo-btn{padding:9px 16px;font-size:14px;}
  .neo-header__actions{gap:10px;}
  .neo-footer__bottom-in{flex-direction:column;align-items:flex-start;}
}
/* ===== refinements ===== */
.neo-logo{flex-shrink:0;}
.neo-header__in{gap:18px;}
.neo-logo__sub{letter-spacing:1.6px;}
@media (max-width:1080px){
  .neo-menu li a{padding:9px 10px;font-size:14px;}
  .neo-header__in{gap:14px;}
  .neo-btn{padding:10px 16px;font-size:14px;}
}
/* ===== tweaks v2 ===== */
.neo-logo__sub{font-size:9px;letter-spacing:1.2px;}
#main{margin-top:32px;}
.neo-footer__nav{border-top:1px solid #0d3347;padding:20px 0;}
.neo-footer__menu{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:8px 28px;justify-content:center;}
.neo-footer__menu li{list-style:none;}
.neo-footer__menu li a{color:#e7d8cf;font-size:14px;font-weight:600;text-decoration:none;transition:color .2s;}
.neo-footer__menu li a:hover{color:var(--neo-primary);text-decoration:none;}
.neo-footer__menu li.first a,.neo-footer__menu li.last a{font-weight:600;}
/* ===== v3: footer premium / city center / anketa fix ===== */

/* --- city button centering (PC topbar) --- */
.neo-city .city_btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;line-height:1.4;}
.neo-city .city_btn .caret{margin-left:0;position:relative;top:-1px;}

/* --- footer: vertical menu --- */
.neo-footer__menu{display:block;list-style:none;margin:0;padding:0;}
.neo-footer__menu li{list-style:none;margin:0;}
.neo-footer__menu li a{display:inline-block;color:#e7d8cf;font-size:14px;text-decoration:none;padding:6px 0;transition:color .2s,transform .2s;}
.neo-footer__menu li a:hover{color:var(--neo-primary);text-decoration:none;transform:translateX(4px);}
.neo-footer__menu li a:before{content:"›";color:var(--neo-primary);margin-right:8px;}

/* --- footer: messenger icons --- */
.neo-footer__socials{display:flex;gap:14px;align-items:center;}
.neo-msg{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:26px;text-decoration:none;box-shadow:0 6px 16px rgba(0,0,0,.3);transition:transform .2s,box-shadow .2s;}
.neo-msg:hover{transform:translateY(-4px);box-shadow:0 10px 22px rgba(0,0,0,.4);color:#fff;text-decoration:none;}
.neo-msg--tg{background:linear-gradient(135deg,#2AABEE,#1f8fd0);}
.neo-msg--max{background:linear-gradient(135deg,#0064FF,#0039b3);font-size:16px;font-weight:800;}
.neo-footer__social-note{font-size:12px;color:#8d7a6c;margin-top:14px;}

/* --- footer: light SBP logo --- */
.neo-footer__sbp{filter:brightness(0) invert(1);opacity:.85;margin-top:14px;display:block;}

/* --- anketa page fixes --- */
#main .l-wrap{min-height:auto;}
.n-content .container{width:auto;max-width:none;margin:0;padding:0;float:none;}
.n-content .container .col-md-9,.n-content .container .col-xs-9{width:100%;float:none;padding:0;}
.b-profile__details{padding-left:0;}
.b-profile__photos{margin-right:20px;}
.b-profile__phone{background:#f0f9ff;border:1px solid #dbeefe;border-radius:10px;padding:14px 16px;margin:6px 0 14px;}
.b-profile__descrip{margin-top:8px;font-size:14px;}
.b-profile__params{margin-bottom:6px;}
.b-profile__params__col{line-height:1.9;}

/* --- anketa mobile --- */
@media (max-width:768px){
  #sidebar-first.b-sidebar{float:none;width:auto;margin:0 0 20px;}
  .b-profile__photos{float:none;width:auto;margin:0 auto 16px;}
  .b-profile__photos__one img{width:100% !important;height:auto !important;max-width:100%;}
  .b-profile__details{padding-left:0;}
}
/* ===== v4: MAX purple icon + mobile anketa fix ===== */

/* MAX messenger icon: authentic purple logo on white circle */
.neo-msg--max{background:#fff;}
.neo-msg--max img{width:44px;height:44px;object-fit:contain;display:block;}

/* Mobile anketa page — clean layout */
@media (max-width:768px){
  .n-content{padding-left:0;}
  .n-content .container,.n-content .container [class*="col-"]{width:100%;max-width:none;padding:0;float:none;margin:0;}
  .n-content h1{font-size:20px;margin:8px 0 6px;}
  .b-profile__place{margin:0 0 6px;font-size:14px;}
  .b-profile__photos{float:none;width:auto;margin:0 auto 14px;text-align:center;overflow:hidden;}
  .b-profile__photos__one{float:none;display:inline-block;vertical-align:top;margin:0 5px 10px;}
  .b-profile__photos__one img{width:auto !important;height:auto !important;max-width:100%;}
  .b-profile__details{padding-left:0;overflow:visible;}
  .b-profile__bages{position:static;display:block;margin:0 0 10px;}
  .b-profile__params__col{float:none;width:100%;margin-bottom:8px;}
  .b-profile__params__col span{width:110px;}
  .b-profile__stit{font-size:19px;margin:12px 0 4px;}
  .b-profile__phone{text-align:left;padding:12px 14px;}
  .b-profile__tel{font-size:19px;}
  .b-profile__quote{line-height:1.7;}
  .sexual_list_col{width:100%;float:none;margin-bottom:12px;}
}
/* ===== v5: mobile anketa robust fix (contain floats, cleaner) ===== */
@media (max-width:768px){
  .b-profile__params__col{float:none !important;width:100% !important;overflow:hidden;margin-bottom:12px;}
  .b-profile__params__col span{float:left;width:110px;}
  .b-profile__params__col ul{list-style:none;padding:0;margin:0;}
  .b-profile__params__col ul li{line-height:1.9;}
  .breadcrumbs{font-size:12px;line-height:1.55;}
  .b-profile__tel{font-size:18px;word-break:break-word;}
  .b-profile__place{margin:0 0 8px;}
  .n-content h1{font-size:20px;margin:8px 0 6px;line-height:1.3;}
}
/* ===== v6: mobile anketa CORRECT (2 columns + padding) ===== */
@media (max-width:768px){
  /* 1) content padding — fix flush-left */
  .b-content{padding:0 15px !important;}
  .n-content{padding-left:0 !important;padding-right:0 !important;}

  /* 2) Мои тарифы / Мои данные — 2 columns */
  .b-profile__params__col{float:left !important;width:50% !important;margin-bottom:0 !important;}
  .b-profile__params__col span{width:95px !important;}
  .b-profile__params{overflow:hidden;margin-bottom:14px;}

  /* 3) Сексуальные предпочтения — 2 columns */
  .sexual_list_col{width:50% !important;float:left !important;margin-bottom:14px !important;}
  .sexual_list{padding:0 8px 0 0;}

  /* 4) comment form + tail spacing */
  .h-comment{padding-left:0;margin-left:0;}
  .b-profile__slasher{margin-left:0;margin-right:0;}
  .b-border.mb-25{margin-left:0;margin-right:0;}
}
/* ===== v7: badge+msgs one line, sexual indent, comment form ===== */
/* 1) ПРЕМИУМ badge on one line with messenger buttons */
.b-profile__details > div:first-child{display:inline-block;vertical-align:middle;margin-bottom:0 !important;}
.b-profile__details > div:first-child a{display:inline-block;}
.b-profile__bages{position:static !important;display:inline-block;vertical-align:middle;margin:0 0 0 12px !important;}
.b-profile__bage{margin:0 !important;}

/* 3) Сексуальные предпочтения — category indentation */
.sexual_list span{display:block;margin:16px 0 8px;font-size:15px;color:#0284c7;font-weight:700;}
.sexual_list span:first-child{margin-top:2px;}
.sexual_list li{padding-left:10px;}

/* 4) Comment form — padding + clean fields */
.comments{padding:0;}
#comment-form{padding:16px;background:#fff;border:1px solid #dbeefe;border-radius:12px;box-sizing:border-box;}
#comment-form .form-group{margin-bottom:12px;}
#comment-form .form-group input,
#comment-form .form-group textarea{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #e0ddd8;border-radius:8px;font-size:15px;font-family:inherit;background:#fff;}
#comment-form .form-group textarea{min-height:110px;resize:vertical;}
#comment-form #sendCommentBtn{background:#0ea5e9;color:#fff;border:none;border-radius:8px;padding:12px 26px;font-size:15px;font-weight:700;cursor:pointer;}
#comment-form #sendCommentBtn:hover{background:#0284c7;}
/* ===== v8: sexual category separation + comment title alignment ===== */
/* 3) category header: bigger top margin (fix :first-child bug), header close to own items */
.sexual_list span{display:block;margin:22px 0 8px;font-size:15px;color:#0284c7;font-weight:700;}
.sexual_list li{padding-left:10px;}

/* 4) comment form title alignment */
.h-comment{text-align:left !important;margin:20px 0 16px !important;}
.comments .title{margin:0 0 14px !important;padding:0 !important;font-size:17px;font-weight:700;color:#08222e;}
/* ===== v9: definitive — override :first-child specificity ===== */
.sexual_list span,
.sexual_list span:first-child{margin:22px 0 8px !important;display:block;font-size:15px;color:#0284c7;font-weight:700;}
.h-comment{text-align:left !important;margin:20px 0 16px !important;}
.comments .title{margin:0 0 14px !important;padding:0 !important;font-size:17px !important;font-weight:700;color:#08222e;}

/* ===== v10: comment form — beat style.css (#sendCommentBtn float/30%, global input/textarea) ===== */
#comm #comment-form{padding:16px;background:#fff;border:1px solid #dbeefe;border-radius:12px;box-sizing:border-box;width:100%;margin:0;}
#comm #comment-form .form-group{margin:0 0 12px !important;padding:0;}
#comm #comment-form .form-group input[type="text"],
#comm #comment-form .form-group input{display:block;width:100% !important;box-sizing:border-box;height:44px;padding:10px 12px !important;margin:0;border:1px solid #d9d4cf !important;border-radius:8px !important;font:15px/1.3 Arial,Helvetica,sans-serif;color:#08222e;background:#fff;}
#comm #comment-form textarea{display:block;width:100% !important;box-sizing:border-box;height:auto !important;min-height:120px;padding:10px 12px !important;margin:0;border:1px solid #d9d4cf !important;border-radius:8px !important;font:15px/1.4 Arial,Helvetica,sans-serif;color:#08222e;background:#fff;resize:vertical;}
#comm #comment-form input:focus,#comm #comment-form textarea:focus{outline:none;border-color:#0ea5e9 !important;box-shadow:0 0 0 3px rgba(14,165,233,.15);}
#comm #comment-form .error{display:block;color:#0284c7;font-size:12px;min-height:0;}
#comm #comment-form #sendCommentBtn{float:none !important;display:inline-block;width:auto !important;height:auto;margin:6px 0 0 !important;padding:12px 28px !important;border:none;border-radius:8px;background:#0ea5e9;color:#fff;font:700 15px/1.2 Arial,Helvetica,sans-serif;cursor:pointer;box-shadow:0 6px 16px rgba(2,132,199,.25);transition:background .2s;}
#comm #comment-form #sendCommentBtn:hover{background:#0284c7;}
#comm > h3.title{font-size:17px !important;font-weight:700;color:#08222e;margin:24px 0 12px !important;padding:0;text-align:left;}
@media (max-width:768px){
  #comm #comment-form{padding:14px;}
  #comm #comment-form #sendCommentBtn{display:block;width:100% !important;padding:14px !important;}
}

/* ===== v11: mobile gutters for anketa page (content must not touch screen edges) ===== */
@media (max-width:950px){
  #main .l-wrap{width:100% !important;max-width:100% !important;padding:0 16px !important;box-sizing:border-box !important;}
  #main .l-wrap .b-content,#main .l-wrap .n-content,#main .l-wrap .view-content{margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;float:none !important;}
  #comm,#comm .title,#comm > h3.title{margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important;box-sizing:border-box !important;}
  #comm #comment-form{margin-left:0 !important;margin-right:0 !important;width:100% !important;}
  .row{margin-left:0 !important;margin-right:0 !important;}
}

/* ===== v12: anketa mobile gutters — set on #main and .b-content (beats style.css 5px) ===== */
@media (max-width:768px){
  #main{padding-left:16px !important;padding-right:16px !important;box-sizing:border-box !important;overflow-x:hidden;}
  #main .l-wrap{padding-left:0 !important;padding-right:0 !important;}
  #main .b-content{padding:0 !important;margin:0 !important;width:100% !important;box-sizing:border-box !important;}
  #main .n-content{padding:0 !important;margin:0 !important;}
  #comm,#comm #comment-form{box-sizing:border-box !important;max-width:100% !important;}
}

/* ===== v14: mobile home price — label narrower so "100000 р" stays on one line ===== */
@media (max-width:768px){
  .b-itemlist__one__price span{width:84px !important;}
}

/* ===== v15: cabinet template sets body{min-width:1024px}; cancel it on phones ===== */
@media (max-width:768px){
  body{min-width:0 !important;overflow-x:hidden;}
}

/* ===== v16: mobile header — "Добавить Анкету" was clipped at right edge (390px) ===== */
@media (max-width:768px){
  .neo-header__in{gap:10px;padding:10px 12px;flex-wrap:nowrap;}
  .neo-logo{min-width:0;flex:0 1 auto;}
  .neo-logo__mark{font-size:24px;}
  .neo-logo__sub{font-size:8px;letter-spacing:.8px;white-space:normal;max-width:140px;}
  .neo-header__actions{gap:8px;flex:0 0 auto;margin-left:auto;}
  .neo-header .neo-btn{padding:8px 10px;font-size:12px;line-height:1.2;white-space:normal;max-width:96px;text-align:center;}
}

/* ===== v17: scoped override of legacy #addAnketa_min / #header rules inside neo header (mobile) ===== */
@media (max-width:768px){
  #header.neo-header .neo-header__in{position:relative;overflow:visible;}
  #header.neo-header .neo-header__actions{position:static !important;float:none !important;}
  #header.neo-header .neo-header__actions a.neo-btn,
  #header.neo-header #addAnketa_min{position:static !important;right:auto !important;float:none !important;display:inline-block !important;width:auto !important;height:auto !important;line-height:1.2 !important;margin:0 !important;padding:8px 10px !important;white-space:normal !important;max-width:96px !important;text-align:center !important;box-sizing:border-box !important;}
  #header.neo-header .menu-opener{float:none !important;margin:0 !important;}
}

/* ===== v18 (v19: full-width): desktop love/intimacy banner between menu and listings (350px, animated) ===== */
.neo-love{position:relative;height:350px;border-radius:0;overflow:hidden;width:100vw;max-width:100vw;margin:0 calc(50% - 50vw) 26px;display:flex;align-items:center;background:linear-gradient(120deg,#08222e,#0d3347,#0284c7,#0ea5e9,#08222e);background-size:300% 300%;animation:neoLoveBg 12s ease infinite;box-shadow:0 14px 40px rgba(43,26,18,.25);}
@keyframes neoLoveBg{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.neo-love__bg{position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(14,165,233,.35),transparent 45%),radial-gradient(circle at 80% 70%,rgba(224,242,254,.25),transparent 50%);animation:neoLovePulse 6s ease-in-out infinite;}
@keyframes neoLovePulse{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
.neo-love__hearts{position:absolute;inset:0;pointer-events:none;}
.neo-love__hearts span{position:absolute;bottom:-40px;left:var(--x);font-size:var(--s);line-height:1;color:rgba(125,211,252,.85);text-shadow:0 0 12px rgba(14,165,233,.6);animation:neoHeart 9s linear infinite;animation-delay:var(--d);}
@keyframes neoHeart{0%{transform:translateY(0) scale(.8) rotate(0deg);opacity:0}10%{opacity:.9}100%{transform:translateY(-400px) scale(1.15) rotate(20deg);opacity:0}}
.neo-love__content{position:relative;z-index:2;padding:0 56px;color:#fff;max-width:640px;}
.neo-love__eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#7dd3fc;margin:0 0 10px;font-weight:700;}
.neo-love__title{font-size:40px;line-height:1.15;font-weight:800;margin:0 0 14px;color:#fff;}
.neo-love__text{font-size:17px;line-height:1.5;margin:0 0 24px;color:#e0f2fe;max-width:520px;}
.neo-love__btn{display:inline-block;padding:14px 30px;background:#0ea5e9;color:#fff;border-radius:10px;font-weight:700;font-size:16px;text-decoration:none;box-shadow:0 8px 22px rgba(0,0,0,.3);transition:transform .2s,background .2s;}
.neo-love__btn:hover,.neo-love__btn:focus{background:#0284c7;color:#fff;text-decoration:none;transform:translateY(-2px);}
@media (max-width:768px){.neo-love{display:none;}}
@media (prefers-reduced-motion:reduce){.neo-love,.neo-love *{animation:none !important;}}

/* ===== v23: home only — no gap above full-width banner; text aligned to listing grid (1100px) ===== */
@media (min-width:769px){
  #main:has(.neo-love){margin-top:0 !important;padding-top:0 !important;}
  .neo-love__content{max-width:1100px;width:100%;margin:0 auto;padding:0 8px;box-sizing:border-box;}
}

/* ===== v24: top bar city — button sat lower than "Город:" (legacy .city_btn margin-top:6px) ===== */
.neo-city{align-items:center;line-height:1;}
.neo-city label.city{line-height:1;margin:0;}
.neo-city .city_btn{margin:0 !important;line-height:1;height:auto;vertical-align:middle;}
.neo-city .city_btn .caret{vertical-align:middle;}

/* ===== v26: center button text inside cabinet buttons (scoped to cabinet .personal_block / .setings_form) ===== */
.setings_form .btn,.personal_block .btn,.cabinettable .btn,.setings_form button,.personal_block button{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;}
.setings_form .btn p{margin:0;}

/* ===== v27: edit-anketa "Сохранить" button — scoped to .save_setings (edit page only) ===== */
.save_setings{text-align:center !important;margin-top:45px;}
.save_setings #saveSetingsBtn{display:inline-block !important;width:auto !important;min-width:260px;margin:0 auto !important;padding:14px 48px !important;background:#0ea5e9 !important;color:#fff !important;border:1px solid #0ea5e9 !important;border-radius:8px !important;font-family:Arial,Helvetica,sans-serif !important;font-size:18px !important;font-weight:700 !important;line-height:1.2 !important;text-decoration:none !important;box-shadow:0 6px 16px rgba(2,132,199,.25);cursor:pointer;transition:background .2s;}
.save_setings #saveSetingsBtn:hover,.save_setings #saveSetingsBtn:focus{background:#0284c7 !important;border-color:#0284c7 !important;color:#fff !important;text-decoration:none;}

/* ===== v28: edit-anketa "Сохранить" — center text inside button (scoped to .save_setings) ===== */
.save_setings #saveSetingsBtn{display:inline-flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;text-indent:0 !important;white-space:nowrap;padding:14px 48px !important;}
/* ===== banner-anim (28.10.2026) ===== */
.neo-love{animation:oneWave 9s ease-in-out infinite !important;}
.neo-love__bg{animation:oneRipple 4.5s ease-in-out infinite !important;}
.neo-love__hearts{display:none !important;}
@keyframes oneWave{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes oneRipple{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.25);opacity:1}}

/* ===== emoji-float (28.10.2026): banner hearts replaced by site emoji ===== */
.neo-love__hearts{display:block !important;}
.neo-love__hearts span{font-size:var(--s) !important;color:initial !important;text-shadow:none !important;line-height:1 !important;background:none !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;width:auto !important;height:auto !important;animation:emojiFloat 9s linear infinite !important;animation-delay:var(--d) !important;}
.neo-love__hearts span::before{content:none !important;display:none !important;}
@keyframes emojiFloat{0%{transform:translateY(0) scale(.8) rotate(0deg);opacity:0}10%{opacity:.95}100%{transform:translateY(-400px) scale(1.15) rotate(15deg);opacity:0}}
