/* ==========================================================================
   Форма обратной связи на главной (index.php, send2.php).
   Селекторы с префиксом gfmfb- внутри .gfmfb-section, чтобы не пересекаться
   с assets/css/style.css и Bootstrap 3.
   ========================================================================== */

.gfmfb-section{
  --gfmfb-gold:#f9b707;
  --gfmfb-gold-deep:#bd8700;
  --gfmfb-navy:#012f5c;
  --gfmfb-ink:#373737;
  --gfmfb-muted:#6B7480;
  --gfmfb-bg:#e8eef7;
  --gfmfb-line:#dfe4ec;

  padding:0 0 60px;
  font-family:"Hind",sans-serif;
  color:var(--gfmfb-ink);
}
.gfmfb-section *{box-sizing:border-box;}

.gfmfb{
  max-width:640px;margin:0 auto;padding:40px;
  background:var(--gfmfb-bg);border-radius:8px;
}
.gfmfb h2{
  margin:0 0 18px;padding-bottom:14px;
  font-family:"Poppins",sans-serif;font-size:34px;font-weight:700;color:var(--gfmfb-ink);
  border-bottom:3px solid var(--gfmfb-gold);display:inline-block;
}
.gfmfb-lead{margin:0 0 24px;font-size:15px;color:var(--gfmfb-muted);}

/* ---------- Поля ---------- */
.gfmfb-group{margin-bottom:18px;}
.gfmfb-group label{
  display:block;margin-bottom:6px;font-size:14px;color:var(--gfmfb-muted);font-weight:400;
}
.gfmfb-group input,
.gfmfb-group textarea{
  width:100%;padding:12px 16px;color:var(--gfmfb-ink);background:#fff;
  border:1px solid var(--gfmfb-line);border-radius:4px;
  font-family:"Hind",sans-serif;font-size:16px;line-height:1.4;
  transition:border-color .15s,box-shadow .15s;
}
.gfmfb-group input{height:48px;}
.gfmfb-group textarea{min-height:120px;resize:vertical;}
.gfmfb-group input::placeholder,
.gfmfb-group textarea::placeholder{color:#9aa3ae;}
.gfmfb-group input:focus,
.gfmfb-group textarea:focus{
  outline:none;border-color:var(--gfmfb-gold);box-shadow:0 0 0 3px rgba(249,183,7,.18);
}

/* ---------- Кнопка ---------- */
.gfmfb-btn-box{margin-top:24px;min-height:56px;display:flex;align-items:center;}
a.gfmfb-btn{
  display:inline-block;padding:16px 44px;
  color:#fff;background:var(--gfmfb-gold);border-radius:90px;
  font-family:"Poppins",sans-serif;font-size:16px;font-weight:600;line-height:1;
  text-decoration:none;cursor:pointer;box-shadow:0 8px 18px rgba(189,135,0,.22);
  transition:background .15s;
}
a.gfmfb-btn:hover,
a.gfmfb-btn:focus{color:#fff;background:var(--gfmfb-gold-deep);text-decoration:none;}
.gfmfb-btn-box img{height:40px;}

/* ---------- Результат отправки ---------- */
.gfmfb .send_form_result_error,
.gfmfb .send_form_result_success{
  padding:12px 16px;border-radius:4px;font-size:15px;
}
.gfmfb .send_form_result_error{color:#8a1c1c;background:#fdecec;border:1px solid #f5c2c2;}
.gfmfb .send_form_result_success{color:#1d6b33;background:#e8f6ec;border:1px solid #b6e0c2;}

@media(max-width:767px){
  .gfmfb{padding:24px 18px;}
  .gfmfb h2{font-size:26px;}
  a.gfmfb-btn{width:100%;text-align:center;}
}

/* ==========================================================================
   Форма в правой колонке секции «Обслуживаем» (contact-section в index.php).
   ========================================================================== */

/* Сбрасываем отступы секции: aside теперь колонка, а не отдельный блок. */
.gfmwide-side{padding:0;}

@media(min-width:1200px){
  /* Секция шире стандартного .container (1170px), чтобы влезли обе колонки. */
  .contact-section > .container{width:auto;max-width:1600px;padding-left:30px;padding-right:30px;}

  /* align-items:stretch — карта тянется по высоте формы, пустоты под ней нет. */
  .gfmwide{display:flex;align-items:stretch;gap:36px;}
  .gfmwide-main{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;}
  .gfmwide-side{flex:0 0 32%;min-width:360px;max-width:430px;}

  /* Ряд Bootstrap переводим на flex, чтобы колонка карты растянулась на всю высоту. */
  .gfmwide-main > .row{display:flex;flex:1 1 auto;}
  .gfmwide-main > .row > [class*="col-"]{display:flex;flex-direction:column;float:none;min-width:0;}
  .gfmwide-main .contact-location-map{height:auto;flex:1 1 auto;min-height:380px;}

  .gfmwide-side .gfmfb{max-width:none;margin:0;padding:28px;}
  .gfmwide-side .gfmfb h2{font-size:28px;}
  .gfmwide-side .gfmfb-lead{margin-bottom:18px;}
  .gfmwide-side .gfmfb-group textarea{min-height:96px;}
}

/* Планшет и мобильный: форма уходит под карту. */
@media(max-width:1199px){
  .gfmwide-side{display:block;margin-top:40px;}
}
