/* Home page responsive layout; loaded after page-specific styles. */
.home-page .slider-section .hero-copy { display: none; }
.home-page .slider-section .slider-2 .slider-item .slider-content-wrap {
  min-height: 650px;
  padding: 110px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-page .slider-section .slider-content-wrap .section-heading { width: 100%; text-align: center; }
.home-page .slider-content,.home-page .slider-content-wrap,.home-page .hero-copy,.home-page .home-intro-grid > *,.home-page .psapl-why-layout > * { min-width: 0; }
.home-page .slider-section .section-title .banner-line,.home-page .slider-section .section-title .banner-line-accent { white-space: normal; overflow-wrap: normal; }
.home-page .slider-section .slider-2 .slider-item .slider-content-wrap .section-heading .section-title { font-size: clamp(28px,3.8vw,58px) !important; line-height: 1.15 !important; }
.home-page .slider-section .slider-item { height: auto; min-height: 0; }
.home-page .slider-section .slider-content { width: 100%; max-width: 1150px; margin: auto; }
.home-page .hero-copy { max-width: 900px; margin-left: auto; margin-right: auto; }
.home-page .hero-disciplines,.home-page .hero-experience,.home-page .banner-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.home-page .banner-actions .tl-primary-btn { min-height: 48px; }
.home-page .service-section-2 .service-carousel .swiper-slide:nth-child(even) .service-item-2 { padding-top: 0; }
.home-page .service-section-2 .service-carousel .swiper-wrapper { align-items: stretch; }
.home-page .service-carousel .swiper-slide { height: auto; }
.home-page .service-content .title { font-size: clamp(20px,1.7vw,26px); line-height: 1.35; }
.home-page .psapl-why-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 45px; align-items: center; }
.home-page .psapl-faq-item summary > span:nth-child(2) { min-width: 0; overflow-wrap: anywhere; }
.home-page .home-stats .counter-item { text-align: center; }
.home-page .home-stats .counter-item .sub-title { font-size: 18px; line-height: 1.4; }

@media(min-width:993px) and (max-width:1399px) {
  .home-page .header-contact { display: none !important; }
  .home-page .header .primary-header-inner .header-left-wrap { column-gap: 20px; }
  .home-page .header .header-logo img { max-width: 135px; }
  .home-page .header .header-menu-wrap ul li { margin-right: 14px; }
  .home-page .header .header-menu-wrap ul li a { font-size: 13px; }
  .home-page .header .header-btn { padding: 16px 20px; white-space: nowrap; }
}
@media(max-width:992px) {
  .home-page .slider-section .slider-2 .slider-item .slider-content-wrap { padding: 100px 0; }
  .home-page .home-intro-grid { row-gap: 26px; }
  .home-page .home-intro-grid .about-content-left .about-counter-wrap { grid-template-columns: minmax(0,.7fr) minmax(0,1fr); gap: 28px; max-width: none; }
  .home-page .home-intro-grid .about-content-left .about-counter-wrap .counter-img { max-width: none; width: 100%; height: 320px; }
  .home-page .home-intro-grid .home-intro-description { margin-top: 0; }
  .home-page .psapl-why-layout { grid-template-columns: 1fr; gap: 28px; }
  .home-page .psapl-why-photo > img { display: block; height: 360px; }
  .home-page .about-section-2,.home-page .service-section-2,.home-page .psapl-why,.home-page .home-stats { padding-top: 50px; padding-bottom: 50px; }
}
@media(max-width:767px) {
  .home-page section > .container { padding-left: 20px; padding-right: 20px; }
  .home-page .slider-section .slider-2 .slider-item .slider-content-wrap { min-height: 700px; padding: 100px 0; }
  .home-page .slider-section .section-heading .sub-heading { max-width: 100%; font-size: 10px; letter-spacing: .7px; }
  .home-page .slider-section .slider-2 .slider-item .slider-content-wrap .section-heading .section-title { font-size: clamp(26px,5.6vw,38px) !important; }
  .home-page .hero-copy .hero-lead { font-size: 15px; line-height: 1.7; }
  .home-page .hero-copy .hero-detail { font-size: 13px; line-height: 1.7; }
  .home-page .hero-experience { gap: 8px; }
  .home-page .banner-actions { gap: 12px; }
  .home-page .banner-actions .tl-primary-btn { padding: 14px 18px; font-size: 13px; }
  .home-page .slider-navigation { bottom: 14px; }
  .home-page .home-intro-grid .about-content-right .about-img-1 img { height: auto; max-height: 380px; object-fit: contain; }
  .home-page .psapl-faq-item summary { font-size: 19px; gap: 12px; padding: 20px 10px; }
  .home-page .psapl-faq-answer { padding: 0 16px 20px 40px; }
  .home-page .psapl-faq-answer p { font-size: 15px; line-height: 1.75; }
  .home-page .home-stats .row > div { width: 50%; }
  .home-page .home-stats .counter-item .title { font-size: 46px; }
  .home-page .home-stats .counter-item .sub-title { font-size: 15px; }
}
@media(max-width:480px) {
  .home-page .banner-actions { flex-direction: column; }
  .home-page .banner-actions .tl-primary-btn { width: 100%; max-width: 300px; justify-content: space-between; }
  .home-page .home-intro-grid .about-content-left .about-counter-wrap { grid-template-columns: 1fr; gap: 20px; }
  .home-page .home-intro-grid .about-content-left .about-counter-wrap .counter-img { height: auto; }
  .home-page .home-intro-grid .counter-img img { display: block; width: 100%; height: auto; }
  .home-page .psapl-why-photo > img { height: 280px; }
  .home-page .hero-disciplines { gap: 6px; }
  .home-page .hero-disciplines span { font-size: 10px; padding: 4px 7px; }
}


