@keyframes zoomin {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.06);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes scaling {
  0% {
    transform: scaleX(1);
  }

  50% {
    transform: scaleX(0);
  }

  100% {
    transform: scaleX(1);
  }
}

@keyframes scaling-2 {
  0% {
    transform: scale(0.9);
  }

  50% {
    transform: scale(1);
  }

  100% {
    transform: scale(0.9);
  }
}

@keyframes hvr-wobble-rotate {
  16.65% {
    transform: rotate(8deg);
  }

  33.3% {
    transform: rotate(-6deg);
  }

  49.95% {
    transform: rotate(4deg);
  }

  66.6% {
    transform: rotate(-2deg);
  }

  83.25% {
    transform: rotate(1deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

@keyframes mouse-move {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes boat-move {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-20px);
  }

  100% {
    transform: translateY(0);
  }
}

.back_to_top {
  position: fixed;
  display: none;
  right: 25px;
  bottom: 15px;
  z-index: 9;
  background-color: #be2913;
  border: 2px solid #ffffff;
  padding: 12px 11px;
  opacity: 0;
  border-radius: 60px;
}

.back_to_top:hover {
  background-color: #38103a;
  border-color: #ffffff;
  transition: 800ms;
  text-decoration: none;
}

.back_to_top.show {
  display: block;
  opacity: 0.8;
  bottom: 15px;
}

.back_to_top.show:hover {
  opacity: 1;
}

.btn-outer {
  padding: 0px !important;
  margin: 0px !important;
  line-height: unset !important;
  width: unset !important;
}

.global-remove p,
.global-remove h1,
.global-remove h2,
.global-remove h3,
.global-remove h4,
.global-remove h5,
.global-remove h6,
.global-remove figure,
.global-remove address {
  margin: 0px;
}

.global-remove a:hover {
  text-decoration: none;
}

.global-remove .container {
  max-width: 1260px;
}

.global-remove .btn-outer a {
  padding: 18px 50px;
  background-color: #be2913;
  border: 2px solid #be2913;
  color: #ffffff;
  position: relative;
  transition: all 0.5s linear;
  display: inline-block;
  z-index: 2;
  font-family: Poppins, sans-serif;
  font-size: 18px;
  font-weight: 300;
}

.global-remove .btn-outer a::before {
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #ffffff;
  position: absolute;
  transform: scaleX(0);
  transition: all 0.5s linear;
  transform-origin: left;
  z-index: -1;
}

.global-remove .btn-outer a:hover {
  color: #be2913;
}

.global-remove .btn-outer a:hover::before {
  transform: scale(1);
}

header .top-bar {
  padding-top: 12px;
  padding-bottom: 14px;
  background-color: #251d71;
  position: relative;
  z-index: 4;
}

header .top-bar p {
  color: #ffffff;
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 18px;
}

header .top-bar i {
  color: #ffffff;
  font-size: 16px;
}

header .top-bar .content-1 {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 15px;
}

header .top-bar .content-2 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 42px;
}

header .top-bar .content-2 .wrap {
  display: flex;
  gap: 15px;
  align-items: center;
  position: relative;
}

header .top-bar .content-2 .wrap a {
  color: #ffffff;
  font-size: 18px;
  font-weight: 200;
  font-family: "Poppins", sans-serif;
  position: relative;
}

header .top-bar .content-2 .wrap a::before {
  content: "";
  width: 100%;
  height: 1px;
  bottom: 0px;
  right: 0;
  background-color: #ffffff;
  position: absolute;
  transform-origin: left;
  transform: scaleX(0);
  transition: all 0.6s ease-in-out;
  z-index: 1;
}

header .top-bar .content-2 .wrap a:hover::before {
  transform: scaleX(1);
}

header .top-bar .content-2 .box {
  position: relative;
  width: 175px;
  z-index: 3;
}

header .top-bar .content-2 .box .inner-box {
  position: absolute;
  right: 0;
  top: -40px;
  padding: 28px 10px 86px 13px;
  background-color: #ffffff;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  clip-path: polygon(50% 70%, 100% 100%, 100% 1%, 0 0, 0 100%);
}

header .top-bar .content-2 .box .inner-box p {
  font-family: "Playfair", serif;
  font-weight: 700;
  font-size: 18px;
  color: #be2913;
}

header .top-bar .content-2 .box .inner-box i {
  margin-top: 35px;
  margin-bottom: 8px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background-color: #251d71;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  border: 1px solid #be2913;
  transition: all 0.4s linear;
}

header .top-bar .content-2 .box .inner-box a {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-size: 22px;
  color: #251d71;
  transition: color 0.4s linear;
}

header .top-bar .content-2 .box .inner-box a:hover {
  color: #be2913;
}

header .top-bar .content-2 .box .inner-box:has(a:hover) i {
  background-color: #be2913;
  border-color: #251d71;
}

header .nav-section {
  padding-top: 18px;
  padding-bottom: 18px;
  background-color: #be2913;
  z-index: 3;
  position: relative;
}

header .nav-section .container {
  position: relative;
}

header .nav-section .logo-container {
  position: absolute;
  left: 15;
  top: -25px;
  z-index: 3;
  padding-top: 20px;
}

header .nav-section .logo-container img {
  border-bottom-left-radius: 40px;
  border-bottom-right-radius: 40px;
}

header .nav-section .content-1 {
  display: flex;
  align-items: center;
  justify-content: center;
}

header .nav-section .content-1 .navbar {
  padding-bottom: 0;
  padding-top: 0;
}

header .nav-section .content-1 .navbar-nav {
  gap: 20px;
}

header .nav-section .content-1 .navbar-nav li {
  position: relative;
}

header .nav-section .content-1 .navbar-nav li a {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-size: 18px;
  letter-spacing: 0.5px;
  color: #ffffff;
  position: relative;
}

header .nav-section .content-1 .navbar-nav li a.active {
  font-weight: 500;
}

header .nav-section .content-1 .navbar-nav li a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: -19px;
  left: 0;
  background-color: #251d71;
  transform: scaleX(0);
  transition: all 0.4s linear;
}

header .nav-section .content-1 .navbar-nav li a:hover::before,
header .nav-section .content-1 .navbar-nav li a.active::before {
  transform: scaleX(1);
}

header .nav-section .content-1 .navbar-nav li .dropdown-toggle::after {
  content: "\f107";
  border: none;
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  vertical-align: unset;
  font-size: 14px;
}

header .nav-section .content-1 .navbar-nav li .dropdown-menu {
  background-color: #251d71;
  padding: 0;
  border-radius: 0;
  top: 42px;
  min-width: 224px;
  z-index: 2;
}

header .nav-section .content-1 .navbar-nav li .dropdown-menu li {
  display: block;
}

header .nav-section .content-1 .navbar-nav li .dropdown-menu li a {
  position: relative;
  display: block;
  padding: 10px 20px;
  font-size: 16px;
  font-weight: 200;
  background-color: transparent;
}

header .nav-section .content-1 .navbar-nav li .dropdown-menu li a::before {
  content: "";
  width: 100%;
  height: 100%;
  bottom: 0px;
  left: 0;
  background-color: #be2913;
  transform: scaleX(0);
  transition: all 0.4s linear;
  z-index: -1;
  transform-origin: left;
}

header .nav-section .content-1 .navbar-nav li .dropdown-menu li .active::before,
header .nav-section .content-1 .navbar-nav li .dropdown-menu li a:hover::before {
  transform: scaleX(1);
}

.slider-section {
  position: relative;
}

.slider-section::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 25px;
  bottom: -15px;
  left: 0;
  z-index: 2;
  background: url(../images/rope.webp) no-repeat;
}

.slider-section .content-1 {
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.slider-section .content-1 .carousel-inner {
  position: relative;
  z-index: 1;
}

.slider-section .content-1 .carousel-inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(8, 6, 34, 0.6);
  z-index: 2;
}

.slider-section .content-1 .carousel-item.active {
  animation: zoomin 15s linear infinite;
}

.slider-section .content-1 .carousel-control-next,
.slider-section .content-1 .carousel-control-prev {
  top: unset;
  bottom: 50%;
  transform: translateY(-50%);
  width: 68px;
  height: 62px;
  color: #fff;
  background: #251D71;
  border: 2px solid #fff;
  border-radius: 5px;
}

.slider-section .content-1 .carousel-control-next i,
.slider-section .content-1 .carousel-control-prev i {
  font-size: 30px;
}

.slider-section .content-1 .carousel-control-next:hover,
.slider-section .content-1 .carousel-control-prev:hover {
  opacity: 1;
}

.slider-section .content-1 .carousel-control-prev {
  left: 92px;
}

.slider-section .content-1 .carousel-control-next {
  right: 92px;
}

.slider-section .content-1 .caption {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 70%;
}

.slider-section .content-1 .caption h1,
.slider-section .content-1 .caption h2 {
  font-family: "Playfair", serif;
  font-weight: 600;
  font-size: 80px;
  color: #ffffff;
  text-align: center;
}

.slider-section .content-1 .caption p {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 28px;
  color: #ffffff;
  text-align: center;
}

.slider-section .content-1 .caption .mouse-btn {
  margin-top: 30px;
  animation: mouse-move 1.5s linear infinite;

}

.slider-section .content-1 .caption .mouse-btn img {
  cursor: pointer;
}

.section-a {
  padding-top: 60px;
  padding-bottom: 115px;
  overflow-x: clip;
}

.section-a .content-1 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.section-a .content-1::before {
  content: "";
  width: 180%;
  height: 160%;
  bottom: -80px;
  left: -56%;
  background: url(../images/back-blur.webp) no-repeat;
  position: absolute;
  background-size: 100% 100%;
  background-position: 20px 15px;
  z-index: -1;
}

.section-a .content-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.section-a .content-2 h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #251d71;
  font-weight: 700;
  width: 80%;
  margin-bottom: 30px;
  line-height: 1;
}

.section-a .content-2 p {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 28px;
  width: 90%;
}

.section-a .wrap {
  margin-top: 144px;
  display: flex;
}

.section-a .wrap .content-3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.section-a .wrap .content-3 h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #251d71;
  font-weight: 700;
  width: 80%;
  margin-bottom: 30px;
  line-height: 1;
}

.section-a .wrap .content-3 p {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 200;
  color: #000000;
  width: 90%;
  padding-bottom: 30px;
  line-height: 1.8;
}

.section-a .wrap .content-3 .btn-outer a {
  margin-top: 30px;
}

.section-a .wrap .content-4 .box {
  position: relative;
}

.section-a .wrap .content-4::before {
  content: "";
  background: url(../images/a-content-back-1.webp) no-repeat;
  width: 275px;
  height: 275px;
  top: -142px;
  right: -43px;
  position: absolute;
  z-index: -1;
  opacity: 20%;
  background-size: 100%;
  animation: zoomin 6s linear infinite;
}

.section-a .wrap .content-4::after {
  content: "";
  background: url(../images/a-content-back-2.webp) no-repeat;
  width: 244px;
  height: 166px;
  bottom: -20px;
  right: -30px;
  position: absolute;
  z-index: -1;
  opacity: 20%;
  background-size: 100%;
  animation: zoomin 4s linear infinite;
}

.section-a .wrap .content-4 .figure-top {
  position: absolute;
  top: -40px;
  left: -97px;
  outline: solid #ffffff 10px;
  width: 50%;
}

.section-a .wrap .content-4 .figure-bottom {
  position: absolute;
  bottom: -100px;
  left: 99px;
  outline: solid #ffffff 10px;
}

.section-b {
  padding-top: 53px;
  padding-bottom: 52px;
  background: url(../images/b-back.webp) no-repeat;
  background-size: 100% 100%;
  position: relative;
}

.section-b::before {
  content: "";
  position: absolute;
  width: 91%;
  height: 90%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: rgba(37, 29, 113, 0.8);
}

.section-b .content-1 {
  padding-left: 97px;
  padding-top: 87px;
  padding-bottom: 87px;
}

.section-b .content-1 h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #ffffff;
  font-weight: 700;
}

.section-b .content-1 figure {
  margin-top: 40px;
  margin-bottom: 40px;
}

.section-b .content-1 p {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 200;
  color: #ffffff;
  line-height: 2;
}

.section-b .content-2 {
  padding-right: 60px;
  padding-left: 50px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.section-b .content-2 h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #ffffff;
  font-weight: 700;
  width: 100%;
  margin-bottom: 30px;
}

.section-b .content-2 p {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 200;
  line-height: 2;
  color: #ffffff;
  width: 86%;
}

.section-c {
  padding-top: 150px;
  padding-bottom: 150px;
  position: relative;
  overflow: hidden;
}

.section-c::before {
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
  background: url(../images/c-back.webp) no-repeat;
  animation: zoomin 10s linear infinite;
  background-size: cover;
}

.section-c::after {
  content: "";
  width: 616px;
  height: 538px;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: translateX(-50%);
  position: absolute;
  background: url(../images/c-img-1.webp) no-repeat;
  z-index: -1;
  animation: boat-move 10s linear infinite;
}

.section-c .content-1 {
  display: flex;
  justify-content: center;
}

.section-c .content-1 .content-wrap {
  padding: 50px 80px;
  box-shadow: 0px 19px 48px 0px rgba(0, 0, 0, 0.2);
  background-color: rgba(255, 255, 255, 0.85);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 90%;
}

.section-c .content-1 .content-wrap h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #251d71;
  font-weight: 700;
  margin-bottom: 30px;
}

.section-c .content-1 .content-wrap .ul-wrap {
  display: flex;
  justify-content: space-between;
}

.section-c .content-1 .content-wrap ul {
  list-style: none;
  width: 46%;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 30px;
}

.section-c .content-1 .content-wrap ul li {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 18px;
  color: #251d71;
  /* padding-bottom: 35px; */
  position: relative;
  padding-left: 52px;
}

.section-c .content-1 .content-wrap ul li::before {
  content: "";
  background: url(../images/list-style.png);
  width: 37px;
  height: 35px;
  top: 0;
  left: 0;
  position: absolute;
}

.section-c .content-1 .content-wrap .btn-outer a {
  margin-top: 40px;
}

