
:root{--blue:#1675ff;--blue2:#0f67eb;--ink:#101b33;--muted:#7c8798;--line:#dce4ee;--bg:#f7f8fb;--shadow:0 8px 24px rgba(35,61,105,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,"Segoe UI",sans-serif;line-height:1.42}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(1180px,94%);margin:auto}
.topbar{height:64px;background:#fff;border-bottom:1px solid #e6ebf2;position:sticky;top:0;z-index:50}
.nav{height:64px;display:flex;align-items:center}.brand{display:flex;align-items:center;gap:10px}.brand img{width:39px;height:39px}.brand span{display:flex;flex-direction:column}.brand b{font-size:14px}.brand small{font-size:9px;color:var(--muted)}
.nav nav{display:flex;gap:28px;margin:auto;font-size:12px}.nav nav a:hover{color:var(--blue)}
.head-right{display:flex;align-items:center;gap:9px}.head-phone{display:flex;flex-direction:column;text-align:right;margin-right:4px}.head-phone b{font-size:16px}.head-phone small{font-size:9px;color:var(--muted)}
.circle-btn{width:37px;height:37px;border-radius:50%;border:0;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900;cursor:pointer}.circle-btn.avito{background:#3478f6}

.hero{background:#fff;border-bottom:1px solid #e5ebf3}.hero-wrap{min-height:405px;display:grid;grid-template-columns:1.05fr .95fr}
.hero-copy{padding:58px 8px 40px}.hero h1{font-size:42px;line-height:1.15;letter-spacing:-1.4px;margin:0 0 22px}.hero h1 span{color:var(--blue)}
.hero-lead{font-size:16px;margin:0 0 24px}.hero-features{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0 27px}
.hero-features div{display:flex;gap:7px;font-size:10px;line-height:1.25}.check{width:19px;height:19px;border:1.6px solid var(--blue);border-radius:50%;color:var(--blue);display:grid;place-items:center;font-size:11px;flex:0 0 19px}
.hero-actions{display:flex;gap:10px;align-items:center}.btn{border:1px solid #d7e0eb;border-radius:7px;padding:12px 18px;background:#fff;font-weight:700;font-size:11px;cursor:pointer}.btn.blue{background:linear-gradient(#2182ff,#1169ee);color:#fff;border-color:#1169ee}.btn:hover{box-shadow:0 6px 16px rgba(25,92,190,.12)}
.hero-note{display:block;margin:10px 0 0 41px;font-size:9px;color:#718097}.hero-image{overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}

.body-area{padding:14px 0 25px}.columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:15px}.left,.right{display:flex;flex-direction:column;gap:14px}
.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 9px rgba(30,52,87,.03)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 8px}.stats>div{text-align:center;border-right:1px solid #edf1f6}.stats>div:last-child{border:0}.stats i{font-style:normal;color:var(--blue);font-size:21px}.stats b{display:block;font-size:11px;margin:4px 0 1px}.stats small{font-size:9px;color:#718097}
.section-panel{padding:24px 16px}.title{text-align:center;margin-bottom:19px}.title h2{font-size:19px;margin:0}.title .mark{display:block;width:27px;height:2px;background:var(--blue);margin:7px auto 0}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.service{min-height:171px;padding:18px 11px;background:#fff;border:1px solid #e1e7ef;border-radius:10px;text-align:center;transition:.15s}.service:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.service .ico{height:43px;display:grid;place-items:center;font-size:35px;color:var(--blue)}.service h3{font-size:11px;margin:10px 0 7px}.service p{font-size:9px;color:#59687d;margin:0;line-height:1.45}.more-wrap{text-align:center}.more{display:inline-block;margin-top:14px;padding:8px 13px;border:1px solid #dfe6ef;border-radius:7px;font-size:9px}

.side{padding:16px}.side-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.side-head h2,.side h2{font-size:16px;margin:0}.side-head a{font-size:8px;color:var(--blue)}
.review{display:grid;grid-template-columns:38px 1fr;gap:9px;padding:12px 3px;border-bottom:1px solid #edf1f5}.review:last-child{border:0}.avatar{width:36px;height:36px;border-radius:50%;background:#e9eff8;display:grid;place-items:center;font-size:11px;font-weight:700}.review b{font-size:9px}.review small{display:block;font-size:7px;color:#8c97a7}.stars{color:#ffb400;font-size:9px;letter-spacing:1px;float:right}.review p{font-size:8px;color:#4d5b70;margin:5px 0 0}

.write-box{text-align:center}.write-box>p{font-size:10px;color:#667489}.mini-chat{margin:11px 0;border:1px solid #e0e7f0;background:#f9fbfe;border-radius:9px;padding:9px;text-align:left}.bubble{display:inline-block;padding:7px 9px;border-radius:8px;font-size:8px;margin-bottom:5px}.bubble.op{background:#fff;border:1px solid #dde5ef}.bubble.me{display:block;margin-left:auto;background:var(--blue);color:#fff}.fake-field{border:1px solid #dfe6ef;background:#fff;border-radius:7px;padding:8px;color:#99a3b2;font-size:8px;display:flex;justify-content:space-between}.write-box small{display:block;margin-top:6px;color:#8a95a6;font-size:8px}

.adv-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.adv{text-align:center;padding:5px}.adv i{font-style:normal;width:38px;height:38px;border-radius:50%;background:#eef5ff;color:var(--blue);display:grid;place-items:center;margin:auto;font-size:19px}.adv b{display:block;font-size:10px;margin-top:7px}.adv p{font-size:8px;color:#68768a;margin:6px 0}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.step{text-align:center;position:relative}.step:not(:last-child):after{content:"→";position:absolute;right:-14px;top:53px;color:#9ca7b7;font-size:21px}.num{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;margin:0 auto 7px;background:var(--blue);color:#fff;font-size:11px;font-weight:700}.step-icon{width:52px;height:52px;border-radius:50%;border:1px solid #dfe6ef;display:grid;place-items:center;margin:auto;font-size:22px;color:var(--blue)}.step b{display:block;font-size:10px;margin:9px 0 4px}.step p{font-size:8px;color:#667489}.process-note{text-align:center;font-size:10px;color:#56657a;margin:13px 0}.center{text-align:center}

.contact-card{padding:15px;display:grid;grid-template-columns:.9fr 1.1fr;gap:10px;overflow:hidden}.contact-card h2{font-size:16px;margin:0 0 9px}.contact-row{display:flex;gap:8px;align-items:center;margin:9px 0}.contact-row i{font-style:normal;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#edf5ff;color:var(--blue)}.contact-row p{margin:0;display:flex;flex-direction:column}.contact-row b{font-size:9px}.contact-row small{font-size:7px;color:#8994a4}.master-img{width:100%;height:190px;object-fit:cover;object-position:center;border-radius:10px}

.footer{padding:15px 0;background:#f0f3f8;border-top:1px solid #dfe5ee;color:#7f8999;font-size:8px}.footer-line{display:flex;justify-content:space-between;gap:15px}

.chat-fab{position:fixed;right:20px;bottom:18px;z-index:80;border:0;border-radius:999px;background:var(--blue);color:#fff;padding:12px 15px;display:flex;gap:8px;align-items:center;box-shadow:0 13px 30px rgba(22,117,255,.3);cursor:pointer}
.chat-panel{position:fixed;right:20px;bottom:74px;z-index:90;width:min(460px,calc(100vw - 28px));height:min(630px,calc(100vh - 105px));background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px rgba(25,48,86,.23);display:none;grid-template-rows:auto auto 1fr auto auto;overflow:hidden}.chat-panel.open{display:grid}.chat-head{display:flex;justify-content:space-between;padding:14px 15px;background:#f5f9ff;border-bottom:1px solid var(--line)}.chat-head div{display:flex;flex-direction:column}.chat-head small{font-size:9px;color:#768397}.chat-head button{border:0;background:none;font-size:25px;color:#697589;cursor:pointer}.chat-intro{padding:12px 14px;border-bottom:1px solid var(--line);font-size:10px}.chat-intro p{margin:0 0 8px}.chat-intro input{width:100%;padding:8px;border:1px solid var(--line);border-radius:7px}.chat-intro label{display:block;margin-top:8px;font-size:9px;color:#657287}.chat-messages{overflow:auto;padding:13px;background:#fbfdff;display:flex;flex-direction:column;gap:7px}.msg{max-width:84%;padding:8px 10px;border-radius:10px;font-size:10px}.msg.visitor{align-self:flex-end;background:var(--blue);color:#fff}.msg.operator{align-self:flex-start;border:1px solid var(--line);background:#fff}.msg img{max-width:100%;border-radius:7px}.msg time{display:block;font-size:7px;opacity:.65;margin-top:3px}.chat-status{min-height:16px;padding:2px 13px;font-size:8px;color:#8b5a00}.chat-compose{display:grid;grid-template-columns:auto 1fr auto;gap:6px;padding:8px;border-top:1px solid var(--line)}.chat-compose textarea{resize:none;border:1px solid var(--line);border-radius:7px;padding:8px}.chat-compose button{border:0;border-radius:7px;background:var(--blue);color:#fff;padding:8px 10px}.clip{font-size:20px;cursor:pointer}.clip input{display:none}

.subhero{background:#fff;padding:45px 0;border-bottom:1px solid var(--line)}.subhero h1{font-size:36px;margin:8px 0}.subhero p{max-width:760px;color:#5d6b80}.content{padding:35px 0}.contentbox{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.content h2{font-size:23px}.content p,.content li{font-size:13px;color:#526075}
@media(max-width:980px){.nav nav{display:none}.columns,.hero-wrap{grid-template-columns:1fr}.hero-image{height:380px}.right{display:grid;grid-template-columns:1fr 1fr}.adv-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.head-phone{display:none}.hero-copy{padding:38px 0}.hero h1{font-size:32px}.hero-lead br{display:none}.hero-features{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.stats,.steps,.right{grid-template-columns:1fr 1fr}.step:after{display:none}.contact-card{grid-template-columns:1fr}.footer-line{flex-direction:column}.chat-fab b{display:none}.chat-fab{right:11px;bottom:11px}.chat-panel{right:10px;bottom:66px;width:calc(100vw - 20px)}}
@media(max-width:430px){.service-grid,.stats,.steps,.right,.adv-grid{grid-template-columns:1fr}.hero-image{height:300px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}}


/* ===== REAL AVITO REVIEWS ===== */
.review-source{
  float:right;
  display:inline-block;
  padding:2px 6px;
  border-radius:999px;
  background:#eaf4ff;
  color:#1675ff;
  font-size:7px;
  font-weight:700;
}
.reviews-page{background:#f7f8fb}
.reviews-summary{
  display:flex;
  align-items:center;
  gap:24px;
  padding:18px 22px;
  margin-bottom:14px;
}
.reviews-summary>div{
  display:flex;
  align-items:baseline;
  gap:8px;
  white-space:nowrap;
}
.reviews-summary b{
  font-size:30px;
  color:#1675ff;
}
.reviews-summary span{
  font-size:11px;
  font-weight:700;
}
.reviews-summary p{
  margin:0;
  color:#667489;
  font-size:10px;
}
.reviews-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.full-review{
  padding:18px;
}
.full-review-head{
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:10px;
  align-items:center;
  margin-bottom:10px;
}
.full-avatar{
  width:40px;
  height:40px;
  border-radius:50%;
  background:#eaf3ff;
  color:#1675ff;
  display:grid;
  place-items:center;
  font-weight:800;
  font-size:14px;
}
.full-review h2{
  font-size:12px;
  margin:0 0 2px;
}
.full-review small{
  display:block;
  color:#8b96a7;
  font-size:8px;
}
.avito-badge{
  display:inline-block;
  background:#eaf4ff;
  color:#1675ff;
  border-radius:999px;
  padding:5px 8px;
  font-size:8px;
  font-weight:800;
}
.full-review>p{
  margin:0;
  color:#46556b;
  font-size:10px;
  line-height:1.55;
}
.reviews-bottom{
  margin-top:18px;
  text-align:center;
  padding:22px;
}
.reviews-bottom p{
  color:#667489;
  font-size:11px;
}
@media(max-width:700px){
  .reviews-list{grid-template-columns:1fr}
  .reviews-summary{flex-direction:column;align-items:flex-start}
}


/* ===== QUESTIONNAIRE CONTENT / PRICE TABLE ===== */
.price-table table{
  width:100%;
  border-collapse:collapse;
  margin:14px 0 18px;
}
.price-table td{
  padding:12px 10px;
  border-bottom:1px solid #e4eaf2;
  font-size:12px;
}
.price-table td:last-child{
  text-align:right;
  white-space:nowrap;
  color:#1675ff;
}
.price-table tr:last-child td{border-bottom:0}
@media(max-width:520px){
  .price-table td{padding:10px 5px;font-size:11px}
}

/* AUTOMATIC AVITO REVIEWS */
.review-live{grid-template-columns:42px 1fr;align-items:start}.review-avatar-live{width:38px;height:38px;border-radius:50%;object-fit:cover;display:block;background:#eef2f7}.review-stars-live{color:#ffb400;font-size:11px;letter-spacing:1px;margin:4px 0 5px}.avito-live-page .wrap{max-width:1000px}.avito-live-summary{display:grid;grid-template-columns:170px minmax(360px,1fr) 235px;gap:22px;padding:24px 28px;align-items:start}.avito-live-score strong{display:block;font-size:62px;line-height:.95;color:#000}.avito-live-score-stars{color:#ffb400;font-size:23px;letter-spacing:2px;margin:10px 0 7px}.avito-live-score small{font-size:13px;color:#111}.avito-live-bar-row{display:grid;grid-template-columns:92px 1fr 26px;gap:10px;align-items:center;margin:6px 0}.avito-live-bar-row>span{color:#ffb400;font-size:17px;letter-spacing:1px;white-space:nowrap}.avito-live-bar-row i{height:4px;background:#ddd;border-radius:999px;overflow:hidden}.avito-live-bar-row i b{display:block;height:100%;background:#858585;border-radius:999px}.avito-live-bar-row em{font-style:normal;font-size:13px}.avito-live-note p{font-size:13px;line-height:1.35;margin:0 0 15px}.avito-black-btn{background:#111!important;border-color:#111!important;color:#fff!important}.avito-sort-pill{display:inline-block;background:#efefef;border-radius:12px;padding:10px 14px;margin:17px 0 10px;font-size:13px}.avito-live-list{display:grid;gap:26px}.avito-live-review{display:grid;grid-template-columns:52px 1fr;gap:12px}.avito-live-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#f0f1f3}.avito-live-review h2{font-size:17px;margin:0}.avito-live-meta{font-size:12px;color:#858585;margin:2px 0 8px}.avito-live-rating-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.avito-live-rating-line>span{color:#ffb400;font-size:18px;letter-spacing:1px}.avito-live-rating-line small{font-size:13px;color:#858585}.avito-live-review p{font-size:15px;line-height:1.45;color:#111;margin:6px 0 0}.avito-sync-time{margin-top:22px;font-size:9px;color:#9aa3b2;text-align:right}@media(max-width:850px){.avito-live-summary{grid-template-columns:1fr}}@media(max-width:520px){.avito-live-score strong{font-size:48px}.avito-live-review{grid-template-columns:45px 1fr}.avito-live-review p{font-size:14px}}

/* Homepage live Avito reviews */
.side .review-live .review-avatar-live{width:36px;height:36px}
.side .review-live .review-stars-live{margin:4px 0 3px;font-size:9px;line-height:1;float:none}
.side .review-live b{display:inline-block;max-width:calc(100% - 44px)}

/* ===== DESIGN REFINEMENT 2026-08-12 ===== */
/* More readable typography and one consistent outline-icon language across the site. */
body{font-size:16px;line-height:1.5}
.brand b{font-size:16px;line-height:1.15}.brand small{font-size:11px;margin-top:2px}
.nav nav{font-size:14px;gap:26px;font-weight:600}.head-phone b{font-size:17px}.head-phone small{font-size:11px}

.hero h1{font-size:44px;line-height:1.14}.hero-lead{font-size:17px;line-height:1.5}.hero-features div{font-size:12px;line-height:1.32;align-items:flex-start}.check{width:21px;height:21px;flex-basis:21px;font-size:12px}.btn{font-size:13px;padding:12px 19px}.hero-note{font-size:11px;line-height:1.35;margin-left:42px}

.panel{border-radius:16px;box-shadow:0 4px 16px rgba(30,52,87,.045)}
.stats{padding:20px 10px;gap:0}.stats>div{padding:0 10px}.stats b{font-size:13px;margin:6px 0 2px}.stats small{font-size:11px;line-height:1.35}.stats i{display:none}
.stat-icon{width:44px;height:44px;border-radius:13px;background:#eef5ff;color:var(--blue);display:grid;place-items:center;margin:0 auto 4px}
.stat-icon svg,.service .ico svg,.adv i svg,.step-icon svg,.contact-row i svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}

.section-panel{padding:28px 20px}.title{margin-bottom:23px}.title h2{font-size:23px;letter-spacing:-.2px}.title .mark{width:34px;height:3px;margin-top:8px;border-radius:999px}
.service-grid{gap:12px}.service{min-height:205px;padding:20px 15px;border-radius:13px;display:flex;flex-direction:column;align-items:center;color:var(--ink);cursor:pointer}.service:hover{transform:translateY(-3px);box-shadow:0 11px 28px rgba(35,61,105,.11);border-color:#cfddef}.service .ico{width:52px;height:52px;border-radius:15px;background:#eef5ff;color:var(--blue);display:grid;place-items:center;font-size:0;margin-bottom:3px}.service .ico svg{width:27px;height:27px}.service h3{font-size:14px;line-height:1.25;margin:11px 0 8px}.service p{font-size:12px;line-height:1.52;color:#59687d}.more{font-size:11px;padding:9px 15px;margin-top:17px}

.side{padding:19px}.side-head{margin-bottom:10px}.side-head h2,.side h2{font-size:19px}.side-head a{font-size:10px;font-weight:600}.review{grid-template-columns:44px 1fr;gap:11px;padding:14px 2px}.avatar,.side .review-live .review-avatar-live{width:40px;height:40px}.review b{font-size:12px}.review small{font-size:10px;line-height:1.35;margin-top:2px}.review p{font-size:11.5px;line-height:1.48;margin-top:6px}.review-source{font-size:8px;padding:3px 7px}.side .review-live .review-stars-live{font-size:11px;margin:5px 0 4px}

.write-box>p{font-size:12px;line-height:1.45}.mini-chat{padding:11px;margin:13px 0}.bubble{font-size:10px;padding:8px 10px}.fake-field{font-size:10px;padding:9px}.write-box small{font-size:10px;line-height:1.4;margin-top:8px}

.adv-grid{gap:9px}.adv{padding:7px 5px}.adv i{width:52px;height:52px;border-radius:15px;background:#eef5ff;color:var(--blue);font-size:0}.adv i svg{width:27px;height:27px}.adv b{font-size:13px;line-height:1.28;margin-top:10px}.adv p{font-size:11px;line-height:1.48;margin:7px 0;color:#68768a}

.steps{gap:20px}.step:not(:last-child):after{right:-16px;top:58px;font-size:22px}.num{width:30px;height:30px;font-size:12px;margin-bottom:8px}.step-icon{width:56px;height:56px;border-radius:16px;border:0;background:#eef5ff;color:var(--blue);font-size:0}.step-icon svg{width:28px;height:28px}.step b{font-size:13px;line-height:1.3;margin:10px 0 5px}.step p{font-size:11px;line-height:1.48;color:#667489;margin-top:0}.process-note{max-width:680px;margin:18px auto 2px;font-size:12px;line-height:1.55;color:#56657a}

.contact-card{padding:19px;gap:14px}.contact-card h2{font-size:19px;margin-bottom:12px}.contact-row{gap:10px;margin:11px 0}.contact-row i{width:38px;height:38px;border-radius:12px;font-size:0;flex:0 0 38px}.contact-row i svg{width:20px;height:20px}.contact-row b{font-size:12px}.contact-row small{font-size:10px;line-height:1.35;margin-top:1px}.master-img{height:205px;border-radius:12px}

.footer{font-size:10px;line-height:1.45;padding:17px 0}

.chat-fab{font-size:13px;padding:13px 17px}.chat-head small{font-size:11px}.chat-intro{font-size:12px}.chat-intro label{font-size:11px}.msg{font-size:12px;line-height:1.4}.msg time{font-size:9px}.chat-status{font-size:10px}.chat-compose textarea{font-size:12px}

.subhero{padding:48px 0}.subhero h1{font-size:38px;line-height:1.18}.subhero p{font-size:16px;line-height:1.6}.content{padding:38px 0}.contentbox{padding:28px;border-radius:16px}.content h2{font-size:25px;line-height:1.25}.content p,.content li{font-size:15px;line-height:1.65;color:#526075}.price-table td{font-size:14px;padding:13px 11px}

/* Keep the dedicated Avito page comfortably readable too. */
.avito-live-note p{font-size:14px}.avito-live-meta{font-size:13px}.avito-live-rating-line small{font-size:13px}.avito-live-review p{font-size:15px;line-height:1.55}.avito-sync-time{font-size:10px}

@media(max-width:980px){
  .nav nav{font-size:13px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .service{min-height:185px}
  .adv-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){
  .hero h1{font-size:34px}.hero-lead{font-size:16px}.hero-features div{font-size:12px}
  .section-panel{padding:24px 16px}.title h2{font-size:22px}
  .stats{grid-template-columns:1fr 1fr;row-gap:20px}.stats>div:nth-child(2){border-right:0}.stats>div:nth-child(-n+2){padding-bottom:16px;border-bottom:1px solid #edf1f6}
  .right{grid-template-columns:1fr}.adv-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr;row-gap:24px}.step:after{display:none}
  .content p,.content li{font-size:14px}.subhero p{font-size:15px}
}
@media(max-width:430px){
  .service-grid,.adv-grid,.steps,.stats{grid-template-columns:1fr}.stats>div{border-right:0!important;border-bottom:1px solid #edf1f6!important;padding:14px 0}.stats>div:last-child{border-bottom:0!important}
  .service{min-height:0;padding:20px 18px}.service p{font-size:12px}.adv p,.step p{font-size:11.5px}
  .hero-note{margin-left:0}.subhero h1{font-size:31px}
}


/* --- August 2026 visual refinement: distinct icon systems + homepage price teaser --- */
.title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.title-link{font-size:12px;font-weight:700;color:var(--blue);white-space:nowrap}
.hero-lead{max-width:670px}
.hero-note{max-width:700px;line-height:1.55}
.stats>div{position:relative}
.stat-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(180deg,#f4f8ff 0%,#ebf3ff 100%);box-shadow:inset 0 0 0 1px #d9e6fb}
.service{position:relative;overflow:hidden}
.service:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#2d7dff,#7bb0ff);opacity:0;transition:.2s}
.service:hover:before{opacity:1}
.service .ico{background:linear-gradient(180deg,#f1f7ff 0%,#e8f1ff 100%);box-shadow:inset 0 0 0 1px #d6e4fa;border-radius:16px}
.service h3{font-size:15px}
.service p{font-size:12.5px}
.price-snippet{padding:22px 22px 20px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}
.price-snippet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px}
.price-chip{background:#f8fbff;border:1px solid #dce8f7;border-radius:14px;padding:14px 15px;display:flex;flex-direction:column;gap:6px;min-height:90px}
.price-chip span{font-size:13px;line-height:1.42;color:#506078}
.price-chip b{font-size:22px;line-height:1.1;color:#0d1e3d}
.price-snippet-note{margin:14px 2px 2px;font-size:12.5px;line-height:1.6;color:#607089}
.adv-grid{gap:14px}
.adv{padding:8px 8px 4px}
.adv i{width:58px;height:58px;border-radius:50%;background:#fff;color:#1d70f6;box-shadow:inset 0 0 0 1px #d8e5fb,0 8px 20px rgba(58,107,187,.08)}
.adv i svg{width:28px;height:28px;stroke-width:1.8}
.adv b{font-size:13.5px}
.adv p{font-size:11.5px}
.steps{gap:22px}
.step:not(:last-child):after{top:60px;color:#b8c2d4}
.num{position:relative;z-index:2;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--blue);box-shadow:0 0 0 2px #dce8fb,0 6px 16px rgba(34,91,172,.12);margin-bottom:-13px}
.step-icon{width:62px;height:62px;border-radius:50%;background:linear-gradient(180deg,#2b7aff 0%,#1668f6 100%);color:#fff;box-shadow:0 14px 28px rgba(45,125,255,.22)}
.step-icon svg{width:29px;height:29px;stroke:#fff}
.step b{font-size:13.5px}
.step p{font-size:11.5px}
.contact-card{align-items:start}
.contact-card h2{margin-bottom:14px}
.master-img{height:270px;object-position:center 20%;box-shadow:0 16px 32px rgba(27,52,97,.15)}
.review-source{font-size:9px}
.side .review-live b{font-size:13px}
.side .review-live p{font-size:12px;line-height:1.5}
.price-table h3{font-size:19px;margin:24px 0 12px}
.price-extra ul{margin:0;padding-left:18px}
.price-extra li{margin:0 0 7px}
@media (max-width:980px){
  .price-snippet-grid{grid-template-columns:repeat(2,1fr)}
  .master-img{height:240px}
}
@media (max-width:700px){
  .price-snippet-grid{grid-template-columns:1fr}
  .title-link{font-size:11px}
}


/* --- Wide desktop layout + integrated master portrait --- */
@media (min-width:981px){
  .wrap{width:min(1380px,96%)}
  .columns{grid-template-columns:minmax(0,2.15fr) minmax(410px,1fr);gap:20px}
  .left,.right{gap:17px}
}
.contact-card{grid-template-columns:minmax(215px,1.35fr) minmax(125px,.65fr);gap:14px;position:relative}
.contact-card>div{position:relative;z-index:2;min-width:0}
.contact-row p{min-width:0}
.contact-row b{white-space:nowrap;font-size:12.5px}
.contact-row small{font-size:10.5px}
.master-img{
  position:relative;
  z-index:1;
  width:calc(100% + 10px);
  margin-right:-10px;
  height:265px;
  object-fit:cover;
  object-position:center 18%;
  border-radius:0 14px 14px 0;
  filter:saturate(.68) contrast(.93) brightness(1.08);
  opacity:.88;
  box-shadow:none;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.42) 17%,#000 42%,#000 100%);
  mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.42) 17%,#000 42%,#000 100%);
}
.contact-card:after{
  content:"";
  position:absolute;
  z-index:1;
  inset:0 0 0 44%;
  pointer-events:none;
  background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.88) 13%,rgba(238,246,255,.22) 48%,rgba(238,246,255,.08) 100%);
}
@media(max-width:980px){
  .contact-card{grid-template-columns:minmax(220px,1fr) minmax(180px,.8fr)}
  .master-img{height:240px}
}
@media(max-width:700px){
  .contact-card{grid-template-columns:1fr}
  .contact-card:after{display:none}
  .master-img{width:100%;margin:0;height:300px;border-radius:13px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 100%)}
}

/* --- Wide layout v2 + portrait aspect fix --- */
@media (min-width:981px){
  .wrap{width:min(1640px,98.5%)}
  .columns{grid-template-columns:minmax(0,2.2fr) minmax(470px,1fr);gap:24px}
  .left,.right{gap:19px}
}

/* Keep Alexander's portrait at its real 4:5 proportion: no horizontal squeezing. */
.contact-card{
  grid-template-columns:minmax(235px,1.12fr) minmax(190px,.88fr);
  gap:10px;
  align-items:center;
}
.contact-card>div{padding-right:3px}
.master-img{
  width:100%;
  height:auto;
  aspect-ratio:4 / 5;
  margin:0;
  object-fit:cover;
  object-position:center center;
  border-radius:0 14px 14px 0;
  filter:saturate(.72) contrast(.94) brightness(1.07);
  opacity:.9;
  box-shadow:none;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.62) 12%,#000 27%,#000 100%);
  mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.62) 12%,#000 27%,#000 100%);
}
.contact-card:after{
  inset:0 0 0 48%;
  background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.72) 12%,rgba(238,246,255,.10) 44%,transparent 100%);
}
.contact-row b{font-size:13px;white-space:nowrap}
.contact-row small{font-size:10.5px}

@media(max-width:1180px) and (min-width:981px){
  .columns{grid-template-columns:minmax(0,1.9fr) minmax(430px,1fr);gap:18px}
  .contact-card{grid-template-columns:minmax(215px,1.1fr) minmax(175px,.9fr)}
}
@media(max-width:980px){
  .contact-card{grid-template-columns:minmax(230px,1fr) minmax(190px,.9fr)}
  .master-img{width:100%;height:auto;aspect-ratio:4 / 5;margin:0;object-position:center center}
}
@media(max-width:700px){
  .contact-card{grid-template-columns:1fr}
  .master-img{
    width:min(100%,420px);
    margin:0 auto;
    height:auto;
    aspect-ratio:4 / 5;
    border-radius:13px;
    -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 13%,#000 100%);
    mask-image:linear-gradient(to bottom,transparent 0%,#000 13%,#000 100%);
  }
}

/* --- Homepage row alignment v3 --- */
.home-layout{
  display:grid;
  grid-template-columns:minmax(0,2.2fr) minmax(500px,1fr);
  gap:20px 24px;
  align-items:stretch;
}
.home-top-left,
.home-top-right{
  display:flex;
  flex-direction:column;
  gap:19px;
  min-width:0;
}
.home-top-left #services,
.home-top-right .write-box{
  flex:1 1 auto;
}
.home-top-right .write-box{
  display:flex;
  flex-direction:column;
}
.home-top-right .write-box .mini-chat{margin-bottom:12px}
.home-top-right .write-box .btn{margin-top:auto}
.home-layout #prices-home{
  grid-column:1;
  margin:0;
  align-self:stretch;
}
.home-layout .contact-card{
  grid-column:2;
  margin:0;
  align-self:stretch;
  height:100%;
}
.home-layout #advantages,
.home-layout #process{
  grid-column:1 / -1;
  margin:0;
}
.home-layout #advantages .adv-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}
.home-layout #process .steps{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
}
.home-layout #process .step:not(:last-child):after{right:-25px}

/* Give the paired price/contact row the same visual top line and breathing room. */
.home-layout #prices-home,
.home-layout .contact-card{
  border-radius:16px;
}
.home-layout .contact-card{padding:22px 22px 22px 24px}
.home-layout .contact-card .master-img{max-height:320px}

@media (min-width:1500px){
  .home-layout{grid-template-columns:minmax(0,2.28fr) minmax(520px,1fr);gap:22px 26px}
}
@media (max-width:1180px) and (min-width:981px){
  .home-layout{grid-template-columns:minmax(0,1.75fr) minmax(430px,1fr);gap:18px}
  .home-layout #advantages .adv-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
}
@media (max-width:980px){
  .home-layout{display:grid;grid-template-columns:1fr;gap:18px}
  .home-top-left,.home-top-right{gap:18px}
  .home-layout #prices-home,
  .home-layout .contact-card,
  .home-layout #advantages,
  .home-layout #process{grid-column:1}
  .home-layout #advantages .adv-grid{grid-template-columns:repeat(3,1fr)}
  .home-layout #process .steps{grid-template-columns:repeat(2,1fr);gap:24px}
  .home-layout #process .step:after{display:none}
}
@media (max-width:700px){
  .home-layout #advantages .adv-grid,
  .home-layout #process .steps{grid-template-columns:1fr}
}

/* --- Homepage interactive icon effects v4 --- */
/* Desktop: keep headings visible, reveal supporting copy only from the icon hover. */
@media (hover:hover) and (pointer:fine){
  .home-layout #process .step-icon{
    cursor:pointer;
    transition:transform .24s ease, box-shadow .24s ease, background .24s ease, color .24s ease;
    will-change:transform;
  }

  .home-layout #process .step-icon:hover{
    transform:translateY(-6px) scale(1.09) rotate(2deg);
    background:linear-gradient(180deg,#3c88ff 0%,#0e5fe9 100%);
    box-shadow:0 18px 34px rgba(26,103,232,.32);
  }

  .home-layout #advantages .adv b,
  .home-layout #process .step b{
    position:relative;
    display:block;
    width:max-content;
    max-width:100%;
    margin-left:auto;
    margin-right:auto;
    cursor:default;
    transition:color .22s ease, transform .22s ease, text-shadow .22s ease;
  }

  .home-layout #advantages .adv b:hover,
  .home-layout #process .step b:hover{
    color:var(--blue);
    transform:translateY(-2px) scale(1.025);
    text-shadow:0 6px 18px rgba(31,111,238,.16);
  }

  .home-layout #process .step-icon:hover ~ b{
    color:var(--blue);
    transform:translateY(-2px);
    text-shadow:0 6px 18px rgba(31,111,238,.14);
  }

  .home-layout #advantages .adv p,
  .home-layout #process .step p{
    opacity:0;
    visibility:hidden;
    transform:translateY(9px);
    transition:opacity .24s ease, transform .24s ease, visibility .24s ease;
    pointer-events:none;
  }

  .home-layout #process .step-icon:hover ~ p{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
}

/* Touch devices do not have a reliable hover state, so supporting text stays readable. */
@media (hover:none), (pointer:coarse){
  .home-layout #advantages .adv p,
  .home-layout #process .step p{
    opacity:1;
    visibility:visible;
    transform:none;
  }
}

/* --- Compact interactive advantages/process v5 --- */
/* The hidden supporting copy is taken out of normal flow on desktop, so the
   sections no longer reserve large blank areas while waiting for hover. */
@media (hover:hover) and (pointer:fine) and (min-width:981px){
  .home-layout #advantages,
  .home-layout #process{
    overflow:visible;
  }

  /* WHY CHOOSE ME: compact independent feature tiles. */
  .home-layout #advantages{
    padding-top:24px;
    padding-bottom:24px;
    background:
      radial-gradient(circle at 8% 18%,rgba(47,126,255,.08),transparent 26%),
      radial-gradient(circle at 92% 72%,rgba(91,160,255,.07),transparent 29%),
      linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  }
  .home-layout #advantages .title{margin-bottom:17px}
  .home-layout #advantages .adv-grid{gap:14px}
  .home-layout #advantages .adv{
    position:relative;
    min-height:124px;
    padding:17px 12px 15px;
    border:1px solid #e2ebf7;
    border-radius:17px;
    background:linear-gradient(180deg,rgba(248,251,255,.98),rgba(242,247,255,.94));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 24px rgba(48,84,138,.055);
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
  }
  .home-layout #advantages .adv:hover{
    transform:translateY(-3px);
    border-color:#c8dcf7;
    background:linear-gradient(180deg,#fff,#f3f8ff);
    box-shadow:0 14px 31px rgba(38,91,171,.12);
    z-index:8;
  }
  .home-layout #advantages .adv i{margin-top:0}
  .home-layout #advantages .adv b{margin-top:11px;font-size:13.5px;line-height:1.28}
  .home-layout #advantages .adv p{
    position:absolute;
    z-index:20;
    left:50%;
    top:calc(100% - 5px);
    width:min(300px,calc(100vw - 36px));
    margin:0;
    padding:13px 15px;
    border:1px solid #d5e4f8;
    border-radius:13px;
    background:rgba(255,255,255,.98);
    color:#53647b;
    font-size:12px;
    line-height:1.5;
    text-align:left;
    box-shadow:0 18px 38px rgba(30,67,126,.17);
    opacity:0;
    visibility:hidden;
    transform:translate(-50%,8px) scale(.98);
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
    pointer-events:none;
  }
  .home-layout #advantages .adv p:before{
    content:"";
    position:absolute;
    left:50%;
    top:-7px;
    width:12px;
    height:12px;
    background:#fff;
    border-left:1px solid #d5e4f8;
    border-top:1px solid #d5e4f8;
    transform:translateX(-50%) rotate(45deg);
  }
  .home-layout #advantages .adv:hover p{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0) scale(1);
  }
  /* Supporting text belongs to the whole card, not to the icon itself. */
  .home-layout #advantages .adv i{cursor:default}
  .home-layout #advantages .adv:hover i{
    transform:translateY(-3px) scale(1.04);
    background:#f7fbff;
    color:#1269f4;
    box-shadow:inset 0 0 0 1px #c6daf8,0 10px 24px rgba(35,103,214,.14);
  }

  /* HOW I WORK: compact route strip instead of four tall white columns. */
  .home-layout #process{
    padding-top:24px;
    padding-bottom:25px;
    background:
      linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  }
  .home-layout #process .title{margin-bottom:18px}
  .home-layout #process .steps{
    position:relative;
    gap:28px;
    padding:12px 18px 4px;
    border:1px solid #e0eaf7;
    border-radius:19px;
    background:
      linear-gradient(90deg,rgba(235,244,255,.82),rgba(248,251,255,.95) 50%,rgba(235,244,255,.82));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  }
  .home-layout #process .steps:before{
    content:"";
    position:absolute;
    left:8%;
    right:8%;
    top:57px;
    height:2px;
    background:linear-gradient(90deg,rgba(40,119,255,.16),rgba(40,119,255,.58),rgba(40,119,255,.16));
    z-index:0;
  }
  .home-layout #process .step{
    position:relative;
    z-index:2;
    min-height:118px;
    padding:0 8px 11px;
  }
  .home-layout #process .step:not(:last-child):after{display:none}
  .home-layout #process .num{
    position:absolute;
    top:4px;
    left:50%;
    transform:translateX(25px);
    width:25px;
    height:25px;
    margin:0;
    font-size:10px;
    background:#fff;
    box-shadow:0 0 0 2px #d5e4fa,0 5px 12px rgba(35,93,178,.13);
  }
  .home-layout #process .step-icon{
    position:relative;
    z-index:3;
    width:61px;
    height:61px;
    margin:11px auto 0;
  }
  .home-layout #process .step b{
    margin-top:11px;
    font-size:13.5px;
  }
  .home-layout #process .step p{
    position:absolute;
    z-index:20;
    left:50%;
    top:calc(100% - 4px);
    width:min(320px,calc(100vw - 36px));
    margin:0;
    padding:13px 15px;
    border:1px solid #cfdef5;
    border-radius:13px;
    background:rgba(255,255,255,.99);
    color:#53647b;
    font-size:12px;
    line-height:1.5;
    text-align:left;
    box-shadow:0 18px 38px rgba(30,67,126,.18);
    opacity:0;
    visibility:hidden;
    transform:translate(-50%,8px) scale(.98);
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
    pointer-events:none;
  }
  .home-layout #process .step p:before{
    content:"";
    position:absolute;
    left:50%;
    top:-7px;
    width:12px;
    height:12px;
    background:#fff;
    border-left:1px solid #cfdef5;
    border-top:1px solid #cfdef5;
    transform:translateX(-50%) rotate(45deg);
  }
  .home-layout #process .step-icon:hover ~ p{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0) scale(1);
  }
  .home-layout #process .process-note{
    margin:15px auto 0;
    padding-top:13px;
    border-top:1px solid #e8eef7;
    max-width:930px;
  }
}

