/* Responsive CSS Document */

/* Header logo baseline — height-based so wordmark stays legible across breakpoints */
.theme-main-menu .logo img {height: 50px; width: 100%; max-width: none; object-fit: contain;}

/* Hero banner — fit within the viewport on first load across breakpoints.
   The subtracted value matches the corresponding .header-space-fix margin. */
.hero-banner-one {
  min-height: calc(100vh - 150px);
  min-height: calc(100svh - 150px);
}
.hero-banner-one.header-space-fix {
  padding-top: 54px !important;
  padding-bottom: 54px !important;
}
.hero-banner-one .hero-heading {
  font-size: clamp(54px, 5.6vw, 88px);
  line-height: 1.05em;
  margin: 24px 0 20px;
}

.hero-banner-one .operation-support-icons ul {gap: 8px;}
.hero-banner-one .operation-support-icons li,
.hero-banner-one .operation-support-icons li:last-child {
  width: 54px;
  height: 54px;
  margin-right: 0;
  border-radius: 50%;
  background: #fff;
  color: #0B2A5B;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.16);
}
.hero-banner-one .operation-support-icons p {padding-left: 18px;}

.project-details .project-image {
  border-radius: 8px;
  object-fit: cover;
  background: #e8eef0;
}
.project-inner-banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.project-inner-banner .inner-page-title {
  max-width: 860px;
  font-size: clamp(52px, 6vw, 90px);
  line-height: 1.05em;
}
.about-inner-banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.service-inner-banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.tracking-inner-banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.contact-inner-banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.project-inner-banner:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 42, 91, 0.1), rgba(11, 42, 91, 0.45));
  z-index: -1;
}
.about-inner-banner:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 42, 91, 0.06), rgba(11, 42, 91, 0.5));
  z-index: -1;
}
.service-inner-banner:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 42, 91, 0.08), rgba(11, 42, 91, 0.55));
  z-index: -1;
}
.tracking-inner-banner:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 42, 91, 0.08), rgba(11, 42, 91, 0.55));
  z-index: -1;
}
.contact-inner-banner:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 42, 91, 0.08), rgba(11, 42, 91, 0.55));
  z-index: -1;
}
.contact-inner-banner .inner-page-title {
  max-width: 760px;
  font-size: clamp(48px, 5.6vw, 88px);
  line-height: 1.05em;
}
.tracking-inner-banner .inner-page-title {
  max-width: 760px;
  font-size: clamp(48px, 5.6vw, 88px);
  line-height: 1.05em;
}
.tracking-panel {
  max-width: 880px;
}
.tracking-form input,
.tracking-form .nice-select {
  width: 100%;
  min-height: 66px;
}
.tracking-form .nice-select {
  display: flex;
  align-items: center;
}
.tracking-form .btn-one {
  min-height: 60px;
}
.tracking-instruction li {
  padding-left: 34px;
}
.tracking-widget {
  border-radius: 8px;
  background: #ebf0f1 !important;
  border: 1px solid rgba(11, 42, 91, 0.08);
}
.tracking-widget-primary {
  background: #0B2A5B !important;
}
.tracking-widget-primary h6,
.tracking-widget-primary p {
  color: #fff;
}
.tracking-widget-primary a {
  background: #fff;
  color: #0B2A5B;
}
.contact-info-panel .col-wrapper {
  border-radius: 8px;
}
.contact-us .contact-address-section .col-wrapper .info ul li a {
  overflow-wrap: anywhere;
}
.contact-request-intro {
  min-height: 100%;
}
.contact-form-image {
  width: min(100%, 420px);
  aspect-ratio: 1.2;
  object-fit: cover;
  border-radius: 8px;
  margin-top: 32px;
}
.contact-service-select {
  width: 100%;
  height: 60px;
  border: 1px solid #e4e4e4;
  border-radius: 5px;
  font-size: 15px;
  padding: 0 25px;
  color: #6e797b;
  background: #fff;
}
.contact-service-select:focus {
  border-color: #1F5FAF;
}
.contact-us .contact-address-section .contact-map-banner {
  position: relative;
  border-radius: 8px;
  min-height: 420px;
  box-shadow: 0 20px 50px rgba(11, 42, 91, 0.12);
}
.contact-us .contact-address-section .gmap_canvas,
.contact-us .contact-address-section .gmap_iframe {
  display: block;
  min-height: 420px;
}
.contact-map-link {
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 2;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border-radius: 4px;
  background: #0B2A5B;
  color: #fff;
  font-weight: 700;
  box-shadow: 0 12px 24px rgba(11, 42, 91, 0.22);
}
.contact-map-link:hover {
  background: #1F5FAF;
  color: #fff;
}
.site-footer.bg-two {
  background-position: center bottom;
}
.site-footer.bg-two.no-footer-cta {
  padding-top: 95px;
  margin-top: 0;
}
.site-footer.bg-two.no-footer-cta .footer-main {
  padding-top: 0 !important;
}
.site-footer .footer-cta .bg-wrapper {
  border-radius: 8px;
}
.site-footer .footer-main {
  padding-bottom: 12px;
}
.site-footer .footer-logo {
  display: inline-flex;
  max-width: 330px;
  width: 100%;
  padding: 12px 14px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 38px rgba(2, 8, 18, 0.18);
}
.site-footer .footer-logo img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.site-footer .footer-summary {
  max-width: 390px;
  margin: 22px 0 8px;
  color: rgba(255, 255, 255, 0.86);
  line-height: 1.65em;
}
.site-footer .footer-title {
  margin-bottom: 20px;
}
.site-footer .footer-nav-link li {
  margin-bottom: 9px;
  padding: 0;
  border: 0;
}
.site-footer .footer-nav-link li a {
  color: rgba(255, 255, 255, 0.88);
}
.site-footer .footer-nav-link li a:hover {
  color: #fff;
}
.site-footer .footer-action-list {
  display: grid;
  gap: 12px;
  margin-top: 22px;
}
.site-footer .footer-action-card {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 12px 14px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #fff;
  font-weight: 700;
}
.site-footer .footer-action-card i {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #1F5FAF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  font-size: 18px;
}
.site-footer .footer-action-card:hover {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}
.site-footer .footer-capabilities {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-bottom: 20px;
}
.site-footer .footer-capabilities span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.09);
  color: rgba(255, 255, 255, 0.9);
  font-size: 14px;
  font-weight: 600;
}
.site-footer .footer-capabilities i {
  color: #fff;
}
.site-footer .footer-intro .contact-info li {
  color: rgba(255, 255, 255, 0.88);
}
.site-footer .footer-contact-label {
  color: #fff;
  font-weight: 700;
}
.site-footer .shape_02 {
  animation: footerPlaneCruise 18s infinite ease-in-out;
  will-change: transform;
}
@keyframes footerPlaneCruise {
  0% { transform: translate3d(0, 0, 0) rotate(-1deg); }
  50% { transform: translate3d(-70px, -8px, 0) rotate(1deg); }
  100% { transform: translate3d(0, 0, 0) rotate(-1deg); }
}
.management-team-section {
  background: #f4f8fb;
}
.management-team-intro {
  max-width: 520px;
  color: #6e797b;
  line-height: 1.72em;
}
.management-card {
  height: 100%;
  margin-bottom: 30px;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(11, 42, 91, 0.1);
  border: 1px solid rgba(11, 42, 91, 0.08);
}
.management-photo {
  aspect-ratio: 4 / 4.7;
  background: #dfe8ef;
  overflow: hidden;
}
.management-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.management-info {
  padding: 22px 20px 24px;
}
.management-info h4 {
  font-size: 23px;
  line-height: 1.18em;
  margin-bottom: 6px;
}
.management-info span {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(31, 95, 175, 0.1);
  color: #1F5FAF;
  font-size: 14px;
  font-weight: 700;
}
.feature-block-one .media-bg-two .about-logo-badge {
  width: 138px;
  height: 138px;
  right: -15px;
  bottom: 50px;
  padding: 14px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 18px 42px rgba(11, 42, 91, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
}
.feature-block-one .media-bg-two .about-logo-badge img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
}
.service-card {
  overflow: hidden;
}
.service-card .media-bg {
  background-position: center;
}
.service-card .info-meta h4 {
  font-size: clamp(22px, 1.8vw, 30px);
  line-height: 1.18em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.service-card .info-meta p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.55em;
  min-height: 3.1em;
}
.service-card .btn-two {
  white-space: nowrap;
}
.service-detail-image {
  border-radius: 8px;
  max-height: 470px;
  object-fit: cover;
}
.service-main-media {
  width: 280px;
  height: 280px;
  object-fit: cover;
}
.service-sidebar {
  position: sticky;
  top: 120px;
}
.service-sidebar .emergency-banner .service-call {
  display: block;
  white-space: nowrap;
  font-size: clamp(26px, 2.5vw, 46px);
  line-height: 1.18em;
}
.service-sidebar .emergency-banner .service-email {
  display: block;
  color: #fff;
  overflow-wrap: anywhere;
  font-size: 18px;
  margin-top: 15px;
}
.project-card {
  border-radius: 8px;
  overflow: hidden;
  background-position: center;
}
.project-card:before {
  height: 58%;
  opacity: 0.92;
  background: linear-gradient(360deg, rgba(11, 42, 91, 0.92) 0%, rgba(11, 42, 91, 0) 100%);
}
.project-card .info {
  padding: 24px 20px 20px;
}
.project-card .info .tags {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.project-card .info h5 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.75em;
  max-width: 310px;
}
.project-card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  margin-top: 14px;
  border-radius: 4px;
  background: #fff;
  color: #0B2A5B;
  font-size: 14px;
  font-weight: 700;
}
.feature-block-one .media-bg-two .about-media-img {
  object-fit: cover;
}
.feature-block-one .media-bg-two .main-img.about-media-img {
  width: 100%;
  aspect-ratio: 0.82;
}
.project-details .project-image-lg {height: 460px;}
.project-details .project-image-md {height: 330px;}
.project-details .project-image-sm {height: 240px;}
.project-details .project-summary {font-size: 18px; line-height: 1.8em;}
.project-details .project-sidebar {position: sticky; top: 120px;}
.project-details .sidebar-one .info-list li {
  display: block;
  min-height: 0;
  padding: 22px 24px;
}
.project-details .sidebar-one .info-list li strong {
  display: block;
  font: inherit;
  color: #0B2A5B;
  white-space: normal;
  margin-bottom: 8px;
}
.project-details .sidebar-one .info-list li span {
  display: block;
  max-width: none;
  min-width: 0;
  text-align: left;
  margin-top: 0;
  line-height: 1.45em;
  overflow-wrap: anywhere;
}
.project-details .emergency-banner .project-email {
  display: block;
  color: #fff;
  font-size: 16px;
  margin-top: 8px;
  word-break: break-word;
}
.project-details .emergency-banner h4 {
  font-size: clamp(26px, 2vw, 34px);
  line-height: 1.16em;
  white-space: nowrap;
}
.project-details .emergency-banner .call {
  display: block;
  width: 100%;
  max-width: 100%;
  font-size: clamp(24px, 2.2vw, 32px);
  line-height: 1.18em;
  white-space: nowrap;
  overflow-wrap: normal;
  letter-spacing: 0;
}