.section-d {
  padding-top: 100px;
  padding-bottom: 80px;
  position: relative;
}

.section-d::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 25px;
  background: url(../images/rope.webp) no-repeat;
  left: 0;
  top: 0;
}

.section-d .content-1 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.section-d .content-1 h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #251d71;
  font-weight: 700;
  margin-bottom: 40px;
}

.section-d .content-1 .sub-content {
  width: 100%;
}

.section-d .content-1 .sub-content .owl-stage-outer {
  padding-top: 30px;
  padding-bottom: 30px;
}

.section-d .content-1 .sub-content .item {
  padding-left: 15px;
  padding-right: 15px;
}

.section-d .content-1 .sub-content .box {
  padding: 20px 20px 40px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 40px;
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.1);
  transition: all 0.5s linear;
}

.section-d .content-1 .sub-content .box:hover {
  background-color: #251d71;
}

.section-d .content-1 .sub-content .box:hover h3 {
  color: #ffffff;
}

.section-d .content-1 .sub-content .box:hover a {
  padding-right: 18px;
  color: #ffffff;
}

.section-d .content-1 .sub-content .box:hover a::before {
  opacity: 1;
}

.section-d .content-1 .text-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

.section-d .content-1 .text-box h3 {
  font-family: "Playfair", serif;
  font-weight: 600;
  font-size: 28px;
  color: #251d71;
  transition: all 0.5s ease;
}

.section-d .content-1 .text-box a {
  color: #be2913;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-size: 18px;
  position: relative;
  transition: all 0.5s ease;
}

.section-d .content-1 .text-box a::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  background: url(../images/Vector.svg) no-repeat;
  opacity: 0;
  transition: all 0.5s ease;
}

.section-e {
  padding-bottom: 100px;
  position: relative;
  overflow-x: clip;
}

.section-e::before {
  content: "";
  background-color: #251d71;
  width: 100%;
  height: 55%;
  top: 40%;
  transform: translateY(-50%);
  left: 0;
  position: absolute;
}

.section-e .content-1 {
  display: flex;
  justify-content: center;
  position: relative;
}

.section-e .content-1::before {
  content: "";
  width: 332px;
  height: 332px;
  position: absolute;
  left: -5%;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/e-left-img.webp) no-repeat;
  opacity: 0.3;
  background-size: 60%;
}

.section-e .content-1::after {
  content: "";
  width: 332px;
  height: 332px;
  position: absolute;
  right: -17%;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/e-right-img.webp) no-repeat;
  opacity: 0.6;
  background-size: 60%;
}

.section-e .content-1 .wrap {
  position: relative;
  z-index: 3;
  padding-top: 117px;
  padding-bottom: 116px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%), url(../images/e-content-back.webp) no-repeat;
  background-position: center;
  background-size: 100% 100%;
  width: 86%;
}

.section-e .content-1 .wrap h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #ffffff;
  font-weight: 700;
  margin-bottom: 60px;
}

.section-e .content-1 .wrap .btn-outer a {
  margin-top: 40px;
}

.section-e .content-1 .wrap .slider-2 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.section-e .content-1 .wrap .slider-2 .owl-nav {
  position: absolute;
  display: flex;
  justify-content: space-between;
  width: 80%;
}

.section-e .content-1 .wrap .slider-2 .owl-nav span {
  display: none;
}

.section-e .content-1 .wrap .slider-2 .owl-nav .owl-prev::before {
  content: "\f104";
  font-size: 50px;
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  color: #ffffff;
  opacity: 0.6;
  transition: all 0.6s ease;
}

.section-e .content-1 .wrap .slider-2 .owl-nav .owl-prev:hover::before {
  opacity: 1;
}

.section-e .content-1 .wrap .slider-2 .owl-nav .owl-prev {
  background-color: transparent;
}

.section-e .content-1 .wrap .slider-2 .owl-nav .owl-next::before {
  content: "\f105";
  font-size: 50px;
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  color: #ffffff;
  opacity: 0.6;
  transition: all 0.6s ease;
}

.section-e .content-1 .wrap .slider-2 .owl-nav .owl-next:hover::before {
  opacity: 1;
}

.section-e .content-1 .wrap .slider-2 .owl-nav .owl-next {
  background-color: transparent;
}

.section-e .content-1 .wrap .item {
  display: flex;
  justify-content: center;
}

.section-e .content-1 .wrap .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 80px 93px;
  background-color: rgba(255, 255, 255, 0.8);
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 10px;
  width: 70%;
}

.section-e .content-1 .wrap .text-box {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}

.section-e .content-1 .wrap .text-box p {
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 18px;
  color: #251d71;
  line-height: 2;
}

.section-e .content-1 .wrap .text-box h3 {
  font-family: "Playfair", serif;
  font-size: 28px;
  font-weight: 700;
  color: #251d71;
  margin-top: 20px;
}

.section-f {
  padding-bottom: 100px;
}

.section-f .content-1 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.section-f .content-1 h2 {
  font-family: "Playfair", serif;
  font-size: 54px;
  color: #251d71;
  font-weight: 700;
  margin-bottom: 50px;
}

.section-f .content-1 p {
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 24px;
  color: #000000;
  width: 80%;
}

.section-f .content-1 .box {
  display: flex;
  margin-top: 40px;
  gap: 19px;
}

.section-f .content-1 .box i {
  width: 58px;
  height: 58px;
  background-color: #be2913;
  color: #be2913;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 20px;
}

.section-f .content-1 .box h3 {
  font-family: "Playfair", serif;
  font-size: 20px;
  font-weight: 700;
  color: #251d71;
}

.section-f .content-1 .box a {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-size: 25px;
  color: #251d71;
  position: relative;
}

.section-f .content-1 .box a::before {
  content: "";
  width: 100%;
  height: 1px;
  bottom: 0px;
  right: 0;
  background-color: #251d71;
  position: absolute;
  transform-origin: left;
  transform: scaleX(0);
  transition: all 0.6s ease-in-out;
  z-index: 1;
}

.section-f .content-1 .box a:hover::before {
  transform: scaleX(1);
}

.section-g {
  position: relative;
}

.section-g::before {
  content: "";
  width: 100%;
  height: 25px;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/rope.webp) no-repeat;
  position: absolute;
  z-index: 2;
}

.section-g::after {
  content: "";
  width: 100%;
  height: 25px;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/rope.webp) no-repeat;
  position: absolute;
  z-index: 2;
}

.section-g .content-1 {
  padding-left: 0;
  padding-right: 0;
}

.section-g .content-1 .item {
  position: relative;
}

.section-g .content-1 .item:hover::after {
  transform: scale(1);
}

.section-g .content-1 .item:hover a {
  transform: scaleY(1);
  bottom: 50px;
}

.section-g .content-1 .item::after {
  content: "";
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  background: linear-gradient(0deg, rgb(37, 29, 113) 0%, rgba(56, 16, 58, 0) 100%);
  transform: scaleY(0);
  transition: all 1s ease;
  transform-origin: bottom;
}

.section-g .content-1 .item a {
  z-index: 2;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: scale(0);
  position: absolute;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.6s ease;
}

.section-g .content-1 .item a i {
  font-size: 20px;
  color: #38103a;
  rotate: 45deg;
}

.section-footer {
  padding-top: 90px;
  padding-bottom: 74px;
  background-color: #251d71;
}

.section-footer h3 {
  font-family: "Playfair", serif;
  font-size: 28px;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 40px;
  line-height: 0.7;
}

.section-footer h4 {
  font-family: "Playfair", serif;
  font-size: 18px;
  font-weight: 700;
  color: #ffffff;
}

.section-footer ul {
  list-style: none;
  padding-left: 0;
}

.section-footer ul li {
  padding-left: 18px;
  margin-bottom: 14px;
  position: relative;
}

.section-footer ul li::before {
  content: "\f04b";
  font-size: 12px;
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  color: #ffffff;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.6s linear;
}

.section-footer ul li:has(a:hover)::before,
.section-footer ul li:has(a.active)::before {
  color: #be2913;
}

.section-footer ul a {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 16px;
  color: #ffffff;
  position: relative;
}

.section-footer ul a::before {
  content: "";
  width: 100%;
  height: 1px;
  bottom: 0px;
  right: 0;
  background-color: #ffffff;
  position: absolute;
  transform-origin: left;
  transform: scaleX(0);
  transition: all 0.6s ease-in-out;
  z-index: 1;
}

.section-footer ul a:hover::before,
.section-footer ul a.active::before {
  transform: scaleX(1);
}

.section-footer .content-1 .box {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  margin-bottom: 20px;
}

.section-footer .content-1 .box i {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #be2913;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
}

.section-footer .content-1 .box a {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 16px;
  color: #ffffff;
  position: relative;
}

.section-footer .content-1 .box a::before {
  content: "";
  width: 100%;
  height: 1px;
  bottom: 0px;
  right: 0;
  background-color: #ffffff;
  position: absolute;
  transform-origin: left;
  transform: scaleX(0);
  transition: all 0.6s ease-in-out;
  z-index: 1;
}

.section-footer .content-1 .box a:hover::before {
  transform: scaleX(1);
}

.section-footer .content-1 p {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-size: 16px;
  color: #ffffff;
  line-height: 1.8;
}

.section-footer .content-5 {
  margin-top: 40px;
}

.section-footer .content-5 a {
  display: inline-block;
}

.section-footer .content-6 {
  margin-top: 40px;
}


.section-footer .content-4 iframe {
  width: 100%;
}

.section-footer .content-5 img {
  border-radius: 10px;
}

.section-footer .content-6 .wrap {
  display: flex;
  gap: 20px;
}

.section-footer .content-6 .wrap p {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 200;
  color: #ffffff;
}

.section-footer .content-7 {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 80px;
  margin-top: 40px;
}

.section-footer .content-7 a:hover {
  animation: zoomin 1s ease 2;
}

.copyright-section {
  background-color: #be2913;
}

.copyright-section .content-1 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 20px;
  padding-bottom: 20px;
}

.copyright-section .content-1 p {
  color: #ffffff;
  font-family: "Poppins", sans-serif;
  font-size: 15px;
  font-weight: 200;
  letter-spacing: 0.15px;
  text-align: center;
}

.copyright-section .content-1 p a {
  color: #ffffff;
  font-weight: 500;
  transition: all 0.8s ease;
}

.copyright-section .content-1 p a:hover {
  color: #251d71;
}

@keyframes icon-animation {
  0% {
    transform: translateX(0);
  }

  30% {
    transform: translateX(10px);
    opacity: 0;
  }

  60% {
    transform: translateX(-10px);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes scalling-3 {
  0% {
    width: 102%;
    height: 105%;
  }

  60% {
    width: 101%;
    height: 102%;
  }

  100% {
    width: 102%;
    height: 105%;
  }
}

@keyframes hvr-wobble-rotate {
  16.65% {
    transform: rotate(8deg);
  }

  33.3% {
    transform: rotate(-6deg);
  }

  49.95% {
    transform: rotate(4deg);
  }

  66.6% {
    transform: rotate(-2deg);
  }

  83.25% {
    transform: rotate(1deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

.animate__zoomIn {
  animation: zoomIn 1s ease-out;
}

@keyframes scalling {
  0% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.1);
    opacity: 0.4;
  }

  100% {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes scalling-2 {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }
}



/* ****************** inner page css ************ */

.layout-section {
  padding: 100px 15px;
}

.layout-section a {
  text-decoration: none;
}

.layout-section .inner-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.layout-section h1 {
  font-family: "Playfair", serif;
  display: inline-block;
  font-size: 65px;
  color: #ffffff;
  font-weight: 700;
  text-align: center;
  background-color: #251D71;
  border-radius: 50px 0px 50px 0px;
  padding: 10px 30px;
  margin-bottom: 50px;
}

.layout-section h2 {
  font-family: "Playfair", serif;
  font-size: 40px;
  color: #251d71;
  font-weight: 500;
  margin: 30px 0px;
}

.layout-section h3 {
  font-family: "Playfair", serif;
  font-size: 25px;
  color: #000000;
  font-weight: 500;
}

#company-details dt,
#company-details dd,
.layout-section p {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000000;
  padding-bottom: 30px;
  line-height: 1.8;
  margin-bottom: 0px;
}

#company-details dt {
  font-weight: 700;
}

#company-details dd,
#company-details dt {
  line-height: normal;
  padding-bottom: 0px;
}

#company-details dd a,
.layout-section p a {
  font-weight: 500;
  color: #be2913;
  position: relative;
  transition: all 0.6s ease;
}

#company-details dd a:hover,
.layout-section p a:hover {
  color: #251d71;
}

.layout-section ul {
  list-style: none;
  padding-left: 0;
}

.layout-section ul li {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000000;
  line-height: 1.8;
  position: relative;
  padding-left: 25px;
}

.layout-section ul li a {
  color: #000000;
  font-weight: 500;
  transition: 800ms;
}

.layout-section ul li a:hover {
  color: #251d71;
}

.layout-section ul li:not(:last-child) {
  margin-bottom: 5px;
}

.layout-section ul li::before {
  content: "";
  width: 13px;
  height: 13px;
  top: 10px;
  left: 0;
  background-color: #be2913;
  border-radius: 50px;
  position: absolute;
}

.layout-section .inner-image {
  position: relative;
  overflow: hidden;
  width: calc(44% + 30px);
  transition: 800ms ease;
  border-radius: 10px;
}

.layout-section .inner-image-2 {
  position: relative;
  overflow: hidden;
  width: 100%;
  transition: 800ms ease;
  border-radius: 10px;
}

.layout-section .inner-image-2 img,
.layout-section .inner-image img {
  width: 100%;
  height: auto;
  transition: 800ms ease;
}

.layout-section .inner-image-2 img:hover,
.layout-section .inner-image img:hover {
  transform: scale(1.1);
}

.layout-section .inner-box-1 {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
  width: 70vw;
}

.gallerydiv {
  width: 30%;
}

.gallerydiv .title {
  height: fit-content;
  margin-bottom: 0px;
}

.gallerydiv .b {
  width: 100%;
}

.gallerydiv .img_thumb img {
  width: 100%;
  height: 100%;
  transition: 800ms ease;
  object-fit: cover;
}

.gallerydiv .img_thumb a {
  height: 250px;
  display: inline-block;
}

.gallery-list {
  display: flex;
  flex-direction: row;
  gap: 20px;
  flex-wrap: wrap;
}



.layout-section .testi-box {
  background-color: #2c2c2c;
  border-radius: 20px;
  padding: 20px 50px;
  position: relative;
  overflow: hidden;
  transition: 800ms;
  -webkit-box-shadow: 1px 1px 17px -4px #000000;
  box-shadow: 1px 1px 17px -4px #000000;
}

.layout-section .testi-box:not(:last-child) {
  margin-bottom: 30px;
}

.layout-section .testi-box p {
  color: white;
  padding-top: 50px;
  padding-bottom: 15px;
}

.layout-section .testi-box h3 {
  font-style: italic;
  color: white;
  font-weight: 700;
  font-size: 18px;
}

.layout-section .testi-box img {
  background-color: white;
  position: absolute;
  left: 0px;
  top: 0px;
  border-bottom-right-radius: 10px;
  padding: 5px 20px;
}

.layout-section .testi-box:hover {
  background-color: #251D71;
}

.layout-section .privacy-policy .privacy-details {
  padding: 10px 20px;
  margin-bottom: 20px;
  border: 5px solid #292625;
  border-radius: 10px;
  box-shadow: #292625 0px 5px 0px 0px;
}

.layout-section .privacy-policy .privacy-details p {
  padding-bottom: 10px;
}


#contact-form li {
  padding-left: 0px;
}

#contact-form li::before {
  display: none;
}