/* Medium desktop: keep the same compact idea but prevent tooltip clipping near edges. */
@media (hover:hover) and (pointer:fine) and (min-width:981px) and (max-width:1250px){
  .home-layout #advantages .adv p{width:250px}
  .home-layout #process .step p{width:270px}
}

/* Touch/mobile: no hover dependency; keep copy visible and use soft cards. */
@media (hover:none), (pointer:coarse), (max-width:980px){
  .home-layout #advantages .adv,
  .home-layout #process .step{
    border:1px solid #e2ebf7;
    border-radius:16px;
    background:linear-gradient(180deg,#fbfdff,#f5f9ff);
    padding:16px 14px;
  }
  .home-layout #advantages .adv p,
  .home-layout #process .step p{
    position:static;
    width:auto;
    opacity:1;
    visibility:visible;
    transform:none;
    margin-top:7px;
  }
}

/* --- Hero refinement v8 ---
   Keep the PC fully visible inside the right frame (no aggressive crop),
   while avoiding an oversized first screen. */
@media (min-width:981px){
  .hero{
    position:relative;
    overflow:hidden;
    background:
      radial-gradient(circle at 78% 18%,rgba(48,126,255,.10),transparent 24%),
      radial-gradient(circle at 89% 85%,rgba(115,177,255,.11),transparent 22%),
      linear-gradient(115deg,#ffffff 0%,#ffffff 54%,#f7fbff 77%,#eef6ff 100%);
  }
  .hero:before{
    content:"";
    position:absolute;
    width:390px;
    height:390px;
    right:7%;
    top:50%;
    transform:translateY(-50%);
    border-radius:50%;
    border:1px solid rgba(41,119,255,.08);
    box-shadow:
      0 0 0 56px rgba(47,126,255,.025),
      0 0 0 112px rgba(47,126,255,.018);
    pointer-events:none;
  }
  .hero-wrap{
    position:relative;
    z-index:1;
    min-height:0;
    grid-template-columns:minmax(0,1.26fr) minmax(520px,.74fr);
    gap:38px;
    align-items:center;
    padding-top:18px;
    padding-bottom:18px;
  }
  .hero-copy{
    padding:20px 6px 20px;
    align-self:center;
  }
  .hero h1{max-width:760px;margin-bottom:16px;font-size:43px}
  .hero-lead{max-width:720px;margin-bottom:17px;font-size:16px;line-height:1.55}
  .hero-features{max-width:770px;margin:16px 0 20px;gap:15px}
  .hero-note{margin-top:9px;margin-left:42px}
  .hero-image{
    position:relative;
    justify-self:end;
    width:min(100%,595px);
    height:298px;
    padding:16px 18px;
    overflow:hidden;
    border:1px solid rgba(187,209,239,.84);
    border-radius:24px;
    background:
      radial-gradient(circle at 73% 26%,rgba(67,135,255,.17),transparent 23%),
      linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(245,250,255,.96) 100%);
    box-shadow:
      0 20px 46px rgba(30,76,142,.12),
      inset 0 1px 0 rgba(255,255,255,.96);
    backdrop-filter:blur(4px);
  }
  .hero-image:before{
    content:"";
    position:absolute;
    inset:14px;
    border-radius:18px;
    background:linear-gradient(135deg,rgba(240,246,255,.86) 0%,rgba(232,241,255,.72) 100%);
    box-shadow:inset 0 0 34px rgba(36,104,205,.05);
  }
  .hero-image:after{
    content:"";
    position:absolute;
    left:34px; right:34px; bottom:18px;
    height:18px;
    border-radius:50%;
    background:radial-gradient(ellipse at center,rgba(66,115,191,.18) 0%,rgba(66,115,191,.10) 35%,rgba(66,115,191,0) 72%);
    pointer-events:none;
    filter:blur(5px);
  }
  .hero-image img{
    position:relative;
    z-index:2;
    display:block;
    width:100%;
    height:100%;
    border-radius:0;
    object-fit:contain;
    object-position:center center;
    transform:scale(1);
    transition:transform .45s ease,filter .45s ease;
    filter:drop-shadow(0 10px 16px rgba(18,34,76,.10));
  }
  .hero-image:hover img{
    transform:scale(1.02);
    filter:drop-shadow(0 12px 18px rgba(18,34,76,.13)) saturate(1.02);
  }
}