@media (max-width: 991px) {
  .project-details .project-sidebar {position: static; top: auto;}
  .project-details .project-image-lg {height: 380px;}
}

@media (max-width: 575px) {
  .project-details .project-image-lg {height: 280px;}
  .project-details .project-image-md,
  .project-details .project-image-sm {height: 220px;}
  .project-details .sidebar-one .info-list li {
    padding: 20px;
  }
}

@media (min-width: 992px) {
  .container {padding-right: 0;padding-left: 0;}
}
/*(min-width: 992px)*/
@media (min-width: 1400px) {
  .container.xl {max-width: 1320px;}

}
@media (min-width: 1200px) {
  .container {max-width: 1170px;}
}
/*(min-width: 1400px)*/

/*Grid xl Start*/
@media (max-width: 1399px) {
  .feature-block-two .shape_03 {left: 0; top:0;}
}
/*(max-width: 1399px)*/

@media (min-width: 1200px) and (max-width: 1600px) {
  .header-space-fix {margin-top: 132px;}
  .hero-banner-one {min-height: calc(100vh - 132px);}
  .theme-main-menu .gap-one {padding-left: 30px; padding-right: 30px;}
  .theme-main-menu .logo img {height: 48px; width: auto; max-width: none;}
  .theme-main-menu .bottom-header:before {width: 160px;}
  .theme-main-menu .bottom-header:after {width: 170px;}
  .theme-main-menu.menu-style-one .navbar {margin-left: 4%;}
  .theme-main-menu .nav-item .nav-link {font-size: 18px; margin: 0 12px; padding: 30px 0;}
  .theme-main-menu .btn-one {font-size: 16px; padding: 0 20px; min-width: 150px;}
  .sidenavbtn {padding-left: 10px;}
  .theme-main-menu .support-btn .icon {width: 45px; height: 45px; padding: 10px;}
  .counter-box-one .main-count {font-size: 55px;}
  .counter-box-one p {font-size: 18px;}
  .project-block-one {height: 450px;}
  .project-section-one .section-title {font-size: 170px; bottom: 10%;}
  .project-section-one .slider-arrows {margin-top: 90px;}
  .feature-block-one .media-bg-two .img_01,
  .feature-block-one .media-bg-two .img_02 {left: -50px;}
  .feature-block-one .media-bg-two .bg-shape {left: -100px; max-width: 130%;}
  .hero-banner-three .hero-heading {font-size: 70px; max-width: 1000px;}
  .hero-banner-three .ribon-slider {font-size: 28px;}
  .inner-banner-one .line-wrapper {padding: 195px 0 165px;}
  .inner-banner-one h2 {font-size: 65px;}
  .project-block-one.version-two {height: 480px;}

}

