/* ===== Core Colors & Header ===== */
.topbutton{ background:#034da2; color:#fff; }
.topbutton:hover{ background:#2EC4F1; color:#fff; }

header{ background:#034da2; }
.logo{ color:#fff; }

header .phone{ background:#2EC4F1; color:#fff; }

nav ul li a{ color:#fff; }
nav ul li:hover a,
nav ul li.active a{ background:#2EC4F1; color:#fff; }

nav ul li ul li a,
nav ul li:hover ul li a{ background:#034da2; color:#fff; }

nav ul li ul li a:hover,
nav ul li:hover ul li a:hover{ background:#2EC4F1; color:#fff; }

.mobtitle{ color:#fff; }

/* ===== Hero Banner ===== */
.banner{
  background:url(../images/bg-6.jpg) no-repeat center center;
  background-size:cover;
}

.banner .overlay{
  background:linear-gradient(to bottom, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.25) 100%);
}

.banner h1,
.banner h1 strong{ color:#2EC4F1; }

.banner h2,
.banner h3{ color:#fff; }

.banner .calloption{
  background:#2EC4F1;
  color:#fff;
  border-radius:10px;
}

.banner .calloption .borderside{
  border:3px solid #fff;
}

/* ===== Icons ===== */
.page .contentsection .items-wrap .item .icon{
  background:#034da2;
  color:#fff;
}
.page .contentsection .items-wrap .item:nth-child(2) .icon{
  background:#2EC4F1;
  color:#fff;
}

/* ===== Buttons ===== */
.button,
.cta-call{
  display:inline-block;
  background:#2EC4F1;
  color:#fff !important;
  padding:16px 28px;
  border-radius:6px;
  font-size:18px;
  font-weight:700;
  text-decoration:none;
  box-shadow:0 4px 12px rgba(0,0,0,0.25);
  transition:transform .15s ease, box-shadow .15s ease;
}

.button:hover,
.cta-call:hover{
  background:#034da2;
  transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(0,0,0,0.35);
}

/* ===== Services List (Single Source of Truth) ===== */
.services-list,
.details ul{
  list-style:none;
  padding-left:0;
}

.services-list li,
.details ul li{
  position:relative;
  padding-left:26px;
  margin-bottom:10px;
  color:#333;
}

/* Remove template bullets/icons */
.services-list li::before,
.services-list li::after,
.details ul li::after{
  content:none !important;
  display:none !important;
}

/* Add single clean tick */
.services-list li::before,
.details ul li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:2px;
  color:#2EC4F1;
  font-weight:700;
  font-size:18px;
  line-height:1;
}

/* ===== Footer ===== */
footer{ background:#e7e7e7; }

footer .widget .footerlogo{ color:rgba(0,0,0,0.5); }
footer .widget .footerlogo img{ opacity:.5; }

footer .widget ul li a,
footer .widget p{ color:rgba(0,0,0,0.5); }

footer .widget ul li a:hover{ color:#2EC4F1; }

footer .footerbottom{ border-top:1px solid rgba(0,0,0,0.2); }

footer .footerbottom .copyright{
  color:rgba(0,0,0,0.5);
  text-align:center;
}

/* Footer links */
.footer-links{
  margin-top:10px;
  font-size:14px;
}
.footer-links a{
  color:rgba(0,0,0,0.6);
  text-decoration:none;
}
.footer-links a:hover{ color:#2EC4F1; }

/* ===== Sticky Call Button (Mobile Only) ===== */
.sticky-call{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  background:#2EC4F1;
  text-align:center;
  z-index:9999;
  padding:12px 0;
  box-shadow:0 -2px 10px rgba(0,0,0,0.3);
}

.sticky-call a{
  color:#fff;
  font-size:20px;
  font-weight:700;
  text-decoration:none;
}

@media (min-width:768px){
  .sticky-call{ display:none; }
}

/* ===== Hero Disclaimer ===== */
.hero-disclaimer{
  text-align:center;
  color:#eaf7ff;
  margin-top:26px;
  font-size:15px;
  line-height:1.5;
  letter-spacing:.2px;
}

/* ===== Mobile Footer Cleanup ===== */
@media (max-width:768px){
  footer .widgets-wrap,
  footer .widget{ text-align:center; }

  footer .widget{ margin-bottom:16px; }

  footer .widget p{ margin-bottom:6px; }

  .footer-links{ margin-top:10px; }

  .footer-links a{ display:inline-block; margin:0 6px; }
}

/* ===== KILL ALL TEMPLATE HEADING LINES (GLOBAL) ===== */
h1::after,
h2::after,
h3::after,
h4::after,
.page h1::after,
.page h2::after,
.page h3::after,
.contentsection h2::after,
.contentsection-3 h2::after,
.details h2::after {
  display: none !important;
  content: none !important;
  border: none !important;
  height: 0 !important;
}

/* Hard kill any remaining theme bullets/icons */
.contentsection-3 ul li::before,
.contentsection-3 ul li::after {
  content: none !important;
  display: none !important;
}

/* ===== iOS Layout Stability Fix ===== */
html, body {
  width: 100%;
  overflow-x: hidden;
}

img {
  max-width: 100%;
  height: auto;
}

.container,
.mobilewrap,
.page,
.contentsection,
.contentsection-3 {
  max-width: 100% !important;
  overflow-x: hidden;
}

.contentsection-3 .details h2 {
  text-align: center !important;
}

.sticky-call a {
  font-family: Arial, Helvetica, sans-serif !important;
  letter-spacing: 0.3px;
}