@media(max-width:767px) {
  .home-page .service-section-2 > .container > .section-heading { padding-bottom: 24px; }
}

@media(max-width:767px) {
  .home-page .psapl-why > .container > .section-heading { padding-bottom: 24px; }
}

/* Restore the staggered expertise images on larger screens. */
@media(min-width:768px) {
  .home-page .service-section-2 .service-carousel .swiper-wrapper { align-items: flex-start; }
  .home-page .service-section-2 .service-carousel .swiper-slide:nth-child(even) .service-item-2 { padding-top: 70px; }
}

/* Introduction: wider full images with a tighter gap. */
.home-page .home-intro-grid .about-content-left .about-counter-wrap .counter-img,
.home-page .home-intro-grid .about-content-right .about-img-1 { height: auto; overflow: hidden; border-radius: 24px; max-width: none; }
.home-page .home-intro-grid .about-content-left .about-counter-wrap .counter-img img,
.home-page .home-intro-grid .about-content-right .about-img-1 img { display: block; width: 100%; height: auto; max-height: none; object-fit: contain; border-radius: 24px; }
@media(min-width:993px) {
  .home-page .home-intro-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1fr) minmax(0,1fr); gap: 20px; align-items: end; }
  .home-page .home-intro-grid > .col-lg-8 { grid-column: 1 / 3; }
  .home-page .home-intro-grid > .col-lg-4 { grid-column: 3; }
  .home-page .home-intro-grid .about-counter-wrap { grid-template-columns: minmax(0,.85fr) minmax(0,1fr); gap: 20px; }
  .home-page .home-intro-grid .home-intro-description { grid-column: 1 / -1; }
}

/* Match the supplied introduction layout on desktop. */
@media(min-width:993px) {
  .home-page .home-intro-grid { grid-template-columns: minmax(0,1fr) minmax(0,350px) minmax(0,1fr); gap: 28px; align-items: end; }
  .home-page .home-intro-grid .about-counter-wrap { grid-template-columns: minmax(0,1fr) 350px; gap: 28px; align-items: end; }
  .home-page .home-intro-grid .about-content-left .about-counter-wrap .counter-img { height: 320px; }
  .home-page .home-intro-grid .about-content-left .about-counter-wrap .counter-img img { width: 100%; height: 100%; object-fit: cover; }
  .home-page .home-intro-grid .about-content-right .about-img-1 img { width: 100%; height: 420px; object-fit: cover; }
}

/* Increase only the desktop introduction image widths. */
@media(min-width:1200px) {
  .home-page .home-intro-grid { grid-template-columns: minmax(0,.8fr) minmax(0,400px) minmax(0,1.1fr); }
  .home-page .home-intro-grid .about-counter-wrap { grid-template-columns: minmax(0,1fr) 400px; }
}