/*Between Grid xl*/
@media (min-width: 1200px) and (max-width: 1399px) {
  .hero-banner-one .hero-heading,.hero-banner-two .hero-heading {font-size: 85px;}
  .title-one h2 {font-size: 55px;}
  .card-style-two .media-bg {height: 420px;}
  
}
/*(min-width: 1200px) and (max-width: 1399px)*/

/* *** Important *** Breakpoint */
@media (min-width: 992px) and (max-width: 1399px) {

  
}
/* (min-width: 992px) and (max-width: 1399px) */


/*Grid lg Start*/
@media (max-width: 1199px) {
  .title-one h2 {line-height: 1.15em;}
  .btn-one.xl {min-width: 200px; line-height: 60px;}
  .btn-three.xl {line-height: 60px; min-width: 180px;}
  .theme-main-menu .gap-one {padding-left: 12px; padding-right: 12px;}
  .theme-main-menu .nav-item .nav-link {font-size: 18px;}
  .theme-main-menu .logo img {height: 44px; width: auto; max-width: none;}
  .theme-main-menu .bottom-header:before {width: 115px;}
  .theme-main-menu .bottom-header:after {width: 145px;}
  .hero-banner-one .slogan {font-size: 15px; padding: 7px 6px;}
  .hero-banner-two .slogan {font-size: 15px; padding: 7px 15px;}
  .hero-banner-two .slogan span:before, .hero-banner-two .slogan span:after {top:3px;}
  .hero-banner-one .country-flags .flag,.hero-banner-three .country-flags .flag,
  .hero-banner-one .country-flags li:last-child,.hero-banner-three .country-flags li:last-child {width: 55px; height: 55px; font-size: 22px;}
  .hero-banner-one .operation-support-icons li,
  .hero-banner-one .operation-support-icons li:last-child {width: 54px; height: 54px; font-size: 19px;}
  .hero-banner-one .country-flags p,.hero-banner-three .country-flags p {font-size: 18px; padding-left: 15px;}
  .card-style-one {padding: 45px 20px 35px;}
  .card-style-one .icon {width: 110px; height: 110px;}
  .card-style-one h4 {font-size: 22px; margin-top: 25px;}
  .feature-block-one .experience-box {width: 150px;}
  .feature-block-one .experience-box .main-count {width: 70px; height: 70px; font-size: 32px;}
  .card-style-two .media-bg,.card-style-two.version-two .media-bg {height: 350px;}
  .card-style-two .info-meta {width: 300px; height: 300px;}
  .card-style-two .info-meta h4 {font-size: 20px;}
  .card-style-two .info-meta .icon {height: 55px;}
  .service-section-one .slider-arrows li,.project-section-one .slider-arrows li,
  .feedback-section-two .slider-arrows li {width: 55px; height: 55px;}
  .service-section-one .slider-arrows li img,.project-section-one .slider-arrows li img,
  .feedback-section-two .slider-arrows li img {width: 22px;}
  .service-section-one:before, .service-section-one:after {bottom: 107px;}
  .counter-box-one .main-count {font-size: 45px; margin-bottom: -2px;}
  .counter-box-one p {font-size: 16px; line-height: 25px;}
  .card-style-three .img-meta {width: 150px; height: 150px;}
  .card-style-three::before {width: 225px; height: 225px;}
  .card-style-three .text-meta .place {left: 10px;}
  .project-block-one {height: 380px;}
  .project-block-one .info h5 {font-size: 20px; font-weight: 600;}
  .project-card .info h5 {font-size: 19px;}
  .project-section-one .slider-arrows:before, .project-section-one .slider-arrows:after {bottom: 27px;}
  .blog-meta-one .img-meta {height: 240px;}
  .blog-meta-one .post-meta,.blog-meta-one .post-info,.blog-meta-one.version-two .post-meta,
  .blog-meta-one.version-two .post-info {padding-left: 15px;}
  .fancy-banner-one h2 {font-size: 35px;}
  .fancy-banner-one.style-one {padding: 50px 0 60px;}
  .hero-banner-two .hero-heading .shape {width: 150px; left: -5%;}
  .feature-block-one .media-bg-two .img_01,
  .feature-block-one .media-bg-two .img_02 {display: none;}
  .feature-block-one .media-bg-two .bg-shape {left: 0; max-width: 100%; bottom: 0;}
  .appointment-section-one .email-banner {padding: 25px 40px 25px 15px;}
  .appointment-section-one .email-banner .text {padding-left: 20px;}
  .appointment-section-one .email-banner .text h6 {font-size: 20px; margin-bottom: 4px;}
  .hero-banner-three p {font-size: 18px;}
  .hero-banner-three .ribon-slider {font-size: 24px;}
  .hero-banner-three .ribon-slider {padding: 18px 15px;}
  .feature-block-five {border-radius: 0 30px 30px 30px;}
  .feature-block-three.version-two,.feedback-section-two,.blog-section-two,
  .fancy-banner-one.style-two .bg-wrapper.round-border {border-radius: 30px;}
  .feature-block-one .media-bg-three {margin-left: 0;}
  .feedback-section-two .counter-bg-wrapper {padding: 30px 12px 60px; border-radius: 30px;}
  .feedback-section-two .slider-arrows li {margin: 0 5px;}
  .inner-banner-one .breadcrumb-content li {font-size: 18px;}
  .project-details h2 {font-size: 28px;}
  .project-details h3 {font-size: 24px;}
  .sidebar-one .info-list li .icon {width: 38px;}
  .card-style-four .info-meta {padding-left: 0;}
  .card-style-four {border-radius: 30px; padding: 30px 20px;}
  .card-style-four:before {border-radius: 30px;}
  .card-style-four .info-meta h4 {font-size: 22px;}
  .service-details-content h2 {font-size: 32px;}
  .service-details-content p {font-size: 18px; margin-bottom: 25px;}
  .service-details-content h4 {font-size: 22px;}
  .service-details-content .mark-bg {padding: 30px 20px 40px;}
  .service-details-content h3 {font-size: 28px;}
  .card-style-five {padding: 30px 20px;}
  .card-style-five h5,.service-details-content .pagination-footer .page-name {font-size: 20px;}
  .team-details .team-name {font-size: 28px; margin-bottom: 0;}
  .team-details .contact-info-bg {padding: 20px 15px;}
  .sidebar-two .sidebar-bg {padding: 20px;}
  .blog-meta-two .post-meta {padding: 30px 20px 10px;}
  .blog-meta-two .post-meta .post-author:before {left: -20px; width: 20px;}
  .blog-meta-two .post-meta .blog-title {font-size: 24px; margin-top: 15px;}
  .blog-meta-two .post-info {padding-left: 20px;}
  .blog-details h5 {font-size: 22px;}
  .blog-details .list-item li {font-size: 16px;}
  .main-footer.bg-two.space-fix {padding-top: 100px;}
  .contact-us .contact-address-section {padding-bottom: 70px; margin-bottom: 70px;}
  .contact-us h2 {font-size: 30px;}
  .contact-us .contact-address-section .col-wrapper {padding: 22px 20px; margin-top: 20px;}
  .faq-section .main-container .bg-wrapper {padding: 60px 12px;}
  .product-item-block .product-name {font-size: 20px; margin-bottom: 8px;}
  .product-details .product-details-info .product-name {font-size: 30px;}
  .product-details .product-review-tab .nav-tabs .nav-link {font-size: 16px; line-height: 45px;}
}
/*(max-width: 1199px)*/



