/******* Do not edit this file *******
Woody Code Snippets CSS and JS
Saved: Jul 13 2026 | 20:32:32 */
/* ============================================================
   RevMap · СТРАНИЦА ОТЗЫВОВ (otzyvy) · CSS-сниппет
   Тип в Woody: CSS · Расположение: Шапка (Head)
   Совет: страницу отзывов делай на пустом шаблоне (без шапки/подвала темы),
   тогда карточка красиво центрируется на весь экран.
   ============================================================ */

/* полноэкранный центрирующий контейнер + градиентный фон */
#revmap-review{
  font-family:'Manrope',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:#1B2340; -webkit-font-smoothing:antialiased;
  min-height:100vh; min-height:100dvh;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:28px 16px; box-sizing:border-box; position:relative; overflow:hidden;
  background:
    radial-gradient(1100px 700px at 12% -8%, rgba(109,59,224,0.14), transparent 60%),
    radial-gradient(1000px 700px at 100% 110%, rgba(62,123,250,0.14), transparent 60%),
    linear-gradient(160deg,#EEF1FF 0%,#F6F2FF 46%,#FCF1FB 100%);
}
#revmap-review *{box-sizing:border-box;}
/* мягкие плавающие пятна для глубины */
#revmap-review::before, #revmap-review::after{
  content:""; position:absolute; border-radius:50%; filter:blur(60px); pointer-events:none; z-index:0;
}
#revmap-review::before{width:340px; height:340px; top:-80px; left:-70px;
  background:radial-gradient(circle,rgba(109,59,224,0.30),transparent 70%); animation:rrFloat 12s ease-in-out infinite;}
#revmap-review::after{width:380px; height:380px; bottom:-110px; right:-90px;
  background:radial-gradient(circle,rgba(62,123,250,0.28),transparent 70%); animation:rrFloat 15s ease-in-out infinite reverse;}
@keyframes rrFloat{0%,100%{transform:translate(0,0);} 50%{transform:translate(18px,-16px);}}

