/* ============================================================
   BEAMJi Laser Clean — Universal CSS
   beamji.com | Version 3.0 | April 2026
   Paste into: Appearance → Additional CSS
   ============================================================ */

/* ────────────────────────────────────────────────────────────
   1. WORDPRESS THEME RESET
   ──────────────────────────────────────────────────────────── */
#masthead,
.site-header,
.main-navigation {
  display:none !important;
}
footer.site-footer,
.site-footer,
footer {
  display:none !important;
}
.page-title,
.entry-title {
  display:none !important;
}
body, .site, #page {
  margin:0 !important;
  padding:0 !important;
  max-width:100% !important;
  overflow-x:hidden !important;
}
html, body, #page, #content, #primary, .site-content {
  background:#0a1628 !important;
}
#content, #primary {
  max-width:100% !important;
  padding:0 !important;
  margin:0 !important;
}
.site-content,
#content,
#primary,
.content-area {
  padding:0 !important;
  margin:0 !important;
  max-width:100% !important;
}
.entry-content,
.post-content,
.page-content,
.ast-article-post,
.ast-container {
  max-width:100% !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
.wp-block-html {
  margin:0 !important;
  padding:0 !important;
}

/* ────────────────────────────────────────────────────────────
   2. LOGO — новый логотип на всех страницах
   ──────────────────────────────────────────────────────────── */
.bj-logo img,
.bja-logo img,
.bjc-logo img,
.bjp-logo img,
.bjt-logo img,
.bjs-logo img,
.bjw-logo img,
.bh-logo img,
.bjp2-logo img,
.bjt2-logo img {
  content:url('https://beamji.com/wp-content/uploads/2026/04/Asset-5-1.png');
  border:none !important;
  box-shadow:none !important;
  outline:none !important;
  display:block !important;
}

/* ────────────────────────────────────────────────────────────
   3. FULL WIDTH — все страницы
   ──────────────────────────────────────────────────────────── */
.bja, .bjs, .bjw, .bjc, .bjp, .bjt, .bh,
.bjp2, .bjt2,
.bh *, .entry-content .bh, .site-content .bh {
  max-width:none !important;
}
.bja {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjs {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjw {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjp {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjt {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjc {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjp2,
.entry-content .bjp2,
.site-content .bjp2 {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bjt2,
.entry-content .bjt2,
.site-content .bjt2 {
  margin-left:calc(-50vw + 50%) !important;
  width:100vw !important;
  max-width:100vw !important;
}
.bj-wrap {
  margin-left:calc(-50vw + 50%) !important;
  max-width:100vw !important;
  width:100vw !important;
  height:calc(100vh - 32px) !important;
}
@media screen and (max-width:782px) {
  .bj-wrap {
    height:calc(100vh - 46px) !important;
  }
}

/* ────────────────────────────────────────────────────────────
   4. TYPOGRAPHY — тонкий шрифт все страницы
   ──────────────────────────────────────────────────────────── */
.bj-h1,
.bja-hero h1, .bja-section-text h2, .bja-cta h2,
.bjs-hero h1, .bjs-section-text h2, .bjs-cta h2,
.bjc-left h1, .bjc-right h2,
.bjp-hero h1, .bjp-content h2, .bjp-content h3,
.bjt-hero h1, .bjt-content h2, .bjt-content h3,
.bjw-main h1,
.bh-hero-h1, .bh-sec-h2, .bh-cta-banner h2,
.bjp2-hero h1, .bjp2-content h2, .bjp2-content h3,
.bjt2-hero h1, .bjt2-content h2, .bjt2-content h3 {
  font-weight:600 !important;
}

/* ────────────────────────────────────────────────────────────
   5. IMAGE RESET
   ──────────────────────────────────────────────────────────── */
.bja img, .bja-nav img,
.bjs img, .bjs-nav img,
.bjw img, .bjw-nav img,
.bjc img, .bjc-nav img,
.bjp img, .bjp-nav img,
.bjt img, .bjt-nav img,
.bh img, .bh-nav img,
.bjp2 img, .bjp2-nav img,
.bjt2 img, .bjt2-nav img {
  border:none !important;
  box-shadow:none !important;
  outline:none !important;
  vertical-align:top !important;
  display:block !important;
}
.bja-logo, .bja-logo img,
.bjs-logo, .bjs-logo img,
.bjw-logo, .bjw-logo img,
.bjc-logo, .bjc-logo img,
.bjp-logo, .bjp-logo img,
.bjt-logo, .bjt-logo img,
.bh-logo,  .bh-logo img,
.bjp2-logo, .bjp2-logo img,
.bjt2-logo, .bjt2-logo img {
  border:none !important;
  border-bottom:none !important;
  border-top:none !important;
  box-shadow:none !important;
  outline:none !important;
  text-decoration:none !important;
  font-size:0 !important;
  line-height:0 !important;
}
.bja-nav::after, .bja-nav::before,
.bjs-nav::after, .bjs-nav::before,
.bjw-nav::after, .bjw-nav::before {
  display:none !important;
  border:none !important;
}

/* ────────────────────────────────────────────────────────────
   6. TAP HIGHLIGHT
   ──────────────────────────────────────────────────────────── */
* {
  -webkit-tap-highlight-color:transparent !important;
}
button,
button:focus,
button:active,
button:hover {
  -webkit-tap-highlight-color:transparent !important;
  outline:none !important;
}
.bj-burger,  .bj-burger:focus,  .bj-burger:active,
.bja-burger, .bja-burger:focus, .bja-burger:active,
.bjc-burger, .bjc-burger:focus, .bjc-burger:active,
.bjp-burger, .bjp-burger:focus, .bjp-burger:active,
.bjt-burger, .bjt-burger:focus, .bjt-burger:active,
.bjs-burger, .bjs-burger:focus, .bjs-burger:active,
.bjw-burger, .bjw-burger:focus, .bjw-burger:active,
.bh-burger,  .bh-burger:focus,  .bh-burger:active,
.bjp2-burger, .bjp2-burger:focus, .bjp2-burger:active,
.bjt2-burger, .bjt2-burger:focus, .bjt2-burger:active {
  -webkit-tap-highlight-color:transparent !important;
  outline:none !important;
  background:none !important;
  background-color:transparent !important;
}
.bjc-burger,
.bjc-burger:hover,
.bjc-burger:focus,
.bjc-burger:active,
.bjc-mobile-menu,
.bjc-mobile-menu a,
.bjc-mobile-menu a:hover,
.bjc-mobile-menu a:focus {
  background:#0d1e35 !important;
  -webkit-tap-highlight-color:transparent !important;
  outline:none !important;
}

/* ────────────────────────────────────────────────────────────
   7. VISITED LINKS
   ──────────────────────────────────────────────────────────── */
.bh-nav-sq,
.bh-nav-sq:link,
.bh-nav-sq:visited,
.bh-nav-sq:active,
.bh-nav-sq *,
.bh-nav-sq:visited * {
  color:#aec6d4 !important;
  fill:none !important;
  text-decoration:none !important;
}
.bh-nav-right a,
.bh-nav-right a:link,
.bh-nav-right a:visited,
.bh-nav-right a:active,
.bh-nav-right a *,
.bh-nav-right a:visited * {
  color:#aec6d4 !important;
  fill:none !important;
  text-decoration:none !important;
}
.bh-nav-btn,
.bh-nav-btn:visited,
.bh-nav-btn:visited *,
.bh-nav-btn span,
.bh-nav-btn:visited span {
  color:#0a1628 !important;
}
.bjp2-nav-sq,
.bjp2-nav-sq:link,
.bjp2-nav-sq:visited,
.bjp2-nav-sq:active,
.bjp2-nav-sq *,
.bjp2-nav-sq:visited * {
  color:#aec6d4 !important;
  fill:none !important;
  text-decoration:none !important;
}
.bjp2-nav-right a,
.bjp2-nav-right a:link,
.bjp2-nav-right a:visited,
.bjp2-nav-right a:active,
.bjp2-nav-right a *,
.bjp2-nav-right a:visited * {
  color:#aec6d4 !important;
  fill:none !important;
  text-decoration:none !important;
}
.bjp2-nav-btn,
.bjp2-nav-btn:visited,
.bjp2-nav-btn:visited *,
.bjp2-nav-btn span,
.bjp2-nav-btn:visited span {
  color:#0a1628 !important;
}
.bjt2-nav-sq,
.bjt2-nav-sq:link,
.bjt2-nav-sq:visited,
.bjt2-nav-sq:active,
.bjt2-nav-sq *,
.bjt2-nav-sq:visited * {
  color:#aec6d4 !important;
  fill:none !important;
  text-decoration:none !important;
}
.bjt2-nav-right a,
.bjt2-nav-right a:link,
.bjt2-nav-right a:visited,
.bjt2-nav-right a:active,
.bjt2-nav-right a *,
.bjt2-nav-right a:visited * {
  color:#aec6d4 !important;
  fill:none !important;
  text-decoration:none !important;
}
.bjt2-nav-btn,
.bjt2-nav-btn:visited,
.bjt2-nav-btn:visited *,
.bjt2-nav-btn span,
.bjt2-nav-btn:visited span {
  color:#0a1628 !important;
}
.bjc-contact-link {
  cursor:pointer !important;
  -webkit-tap-highlight-color:transparent !important;
}
.bjc-contact-link:visited {
  color:#eef2f7 !important;
}

/* ────────────────────────────────────────────────────────────
   8. AUTOFILL
   ──────────────────────────────────────────────────────────── */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow:0 0 0 1000px #0a1628 inset !important;
  -webkit-text-fill-color:#eef2f7 !important;
  caret-color:#eef2f7 !important;
  border-color:rgba(0,200,212,0.3) !important;
  transition:background-color 5000s ease-in-out 0s !important;
}

/* ────────────────────────────────────────────────────────────
   9. WPFORMS
   ──────────────────────────────────────────────────────────── */
.wpforms-confirmation-container,
.wpforms-confirmation-container-full,
.wpforms-confirmation-container *,
div[class*="wpforms-confirmation"] {
  background:#0d1e35 !important;
  background-color:#0d1e35 !important;
  color:#eef2f7 !important;
  border:1px solid rgba(0,200,212,0.3) !important;
  border-radius:6px !important;
  padding:24px !important;
}
.wpforms-submit-spinner,
.wpforms-spinner,
.wpforms-loader,
[class*="wpforms-spinner"],
[class*="wpforms-loader"] {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
.bjc-form-wrap .wpforms-form select {
  appearance:auto !important;
  -webkit-appearance:auto !important;
  color:#eef2f7 !important;
  background:#0a1628 !important;
  border:1px solid rgba(0,200,212,0.3) !important;
  padding:14px 16px !important;
  border-radius:4px !important;
  font-size:16px !important;
  width:100% !important;
  cursor:pointer !important;
}
.bjc-form-wrap .wpforms-form select option {
  background:#0a1628 !important;
  color:#eef2f7 !important;
}

/* ────────────────────────────────────────────────────────────
   10. ADMIN BAR FIX
   ──────────────────────────────────────────────────────────── */
body.admin-bar .bh-nav {
  top:32px !important;
}
body.admin-bar .bh-mobile-menu {
  top:calc(110px + 32px) !important;
}
body:not(.admin-bar) .bh-nav {
  top:0 !important;
}
body:not(.admin-bar) .bh-mobile-menu {
  top:110px !important;
}
@media (max-width:782px) {
  body.admin-bar .bh-nav {
    top:46px !important;
  }
  body.admin-bar .bh-mobile-menu {
    top:calc(64px + 46px) !important;
  }
  body:not(.admin-bar) .bh-mobile-menu {
    top:64px !important;
  }
}

/* ────────────────────────────────────────────────────────────
   11. HOME PAGE OLD SQUARES
   ──────────────────────────────────────────────────────────── */
@media (min-width:1025px) {
  .bj-squares {
    height:16vh;
    margin-top:0;
  }
  .bj-sq {
    gap:8px;
    padding:12px 10px;
  }
  .bj-sq-icon {
    width:44px;height:44px;
    border-width:3px;
  }
  .bj-sq-dot { width:14px;height:14px; }
  .bj-sq-label { font-size:13px;letter-spacing:1px; }
}

/* ────────────────────────────────────────────────────────────
   12. FOOTER SOCIAL — мобильный
   ──────────────────────────────────────────────────────────── */
@media (max-width:767px) {
  .bjc-footer-social,
  .bja-footer-social,
  .bjs-footer-social,
  .bjp-footer-social,
  .bjt-footer-social,
  .bjw-footer-social,
  .bh-footer-social {
    display:none !important;
  }
}

/* ────────────────────────────────────────────────────────────
   13. COVERAGE — две колонки, правая карточка видна
   ──────────────────────────────────────────────────────────── */
.bh-cov-wrap {
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:80px !important;
  align-items:center !important;
  flex-direction:unset !important;
  max-width:unset !important;
}
.bh-cities {
  display:none !important;
}
.bh-cov-visual {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:20px !important;
  text-align:center !important;
  background:rgba(0,200,212,0.04) !important;
  border:1px solid rgba(0,200,212,0.15) !important;
  border-radius:12px !important;
  padding:48px !important;
}
.bh-cov-tag {
  font-size:11px !important;
  letter-spacing:4px !important;
  text-transform:uppercase !important;
  color:#00c8d4 !important;
  font-weight:700 !important;
}
.bh-cov-title {
  font-family:'Rajdhani',sans-serif !important;
  font-size:44px !important;
  font-weight:700 !important;
  color:#eef2f7 !important;
  line-height:1.15 !important;
}
.bh-cov-title em {
  color:#00c8d4 !important;
  font-style:normal !important;
}
.bh-cov-desc {
  font-size:15px !important;
  color:#aec6d4 !important;
  line-height:1.7 !important;
  max-width:280px !important;
}
.bh-cov-btns {
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
  margin-top:8px !important;
}
.bh-cov-btn1 {
  background:#00c8d4 !important;
  color:#0a1628 !important;
  border:2px solid #00c8d4 !important;
  font-weight:800 !important;
  font-size:14px !important;
  padding:14px 24px !important;
  letter-spacing:2px !important;
  text-transform:uppercase !important;
  border-radius:4px !important;
  display:block !important;
  text-align:center !important;
}
.bh-cov-btn1:hover { background:#00a8b3 !important; }
.bh-cov-btn2 {
  color:#aec6d4 !important;
  border:2px solid rgba(0,200,212,0.3) !important;
  font-weight:700 !important;
  font-size:14px !important;
  padding:14px 24px !important;
  letter-spacing:2px !important;
  text-transform:uppercase !important;
  border-radius:4px !important;
  display:block !important;
  text-align:center !important;
}
.bh-cov-btn2:hover {
  border-color:#00c8d4 !important;
  color:#00c8d4 !important;
}
@media (max-width:1024px) {
  .bh-cov-wrap {
    grid-template-columns:1fr !important;
    gap:48px !important;
  }
}
@media (max-width:767px) {
  .bh-cov-wrap {
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  .bh-cov-title { font-size:32px !important; }
  .bh-cov-visual { padding:32px 24px !important; }
}

/* ────────────────────────────────────────────────────────────
   14. OUR WORKS — сетка 3×2
   ──────────────────────────────────────────────────────────── */
.bh-works-grid {
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:16px !important;
  margin-top:60px !important;
}
.bh-work-ph {
  aspect-ratio:4/3 !important;
  height:unset !important;
  background:rgba(0,200,212,0.04) !important;
  border:1px dashed rgba(0,200,212,0.25) !important;
  border-radius:8px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:16px !important;
  padding:32px !important;
  text-align:center !important;
}
.bh-work-ph svg {
  width:36px !important;
  height:36px !important;
  stroke:rgba(0,200,212,0.35) !important;
  fill:none !important;
  stroke-width:1.2 !important;
}
.bh-work-ph span {
  font-size:13px !important;
  color:#6b7f96 !important;
  font-weight:600 !important;
  letter-spacing:1px !important;
}
@media (max-width:1024px) {
  .bh-works-grid {
    grid-template-columns:repeat(2,1fr) !important;
  }
}
@media (max-width:767px) {
  .bh-works-grid {
    grid-template-columns:1fr !important;
  }
}

/* ══════════════════════════════════
   FONT CONSISTENCY FIX — April 2026
   All body text unified to 16px
══════════════════════════════════ */

/* Body text — all blocks unified */
.bh-srv-card p,
.bh-step p,
.bh-sol-card p,
.bh-faq-a p {
  font-size: 16px !important;
  line-height: 1.8 !important;
  font-weight: 400 !important;
}

/* Services list items */
.bh-srv-list li {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* Solution card H3 — unified with How It Works */
.bh-sol-card h3 {
  font-size: 26px !important;
  font-weight: 700 !important;
}

/* Mobile — keep consistency */
@media (max-width: 767px) {
  .bh-srv-card p,
  .bh-step p,
  .bh-sol-card p,
  .bh-faq-a p {
    font-size: 15px !important;
  }
}

/* ══════════════════════════════════
   MOBILE FIX — Steps & Services
   April 2026
══════════════════════════════════ */

/* How It Works — уменьшаем большие цифры 01 02 03 */
@media (max-width: 767px) {
  .bh-step-num {
    font-size: 36px !important;
    margin-bottom: 12px !important;
  }
  .bh-step {
    padding: 24px 20px !important;
  }
  .bh-step h3 {
    font-size: 22px !important;
    margin-bottom: 8px !important;
  }
  .bh-step p {
    font-size: 14px !important;
  }

  /* Services — компактнее карточки */
  .bh-srv-card {
    padding: 24px 20px !important;
  }
  .bh-srv-ico {
    width: 44px !important;
    height: 44px !important;
    margin-bottom: 16px !important;
  }
  .bh-srv-ico svg {
    width: 20px !important;
    height: 20px !important;
  }
  .bh-srv-card h3 {
    font-size: 22px !important;
    margin-bottom: 8px !important;
  }
  .bh-srv-card p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  /* Section padding — меньше пустого пространства */
  .bh-section {
    padding: 40px 20px !important;
  }

  /* Stats — компактнее */
  .bh-stat {
    padding: 28px 10px !important;
  }
  .bh-stat-num {
    font-size: 38px !important;
  }

  /* Sol cards — компактнее */
  .bh-sol-card {
    padding: 20px !important;
  }
}


  70%  { box-shadow:0 0 0 14px rgba(0,200,212,0); }
  100% { box-shadow:0 0 0 0 rgba(0,200,212,0); }
}



.bh-work-item:focus-visible { outline: none !important; box-shadow: none !important; }
/* Kill yellow on work item buttons */
.bh-work-item,
.bh-work-item:hover,
.bh-work-item:focus,
.bh-work-item:active,
.bh-work-item:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
  -webkit-box-shadow: none !important;
}
/* Remove section border lines + no yellow outline */
.bh-section, .bh-section.alt, .bh-stats, .bh-cta-banner { border-bottom: none !important; border-top: none !important; }
.bh-work-item, .bh-work-item:hover, .bh-work-item:focus, .bh-work-item:active, .bh-work-item:focus-visible { outline: none !important; box-shadow: none !important; border: none !important; }
/* Chat button centered */
#bh-chat-btn { display:flex !important; align-items:center !important; justify-content:center !important; padding:0 !important; line-height:1 !important; }
#bh-chat-btn svg { display:block !important; margin:0 !important; }