/*Between Grid lg*/
@media (min-width: 992px) and (max-width: 1199px) {
  .header-space-fix {margin-top: 120px;}
  .hero-banner-one {min-height: calc(100vh - 120px); padding-top: 40px !important; padding-bottom: 40px !important;}
  .theme-main-menu.menu-style-one .navbar {margin-left: 4%;}
  .theme-main-menu .nav-item .nav-link {padding: 25px 0;}
  .hero-banner-one .hero-heading,.hero-banner-two .hero-heading {font-size: 65px;}
  .title-one h2 {font-size: 45px;}
  .title-one h3 {font-size: 40px;}
  .feature-block-three .bottom-line .line {width: calc(100% - 304px);}
  .project-section-one .section-title {font-size: 135px; bottom: 11%;}
  .project-section-one .slider-arrows {margin-top: 70px;}
  .feature-block-two .shape_09 {max-width: 38%;}
  .feedback-section-one .slider-bg-wrapper {padding-left: 40px;}
  .feedback-section-one .slider-bg-wrapper blockquote {font-size: 26px;}
  .feedback-section-one .slick-dots::before, .feedback-section-one .slick-dots:after {width: 85px;}
  .hero-banner-three .hero-heading {font-size: 62px; margin-bottom: 75px;}
  .inner-banner-one .line-wrapper {padding: 145px 0 115px;}
  .inner-banner-one h2 {font-size: 50px; margin-top: 5px;}
  .project-block-one.version-two .info {width: 270px; height: 270px;}
  .project-block-one.version-two {height: 400px;}
  .sidebar-one .p-lr {padding-left: 30px; padding-right: 30px;}
  .title-one h4 {font-size: 42px;}
  .contact-us .screen {max-width: 140%; left: -25%; bottom: 10%;}
  .faq-section .main-container .faq-header h2 {font-size: 35px;}
}
/*(min-width: 992px) and (max-width: 1199px)*/