/* карточка */
.rr-card{
  position:relative; z-index:1; width:100%; max-width:480px;
  background:rgba(255,255,255,0.92); backdrop-filter:blur(4px);
  border-radius:30px; padding:40px 30px 34px; text-align:center;
  box-shadow:0 40px 90px -22px rgba(74,40,180,0.30), 0 6px 20px rgba(27,35,64,0.06);
  border:1px solid rgba(255,255,255,0.7);
  animation:rrRise .5s cubic-bezier(0.2,0.8,0.2,1) both;
}
@keyframes rrRise{from{opacity:0; transform:translateY(16px);} to{opacity:1; transform:none;}}
/* тонкая градиентная линия сверху карточки */
.rr-card::before{
  content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:64px; height:4px; border-radius:99px; background:linear-gradient(90deg,#6D3BE0,#3E7BFA);
}

.rr-logo{display:flex; justify-content:center; align-items:center; gap:11px; margin-bottom:10px;}
.rr-logo-ico{width:38px; height:38px; flex:none; display:flex; align-items:center; justify-content:center;}
.rr-logo-ico svg{width:34px; height:34px; filter:drop-shadow(0 6px 12px rgba(109,59,224,0.32));}
.rr-logo-name{font-size:22px; font-weight:800; letter-spacing:-0.01em;}
.rr-branch{
  display:inline-block; font-size:12.5px; color:#6D3BE0; font-weight:700;
  background:rgba(109,59,224,0.09); border-radius:99px; padding:5px 14px; margin-bottom:20px; min-height:0;
}
.rr-branch:empty{display:none;}

.rr-title{font-size:clamp(19px,5.4vw,32px); font-weight:800; letter-spacing:-0.02em; margin:0 0 10px; line-height:1.14;}
.rr-sub{font-size:15px; color:#5A5F7A; line-height:1.55; margin:0 auto 26px; max-width:330px;}

/* ---- звёзды ---- */
.rr-stars{display:flex; justify-content:center; gap:clamp(6px,2.5vw,12px);}
.rr-star{
  -webkit-appearance:none; appearance:none; border:none; background:transparent; cursor:pointer;
  font-size:clamp(42px,12vw,58px); line-height:1; color:#E1DEEC; padding:0;
  transition:transform .18s cubic-bezier(0.2,1.4,0.4,1), color .18s ease, filter .18s ease;
  font-family:'Segoe UI Symbol','Arial Unicode MS',Arial,sans-serif;
  outline:none; -webkit-tap-highlight-color:transparent; user-select:none; -webkit-user-select:none;
}
.rr-star:focus, .rr-star:focus-visible{outline:none; background:transparent;}
.rr-star::-moz-focus-inner{border:0; padding:0;}
/* ПЕРЕБИВАЕМ кнопочные стили темы Astra на звёздах (серые боксы + синий фон при наведении) */
#revmap-review .rr-stars .rr-star,
#revmap-review .rr-stars .rr-star:hover,
#revmap-review .rr-stars .rr-star:focus,
#revmap-review .rr-stars .rr-star:focus-visible,
#revmap-review .rr-stars .rr-star:active,
#revmap-review .rr-stars .rr-star:focus-within{
  -webkit-appearance:none!important; appearance:none!important;
  background:transparent!important; background-color:transparent!important; background-image:none!important;
  border:0!important; border-radius:0!important; box-shadow:none!important; outline:0!important; text-decoration:none!important;
  color:#E1DEEC;
}
#revmap-review .rr-stars .rr-star.on,
#revmap-review .rr-stars .rr-star:hover{color:#FBBF24!important;}
.rr-star:hover{transform:scale(1.22) translateY(-2px);}
.rr-star.on{color:#FBBF24; filter:drop-shadow(0 6px 12px rgba(251,176,36,0.45));}
.rr-star:active{transform:scale(.9);}
.rr-hint{font-size:13px; color:#9A9DB2; margin-top:14px; font-weight:600;}

.rr-foot{position:relative; z-index:1; text-align:center; font-size:12px; color:#9296AC; margin-top:22px;}
.rr-foot b{color:#6D3BE0;}

/* ============ ПОПАП ============ */
.rr-modal{position:fixed; inset:0; z-index:99999; display:none; align-items:center; justify-content:center; padding:18px;}
.rr-modal.open{display:flex;}
.rr-modal-backdrop{position:absolute; inset:0; background:rgba(20,22,43,0.55);
  backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); animation:rrFade .22s ease both;}
.rr-modal-box{position:relative; z-index:1; width:100%; max-width:440px; max-height:90vh; overflow-y:auto;
  -webkit-overflow-scrolling:touch; background:#fff; border-radius:24px; padding:24px 22px 22px; text-align:center;
  box-shadow:0 40px 90px rgba(20,22,43,0.38); animation:rrPop .3s cubic-bezier(0.2,0.9,0.2,1) both;
  font-family:'Manrope',system-ui,sans-serif; color:#1B2340;}
.rr-modal-box::before{content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:56px; height:4px; border-radius:99px; background:linear-gradient(90deg,#6D3BE0,#3E7BFA);}
@keyframes rrFade{from{opacity:0;} to{opacity:1;}}
@keyframes rrPop{from{opacity:0; transform:translateY(16px) scale(.95);} to{opacity:1; transform:none;}}
.rr-modal-close{position:absolute; top:12px; right:12px; width:32px!important; height:32px!important; min-width:0; padding:0!important;
  border:none; border-radius:50%; background:#F2F1F7; color:#7A7E9A; font-size:20px; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center; box-sizing:border-box; transition:background .15s,color .15s,transform .15s;
  background:#F2F1F7!important;}
#revmap-review .rr-modal-box .rr-modal-close:hover, .rr-modal-close:hover{background:#E8E6F0!important; outline:0!important; box-shadow:none!important;}
.rr-modal-close:focus{outline:0!important; box-shadow:none!important;}
.rr-modal-close:hover{background:#E8E6F0; color:#1B2340; transform:rotate(90deg);}
.rr-modal-box *{box-sizing:border-box;}

.rr-pane{display:none;}
.rr-pane.show{display:block;}
.rr-result-emoji{font-size:34px; margin:2px 0 6px; animation:rrPophaps .4s ease both;}
@keyframes rrPophaps{from{transform:scale(.4); opacity:0;} to{transform:scale(1); opacity:1;}}
.rr-result-title{font-size:15px; font-weight:700; color:#1B2340; line-height:1.35; margin:0 auto 16px; max-width:320px;}

/* ---- кнопки площадок ---- */
.rr-plat{display:flex; align-items:center; gap:11px; width:100%; text-decoration:none; padding:12px 16px;
  border-radius:14px; margin-bottom:9px; font-size:15px; font-weight:700; color:#1B2340;
  border:1.5px solid #ECEBF3; background:#fff; transition:transform .14s ease, box-shadow .16s ease, border-color .16s ease;}
.rr-plat:last-child{margin-bottom:0;}
.rr-plat:hover{transform:translateY(-2px); box-shadow:0 12px 26px rgba(27,35,64,0.12);}
.rr-plat:active{transform:translateY(0);}
.rr-plat-ico{width:32px; height:32px; border-radius:9px; flex:none; color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:800; font-size:15px;}
.rr-plat.rr-hidden{display:none;}
/* убираем подчёркивание ссылок (перебиваем стиль ссылок Astra) */
.rr-modal .rr-plat,
.rr-modal .rr-plat:hover,
.rr-modal .rr-plat:focus,
.rr-modal .rr-plat:visited,
.rr-modal .rr-plat span,
#revmap-review .rr-plat, #revmap-review .rr-plat span{text-decoration:none!important;}
.rr-yandex .rr-plat-ico{background:#FC3F1D;} .rr-yandex:hover{border-color:#FC3F1D;}
.rr-gis .rr-plat-ico{background:#28A03C;} .rr-gis:hover{border-color:#28A03C;}
.rr-yaservices .rr-plat-ico{background:#FF4D6A;} .rr-yaservices:hover{border-color:#FF4D6A;}
.rr-zoon .rr-plat-ico{background:#7B2FF7;} .rr-zoon:hover{border-color:#7B2FF7;}

/* ---- скин формы CF7 ---- */
.rr-form .wpcf7{margin:0;}
.rr-form .wpcf7 br{display:none;}
.rr-form .wpcf7 p{margin:0 0 9px;}
.rr-form input[type=text],.rr-form input[type=tel],.rr-form input[type=email],.rr-form textarea,.rr-form select{
  width:100%; border:1.5px solid #E3E2EC; border-radius:12px; padding:11px 14px; font-size:14.5px;
  font-family:inherit; color:#1B2340; background:#fff; outline:none; transition:border-color .15s;}
.rr-form textarea{height:104px!important; min-height:104px; box-sizing:border-box!important; padding:10px 14px!important; line-height:1.4!important; overflow-y:auto!important; resize:vertical;}
.rr-form input:focus,.rr-form textarea:focus,.rr-form select:focus{border-color:#6D3BE0;}
.rr-form .wpcf7-form-control-wrap:has(> input[type=hidden]){display:none!important;}
.rr-form .wpcf7 p:not(:has(input:not([type=hidden]))):not(:has(textarea)):not(:has(select)):not(:has(.wpcf7-submit)){display:none!important;margin:0!important;}
.rr-form .wpcf7-submit{width:100%; border:none; border-radius:13px; padding:13px;
  background:linear-gradient(135deg,#6D3BE0,#3E7BFA)!important; color:#fff!important; font-size:clamp(14px,3.8vw,16px);
  font-weight:800; cursor:pointer; box-shadow:0 8px 22px rgba(109,59,224,0.35); border:0!important; transition:filter .15s,transform .12s;}
.rr-form .wpcf7-submit:hover{filter:brightness(1.05); transform:translateY(-1px);}
.rr-form .wpcf7-spinner{display:none;}
.rr-form .wpcf7-response-output{border:none!important; border-radius:12px; margin:14px 0 0!important; padding:14px!important;
  font-size:14px; font-weight:700; text-align:center;}
.rr-form form.sent .wpcf7-response-output{background:#E9F8F0!important; color:#1F8A5B!important;}
.rr-form form.invalid .wpcf7-response-output,.rr-form form.failed .wpcf7-response-output{background:#FDECEC!important; color:#E8563F!important;}

/* ---- адаптив ---- */
@media (max-width:560px){
  #revmap-review{padding:20px 10px;}
  .rr-card{padding:30px 16px 26px; border-radius:24px;}
  .rr-sub{max-width:none;}
  .rr-modal-box{padding:24px 18px 22px;}
}