.inner-slider .content-1 .carousel-control-next,
.inner-slider .content-1 .carousel-control-prev {
  bottom: 35%;
}



/* mobile */
@media (max-width: 767px) {
  header .top-bar .content-2 {
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    margin-top: 10px;
  }

  header .top-bar .content-2 .wrap {
    gap: 12px;
  }

  header .top-bar p {
    font-size: 16px;
  }

  header .nav-section .logo-container {
    top: 0;
    z-index: 4;
    padding-top: 0px;
  }

  header .nav-section .logo-container img {
    width: 80%;
  }

  .slider-section .content-1 .carousel-control-next,
  .slider-section .content-1 .carousel-control-prev {
    display: none;
  }

  header .top-bar .content-1,
  header .top-bar .content-2 {
    padding-left: 0;
    padding-right: 0;
  }

  .slider-section .content-1 .caption {
    position: relative;
    bottom: 0;
    width: 100%;
    padding: 20px 15px;
  }

  .slider-section .content-1 .caption p {
    font-size: 20px;
    color: #000000;
  }

  .slider-section .content-1 .caption h1,
  .slider-section .content-1 .caption h2 {
    font-size: 60px;
    color: #251d71;
    line-height: 1;
    margin-bottom: 10px;
  }

  header .nav-section .content-1 {
    padding-left: 0;
    padding-right: 0;
    display: block;
    width: 100%;
  }

  header .nav-section .content-1 .navbar {
    padding-left: 0;
    padding-right: 0;
  }

  header .nav-section .content-1 .navbar .navbar-brand {
    z-index: -1;
    opacity: 0;
  }

  header .nav-section .content-1 .navbar .navbar-nav {
    width: 100%;
    align-items: flex-start;
    gap: 5px;
    padding-bottom: 5px;
    background-color: #be2913;
    margin-top: 50px;
  }

  header .nav-section .content-1 .navbar .navbar-nav li {
    width: 100%;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a {
    padding: 4px 15px;
    background-color: rgba(56, 16, 58, 0.542);
    border-radius: 5px;
    color: #ffffff;
    transition: all 0.8s ease;
    font-weight: 500;
    display: block;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a::before {
    display: none;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a:hover {
    z-index: 1;
    background-color: #251d71;
    color: #ffffff;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a.active {
    background-color: #251d71;
    color: #ffffff;
  }

  header .nav-section .content-1 .navbar .navbar-toggler {
    padding: 0px;
    color: transparent;
    border-color: transparent;
  }

  header .nav-section .content-1 .hamburger-button {
    stroke: #251d71;
    overflow: hidden;
    padding-right: 0px;
  }

  header .nav-section .content-1 .hamburger-button .hamburger {
    transition: translate 1s, rotate 1s;
  }

  header .nav-section .content-1 .hamburger-button .line {
    transition: 1s;
    stroke-dasharray: 60 31 60 300;
  }

  header .nav-section .content-1 .hamburger-button[aria-expanded=true] .hamburger {
    translate: 3px -3px;
    rotate: 0.125turn;
  }

  header .nav-section .content-1 .hamburger-button[aria-expanded=true] .line {
    stroke-dasharray: 60 105 60 300;
    stroke-dashoffset: -90;
  }

  header .nav-section {
    padding-top: 0;
    padding-bottom: 0;
  }

  header .nav-section .content-1 .navbar-nav li .dropdown-menu li a {
    padding: 5px 20px;
    border-radius: 0;
    font-weight: 400;
  }

  header .nav-section .content-1 .navbar-nav li .dropdown-menu {
    background-color: rgba(56, 16, 58, 0.542);
  }

  .slider-section .content-1 .caption .mouse-btn {
    display: none;
    width: 10%;
  }

  .section-a {
    padding-top: 10px;
    padding-bottom: 35px;
  }

  .section-a .content-2 {
    padding-left: 0;
    padding-right: 0;
  }

  .section-a .content-2 h2 {
    font-size: 32px;
    text-align: center;
    width: 100%;
  }

  .section-a .content-2 p {
    font-size: 18px;
    width: 100%;
    text-align: center;
  }

  .section-a .wrap {
    margin-top: 50px;
  }

  .section-a .wrap .content-3 {
    padding-left: 0;
    padding-right: 0;
  }

  .section-a .wrap .content-3 h2 {
    font-size: 30px;
    width: 100%;
    text-align: center;
  }

  .section-a .wrap .content-3 p {
    width: 100%;
    text-align: center;
  }

  .section-a .wrap .content-4 {
    padding-top: 80px;
    padding-bottom: 80px;
    display: flex;
    justify-content: center;
  }

  .section-a .wrap .content-4 .box {
    width: 90%;
  }

  .section-a .wrap .content-3 .btn-outer a {
    margin-top: 0px;
  }

  .section-a .wrap .content-4 .figure-bottom {
    left: 30px;
    width: 60%;
    bottom: -40px;
  }

  .section-a .wrap .content-4 .figure-top {
    top: -40px;
    left: -27px;
  }

  .section-a .wrap .content-4::before {
    top: 0px;
    right: -24px;
    width: 175px;
    height: 165px;
  }

  .section-a .wrap .content-4::after {
    display: none;
  }

  .section-a .wrap .content-3 {
    align-items: center;
  }

  .section-b {
    background-size: cover;
    background-position-x: center;
  }

  .section-b .content-1 {
    padding: 20px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
  }

  .section-b .content-1 h2 {
    font-size: 42px;
  }

  .section-b .content-1 p {
    text-align: center;
  }

  .section-b .content-2 {
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
    align-items: center;
    justify-content: flex-start;
  }

  .section-b .content-2 h2 {
    font-size: 30px;
    text-align: center;
  }

  .section-b .content-2 p {
    width: 100%;
    text-align: center;
  }

  .section-c .content-1 .content-wrap .btn-outer a {
    margin-top: 20px;
  }

  .section-c {
    padding: 50px 15px;
  }

  .section-c .content-1 {
    padding-left: 0;
    padding-right: 0;
  }

  .section-c .content-1 .content-wrap {
    padding: 30px 15px;
    width: 100%;
    align-items: center;
  }

  .section-c .content-1 .content-wrap ul li::before {
    background-size: 100% 100%;
    width: 28px;
    height: 26px;
  }

  .section-e .content-1 .wrap .text-box p {
    font-weight: 300;
    font-size: 16px;
  }

  .section-e .content-1 .wrap .text-box h3 {
    font-size: 21px;
  }

  .section-c .content-1 .content-wrap ul li {
    font-size: 16px;
    padding-left: 38px;
  }

  .section-c .content-1 .content-wrap ul {
    width: 100%;
    margin-bottom: 20px;
  }

  .section-c .content-1 .content-wrap h2 {
    font-size: 30px;
    text-align: center;
  }

  .section-c .content-1 .content-wrap .ul-wrap {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
  }

  .section-d {
    padding-top: 60px;
    padding-bottom: 30px;
  }

  .section-d .content-1 h2 {
    font-size: 42px;
    margin-bottom: 0px;
  }

  .section-d .content-1 .text-box h3 {
    text-align: center;
    font-size: 24px;
  }

  .section-d .content-1 {
    padding-left: 0;
    padding-right: 0;
  }

  .section-e .content-1 .wrap {
    padding-top: 40px;
    padding-bottom: 56px;
    width: 100%;
    background: unset;
  }

  .section-e {
    padding-bottom: 0px;
  }

  .section-e .content-1 {
    padding-left: 0;
    padding-right: 0;
  }

  .section-e::before {
    content: "";
    background-color: #251d71;
    width: 100%;
    height: 100%;
    top: 0;
    transform: unset;
  }

  .section-e .content-1 .wrap .box {
    padding: 20px 15px;
    width: 100%;
  }

  .section-e .content-1 .wrap .slider-2 .owl-nav {
    width: 30%;
    bottom: -70px;
  }

  .section-e .content-1 .wrap .btn-outer a {
    margin-top: 80px;
  }

  .section-e .content-1 .wrap h2 {
    font-size: 30px;
    margin-bottom: 30px;
  }

  .section-f .content-1 p {
    text-align: center;
    font-size: 18px;
    width: 100%;
  }

  .section-f .content-1 h2 {
    font-size: 30px;
    margin-bottom: 20px;
  }

  .section-f {
    padding-bottom: 40px;
    padding-top: 30px;
  }

  .section-f .content-1 .box i {
    width: 48px;
    height: 48px;
  }

  .section-footer {
    padding-top: 60px;
    padding-bottom: 54px;
    padding-left: 0;
    padding-right: 0;
  }

  .section-f .content-1 .box a {
    font-size: 20px;
  }

  .section-footer .content-1 .box i {
    width: 30px;
    height: 30px;
    font-size: 12px;
  }

  .section-footer .content-4 {

    order: 7;
  }

  .section-footer .content-5 {

    order: -1;
    display: flex;
    justify-content: center;
  }

  .section-footer .content-7 {

    gap: 20px;
    justify-content: center;
  }

  .section-footer .content-1,
  .section-footer .content-2,
  .section-footer .content-3,
  .section-footer .content-4,
  .section-footer .content-5,
  .section-footer .content-7,
  .section-footer .content-6 {
    margin-top: 30px;
  }

  .section-footer h3 {
    margin-bottom: 24px;
  }

  .section-footer .content-6 .wrap {
    flex-direction: column;
  }

  .layout-section h1 {
    font-size: 32px;
    border-radius: 30px 0px 30px 0px;
    margin-bottom: 24px;
  }

  .layout-section {
    padding: 50px 15px;
  }

  .layout-section .container {
    padding: 0px;
  }

  .layout-section ul li,
  #company-details dt,
  #company-details dd,
  .layout-section p {
    font-size: 16px;
  }

  .layout-section p {
    padding-bottom: 20px;
  }

  .layout-section h2 {
    font-size: 30px;
    margin: 20px 0px;
  }

  .layout-section .testi-box {
    padding: 20px 24px;
  }

  .layout-section .testi-box img {
    width: 46%;
  }

  .layout-section .inner-image {
    width: calc(88% + 30px);
  }

  .layout-section .inner-box-1 {
    width: 80vw;
  }

  #company-details dl {
    margin-top: 0px;
  }

  #company-details dd,
  #company-details dt {
    margin-top: 5px;
  }

  .section-footer {
    padding-top: 10px;
  }


}

/* ios */
@media (max-width: 340px) {
  header .top-bar .content-2 .wrap a {
    font-size: 16px;
  }

  .slider-section .content-1 .caption h1,
  .slider-section .content-1 .caption h2 {
    font-size: 40px;
  }

  .slider-section .content-1 .caption p {
    font-size: 18px;
  }

  .layout-section .privacy-policy a {
    word-break: break-all;
  }

  .layout-section .privacy-details a {
    word-break: break-word;
  }

}

/* windows */
/*tab portrait*/
@media (min-width: 768px) and (max-width: 991px) {
  header .top-bar .content-2 {
    margin-top: 10px;
    justify-content: space-between;
  }

  .slider-section .content-1 .caption {
    position: absolute;
    bottom: 15px;
    width: 75%;
  }

  .slider-section .content-1 .caption p {
    font-size: 20px;
  }

  .slider-section .content-1 .caption p br {
    display: none;
  }

  .slider-section .content-1 .caption h1,
  .slider-section .content-1 .caption h2 {
    font-size: 60px;
  }

  .section-a .content-1::before {
    width: 150%;
    height: 150%;
    bottom: -80px;
    left: -26%;
  }

  header .nav-section .logo-container {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 4;
    width: 27%;
    padding-top: 0px;
  }

  header .nav-section .content-1 {
    padding-left: 0;
    padding-right: 0;
    display: block;
    width: 100%;
  }

  header .nav-section .content-1 .navbar {
    padding-left: 0;
    padding-right: 0;
  }

  header .nav-section .content-1 .navbar .navbar-brand {
    z-index: -1;
  }

  header .nav-section .content-1 .navbar .navbar-nav {
    width: 100%;
    align-items: flex-start;
    gap: 5px;
    padding-bottom: 5px;
    background-color: #be2913;
    margin-top: 50px;
  }

  header .nav-section .content-1 .navbar .navbar-nav li {
    width: 100%;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a {
    padding: 4px 15px;
    background-color: rgba(56, 16, 58, 0.542);
    border-radius: 5px;
    color: #ffffff;
    transition: all 0.8s ease;
    font-weight: 500;
    display: block;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a::before {
    display: none;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a:hover {
    z-index: 1;
    background-color: #251d71;
    color: #ffffff;
  }

  header .nav-section .content-1 .navbar .navbar-nav li a.active {
    background-color: #251d71;
    color: #ffffff;
  }

  header .nav-section .content-1 .navbar .navbar-toggler {
    padding: 0px;
    color: transparent;
    border-color: transparent;
  }

  header .nav-section .content-1 .hamburger-button {
    stroke: #251d71;
    overflow: hidden;
    padding-right: 0px;
  }

  header .nav-section .content-1 .hamburger-button .hamburger {
    transition: translate 1s, rotate 1s;
  }

  header .nav-section .content-1 .hamburger-button .line {
    transition: 1s;
    stroke-dasharray: 60 31 60 300;
  }

  header .nav-section .content-1 .hamburger-button[aria-expanded=true] .hamburger {
    translate: 3px -3px;
    rotate: 0.125turn;
  }

  header .nav-section .content-1 .hamburger-button[aria-expanded=true] .line {
    stroke-dasharray: 60 105 60 300;
    stroke-dashoffset: -90;
  }

  header .nav-section {
    padding-top: 0;
    padding-bottom: 0;
  }

  header .nav-section .content-1 .navbar-nav li .dropdown-menu li a {
    padding: 5px 20px;
    border-radius: 0;
    font-weight: 400;
  }

  header .nav-section .content-1 .navbar-nav li .dropdown-menu {
    background-color: rgba(56, 16, 58, 0.542);
  }

  .slider-section .content-1 .carousel-control-next {
    right: 30px;
  }

  .slider-section .content-1 .carousel-control-prev {
    left: 30px;
  }

  .slider-section .content-1 .carousel-control-next,
  .slider-section .content-1 .carousel-control-prev {
    width: 48px;
    height: 48px;
  }

  .slider-section .content-1 .caption .mouse-btn {
    margin-top: 0px;
  }

  .slider-section .content-1 .caption .mouse-btn img {
    width: 60%;
  }

  .section-a {
    padding-top: 10px;
    padding-bottom: 35px;
  }

  .section-e .content-1 .wrap .box {
    padding: 70px 50px;
  }

  .section-a .content-2 h2 {
    font-size: 44px;
    text-align: center;
    width: 100%;
  }

  .section-a .content-2 p {
    font-size: 22px;
    width: 100%;
    text-align: center;
  }

  .section-a .wrap {
    margin-top: 50px;
  }

  .section-a .wrap .content-3 h2 {
    font-size: 40px;
    width: 100%;
    text-align: center;
  }

  .section-a .wrap .content-3 p {
    width: 100%;
    text-align: center;
  }

  .section-a .wrap .content-4 {
    padding-top: 80px;
    padding-bottom: 120px;
    display: flex;
    justify-content: center;
  }

  .section-a .wrap .content-4 .box {
    width: 70%;
  }

  .section-a .wrap .content-4 .figure-bottom {
    left: 49px;
    width: 50%;
  }

  .section-a .wrap .content-4::before {
    top: -42px;
    right: 0px;
  }

  .section-a .wrap .content-4::after {
    width: 194px;
    bottom: -20px;
    right: 110px;
  }

  .section-a .wrap .content-3 {
    align-items: center;
  }

  .section-b .content-1 {
    padding: 50px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
  }

  .section-b .content-1 h2 {
    font-size: 42px;
  }

  .section-b .content-1 p {
    text-align: center;
  }

  .section-b .content-2 {
    padding-bottom: 50px;
    align-items: center;
    justify-content: flex-start;
  }

  .section-b .content-2 h2 {
    font-size: 42px;
    text-align: center;
  }

  .section-b .content-2 p {
    width: 100%;
    text-align: center;
  }

  .section-c {
    padding-top: 70px;
    padding-bottom: 90px;
  }

  .section-c .content-1 .content-wrap {
    padding: 50px 40px;
    width: 100%;
  }

  .section-c .content-1 .content-wrap ul {
    width: 100%;
    margin-bottom: 0;
  }

  .section-c .content-1 .content-wrap .ul-wrap {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
  }

  .section-d {
    padding-top: 70px;
    padding-bottom: 50px;
  }

  .section-d .content-1 h2 {
    font-size: 42px;
    margin-bottom: 0px;
  }

  .section-d .content-1 .text-box h3 {
    text-align: center;
    font-size: 24px;
  }

  .section-e .content-1 .wrap {
    padding-top: 40px;
    padding-bottom: 56px;
    width: 100%;
  }

  .section-e {
    padding-bottom: 50px;
  }

  .section-e .content-1 .wrap .slider-2 .owl-nav {
    width: 86%;
  }

  .section-f .content-1 p {
    text-align: center;
    font-size: 20px;
    width: 100%;
  }

  .section-f .content-1 h2 {
    font-size: 42px;
    margin-bottom: 30px;
  }

  .section-f {
    padding-bottom: 60px;
  }

  .section-footer .content-7 {
    align-items: center;
  }


  .section-footer .content-6 {
    order: 7;
    margin-top: 20px;
  }

  .section-footer .content-3,
  .section-footer .content-4 {
    margin-top: 30px;
  }

  .layout-section h1 {
    font-size: 40px;
  }

  .layout-section {
    padding: 65px 15px;
  }

  .slider-section .content-1 .carousel-control-next,
  .slider-section .content-1 .carousel-control-prev {
    bottom: 26%;
  }

  #company-details dt,
  #company-details dd {
    font-size: 16px;
  }

}

/*tab landscape*/
@media (min-width: 992px) and (max-width: 1199px) {

  header .top-bar .content-1 {
    gap: 5px;
    padding-right: 0;
  }

  header .nav-section .content-1 {
    justify-content: flex-end;
  }

  header .nav-section .content-1 .navbar {
    padding-left: 0;
    padding-right: 0;
  }

  header .nav-section .content-1 .navbar-nav {
    gap: 20px;
  }

  header .nav-section .logo-container {
    left: 15px;
  }

  .slider-section .content-1 .caption h1,
  .slider-section .content-1 .caption h2 {
    font-size: 62px;
  }

  .slider-section .content-1 .caption p {
    font-size: 21px;
  }

  .slider-section .content-1 .caption .mouse-btn {
    margin-top: 20px;
    width: 10%;
  }

  .slider-section .content-1 .carousel-control-next,
  .slider-section .content-1 .carousel-control-prev {
    width: 48px;
    height: 48px;
  }

  F .section-a .content-2 h2,
  .section-a .wrap .content-3 h2,
  .section-b .content-2 h2,
  .section-b .content-1 h2,
  .section-c .content-1 .content-wrap h2,
  .section-f .content-1 h2 {
    font-size: 42px;
  }

  .section-a .content-2 p {
    font-size: 20px;
  }

  .section-a .wrap .content-4 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }

  .section-a .wrap .content-4 .figure-bottom {
    bottom: -80px;
    left: 60px;
    width: 50%;
  }

  .section-a .content-2 h2 {
    font-size: 45px;
    width: 95%;
  }

  .section-a .wrap {
    margin-top: 54px;
  }

  .section-a .wrap .content-4::before {
    top: 0px;
    right: -92px;
  }

  .section-a .wrap .content-4::after {
    width: 210px;
    right: -20px;
  }

  .section-b::before {
    width: 94%;
  }

  .section-b .content-1 {
    padding-left: 57px;
    padding-top: 38px;
    padding-bottom: 38px;
  }

  .section-c .content-1 .content-wrap {
    padding: 50px 50px;
    width: 100%;
  }

  .section-c {
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .section-c .content-1 .content-wrap ul li {
    font-size: 16px;
  }

  .section-d .content-1 h2 {
    font-size: 42px;
    margin-bottom: 0px;
  }

  .section-e .content-1 .wrap h2 {
    font-size: 42px;
    margin-bottom: 40px;
  }

  .section-e .content-1 .wrap .box {
    padding: 60px 30px;
  }

  .section-f .content-1 p {
    font-size: 20px;
    line-height: 1.7;
  }

  .section-e .content-1 .wrap {
    padding-top: 47px;
    padding-bottom: 66px;
  }

  .section-e {
    padding-bottom: 60px;
  }

  .section-f {
    padding-bottom: 60px;
  }

  .section-footer .content-4 {
    order: 7;
    margin-top: 20px;
  }

  .section-footer .content-7 {
    justify-content: flex-start;
    margin-top: 20px;
    gap: 10px;
  }

  .inner-slider .content-1 .carousel-control-next,
  .inner-slider .content-1 .carousel-control-prev {
    bottom: 28%;
  }

  .slider-section .content-1 .caption {
    bottom: 60px;
  }


}

/* 1280 resolution */
@media (min-width: 1280px) and (max-width: 1365px) {
  .section-footer .content-6 .wrap {
    gap: 17px;
  }

  .section-footer .content-7 {
    gap: 20px;
  }

  .section-a .wrap .content-4 .figure-bottom {
    left: 66px;
  }

  .section-b::before {
    width: 95%;
  }

  header .nav-section .content-1 {
    padding-left: 60px;
  }

  header .nav-section .logo-container {
    left: 15px;
  }

  .section-footer .content-1 .box i {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }
}

/* 1366 resolution */
/* 1440 resolution */
@media (min-width: 1440px) and (max-width: 1599px) {
  .section-b::before {
    width: 87%;
  }
}

/*Large View*/
@media (min-width: 1600px) {
  .global-remove .container {
    max-width: 1560px;
  }

  .slider-section .content-1 .caption {
    bottom: 54px;
  }

  header .nav-section .content-1 .navbar-nav {
    gap: 35px;
  }

  .slider-section .content-1 .caption .mouse-btn {
    margin-top: 60px;
  }

  .section-a {
    padding-bottom: 186px;
  }

  .section-a .content-2 h2 {
    font-size: 64px;
  }

  .section-a .wrap .content-3 h2 {
    font-size: 64px;
  }

  .section-a .wrap .content-3 .btn-outer a {
    margin-top: 30px;
  }

  .section-a .wrap .content-4 {
    position: relative;
  }

  .section-a .wrap .content-4::before {
    top: -177px;
    background-size: 100%;
    width: 455px;
    height: 455px;
    right: -166px;
  }

  .section-a .wrap .content-4::after {
    bottom: -150px;
    right: 80px;
  }

  .section-a .wrap .content-4 .figure-top {
    width: -moz-fit-content;
    width: fit-content;
  }

  .section-a .wrap .content-4 .figure-bottom {
    bottom: -82px;
    left: 99px;
    width: -moz-fit-content;
    width: fit-content;
  }

  .section-b::before {
    width: 80%;
  }

  .section-b .content-1 h2 {
    font-size: 64px;
  }

  .section-b .content-2 {
    padding-left: 97px;
  }

  .section-b .content-2 h2 {
    width: 80%;
    font-size: 64px;
  }

  .section-c .content-1 .content-wrap {
    padding: 70px 105px;
    width: 82%;
  }

  .section-c .content-1 .content-wrap h2 {
    font-size: 64px;
  }

  .section-c .content-1 .content-wrap ul {
    width: 44%;
  }

  .section-d {
    padding-top: 150px;
    padding-bottom: 100px;
  }

  .section-d .content-1 h2 {
    font-size: 64px;
  }

  .section-e {
    padding-bottom: 150px;
  }

  .section-e .content-1 .wrap h2 {
    font-size: 64px;
  }

  .section-e .content-1::before {
    left: -9%;
    background-size: 100%;
  }

  .section-e .content-1::after {
    right: -11%;
    background-size: 100%;
  }

  .section-e .content-1 .wrap {
    background-size: cover;
  }

  .section-e .content-1 .wrap .slider-2 .owl-nav {
    width: 74%;
  }

  .section-e .content-1 .wrap .box {
    width: 60%;
  }

  .section-f {
    padding-bottom: 137px;
  }

  .section-f .content-1 h2 {
    font-size: 64px;
  }

  .section-f .content-1 p {
    font-size: 28px;
    width: 88%;
  }

  .section-footer .content-1 .box {
    gap: 19px;
  }

  .section-footer .content-6 .wrap {
    display: flex;
    gap: 35px;
  }

  .section-footer .content-7 {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 80px;
  }

  .section-footer .content-7 a:hover {
    animation: zoomin 1s ease 2;
  }



  /* ****************** inner page css ************ */

  .layout-section {
    padding: 100px 15px;
  }

  .layout-section h1 {
    font-size: 65px;
    border-radius: 50px 0px 50px 0px;
    padding: 10px 30px;
    margin-bottom: 50px;
  }

  .layout-section h2 {
    font-size: 40px;
    margin: 30px 0px;
  }

  .layout-section h3 {
    font-size: 25px;
  }

  .layout-section p {
    font-size: 18px;
    padding-bottom: 30px;
  }


  .layout-section ul li {
    font-size: 18px;
    padding-left: 28px;
  }

  .layout-section ul li:not(:last-child) {
    margin-bottom: 5px;
  }

  .layout-section ul li::before {
    width: 13px;
    height: 13px;
    top: 10px;
  }

  .layout-section .inner-image {
    width: calc(45% + 30px);
  }

  .layout-section .inner-box-1 {
    gap: 30px;
  }

  .gallerydiv {
    width: 30%;
  }

  .gallerydiv .img_thumb a {
    height: 250px;
  }

  .gallery-list {
    gap: 20px;
  }



  .layout-section .testi-box {
    border-radius: 20px;
    padding: 20px 50px;
  }

  .layout-section .testi-box:not(:last-child) {
    margin-bottom: 30px;
  }

  .layout-section .testi-box p {
    padding-top: 50px;
    padding-bottom: 15px;
  }

  .layout-section .testi-box h3 {
    font-size: 18px;
  }

  .layout-section .testi-box img {
    padding: 5px 20px;
  }











}

/* ie */
/* FireFox */
@-moz-document url-prefix() {}

/* ===== Thorne Boat Services - inner pages (appended to stylesheet.css). Home is never touched: every rule is scoped to .tb-* ===== */
:root{
  --lf-primary:#251d71;      /* navy: Home top bar, headings */
  --lf-accent:#be2913;       /* red: Home nav bar, buttons */
  --lf-dark:#161050;
  --lf-text:#3b3b52;
  --lf-bg:#f4f5fb;
  --lf-card:#ffffff;
  --lf-font-head:'Playfair',serif;
  --lf-font-body:'Poppins',sans-serif;
  --lf-radius:18px;
  --lf-shadow:0 18px 40px -22px color-mix(in srgb,var(--lf-primary) 55%,transparent);
  --lf-shadow-hover:0 26px 50px -22px color-mix(in srgb,var(--lf-primary) 65%,transparent);
}
html{scroll-behavior:smooth}
.tb-page{font-family:var(--lf-font-body);color:var(--lf-text);background:var(--lf-bg);overflow:hidden}
.tb-page *{box-sizing:border-box}
.tb-page img{max-width:100%;height:auto}
.tb-page a{transition:color .25s ease,background-color .25s ease,box-shadow .25s ease,transform .25s ease}

/* ---------- intro band ---------- */
.tb-hero{position:relative;padding:64px 0 74px;color:#fff;background:linear-gradient(120deg,var(--lf-dark) 0%,var(--lf-primary) 58%,color-mix(in srgb,var(--lf-primary) 70%,var(--lf-accent)) 120%)}
.tb-hero::before{content:"";position:absolute;inset:0;background:url(../images/anchor.webp) no-repeat right 6% center/auto 130%;opacity:.07;pointer-events:none}
.tb-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:14px;background:url(../images/rope.webp) repeat-x center/auto 14px}
.tb-hero .container{position:relative;z-index:1}
.tb-crumbs{margin:0 0 14px;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,#fff 72%,transparent)}
.tb-crumbs a{color:#fff;text-decoration:none;border-bottom:1px solid color-mix(in srgb,#fff 40%,transparent)}
.tb-crumbs a:hover{color:#fff;border-color:#fff}
.tb-crumbs i{font-size:10px;margin:0 8px;opacity:.7}
.tb-hero h1{margin:0;font-family:var(--lf-font-head);font-weight:700;font-size:clamp(2.1rem,4.4vw,3.8rem);line-height:1.12;color:#fff}
.tb-hero h1::after{content:"";display:block;width:84px;height:4px;margin-top:20px;border-radius:3px;background:var(--lf-accent)}
.tb-lead{max-width:none;margin:22px 0 0;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.7;color:color-mix(in srgb,#fff 90%,transparent)}
.tb-lead b,.tb-lead strong{color:#fff}

/* ---------- body wrappers ---------- */
.tb-body{padding:56px 0 20px}
.tb-body .container{max-width:1560px}
.tb-h2{position:relative;margin:0 0 22px;padding-bottom:14px;font-family:var(--lf-font-head);font-weight:700;font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.2;color:var(--lf-primary)}
.tb-h2::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--lf-accent),var(--lf-primary))}
.tb-text p{margin:0 0 16px;font-size:18px;line-height:1.8;color:var(--lf-text)}
.tb-text a,.tb-rail a.tb-inline{color:var(--lf-accent);font-weight:500;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--lf-accent) 40%,transparent)}
.tb-text a:hover{color:var(--lf-primary);border-color:var(--lf-primary)}

/* ---------- cards / grids ---------- */
.tb-grid{display:grid;gap:26px}
.tb-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tb-grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tb-grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tb-card{position:relative;display:flex;flex-direction:column;height:100%;background:var(--lf-card);border-radius:var(--lf-radius);box-shadow:var(--lf-shadow);border:1px solid color-mix(in srgb,var(--lf-primary) 8%,transparent);overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}
.tb-card:hover{transform:translateY(-6px);box-shadow:var(--lf-shadow-hover)}
.tb-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--lf-accent),var(--lf-primary));transform:scaleX(.18);transform-origin:left;transition:transform .45s ease}
.tb-card:hover::before{transform:scaleX(1)}

/* service tiles (list items) */
.tb-tile{display:flex;flex-direction:row;align-items:flex-start;gap:18px;padding:26px 24px}
.tb-tile .tb-num{flex:0 0 auto;position:relative;display:flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:color-mix(in srgb,var(--lf-primary) 8%,#fff);color:var(--lf-primary);font-size:24px;transition:background-color .3s ease,color .3s ease,transform .3s ease}
.tb-tile:hover .tb-num{background:var(--lf-accent);color:#fff;transform:rotate(-8deg) scale(1.05)}
.tb-tile .tb-num small{position:absolute;top:-4px;right:-6px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--lf-primary);color:#fff;font-size:11px;font-weight:600}
.tb-tile p{margin:0;align-self:center;font-size:17px;line-height:1.6;font-weight:500;color:var(--lf-dark)}

/* note strip */
.tb-note{display:flex;align-items:center;gap:22px;margin:34px 0 0;padding:26px 30px;border-radius:var(--lf-radius);background:linear-gradient(120deg,color-mix(in srgb,var(--lf-primary) 7%,#fff),#fff);border:1px solid color-mix(in srgb,var(--lf-primary) 12%,transparent);border-left:6px solid var(--lf-accent);box-shadow:var(--lf-shadow)}
.tb-note i{flex:0 0 auto;font-size:34px;color:var(--lf-accent)}
.tb-note p{margin:0;font-size:18px;line-height:1.7;color:var(--lf-dark);font-weight:500}

/* link cards (other services) */
.tb-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.tb-link figure{position:relative;margin:0;aspect-ratio:3/2;overflow:hidden;background:var(--lf-bg)}
.tb-link figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.tb-link:hover figure img{transform:scale(1.08)}
.tb-link figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,color-mix(in srgb,var(--lf-dark) 70%,transparent))}
.tb-link .tb-lab{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;font-family:var(--lf-font-head);font-size:1.35rem;font-weight:700;color:var(--lf-primary)}
.tb-link .tb-lab i{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--lf-accent);color:#fff;font-size:15px;transition:transform .3s ease,background-color .3s ease}
.tb-link:hover .tb-lab{color:var(--lf-accent)}
.tb-link:hover .tb-lab i{transform:translateX(5px);background:var(--lf-primary)}

/* ---------- detail pages: article + rail ---------- */
.tb-split{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:34px;align-items:start}
.tb-article{padding:40px 44px}
.tb-article .tb-h2{margin-top:6px}
.tb-article .tb-h2:first-child{margin-top:0}
.tb-article>.tb-text:last-child p:last-child{margin-bottom:0}
.tb-checks{list-style:none;margin:6px 0 22px;padding:0;display:grid;gap:12px}
.tb-checks li{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:14px;background:var(--lf-bg);font-size:17px;line-height:1.65;color:var(--lf-dark);transition:transform .3s ease,background-color .3s ease}
.tb-checks li:hover{transform:translateX(6px);background:color-mix(in srgb,var(--lf-primary) 9%,#fff)}
.tb-checks li::before{content:"\f058";font-family:"Font Awesome 7 Free";font-weight:900;flex:0 0 auto;margin-top:1px;font-size:20px;line-height:1.4;color:var(--lf-accent)}
.tb-checks li strong{display:block;margin-bottom:2px;font-family:var(--lf-font-head);font-size:1.2rem;color:var(--lf-primary)}
.tb-feat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:8px 0 6px}
.tb-feat div{padding:22px 22px 24px;border-radius:16px;background:var(--lf-bg);border-bottom:4px solid var(--lf-accent);transition:transform .3s ease,box-shadow .3s ease}
.tb-feat div:hover{transform:translateY(-5px);box-shadow:var(--lf-shadow)}
.tb-feat strong{display:block;margin-bottom:8px;font-family:var(--lf-font-head);font-size:1.3rem;color:var(--lf-primary)}
.tb-feat span{display:block;font-size:16px;line-height:1.65;color:var(--lf-text)}
.tb-figure{margin:24px 0 8px}
.tb-figure img{display:block;width:100%;border-radius:16px;box-shadow:var(--lf-shadow)}

.tb-rail{position:sticky;top:130px;display:grid;gap:22px}
.tb-call{padding:32px 30px;border-radius:var(--lf-radius);color:#fff;text-align:center;background:linear-gradient(135deg,var(--lf-primary),var(--lf-dark));box-shadow:var(--lf-shadow)}
.tb-call .tb-ico{display:flex;align-items:center;justify-content:center;width:70px;height:70px;margin:0 auto 14px;border-radius:50%;background:var(--lf-accent);font-size:26px;animation:tb-ring 4.5s ease-in-out infinite}
.tb-call p{margin:0 0 6px;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,#fff 75%,transparent)}
.tb-call a.tb-tel{display:block;margin-bottom:20px;font-family:var(--lf-font-head);font-size:1.9rem;font-weight:700;color:#fff;text-decoration:none}
.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 36px;border:2px solid var(--lf-accent);border-radius:50px;background:var(--lf-accent);color:#fff;font-family:var(--lf-font-body);font-size:17px;font-weight:600;text-decoration:none;box-shadow:0 12px 24px -12px var(--lf-accent)}
.tb-btn i{transition:transform .3s ease}
.tb-btn:hover{background:#fff;color:var(--lf-accent);transform:translateY(-3px);text-decoration:none}
.tb-btn:hover i{transform:translateX(5px)}
.tb-btn.alt{background:transparent;border-color:#fff;color:#fff;box-shadow:none}
.tb-btn.alt:hover{background:#fff;color:var(--lf-primary)}
.tb-more{padding:28px 28px 22px}
.tb-more h3{margin:0 0 14px;padding-bottom:12px;font-family:var(--lf-font-head);font-size:1.4rem;font-weight:700;color:var(--lf-primary);border-bottom:2px solid color-mix(in srgb,var(--lf-primary) 12%,transparent)}
.tb-more ul{list-style:none;margin:0;padding:0}
.tb-more li a{display:flex;align-items:center;justify-content:space-between;padding:12px 4px;border-bottom:1px dashed color-mix(in srgb,var(--lf-primary) 16%,transparent);font-size:16px;font-weight:500;color:var(--lf-dark);text-decoration:none}
.tb-more li:last-child a{border-bottom:0}
.tb-more li a i{font-size:12px;color:var(--lf-accent);transition:transform .3s ease}
.tb-more li a:hover{color:var(--lf-accent);padding-left:10px}
.tb-more li a:hover i{transform:translateX(4px)}

/* ---------- CTA band ---------- */
.tb-cta{margin:56px 0 0;padding:58px 0;color:#fff;background:linear-gradient(120deg,var(--lf-accent),color-mix(in srgb,var(--lf-accent) 60%,var(--lf-dark)))}
.tb-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.tb-cta h2{margin:0 0 8px;font-family:var(--lf-font-head);font-weight:700;font-size:clamp(1.6rem,3vw,2.5rem);color:#fff}
.tb-cta p{margin:0;max-width:none;font-size:18px;line-height:1.7;color:color-mix(in srgb,#fff 92%,transparent)}
.tb-cta p a{color:#fff;font-weight:600;border-bottom:1px solid #fff;text-decoration:none}
.tb-cta .tb-actions{display:flex;gap:16px;flex-wrap:wrap}
.tb-cta .tb-btn{background:#fff;border-color:#fff;color:var(--lf-accent)}
.tb-cta .tb-btn:hover{background:var(--lf-primary);border-color:var(--lf-primary);color:#fff}
.tb-cta .tb-btn.alt{background:transparent;color:#fff}
.tb-cta .tb-btn.alt:hover{background:#fff;color:var(--lf-accent)}
.tb-cta .tb-copy{flex:1 1 520px}

/* ---------- testimonials ---------- */
.tb-quote{padding:34px 32px 30px}
.tb-quote::after{content:"\201C";position:absolute;right:24px;top:6px;font-family:var(--lf-font-head);font-size:7rem;line-height:1;color:color-mix(in srgb,var(--lf-primary) 8%,transparent);pointer-events:none}
.tb-quote img{display:block;width:150px;margin-bottom:16px}
.tb-quote p{position:relative;flex:1 1 auto;margin:0 0 20px;font-size:17px;line-height:1.8;color:var(--lf-text);font-style:italic}
.tb-quote h3{margin:0;padding-top:16px;border-top:2px solid color-mix(in srgb,var(--lf-primary) 12%,transparent);font-family:var(--lf-font-head);font-size:1.2rem;font-weight:700;color:var(--lf-primary)}

/* ---------- contact ---------- */
.tb-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:34px;align-items:start}
.tb-details{padding:36px 36px 30px}
.tb-details dl{display:flex;gap:16px;align-items:flex-start;margin:0 0 20px;padding-bottom:20px;border-bottom:1px dashed color-mix(in srgb,var(--lf-primary) 18%,transparent)}
.tb-details dl:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.tb-details dl i{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--lf-primary) 9%,#fff);color:var(--lf-accent);font-size:18px}
.tb-details dt{margin:0 0 4px;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--lf-primary) 70%,#fff)}
.tb-details dd{margin:0;font-size:18px;line-height:1.6;color:var(--lf-dark);font-weight:500}
.tb-details dd a{color:var(--lf-dark);text-decoration:none}
.tb-details dd a:hover{color:var(--lf-accent)}
.tb-formcard{padding:36px 36px 30px}
.tb-formcard .form-control{border-radius:12px;border:1px solid color-mix(in srgb,var(--lf-primary) 20%,transparent);padding:14px 16px;height:auto;font-family:var(--lf-font-body)}
.tb-formcard .form-control:focus{border-color:var(--lf-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--lf-primary) 12%,transparent)}
.tb-formcard button[type=submit],.tb-formcard input[type=submit]{border:0;border-radius:50px;padding:14px 38px;background:var(--lf-accent);color:#fff;font-weight:600;transition:transform .3s ease,background-color .3s ease}
.tb-formcard button[type=submit]:hover,.tb-formcard input[type=submit]:hover{background:var(--lf-primary);transform:translateY(-3px)}
.tb-mapcard{margin-top:34px;padding:34px 34px 14px}
.tb-mapcard iframe{display:block;width:100%;min-height:420px;border:0;border-radius:14px}

/* ---------- gallery ---------- */
.tb-gcard{padding:30px;border-radius:28px;background:#fff;box-shadow:var(--lf-shadow)}
.tb-gcard .db-gallery-wrapper{max-width:none;margin:0 auto}
.tb-gcard .db-gallery-wrapper a.jg-entry{overflow:hidden;border-radius:14px;box-shadow:0 12px 26px -16px color-mix(in srgb,var(--lf-primary) 60%,transparent)}
.tb-gcard .db-gallery-wrapper a.jg-entry img{width:100%!important;height:100%!important;top:0!important;left:0!important;margin:0!important;object-fit:cover;transition:transform .7s ease}
.tb-gcard .db-gallery-wrapper a.jg-entry:hover img{transform:scale(1.08)}
.tb-gcard .db-gallery-wrapper a.jg-entry::after{content:"+";position:absolute;left:50%;top:50%;z-index:3;display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:var(--lf-accent);color:#fff;font-size:30px;line-height:1;opacity:0;transform:scale(.6);transition:opacity .3s ease,transform .3s ease}
.tb-gcard .db-gallery-wrapper a.jg-entry::before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,transparent 30%,color-mix(in srgb,var(--lf-dark) 70%,transparent));opacity:0;transition:opacity .35s ease}
.tb-gcard .db-gallery-wrapper a.jg-entry:hover::before{opacity:1}
.tb-gcard .db-gallery-wrapper a.jg-entry:hover::after{opacity:1;transform:scale(1)}
.tb-gallery-inline{margin:26px 0 6px;padding:14px;border-radius:20px;background:var(--lf-bg)}
.tb-gallery-inline .db-gallery-wrapper a.jg-entry{overflow:hidden;border-radius:12px}
.tb-gallery-inline .db-gallery-wrapper a.jg-entry img{width:100%!important;height:100%!important;top:0!important;left:0!important;margin:0!important;object-fit:cover;transition:transform .7s ease}
.tb-gallery-inline .db-gallery-wrapper a.jg-entry:hover img{transform:scale(1.08)}

/* ---------- scroll animations (only when JS is on and motion is allowed) ---------- */
.tb-js .tb-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease var(--d,0ms),transform .7s cubic-bezier(.2,.7,.2,1) var(--d,0ms);will-change:opacity,transform}
.tb-js .tb-reveal.tb-in{opacity:1;transform:none}
.tb-img{overflow:hidden;border-radius:16px}
.tb-js .tb-img img{clip-path:inset(0 0 100% 0);transform:scale(1.12);transition:clip-path .9s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform 1.2s ease var(--d,0ms)}
.tb-js .tb-img.tb-in img{clip-path:inset(0 0 0 0);transform:scale(1);transition:clip-path .9s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform .7s ease}
.tb-js .tb-link:hover figure.tb-img.tb-in img{transform:scale(1.08)}
@keyframes tb-ring{0%,88%,100%{transform:rotate(0)}91%{transform:rotate(-14deg)}94%{transform:rotate(12deg)}97%{transform:rotate(-8deg)}}

/* ---------- responsive ---------- */
@media (max-width:1199px){
  .tb-split{grid-template-columns:minmax(0,1fr)}
  .tb-rail{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:991px){
  .tb-hero{padding:48px 0 58px}
  .tb-body{padding:40px 0 10px}
  .tb-grid.c3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-feat{grid-template-columns:minmax(0,1fr)}
  .tb-contact{grid-template-columns:minmax(0,1fr)}
  .tb-article{padding:30px 28px}
}
@media (max-width:767px){
  .tb-hero{padding:38px 0 48px}
  .tb-hero::before{opacity:.05;background-size:auto 90%}
  .tb-grid.c3,.tb-grid.c2,.tb-grid.c4{grid-template-columns:minmax(0,1fr)}
  .tb-grid{gap:18px}
  .tb-rail{grid-template-columns:minmax(0,1fr)}
  .tb-text p,.tb-note p,.tb-cta p{font-size:16px}
  .tb-tile{padding:20px 18px}
  .tb-note{flex-direction:column;align-items:flex-start;gap:12px;padding:22px 20px}
  .tb-article,.tb-details,.tb-formcard,.tb-quote{padding:24px 20px}
  .tb-mapcard{padding:22px 16px 10px}
  .tb-mapcard iframe{min-height:300px}
  .tb-gcard{padding:12px;border-radius:20px}
  .tb-cta{margin-top:40px;padding:42px 0}
  .tb-cta .tb-actions{width:100%}
  .tb-cta .tb-btn{width:100%}
  .tb-call a.tb-tel{font-size:1.6rem}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .tb-page *,.tb-page *::before,.tb-page *::after{animation:none!important;transition:none!important}
  .tb-js .tb-reveal,.tb-js .tb-img,.tb-js .tb-img img{opacity:1!important;transform:none!important;clip-path:none!important}
}


/* Privacy policy layout only. Colours come from this site's :root theme variables (--lf-primary, --lf-accent, --lf-dark, --lf-text, --lf-bg); never hard-code a colour here. */
.pp-page .pp-card{background:#fff;border-top:4px solid var(--lf-primary);border-radius:18px;box-shadow:0 10px 30px color-mix(in srgb, var(--lf-dark) 8%, transparent);padding:36px;margin:28px 0 40px;color:var(--lf-text);line-height:1.75;overflow-wrap:anywhere}
.pp-page .pp-card h2{position:relative;color:var(--lf-dark);font-size:1.5rem;margin:32px 0 16px;padding-bottom:10px}
.pp-page .pp-card h2:first-child{margin-top:0}
.pp-page .pp-card h2::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--lf-primary),var(--lf-accent))}
.pp-page .pp-card p{margin:0 0 14px}
.pp-page .pp-card ul{margin:0 0 16px;padding-left:22px}
.pp-page .pp-card li{margin-bottom:8px}
.pp-page .pp-card li::marker{color:var(--lf-primary)}
.pp-page .pp-card strong{color:var(--lf-dark)}
.pp-page .pp-card a{color:var(--lf-primary);text-decoration:none;font-weight:500}
.pp-page .pp-card a:hover{text-decoration:underline}
.pp-page .pp-card .privacy-policy{background:var(--lf-bg);border-radius:14px;padding:20px 24px;margin-bottom:8px}
@media (max-width:767px){.pp-page .pp-card{padding:20px;margin:20px 0 28px;font-size:.95rem}.pp-page .pp-card h2{font-size:1.25rem;margin-top:24px}.pp-page .pp-card .privacy-policy{padding:16px}}
.pp-page .pp-card ul{display:block;list-style:disc;padding-left:22px;margin:0 0 16px}
.pp-page .pp-card ul li{display:list-item;color:var(--lf-text);font-weight:400;font-size:inherit;line-height:1.7;margin:0 0 8px;padding:0}
.pp-page .pp-card ul li::before{content:none;display:none}
.pp-page .pp-card ul li a{overflow-wrap:anywhere;word-break:normal}
.pp-page .pp-card p,.pp-page .pp-card li{font-size:16px}
@media (max-width:991px){.pp-page .pp-hero{padding:30px 28px}.pp-page .pp-card{padding:28px}}
@media (max-width:767px){
.pp-page .pp-hero{padding:22px 18px;border-radius:16px;margin-bottom:18px}
.pp-page .pp-hero h1{font-size:26px;margin-bottom:0}
.pp-page .pp-card{padding:20px 16px;margin:0 0 26px;border-radius:16px;line-height:1.65}
.pp-page .pp-card .privacy-policy{padding:14px 14px 6px;border-radius:12px;margin:0 -2px 8px}
.pp-page .pp-card h2{font-size:20px;margin:24px 0 12px;padding-bottom:8px}
.pp-page .pp-card p,.pp-page .pp-card li{font-size:15px;line-height:1.65}
.pp-page .pp-card ul{padding-left:18px}
.pp-page .pp-card ul li{margin-bottom:6px}
}
@media (max-width:400px){.pp-page .pp-card{padding:18px 14px}.pp-page .pp-card .privacy-policy{margin:0 0 8px}}

/* privacy policy: 2-column text on desktop (full width, no narrow column) */
.tb-page .pp-page .pp-card{margin:0 0 20px;border-radius:var(--lf-radius)}
@media (min-width:992px){.tb-page .pp-page .pp-cols{column-count:2;column-gap:56px}.tb-page .pp-page .pp-cols h2{break-after:avoid}.tb-page .pp-page .pp-cols p,.tb-page .pp-page .pp-cols li{break-inside:avoid-column}}


/* ===== inner pages: shorter slider banner (Home keeps its full-height slider) ===== */
.slider-section.layout-slider .content-1 .carousel-item img{width:100%;height:clamp(300px,24vw,460px);object-fit:cover}
.slider-section.layout-slider .content-1 .caption{bottom:34px}
.slider-section.layout-slider .content-1 .caption h1{font-size:clamp(36px,3.8vw,64px);line-height:1.12;margin-bottom:12px}
.slider-section.layout-slider .content-1 .caption p{font-size:clamp(16px,1.4vw,24px)}
.slider-section.layout-slider .content-1 .caption .btn-outer{margin-top:14px!important}
@media (max-width:991px){
  .slider-section.layout-slider .content-1 .carousel-item img{height:auto;max-height:none}
  .slider-section.layout-slider .content-1 .caption{bottom:0}
  .slider-section.layout-slider .content-1 .caption h1{font-size:38px}
}
@media (max-width:767px){
  .slider-section.layout-slider .content-1 .caption h1{font-size:30px}
  .slider-section.layout-slider .content-1 .caption p{font-size:16px}
}


/* cards in split/contact layouts keep their own height (no stretched empty space) */
.tb-split>.tb-article,.tb-contact>.tb-card{height:auto}
.tb-contact{align-items:start}


/* smaller images on inner pages */
.tb-figure{max-width:620px}
.tb-figure img{max-height:360px;object-fit:cover}
.slider-section.layout-slider .content-1 .caption{bottom:24px}

.slider-section.layout-slider .content-1 .caption h1{color:#fff}
@media (max-width:991px){.slider-section.layout-slider .content-1 .caption h1{color:#251d71}}


/* inner slider: stronger overlay, readable text, breadcrumb */
.slider-section.layout-slider .content-1 .carousel-inner::before{background:linear-gradient(180deg,rgba(8,6,34,.74) 0%,rgba(8,6,34,.86) 100%)}
.slider-section.layout-slider .content-1 .caption h1,.slider-section.layout-slider .content-1 .caption p{text-shadow:0 2px 14px rgba(0,0,0,.6)}
.slider-section.layout-slider .content-1 .caption .tb-crumbs{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:0 0 12px;font-family:"Poppins",sans-serif;font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.85);text-shadow:0 2px 10px rgba(0,0,0,.6)}
.slider-section.layout-slider .content-1 .caption .tb-crumbs a{color:#fff;border-bottom:1px solid rgba(255,255,255,.45);text-decoration:none}
.slider-section.layout-slider .content-1 .caption .tb-crumbs a:hover{border-color:#fff}
.slider-section.layout-slider .content-1 .caption .tb-crumbs i{font-size:10px;opacity:.7}
@media (max-width:991px){
  .slider-section.layout-slider .content-1 .carousel-inner::before{background:linear-gradient(180deg,rgba(8,6,34,.55),rgba(8,6,34,.7))}
  .slider-section.layout-slider .content-1 .caption h1,.slider-section.layout-slider .content-1 .caption p{text-shadow:none}
  .slider-section.layout-slider .content-1 .caption .tb-crumbs{color:#4a4a63;text-shadow:none}
  .slider-section.layout-slider .content-1 .caption .tb-crumbs a{color:#251d71;border-color:rgba(37,29,113,.4)}
}


/* no underline on hover (cards, links, buttons, slider) + more breathing room */
.tb-page a:hover,.tb-page a:focus,.tb-page a:active,.tb-link:hover,.tb-link:hover *,.slider-section a:hover,.slider-section a:focus{text-decoration:none!important}
.tb-text a:hover,.tb-cta p a:hover,.tb-crumbs a:hover{text-decoration:none}
@media (min-width:992px){
  .slider-section.layout-slider .content-1 .carousel-item img{height:clamp(360px,28vw,520px)}
  .slider-section.layout-slider .content-1 .caption{bottom:64px}
  .tb-body{padding-top:96px}
}
@media (min-width:768px) and (max-width:991px){.tb-body{padding-top:64px}}


/* footer built-by logo: smaller */
.copyright-section img{width:56px;height:auto;vertical-align:middle}


/* ===== MOTION: scroll reveal, hero entrance, progress bar, button shine (all off for reduced motion) ===== */
body{overflow-x:clip}
.scroll-progress{position:fixed;top:0;left:0;z-index:1100;height:3px;width:100%;background:#be2913;transform-origin:0 50%;transform:scaleX(0);pointer-events:none}
@keyframes mo-rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.slider-section .content-1 .caption>*{animation:mo-rise .9s cubic-bezier(.2,.7,.2,1) both}
.slider-section .content-1 .caption>:nth-child(1){animation-delay:.15s}
.slider-section .content-1 .caption>:nth-child(2){animation-delay:.3s}
.slider-section .content-1 .caption>:nth-child(3){animation-delay:.45s}
.slider-section .content-1 .caption>:nth-child(4){animation-delay:.6s}
/* Home / footer reveal (classes are added by the script, saved page content is untouched) */
.mo-js .mo-reveal{opacity:0;transform:translateY(36px);transition:opacity .8s ease var(--mo-d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--mo-d,0s)}
.mo-js .mo-reveal.mo-left{transform:translateX(-48px)}
.mo-js .mo-reveal.mo-right{transform:translateX(48px)}
.mo-js .mo-reveal.mo-zoom{transform:scale(.94)}
.mo-js .mo-reveal.mo-in{opacity:1;transform:none}
/* inner pages: directions on the existing reveal */
.tb-js .tb-reveal.tb-left{transform:translateX(-48px)}
.tb-js .tb-reveal.tb-right{transform:translateX(48px)}
.tb-js .tb-reveal.tb-zoom{transform:scale(.94)}
.tb-js .tb-reveal.tb-in{opacity:1;transform:none}
/* buttons: light sweep + lift (from the reference site) */
.btn-outer a,.tb-btn,.tb-formcard button[type=submit],.tb-formcard input[type=submit]{position:relative;overflow:hidden;isolation:isolate;transition:transform .3s cubic-bezier(.2,.7,.2,1),background-color .25s ease,color .25s ease,box-shadow .25s ease,border-color .25s ease}
.btn-outer a::after,.tb-btn::after{content:"";position:absolute;top:0;bottom:0;left:-75%;width:50%;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-20deg);transition:left .7s cubic-bezier(.2,.7,.2,1)}
.btn-outer a:hover::after,.btn-outer a:focus-visible::after,.tb-btn:hover::after,.tb-btn:focus-visible::after{left:130%}
.btn-outer a:hover,.tb-btn:hover,.tb-formcard button[type=submit]:hover,.tb-formcard input[type=submit]:hover{transform:translateY(-2px)}
.btn-outer a:active,.tb-btn:active{transform:translateY(0)}
@media (prefers-reduced-motion:reduce){
  .slider-section .content-1 .caption>*{animation:none}
  .mo-js .mo-reveal{opacity:1;transform:none}
  .scroll-progress{display:none}
  .btn-outer a:hover,.tb-btn:hover{transform:none}
  .btn-outer a::after,.tb-btn::after{display:none}
}


/* header logo: no box, modern floating badge */
header .nav-section .logo-container img{border-radius:0;filter:drop-shadow(0 3px 8px rgba(0,0,0,.28))}


/* sticky header: top bar scrolls away, the navigation bar stays; logo sits inside the bar */
header{position:sticky;top:calc(-1 * var(--tb-topbar-h,50px));z-index:1030;transition:box-shadow .3s ease}
header.is-scrolled{box-shadow:0 10px 30px rgba(8,6,34,.3)}
@media (min-width:992px){
  header .nav-section{padding-top:8px;padding-bottom:8px}
  header .nav-section>.container{display:flex;align-items:center}
  header .nav-section .logo-container{position:static;top:auto;left:auto;width:auto;flex:0 0 auto;padding:0;margin:0 28px 0 0}
  header .nav-section .logo-container img{width:auto;height:50px;border-radius:0}
  header .nav-section>.container>.row{flex:1 1 auto;margin:0}
  header .nav-section>.container>.row>.content-1{padding:0}
}


/* sticky state: hide the call ribbon so the pinned bar stays clean */
header .top-bar .content-2 .box{transition:opacity .25s ease,visibility .25s ease}
header.is-scrolled .top-bar .content-2 .box{opacity:0;visibility:hidden;pointer-events:none}


/* mobile header: logo inside the bar, menu drops down from the bar */
@media (max-width:991px){
  header .nav-section{padding-top:8px;padding-bottom:8px}
  header .nav-section>.container{position:static;display:flex;align-items:center}
  header .nav-section .logo-container{position:static;top:auto;left:auto;width:auto;flex:0 0 auto;padding:0;margin:0 12px 0 0}
  header .nav-section .logo-container img{width:auto;height:44px;border-radius:0}
  header .nav-section>.container>.row{flex:1 1 auto;margin:0}
  header .nav-section>.container>.row>.content-1{padding:0;display:block;width:100%}
  header .nav-section .navbar{position:static;justify-content:flex-end}
  header .nav-section .navbar-collapse{position:absolute;left:0;right:0;top:100%;z-index:6;background:#be2913;padding:10px 24px 22px;box-shadow:0 18px 30px rgba(8,6,34,.3);max-height:calc(100vh - 90px);overflow:auto}
  header .nav-section .content-1 .navbar-nav{gap:4px}
  header .nav-section>.container>.row>.content-1{position:static}
}


/* logo: big at the top of the page, shrinks smoothly once the header is pinned (bar height never changes) */
header .nav-section .logo-container{position:relative;z-index:5;display:flex;align-items:flex-start;height:50px}
header .nav-section .logo-container a{display:block;line-height:0}
header .nav-section .logo-container img{display:block;width:auto;height:82px;margin-top:2px;transition:height .35s ease,margin-top .35s ease}
header.is-scrolled .nav-section .logo-container img{height:50px;margin-top:0}
@media (max-width:991px){
  header .nav-section .logo-container{height:44px}
  header .nav-section .logo-container img{height:58px;margin-top:2px}
  header.is-scrolled .nav-section .logo-container img{height:44px;margin-top:0}
}
@media (prefers-reduced-motion:reduce){header .nav-section .logo-container img{transition:none}}



/* ===== privacy policy v2: highlighted details band + numbered section cards ===== */
.tb-page .pp-details{position:relative;overflow:hidden;margin:0 0 36px;padding:40px 44px;border-radius:var(--lf-radius);color:#fff;background:linear-gradient(125deg,var(--lf-dark) 0%,var(--lf-primary) 65%,color-mix(in srgb,var(--lf-primary) 65%,var(--lf-accent)) 130%);box-shadow:var(--lf-shadow)}
.tb-page .pp-details::after{content:"";position:absolute;inset:0;background:url(../images/anchor.webp) no-repeat right 4% center/auto 125%;opacity:.07;pointer-events:none}
.tb-page .pp-details>*{position:relative;z-index:1}
.tb-page .pp-details h2{margin:0 0 20px;padding:0;font-family:var(--lf-font-head);font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;color:#fff}
.tb-page .pp-details h2::after{display:none}
.tb-page .pp-details .privacy-policy{column-count:2;column-gap:56px;background:transparent;padding:0;margin:0}
.tb-page .pp-details p,.tb-page .pp-details li{break-inside:avoid;margin:0 0 12px;font-size:17px;line-height:1.7;color:color-mix(in srgb,#fff 92%,transparent)}
.tb-page .pp-details ul{margin:0;padding-left:20px;list-style:disc}
.tb-page .pp-details li::marker{color:var(--lf-accent)}
.tb-page .pp-details a{color:#fff;font-weight:600;text-decoration:none;border-bottom:1px solid color-mix(in srgb,#fff 50%,transparent)}
.tb-page .pp-details a:hover{border-color:#fff}
.tb-page .pp-grid{counter-reset:pp;column-count:2;column-gap:30px}
.tb-page .pp-sec{break-inside:avoid;counter-increment:pp;position:relative;margin:0 0 30px;padding:34px 34px 28px;background:#fff;border-radius:var(--lf-radius);border:1px solid color-mix(in srgb,var(--lf-primary) 8%,transparent);border-top:4px solid var(--lf-accent);box-shadow:var(--lf-shadow);transition:transform .35s ease,box-shadow .35s ease}
.tb-page .pp-sec:hover{transform:translateY(-4px);box-shadow:var(--lf-shadow-hover)}
.tb-page .pp-sec h2{display:flex;align-items:center;gap:14px;margin:0 0 16px;padding:0;font-family:var(--lf-font-head);font-size:1.45rem;font-weight:700;line-height:1.25;color:var(--lf-primary)}
.tb-page .pp-sec h2::after{display:none}
.tb-page .pp-sec h2::before{content:counter(pp,decimal-leading-zero);flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--lf-primary);color:#fff;font-family:var(--lf-font-body);font-size:15px;font-weight:600}
.tb-page .pp-sec p,.tb-page .pp-sec li{margin:0 0 12px;font-size:16px;line-height:1.75;color:var(--lf-text);overflow-wrap:anywhere}
.tb-page .pp-sec ul{margin:0 0 12px;padding-left:20px;list-style:disc}
.tb-page .pp-sec li::marker{color:var(--lf-accent)}
.tb-page .pp-sec a{color:var(--lf-accent);font-weight:500;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--lf-accent) 40%,transparent)}
.tb-page .pp-sec a:hover{color:var(--lf-primary);border-color:var(--lf-primary)}
.tb-page .pp-sec>:last-child{margin-bottom:0}
@media (max-width:991px){
  .tb-page .pp-details{padding:30px 24px}
  .tb-page .pp-details .privacy-policy{column-count:1}
  .tb-page .pp-grid{column-count:1}
}
@media (max-width:767px){
  .tb-page .pp-sec{padding:26px 20px 22px}
  .tb-page .pp-sec h2{font-size:1.25rem;gap:12px}
  .tb-page .pp-sec h2::before{width:40px;height:40px;font-size:14px}
  .tb-page .pp-sec p,.tb-page .pp-sec li,.tb-page .pp-details p,.tb-page .pp-details li{font-size:15.5px}
}
@media (prefers-reduced-motion:reduce){.tb-page .pp-sec:hover{transform:none}}


/* ===== FOOTER v2: modern look (dark gradient, frosted cards, rounded map, hours chips) ===== */
.section-footer{position:relative;overflow:hidden;padding:92px 0 70px;background:radial-gradient(900px 420px at 88% -8%,rgba(190,41,19,.30),transparent 62%),radial-gradient(760px 480px at -4% 108%,rgba(92,74,230,.28),transparent 60%),linear-gradient(160deg,#0b0733 0%,#150f52 55%,#1d1563 100%)}
.section-footer .container>.row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:26px;margin:0}
.section-footer .container>.row>div{width:auto;max-width:none;flex:none;margin:0;padding:0}
.section-footer .content-1{grid-column:span 4}
.section-footer .content-2,.section-footer .content-3{grid-column:span 2}
.section-footer .content-4{grid-column:span 4}
.section-footer .content-5{grid-column:span 3}
.section-footer .content-6{grid-column:span 6}
.section-footer .content-7{grid-column:span 3}
.section-footer .content-1,.section-footer .content-2,.section-footer .content-3,.section-footer .content-6,.section-footer .content-5,.section-footer .content-7{padding:30px 28px;border-radius:22px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.section-footer .content-4{min-height:300px;overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.14);box-shadow:0 22px 44px -22px rgba(0,0,0,.6)}
.section-footer .content-4 iframe{display:block;width:100%;height:100%;min-height:300px;border:0;filter:saturate(.9)}
.section-footer h3{margin:0 0 24px;font-size:24px;line-height:1.2}
.section-footer h3::after{content:"";display:block;width:38px;height:3px;margin-top:12px;border-radius:3px;background:#be2913}
.section-footer h4{font-size:16px;margin:0 0 2px}
.section-footer ul{margin:0}
.section-footer ul li{padding-left:20px;margin-bottom:12px}
.section-footer ul li::before{content:"\f105";font-size:14px;color:#be2913;transition:transform .3s ease}
.section-footer ul li:hover::before{transform:translateY(-50%) translateX(4px)}
.section-footer ul a{display:inline-block;font-weight:300;transition:transform .3s ease,color .25s ease}
.section-footer ul li:hover a{transform:translateX(4px)}
.section-footer .content-1 .box{gap:14px;margin-bottom:18px}
.section-footer .content-1 .box:last-child{margin-bottom:0}
.section-footer .content-1 .box i{flex:0 0 auto;width:42px;height:42px;box-shadow:0 8px 18px -6px rgba(190,41,19,.7);transition:transform .3s ease}
.section-footer .content-1 .box:hover i{transform:rotate(-8deg) scale(1.08)}
.section-footer .content-5,.section-footer .content-6,.section-footer .content-7{margin-top:0}
.section-footer .content-5{display:flex;align-items:center;justify-content:center}
.section-footer .content-5 img{border-radius:0;max-width:100%;height:auto}
.section-footer .content-6 .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.section-footer .content-6 .wrap .box{padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.section-footer .content-6 .wrap p{font-size:15px;line-height:1.5}
.section-footer .content-7{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}
.section-footer .content-7 a{display:inline-block;transition:transform .3s ease}
.section-footer .content-7 a:hover{animation:none;transform:translateY(-4px)}
.copyright-section{background:#080526;border-top:3px solid #be2913;padding:6px 0}
.copyright-section p,.copyright-section p span{color:rgba(255,255,255,.78)}
@media (max-width:1199px){
  .section-footer .container>.row{grid-template-columns:repeat(6,minmax(0,1fr))}
  .section-footer .content-1{grid-column:1/-1}
  .section-footer .content-2,.section-footer .content-3{grid-column:span 3}
  .section-footer .content-4,.section-footer .content-6{grid-column:1/-1}
  .section-footer .content-5,.section-footer .content-7{grid-column:span 3}
}
@media (max-width:767px){
  .section-footer{padding:60px 0 44px}
  .section-footer .container>.row{grid-template-columns:minmax(0,1fr);gap:18px}
  .section-footer .container>.row>div{grid-column:1/-1!important}
  .section-footer .content-1,.section-footer .content-2,.section-footer .content-3,.section-footer .content-5,.section-footer .content-6,.section-footer .content-7{padding:24px 20px}
  .section-footer .content-6 .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){.section-footer ul li:hover a,.section-footer .content-7 a:hover{transform:none}}


/* FOOTER v2 fixes: card padding, map fill, hours grid */
.section-footer .container>.row>.content-1,.section-footer .container>.row>.content-2,.section-footer .container>.row>.content-3,.section-footer .container>.row>.content-5,.section-footer .container>.row>.content-6,.section-footer .container>.row>.content-7{padding:30px 28px}
.section-footer .container>.row>.content-4{position:relative;padding:0}
.section-footer .content-4 iframe{position:absolute;top:0;left:0;width:100%;height:100%}
.section-footer .content-6 .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
.section-footer .content-6 .wrap p{white-space:nowrap}
@media (max-width:767px){
  .section-footer .container>.row>.content-1,.section-footer .container>.row>.content-2,.section-footer .container>.row>.content-3,.section-footer .container>.row>.content-5,.section-footer .container>.row>.content-6,.section-footer .container>.row>.content-7{padding:24px 20px}
  .section-footer .content-6 .wrap p{white-space:normal}
}


/* FOOTER v3 blue: brighter brand blue background */
.section-footer{background:radial-gradient(900px 420px at 90% -10%,rgba(190,41,19,.26),transparent 62%),radial-gradient(760px 480px at -4% 108%,rgba(120,150,255,.22),transparent 60%),linear-gradient(160deg,#1f1a78 0%,#2b2596 50%,#3631b3 100%)}
.section-footer .content-1,.section-footer .content-2,.section-footer .content-3,.section-footer .content-5,.section-footer .content-6,.section-footer .content-7{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16)}
.section-footer .content-6 .wrap .box{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.12)}
.copyright-section{background:#19145f}


/* FOOTER v4: cards 10px radius + faint fill; clear hover colours */
.section-footer .container>.row>.content-1,.section-footer .container>.row>.content-2,.section-footer .container>.row>.content-3,.section-footer .container>.row>.content-5,.section-footer .container>.row>.content-6,.section-footer .container>.row>.content-7{border-radius:10px;background:rgba(255,255,255,.03);border:0;-webkit-backdrop-filter:none;backdrop-filter:none}
.section-footer .container>.row>.content-4{border-radius:10px;border:0}
.section-footer .content-6 .wrap .box{border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}
.section-footer ul a:hover,.section-footer ul a.active,.section-footer .content-1 .box a:hover{color:#ff8a70}
.section-footer ul a::before,.section-footer .content-1 .box a::before{background-color:#ff8a70}
.section-footer ul li:hover::before,.section-footer ul li:has(a:hover)::before,.section-footer ul li:has(a.active)::before{color:#ff8a70}
.copyright-section a{transition:color .25s ease}
.copyright-section a:hover{color:#ff8a70}


/* FOOTER v5: copyright link hover visible; rounded buttons */
.copyright-section .content-1 p a:hover,.copyright-section .content-1 p a:focus{color:#ff8a70}
.copyright-section .content-1 p a{transition:color .25s ease}
.btn-outer a,.global-remove .btn-outer a,.tb-btn,.tb-formcard button[type=submit],.tb-formcard input[type=submit]{border-radius:10px}
.global-remove .btn-outer a::before{border-radius:inherit}


/* PRIVACY single column: keep card look, no 2-column split */
.tb-page .pp-grid,.tb-page .pp-details .privacy-policy{column-count:1!important;-webkit-column-count:1!important;column-gap:0}
.tb-page .pp-grid .pp-sec{width:100%}


/* PRIVACY details hover */
.tb-page .pp-details a{transition:color .25s ease,border-color .25s ease}
.tb-page .pp-details a:hover,.tb-page .pp-details a:focus-visible{color:#ff8a70;border-color:#ff8a70}


/* HEADER v2: logo centred on the bar, nav clear of the call ribbon, no "menu" text on tablet */
header .nav-section .logo-container{align-items:center}
header .nav-section .logo-container img,header.is-scrolled .nav-section .logo-container img{margin-top:0}
@media (min-width:1200px){
  header .nav-section>.container>.row>.content-1{padding-right:195px}
}
@media (max-width:991px){
  header .nav-section .content-1 .navbar-toggler{font-size:0;line-height:0;color:transparent;border-color:transparent;box-shadow:none}
  header .nav-section .content-1 .navbar-toggler:focus{outline:0;box-shadow:none}
  header .nav-section .logo-container{height:58px}
  header.is-scrolled .nav-section .logo-container{height:44px}
}

/* HEADER v2b: hide the "menu" text link on tablet/phone (the hamburger icon stays) */
@media (max-width:991px){header .nav-section .navbar-brand{display:none!important}}

/* HEADER v2c: large screens keep the original logo position; centring is for tablet/phone only */
@media (min-width:992px){
  header .nav-section .logo-container{align-items:flex-start}
  header .nav-section .logo-container img{margin-top:2px}
  header.is-scrolled .nav-section .logo-container img{margin-top:0}
}


/* OTHER SERVICES cards: modern look + smooth slide */
.section-d .content-1 .sub-content .slider-1 .owl-stage{display:flex;transition-timing-function:cubic-bezier(.65,0,.35,1)!important;will-change:transform}
.section-d .content-1 .sub-content .slider-1 .owl-item{display:flex;float:none}
.section-d .content-1 .sub-content .slider-1 .item{width:100%;display:flex;padding:0 14px}
.section-d .content-1 .sub-content .box{position:relative;width:100%;height:100%;padding:0 0 30px;gap:0;overflow:hidden;border-radius:18px;background:#fff;border:1px solid rgba(37,29,113,.07);box-shadow:0 12px 34px rgba(37,29,113,.10);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s ease,border-color .5s ease}
.section-d .content-1 .sub-content .box::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#be2913,#251d71);transform:scaleX(0);transform-origin:left;transition:transform .5s ease;z-index:2}
.section-d .content-1 .sub-content .box:hover{background-color:#fff;transform:translateY(-8px);border-color:rgba(190,41,19,.25);box-shadow:0 22px 48px rgba(37,29,113,.18)}
.section-d .content-1 .sub-content .box:hover::after{transform:scaleX(1)}
.section-d .content-1 .sub-content .box figure{margin:0;width:100%;overflow:hidden;position:relative}
.section-d .content-1 .sub-content .box figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(37,29,113,.28));opacity:0;transition:opacity .5s ease;pointer-events:none}
.section-d .content-1 .sub-content .box:hover figure::after{opacity:1}
.section-d .content-1 .sub-content .box figure img{display:block;width:100%;height:auto;border-radius:0;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.section-d .content-1 .sub-content .box:hover figure img{transform:scale(1.08)}
.section-d .content-1 .text-box{padding:26px 22px 0;gap:18px;text-align:center}
.section-d .content-1 .text-box h3{font-size:26px;line-height:1.25;margin:0;transition:color .4s ease}
.section-d .content-1 .sub-content .box:hover h3{color:#be2913}
.section-d .content-1 .text-box p{margin:0}
.section-d .content-1 .text-box a,.section-d .content-1 .sub-content .box:hover a{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:10px 28px;border:1.5px solid #be2913;border-radius:999px;color:#be2913;font-size:16px;font-weight:400;line-height:1.2;background:transparent;transition:background-color .35s ease,color .35s ease,box-shadow .35s ease,padding .35s ease}
.section-d .content-1 .text-box a::before{display:none}
.section-d .content-1 .text-box a::after{content:"\f061";font-family:"Font Awesome 7 Free";font-weight:900;font-size:12px;width:0;opacity:0;overflow:hidden;transition:width .35s ease,opacity .35s ease,margin .35s ease}
.section-d .content-1 .sub-content .box:hover a{padding:10px 24px;background:#be2913;color:#fff;box-shadow:0 8px 20px rgba(190,41,19,.32)}
.section-d .content-1 .sub-content .box:hover a::after{width:12px;opacity:1;margin-left:10px}
@media (prefers-reduced-motion:reduce){.section-d .content-1 .sub-content .box,.section-d .content-1 .sub-content .box figure img{transition:none}.section-d .content-1 .sub-content .box:hover{transform:none}}

/* OTHER SERVICES clip fix: room for the card shadows so the slider edge is not visible */
.section-d .content-1 .sub-content .owl-stage-outer{padding:30px 24px 56px;margin:0 -24px -22px}

/* OTHER SERVICES shadow fix: keep the slider clipped at its own edge, shadows stay inside the 14px card gutter */
.section-d .content-1 .sub-content .owl-stage-outer{padding:30px 0 56px;margin:0 0 -22px}
.section-d .content-1 .sub-content .box{box-shadow:0 18px 26px -14px rgba(37,29,113,.28)}
.section-d .content-1 .sub-content .box:hover{box-shadow:0 26px 32px -16px rgba(37,29,113,.42)}


/* TB MEDIA mosaic: image tiles that fill the empty space under short article text */
.tb-split>.tb-article.has-media{align-self:stretch;display:flex;flex-direction:column}
.tb-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:14px;margin:30px 0 4px;flex:1 1 auto;min-height:300px}
.tb-media figure{position:relative;margin:0;overflow:hidden;border-radius:16px;background:var(--lf-bg,#f3f3fa);box-shadow:0 14px 28px -18px rgba(37,29,113,.55)}
.tb-media figure img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.tb-media figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(37,29,113,.55));opacity:0;transition:opacity .45s ease;pointer-events:none}
.tb-media figure:hover img{transform:scale(1.08)}
.tb-media figure:hover::after{opacity:1}
.tb-media figure::before{content:"";position:absolute;left:0;bottom:0;height:4px;width:100%;background:linear-gradient(90deg,#be2913,#251d71);transform:scaleX(0);transform-origin:left;transition:transform .5s ease;z-index:2}
.tb-media figure:hover::before{transform:scaleX(1)}
.tb-media.m-a figure:first-child{grid-column:1/-1}
.tb-media.m-b figure:first-child{grid-row:1/3}
.tb-media.m-c{min-height:220px}
@media (max-width:991px){.tb-split>.tb-article.has-media{display:block}.tb-media{min-height:0;grid-auto-rows:auto}.tb-media figure{aspect-ratio:4/3}.tb-media.m-b figure:first-child{grid-row:auto}}
@media (max-width:991px){.tb-media.m-c figure{aspect-ratio:16/10}}
@media (max-width:575px){.tb-media{grid-template-columns:minmax(0,1fr)}.tb-media.m-a figure:first-child{grid-column:auto}}


/* TB call number font: Poppins like the header call box */
.tb-call a.tb-tel{font-family:"Poppins",sans-serif;font-size:1.7rem;font-weight:700;letter-spacing:.3px;transition:color .3s ease}
.tb-call a.tb-tel:hover{color:#ff8a70}
@media (max-width:575px){.tb-call a.tb-tel{font-size:1.5rem}}


/* INNER SLIDER caption centred: text block sits in the middle of the banner whether or not there is a button */
@media (min-width:992px){
  .slider-section.layout-slider .content-1 .caption{top:calc(50% - 10px);bottom:auto;transform:translate(-50%,-50%)}
}

/* CONTACT form: hide the "Get in Touch" heading inside the form card */
.dynamic-form-container .card>h3.font-weight-bold{display:none}


/* INNER SLIDER mobile caption: on tablet and phone the text sits under the photo with proper spacing (never touching the image edge) */
@media (max-width:991px){
  .slider-section.layout-slider .content-1 .caption{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;width:100%;margin:0;padding:28px 22px 44px}
  .slider-section.layout-slider .content-1 .caption .tb-crumbs{margin-bottom:14px}
}
@media (max-width:575px){
  .slider-section.layout-slider .content-1 .caption{padding:24px 16px 40px}
}


/* HEADER mobile actions: call + mail icons in the bar, tighter open menu */
.tb-hdr-actions{display:none}
@media (max-width:991px){
  .tb-hdr-actions{display:flex;align-items:center;gap:10px;margin-left:auto;margin-right:8px}
  .tb-hdr-ico{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#251d71;border:1.5px solid rgba(255,255,255,.35);color:#fff;font-size:16px;line-height:1;text-decoration:none;box-shadow:0 4px 10px rgba(8,6,34,.25);transition:background-color .3s ease,color .3s ease,transform .3s ease}
  .tb-hdr-ico:hover,.tb-hdr-ico:focus{background:#fff;color:#be2913;transform:translateY(-2px);text-decoration:none}
  header .nav-section>.container>.row{flex:0 0 auto}
  header .nav-section>.container>.row>.content-1{width:auto}
  header .nav-section .content-1 .navbar .navbar-nav{margin-top:0}
  header .nav-section .navbar-collapse{padding:12px 16px 16px}
}
@media (max-width:575px){
  .tb-hdr-actions{gap:8px;margin-right:4px}
  .tb-hdr-ico{width:38px;height:38px;font-size:15px}
}


/* HEADER phone-only top bar: on phones the address/email/phone strip is replaced by the call + mail icons in the bar; tablets keep the strip and drop the icons */
@media (max-width:767px){
  header .top-bar{display:none}
}
@media (min-width:768px) and (max-width:991px){
  .tb-hdr-actions{display:none}
}

/* HEADER tablet toggler right: with the icons hidden the menu button stays at the right edge */
@media (min-width:768px) and (max-width:991px){
  header .nav-section>.container>.row{margin-left:auto}
}


/* TB BODY aligned: below 1600px the inner-page body lines up with the header, call-to-action band and footer (1260px container); wider screens keep the roomy 1560px body */
@media (max-width:1599px){
  .tb-body .container{max-width:1260px}
}

/* TB CTA aligned: the red "Contact Us" band uses the same 1260px container as the body, header and footer */
.tb-cta .container{max-width:1260px}


/* FOOTER tablet landscape (992-1199px): Contact Information on the left, company logo above the social badges on the right; then Quick Links + Other Services; then opening hours and map */
@media (min-width:992px) and (max-width:1199px){
  .section-footer .container>.row>.content-1{grid-column:1/4;grid-row:1/3}
  .section-footer .container>.row>.content-5{grid-column:4/7;grid-row:1}
  .section-footer .container>.row>.content-7{grid-column:4/7;grid-row:2}
  .section-footer .container>.row>.content-2{grid-column:1/4;grid-row:3}
  .section-footer .container>.row>.content-3{grid-column:4/7;grid-row:3}
  .section-footer .container>.row>.content-6{grid-column:1/-1;grid-row:4}
  .section-footer .container>.row>.content-4{grid-column:1/-1;grid-row:5}
}


/* TB TILE text aligned: the service text always lines up with its icon (top-aligned, centred on the icon) even when a taller card in the same row stretches the card */
.tb-tile{align-items:flex-start}
.tb-tile p{align-self:flex-start;display:flex;align-items:center;min-height:62px}


/* INNER SLIDER caption text colour: when the caption sits under the photo (tablet and phone) the description is dark, never white on white */
@media (max-width:991px){
  .slider-section.layout-slider .content-1 .caption p{color:#3b3b57;text-shadow:none}
}


/* FOOTER mobile hours: on phones each opening-hours row sits on its own line (one column) */
@media (max-width:575px){
  .section-footer .content-6 .wrap{grid-template-columns:minmax(0,1fr)}
  .section-footer .content-6 .wrap p{white-space:normal}
}

/* HERO caption: no rise-in animation on phones, the heading and intro text show straight away */
@media (max-width:767px){.slider-section .content-1 .caption>*{animation:none}}
