html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
.site-logo img { width: 230px; height: auto; }
.mobile-logo img, .logos img { width: 215px; height: auto; }
.footer2-section-area .logo-content > img { width: 245px; height: auto; }
.preloader #loading-icon img { width: 68px; height: 68px; }
.mobile-nav-icon, .menu-close { border: 0; background: transparent; padding: 0; color: inherit; }
.hero2-section-area { scroll-margin-top: 90px; }
#about, #services, #electrical-services, #portfolio, #reviews, #contact, #faq, .service-detail-card, #service-area { scroll-margin-top: 100px; }
.casestudy-section-area .case-author-boxarea .imges { height: 480px; }
.casestudy-section-area .case-author-boxarea .imges img { width: 100%; height: 100%; object-fit: cover; }
.hero2-section-area .hero2-images-area .images img { height: 260px; object-fit: cover; }
.about2-section-area .about-images-area .img1 img { height: 520px; object-fit: cover; }
.service2-section-area .service2-author-boxarea .images img { height: 260px; object-fit: cover; }
.testimonial2-section-area .teimonial-slider-nav-area .testimonial-slider-img img { width: 100%; height: 430px; object-fit: cover; border-radius: 4px; }
.faq2-section-area .faq-images img { height: 560px; object-fit: cover; }
.contact-header-area .text span { color: #fff; font-size: 16px; line-height: 24px; display: inline-block; }
.contact-header-area .text a { overflow-wrap: anywhere; }
.contact-submit-boxarea .input-area1 label { margin: 0 0 0 8px; color: #e7e9eb; cursor: pointer; }
.form-status { margin-top: 18px; color: #155724; font-weight: 600; line-height: 1.5; }
.footer-cta { margin-top: 28px; }
.footer-location { display: flex; align-items: flex-start; color: #fff; gap: 10px; }
.footer-location .icons { flex: 0 0 auto; }
.footer2-section-area .service-heading.contact a { overflow-wrap: anywhere; }
.service2-author-boxarea .images img { width: 100%; }
.faq2-section-area .accordion-body { line-height: 1.7; }
/* Images carry width/height for CLS; zero-specificity so template heights still win */
:where(img[width][height]) { height: auto; }
/* Electrical services detail block */
.service-details-area { background: #fff; }
.service-details-grid { margin-top: 12px; }
.service-detail-card { height: calc(100% - 24px); margin-bottom: 24px; padding: 28px 26px; background: var(--ztc-bg-bg-1); border-top: 4px solid var(--ztc-bg-bg-3); border-radius: 4px; }
.service-detail-card h3 { font-family: var(--ztc-family-font1); font-size: 22px; line-height: 30px; font-weight: 700; color: var(--ztc-text-text-5); margin-bottom: 12px; }
.service-detail-card p { font-size: 16px; line-height: 26px; color: var(--ztc-text-text-6); margin: 0; }
.service-area-box { margin-top: 16px; padding: 30px 32px; background: var(--ztc-bg-bg-4); border-radius: 4px; color: #fff; }
.service-area-box h3 { font-family: var(--ztc-family-font1); font-size: 24px; font-weight: 700; color: #fff; margin-bottom: 12px; }
.service-area-box p { color: #e7e9eb; font-size: 16px; line-height: 27px; margin: 0; }
.service-area-box a, .service-area-box strong { color: var(--ztc-bg-bg-3); }
@media (min-width: 768px) {
  .hero2-section-area .hero-header .counter-header-area { gap: 26px; }
  .hero2-section-area .hero-header .counter-header-area .counter-area { flex: 1 1 0; margin-right: 0; }
}
@media (max-width: 767px) {
  .hero2-section-area { padding-top: 120px; }
  .site-logo img, .mobile-logo img, .logos img { width: 190px; }
  .casestudy-section-area .case-author-boxarea .imges { height: 390px; }
  .testimonial2-section-area .teimonial-slider-nav-area .testimonial-slider-img img { height: 360px; }
  .hero2-section-area .hero2-images-area .images img { height: 330px; }
  .about2-section-area .about-images-area .img1 img, .faq2-section-area .faq-images img { height: 420px; }
  .hero-header .btn-area a { display: block; width: fit-content; margin-bottom: 12px; }
}
/* Counters and footer column titles were h2; same look, cleaner outline */
.hero2-section-area .hero-header .counter-header-area .counter-area .counter-value { font-family: var(--ztc-family-font1); font-size: var(--ztc-font-size-font-s32); line-height: var(--ztc-font-size-font-s32); color: var(--ztc-text-text-1); font-weight: var(--ztc-weight-bold); margin-bottom: 16px; }
.footer2-section-area .footer-logo-content .service-heading .footer-heading { font-family: var(--ztc-family-font1); font-weight: var(--ztc-weight-bold); color: var(--ztc-text-text-1); font-size: var(--ztc-font-size-font-s20); line-height: 1.3; text-transform: capitalize; margin-bottom: 4px; }
