/* === CONTACTS PAGE — Final Polish === */

/* Hide template extras */
.box-gallery{display:none!important}
.pg-toc{display:none!important}
.uk-section-xsmall{padding:0!important}
.uk-section-xsmall>.uk-container.page{padding:0;max-width:none}

/* ── Box-title as hero heading ── */
.box-title{background:#e8f4fd!important;padding:48px 0 0!important;margin:0!important;border:none!important;box-shadow:none!important}
.box-title .uk-breadcrumb{display:none}
.box-title .pagetitle{font-size:42px;font-weight:800;color:#0a2e4d;margin:0;line-height:1.1}

/* ── Hero ── */
.ct-a-hero{background:linear-gradient(180deg,#e8f4fd 0%,#fff 100%);padding:14px 0 40px}
.ct-a-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.ct-a-hero .ct-a-sub{font-size:17px;color:#555;margin:0 0 16px;max-width:460px}

/* Hero badges (schedule + response time) */
.ct-a-hero-badges{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.ct-a-badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#555;background:#fff;border-radius:20px;padding:6px 14px;border:1px solid #e8f0f8}
.ct-a-badge svg{width:14px;height:14px;color:#1e87f0;flex-shrink:0}
.ct-a-badge-accent{background:#e8f4fd;border-color:#c5dff5;color:#1e87f0}

/* Hero CTA — calc-style buttons */
.ct-a-hero-cta{margin-top:4px}
.ct-a-hero-cta .cta-secondary{margin-bottom:16px}
.ct-a-hero-cta .msg-buttons{justify-content:flex-start}

/* ── Hero map ── */
.ct-a-hero-map{border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);height:380px}
.ct-a-hero-map iframe,.ct-a-hero-map>div{width:100%;height:100%;border:none}

/* ── Section titles ── */
.ct-a-section-title{text-align:center;font-size:28px;font-weight:700;color:#222;margin:0 0 36px}

/* ── Contact cards ── */
.ct-a-cards{padding:48px 0;background:#fff}
.ct-a-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ct-a-card{background:#f8fbff;border-radius:16px;padding:28px;border:1px solid #e8f0f8;transition:box-shadow .3s}
.ct-a-card:hover{box-shadow:0 8px 24px rgba(30,135,240,.1)}
.ct-a-card-icon{width:48px;height:48px;background:#e8f4fd;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.ct-a-card-icon svg{width:24px;height:24px;color:#1e87f0}
.ct-a-card h3{font-size:18px;font-weight:700;color:#0a2e4d;margin:0 0 12px}
.ct-a-card a{color:#1e87f0;text-decoration:none;font-weight:600;font-size:16px;display:block;margin-bottom:6px}
.ct-a-card a:hover{color:#0f7ae5}
.ct-a-card p{color:#555;font-size:14px;margin:4px 0}

/* Phone card — bigger primary number */
.ct-a-card-phones .ct-a-phone-main{font-size:22px;font-weight:700;color:#0a2e4d;margin-bottom:2px}
.ct-a-card-phones .ct-a-phone-main:hover{color:#1e87f0}
.ct-a-card-phones .ct-a-phone-sec{font-size:16px;color:#1e87f0;font-weight:600}

/* Address card */
address.ct-a-card-address{font-style:normal;color:#333;font-size:15px;line-height:1.5}
.ct-a-card-schedule{font-size:13px;color:#888;margin:8px 0 0}
.ct-a-card .ct-a-card-route{display:inline-flex;align-items:center;gap:6px;color:#1e87f0;font-weight:600;font-size:14px;margin-top:10px;text-decoration:none}
.ct-a-card .ct-a-card-route:hover{color:#0f7ae5}

/* Messenger card — justified full-width buttons */
.ct-a-card-msg .ct-a-card-icon{margin-bottom:16px}
.ct-a-card-buttons{margin-top:8px}
.ct-a-card-buttons .msg-buttons.msg-cta{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
.ct-a-card-buttons .msg-buttons.msg-cta .msg-btn{width:100%;justify-content:center;box-sizing:border-box}
.ct-a-card-buttons .msg-buttons.msg-cta .msg-btn:last-child:nth-child(odd){grid-column:1 / -1}

/* ── Trust line (reviews) ── */
.ct-a-trust-line{padding:16px 0;text-align:center;font-size:14px;color:#888;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0}
.ct-a-trust-line span{vertical-align:middle}
.ct-a-trust-line a{color:#1e87f0;font-weight:600;text-decoration:none;vertical-align:middle}
.ct-a-trust-line a:hover{text-decoration:underline}
.ct-a-trust-dot{display:inline-block;width:4px;height:4px;background:#ccc;border-radius:50%;vertical-align:middle;margin:0 10px}

/* ── About text block ── */
.ct-a-about{padding:32px 0 0;background:#fff}
.ct-a-about-inner{background:#f8fbff;border-radius:16px;padding:28px 32px;border:1px solid #e8f0f8}
.ct-a-about p{font-size:15px;color:#555;line-height:1.7;margin:0 0 12px}
.ct-a-about p:last-child{margin-bottom:0}
.ct-a-about a{color:#1e87f0;text-decoration:none;font-weight:600}
.ct-a-about a:hover{color:#0f7ae5;text-decoration:underline}

/* ── Stats ── */
.about-stats{background:#1e2a3a;border-radius:16px;padding:32px 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:center;color:#fff;margin:32px 0}
.about-stats .num{font-size:36px;font-weight:800;line-height:1.2}
.about-stats .lbl{font-size:13px;color:rgba(255,255,255,.7);margin-top:4px}

/* ── Feedback form ── */
.ct-a-form{padding:40px 0;background:#fff}
.ct-a-form-sub{text-align:center;font-size:15px;color:#666;margin:-24px 0 24px}
.ct-a-form-wrap{max-width:680px;margin:0 auto;background:#fff;border-radius:0;padding:0;border:none}

/* ── Requisites (accordion) ── */
.ct-a-reqs{padding:16px 0 32px;background:#fff}
.ct-a-reqs-title{font-size:18px;font-weight:700;color:#0a2e4d;padding:16px 0;border-bottom:1px solid #e8f0f8}
.ct-a-reqs .uk-accordion>li{list-style:none}
.ct-a-reqs .uk-accordion{padding:0;margin:0}
.ct-a-reqs .uk-table td{font-size:14px;color:#555}
.ct-a-reqs .uk-table td:first-child{font-weight:600;color:#333;white-space:nowrap}

/* ── Hide reCAPTCHA badge ── */
.grecaptcha-badge{visibility:hidden!important}

/* ── Map placeholder ── */
.ct-map-placeholder{width:100%;height:100%;background:#e8f4fd;display:flex;align-items:center;justify-content:center;color:#999;font-size:14px}

/* ── Responsive ── */
@media(max-width:959px){
  .ct-a-hero-inner{grid-template-columns:1fr}
  .ct-a-hero-map{height:280px;margin-top:20px}
  .ct-a-cards-grid{grid-template-columns:1fr}
  .box-title .pagetitle{font-size:32px}
  .ct-a-hero-cta .cta-secondary{flex-wrap:wrap}
  .about-stats{grid-template-columns:repeat(2,1fr);gap:20px}
  .ct-a-about-inner{padding:20px 20px}
  .ct-a-form-wrap{padding:20px 16px}
}
@media(max-width:639px){
  /* Side padding — breathing room from edges */
  .box-title{padding-left:20px!important;padding-right:20px!important}
  .box-title .pagetitle{font-size:28px}
  .ct-a-hero .uk-container,
  .ct-a-cards .uk-container,
  .ct-a-about .uk-container,
  .ct-a-trust-line .uk-container,
  .ct-a-form .uk-container,
  .ct-a-reqs .uk-container{padding-left:20px;padding-right:20px}
  /* Taller phone & callback buttons */
  .ct-a-hero-cta .cta-secondary{flex-direction:column;gap:10px}
  .ct-a-hero-cta .cta-secondary .cta-sec-btn{width:100% !important;justify-content:center !important;min-height:48px !important;font-size:15px !important;border-radius:12px !important;padding:12px 16px !important;box-sizing:border-box !important;align-items:center !important}
  .ct-a-hero-badges{flex-direction:column;gap:8px}
  /* Hero messenger buttons — 2-col grid, email full width */
  .ct-a-hero-cta .msg-buttons.msg-cta{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
  .ct-a-hero-cta .msg-buttons.msg-cta .msg-btn{display:flex!important;width:100%;justify-content:center;box-sizing:border-box;min-width:0;overflow:hidden}
  .ct-a-hero-cta .msg-buttons.msg-cta .msg-btn-email{white-space:nowrap;text-overflow:ellipsis}
  .ct-a-hero-cta .msg-buttons.msg-cta .msg-btn:last-child:nth-child(odd){grid-column:1 / -1}
  /* Cards section — single column on mobile */
  .ct-a-card-buttons .msg-buttons.msg-cta{grid-template-columns:1fr!important}
  .ct-a-card-buttons .msg-cta-row{grid-template-columns:1fr}
  /* Stats — inset from edges */
  .about-stats{grid-template-columns:repeat(2,1fr);margin-left:20px!important;margin-right:20px!important}
  .ct-a-card-phones .ct-a-phone-main{font-size:20px}
}