/*Grid md Start*/
@media (max-width: 991px) {
  .theme-main-menu .bottom-header {padding-top: 8px; padding-bottom: 8px;}
  .theme-main-menu.menu-style-one .navbar {margin-left: 0;}
  .theme-main-menu .bottom-header:after {width: 100%; z-index: -2; border-top: 1px solid #206474;}
  #searchToggle .offcanvas-body form input {height: 55px; font-size: 18px;}
  #searchToggle .offcanvas-body {padding-bottom: 80px;}
  .offcanvas.sidebar-nav {width: 345px; padding: 30px 20px 20px;}
  .hero-banner-one .hero-heading, .hero-banner-two .hero-heading {font-size: 40px; line-height: 1.2em;}
  .title-one h2 {font-size: 40px;}
  .title-one h3 {font-size: 36px;}
  .title-one h4 {font-size: 34px;}
  .feature-block-one .media-bg {height: 400px; margin-top: 80px;}
  .feature-block-two .media-bg {height: 400px; max-width: 100%; margin: 40px auto 0;}
  .fancy-banner-one {text-align: center;}
  .fancy-banner-one h2 {margin-bottom: 25px;}
  .fancy-banner-one.style-one:before {left: -12%; transform: skew(25deg);}
  .main-footer.bg-one {padding-top: 80px;}
  .main-footer .footer-newsletter form input {height: 60px;}
  .main-footer .footer-newsletter form button {top:8px; bottom: 8px;}
  .main-footer .bottom-footer {padding: 20px 0;}
  .feature-block-four .shape_01 {max-width: 100%;}
  .feature-block-four .shape_03 {top:-120px;}
  .feature-block-two .shape_09,.feature-block-two .shape_06 {display: none;}
  .feedback-section-one .slider-bg-wrapper {padding: 30px 15px;}
  .feedback-section-one .slider-bg-wrapper .icon {width: 50px;}
  .feedback-section-one .slider-bg-wrapper blockquote {font-size: 22px; font-weight: 600; margin-bottom: 20px;}
  .feedback-section-one .slider-bg-wrapper h6 {font-size: 20px;}
  .fancy-banner-one.style-two .bg-wrapper {padding: 40px 20px;}
  .main-footer.bg-two {padding-top: 200px;}
  .hero-banner-three .shape_02 {top:20px; left: 20px;}
  .hero-banner-three {border-width: 10px;}
  .hero-banner-three .hero-heading {font-size: 40px; line-height: 1.2em; margin: 40px 0;}
  .feature-block-one .media-bg-three {margin: 40px 20px 50px 0; height: 350px;}
  .feedback-block-one h6 {font-size: 22px;}
  .inner-banner-one .line-wrapper {padding: 100px 0 80px;}
  .inner-banner-one h2 {font-size: 38px; margin-top: 10px;}
  .project-block-one.version-two {height: 380px;}
  .sidebar-one,.sidebar-two {margin-top: 60px;}
  .service-sidebar {position: static;}
  .service-card-listing .media-bg {height: 380px;}
  .service-card-listing .info-meta {min-height: 0;}
  .sidebar-one .border-30,.project-details .img-1 {border-radius: 15px;}
  .sidebar-one .info-list {padding: 25px 15px;}
  .sidebar-one .info-list li {font-size: 20px;}
  .sidebar-one .emergency-banner h4 {font-size: 24px;}
  .sidebar-one .emergency-banner .call {font-size: 26px;}
  .sidebar-one .p-lr {padding-left: 15px; padding-right: 15px;}
  .sidebar-one .category-list-one {padding-top: 30px; padding-bottom: 30px;}
  .team-details .team-image {height: 350px; margin-bottom: 40px;}
  .team-details .circle-shape {display: none;}
  .team-details .contact-info-bg {max-width: 100%;}
  .blog-details .author-info {padding: 30px 20px;}
  .contact-us .screen {position: static; max-width: 100%; margin: 15px 0 30px;}
  .contact-form-image {width: 100%; margin-bottom: 35px;}
  .contact-us .contact-address-section .contact-map-banner,
  .contact-us .contact-address-section .gmap_canvas,
  .contact-us .contact-address-section .gmap_iframe {
    min-height: 340px;
  }
  .faq-section .main-container .faq-header h2 {font-size: 26px; line-height: 1.2em; margin-bottom: 20px;}
  .faq-section .main-container h3 {font-size: 24px;}
  .accordion-style-one .accordion-item .accordion-button {font-size: 18px;}
  .faq-section .main-container .contact-info-text h5 {font-size: 24px;}
  .error-page h2 {font-size: 30px; margin-bottom: 5px;}
  .error-page p {font-size: 18px;}

}
/*(max-width: 991px)*/
/*Grid md Start*/
@media (min-width: 992px) {
  
}



/*Between Grid md*/
@media (min-width: 768px) and (max-width: 991px) {
  .header-space-fix {margin-top: 112px;}
  .hero-banner-one {min-height: calc(100vh - 112px); padding-top: 40px !important; padding-bottom: 40px !important;}
  .project-section-one .section-title {font-size: 100px; bottom: 13%;}
  .project-section-one .slider-arrows {margin-top: 60px;}
  .feedback-section-one .slick-dots::before, .feedback-section-one .slick-dots:after {width: 68px;}
  .feedback-section-two .slider-arrows {top:50px;}
}
/*(min-width: 768px) and (max-width: 991px)*/



/*Grid sm Start*/
@media (max-width: 767px) {
  .theme-main-menu .top-header .column-wrapper {width: 100%;}
  .feature-block-three .bottom-line .line {width: calc(100% - 8px);}
  .project-section-one .section-title {font-size: 50px; bottom: 14%; font-weight: 600;}
  .project-inner-banner .inner-page-title {font-size: 52px;}
  .tracking-inner-banner .inner-page-title {font-size: 52px;}
  .contact-inner-banner .inner-page-title {font-size: 52px;}
  .project-section-one .slider-arrows {margin-top: 50px;}
  .main-footer .footer-title {margin: 0 0 10px;}
  .main-footer .footer-news li {padding-bottom: 10px; margin-bottom: 10px;}
  .main-footer .bottom-footer .shape_01 {left: 0;}
  .site-footer .footer-logo {max-width: 280px;}
  .site-footer .footer-capabilities {justify-content: flex-start;}
  .feedback-section-one .slick-dots::before, .feedback-section-one .slick-dots:after {width: 80px;}
  .appointment-section-one:before {width: 100%; border-radius: 0;}
  .appointment-section-one.version-two:before {width: 100%; border-radius: 0 0 50px 0;}
  .appointment-section-one .media-bg,.hero-banner-three .card-wrapper .shape_01,
  .feedback-section-two .shape_01 {display: none;}
  .feedback-section-two .slider-arrows {position: static; margin-top: 40px;}
  .feedback-block-one {padding: 85px 30px 40px; border-radius: 30px;}
  .feedback-section-two .slick-dots::before, .feedback-section-two .slick-dots:after {width: 80px;}
  .service-details-content .text {width: 100%; padding-bottom: 30px;}
  .service-details-content .main-media {margin: 0 auto;}
  .service-card-listing .media-bg,
  .service-card-slider .media-bg {height: 320px;}
  .service-card .info-meta h4 {font-size: 26px;}
  .service-card .info-meta p {font-size: 15px; line-height: 1.5em; min-height: 3em;}
  .service-main-media {width: 220px; height: 220px;}
  .service-sidebar .emergency-banner .service-call {font-size: 28px;}
  .team-details .contact-info-bg .col-wrapper {width: 100%; max-width: 100%; padding: 20px 0;}
  .team-details .contact-info-bg {padding: 0 20px;}
  .team-details .contact-info-bg:before {left:20px; right: 20px; height: 1px; top:50%; width: auto;}
  .blog-details .user-comment-box.reply-comment {margin-left: 25px;}
  .blog-details .author-info .text {width: 100%; padding: 30px 0 0;}
  .faq-section .main-container .contact-info-text .support-btn {margin: 20px 0 0;}
  .accordion-style-one .accordion-item .accordion-body {padding-right: 15px;}
}
/*(max-width: 767px)*/




/*Between Grid sm*/
@media (min-width: 576px) and (max-width: 767px) {
  .header-space-fix {margin-top: 110px;}
  .hero-banner-one {min-height: calc(100vh - 110px); padding-top: 32px !important; padding-bottom: 32px !important;}
}
/*(min-width: 576px) and (max-width: 767px)*/




/*Extra Small breakpoints*/
@media (max-width: 575px) {
  .header-space-fix {margin-top: 109px;}
  .hero-banner-one {min-height: calc(100vh - 109px); padding-top: 28px !important; padding-bottom: 28px !important;}
  .project-inner-banner .inner-page-title {font-size: 44px;}
  .tracking-inner-banner .inner-page-title {font-size: 42px;}
  .contact-inner-banner .inner-page-title {font-size: 42px;}
  .service-inner-banner {background-position: center;}
  .contact-inner-banner {background-position: center;}
  .contact-map-link {
    left: 14px;
    right: 14px;
    bottom: 14px;
    width: auto;
  }
  .site-footer.bg-two,
  .site-footer.bg-two.no-footer-cta {
    padding-top: 90px;
    margin-top: 0;
  }
  .site-footer .footer-main {padding-top: 0 !important;}
  .site-footer .footer-logo {max-width: 250px;}
  .site-footer .footer-action-card {min-height: 54px;}
  .site-footer .footer-capabilities {
    justify-content: flex-start;
    gap: 8px;
  }
  .site-footer .footer-capabilities span {
    width: 100%;
    justify-content: flex-start;
  }
  .tracking-form .btn-one {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
  .service-card-listing .media-bg,
  .service-card-slider .media-bg {height: 280px;}
  .service-card .info-meta h4 {font-size: 23px;}
  .service-card .btn-two span:last-child {font-size: 14px;}
  .hero-banner-one .screen_01 {bottom: -10px;}
  .feature-block-one .experience-box {right: 0;}
  .title-one .upper-title {font-size: 15px; margin-bottom: 15px;}
  .list-style-two .text h4 {font-size: 20px; margin-bottom: 5px;}
  .fancy-banner-one.style-one:before {display: none;}
  .hero-banner-two .hero-heading .shape {width: 90px;}
  .feature-block-two .line-wrapper .list-style-two.hr-line {padding-left: 0;}
  .feature-block-two .line-wrapper .list-style-two.hr-line:before,
  .sidebar-one .circle-shape {display: none;}
  .feature-block-two .line-wrapper {padding-left: 30px;}
  .feedback-section-one .slick-dots {position: relative; bottom: 0; left: 50%; width: 80%; transform: translateX(-50%); margin-top: 40px;}
  .hero-banner-three .hero-heading {margin: 20px 0 30px;}
  .theme-main-menu .top-header {font-size: 14px;}
  .card-style-four .info-meta {width: 100%; padding: 30px 0 0;}
  .card-style-four .media-bg {width: 100%; border-radius: 30px;}
  .team-block-one .text {border-radius: 0 0 30px 30px;}
  .blog-meta-two .img-meta {height: 350px;}
  .blog-details .user-comment-box .comment {width: 100%; padding: 20px 0 0;}
  .blog-details .user-comment-box .comment .reply-btn {position: static; margin-top: 10px;}
  .blog-details .post-info-meta strong {font-size: 16px;}
  .contact-us .contact-address-section .col-wrapper .info {padding: 0 0 0 20px;}
  .tracking-section .widget-banner {padding: 30px 20px;}
  .accordion-style-one .accordion-item .accordion-button,
  .accordion-style-one .accordion-item .accordion-body {padding-left: 15px;}
  .product-details .product-review-tab .nav-tabs li {width: 100%;}
  .product-details .product-review-tab {padding: 0 15px 30px; overflow: hidden;}
  .product-details .product-review-tab .nav-tabs .nav-link {width: 100%; margin-bottom: 5px;}
  .cart-list-form .cart-footer .coupon-form input {width: 100%; border-radius: 5px;}
  .cart-list-form .cart-footer .coupon-form button {margin: 10px 0 0; border-radius: 5px;}
}
/*(max-width: 575px)*/




/*Accessibility and device preference fixes*/
@media (max-width: 1399px) {
  .hero-banner-one.header-space-fix {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }
  .hero-banner-one .hero-heading {
    font-size: clamp(54px, 4.7vw, 66px);
    margin: 16px 0 14px;
  }
  .hero-banner-one .operation-support-icons {
    margin-top: 24px !important;
  }
}

@media (max-width: 991px) {
  .hero-banner-one.header-space-fix {
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }
  .hero-banner-one .hero-heading {
    font-size: 38px;
    line-height: 1.12em;
    margin: 16px 0 14px;
  }
  .hero-banner-one p {
    line-height: 1.6em;
  }
}

@media (max-width: 575px) {
  .hero-banner-one.header-space-fix {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }
  .hero-banner-one .slogan {
    font-size: 12px;
  }
  .hero-banner-one .slogan span {
    margin: 0 8px;
  }
  .hero-banner-one .hero-heading {
    font-size: 33px;
    line-height: 1.1em;
    margin: 13px 0 12px;
  }
  .hero-banner-one p.fs-16 {
    font-size: 14px;
    line-height: 1.55em;
  }
  .hero-banner-one .btn-one.xl {
    line-height: 52px;
    padding: 0 24px;
  }
  .hero-banner-one .operation-support-icons {
    align-items: flex-start !important;
    margin-top: 20px !important;
  }
  .hero-banner-one .operation-support-icons li,
  .hero-banner-one .operation-support-icons li:last-child {
    width: 44px;
    height: 44px;
    font-size: 16px;
  }
  .hero-banner-one .operation-support-icons p {
    font-size: 15px;
    line-height: 1.35em;
    padding-left: 12px;
  }
}

:is(a, button, input, textarea, select, [tabindex]):focus-visible {
  outline: 3px solid #f9b233;
  outline-offset: 3px;
  box-shadow: 0 0 0 5px rgba(11, 42, 91, 0.28);
}

.offcanvas.sidebar-nav {
  width: min(345px, 100vw);
  max-width: 100vw;
}

.contact-honeypot {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