@media (min-width:981px) and (max-width:1280px){
  .hero-wrap{
    grid-template-columns:minmax(0,1.16fr) minmax(440px,.84fr);
    gap:26px;
  }
  .hero-image{width:min(100%,530px);height:282px;padding:14px 16px}
  .hero h1{font-size:39px}
  .hero-lead{font-size:15px}
}

@media (max-width:980px){
  .hero-wrap{min-height:0}
  .hero-image{
    height:330px;
    margin:0 auto 24px;
    width:min(94%,720px);
    border-radius:20px;
    overflow:hidden;
    padding:14px;
    background:linear-gradient(180deg,#fbfdff 0%,#eef6ff 100%);
    border:1px solid rgba(187,209,239,.84);
  }
  .hero-image img{border-radius:0;object-fit:contain;object-position:center center}
}

@media (max-width:700px){
  .hero-image{height:260px;width:100%;margin-bottom:18px;padding:12px}
}


/* --- Local visitor counter --- */
.footer-line{align-items:center;flex-wrap:wrap}
.visitor-counter{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid #dbe4ef;border-radius:999px;background:rgba(255,255,255,.72);color:#748197;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.visitor-counter svg{width:15px;height:15px;fill:none;stroke:#4385e8;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.visitor-counter b{color:#3d4f68;font-size:11px}
.visitor-counter i{width:1px;height:12px;background:#d7e0ec}
@media(max-width:700px){.visitor-counter{align-self:flex-start}}


/* === BIG RELEASE 2026-08-13: admin entry, extended counter, protected chat fields === */
.admin-entry{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:5px;border-radius:50%;text-decoration:none!important;color:#7890ad!important;opacity:.18;transition:opacity .2s ease,background .2s ease,color .2s ease;vertical-align:middle;font-size:13px}
.admin-entry:hover,.admin-entry:focus{opacity:.95;background:#edf5ff;color:#2d72d9!important;outline:none}
.visitor-counter{flex-wrap:wrap;justify-content:center}
.chat-intro .chat-label{display:block;font-size:11px;font-weight:700;color:#41526c;margin:8px 0 4px}
.chat-intro .chat-label b{color:#d43b3b;margin-left:2px}
.chat-intro>input,.chat-intro>select{display:block;width:100%;box-sizing:border-box;border:1px solid #d7e2f0;border-radius:9px;padding:10px 11px;font:inherit;color:#17243a;background:#fff;outline:none}.chat-intro>select{appearance:auto;cursor:pointer}
.chat-intro>input:focus,.chat-intro>select:focus{border-color:#8bb7fb;box-shadow:0 0 0 3px rgba(45,125,255,.10)}
.chat-consent{display:flex!important;align-items:flex-start;gap:7px;margin-top:10px!important;line-height:1.4}
.chat-consent input{margin-top:2px}
.chat-verify-note{display:block;color:#607089;margin-top:8px;line-height:1.45}
.chat-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.chat-resend{display:block;margin:0 14px 10px;border:0;background:transparent;color:#1668e8;font-size:11px;font-weight:700;text-decoration:underline;cursor:pointer}
.chat-resend[hidden]{display:none}
@media(max-width:700px){.admin-entry{opacity:.30}.visitor-counter{gap:5px 8px}.visitor-counter i{display:none}}

.service-extra-links{margin:14px 2px 0;text-align:center;font-size:12px;color:#718096}.service-extra-links a{color:var(--blue);font-weight:700;text-decoration:none}.service-extra-links a:hover{text-decoration:underline}
.chat-intro .chat-label small{font-weight:400;color:#8a97a8;margin-left:4px}.chat-captcha{margin-top:12px;min-height:100px;overflow:hidden;display:flex;justify-content:center;width:100%}.chat-captcha .smart-captcha{min-height:100px;width:100%;max-width:420px}

/* BIG3 · database-managed services and price list */
.services-directory .service-grid{margin-top:4px}.services-directory .service-price{display:block;margin-top:auto;padding-top:12px;color:var(--blue);font-size:12px;font-weight:800}.price-row-note{display:block;margin-top:4px;color:#738297;font-size:11px;font-weight:400;line-height:1.35}.price-table td:first-child{max-width:760px}.more{text-decoration:none;color:var(--ink)}.more:hover{color:var(--blue);border-color:#bfd4ef}

/* --- Homepage contact channels v1: VK / MAX / e-mail --- */
.circle-btn.social-btn{
  position:relative;
  overflow:hidden;
  text-decoration:none;
  box-shadow:0 6px 16px rgba(32,83,160,.12);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.circle-btn.social-btn:hover{
  transform:translateY(-2px) scale(1.06);
  box-shadow:0 10px 24px rgba(31,88,181,.22);
  filter:saturate(1.08);
}
.circle-btn.social-btn:active{transform:translateY(0) scale(.98)}
.circle-btn.social-btn.vk{background:#0077ff}
.circle-btn.social-btn.max{background:linear-gradient(135deg,#645cff 0%,#318cff 52%,#13b1ef 100%)}
.circle-btn.social-btn.mail{background:linear-gradient(135deg,#168de2,#2a70db)}
.circle-btn.social-btn.mail svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.circle-btn.social-btn.app{background:linear-gradient(135deg,#176fe8 0%,#4169e1 52%,#6d5ee7 100%)}
.circle-btn.social-btn.app svg{width:21px;height:21px;fill:none;stroke:#fff;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.social-glyph{display:block;color:#fff;font-size:10px;line-height:1;font-weight:900;letter-spacing:-.45px}
.social-glyph.max-glyph{font-size:8px;letter-spacing:-.35px}

.contact-card .contact-link{
  width:100%;
  border:0;
  padding:4px 6px;
  margin:4px -6px;
  background:transparent;
  color:inherit;
  text-align:left;
  border-radius:11px;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}
.contact-card .contact-link:hover{
  background:#f5f9ff;
  transform:translateX(3px);
}
.contact-card .contact-link i{
  transition:transform .18s ease,box-shadow .18s ease;
}
.contact-card .contact-link:hover i{
  transform:scale(1.07);
  box-shadow:0 7px 17px rgba(37,91,169,.14);
}
.contact-card .social-vk i{background:#eaf4ff;color:#0077ff}
.contact-card .social-max i{background:linear-gradient(135deg,#eeeefe,#e8f6ff);color:#4d67ef}
.contact-card .social-mail i{background:#eaf6ff;color:#168de2}
.contact-card .social-app i{background:linear-gradient(135deg,#eaf4ff,#f0edff);color:#4169e1}
.contact-social-glyph{
  display:block;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.4px;
}
.contact-social-glyph.max-glyph{font-size:7px;letter-spacing:-.25px}
.contact-card .contact-chat{font-family:inherit}
.contact-card .social-mail b{white-space:normal}

/* The price panel shares the same grid row with the taller contact card.
   Keep it visually balanced when extra contact channels are shown. */
.home-layout #prices-home{
  display:flex;
  flex-direction:column;
  height:100%;
}
.home-layout #prices-home .price-snippet-grid{
  flex:1 0 auto;
  align-content:start;
}
.home-layout #prices-home .price-snippet-note{
  margin-top:auto;
  padding-top:18px;
}

@media(max-width:700px){
  .head-right{gap:7px}
  .circle-btn.social-btn{width:36px;height:36px}
}
@media(max-width:430px){
  .brand{gap:7px}
  .brand img{width:35px;height:35px}
  .brand b{font-size:12px}
  .brand small{font-size:8px}
  .head-right{gap:5px}
  .circle-btn.social-btn{width:32px;height:32px}
  .social-glyph{font-size:9px}
  .social-glyph.max-glyph{font-size:7px}
  .circle-btn.social-btn.mail svg{width:17px;height:17px}.circle-btn.social-btn.app svg{width:18px;height:18px}
}


/* --- Homepage contacts v2: webmail chooser, admin presence, recent Telegram activity --- */
.circle-btn.social-btn.mail{border:0;padding:0}
.mail-choice-menu{
  position:fixed;z-index:140;width:250px;padding:8px;background:#fff;border:1px solid #dce6f2;border-radius:14px;
  box-shadow:0 18px 50px rgba(18,47,91,.22);animation:mailMenuIn .15s ease both
}
.mail-choice-title{padding:8px 10px 9px;border-bottom:1px solid #edf2f7;margin-bottom:4px;display:flex;flex-direction:column;gap:2px}
.mail-choice-title b{font-size:12px;color:#17243d}.mail-choice-title span{font-size:10px;color:#718097}
.mail-choice-menu>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border-radius:9px;font-size:12px;font-weight:700;color:#21314d;transition:background .15s ease,transform .15s ease,color .15s ease}
.mail-choice-menu>a small{font-size:9px;font-weight:500;color:#8290a2}.mail-choice-menu>a:hover{background:#eef6ff;color:#1268e8;transform:translateX(2px)}
@keyframes mailMenuIn{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
.telegram-recent{display:flex;align-items:center;gap:9px;margin:7px 0 9px;padding:8px 10px;border:1px solid #d8efe0;border-radius:10px;background:linear-gradient(135deg,#f5fff8,#f8fcff)}
.telegram-recent>span{width:9px;height:9px;border-radius:50%;background:#22b45c;box-shadow:0 0 0 4px rgba(34,180,92,.10);flex:0 0 9px}
.telegram-recent p{margin:0;display:flex;flex-direction:column}.telegram-recent b{font-size:11px;color:#176c39}.telegram-recent small{font-size:9px;color:#748397;margin-top:1px}
.footer-left{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.footer-admin-area{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-start;white-space:nowrap}
.footer-links{white-space:nowrap}
.admin-presence{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:800;letter-spacing:.01em}
.admin-presence i{width:7px;height:7px;border-radius:50%;background:#18b657;box-shadow:0 0 0 3px rgba(24,182,87,.10)}
.admin-presence.online{color:#176cd6}
.admin-entry.admin-entry-text{width:auto;height:auto;margin-left:0;padding:2px 5px;border-radius:5px;font-size:9px;opacity:.44;color:#6f8096!important}
.admin-entry.admin-entry-text:hover,.admin-entry.admin-entry-text:focus{opacity:.95;background:#e8f2ff;color:#176bdc!important}
@media(max-width:980px){.footer-links{white-space:normal}}
@media(max-width:700px){.footer-left{align-self:flex-start}.footer-admin-area{justify-content:flex-start}.mail-choice-menu{width:min(250px,calc(100vw - 24px))}}


/* Footer overlap fix: keep the floating chat action fully above the desktop footer. */
@media(min-width:701px){
  .chat-fab{bottom:68px}
  .chat-panel{bottom:124px}
}


/* V30: prominent breadcrumb/back navigation on internal pages */
.page-breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:14px;
  margin-bottom:0;
  padding:10px 14px;
  border:1px solid #dbe6f2;
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 18px rgba(25,55,95,.06);
  font-size:13px;
  line-height:1.25;
  color:#718096;
}
.page-breadcrumb-home{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  color:#176fe8;
  font-weight:800;
  text-decoration:none;
}
.page-breadcrumb-home:hover{text-decoration:underline}
.page-breadcrumb-sep{color:#a7b4c5;font-weight:700}
.page-breadcrumb-current{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#526174;
  font-weight:600;
}
@media(max-width:980px){
  .page-breadcrumb{
    margin-top:10px;
    padding:9px 12px;
    border-radius:10px;
    font-size:12px;
  }
}


/* V31: internal page title block as a rounded card, matching contentbox */
.subhero{
  background:var(--bg);
  padding:20px 0 18px;
  border-bottom:0;
}
.subhero>.wrap{
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:28px;
}
.subhero h1{margin-top:8px}
@media(max-width:980px){
  .subhero{padding:14px 0 14px}
  .subhero>.wrap{padding:22px;border-radius:14px}
}
@media(max-width:520px){
  .subhero>.wrap{padding:18px 16px;border-radius:12px}
}

/* V32: unified Avito / Yandex / Google reviews */
.home-review-sources{display:flex;gap:6px;flex-wrap:wrap;margin:-2px 0 8px}.source-chip,.review-source-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 9px;font-size:9px;font-weight:800;line-height:1;text-decoration:none;border:1px solid #e2e8f2;background:#fff;color:#334155}.source-chip.avito,.review-source-pill.avito{background:#eaf3ff;color:#1675ff;border-color:#d8e9ff}.source-chip.yandex,.review-source-pill.yandex{background:#fff2f2;color:#df2020;border-color:#ffdede}.source-chip.google,.review-source-pill.google{background:#f3f7ff;color:#3159b7;border-color:#dce7ff}
.review-kicker{color:#1675ff;font-weight:800}.multi-reviews-page .wrap{max-width:none}.review-source-nav{position:sticky;top:64px;z-index:4;display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:9px;background:rgba(247,248,251,.94);backdrop-filter:blur(8px);border:1px solid #e7ebf2;border-radius:14px}.review-source-nav a{padding:8px 15px;border-radius:10px;background:#fff;border:1px solid #dfe6ef;color:#18243a;font-size:13px;font-weight:800;text-decoration:none}.review-source-nav a:hover{border-color:#1675ff;color:#1675ff}.external-review-section{scroll-margin-top:125px;margin:0 0 34px}.external-review-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px}.external-review-title>div{display:flex;align-items:center;gap:10px;min-width:0}.external-review-title h2{font-size:22px;margin:0}.external-review-title>a{font-size:12px;font-weight:700;color:#1675ff;text-decoration:none;white-space:nowrap}.external-review-note{font-size:11px;color:#7d8899;margin:9px 3px 0}.yandex-review-widget{padding:10px;overflow:hidden}.yandex-review-widget iframe{display:block;border:0;border-radius:12px;min-width:300px;max-width:760px;margin:0 auto;background:#fff}.yandex-rating-badge{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px}.yandex-rating-badge>div{min-width:0}.yandex-rating-badge h3{margin:0 0 7px;font-size:17px;color:#172033}.yandex-rating-badge p{margin:0;max-width:650px;font-size:12px;line-height:1.5;color:#68758a}.yandex-rating-badge-frame{display:block;flex:0 0 150px;width:150px;height:50px;overflow:hidden;line-height:0;background:transparent}.yandex-rating-badge-frame iframe{display:block!important;width:150px!important;height:50px!important;min-width:150px!important;max-width:150px!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;background:transparent}
.google-reviews{padding:22px}.external-reviews-loading,.external-reviews-empty,.external-reviews-error{padding:28px;text-align:center;color:#68758a;font-size:14px}.external-reviews-error .external-review-btn{margin-top:14px}.google-reviews-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;border-bottom:1px solid #e9edf3}.google-rating{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center}.google-rating strong{font-size:44px;line-height:1;color:#111827}.google-rating .google-stars{color:#fbbc04;font-size:19px;letter-spacing:1px}.google-rating small{grid-column:1/-1;color:#7b8799;margin-top:5px}.google-source{text-align:right}.google-source b{display:block;font-size:17px;color:#1f2937}.google-source small{display:block;max-width:310px;color:#7b8799;font-size:11px;line-height:1.35;margin-top:3px}.google-reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.google-review-card{border:1px solid #e4e9f1;border-radius:14px;padding:16px;background:#fff;box-shadow:0 4px 16px rgba(30,55,90,.04)}.google-review-author{display:flex;gap:10px;align-items:center}.google-review-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#edf2f8;flex:0 0 38px}.google-review-avatar-fallback{display:grid;place-items:center;font-weight:800;color:#3159b7}.google-review-author a,.google-review-author b{font-size:13px;font-weight:800;color:#172033;text-decoration:none}.google-review-author small{display:block;color:#8792a3;font-size:10px;margin-top:2px}.google-review-stars{color:#fbbc04;font-size:14px;letter-spacing:1px;margin:10px 0 6px}.google-review-card p{font-size:13px;line-height:1.5;color:#344054;margin:0}.google-review-link{display:inline-block;margin-top:10px;font-size:10px;font-weight:700;color:#1675ff;text-decoration:none}.google-attribution{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid #e9edf3;margin-top:18px;padding-top:14px;font-size:11px;color:#7b8799}.google-attribution .google-maps-attribution{font-weight:800;color:#3c4043}.google-attribution a{margin-left:auto;color:#1675ff;font-weight:700;text-decoration:none}.google-attribution small{font-size:10px}
@media(max-width:700px){.external-review-title{align-items:flex-start;flex-direction:column}.external-review-title>a{white-space:normal}.review-source-nav{top:54px}.google-reviews{padding:15px}.google-reviews-head{flex-direction:column}.google-source{text-align:left}.google-reviews-list{grid-template-columns:1fr}.google-attribution a{margin-left:0}.yandex-review-widget{padding:4px}.yandex-review-widget iframe{height:560px}.yandex-rating-badge{align-items:flex-start;flex-direction:column;padding:16px}.google-rating strong{font-size:38px}}

/* V32.4: full-width stacked review accordion matching the page hero */
.review-accordion{display:grid;gap:12px;margin:0}.review-accordion-item{border:1px solid #dfe6ef;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(30,55,90,.04)}.review-accordion-trigger{appearance:none;-webkit-appearance:none;display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;border:0;background:#fff;padding:17px 18px;text-align:left;color:#172033;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}.review-accordion-trigger:hover{background:#fbfcfe}.review-accordion-copy{display:flex;align-items:center;gap:14px;min-width:0}.review-accordion-copy>span:last-child{display:block;min-width:0}.review-accordion-copy strong{display:block;font-size:17px;line-height:1.25}.review-accordion-copy small{display:block;margin-top:4px;color:#7d8899;font-size:11px;line-height:1.35}.review-accordion-chevron{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:#f4f6f9;color:#6b7789;font-size:19px;line-height:1;transition:transform .18s ease,background .18s ease,color .18s ease}.review-accordion-trigger.is-active .review-accordion-chevron{transform:rotate(180deg);background:#edf4ff;color:#1675ff}.review-accordion-item:has(.review-accordion-trigger.is-active){border-color:#cbd9eb;box-shadow:0 9px 26px rgba(30,55,90,.07)}.review-accordion-panel[hidden]{display:none!important}.review-accordion-panel{border-top:1px solid #e8edf4;background:#fafbfd;animation:reviewAccordionIn .18s ease}.review-accordion-inner{padding:20px}.review-accordion-inner>.external-review-title{margin-top:0}.review-accordion-inner .avito-live-list{padding-top:2px}.review-source-not-configured{padding:24px;text-align:center}.review-source-not-configured strong{display:block;font-size:17px;color:#172033}.review-source-not-configured p{max-width:620px;margin:7px auto 0;color:#7d8899;font-size:13px;line-height:1.5}@keyframes reviewAccordionIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}@media(max-width:700px){.review-accordion{gap:9px}.review-accordion-item{border-radius:13px}.review-accordion-trigger{padding:14px 13px;gap:10px}.review-accordion-copy{gap:10px}.review-accordion-copy strong{font-size:15px}.review-accordion-copy small{font-size:10px}.review-accordion-chevron{width:29px;height:29px;flex-basis:29px;border-radius:9px}.review-accordion-inner{padding:14px 12px}.review-source-not-configured{padding:20px 14px}}

/* V32.5.1: homepage review source switcher — keep original source-chip appearance */
.home-reviews-switcher .side-head{margin-bottom:10px}
.home-review-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:-2px 0 8px}
.home-review-tab{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 9px;font-family:inherit;font-size:9px;font-weight:800;line-height:1;border:1px solid #e2e8f2;background:#fff;color:#334155;cursor:pointer}
.home-review-tab.avito{background:#eaf3ff;color:#1675ff;border-color:#d8e9ff}
.home-review-tab.yandex{background:#fff2f2;color:#df2020;border-color:#ffdede}
.home-review-tab.google{background:#f3f7ff;color:#3159b7;border-color:#dce7ff}
.home-review-tab:focus-visible{outline:2px solid #1675ff;outline-offset:2px}
.home-review-panel[hidden]{display:none!important}
.home-review-panel.is-active{animation:homeReviewFade .16s ease}
.home-external-review{min-height:210px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:18px 8px;border-top:1px solid #edf1f6}
.home-external-review strong{font-size:14px;color:#172033}
.home-external-review p{font-size:11.5px;line-height:1.5;color:#68758a;margin:7px 0 14px}
.home-yandex-badge .yandex-rating-badge-frame{margin-top:8px}.home-yandex-badge .yandex-rating-badge-frame iframe{display:block!important;width:150px!important;height:50px!important;border:0!important;overflow:hidden!important;background:transparent}
.home-yandex-reviews-widget{padding-top:8px}
.home-yandex-reviews-widget iframe{display:block;width:100%;height:360px;border:0;border-radius:10px;background:#fff}
.home-review-empty{align-items:center;text-align:center}
.home-review-empty p{max-width:330px;margin-left:auto;margin-right:auto}
.home-google-reviews.google-reviews{padding:10px 0 0;box-shadow:none;border:0;border-radius:0;background:transparent}
.home-google-reviews .external-reviews-loading,.home-google-reviews .external-reviews-empty,.home-google-reviews .external-reviews-error{padding:28px 8px;font-size:12px}
.home-google-reviews .google-reviews-head{gap:10px;padding-bottom:12px}
.home-google-reviews .google-rating strong{font-size:34px}
.home-google-reviews .google-rating .google-stars{font-size:14px}
.home-google-reviews .google-source b{font-size:13px}
.home-google-reviews .google-source small{font-size:9px}
.home-google-reviews .google-reviews-list{grid-template-columns:1fr;gap:8px;margin-top:12px}
.home-google-reviews .google-review-card{padding:12px;border-radius:11px}
.home-google-reviews .google-review-card p{font-size:11.5px;line-height:1.45}
.home-google-reviews .google-attribution{font-size:9px;margin-top:12px;padding-top:10px}
@keyframes homeReviewFade{from{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}
@media(max-width:700px){.home-external-review{min-height:170px}.home-google-reviews .google-reviews-head{flex-direction:column}.home-google-reviews .google-source{text-align:left}}

/* === V32.7: cinematic live-chat card === */
.home-top-right .chat-invite-v27{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:360px;
  padding:20px;
  color:#fff;
  text-align:left;
  border:1px solid rgba(113,174,255,.36);
  border-radius:18px;
  background:
    radial-gradient(circle at 88% 8%,rgba(48,138,255,.42),transparent 31%),
    radial-gradient(circle at 8% 92%,rgba(58,71,255,.28),transparent 34%),
    linear-gradient(150deg,#071426 0%,#0b2140 52%,#0b2e5f 100%);
  box-shadow:0 24px 54px rgba(13,43,86,.26),inset 0 1px 0 rgba(255,255,255,.12);
}
.home-top-right .chat-invite-v27:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  opacity:.27;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:28px 28px;
  -webkit-mask-image:linear-gradient(125deg,#000,transparent 76%);
  mask-image:linear-gradient(125deg,#000,transparent 76%);
}
.chat-aurora{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}
.chat-aurora-one{width:190px;height:190px;right:-78px;top:-82px;background:radial-gradient(circle,rgba(52,146,255,.34),rgba(52,146,255,0) 70%);animation:pcmAuroraOne 7s ease-in-out infinite alternate}
.chat-aurora-two{width:170px;height:170px;left:-85px;bottom:-95px;background:radial-gradient(circle,rgba(92,84,255,.26),rgba(92,84,255,0) 70%);animation:pcmAuroraTwo 8.5s ease-in-out infinite alternate}
.chat-invite-topbar{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.chat-availability,.chat-no-login{display:inline-flex;align-items:center;min-height:25px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.025em}
.chat-availability{gap:7px;padding:5px 10px;color:#bfffd9;background:rgba(40,190,108,.12);border:1px solid rgba(77,223,137,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.chat-availability i{width:7px;height:7px;border-radius:50%;background:#48df8b;box-shadow:0 0 0 0 rgba(72,223,139,.42);animation:pcmChatPulseV27 2.2s ease-out infinite}
.chat-no-login{padding:5px 10px;color:#b7c8e5;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}
.chat-invite-hero{position:relative;z-index:2;display:flex;align-items:center;gap:13px}
.chat-invite-v27 .chat-invite-icon{position:relative;width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,#3d9cff 0%,#176ef2 58%,#6857ff 125%);box-shadow:0 13px 30px rgba(21,112,245,.34),inset 0 1px 0 rgba(255,255,255,.42);animation:pcmChatFloatV27 4.8s ease-in-out infinite}
.chat-invite-v27 .chat-invite-icon:after{content:"";position:absolute;inset:-5px;border-radius:21px;border:1px solid rgba(87,163,255,.20);opacity:.75}
.chat-invite-v27 .chat-invite-icon svg{width:29px;height:29px;fill:currentColor}
.chat-invite-v27 .chat-invite-copy{min-width:0}
.chat-kicker{display:block;margin-bottom:5px;color:#77b8ff;font-size:8px;font-weight:900;letter-spacing:.14em}
.home-top-right .chat-invite-v27 h2{margin:0;color:#fff;font-size:20px;line-height:1.14;letter-spacing:-.015em}
.home-top-right .chat-invite-v27 .chat-invite-copy p{margin:6px 0 0;color:#adc1de;font-size:10.5px;line-height:1.5}
.chat-live-preview{position:relative;z-index:2;margin:16px 0 12px;border:1px solid rgba(151,192,255,.16);border-radius:15px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.055));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 28px rgba(0,0,0,.13);overflow:hidden;backdrop-filter:blur(12px)}
.chat-preview-head{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:10px 11px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.chat-preview-avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;color:#fff;background:linear-gradient(145deg,#2e91ff,#1668ed);font-size:11px;font-weight:900;box-shadow:0 6px 14px rgba(22,107,235,.25)}
.chat-preview-head>span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.chat-preview-head b{color:#f6f9ff;font-size:10px;line-height:1.2}.chat-preview-head small{margin-top:2px;color:#8097b8;font-size:8px}
.chat-preview-signal{width:7px;height:7px;border-radius:50%;background:#49dd8b;box-shadow:0 0 12px rgba(73,221,139,.9)}
.chat-preview-body{display:flex;flex-direction:column;gap:7px;padding:11px}
.chat-preview-message{width:fit-content;max-width:82%;padding:8px 10px;border-radius:11px;font-size:9.5px;line-height:1.35;box-shadow:0 5px 14px rgba(0,0,0,.10)}
.chat-preview-message.operator{align-self:flex-start;color:#163050;background:#f8fbff;border-bottom-left-radius:4px}
.chat-preview-message.visitor{align-self:flex-end;color:#fff;background:linear-gradient(135deg,#2a88ff,#1768ee);border-bottom-right-radius:4px;animation:pcmMessageBreath 5.5s ease-in-out infinite}
.chat-preview-typing{display:flex;align-items:center;gap:4px;width:max-content;max-width:100%;padding:5px 8px;border-radius:9px;color:#8ba2c2;background:rgba(255,255,255,.05);font-size:8px}
.chat-preview-typing span{width:4px;height:4px;border-radius:50%;background:#75adf7;animation:pcmTyping 1.35s infinite ease-in-out}.chat-preview-typing span:nth-child(2){animation-delay:.16s}.chat-preview-typing span:nth-child(3){animation-delay:.32s}
.chat-preview-typing em{margin-left:4px;font-style:normal;white-space:nowrap}
.chat-quick-topics{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 13px}
.chat-quick-topics span{padding:6px 9px;border:1px solid rgba(136,184,255,.14);border-radius:999px;color:#9fbbdf;background:rgba(255,255,255,.045);font-size:8.5px;line-height:1}
.home-top-right .chat-invite-v27 .chat-invite-button{position:relative;z-index:2;width:100%;min-height:54px;margin-top:auto;padding:7px 13px;border:0;border-radius:13px;display:grid;grid-template-columns:35px 1fr 26px;align-items:center;gap:9px;overflow:hidden;color:#fff;text-align:left;background:linear-gradient(110deg,#258cff 0%,#126cf2 48%,#5561ff 100%);background-size:160% 100%;box-shadow:0 14px 31px rgba(15,100,235,.36),inset 0 1px 0 rgba(255,255,255,.28);transition:transform .2s ease,box-shadow .2s ease,background-position .4s ease}
.home-top-right .chat-invite-v27 .chat-invite-button:before{content:"";position:absolute;top:-100%;left:-45%;width:34%;height:300%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:rotate(20deg);animation:pcmChatShineV27 4.8s ease-in-out infinite}
.home-top-right .chat-invite-v27 .chat-invite-button:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(15,100,235,.45);background-position:100% 0}
.home-top-right .chat-invite-v27 .chat-invite-button:active{transform:translateY(0)}
.chat-invite-button-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18)}
.chat-invite-button-icon svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linejoin:round}
.chat-invite-button-copy{display:flex;flex-direction:column;min-width:0}.chat-invite-button-copy b{font-size:11.5px;line-height:1.15}.chat-invite-button-copy small{margin-top:2px;color:rgba(255,255,255,.72);font-size:8px;font-weight:500}
.chat-invite-button-arrow{justify-self:end;color:#fff;font-size:21px;line-height:1;transition:transform .2s ease}.chat-invite-button:hover .chat-invite-button-arrow{transform:translateX(4px)}
.chat-trust-row{position:relative;z-index:2;display:flex;justify-content:center;gap:16px;margin-top:10px;color:#8da5c7;font-size:8px;line-height:1.3}.chat-trust-row span{display:flex;align-items:center;gap:4px}.chat-trust-row i{width:14px;height:14px;display:grid;place-items:center;border-radius:50%;color:#68dfa1;background:rgba(70,211,139,.10);font-style:normal;font-size:8px;font-weight:900}
@keyframes pcmChatPulseV27{0%{box-shadow:0 0 0 0 rgba(72,223,139,.42)}70%{box-shadow:0 0 0 8px rgba(72,223,139,0)}100%{box-shadow:0 0 0 0 rgba(72,223,139,0)}}
@keyframes pcmChatFloatV27{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-1deg)}}
@keyframes pcmAuroraOne{0%{transform:translate3d(-8px,8px,0) scale(.95);opacity:.7}100%{transform:translate3d(12px,-8px,0) scale(1.12);opacity:1}}
@keyframes pcmAuroraTwo{0%{transform:translate3d(8px,-8px,0) scale(.96);opacity:.62}100%{transform:translate3d(-10px,8px,0) scale(1.1);opacity:.92}}
@keyframes pcmTyping{0%,60%,100%{transform:translateY(0);opacity:.38}30%{transform:translateY(-3px);opacity:1}}
@keyframes pcmMessageBreath{0%,100%{box-shadow:0 5px 14px rgba(0,0,0,.10)}50%{box-shadow:0 7px 20px rgba(24,109,241,.22)}}
@keyframes pcmChatShineV27{0%,68%{left:-45%;opacity:0}75%{opacity:1}90%,100%{left:125%;opacity:0}}
@media(max-width:700px){
  .home-top-right .chat-invite-v27{min-height:0;padding:17px;border-radius:16px}
  .chat-invite-topbar{margin-bottom:12px}
  .chat-invite-v27 .chat-invite-icon{width:48px;height:48px;flex-basis:48px;border-radius:15px}
  .chat-invite-v27 .chat-invite-icon svg{width:25px;height:25px}
  .home-top-right .chat-invite-v27 h2{font-size:18px}
  .chat-kicker{font-size:7.5px}
  .chat-live-preview{margin-top:14px}
  .chat-trust-row{gap:9px;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
  .chat-aurora,.chat-availability i,.chat-invite-v27 .chat-invite-icon,.chat-preview-message.visitor,.chat-preview-typing span,.home-top-right .chat-invite-v27 .chat-invite-button:before{animation:none!important}
  .home-top-right .chat-invite-v27 .chat-invite-button,.chat-invite-button-arrow{transition:none!important}
}

/* === V32.7.1: light themed background for cinematic home chat === */
.home-top-right .chat-invite-v27{
  color:#172033;
  border:1px solid #d6e4f6;
  background:
    radial-gradient(circle at 88% 8%,rgba(48,138,255,.16),transparent 31%),
    radial-gradient(circle at 8% 92%,rgba(86,109,255,.12),transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f6faff 52%,#eef5ff 100%);
  box-shadow:0 18px 42px rgba(18,54,99,.10),inset 0 1px 0 rgba(255,255,255,.95);
}
.home-top-right .chat-invite-v27:before{
  opacity:.34;
  background-image:
    linear-gradient(rgba(78,133,212,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(78,133,212,.05) 1px,transparent 1px);
}
.chat-aurora-one{background:radial-gradient(circle,rgba(71,156,255,.18),rgba(71,156,255,0) 70%)}
.chat-aurora-two{background:radial-gradient(circle,rgba(97,118,255,.13),rgba(97,118,255,0) 70%)}
.chat-availability{color:#14824b;background:rgba(44,185,104,.10);border:1px solid rgba(65,192,116,.20);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.chat-no-login{color:#60718e;background:rgba(255,255,255,.72);border:1px solid #dce7f6}
.chat-kicker{color:#2d77e5}
.home-top-right .chat-invite-v27 h2{color:#172033}
.home-top-right .chat-invite-v27 .chat-invite-copy p{color:#5c6f89}
.chat-live-preview{border:1px solid #d7e3f4;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,248,255,.93));box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 12px 24px rgba(24,57,103,.08)}
.chat-preview-head{border-bottom:1px solid #e3ecf8;background:rgba(255,255,255,.72)}
.chat-preview-head b{color:#1d2b41}
.chat-preview-head small{color:#7e8da4}
.chat-preview-message{box-shadow:0 5px 14px rgba(24,57,103,.08)}
.chat-preview-message.operator{color:#183251;background:#ffffff;border:1px solid #e3edf8}
.chat-preview-typing{color:#7488a8;background:rgba(42,118,255,.08)}
.chat-quick-topics span{color:#567092;background:rgba(255,255,255,.78);border:1px solid #d9e6f6;box-shadow:0 2px 8px rgba(22,72,140,.04)}
.chat-trust-row{color:#6f819d}
.chat-trust-row i{background:rgba(70,211,139,.12)}

/* === V32.8: compact review tabs on /otzyvy/ === */
.review-tabs-page .wrap{max-width:1000px}
.review-tabs-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}
.review-tab-btn{width:100%;min-width:0;padding:16px 18px;border:1px solid #d9e4f2;border-radius:16px;background:#fff;cursor:pointer;text-align:left;box-shadow:0 8px 22px rgba(24,54,99,.05);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}
.review-tab-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(24,54,99,.08)}
.review-tab-btn.is-active{border-color:#bcd3ef;background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);box-shadow:0 14px 30px rgba(22,68,135,.10)}
.review-tab-copy{display:flex;align-items:center;gap:13px;min-width:0}
.review-tab-copy>span:last-child{display:block;min-width:0}
.review-tab-copy strong{display:block;font-size:18px;line-height:1.25;color:#172033}
.review-tab-copy small{display:block;margin-top:4px;font-size:12px;line-height:1.35;color:#76849a}
.review-tabs-shell{background:#fff;border:1px solid #d9e4f2;border-radius:18px;padding:22px;box-shadow:0 14px 32px rgba(24,54,99,.06)}
.review-tab-panel[hidden]{display:none!important}
.review-tab-panel{animation:reviewTabsFadeIn .18s ease}
.review-tab-panel .external-review-title{margin-top:0}
@keyframes reviewTabsFadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:700px){
  .review-tabs-nav{gap:8px;margin-bottom:14px}
  .review-tab-btn{padding:12px 10px;border-radius:14px}
  .review-tab-copy{gap:8px;align-items:flex-start}
  .review-tab-copy strong{font-size:14px}
  .review-tab-copy small{font-size:10px}
  .review-tabs-shell{padding:14px 12px;border-radius:16px}
}

/* === V34.1: reliable Yandex reviews rendering === */
.yandex-review-widget-official{padding:0;overflow:hidden;background:#fff}
.yandex-widget-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid #e7edf5;background:linear-gradient(180deg,#fff,#fbfdff)}
.yandex-widget-head>div{min-width:0}.yandex-widget-head strong{display:block;color:#172033;font-size:15px}.yandex-widget-head small{display:block;margin-top:4px;color:#77869b;font-size:11px;line-height:1.45}
.yandex-reviews-frame-wrap{width:100%;max-width:760px;min-width:300px;height:620px;margin:0 auto;overflow:hidden;background:#fff}
.yandex-reviews-frame-wrap iframe{display:block;width:100%!important;height:100%!important;min-width:300px;border:0;background:#fff}
.yandex-profile-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:40px;padding:9px 14px;border:1px solid #ffd4d4;border-radius:11px;background:#fff5f5;color:#d71920!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap}
.yandex-profile-button:hover{background:#ffeded;border-color:#ffbcbc}
.yandex-profile-fallback{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px;background:linear-gradient(180deg,#fff,#fffafa)}
.yandex-profile-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#ff2a2a;color:#fff;font-size:24px;font-weight:900;box-shadow:0 8px 20px rgba(255,42,42,.16)}
.yandex-profile-copy{min-width:0}.yandex-profile-copy h3{margin:0 0 6px;color:#172033;font-size:17px}.yandex-profile-copy p{margin:0;max-width:650px;color:#68758a;font-size:12px;line-height:1.55}
.home-yandex-summary{align-items:flex-start;justify-content:center;gap:0}
.home-yandex-summary .review-source-pill{margin-bottom:11px}
.home-yandex-summary strong{font-size:15px}.home-yandex-summary p{margin:7px 0 14px}
.home-yandex-actions{display:flex;flex-wrap:wrap;gap:8px}
.home-yandex-primary,.home-yandex-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:8px 11px;border-radius:9px;font-size:10.5px;font-weight:800;text-decoration:none}
.home-yandex-primary{background:#1675ff;color:#fff}.home-yandex-primary:hover{background:#0e68ea}
.home-yandex-secondary{border:1px solid #ffd5d5;background:#fff5f5;color:#d71920}.home-yandex-secondary:hover{background:#ffeded}
@media(max-width:700px){
  .yandex-widget-head{align-items:flex-start;flex-direction:column;padding:14px}
  .yandex-profile-button{width:100%;white-space:normal;text-align:center}
  .yandex-reviews-frame-wrap{min-width:0;height:560px}
  .yandex-profile-fallback{grid-template-columns:42px 1fr;padding:16px;gap:12px}
  .yandex-profile-mark{width:42px;height:42px;border-radius:12px;font-size:21px}
  .yandex-profile-fallback .yandex-profile-button{grid-column:1/-1}
}

/* === V34.2: compact work process inside services panel === */
.home-top-left #services{display:flex;flex-direction:column}
.home-service-process{
  flex:1 1 auto;
  min-height:220px;
  margin-top:20px;
  padding:22px 20px 18px;
  border-top:1px solid #e5edf7;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.home-service-process-head{text-align:center;margin-bottom:17px}
.home-service-process-head>span{display:block;color:#2679e8;font-size:11px;font-weight:900;letter-spacing:.12em}
.home-service-process-head>b{display:block;margin-top:5px;color:#172033;font-size:18px;line-height:1.3}
.home-service-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.home-service-process-grid>div{min-width:0;display:flex;align-items:flex-start;gap:9px;padding:12px 10px;border:1px solid #e1e9f3;border-radius:12px;background:linear-gradient(180deg,#fff,#f8fbff)}
.home-service-process-grid i{width:30px;height:30px;flex:0 0 30px;border-radius:50%;display:grid;place-items:center;background:#eaf4ff;color:#176ef2;font-style:normal;font-size:12px;font-weight:900}
.home-service-process-grid span{min-width:0}
.home-service-process-grid b{display:block;color:#1a2d49;font-size:13px;line-height:1.35}
.home-service-process-grid small{display:block;margin-top:5px;color:#687a91;font-size:11px;line-height:1.45}
.home-service-process-trust{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.home-service-process-trust span{padding:6px 11px;border-radius:999px;background:#f0f7ff;color:#46709e;font-size:10px;font-weight:800}
@media(max-width:1180px) and (min-width:981px){
  .home-service-process{padding-left:12px;padding-right:12px}
  .home-service-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .home-service-process{min-height:0;padding:18px 0 4px}
  .home-service-process-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:460px){
  .home-service-process-grid{grid-template-columns:1fr}
}


/* V34.2.2 — Contacts: Yandex service area map */
.contact-service-area-section{padding-top:0}
.contact-service-area-card{overflow:hidden}
.contact-service-area-head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:20px}
.contact-service-area-head h2{margin:4px 0 8px}
.contact-service-area-head p{max-width:760px;margin:0;color:#5f7390;line-height:1.65}
.contact-service-area-kicker{display:block;color:#1675ff;font-size:11px;font-weight:900;letter-spacing:.16em}
.contact-service-area-radius{flex:0 0 auto;min-width:126px;padding:12px 16px;border:1px solid #cfe0f5;border-radius:16px;background:#f5f9ff;text-align:center}
.contact-service-area-radius strong{display:block;color:#0d5fdb;font-size:25px;line-height:1.05}
.contact-service-area-radius span{display:block;margin-top:4px;color:#6c809b;font-size:11px;font-weight:700}
.contact-service-area-map-shell{position:relative;height:430px;border:1px solid #ccdcef;border-radius:20px;overflow:hidden;background:#eef5fb;isolation:isolate}
.contact-service-area-map-frame{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}
.contact-service-area-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:flex-start;justify-content:center;border:2px solid #29a717;border-radius:50%;background:rgba(82,190,55,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);pointer-events:none;z-index:2}
.contact-service-area-circle span{margin-top:16px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 4px 14px rgba(34,86,30,.12);color:#218315;font-size:12px;font-weight:900}
.contact-service-area-map-caption{position:absolute;left:16px;bottom:16px;display:flex;flex-direction:column;gap:2px;max-width:min(380px,calc(100% - 32px));padding:10px 13px;border:1px solid rgba(204,220,239,.95);border-radius:13px;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(25,55,90,.12);z-index:3}
.contact-service-area-map-caption strong{color:#102a4b;font-size:13px}
.contact-service-area-map-caption span{color:#607793;font-size:11px;line-height:1.35}
.contact-service-area-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:15px;color:#55708f;font-size:13px;font-weight:700}
.contact-service-area-foot a{margin-left:auto;color:#1269df;text-decoration:none}
.contact-service-area-foot a:hover{text-decoration:underline}
@media(max-width:760px){
  .contact-service-area-head{flex-direction:column;gap:14px}
  .contact-service-area-radius{display:flex;align-items:baseline;gap:8px;min-width:0;text-align:left}
  .contact-service-area-radius strong{font-size:22px}
  .contact-service-area-radius span{margin:0}
  .contact-service-area-map-shell{height:350px}
  .contact-service-area-foot{align-items:flex-start;flex-direction:column}
  .contact-service-area-foot a{margin-left:0}
}

/* V35 mobile chat attachments */
.chat-messages .msg video{display:block;max-width:min(100%,420px);max-height:320px;border-radius:12px;margin:0 0 7px;background:#0b1728}
.chat-messages .msg .msg-file{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:8px 10px;margin:0 0 7px;border-radius:10px;background:rgba(255,255,255,.65);color:inherit;text-decoration:none;font-weight:700;overflow-wrap:anywhere}

/* V35.3.2 — attachment feedback and compact chat images */
.chat-compose .chat-file-preview{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:7px 8px;border:1px solid #dbe7f6;border-radius:10px;background:#f7fbff;box-shadow:0 2px 8px rgba(28,76,143,.05)}
.chat-compose .chat-file-preview[hidden]{display:none}
.chat-file-preview-main{display:flex;align-items:center;gap:9px;min-width:0}
.chat-file-preview-main>img{width:46px;height:46px;flex:0 0 46px;border-radius:8px;object-fit:cover;background:#eaf2fb;border:1px solid #d8e5f5}
.chat-file-preview-meta{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.chat-file-preview-meta b{max-width:290px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#24344d;font-size:9px}
.chat-file-preview-meta small{margin-top:3px;color:#7487a2;font-size:7.5px}
.chat-file-preview-remove{width:26px;height:26px;flex:0 0 26px;border:0!important;border-radius:50%!important;padding:0!important;display:grid;place-items:center;background:#e9f1fb!important;color:#526780!important;font-size:18px!important;line-height:1;cursor:pointer}
.chat-file-preview-remove:hover{background:#dce9f8!important;color:#24344d!important}
.chat-image-open{display:block;max-width:100%;margin:0;padding:0;border:0;background:transparent;cursor:zoom-in;line-height:0}
.chat-messages .msg.visitor .chat-image-open{margin-left:auto}
.chat-image-open>img{display:block;width:auto;height:auto;max-width:min(100%,220px);max-height:180px;object-fit:cover;border:0;border-radius:9px;background:transparent;box-shadow:none}
.chat-messages .msg.has-image{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.chat-messages .msg.has-image .msg-image-caption{margin-top:5px;padding:8px 10px;border-radius:10px;line-height:1.4}
.chat-messages .msg.has-image.visitor .msg-image-caption{background:var(--blue);color:#fff}
.chat-messages .msg.has-image.operator .msg-image-caption{border:1px solid var(--line);background:#fff;color:inherit}
.chat-messages .msg.has-image time{margin:4px 3px 0;color:#718096;opacity:1;text-align:right}
.chat-image-viewer[hidden]{display:none!important}
.chat-image-viewer{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(8,15,28,.82);backdrop-filter:blur(4px);cursor:zoom-out}
.chat-image-viewer>img{display:block;max-width:min(1100px,92vw);max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 24px 80px rgba(0,0,0,.45);cursor:default}
.chat-image-viewer-close{position:fixed;top:18px;right:22px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:30px;line-height:1;cursor:pointer}
body.chat-image-viewer-open{overflow:hidden}
@media (max-width:520px){
  .chat-image-open>img{max-width:min(100%,190px);max-height:160px}
  .chat-file-preview-meta b{max-width:190px}
  .chat-image-viewer{padding:14px}
  .chat-image-viewer>img{max-width:94vw;max-height:84vh}
  .chat-image-viewer-close{top:10px;right:10px}
}



/* V35.4.1: the first-contact form may become tall when SmartCaptcha and a file preview are present.
   Keep the composer/send button inside the fixed chat panel and scroll only the intro block. */
.chat-panel{grid-template-rows:auto minmax(0,auto) minmax(0,1fr) auto auto auto}
.chat-intro{min-height:0;max-height:min(390px,calc(100dvh - 275px));overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.chat-messages{min-height:0}
.chat-compose{position:relative;z-index:3;background:#fff;flex-shrink:0}
@media(max-width:700px){
  .chat-intro{max-height:min(380px,calc(100dvh - 235px))}
}


/* V35.6 — client app placeholder and home promo */
.app-coming-hero{padding:54px 0 44px;background:linear-gradient(145deg,#f8fbff 0%,#edf6ff 50%,#f7fbff 100%);border-bottom:1px solid #dfeaf6}
.app-coming-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:56px}
.app-coming-badge{display:inline-flex;padding:7px 11px;border:1px solid #bcd8fb;border-radius:999px;background:#fff;color:#1675ff;font-size:10px;font-weight:900;letter-spacing:.14em}
.app-coming-copy h1{margin:14px 0 12px;font-size:44px;line-height:1.05;color:#15233a}.app-coming-lead{max-width:720px;margin:0;color:#536b87;font-size:17px;line-height:1.65}.app-coming-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.app-download-disabled{cursor:not-allowed;opacity:.58;background:#edf1f5;color:#6d7c8d;border-color:#d8e0e8}.app-coming-note{margin:14px 0 0;color:#77889c;font-size:12px}
.app-coming-phone{width:220px;height:420px;justify-self:center;padding:10px;border:1px solid #c7d8ea;border-radius:34px;background:#152338;box-shadow:0 24px 50px rgba(26,55,91,.22)}
.app-coming-phone-screen{height:100%;border-radius:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(160deg,#f7fbff,#e7f3ff);color:#173355}.app-coming-phone-logo{width:70px;height:70px;border-radius:22px;display:grid;place-items:center;margin-bottom:18px;background:#1675ff;color:#fff;font-size:22px;font-weight:900;box-shadow:0 12px 28px rgba(22,117,255,.22)}.app-coming-phone-screen strong{font-size:25px;line-height:1.15}.app-coming-phone-screen small{margin-top:7px;color:#66809c;font-size:12px}.app-coming-phone-screen i{margin-top:22px;padding:7px 10px;border-radius:999px;background:#fff;color:#1675ff;font-size:10px;font-style:normal;font-weight:800}
.app-coming-body{padding-top:28px}.app-coming-panel{max-width:1050px;margin:0 auto}.app-coming-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-coming-features>div{padding:18px;border:1px solid #e0e9f3;border-radius:15px;background:#fbfdff}.app-coming-features b{display:block;margin-bottom:7px;color:#1b3555;font-size:14px}.app-coming-features p{margin:0;color:#667b95;font-size:12px;line-height:1.55}.app-coming-status{display:flex;align-items:flex-start;gap:11px;margin-top:18px;padding:15px 17px;border:1px solid #d8e7f7;border-radius:14px;background:#f4f9ff}.app-coming-status>span{width:9px;height:9px;flex:0 0 9px;margin-top:5px;border-radius:50%;background:#ef9d2f;box-shadow:0 0 0 6px rgba(239,157,47,.12)}.app-coming-status b{display:block;color:#263d5a;font-size:13px}.app-coming-status p{margin:3px 0 0;color:#6b7e94;font-size:11px;line-height:1.5}
@media(max-width:980px){.app-coming-wrap{grid-template-columns:1fr;gap:32px}.app-coming-phone{width:190px;height:360px}.app-coming-copy{text-align:center}.app-coming-lead{margin-left:auto;margin-right:auto}.app-coming-actions{justify-content:center}.app-coming-features{grid-template-columns:1fr}}
@media(max-width:560px){.app-coming-hero{padding:34px 0}.app-coming-copy h1{font-size:34px}.app-coming-lead{font-size:15px}.app-coming-actions{flex-direction:column}.app-coming-actions .btn{width:100%}.app-coming-phone{width:165px;height:315px}.app-coming-phone-screen strong{font-size:21px}}


/* --- V35.6.2: real mobile header + navigation --- */
.mobile-nav{display:none}
.mobile-nav summary{list-style:none}
.mobile-nav summary::-webkit-details-marker{display:none}

@media(max-width:980px){
  .nav{position:relative}
  .head-right{margin-left:auto;margin-right:12px}
  .mobile-nav{display:block;position:static;flex:0 0 auto}
  .mobile-nav>summary{
    width:40px;height:40px;border:1px solid #d7e2ef;border-radius:12px;background:#f7faff;color:#176fe8;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;
    box-shadow:0 5px 15px rgba(31,78,145,.08);user-select:none;-webkit-tap-highlight-color:transparent
  }
  .mobile-nav>summary span{display:block;width:18px;height:2px;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
  .mobile-nav[open]>summary span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .mobile-nav[open]>summary span:nth-child(2){opacity:0}
  .mobile-nav[open]>summary span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .mobile-nav-panel{
    position:absolute;z-index:80;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 24px));
    display:grid!important;grid-template-columns:1fr;background:#fff;border:1px solid #dce5f0;border-radius:16px;
    padding:8px;box-shadow:0 18px 48px rgba(20,49,91,.20);font-size:14px!important;gap:2px!important;margin:0!important
  }
  .mobile-nav-panel a{display:flex;align-items:center;min-height:44px;padding:10px 13px;border-radius:10px;font-weight:700;color:#17243a}
  .mobile-nav-panel a:hover,.mobile-nav-panel a:focus{background:#eef6ff;color:#176fe8;outline:none}
}

@media(max-width:700px){
  .topbar{height:auto;min-height:112px}
  .nav{
    height:auto;min-height:112px;padding:10px 0 11px;display:grid;
    grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand menu" "social social";
    column-gap:14px;row-gap:10px;align-items:center
  }
  .brand{grid-area:brand;min-width:0;width:max-content;max-width:100%}
  .mobile-nav{grid-area:menu;justify-self:end}
  .head-right{grid-area:social;margin:0;justify-self:stretch;justify-content:center;gap:13px;padding-top:1px}
  .head-phone{display:none}
  .circle-btn.social-btn{width:38px;height:38px;flex:0 0 38px}
  .mobile-nav>summary{width:40px;height:40px}
  .mobile-nav-panel{top:calc(100% + 8px);right:0}
}

@media(max-width:430px){
  .brand{gap:9px}
  .brand img{width:38px;height:38px}
  .brand b{font-size:13px}
  .brand small{font-size:9px}
  .head-right{gap:12px}
  .circle-btn.social-btn{width:38px;height:38px}
  .social-glyph{font-size:9px}
  .social-glyph.max-glyph{font-size:7px}
  .circle-btn.social-btn.mail svg{width:18px;height:18px}
  .circle-btn.social-btn.app svg{width:19px;height:19px}
}

/* V35.7.1 — mobile review tabs + restored work-process anchor target */
#process{scroll-margin-top:92px}
@media(max-width:700px){
  .reviews-page{padding-top:14px}
  .review-tabs-nav{grid-template-columns:1fr;gap:9px;margin-bottom:12px}
  .review-tab-btn{padding:13px 14px;border-radius:14px}
  .review-tab-copy{align-items:center;gap:11px}
  .review-tab-copy>span:last-child{min-width:0;flex:1}
  .review-tab-copy strong{font-size:15px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  .review-tab-copy small{font-size:10.5px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
  .review-source-pill{flex:0 0 auto}
}
@media(max-width:430px){
  #process{scroll-margin-top:126px}
  .reviews-page{padding-top:10px}
}

/* V35.8.1: безопасный новый диалог без сброса постоянного visitor_key. */
.chat-head .chat-head-actions{display:flex;flex-direction:row;align-items:center;gap:6px;margin-left:10px}
.chat-head .chat-new{font-size:10px;font-weight:700;line-height:1.15;color:#2f67ad;background:#fff;border:1px solid #cbdcf2;border-radius:8px;padding:6px 8px;white-space:nowrap}
.chat-head .chat-new:hover{background:#eef6ff;border-color:#9fc1ee}
.chat-head .chat-new[hidden]{display:none}
@media(max-width:420px){.chat-head .chat-new{font-size:9px;padding:6px}.chat-head .chat-head-actions{gap:2px;margin-left:4px}}


/* V35.11 — «Мои сборки»: портфолио выполненных заказов */
.builds-kicker{color:#1675ff;font-weight:800;letter-spacing:.08em}.builds-hero .btn{margin-top:17px}.builds-page{padding-top:28px}.builds-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.build-card{overflow:hidden;border:1px solid #dce5ef;border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(30,55,90,.06)}.build-cover{position:relative;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(145deg,#eaf3ff,#f8fbff)}.build-cover>img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .28s ease}.build-card:hover .build-cover>img{transform:scale(1.02)}.build-cover-placeholder{height:100%;display:grid;place-items:center;align-content:center;gap:5px;color:#1675ff}.build-cover-placeholder span{width:74px;height:74px;display:grid;place-items:center;border:1px solid #cfe0f5;border-radius:23px;background:#fff;font-size:22px;font-weight:950;box-shadow:0 12px 28px rgba(44,97,168,.10)}.build-cover-placeholder small{color:#7690ae;font-size:11px}.build-date{position:absolute;right:13px;bottom:13px;padding:6px 9px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(18,35,58,.72);backdrop-filter:blur(8px);color:#fff;font-size:10px;font-weight:800}.build-card-body{padding:20px}.build-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.build-card-head h2{margin:0;color:#172a45;font-size:22px;line-height:1.2}.build-purpose{margin:5px 0 0!important;color:#71839a!important;font-size:12px!important;line-height:1.45!important}.build-price{flex:0 0 auto;padding:7px 10px;border-radius:10px;background:#eef6ff;color:#116ae8;font-size:14px;white-space:nowrap}.build-summary{margin:14px 0 0!important;color:#53667e!important;font-size:13.5px!important;line-height:1.6!important}.build-spec-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.build-spec-preview>span{min-width:0;padding:10px 11px;border:1px solid #e2eaf3;border-radius:11px;background:#fafcff}.build-spec-preview small,.build-spec-preview b{display:block}.build-spec-preview small{color:#8594a7;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.build-spec-preview b{margin-top:3px;color:#2a405b;font-size:11.5px;line-height:1.35;overflow-wrap:anywhere}.build-details{margin-top:15px;border-top:1px solid #e8edf3}.build-details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 2px 0;cursor:pointer;color:#176fe8;font-size:12px;font-weight:800}.build-details>summary::-webkit-details-marker{display:none}.build-details>summary i{font-style:normal;font-size:18px;transition:transform .18s ease}.build-details[open]>summary i{transform:rotate(180deg)}.build-details-body{padding:15px 0 2px}.build-details-body h3{margin:18px 0 9px;color:#1f3858;font-size:14px}.build-details-body>h3:first-child{margin-top:0}.build-details-body p{margin:0;color:#5d7088;font-size:12.5px;line-height:1.6}.build-info-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:11px;background:#f5f9ff}.build-info-line small{color:#71849c;font-size:10px}.build-info-line b{color:#1d4f87;font-size:12px}.build-spec-list{display:grid;gap:7px}.build-spec-list>div{display:grid;grid-template-columns:minmax(130px,.75fr) minmax(0,1.25fr);gap:12px;padding:9px 0;border-bottom:1px solid #edf1f5}.build-spec-list>div:last-child{border-bottom:0}.build-spec-list span{color:#8090a3;font-size:10.5px}.build-spec-list b{color:#324b68;font-size:11.5px;line-height:1.45;overflow-wrap:anywhere}.build-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.build-gallery a{display:block;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:#edf3f9}.build-gallery img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .18s ease}.build-gallery a:hover img{transform:scale(1.04)}.build-card-actions{display:flex;margin-top:17px;padding-top:15px;border-top:1px solid #edf1f5}.build-card-actions .btn{width:100%}.builds-empty{text-align:center;padding:50px 28px}.builds-empty-icon{width:78px;height:78px;display:grid;place-items:center;margin:0 auto 15px;border-radius:24px;background:#eef6ff;color:#1675ff;font-size:22px;font-weight:950}.builds-empty h2{margin:0}.builds-empty p{max-width:560px;margin:10px auto 18px!important}.nav nav{gap:14px}
@media(max-width:980px){.builds-grid{grid-template-columns:1fr}}
@media(max-width:600px){.build-card{border-radius:15px}.build-card-body{padding:15px}.build-card-head{display:block}.build-price{display:inline-flex;margin-top:10px}.build-card-head h2{font-size:19px}.build-spec-preview{grid-template-columns:1fr}.build-spec-list>div{grid-template-columns:1fr;gap:3px}.build-gallery{grid-template-columns:repeat(3,1fr)}.builds-empty{padding:38px 18px}}

/* V35.11.3 — «Мои сборки»: 5 карточек в ряд + более читаемый текст */
.builds-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  align-items:start;
}
.build-card{border-radius:13px;box-shadow:0 4px 15px rgba(30,55,90,.05)}
.build-card-body{padding:11px}
.build-card-head{display:block}
.build-card-head h2{
  font-size:14px;
  line-height:1.27;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.build-purpose{
  margin-top:5px!important;
  color:#536981!important;
  font-size:11.5px!important;
  line-height:1.42!important;
  font-weight:600;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.build-price{
  display:inline-flex;
  margin-top:7px;
  padding:5px 7px;
  border-radius:8px;
  font-size:10.5px;
}
.build-summary{
  margin-top:8px!important;
  color:#52657c!important;
  font-size:11.5px!important;
  line-height:1.5!important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
}
.build-spec-preview{display:none}
.build-date{right:8px;bottom:8px;padding:4px 6px;font-size:8px}
.build-details{margin-top:9px}
.build-details>summary{padding-top:9px;font-size:10px}
.build-details>summary i{font-size:15px}
.build-details-body{padding-top:10px}
.build-details-body h3{margin:14px 0 7px;font-size:12px}
.build-details-body p{font-size:10.5px;line-height:1.5}
.build-info-line{padding:8px 9px}
.build-info-line small{font-size:9px}
.build-info-line b{font-size:10px}
.build-spec-list>div{grid-template-columns:1fr;gap:2px;padding:7px 0}
.build-spec-list span{font-size:9px}
.build-spec-list b{font-size:10px;line-height:1.4}
.build-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.build-card-actions{margin-top:9px;padding-top:9px}
.build-card-actions .btn{padding:8px 7px;font-size:9.5px}

@media(max-width:1120px){
  .builds-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:900px){
  .builds-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .builds-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
}
@media(max-width:500px){
  .builds-grid{grid-template-columns:1fr}
  .build-card-body{padding:14px}
  .build-card-head h2{font-size:18px}
  .build-purpose{font-size:12.5px!important;-webkit-line-clamp:3}
  .build-summary{font-size:12.5px!important;-webkit-line-clamp:5}
  .build-price{font-size:12px}
  .build-card-actions .btn{font-size:11px}
}


/* V35.11.4 — «Мои сборки»: единый внешний блок для всей сетки */
.builds-list-box{padding:12px}
.builds-list-box .builds-grid{margin:0}
@media(max-width:700px){.builds-list-box{padding:10px}}
@media(max-width:500px){.builds-list-box{padding:8px}}

/* V35.11.5 — «Мои сборки»: одинаковые вертикальные интервалы между рамками */
.builds-hero{padding-bottom:0}
.builds-page{padding-top:20px}
@media(max-width:980px){
  .builds-page{padding-top:14px}
}

/* V35.11.6 — «Мои сборки»: компактная карточка + подробности в модальном окне */
.build-card-body{display:flex;flex-direction:column;align-items:stretch;min-height:138px;padding:11px}
.build-card-body>h2{margin:0;color:#172a45;font-size:14px;line-height:1.27;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.build-card .build-purpose{margin:6px 0 0!important;color:#536981!important;font-size:12px!important;line-height:1.45!important;font-weight:600;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.build-card .build-price{align-self:flex-start;margin-top:8px;padding:5px 8px;border-radius:8px;background:#eef6ff;color:#116ae8;font-size:11px;font-weight:850;white-space:nowrap}
.build-more-btn{width:100%;min-height:34px;margin-top:auto;padding:8px 10px;border:1px solid #cfe0f5;border-radius:9px;background:#f7fbff;color:#116ae8;font:inherit;font-size:10.5px;font-weight:850;cursor:pointer;text-align:center;transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.build-more-btn:hover,.build-more-btn:focus-visible{background:#edf6ff;border-color:#aecdF2;box-shadow:0 6px 16px rgba(34,102,190,.10);outline:none}
.build-more-btn:active{transform:translateY(1px)}
.build-card .build-summary,.build-card .build-spec-preview,.build-card .build-details,.build-card .build-card-actions,.build-card .build-date{display:none!important}

.build-modal[hidden]{display:none!important}
.build-modal{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:22px}
.build-modal-backdrop{position:absolute;inset:0;background:rgba(26,45,68,.54);backdrop-filter:blur(4px)}
.build-modal-panel{position:relative;z-index:1;width:min(920px,calc(100vw - 44px));max-height:min(88vh,860px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #d5e1ee;border-radius:23px;background:#fff;box-shadow:0 28px 80px rgba(18,40,72,.28)}
.build-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 24px 20px;border-bottom:1px solid #e3eaf2;background:#fff}
.build-modal-header>div{min-width:0}
.build-modal-header small{display:block;margin-bottom:8px;color:#1675ff;font-size:10px;font-weight:900;letter-spacing:.11em}
.build-modal-header h2{margin:0;color:#172a45;font-size:25px;line-height:1.2}
.build-modal-header p{margin:7px 0 0;color:#657890;font-size:13px;line-height:1.5}
.build-modal-close{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border:1px solid #d5e1ee;border-radius:11px;background:#fff;color:#677b92;font-size:25px;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}
.build-modal-close:hover,.build-modal-close:focus-visible{background:#f3f8fe;color:#176fe8;border-color:#bcd3ee;outline:none}
.build-modal-scroll{min-height:0;overflow:auto;padding:20px 24px 24px;background:#fbfdff}
.build-modal-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}
.build-modal-gallery.is-single{grid-template-columns:1fr}
.build-modal-gallery a{display:block;aspect-ratio:16/10;overflow:hidden;border:1px solid #dce6f1;border-radius:14px;background:#edf3f9}
.build-modal-gallery.is-single a{aspect-ratio:16/7;max-height:340px}
.build-modal-gallery img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .18s ease}
.build-modal-gallery a:hover img{transform:scale(1.025)}
.build-modal-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}
.build-modal-facts>div{padding:13px 14px;border:1px solid #dce6f1;border-radius:13px;background:#fff}
.build-modal-facts small,.build-modal-facts b{display:block}
.build-modal-facts small{color:#8191a5;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.build-modal-facts b{margin-top:5px;color:#263f5d;font-size:13px;line-height:1.4}
.build-modal-facts .is-price{border-color:#cfe2fb;background:#f3f8ff}
.build-modal-facts .is-price b{color:#116ae8}
.build-modal-section{margin-top:14px;padding:16px 17px;border:1px solid #dce6f1;border-radius:14px;background:#fff}
.build-modal-section:first-of-type{margin-top:0}
.build-modal-section h3{margin:0 0 11px;color:#203a5b;font-size:14px}
.build-modal-section p{margin:0;color:#566a82;font-size:12.5px;line-height:1.65}
.build-modal-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.build-modal-specs>div{display:grid;grid-template-columns:minmax(105px,.78fr) minmax(0,1.22fr);gap:10px;padding:9px 0;border-bottom:1px solid #edf1f5}
.build-modal-specs span{color:#8392a4;font-size:10.5px;line-height:1.4}
.build-modal-specs b{color:#314a68;font-size:11.5px;line-height:1.45;overflow-wrap:anywhere}
.build-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 20px;border-top:1px solid #e3eaf2;background:#fff}
.build-modal-footer .btn{min-width:150px}
.build-modal-cancel{border:0;background:#eef4fb;color:#176fe8}
.build-modal-order{min-width:225px!important}
html.build-modal-open,html.build-modal-open body{overflow:hidden}

@media(max-width:700px){
  .build-modal{padding:10px}
  .build-modal-panel{width:calc(100vw - 20px);max-height:94vh;border-radius:18px}
  .build-modal-header{padding:18px 17px 15px;gap:12px}
  .build-modal-header h2{font-size:20px}
  .build-modal-close{width:36px;height:36px;flex-basis:36px}
  .build-modal-scroll{padding:14px 15px 18px}
  .build-modal-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .build-modal-gallery.is-single{grid-template-columns:1fr}
  .build-modal-gallery.is-single a{aspect-ratio:16/10}
  .build-modal-facts{grid-template-columns:1fr;gap:7px}
  .build-modal-specs{grid-template-columns:1fr}
  .build-modal-section{padding:14px}
  .build-modal-footer{padding:12px 15px 15px;flex-direction:column-reverse}
  .build-modal-footer .btn,.build-modal-order{width:100%;min-width:0!important}
}
@media(max-width:500px){
  .build-card-body{min-height:150px;padding:14px}
  .build-card-body>h2{font-size:18px}
  .build-card .build-purpose{font-size:12.5px!important}
  .build-card .build-price{font-size:12px}
  .build-more-btn{min-height:38px;font-size:11.5px}
}


/* V35.11.7 — compact build cards + proportional modal photos */
.build-card{position:relative;cursor:pointer;outline:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.build-card:hover,.build-card:focus-visible{transform:translateY(-2px);border-color:#aecdF2;box-shadow:0 10px 24px rgba(27,72,126,.13)}
.build-card:focus-visible{box-shadow:0 0 0 3px rgba(37,119,238,.13),0 10px 24px rgba(27,72,126,.13)}
.build-cover{position:relative}
.build-cover::before{content:"";position:absolute;inset:0;z-index:2;background:rgba(16,35,58,.46);opacity:0;transition:opacity .18s ease;pointer-events:none}
.build-cover::after{content:"Нажмите, чтобы узнать подробнее";position:absolute;left:50%;top:50%;z-index:3;max-width:calc(100% - 22px);transform:translate(-50%,-46%);padding:7px 10px;border:1px solid rgba(255,255,255,.48);border-radius:9px;background:rgba(15,40,70,.72);color:#fff;font-size:10px;font-weight:800;line-height:1.3;text-align:center;white-space:normal;opacity:0;transition:opacity .18s ease,transform .18s ease;pointer-events:none;backdrop-filter:blur(3px)}
.build-card:hover .build-cover::before,.build-card:focus-visible .build-cover::before,.build-card:hover .build-cover::after,.build-card:focus-visible .build-cover::after{opacity:1}
.build-card:hover .build-cover::after,.build-card:focus-visible .build-cover::after{transform:translate(-50%,-50%)}

.build-modal-gallery a{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#f3f7fb}
.build-modal-gallery img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:none!important}
.build-modal-gallery.is-single a{aspect-ratio:auto;max-height:none;min-height:0;padding:0}
.build-modal-gallery.is-single img{width:auto;height:auto;max-width:100%;max-height:460px;object-fit:contain;object-position:center}
.build-modal-gallery a:hover img{transform:none!important}

.build-modal-specs>div.is-wide{grid-column:1/-1;grid-template-columns:minmax(105px,.36fr) minmax(0,1.64fr)}

@media(max-width:760px){
  .build-modal-gallery.is-single img{max-height:62vh}
  .build-modal-specs>div.is-wide{grid-column:auto;grid-template-columns:minmax(105px,.78fr) minmax(0,1.22fr)}
}
@media(hover:none){
  .build-cover::before,.build-cover::after{display:none}
}


/* V35.11.8 — polished non-clickable build gallery */
.build-modal-gallery{display:block;margin-bottom:18px}
.build-gallery-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;margin:0 auto;background:transparent;border:0;border-radius:0;overflow:visible}
.build-gallery-main{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:440px!important;object-fit:contain!important;object-position:center!important;border:1px solid #d7e3ef;border-radius:15px;background:#fff;box-shadow:0 8px 26px rgba(25,55,92,.08);user-select:none;-webkit-user-drag:none}
.build-modal-gallery.is-single .build-gallery-stage{padding:0}
.build-modal-gallery.is-single .build-gallery-main{margin:0 auto}
.build-gallery-nav{position:absolute;top:50%;z-index:4;width:38px;height:38px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid rgba(198,216,236,.95);border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 4px 14px rgba(29,62,101,.13);color:#176fe8;font-size:27px;line-height:1;cursor:pointer;transition:background .16s ease,transform .16s ease,border-color .16s ease}
.build-gallery-nav:hover,.build-gallery-nav:focus-visible{background:#fff;border-color:#9fc4ef;outline:none;transform:translateY(-50%) scale(1.04)}
.build-gallery-nav.is-prev{left:10px}.build-gallery-nav.is-next{right:10px}
.build-gallery-counter{position:absolute;right:12px;bottom:10px;z-index:4;padding:5px 8px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(20,42,69,.72);backdrop-filter:blur(5px);color:#fff;font-size:10px;font-weight:800;line-height:1}
.build-gallery-thumbs{display:flex;justify-content:center;gap:8px;margin:11px auto 0;padding:2px;overflow-x:auto;scrollbar-width:thin}
.build-gallery-thumb{width:74px;height:56px;flex:0 0 74px;padding:3px;border:1px solid #d8e4f0;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.build-gallery-thumb:hover,.build-gallery-thumb:focus-visible{border-color:#9fc4ef;outline:none;transform:translateY(-1px)}
.build-gallery-thumb.is-active{border-color:#2d82ef;box-shadow:0 0 0 2px rgba(45,130,239,.12)}
.build-gallery-thumb img{width:100%!important;height:100%!important;display:block;object-fit:cover!important;border:0!important;border-radius:7px!important;box-shadow:none!important}

@media(max-width:760px){
  .build-gallery-main{max-height:54vh!important;border-radius:12px}
  .build-gallery-nav{width:34px;height:34px;font-size:24px}
  .build-gallery-nav.is-prev{left:7px}.build-gallery-nav.is-next{right:7px}
  .build-gallery-thumb{width:62px;height:48px;flex-basis:62px}
}

/* V35.11.9 — framed modal gallery + equal vertical rhythm */
.build-modal-scroll{display:flex;flex-direction:column;gap:14px}
.build-modal-scroll>.build-modal-gallery,.build-modal-scroll>.build-modal-facts,.build-modal-scroll>.build-modal-section{margin:0!important}
.build-modal-gallery{padding:16px 17px;border:1px solid #dce6f1;border-radius:14px;background:#fff}
.build-modal-gallery .build-gallery-stage{width:100%}
@media(max-width:680px){
  .build-modal-scroll{gap:12px}
  .build-modal-gallery{padding:12px}
}

/* V35.11.11 — build facts: 3 in one row; 1–2 centered */
.build-modal-facts{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:stretch}
.build-modal-facts>div{grid-column:span 2;width:auto!important;min-width:0;box-sizing:border-box}
.build-modal-facts:has(>div:only-child)>div{grid-column:3 / span 2}
.build-modal-facts:has(>div:nth-child(2):last-child)>div:first-child{grid-column:2 / span 2}
.build-modal-facts:has(>div:nth-child(2):last-child)>div:last-child{grid-column:4 / span 2}
@media(max-width:680px){
  .build-modal-facts{grid-template-columns:1fr!important}
  .build-modal-facts>div,.build-modal-facts:has(>div:only-child)>div,.build-modal-facts:has(>div:nth-child(2):last-child)>div:first-child,.build-modal-facts:has(>div:nth-child(2):last-child)>div:last-child{grid-column:1!important;width:100%!important}
}

/* D1.2 — price page tiles, aligned with the current public card system */
.prices-page{padding-top:18px}
.prices-catalog{padding:26px}
.prices-catalog-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,1.2fr);gap:24px;align-items:end;margin-bottom:20px}
.prices-catalog-head h2{margin:4px 0 0}
.prices-catalog-head>p{margin:0;color:#6b788b;font-size:13px;line-height:1.55}
.prices-catalog-kicker{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.08em}
.price-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.price-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-height:104px;padding:17px 18px;border:1px solid #dfe7f0;border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(30,52,87,.035);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.price-card:hover{transform:translateY(-2px);border-color:#c9d9ec;box-shadow:0 10px 24px rgba(30,61,105,.08)}
.price-card-copy{min-width:0}
.price-card h3{margin:0;color:#203650;font-size:15px;line-height:1.35}
.price-card p{margin:6px 0 0;color:#748297;font-size:11.5px;line-height:1.45}
.price-card-value{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid #cfe1fa;border-radius:10px;background:#f2f7ff;color:#116be9;font-size:13px;line-height:1.2;white-space:nowrap}
.price-cards-empty{padding:22px;border:1px dashed #cad7e6;border-radius:13px;background:#f8fbff;color:#68778b;text-align:center;font-size:13px}
.prices-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.prices-note-card{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #e0e7ef;border-radius:14px;background:#f9fbfd}
.prices-note-icon{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#eaf3ff;color:var(--blue);font-size:16px;font-weight:900}
.prices-note-card h3{margin:0 0 4px;color:#263b55;font-size:13px}
.prices-note-card p{margin:0!important;color:#6f7d90!important;font-size:11.5px!important;line-height:1.5!important}
.prices-note-card a{color:var(--blue);font-weight:700}
.price-extra-cards{margin-top:20px;padding-top:19px;border-top:1px solid #e8edf3}
.price-extra-cards>h3{margin:0 0 12px;font-size:16px}
.price-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.price-help-grid span{position:relative;padding:10px 12px 10px 31px;border:1px solid #e2e9f1;border-radius:11px;background:#fff;color:#526277;font-size:12px;line-height:1.4}
.price-help-grid span::before{content:"✓";position:absolute;left:11px;top:10px;color:var(--blue);font-weight:900}
@media(max-width:760px){
  .prices-catalog{padding:20px}
  .prices-catalog-head{grid-template-columns:1fr;gap:8px;margin-bottom:16px}
  .price-card-grid,.prices-note-grid{grid-template-columns:1fr}
  .price-card{min-height:0}
}
@media(max-width:520px){
  .prices-page{padding-top:8px}
  .prices-catalog{padding:14px}
  .price-card{display:block;padding:15px}
  .price-card-value{margin-top:11px}
  .price-help-grid{grid-template-columns:1fr}
  .prices-note-card{padding:14px}
}


/* D1 correction 2026-08-20 — only user-approved public design fixes */
/* 1. Clear spacing between "Смотреть все услуги" and "Как проходит работа". */
#services .more-wrap{margin-bottom:16px}

/* 2. Mobile chat: real iPhone viewport fix.
   F12 emulation is not enough here: on iOS Safari the on-screen keyboard changes the visual viewport,
   so the panel must size itself from visualViewport values supplied by JS. */
@media(max-width:700px){
  .chat-panel{
    left:8px;
    right:8px;
    top:calc(var(--chat-vv-top,0px) + max(8px,env(safe-area-inset-top)));
    bottom:auto;
    width:auto;
    height:auto;
    max-width:none;
    max-height:calc(var(--chat-vv-height,100dvh) - max(16px,calc(env(safe-area-inset-top) + env(safe-area-inset-bottom) + 16px)));
    min-height:260px;
    border-radius:14px;
    grid-template-rows:auto minmax(0,auto) minmax(0,1fr) auto auto auto;
  }
  .chat-head{padding:11px 12px}
  .chat-intro{
    max-height:calc(var(--chat-vv-height,100dvh) - 230px);
    padding:10px 12px;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
  }
  .chat-intro>input,.chat-intro>select{width:100%;max-width:100%;min-width:0}
  .chat-consent{max-width:100%}
  .chat-messages{min-width:0;min-height:64px;padding:10px;-webkit-overflow-scrolling:touch}
  .chat-compose{
    grid-template-columns:auto minmax(0,1fr) auto;
    padding:7px;
    padding-bottom:calc(7px + env(safe-area-inset-bottom));
  }
  .chat-compose textarea{width:100%;min-width:0;max-width:100%;min-height:42px;max-height:100px}
}
@media(max-width:430px){
  .chat-panel{
    left:5px;
    right:5px;
    top:calc(var(--chat-vv-top,0px) + max(5px,env(safe-area-inset-top)));
    max-height:calc(var(--chat-vv-height,100dvh) - max(10px,calc(env(safe-area-inset-top) + env(safe-area-inset-bottom) + 10px)));
    border-radius:12px;
  }
  .chat-head{padding:9px 10px}
  .chat-head strong{font-size:12px}
  .chat-head small{font-size:9px}
  .chat-intro{max-height:calc(var(--chat-vv-height,100dvh) - 210px);padding:8px 10px;font-size:11px}
  .chat-intro .chat-label{margin-top:6px}
  .chat-intro>input,.chat-intro>select{padding:8px 9px}
}

/* 3. Prices: four cards per row on desktop, explanatory note in smaller type. */
.price-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.price-card{min-height:150px;padding:15px;flex-direction:column;align-items:stretch;justify-content:space-between;gap:12px}
.price-card h3{font-size:13px;line-height:1.32}
.price-card p{font-size:10.5px;line-height:1.45;margin-top:6px}
.price-card-value{align-self:flex-start;margin-top:auto;font-size:12px}

/* Keep the two information cards at their current size, but make both animated and clickable. */
.prices-note-card.prices-note-action{
  position:relative;width:100%;margin:0;text-align:left;font:inherit;color:inherit;cursor:pointer;text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
@media(hover:hover) and (pointer:fine){
  .prices-note-card.prices-note-action::after{
    content:"Узнать подробнее";
    position:absolute;left:50%;bottom:calc(100% + 8px);z-index:8;
    padding:6px 9px;border:1px solid #cbdcf2;border-radius:8px;
    background:#fff;color:#315b8e;box-shadow:0 7px 18px rgba(30,61,105,.13);
    font-size:10px;font-weight:800;line-height:1;white-space:nowrap;
    opacity:0;pointer-events:none;transform:translate(-50%,5px);
    transition:opacity .14s ease,transform .14s ease;
  }
  .prices-note-card.prices-note-action::before{
    content:"";position:absolute;left:50%;bottom:calc(100% + 3px);z-index:9;
    width:8px;height:8px;background:#fff;border-right:1px solid #cbdcf2;border-bottom:1px solid #cbdcf2;
    opacity:0;pointer-events:none;transform:translateX(-50%) rotate(45deg);
    transition:opacity .14s ease;
  }
  .prices-note-card.prices-note-action:hover::after{opacity:1;transform:translate(-50%,0)}
  .prices-note-card.prices-note-action:hover::before{opacity:1}
}
.prices-note-card.prices-note-action:hover,.prices-note-card.prices-note-action:focus-visible{
  transform:translateY(-3px);border-color:#bcd5f3;background:#fff;box-shadow:0 10px 24px rgba(30,61,105,.10);outline:none;
}
.prices-note-card.prices-note-action:active{transform:translateY(-1px)}
.prices-note-copy{display:block;min-width:0}
.prices-note-copy strong{display:block;margin:0 0 4px;color:#263b55;font-size:13px;line-height:1.35}
.prices-note-copy small{display:block;color:#6f7d90;font-size:11.5px;line-height:1.5}

/* "Также Александр помогает": one horizontal row of cards with horizontal scrolling. */
.price-help-scroll{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin}
.price-help-scroll span{position:relative;flex:0 0 215px;min-height:72px;padding:13px 14px 13px 34px;border:1px solid #e2e9f1;border-radius:11px;background:#fff;color:#526277;font-size:12px;line-height:1.4;scroll-snap-align:start}
.price-help-scroll span::before{content:"✓";position:absolute;left:13px;top:13px;color:var(--blue);font-weight:900}

@media(max-width:980px){.price-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){
  .price-card-grid{grid-template-columns:1fr}
  .price-card{min-height:0}
  .price-help-scroll span{flex-basis:190px}
}

/* 4. Contacts: compact table instead of a long vertical stack. */
.contacts-info-section{padding-bottom:22px}
.contacts-info-card h2{margin:0 0 14px}
.contact-info-table-wrap{overflow-x:auto}
.contact-info-table{width:100%;border-collapse:collapse;table-layout:fixed}
.contact-info-table th,.contact-info-table td{padding:12px 14px;border-bottom:1px solid #e6edf5;vertical-align:top;text-align:left;font-size:13px;line-height:1.5}
.contact-info-table th{width:190px;color:#243a56;font-weight:800;background:#f8fbff}
.contact-info-table td{color:#526075;background:#fff}
.contact-info-table tr:last-child th,.contact-info-table tr:last-child td{border-bottom:0}
.contact-info-table a{color:var(--blue)}
@media(max-width:620px){
  .contact-info-table{table-layout:auto}
  .contact-info-table th{width:132px}
  .contact-info-table th,.contact-info-table td{padding:10px 9px;font-size:12px}
}


/* D1 iOS Safari 2026-08-20 — prevent native focus auto-zoom in chat fields.
   iOS zooms the page when a focused form control renders below 16px. */
@supports (-webkit-touch-callout:none){
  @media(max-width:700px){
    .chat-intro>input,
    .chat-intro>select,
    .chat-compose textarea{
      font-size:16px!important;
      line-height:1.35;
    }
  }
}
