:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --white:#ffffff;
  --dark:#07122d;
  --shadow:0 10px 30px rgba(0,0,0,.12);
}

.site-header{
  position:sticky;
  top:0;
  z-index:9999;
  background:#fff;
  box-shadow:0 8px 28px rgba(0,0,0,.08);
}

.custom-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding:0 38px;
}

.navbar{
  min-height:112px;
  background:#fff;
}

.navbar-brand{
  position:relative;
  z-index:10001;
  padding:0;
  margin:0;
}

.navbar-brand img{
  width:160px;
  height:auto;
  display:block;
}

.desktop-menu{
  margin-left:auto;
  align-items:center;
  gap:34px;
}

.navbar-nav{
  gap:28px;
  align-items:center;
}

.nav-link{
  color:var(--dark);
  font-size:15px;
  font-weight:600;
  white-space:nowrap;
  padding:42px 0 !important;
}

.nav-link:hover{
  color:var(--green);
}

.dropdown-menu{
  border:0;
  border-radius:14px;
  padding:10px;
  box-shadow:0 15px 35px rgba(0,0,0,.14);
}

.dropdown-item{
  font-size:14px;
  font-weight:600;
  padding:10px 14px;
  border-radius:10px;
}

.dropdown-item:hover{
  background:#eaf8ea;
  color:var(--green);
}

.book-btn{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  padding:16px 28px;
  border-radius:12px;
  font-size:16px;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 10px 25px rgba(15,143,24,.28);
}

.book-btn:hover{
  background:var(--green-dark);
  color:#fff;
}

.navbar-toggler{
  border:0;
  background:#fff;
  width:44px;
  height:44px;
  border-radius:12px;
  box-shadow:0 8px 22px rgba(0,0,0,.12);
  font-size:30px;
  color:var(--blue);
  margin-left:auto;
  position:relative;
  z-index:10002;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}

.navbar-toggler:focus{
  box-shadow:0 8px 22px rgba(0,0,0,.12);
}

/* Mobile Offcanvas */
.mobile-menu{
  width:78% !important;
  max-width:340px;
  z-index:10000;
}

.offcanvas-backdrop{
  z-index:9998;
}

.offcanvas-header{
  border-bottom:1px solid #eef2f7;
}

.offcanvas-header img{
  width:125px;
}

.mobile-nav{
  list-style:none;
  padding:0;
  margin:0;
}

.mobile-nav li{
  border-bottom:1px solid #eef2f7;
}

.mobile-nav a,
.mobile-dropdown-btn{
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:none;
  border:0;
  padding:15px 0;
  color:var(--dark);
  font-size:15px;
  font-weight:600;
  text-align:left;
  text-decoration:none;
}

.mobile-submenu{
  padding:0 0 10px 14px;
}

.mobile-submenu a{
  padding:9px 0;
  font-size:14px;
  color:var(--blue);
}

.mobile-book-btn{
  width:100%;
  margin-top:20px;
}

/* Laptop */
@media(max-width:1200px){
  .custom-container{
    padding:0 24px;
  }

  .navbar-brand img{
    width:140px;
  }

  .navbar-nav{
    gap:18px;
  }

  .desktop-menu{
    gap:22px;
  }

  .nav-link{
    font-size:14px;
  }

  .book-btn{
    padding:14px 20px;
  }
}

/* Tablet + Mobile */
@media(max-width:991px){
  .navbar{
    min-height:84px;
  }

  .navbar-brand img{
    width:120px;
  }
}

@media(max-width:425px){
  .custom-container{
    padding:0 16px;
  }

  .navbar-brand img{
    width:112px;
  }
}
.nav-split{
  display:flex;
  align-items:center;
  position:relative;
}

.nav-split .nav-link{
  padding-right:4px !important;
}

.split-btn{
  border:0;
  background:transparent;
  padding:0 0 0 4px;
  color:#07122d;
}

.split-btn::after{
  vertical-align:middle;
}
/*Section style index*/
:root {
    --green: #0f8f18;
    --green-dark: #08710f;
    --blue: #063b97;
    --blue-dark: #062e78;
    --white: #ffffff;
    --dark: #06122d;
    --text: #4b5563;
    --shadow: 0 18px 45px rgba(0, 0, 0, .13);
    --soft-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}

body {
    font-family: 'Poppins', 'Segoe UI', sans-serif;
    background: linear-gradient(180deg, #f8fcff 0%, #ffffff 48%, #f8fcff 100%);
    color: var(--dark);
    overflow-x: hidden;
}

img {
    max-width: 100%;
    display: block;
}

.site-container {
    width: 100%;
    max-width: 1420px;
    margin: auto;
    padding-left: 18px;
    padding-right: 18px;
}

.section-title {
    color: var(--green);
    font-size: 20px;
    font-weight:500;
    text-align: center;
    margin-bottom: 26px;
    position: relative;
}

.section-title::before,
.section-title::after {
    content: "";
    width: 95px;
    height: 2px;
    /* background: linear-gradient(90deg, transparent, var(--green), transparent); */
    position: absolute;
    top: 50%;
}

.section-title::before {
    right: calc(50% + 119px);
}

.section-title::after {
    left: calc(50% + 119px);
}

/* HERO */

.hero-section {
    position: relative;
    padding: 48px 0 70px;
    overflow: hidden;
}

.hero-section::before {
    content: "";
    position: absolute;
    left: -130px;
    top: -120px;
    width: 600px;
    height: 600px;
    background: rgba(6, 59, 151, .045);
    border-radius: 50%;
}

.hero-shape-green {
    position: absolute;
    right: 32%;
    bottom: 52px;
    width: 280px;
    height: 165px;
    background: linear-gradient(135deg, var(--green), #45bd16);
    border-radius: 90% 20% 0 0;
}

.hero-content {
    position: relative;
    z-index: 2;
}

.hero-welcome {
    color: var(--green);
    font-size: 40px;
    font-family: cursive;
    display: block;
    margin-bottom: 8px;
}

.hero-section h1 {
    font-size: 82px;
    font-weight: 500;;
    line-height: .92;
    color: var(--green);
    margin-bottom: 22px;
}

.hero-section h1 span {
    display: block;
    color: var(--blue);
}

.hero-line {
    width: 62px;
    height: 5px;
    background: var(--green);
    border-radius: 20px;
    margin-bottom: 18px;
}

.hero-section p {
    font-size: 20px;
    line-height: 1.5;
    max-width: 420px;
}

.hero-icons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    max-width: 430px;
    margin: 28px 0 30px;
}

.hero-icons div {
    text-align: center;
    transition: .3s;
}

.hero-icons div:hover {
    transform: translateY(-5px);
}

.hero-icons i {
    color: var(--green);
    font-size: 30px;
}

.hero-icons b {
    display: block;
    font-size: 12px;
    margin-top: 8px;
}

.hero-icons small {
    display: block;
    font-size: 11px;
    font-weight:500;
}

.hero-buttons {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.btn-green,
.btn-outline-blue {
    min-width: 170px;
    padding: 15px 24px;
    border-radius: 50px;
    font-size: 14px;
    font-weight:500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    transition: .3s;
}

.btn-green {
    color: #fff;
    background: linear-gradient(135deg, var(--green), var(--green-dark));
    box-shadow: 0 12px 25px rgba(15, 143, 24, .3);
}

.btn-outline-blue {
    color: var(--blue);
    background: #fff;
    border: 1.7px solid var(--blue);
}

.btn-green:hover,
.btn-outline-blue:hover {
    transform: translateY(-4px);
}

.hero-image-wrap {
    position: relative;
    z-index: 2;
}

.hero-image-wrap>img {
    width: 100%;
    height: 610px;
    /* object-fit: cover; */
    border-radius: 220px 0 180px 180px;
    box-shadow: var(--soft-shadow);
}

.rating-card {
    position: absolute;
    right: 20px;
    top: 45px;
    background: #fff;
    padding: 16px 20px;
    border-radius: 16px;
    box-shadow: var(--soft-shadow);
    text-align: center;
}

.rating-card strong {
    display: block;
    color: var(--green);
    font-size: 28px;
}

.rating-card i {
    color: #ffb400;
}

.rating-card span {
    font-size: 13px;
    font-weight:500;
}

.hero-logo-card {
    position: absolute;
    left: 35%;
    top: 35%;
    width: 190px;
    padding: 0px;
    background: rgba(255, 255, 255, .92);
    border-radius: 42px 42px 0 0;
    box-shadow: var(--shadow);
}

.support-card {
    position: absolute;
    left: 50%;
    bottom: -28px;
    transform: translateX(-50%);
    display: flex;
    background: #fff;
    padding: 8px;
    border-radius: 18px;
    box-shadow: var(--shadow);
}

.support-card div {
    min-width: 105px;
    padding: 18px 22px;
    text-align: center;
    border-radius: 14px;
    border: 1px solid #edf1f6;
}

.support-card .active {
    background: linear-gradient(135deg, var(--green), var(--green-dark));
    color: #fff;
}

.support-card i {
    display: block;
    font-size: 24px;
}

.support-card b,
.support-card span {
    display: block;
    font-size: 13px;
    font-weight:500;
}

/* ABOUT */

.about-section {
    padding: 35px 0;
}

.about-img-left,
.about-img-right {
    position: relative;
}

.about-img-left img,
.about-img-right img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    box-shadow: var(--soft-shadow);
}

.about-img-left img {
    border-radius: 28px;
}

.about-img-right img {
    border-radius: 28px 28px 45px 28px;
}

.about-img-right::after {
    content: "";
    position: absolute;
    right: -18px;
    bottom: 20px;
    width: 45px;
    height: 95px;
    background: var(--blue);
    border-radius: 0 0 25px 0;
    z-index: -1;
}

.choice-badge {
    position: absolute;
    left: 0;
    bottom: 25px;
    background: linear-gradient(135deg, var(--blue), var(--blue-dark));
    color: #fff;
    padding: 16px 22px;
    border-radius: 0 20px 20px 0;
    display: flex;
    gap: 12px;
    align-items: center;
    font-size: 14px;
    font-weight:500;
    box-shadow: 0 12px 25px rgba(6, 59, 151, .28);
}

.choice-badge i {
    font-size: 30px;
}

.section-small {
    color: var(--green);
    font-size: 14px;
    font-weight:500;
}

.about-section h2 {
    font-size: 34px;
    line-height: 1.05;
    font-weight: 500;;
    color: var(--blue);
    margin: 8px 0 14px;
}

.about-section h2 span {
    color: var(--green);
}

.about-section p {
    font-size: 13px;
    line-height: 1.6;
}

.about-list {
    list-style: none;
    padding: 0;
    margin: 18px 0 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 18px;
}

.about-list li {
    font-size: 12px;
    font-weight:500;
}

.about-list li::before {
    content: "✓";
    color: var(--green);
    border: 1px solid var(--green);
    border-radius: 50%;
    font-size: 10px;
    padding: 1px 4px;
    margin-right: 8px;
}

/* ROOMS */

.rooms-section {
    padding: 25px 0 15px;
}

.rooms-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.room-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--soft-shadow);
    transition: .35s;
}

.room-card:hover,
.room-cta:hover {
    transform: translateY(-8px);
}

.room-card img {
    height: 280px;
    width: 100%;
    object-fit: cover;
}

.room-info {
    padding: 12px 16px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.room-info h5 {
    color: var(--blue);
    font-size: 16px;
    font-weight:500;
    margin: 0;
}

.room-info p {
    margin: 3px 0 0;
    font-size: 13px;
    font-weight:500;
}

.room-info a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--green);
    color: #fff;
    display: grid;
    place-items: center;
    text-decoration: none;
}

.room-cta {
    background: linear-gradient(135deg, var(--blue), var(--blue-dark));
    color: #fff;
    border-radius: 24px;
    padding: 32px 26px;
    box-shadow: var(--soft-shadow);
    transition: .35s;
}

.room-cta i {
    font-size: 18px;
}

.room-cta h4 {
    font-size: 26px;
    line-height: 1.1;
    font-weight: 500;;
    margin: 10px 0;
}

.room-cta p {
    font-size: 16px;
}

.room-cta a {
    background: var(--green);
    color: #fff;
    padding: 10px 20px;
    border-radius: 30px;
    text-decoration: none;
    font-weight:500;
    display: inline-flex;
    gap: 10px;
}

/* AMENITIES */

.amenities-section {
    padding: 15px 0 20px;
}

.amenities-strip {
    background: #fff;
    border-radius: 20px;
    box-shadow: var(--soft-shadow);
    padding: 22px 18px;
    display: grid;
    grid-template-columns: repeat(8, 1fr);
}

.amenities-strip div {
    text-align: center;
    border-right: 1px solid #cbd5e1;
}

.amenities-strip div:last-child {
    border-right: 0;
}

.amenities-strip i {
    display: block;
    color: var(--green);
    font-size: 30px;
    margin-bottom: 8px;
}

.amenities-strip span {
    font-size: 12px;
    font-weight:500;
}

/* GALLERY + TESTIMONIAL */

.gallery-testimonial-section {
    padding: 20px 0 25px;
}

.small-title {
    margin-bottom: 18px;
}

.gallery-box {
    position: relative;
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    grid-template-rows: 85px 85px;
    gap: 6px;
    overflow: hidden;
    border-radius: 20px;
    box-shadow: var(--soft-shadow);
}

.gallery-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .4s;
}

.gallery-box img:hover {
    transform: scale(1.08);
}

.gallery-box img:first-child {
    grid-row: 1 / 3;
}

.view-more {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: #fff;
    color: var(--green);
    display: grid;
    place-items: center;
    text-align: center;
    font-size: 12px;
    font-weight:500;
    text-decoration: none;
    box-shadow: var(--shadow);
}

.view-more i {
    font-size: 30px;
}

.testimonial-card {
    position: relative;
    background: #fff;
    border-radius: 28px;
    padding: 34px 120px 28px 78px;
    min-height: 178px;
    box-shadow: var(--soft-shadow);
}

.quote {
    position: absolute;
    left: 25px;
    top: 16px;
    color: var(--blue);
    font-size: 85px;
    font-weight:500;
    line-height: 1;
}

.testimonial-card p {
    font-size: 15px;
    line-height: 1.45;
    margin: 0 0 8px;
}

.stars {
    color: #ffb400;
    font-size: 18px;
    letter-spacing: 2px;
}

.testimonial-card strong {
    color: var(--blue);
    font-size: 13px;
}

.testimonial-card img {
    position: absolute;
    right: 28px;
    bottom: 28px;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
}

.testimonial-dots {
    position: static;
    margin-top: 12px;
}

.testimonial-dots button {
    width: 11px !important;
    height: 11px !important;
    border-radius: 50%;
    background: #c5cad3 !important;
    border: 0 !important;
    opacity: 1 !important;
}

.testimonial-dots .active {
    background: var(--green) !important;
}

/* CTA */

.cta-section {
    padding: 0;
}

.cta-banner {
    position: relative;
    background: linear-gradient(90deg, var(--blue), var(--green));
    color: #fff;
    border-radius: 20px 20px 20px 20px;
    padding: 22px 70px 22px 210px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
    margin-bottom:15px;
}

.cta-banner img {
    position: absolute;
    left: 20px;
    bottom: 0;
    width: 150px;
}

.cta-banner h2 {
    font-size: 30px;
    font-weight: 500;;
    margin: 0;
}

.cta-banner p {
    margin: 4px 0 0;
    font-size: 15px;
}

.cta-banner a {
    background: #fff;
    color: var(--green);
    padding: 14px 30px;
    border-radius: 40px;
    text-decoration: none;
    font-weight: 500;;
    display: inline-flex;
    gap: 12px;
}

/* RESPONSIVE */

@media(max-width:1200px) {
    .hero-section h1 {
        font-size: 64px;
    }

    .rooms-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .amenities-strip {
        grid-template-columns: repeat(4, 1fr);
        gap: 18px 0;
    }
}

@media(max-width:991px) {
    .hero-section {
        text-align: center;
        padding: 40px 0;
    }

    .hero-section p,
    .hero-icons {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-line {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-buttons {
        justify-content: center;
    }

    .hero-image-wrap {
        margin-top: 36px;
    }

    .hero-image-wrap>img {
        height: 430px;
        border-radius: 100px 0 100px 100px;
    }

    .about-list {
        grid-template-columns: 1fr;
    }
}

@media(max-width:768px) {
    .hero-section h1 {
        font-size: 52px;
    }

    .hero-welcome {
        font-size: 32px;
    }

    .hero-icons {
        grid-template-columns: repeat(2, 1fr);
    }

    .support-card {
        position: static;
        transform: none;
        margin-top: 16px;
        flex-direction: column;
    }

    .hero-logo-card {
        display: none;
    }

    .rooms-grid {
        grid-template-columns: 1fr;
    }

    .amenities-strip {
        grid-template-columns: repeat(2, 1fr);
    }

    .amenities-strip div {
        border-right: 0;
    }

    .gallery-box {
        grid-template-columns: 1fr 1fr;
    }

    .gallery-box img:first-child {
        grid-row: auto;
    }

    .testimonial-card {
        padding: 30px;
    }

    .quote {
        position: static;
        font-size: 50px;
    }

    .testimonial-card img {
        position: static;
        margin-top: 14px;
    }

    .section-title::before,
    .section-title::after {
        display: none;
    }
}

@media(max-width:576px) {
    .site-container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .hero-section h1 {
        font-size: 44px;
    }

    .hero-image-wrap>img {
        height: 330px;
    }

    .btn-green,
    .btn-outline-blue {
        width: 100%;
    }

    .rating-card {
        right: 10px;
        top: 15px;
    }

    .cta-banner {
        padding: 28px;
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .cta-banner img {
        position: static;
        width: 120px;
    }

    .cta-banner h2 {
        font-size: 24px;
    }
}
@media (min-width:992px){

  .nav-split{
    position:relative;
    display:flex;
    align-items:center;
  }

  .nav-split .dropdown-menu{
    display:block;
    position:absolute;
    top:100%;
    left:0;
    min-width:220px;
    margin-top:0;
    padding:12px;
    border:0;
    border-radius:16px;
    background:#fff;
    box-shadow:0 15px 40px rgba(0,0,0,.12);

    opacity:0;
    visibility:hidden;
    transform:translateY(0);
    pointer-events:none;
    transition:.25s ease;
  }

  .nav-split:hover .dropdown-menu,
  .nav-split .dropdown-menu:hover{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  .dropdown-item{
    padding:12px 16px;
    border-radius:10px;
    font-weight:500;
  }

  .dropdown-item:hover{
    background:#eef8ef;
    color:#0f8f18;
  }

  .split-btn{
    border:0;
    background:transparent;
    padding:0 0 0 5px;
  }
}
@media (min-width:992px){

  .nav-split{
    position:relative;
    display:flex;
    align-items:center;
  }

  .nav-split .dropdown-menu{
    display:block;
    position:absolute;
    top:100%;
    left:0;
    min-width:220px;
    margin-top:0;
    padding:12px;
    border:0;
    border-radius:16px;
    background:#fff;
    box-shadow:0 15px 40px rgba(0,0,0,.12);

    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(0);
    transition:.25s ease;
  }

  /* Mouse hover */
  .nav-split:hover .dropdown-menu,

  /* Bootstrap click/touch active */
  .nav-split .dropdown-menu.show{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  .split-btn{
    border:0;
    background:transparent;
    padding:0 0 0 6px;
  }
}


/* Footer Style */

:root {
    --green: #0f8f18;
    --green-dark: #08710f;
    --blue: #063b97;
    --blue-dark: #031f54;
    --white: #ffffff;
    --footer-text: #dbeafe;
    --footer-muted: #b8c7e6;
}

.site-footer {
    position: relative;
    background:
        radial-gradient(circle at 15% 20%, rgba(15, 143, 24, .28), transparent 28%),
        linear-gradient(135deg, var(--blue-dark), var(--blue));
    color: var(--white);
    padding: 58px 0 18px;
    overflow: hidden;
}

.site-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px),
        linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px);
    background-size: 55px 55px;
    opacity: .35;
}

.custom-container {
    width: 100%;
    max-width: 1420px;
    margin: auto;
    padding-left: 18px;
    padding-right: 18px;
}

.footer-grid {
     display: grid;
    grid-template-columns: 1.4fr .8fr .8fr .8fr 1.6fr;
    gap: 38px;
    text-align: left;
    position: relative;
    z-index: 2;
}

.footer-brand img {
    width: 190px;
    margin-bottom: 18px;
    border-radius: 30px;
}

.footer-brand p {
    max-width: 230px;
}

.site-footer p {
    color: var(--footer-text);
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 1.7;
}

.site-footer h5 {
    position: relative;
    font-size: 18px;
    font-weight:500;
    margin-bottom: 22px;
    padding-bottom: 10px;
}

.site-footer h5::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 44px;
    height: 3px;
    border-radius: 20px;
    background: linear-gradient(90deg, var(--green), #7ee081);
}

.site-footer a {
    display: block;
    color: var(--footer-text);
    text-decoration: none;
    font-size: 14px;
    margin-bottom: 9px;
    transition: .3s ease;
}

.site-footer a:hover {
    color: #ffffff;
    transform: translateX(5px);
}

.site-footer p i {
    color: #7ee081;
    margin-right: 8px;
}

.footer-social {
    display: flex;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 18px;
}

.footer-social a {
    width: 36px;
    height: 36px;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;
    display: grid;
    place-items: center;
    margin: 0;
    color: #fff;
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(8px);
}

.footer-social a:hover {
    background: var(--green);
    border-color: var(--green);
    transform: translateY(-4px);
}

.copyright {
    position: relative;
    z-index: 2;
    margin-top: 34px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .22);
    font-size: 13px;
    color: var(--footer-muted);

    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    text-align: left;
}

.copyright a {
    display: inline-block;
    color: #ffffff;
    font-weight:500;
    margin: 0;
}

.copyright a:hover {
    color: #7ee081;
    transform: none;
}

.footer-skyline {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 95px;
    opacity: .16;
    background:
        linear-gradient(to top, rgba(255, 255, 255, .8) 1px, transparent 1px),
        linear-gradient(90deg,
            transparent 0 4%,
            rgba(255, 255, 255, .9) 4% 5%,
            transparent 5% 9%,
            rgba(255, 255, 255, .9) 9% 11%,
            transparent 11% 18%,
            rgba(255, 255, 255, .9) 18% 20%,
            transparent 20% 28%,
            rgba(255, 255, 255, .9) 28% 30%,
            transparent 30% 38%,
            rgba(255, 255, 255, .9) 38% 40%,
            transparent 40% 100%);
}

/* Sticky Phone + WhatsApp */

.sticky-contact {
    position: fixed;
    right: 20px;
    bottom: 25px;
    z-index: 99999;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sticky-contact a {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 22px;
    text-decoration: none;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .22);
}

.call-btn {
    background: linear-gradient(135deg, var(--blue), var(--blue-dark));
}

.whatsapp-btn {
    background: linear-gradient(135deg, #25d366, #128c3a);
}

/* Tablet */

@media(max-width:991px) {
    .site-footer {
        padding: 48px 0 18px;
    }

    .footer-grid {
         grid-template-columns: repeat(2, 1fr);
        gap: 28px;
    }

    .copyright {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* Mobile */

@media(max-width:576px) {
    .site-footer {
        padding: 42px 0 16px;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .footer-brand img {
        width: 165px;
    }

    .site-footer h5 {
        margin-bottom: 16px;
    }

    .copyright {
        text-align: left;
        align-items: flex-start;
    }

    .sticky-contact {
        right: 14px;
        bottom: 18px;
    }

    .sticky-contact a {
        width: 46px;
        height: 46px;
        font-size: 20px;
    }
}
/* About page Style*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#052a68;
  --white:#ffffff;
  --dark:#07122d;
  --text:#3f4a5f;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#ffffff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
}

img{
  max-width:100%;
  display:block;
}

.about-container{
  width:100%;
  max-width:1428px;
  margin:auto;
  padding-left:18px;
  padding-right:18px;
}

/* ANIMATION */

.fade-up{
  animation:fadeUp .8s ease both;
}

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(25px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* HERO */

.about-hero{
  position:relative;
  padding:55px 0 20px;
  overflow:hidden;
}

.about-hero::before{
  content:"";
  position:absolute;
  left:-120px;
  top:-120px;
  width:560px;
  height:560px;
  background:rgba(6,59,151,.045);
  border-radius:50%;
}

/* .hero-green-shape{
  position:absolute;
  right:39%;
  bottom:10px;
  width:250px;
  height:120px;
  background:linear-gradient(135deg,var(--green),#4abc17);
  border-radius:90% 20% 0 0;
  z-index:0;
} */

.about-hero-content{
  position:relative;
  z-index:2;
}

.about-hero h1{
  font-size:56px;
  font-weight:500;
  color:var(--green);
  margin-bottom:8px;
}

.about-hero h1 span{
  color:var(--blue);
}

.title-line{
  width:54px;
  height:4px;
  border-radius:20px;
  background:var(--green);
  margin-bottom:24px;
}

.title-line.center{
  margin:0 auto 30px;
}

.about-hero h3{
  color:var(--dark);
  font-size:24px;
  font-weight:500;
  margin-bottom:18px;
}

.about-hero p{
  color:var(--dark);
  font-size:16px;
  line-height:1.75;
  max-width:470px;
}

.about-btn{
  margin-top:16px;
  display:inline-flex;
  align-items:center;
  gap:18px;
  padding:14px 30px;
  border-radius:40px;
  border:1.8px solid var(--blue);
  color:var(--blue);
  text-decoration:none;
  font-weight:500;
  transition:.3s ease;
}

.about-btn:hover{
  background:var(--blue);
  color:#fff;
  transform:translateY(-4px);
}

.about-hero-img{
  position:relative;
  z-index:2;
}

.about-hero-img > img{
  width:100%;
  height:430px;
  object-fit:cover;
  border-radius:140px 0 120px 120px;
  box-shadow:var(--soft-shadow);
}

.hero-logo{
  position:absolute;
  left:28%;
  top:28%;
  width:185px;
  padding:18px;
  background:rgba(255,255,255,.92);
  border-radius:38px 38px 0 0;
  box-shadow:var(--shadow);
}

/* FEATURE STRIP */

.feature-strip-section{
  padding:10px 0 36px;
}

.feature-strip{
  background:#fff;
  border-radius:18px;
  padding:26px 28px;
  box-shadow:var(--soft-shadow);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
}

.feature-item{
  display:flex;
  gap:16px;
  align-items:center;
  padding:0 22px;
  border-right:1px solid #cfd8e6;
}

.feature-item:last-child{
  border-right:0;
}

.icon{
  width:62px;
  height:62px;
  min-width:62px;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}

.icon i{
  font-size:32px;
}

.icon.green i{
  color:var(--green);
}

.icon.blue i{
  color:var(--blue);
}

.feature-item h5{
  font-size:15px;
  font-weight:500;
  margin-bottom:6px;
}

.feature-item p{
  font-size:13px;
  line-height:1.45;
  margin:0;
}

/* STORY */

.story-section{
  padding:0 0 30px;
}

.story-content h2{
  font-size:30px;
  font-weight:500;
  color:var(--green);
}

.story-content h2 span{
  color:var(--blue);
}

.story-content p{
  font-size:16px;
  line-height:1.8;
}

.story-img img{
  width:100%;
  height:285px;
  object-fit:cover;
  border-radius:18px;
  box-shadow:var(--soft-shadow);
}

/* MISSION VISION */

.mission-vision-section{
  padding:0 0 28px;
}

.mission-vision-card{
  background:#fff;
  border-radius:20px;
  padding:32px 46px;
  box-shadow:var(--soft-shadow);
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  gap:38px;
  align-items:center;
}

.mv-box{
  display:flex;
  align-items:center;
  gap:28px;
}

.mv-icon{
  width:86px;
  height:86px;
  min-width:86px;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
}

.mv-icon i{
  font-size:48px;
}

.mv-icon.green i{
  color:var(--green);
}

.mv-icon.blue i{
  color:var(--blue);
}

.mv-box h4{
  color:var(--green);
  font-size:18px;
  font-weight:500;
  margin-bottom:8px;
}

.mv-box:last-child h4{
  color:var(--blue);
}

.mv-box p{
  margin:0;
  font-size:15px;
  line-height:1.65;
}

.mv-divider{
  width:1px;
  height:80px;
  background:#aab5c4;
}

/* STATS */

.stats-section{
  padding:0 0 28px;
}

.stats-bar{
  background:linear-gradient(135deg,var(--blue),var(--blue-dark));
  border-radius:16px;
  padding:22px 34px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  color:#fff;
  box-shadow:var(--soft-shadow);
}

.stats-bar div{
  display:grid;
  grid-template-columns:62px 1fr;
  align-items:center;
  column-gap:14px;
  border-right:1px solid rgba(255,255,255,.28);
}

.stats-bar div:last-child{
  border-right:0;
}

.stats-bar i{
  width:58px;
  height:58px;
  /* border:1px solid rgba(255,255,255,.75); */
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:28px;
  grid-row:1 / 3;
}

.stats-bar strong{
  font-size:34px;
  font-weight:500;
  line-height:1;
}

.stats-bar span{
  font-size:15px;
  font-weight:500;
}

/* WHY */

.why-section{
  padding:0 0 28px;
}

.why-title{
  text-align:center;
  color:var(--green);
  font-size:28px;
  font-weight:500;
  margin-bottom:8px;
}

.why-title span{
  color:var(--blue);
}

.why-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  text-align:center;
}

.why-grid div{
  padding:0 24px;
  border-right:1px dashed #b9c4d4;
  transition:.3s ease;
}

.why-grid div:last-child{
  border-right:0;
}

.why-grid div:hover{
  transform:translateY(-7px);
}

.why-grid i{
  color:var(--green);
  font-size:40px;
  margin-bottom:12px;
  display:block;
}

.why-grid h5{
  font-size:15px;
  font-weight:500;
}

.why-grid p{
  font-size:14px;
  line-height:1.55;
}

/* CTA */

.about-cta-section{
  padding:0;
}

.about-cta{
  background:linear-gradient(90deg,var(--green),var(--blue));
  border-radius:16px 16px 16px 16px;
  color:#fff;
  padding:22px 72px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  box-shadow:var(--soft-shadow);
  position:relative;
  overflow:hidden;
  margin-bottom: 15px;
}

.about-cta::before{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:150px;
  height:80px;
  opacity:.18;
  background:
    linear-gradient(to top,rgba(255,255,255,.9) 1px,transparent 1px),
    linear-gradient(90deg,transparent 0 10%,rgba(255,255,255,.9) 10% 12%,transparent 12% 20%,rgba(255,255,255,.9) 20% 22%,transparent 22% 100%);
}

.about-cta h3{
  font-size:22px;
  font-weight:500;
  margin:0 0 6px;
}

.about-cta p{
  margin:0;
  font-size:15px;
}

.about-cta a{
  background:#fff;
  color:var(--blue);
  padding:14px 30px;
  border-radius:40px;
  text-decoration:none;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:12px;
  position:relative;
  z-index:2;
}

.about-cta a i{
  color:var(--green);
  font-size:24px;
}

/* RESPONSIVE */

@media(max-width:1200px){
  .about-hero h1{
    font-size:48px;
  }

  .feature-strip{
    grid-template-columns:repeat(2,1fr);
    gap:22px 0;
  }

  .feature-item:nth-child(2){
    border-right:0;
  }

  .why-grid{
    grid-template-columns:repeat(3,1fr);
    gap:30px 0;
  }
}

@media(max-width:991px){
  .about-hero{
    padding:40px 0 20px;
    text-align:center;
  }

  .title-line{
    margin-left:auto;
    margin-right:auto;
  }

  .about-hero p{
    margin-left:auto;
    margin-right:auto;
  }

  .about-hero-img{
    margin-top:28px;
  }

  .about-hero-img > img{
    height:380px;
    border-radius:100px 0 100px 100px;
  }

  .hero-logo{
    left:50%;
    transform:translateX(-50%);
  }

  .mission-vision-card{
    grid-template-columns:1fr;
    gap:28px;
  }

  .mv-divider{
    width:100%;
    height:1px;
  }

  .stats-bar{
    grid-template-columns:repeat(2,1fr);
    gap:24px 0;
  }

  .stats-bar div:nth-child(2){
    border-right:0;
  }

  .about-cta{
    padding:28px;
    flex-direction:column;
    align-items:flex-start;
    gap:18px;
  }
}

@media(max-width:768px){
  .about-hero h1{
    font-size:42px;
  }

  .about-hero h3{
    font-size:20px;
  }

  .feature-strip{
    grid-template-columns:1fr;
    padding:24px;
  }

  .feature-item{
    border-right:0;
    border-bottom:1px solid #dbe3ee;
    padding:0 0 20px;
  }

  .feature-item:last-child{
    border-bottom:0;
    padding-bottom:0;
  }

  .mv-box{
    flex-direction:column;
    align-items:flex-start;
  }

  .why-grid{
    grid-template-columns:1fr;
  }

  .why-grid div{
    border-right:0;
    border-bottom:1px dashed #b9c4d4;
    padding-bottom:24px;
  }

  .why-grid div:last-child{
    border-bottom:0;
  }
}

@media(max-width:576px){
  .about-container{
    padding-left:14px;
    padding-right:14px;
  }

  .about-hero-img > img{
    height:300px;
  }

  .hero-logo{
    width:135px;
  }

  .stats-bar{
    grid-template-columns:1fr;
  }

  .stats-bar div{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.25);
    padding-bottom:18px;
  }

  .stats-bar div:last-child{
    border-bottom:0;
    padding-bottom:0;
  }

  .about-cta h3{
    font-size:20px;
  }
}
/* Facilities Style code*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#052a68;
  --white:#ffffff;
  --dark:#07122d;
  --text:#39445c;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
}

img{
  max-width:100%;
  display:block;
}

.facility-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:18px;
  padding-right:18px;
}

/* HERO */

.facilities-hero{
  position:relative;
  padding:50px 0 70px;
  overflow:hidden;
}

.facilities-hero::before{
  content:"";
  position:absolute;
  left:-130px;
  top:-120px;
  width:590px;
  height:590px;
  border-radius:50%;
  background:rgba(6,59,151,.05);
}

.facility-hero-content{
  position:relative;
  z-index:2;
  animation:fadeUp .8s ease both;
}

.facility-hero-content h1{
  font-size:58px;
  font-weight:500;
  color:var(--blue);
  margin-bottom:8px;
}

.facility-hero-content h1 span{
  color:var(--green);
}

.title-line{
  width:60px;
  height:4px;
  background:var(--blue);
  border-radius:20px;
  margin-bottom:14px;
}

.facility-hero-content h3{
  font-size:30px;
  color:var(--green);
  font-family:cursive;
  margin-bottom:18px;
}

.facility-hero-content p{
  font-size:17px;
  line-height:1.7;
  max-width:430px;
}

.facility-hero-img{
  position:relative;
  animation:fadeRight .9s ease both;
}

.facility-hero-img > img{
  width:100%;
  height:365px;
  object-fit:cover;
  border-radius:0 0 0 150px;
  box-shadow:var(--soft-shadow);
}

.facility-logo-card{
  position:absolute;
  top:28%;
  left:48%;
  transform:translateX(-50%);
  width:170px;
  background:rgba(255,255,255,.9);
  padding:15px;
  border-radius:36px 36px 0 0;
  box-shadow:var(--shadow);
}

.wave-line{
  position:absolute;
  left:0;
  right:0;
  bottom:30px;
  height:70px;
  background:linear-gradient(90deg,var(--green),var(--blue));
  clip-path:ellipse(60% 35% at 50% 100%);
  opacity:.95;
}

/* SECTION TITLE */

.section-title{
  text-align:center;
  color:var(--blue);
  font-size:22px;
  font-weight:500;
  margin-bottom:34px;
  position:relative;
}

.section-title span{
  color:var(--green);
}

.section-title::after{
  content:"";
  width:54px;
  height:4px;
  /* background:var(--green); */
  border-radius:20px;
  position:absolute;
  /* left:50%; */
  bottom:-12px;
  transform:translateX(-50%);
}

/* FACILITY CARDS */

.premium-facilities{
  padding:20px 0 35px;
}

.facility-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:24px;
}

.facility-card{
  background:#fff;
  border-radius:18px;
  box-shadow:var(--soft-shadow);
  overflow:hidden;
  text-align:center;
  padding:28px 0px 0px 0px;
  transition:.35s ease;
}

.facility-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow);
}

.facility-icon{
  width:68px;
  height:68px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 auto 14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
}

.facility-icon i{
  font-size:36px;
  color:var(--green);
}

.facility-card h4{
  color:var(--blue);
  font-size:17px;
  font-weight:500;
  margin-bottom:10px;
}

.facility-card p{
  font-size:14px;
  line-height:1.6;
  min-height:45px;
}

.facility-card img{
  width:calc(100% + 40px);
  /* margin-left:-20px; */
  height:125px;
  object-fit:cover;
  margin-top:18px;
}

/* SAFETY */

.facility-safety{
  padding:0 0 35px;
}

.safety-card{
  background:#fff;
  border-radius:22px;
  box-shadow:var(--soft-shadow);
  padding:30px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.safety-card div{
  display:flex;
  align-items:center;
  gap:22px;
}

.safety-card i{
  font-size:48px;
  color:var(--green);
}

.safety-card h3{
  color:var(--blue);
  font-size:24px;
  font-weight:500;
  margin:0;
}

.safety-card a{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  padding:14px 28px;
  border-radius:40px;
  text-decoration:none;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:12px;
}

/* GALLERY

.facility-gallery{
  padding:0 0 30px;
}

.gallery-strip{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px;
}

.gallery-strip img{
  width:100%;
  height:105px;
  object-fit:cover;
  border-radius:12px;
  box-shadow:var(--soft-shadow);
  transition:.35s ease;
}

.gallery-strip img:hover{
  transform:scale(1.05);
} */

/* CTA */

.facility-cta{
  padding:0;
}

.cta-box{
  background:linear-gradient(90deg,var(--blue),var(--green));
  color:#fff;
  border-radius:20px 20px 20px 20px;
  padding:24px 70px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom: 15px;
}

.cta-box h3{
  font-size:21px;
  font-weight:500;
  margin:0 0 5px;
}

.cta-box p{
  margin:0;
  font-size:14px;
}

.cta-box a{
  color:#fff;
  text-decoration:none;
  font-size:28px;
  font-weight:500;
  display:flex;
  align-items:center;
  gap:18px;
}

.cta-box a i{
  width:62px;
  height:62px;
  background:#fff;
  color:var(--green);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:28px;
}

/* ANIMATION */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(25px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes fadeRight{
  from{
    opacity:0;
    transform:translateX(35px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

/* RESPONSIVE */

@media(max-width:1200px){
  .facility-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .gallery-strip{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:991px){
  .facilities-hero{
    text-align:center;
    padding:40px 0 60px;
  }

  .title-line,
  .facility-hero-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .facility-hero-img{
    margin-top:30px;
  }

  .facility-hero-img > img{
    height:330px;
    border-radius:80px 0 80px 80px;
  }

  .wave-line{
    bottom:18px;
  }

  .safety-card,
  .cta-box{
    flex-direction:column;
    align-items:flex-start;
    gap:20px;
  }
}

@media(max-width:768px){
  .facility-hero-content h1{
    font-size:42px;
  }

  .facility-hero-content h3{
    font-size:25px;
  }

  .facility-grid{
    grid-template-columns:1fr;
  }

  .gallery-strip{
    grid-template-columns:repeat(2,1fr);
  }

  .safety-card div{
    flex-direction:column;
    align-items:flex-start;
  }

  .cta-box{
    padding:26px;
  }

  .cta-box a{
    font-size:22px;
  }
}

@media(max-width:576px){
  .facility-container{
    padding-left:14px;
    padding-right:14px;
  }

  .facility-hero-img > img{
    height:260px;
  }

  .facility-logo-card{
    width:130px;
  }

  .gallery-strip{
    grid-template-columns:1fr;
  }

  .gallery-strip img{
    height:150px;
  }
}
/* Contact Page Style*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --text:#334155;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
}

img{
  max-width:100%;
  display:block;
}

.contact-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

/* HERO */

.contact-hero{
  position:relative;
  padding:95px 0 85px;
  overflow:hidden;
}

.contact-hero::before{
  content:"";
  position:absolute;
  left:-150px;
  top:-160px;
  width:720px;
  height:720px;
  background:rgba(6,59,151,.055);
  border-radius:50%;
}

.contact-hero-content{
  position:relative;
  z-index:2;
  animation:fadeUp .8s ease both;
}

.contact-hero-content h1{
  font-size:68px;
  font-weight:500;
  color:var(--blue);
  margin:0;
}

.contact-hero-content h1 span{
  color:var(--green);
}

.title-line{
  width:66px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:18px 0 20px;
}

.title-line.small{
  width:48px;
  margin:12px 0 22px;
}

.contact-hero-content h3{
  font-family:cursive;
  color:var(--green);
  font-size:40px;
  font-weight:500;
  margin-bottom:24px;
}

.contact-hero-content p{
  font-size:19px;
  line-height:1.7;
  max-width:500px;
  color:var(--dark);
}

.contact-hero-img{
  position:relative;
  animation:fadeRight .9s ease both;
}

.contact-hero-img > img{
  width:100%;
  height:390px;
  object-fit:cover;
  object-position:center;
  border-radius:0 0 0 170px;
  box-shadow:var(--soft-shadow);
}

.hero-logo-card{
  position:absolute;
  top:25%;
  left:50%;
  transform:translateX(-50%);
  width:180px;
  padding:16px;
  background:rgba(255,255,255,.9);
  border-radius:38px 38px 0 0;
  box-shadow:var(--shadow);
}

.hero-wave{
  position:absolute;
  left:0;
  right:0;
  bottom:34px;
  height:76px;
  background:linear-gradient(90deg,var(--blue),var(--green),var(--blue));
  clip-path:ellipse(60% 35% at 50% 100%);
}

/* CONTACT CARDS */

.contact-info-section{
  margin-top:-25px;
  position:relative;
  z-index:3;
  padding-bottom:42px;
}

.contact-info-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.contact-card{
  background:#fff;
  border-radius:18px;
  padding:26px 18px;
  min-height:245px;
  box-shadow:var(--soft-shadow);
  text-align:center;
  transition:.35s ease;
  overflow:hidden;
}

.contact-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow);
}

.contact-card i{
  width:62px;
  height:62px;
  border-radius:50%;
  background:#fff;
  color:var(--green);
  display:grid;
  place-items:center;
  margin:0 auto 14px;
  font-size:30px;
  box-shadow:0 8px 22px rgba(0,0,0,.09);
}

.contact-card h4{
  font-size:15px;
  font-weight:500;
  color:var(--blue);
  margin-bottom:8px;
  position:relative;
}

.contact-card h4::after{
  content:"";
  width:42px;
  height:2px;
  background:var(--green);
  position:absolute;
  left:50%;
  bottom:-6px;
  transform:translateX(-50%);
}

.contact-card h5{
  margin-top:18px;
  font-size:19px;
  line-height:1.35;
  color:var(--blue);
  font-weight:500;
  word-break:break-word;
}

.contact-card p{
  margin:18px 0 0;
  font-size:14px;
  line-height:1.65;
}

/* HELP + HOURS */

.help-hours-section{
  padding:0 0 42px;
}

.help-box,
.hours-box{
  min-height:365px;
  background:#fff;
  border-radius:18px;
  box-shadow:var(--soft-shadow);
  padding:42px;
  position:relative;
  overflow:hidden;
}

.help-box h2,
.hours-box h2{
  color:var(--blue);
  font-size:28px;
  font-weight:500;
  margin:0;
}

.help-box h2 span,
.hours-box h2 span{
  color:var(--green);
}

.help-box p{
  font-size:16px;
  line-height:1.8;
  max-width:560px;
}

.help-box ul{
  list-style:none;
  padding:0;
  margin:28px 0 0;
}

.help-box li{
  font-size:16px;
  margin-bottom:12px;
  font-weight:500;
}

.help-box li::before{
  content:"✓";
  color:var(--green);
  border:1px solid var(--green);
  border-radius:50%;
  padding:0 5px;
  margin-right:10px;
}

.help-icon{
  position:absolute;
  right:55px;
  bottom:34px;
  font-size:110px;
  color:var(--green);
  opacity:.9;
}

.hour-row{
  display:grid;
  grid-template-columns:44px 1fr 1fr;
  align-items:center;
  gap:14px;
  margin-bottom:26px;
}

.hour-row i{
  width:34px;
  height:34px;
  border:1.5px solid var(--blue);
  border-radius:50%;
  color:var(--blue);
  display:grid;
  place-items:center;
  font-size:18px;
}

.hour-row strong{
  color:var(--blue);
  font-size:18px;
  font-weight:500;
}

.hour-row span{
  color:var(--green);
  font-size:18px;
  font-weight:500;
}

/* MAP */
.map-section{
    padding:0 0 38px;
}

.map-box{
    height:450px;
    border-radius:18px;
    overflow:hidden;
    position:relative;
    box-shadow:var(--soft-shadow);
}

.map-box iframe{
    width:100%;
    height:100%;
    display:block;
}

.map-address{
    position: absolute;
    top: 0px;
    left: 0px;
    background: #fff;
    padding: 5px 73px;
    border-radius: 15px;
    box-shadow: var(--shadow);
    max-width: 320px;
    z-index: 2;
}

.map-address h5{
    color:var(--blue);
    font-size:18px;
    font-weight:600;
    margin-bottom:8px;
}

.map-address p{
    margin:0;
    font-size:14px;
    line-height:1.6;
    color:var(--text);
}
/* CTA */

.contact-cta-section{
  padding:0 0 14px;
}

.contact-cta{
  background:linear-gradient(90deg,var(--blue),var(--blue-dark));
  color:#fff;
  border-radius:18px;
  padding:24px 70px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  box-shadow:var(--soft-shadow);
}

.cta-left,
.cta-right{
  display:flex;
  align-items:center;
  gap:24px;
}

.cta-left > i,
.cta-right > i{
  width:76px;
  height:76px;
  background:#fff;
  color:var(--blue);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:34px;
}

.cta-right > i{
  background:var(--green);
  color:#fff;
}

.contact-cta h3{
  font-size:28px;
  font-weight:500;
  margin:0 0 6px;
}

.contact-cta h3 span{
  color:#7cf06f;
}

.contact-cta p{
  margin:0;
  font-size:17px;
}

.contact-cta h2{
  font-size:36px;
  font-weight:500;
  margin:0;
}

/* ANIMATION */

@keyframes fadeUp{
  from{opacity:0;transform:translateY(28px);}
  to{opacity:1;transform:translateY(0);}
}

@keyframes fadeRight{
  from{opacity:0;transform:translateX(40px);}
  to{opacity:1;transform:translateX(0);}
}

/* iPad Pro */

@media(max-width:1200px){
  .contact-info-grid{
    grid-template-columns:repeat(3,1fr);
  }

  .contact-hero-content h1{
    font-size:56px;
  }
}

/* iPad Mini */

@media(max-width:991px){
  .contact-container{
    padding-left:24px;
    padding-right:24px;
  }

  .contact-hero{
    text-align:center;
    padding:45px 0 70px;
  }

  .title-line,
  .contact-hero-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .contact-hero-img{
    margin-top:30px;
  }

  .contact-hero-img > img{
    height:330px;
    border-radius:90px 0 90px 90px;
  }

  .contact-info-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .help-icon{
    position:static;
    display:block;
    margin-top:22px;
  }

  .contact-cta{
    flex-direction:column;
    align-items:flex-start;
    gap:24px;
  }
}

/* Mobile */

@media(max-width:576px){
  .contact-container{
    padding-left:14px;
    padding-right:14px;
  }

  .contact-hero{
    padding:85px 0 60px;
  }

  .contact-hero-content h1{
    font-size:38px;
  }

  .contact-hero-content h3{
    font-size:28px;
  }

  .contact-hero-content p{
    font-size:16px;
  }

  .contact-hero-img > img{
    height:240px;
    border-radius:45px;
  }

  .contact-info-grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .contact-card{
    min-height:auto;
    padding:24px 18px;
  }

  .contact-card h5{
    font-size:18px;
  }
}
/* FAQ Style*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --text:#334155;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
  font-weight:500;
}

img{
  max-width:100%;
  display:block;
}

.faq-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

/* HERO */

.faq-hero{
  position:relative;
  padding:58px 0 96px;
  overflow:hidden;
}

.faq-hero::before{
  content:"";
  position:absolute;
  left:-150px;
  top:-160px;
  width:720px;
  height:720px;
  background:rgba(6,59,151,.055);
  border-radius:50%;
}

.faq-hero-content{
  position:relative;
  z-index:2;
  animation:fadeUp .8s ease both;
}

.faq-hero-content h1{
  font-size:76px;
  font-weight:500;
  color:var(--blue);
  margin:0 0 10px;
  line-height:1;
}

.faq-hero-content h1 span{
  color:var(--green);
}

.faq-hero-content h3{
  font-family:cursive;
  color:var(--green);
  font-size:38px;
  font-weight:500;
  margin:0;
}

.title-line{
  width:64px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:22px 0 22px;
}

.faq-hero-content p{
  color:var(--dark);
  font-size:18px;
  line-height:1.7;
  max-width:470px;
}

.faq-hero-img{
  position:relative;
  animation:fadeRight .9s ease both;
}

.faq-hero-img > img{
  width:100%;
  height:380px;
  object-fit:cover;
  border-radius:0 0 0 170px;
  box-shadow:var(--soft-shadow);
}

.hero-logo-card{
  position:absolute;
  top:25%;
  left:50%;
  transform:translateX(-50%);
  width:178px;
  padding:16px;
  background:rgba(255,255,255,.9);
  border-radius:38px 38px 0 0;
  box-shadow:var(--shadow);
}

.faq-wave{
  position:absolute;
  left:0;
  right:0;
  bottom:35px;
  height:78px;
  background:linear-gradient(90deg,var(--blue),var(--green),var(--blue));
  clip-path:ellipse(60% 35% at 50% 100%);
}

/* FAQ */

.faq-section{
  padding:0 0 34px;
}

.faq-heading{
  text-align:center;
  margin-bottom:34px;
}

.faq-heading h2{
  color:var(--blue);
  font-size:32px;
  font-weight:500;
  margin-bottom:16px;
}

.faq-heading span{
  display:block;
  width:54px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:auto;
}

.faq-accordion{
  max-width:1420px;
  margin:auto;
}

.accordion-item{
  border:0;
  background:#fff;
  border-radius:14px !important;
  box-shadow:var(--soft-shadow);
  margin-bottom:16px;
  overflow:hidden;
  animation:fadeUp .7s ease both;
}

.accordion-button{
  padding:22px 44px;
  color:var(--blue);
  font-size:21px;
  font-weight:500;
  background:#fff;
  box-shadow:none !important;
  gap:18px;
}

.accordion-button:not(.collapsed){
  color:var(--blue);
  background:#fff;
}

.accordion-button::after{
  background-image:none;
  content:"\F286";
  font-family:"bootstrap-icons";
  color:var(--blue);
  transform:none;
}

.accordion-button:not(.collapsed)::after{
  content:"\F282";
}

.faq-icon{
  width:28px;
  height:28px;
  min-width:28px;
  border-radius:50%;
  background:var(--green);
  position:relative;
}

.faq-icon::before,
.faq-icon::after{
  content:"";
  position:absolute;
  background:#fff;
  border-radius:4px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}

.faq-icon::before{
  width:12px;
  height:3px;
}

.faq-icon::after{
  width:3px;
  height:12px;
}

.accordion-button:not(.collapsed) .faq-icon::after{
  display:none;
}

.accordion-body{
  padding:0 86px 28px;
  color:var(--dark);
  font-size:18px;
  line-height:1.75;
}

/* CTA */

.faq-cta-section{
  padding:0 0 22px;
}

.faq-cta{
  max-width:1420px;
  margin:auto;
  background:linear-gradient(90deg,var(--blue),var(--blue-dark),var(--green));
  color:#fff;
  border-radius:16px;
  padding:28px 66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  box-shadow:var(--soft-shadow);
  animation:fadeUp .8s ease both;
}

.cta-left{
  display:flex;
  align-items:center;
  gap:26px;
}

.cta-icon{
  width:86px;
  height:86px;
  border-radius:50%;
  background:#fff;
  color:var(--blue);
  display:grid;
  place-items:center;
  font-size:42px;
}

.faq-cta h3{
  color:#63e434;
  font-size:24px;
  font-weight:500;
  margin-bottom:8px;
}

.faq-cta p{
  margin:0;
  font-size:17px;
  line-height:1.6;
}

.faq-cta a{
  background:#fff;
  color:var(--green);
  padding:15px 34px;
  border-radius:42px;
  text-decoration:none;
  font-size:18px;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:14px;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  transition:.3s ease;
}

.faq-cta a:hover{
  transform:translateY(-4px);
}

.faq-cta a i{
  font-size:26px;
}

/* ANIMATION */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(28px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes fadeRight{
  from{
    opacity:0;
    transform:translateX(40px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

/* iPad Pro */

@media(max-width:1200px){
  .faq-hero-content h1{
    font-size:62px;
  }

  .faq-hero-content h3{
    font-size:34px;
  }

  .accordion-button{
    font-size:19px;
  }
}

/* iPad Mini */

@media(max-width:991px){
  .faq-container{
    padding-left:24px;
    padding-right:24px;
  }

  .faq-hero{
    text-align:center;
    padding:45px 0 75px;
  }

  .title-line,
  .faq-hero-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .faq-hero-img{
    margin-top:30px;
  }

  .faq-hero-img > img{
    height:330px;
    border-radius:90px 0 90px 90px;
  }

  .accordion-button{
    padding:20px 28px;
  }

  .accordion-body{
    padding:0 70px 24px;
  }

  .faq-cta{
    padding:28px;
    flex-direction:column;
    align-items:flex-start;
    gap:24px;
  }
}

/* Mobile */

@media(max-width:576px){
  .faq-container{
    padding-left:14px;
    padding-right:14px;
  }

  .faq-hero-content h1{
    font-size:48px;
  }

  .faq-hero-content h3{
    font-size:28px;
  }

  .faq-hero-content p{
    font-size:16px;
  }

  .faq-hero-img > img{
    height:260px;
  }

  .hero-logo-card{
    width:130px;
  }

  .faq-heading h2{
    font-size:24px;
  }

  .accordion-button{
    font-size:16px;
    padding:18px;
    gap:12px;
  }

  .accordion-body{
    padding:0 22px 22px 58px;
    font-size:15px;
  }

  .faq-icon{
    width:24px;
    height:24px;
    min-width:24px;
  }

  .cta-left{
    flex-direction:column;
    align-items:flex-start;
  }

  .faq-cta h3{
    font-size:22px;
  }

  .faq-cta a{
    width:100%;
    justify-content:center;
  }
}
/*Blogs Style */
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --text:#334155;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
  font-weight:500;
}

img{
  max-width:100%;
  display:block;
}

.blog-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

/* HERO */

.blog-hero{
  position:relative;
  padding:58px 0 96px;
  overflow:hidden;
}

.blog-hero::before{
  content:"";
  position:absolute;
  left:-150px;
  top:-160px;
  width:720px;
  height:720px;
  background:rgba(6,59,151,.055);
  border-radius:50%;
}

.blog-hero-content{
  position:relative;
  z-index:2;
  animation:fadeUp .8s ease both;
}

.blog-hero-content h1{
  font-size:76px;
  line-height:1;
  font-weight:500;
  color:var(--blue);
  margin:0 0 16px;
}

.blog-hero-content h1 span{
  color:var(--green);
}

.blog-hero-content h3{
  font-family:cursive;
  color:var(--green);
  font-size:40px;
  font-weight:500;
  margin:0;
}

.title-line{
  width:64px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:22px 0;
}

.blog-hero-content p{
  font-size:18px;
  line-height:1.8;
  color:var(--dark);
}

.blog-hero-img{
  position:relative;
  animation:fadeRight .9s ease both;
}

.blog-hero-img > img{
  width:100%;
  height:385px;
  object-fit:cover;
  border-radius:0 0 0 170px;
  box-shadow:var(--soft-shadow);
}

.blog-wave{
  position:absolute;
  left:0;
  right:0;
  bottom:35px;
  height:78px;
  background:linear-gradient(90deg,var(--blue),var(--green),var(--blue));
  clip-path:ellipse(60% 35% at 50% 100%);
}

/* BLOG SECTION */

.blogs-section{
  padding:0 0 48px;
}

.blog-heading{
  text-align:center;
  margin-bottom:34px;
}

.blog-heading h2{
  color:var(--blue);
  font-size:34px;
  font-weight:500;
  margin-bottom:16px;
}

.blog-heading span{
  width:54px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  display:block;
  margin:auto;
}

.blogs-grid{
  max-width:1160px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:34px 42px;
}

.blog-card{
  background:#fff;
  border-radius:12px;
  overflow:hidden;
  box-shadow:var(--soft-shadow);
  transition:.35s ease;
  animation:fadeUp .8s ease both;
}

.blog-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow);
}

.blog-img{
  position:relative;
  height:190px;
  overflow:hidden;
}

.blog-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.45s ease;
}

.blog-card:hover .blog-img img{
  transform:scale(1.08);
}

.blog-date{
  position:absolute;
  left:0;
  bottom:0;
  width:92px;
  height:88px;
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}

.blog-date strong{
  font-size:34px;
  line-height:1;
  font-weight:500;
}

.blog-date small{
  font-size:13px;
  margin-top:6px;
  font-weight:500;
}

.blog-content{
  padding:24px 28px 28px;
}

.blog-content span{
  color:var(--green);
  font-size:14px;
  font-weight:500;
  display:block;
  margin-bottom:12px;
}

.blog-content h3{
  color:var(--blue);
  font-size:24px;
  line-height:1.25;
  font-weight:500;
  margin-bottom:18px;
}

.blog-content p{
  color:var(--dark);
  font-size:16px;
  line-height:1.7;
  margin-bottom:22px;
}

.blog-content a{
  color:var(--green);
  text-decoration:none;
  font-size:16px;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:7px;
  transition:.3s ease;
}

.blog-content a:hover{
  color:var(--blue);
  transform:translateX(5px);
}

/* ANIMATION */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(28px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes fadeRight{
  from{
    opacity:0;
    transform:translateX(40px);
  }

  to{
    opacity:1;
    transform:translateX(0);
  }
}

/* iPad Pro */

@media(max-width:1200px){
  .blog-hero-content h1{
    font-size:62px;
  }

  .blog-hero-content h3{
    font-size:34px;
  }

  .blogs-grid{
    max-width:1000px;
    gap:30px;
  }
}

/* iPad Mini */

@media(max-width:991px){
  .blog-container{
    padding-left:24px;
    padding-right:24px;
  }

  .blog-hero{
    text-align:center;
    padding:45px 0 78px;
  }

  .title-line{
    margin-left:auto;
    margin-right:auto;
  }

  .blog-hero-img{
    margin-top:30px;
  }

  .blog-hero-img > img{
    height:330px;
    border-radius:90px 0 90px 90px;
  }

  .blogs-grid{
    grid-template-columns:1fr;
    max-width:680px;
  }
}

/* Mobile */

@media(max-width:576px){
  .blog-container{
    padding-left:14px;
    padding-right:14px;
  }

  .blog-hero-content h1{
    font-size:46px;
  }

  .blog-hero-content h3{
    font-size:28px;
  }

  .blog-hero-content p{
    font-size:16px;
  }

  .blog-hero-img > img{
    height:260px;
  }

  .blog-heading h2{
    font-size:26px;
  }

  .blog-img{
    height:175px;
  }

  .blog-content{
    padding:22px;
  }

  .blog-content h3{
    font-size:21px;
  }

  .blog-content p{
    font-size:15px;
  }
}
/*Gallery Style*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --text:#3f4a5f;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
  font-weight:500;
}

.site-header,
header{
  position:sticky;
  top:0;
  z-index:9999;
  background:#fff;
}

img{
  max-width:100%;
  display:block;
}

.gallery-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

/* HERO */

.gallery-hero{
  padding:60px 0 45px;
  background:#f8fafc;
  overflow:hidden;
}

.gallery-hero-content{
  max-width:540px;
  animation:fadeUp .8s ease both;
}

.gallery-hero-content h1{
  color:#000;
  font-size:64px;
  line-height:1.05;
  font-weight:500;
  margin:0 0 20px;
}

.gallery-hero-content h1 span{
  color:var(--green);
}

.title-line{
  width:64px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin-bottom:24px;
}

.gallery-hero-content p{
  color:var(--text);
  font-size:18px;
  line-height:1.8;
  max-width:520px;
  margin:0;
}

.gallery-hero-img{
  animation:fadeRight .9s ease both;
}

.gallery-hero-img img{
  width:100%;
  height:420px;
  object-fit:cover;
  border-radius:0px 0px 0px 170px;
  box-shadow:var(--shadow);
}

/* TABS */

.gallery-tabs-section{
  margin-top:-28px;
  position:relative;
  z-index:5;
  padding-bottom:36px;
}

.gallery-tabs{
  background:#fff;
  padding:14px;
  border-radius:18px;
  box-shadow:var(--soft-shadow);
  display:flex;
  justify-content:space-between;
  gap:10px;
  overflow-x:auto;
}

.gallery-tabs::-webkit-scrollbar{
  height:4px;
}

.gallery-tabs::-webkit-scrollbar-thumb{
  background:var(--green);
  border-radius:20px;
}

.gallery-tab{
  border:0;
  background:#fff;
  color:var(--blue);
  padding:14px 22px;
  border-radius:12px;
  font-weight:500;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:10px;
  transition:.3s ease;
}

.gallery-tab i{
  font-size:22px;
}

.gallery-tab.active,
.gallery-tab:hover{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
}

/* GALLERY */

.gallery-main-section{
  padding:0 0 28px;
}

.gallery-group{
  margin-bottom:28px;
}

.hide-gallery{
  display:none !important;
}

.gallery-title{
  font-size:22px;
  color:#000;
  font-weight:500;
  margin:0 0 18px;
  position:relative;
}

.gallery-title::after{
  content:"";
  display:block;
  width:44px;
  height:3px;
  background:var(--green);
  border-radius:20px;
  margin-top:8px;
}

.gallery-grid{
  display:grid;
  gap:14px;
}

.exterior-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:180px 180px;
  gap:14px;
}

.exterior-grid .large{
  grid-row:1 / 3;
}

.four-grid{
  grid-template-columns:repeat(4,1fr);
}

.five-grid{
  grid-template-columns:repeat(2,1fr);
}

.dining-grid{
    display:grid;
    grid-template-columns:1fr;
    max-width:350px;
}




.three-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}
.gallery-image{
  width:100%;
  height:100%;
  min-height:170px;
  object-fit:cover;
  border-radius:10px;
  box-shadow:var(--soft-shadow);
  cursor:pointer;
  transition:.35s ease;
}

.gallery-image:hover{
  transform:scale(1.035);
  filter:brightness(.9);
}

.labeled-gallery p{
  color:#07122d;
  text-align:center;
  font-size:14px;
  margin:8px 0 0;
  font-weight:500;
}

.four-grid .gallery-image{
  height:190px;
}

.five-grid .gallery-image{
  height:155px;
}

.three-grid .gallery-image{
  height:155px;
}

/* CTA */

.gallery-cta-section{
  padding:18px 0 0;
}

.gallery-cta{
  background:#f9fbff;
  border-radius:18px;
  padding:24px 46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  box-shadow:var(--soft-shadow);
}

.cta-left{
  display:flex;
  align-items:center;
  gap:24px;
}

.cta-left > i{
  width:70px;
  height:70px;
  border-radius:50%;
  background:var(--green);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:32px;
}

.gallery-cta h3{
  color:var(--green);
  font-size:24px;
  font-weight:500;
  margin:0 0 6px;
}

.gallery-cta p{
  color:var(--dark);
  font-size:15px;
  margin:0;
}

.gallery-cta a{
  border:1px solid var(--green);
  color:var(--green);
  background:#fff;
  padding:14px 28px;
  border-radius:10px;
  text-decoration:none;
  font-size:18px;
  font-weight:500;
  display:inline-flex;
  gap:14px;
  align-items:center;
}

/* LIGHTBOX */
/* FULL VIEW LIGHTBOX FIX */

.gallery-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.92);
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:70px 95px;
}

.gallery-lightbox.active{
  display:flex;
}

#galleryFullImage{
  width:90vw;
  height:82vh;
  object-fit:contain;
  border-radius:18px;
  background:#111;
  box-shadow:0 25px 80px rgba(0,0,0,.5);
  animation:zoomIn .3s ease;
}

.gallery-close,
.gallery-prev,
.gallery-next{
  position:fixed;
  border:0;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#fff;
  color:#063b97;
  z-index:1000000;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.gallery-close{
  top:28px;
  right:32px;
}

.gallery-prev{
  left:35px;
  top:50%;
  transform:translateY(-50%);
}

.gallery-next{
  right:35px;
  top:50%;
  transform:translateY(-50%);
}

.gallery-close i,
.gallery-prev i,
.gallery-next i{
  font-size:26px;
}

.gallery-close:hover,
.gallery-prev:hover,
.gallery-next:hover{
  background:#0f8f18;
  color:#fff;
}

@keyframes zoomIn{
  from{
    opacity:0;
    transform:scale(.92);
  }
  to{
    opacity:1;
    transform:scale(1);
  }
}

@media(max-width:768px){
  .gallery-lightbox{
    padding:60px 15px;
  }

  #galleryFullImage{
    width:94vw;
    height:76vh;
  }

  .gallery-close,
  .gallery-prev,
  .gallery-next{
    width:46px;
    height:46px;
  }

  .gallery-close{
    top:16px;
    right:16px;
  }

  .gallery-prev{
    left:12px;
  }

  .gallery-next{
    right:12px;
  }
}
.gallery-close i,
.gallery-prev i,
.gallery-next i{
  font-size:24px;
}

/* ANIMATION */

@keyframes fadeUp{
  from{opacity:0;transform:translateY(28px);}
  to{opacity:1;transform:translateY(0);}
}

@keyframes fadeRight{
  from{opacity:0;transform:translateX(40px);}
  to{opacity:1;transform:translateX(0);}
}

@keyframes zoomIn{
  from{opacity:0;transform:scale(.86);}
  to{opacity:1;transform:scale(1);}
}

/* IPAD PRO */

@media(max-width:1200px){
  .gallery-hero-content h1{
    font-size:54px;
  }

  .four-grid,
  .five-grid{
    grid-template-columns:repeat(3,1fr);
  }

  .double-gallery{
    grid-template-columns:300px calc(100% - 330px);
  }
}

/* IPAD MINI */

@media(max-width:991px){
  .gallery-container{
    padding-left:24px;
    padding-right:24px;
  }

  .gallery-hero{
    text-align:center;
    padding:45px 0 50px;
  }

  .gallery-hero-content{
    margin:auto;
  }

  .title-line,
  .gallery-hero-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .gallery-hero-img{
    margin-top:25px;
  }

  .gallery-hero-img img{
    height:320px;
    border-radius:22px;
  }

  .exterior-grid{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
  }

  .exterior-grid .large{
    grid-column:1 / 3;
    grid-row:auto;
    height:280px;
  }

  .exterior-grid img:not(.large){
    height:170px;
  }

  .four-grid,
  .five-grid,
  .three-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .gallery-cta{
    flex-direction:column;
    align-items:flex-start;
    gap:22px;
  }
}

/* MOBILE */

@media(max-width:576px){
  .gallery-container{
    padding-left:14px;
    padding-right:14px;
  }

  .gallery-hero-content h1{
    font-size:40px;
  }

  .gallery-hero-content p{
    font-size:15px;
  }

  .gallery-hero-img img{
    height:240px;
  }

  .exterior-grid,
  .four-grid,
  .five-grid,
  .three-grid{
    grid-template-columns:1fr;
  }

  .exterior-grid .large{
    grid-column:auto;
    height:220px;
  }

  .exterior-grid img:not(.large),
  .gallery-image,
  .four-grid .gallery-image,
  .five-grid .gallery-image,
  .three-grid .gallery-image{
    height:220px;
  }

  .cta-left{
    flex-direction:column;
    align-items:flex-start;
  }

  .gallery-cta{
    padding:24px;
  }

  .gallery-cta a{
    width:100%;
    justify-content:center;
  }

  #galleryFullImage{
    max-width:94vw;
    max-height:78vh;
  }

  .gallery-close,
  .gallery-prev,
  .gallery-next{
    width:44px;
    height:44px;
  }

  .gallery-close{
    top:14px;
    right:14px;
  }

  .gallery-prev{
    left:12px;
  }

  .gallery-next{
    right:12px;
  }
}
/* ======================================
   DINING & COMMON AREAS FIX
====================================== */

.gallery-main-section{
  padding:45px 0 40px;
  min-height:520px;
}

.dining-grid{
  display:grid;
  grid-template-columns:360px;
  gap:18px;
}

.dining-grid .gallery-image{
  height:220px;
  width:100%;
  object-fit:cover;
}


.common .gallery-image{
  height:220px;
  width:100%;
  object-fit:cover;
}

.gallery-group{
  margin-bottom:45px;
}

@media(max-width:576px){

  .dining-grid,
  .common .three-grid{
    grid-template-columns:1fr;
    max-width:100%;
  }

  .dining-grid .gallery-image,
  .common .gallery-image{
    height:230px;
  }

}
/*Rooms Style*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:110px;
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
  font-weight:500;
}

img{
  max-width:100%;
  display:block;
}

.rooms-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

/* HERO */

.rooms-hero{
  position:relative;
  padding:58px 0 96px;
  overflow:hidden;
}

.rooms-hero::before{
  content:"";
  position:absolute;
  left:-150px;
  top:-160px;
  width:720px;
  height:720px;
  background:rgba(6,59,151,.055);
  border-radius:50%;
}

.rooms-hero-content{
  position:relative;
  z-index:2;
  animation:fadeUp .8s ease both;
}

.rooms-hero-content h1{
  font-size:76px;
  font-weight:500;
  color:var(--blue);
  margin:0 0 10px;
}

.rooms-hero-content h1 span{
  color:var(--green);
}

.rooms-hero-content h3{
  font-family:cursive;
  color:var(--green);
  font-size:38px;
  font-weight:500;
  margin:0;
}

.title-line{
  width:64px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:22px 0;
}

.rooms-hero-content p{
  font-size:18px;
  line-height:1.8;
  max-width:520px;
}

.rooms-hero-img{
  position:relative;
  animation:fadeRight .9s ease both;
}

.rooms-hero-img > img{
  width:100%;
  height:380px;
  object-fit:cover;
  border-radius:0 0 0 170px;
  box-shadow:var(--soft-shadow);
}

.rooms-wave{
  position:absolute;
  left:0;
  right:0;
  bottom:35px;
  height:78px;
  background:linear-gradient(90deg,var(--blue),var(--green),var(--blue));
  clip-path:ellipse(60% 35% at 50% 100%);
}

/* ROOM LIST */

.rooms-list-section{
  margin-top:-35px;
  position:relative;
  z-index:3;
  padding:0 0 28px;
}

.room-detail-card{
  display:grid;
  grid-template-columns:1fr 1.08fr;
  gap:34px;
  align-items:stretch;
  margin-bottom:24px;
  animation:fadeUp .8s ease both;
}

.room-image{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--soft-shadow);
}

.room-image img{
  width:100%;
  height:100%;
  min-height:315px;
  object-fit:cover;
  transition:.45s ease;
}

.room-detail-card:hover .room-image img{
  transform:scale(1.04);
}

.room-badge{
  position:absolute;
  left:24px;
  top:24px;
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  border-radius:9px;
  padding:14px 22px;
  display:flex;
  align-items:center;
  gap:12px;
  box-shadow:0 12px 25px rgba(15,143,24,.28);
}

.room-badge i{
  font-size:32px;
}

.room-badge span{
  font-size:15px;
  line-height:1.1;
  font-weight:500;
}

.room-badge small{
  font-size:13px;
}

.room-details{
  background:#fff;
  border-radius:16px;
  padding:34px;
  box-shadow:var(--soft-shadow);
  transition:.35s ease;
}

.room-detail-card:hover .room-details{
  box-shadow:var(--shadow);
}

.room-details h2{
  color:var(--blue);
  font-size:28px;
  font-weight:500;
  margin:0 0 12px;
  position:relative;
}

.room-details h2 span{
  color:var(--green);
}

.room-details h2::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-7px;
  width:42px;
  height:3px;
  background:var(--green);
  border-radius:20px;
}

.room-details p{
  font-size:15px;
  line-height:1.7;
  margin:22px 0 28px;
}

.room-features{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px 18px;
  padding-bottom:28px;
  border-bottom:1px solid #dfe7f1;
}

.room-features.four{
  grid-template-columns:repeat(4,1fr);
}

.room-features span{
  font-size:14px;
  color:var(--dark);
  display:flex;
  align-items:center;
  gap:10px;
}

.room-features i{
  color:var(--blue);
  font-size:19px;
}

.room-bottom{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  padding-top:24px;
}

.room-bottom small{
  color:var(--blue);
  font-size:15px;
}

.room-bottom h3{
  color:var(--green);
  font-size:34px;
  font-weight:500;
  margin:4px 0 0;
}

.room-bottom h3 span{
  color:var(--blue);
  font-size:15px;
}

.room-bottom a{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  padding:16px 34px;
  border-radius:10px;
  text-decoration:none;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:16px;
  transition:.3s ease;
}

.room-bottom a:hover{
  transform:translateY(-4px);
}

/* CTA */

.rooms-cta-section{
  padding:0 0 14px;
}

.rooms-cta{
  background:linear-gradient(90deg,var(--blue),var(--blue-dark),var(--green));
  color:#fff;
  border-radius:18px;
  padding:24px 70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  box-shadow:var(--soft-shadow);
}

.cta-left{
  display:flex;
  align-items:center;
  gap:26px;
}

.cta-left > i{
  width:76px;
  height:76px;
  background:#fff;
  color:var(--blue);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:38px;
}

.rooms-cta h3{
  font-size:24px;
  font-weight:500;
  margin:0 0 6px;
}

.rooms-cta h3::first-letter{
  color:#7cf06f;
}

.rooms-cta p{
  margin:0;
  font-size:16px;
}

.rooms-cta a{
  background:#fff;
  color:var(--green);
  padding:15px 34px;
  border-radius:42px;
  text-decoration:none;
  font-size:18px;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:14px;
}

.rooms-cta a i{
  font-size:26px;
}

/* ANIMATION */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(28px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes fadeRight{
  from{
    opacity:0;
    transform:translateX(40px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

/* iPad Pro */

@media(max-width:1200px){
  .rooms-hero-content h1{
    font-size:62px;
  }

  .rooms-hero-content h3{
    font-size:34px;
  }

  .room-features{
    grid-template-columns:repeat(2,1fr);
  }
}

/* iPad Mini */

@media(max-width:991px){
  .rooms-container{
    padding-left:24px;
    padding-right:24px;
  }

  .rooms-hero{
    text-align:center;
    padding:45px 0 76px;
  }

  .title-line,
  .rooms-hero-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .rooms-hero-img{
    margin-top:30px;
  }

  .rooms-hero-img > img{
    height:330px;
    border-radius:90px 0 90px 90px;
  }

  .room-detail-card{
    grid-template-columns:1fr;
    gap:0;
  }

  .room-image{
    border-radius:16px 16px 0 0;
  }

  .room-details{
    border-radius:0 0 16px 16px;
  }

  .rooms-cta{
    padding:28px;
    flex-direction:column;
    align-items:flex-start;
    gap:22px;
  }
}

/* Mobile */

@media(max-width:576px){
  .rooms-container{
    padding-left:14px;
    padding-right:14px;
  }

  .rooms-hero-content h1{
    font-size:46px;
  }

  .rooms-hero-content h3{
    font-size:28px;
  }

  .rooms-hero-content p{
    font-size:16px;
  }

  .rooms-hero-img > img{
    height:260px;
  }

  .room-image img{
    min-height:230px;
  }

  .room-badge{
    left:14px;
    top:14px;
    padding:10px 14px;
  }

  .room-badge i{
    font-size:24px;
  }

  .room-details{
    padding:24px;
  }

  .room-features,
  .room-features.four{
    grid-template-columns:1fr;
    gap:14px;
  }

  .room-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:18px;
  }

  .room-bottom a{
    width:100%;
    justify-content:center;
  }

  .cta-left{
    flex-direction:column;
    align-items:flex-start;
  }

  .rooms-cta a{
    width:100%;
    justify-content:center;
  }
}
/*Halls Style*/
:root{
  --green:#0f8f18;
  --green-dark:#08710f;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --shadow:0 18px 45px rgba(0,0,0,.12);
  --soft-shadow:0 10px 30px rgba(0,0,0,.08);
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:110px;
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  background:linear-gradient(180deg,#f8fcff 0%,#fff 48%,#f9fdff 100%);
  color:var(--dark);
  overflow-x:hidden;
  font-weight:500;
}

img{
  max-width:100%;
  display:block;
}

.halls-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

/* HERO */

.halls-hero{
  position:relative;
  padding:58px 0 96px;
  overflow:hidden;
}

.halls-hero::before{
  content:"";
  position:absolute;
  left:-150px;
  top:-160px;
  width:720px;
  height:720px;
  background:rgba(6,59,151,.055);
  border-radius:50%;
}

.halls-hero-content{
  position:relative;
  z-index:2;
  animation:fadeUp .8s ease both;
}

.halls-hero-content h1{
  font-size:76px;
  font-weight:500;
  color:var(--blue);
  margin:0 0 10px;
}

.halls-hero-content h1 span{
  color:var(--green);
}

.halls-hero-content h3{
  font-family:cursive;
  color:var(--green);
  font-size:38px;
  font-weight:500;
  margin:0;
}

.title-line{
  width:64px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:22px 0;
}

.halls-hero-content p{
  font-size:18px;
  line-height:1.8;
  max-width:520px;
}

.halls-hero-img{
  position:relative;
  animation:fadeRight .9s ease both;
}

.halls-hero-img > img{
  width:100%;
  height:380px;
  object-fit:cover;
  border-radius:0 0 0 170px;
  box-shadow:var(--soft-shadow);
}

.halls-wave{
  position:absolute;
  left:0;
  right:0;
  bottom:35px;
  height:78px;
  background:linear-gradient(90deg,var(--blue),var(--green),var(--blue));
  clip-path:ellipse(60% 35% at 50% 100%);
}

/* HEADING */

.hall-spaces-section{
  margin-top:-35px;
  position:relative;
  z-index:3;
  padding:0 0 28px;
}

.hall-heading{
  text-align:center;
  margin-bottom:30px;
}

.hall-heading h2{
  color:var(--blue);
  font-size:34px;
  font-weight:500;
  margin-bottom:16px;
}

.hall-heading span{
  display:block;
  width:54px;
  height:4px;
  background:var(--green);
  border-radius:20px;
  margin:auto;
}

/* HALL CARD */

.hall-detail-card{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:34px;
  align-items:stretch;
  margin-bottom:28px;
  animation:fadeUp .8s ease both;
}

.hall-image{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--soft-shadow);
}

.hall-image img{
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
  transition:.45s ease;
}

.hall-detail-card:hover .hall-image img{
  transform:scale(1.04);
}

.hall-badge{
  position:absolute;
  left:24px;
  top:24px;
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  border-radius:9px;
  padding:14px 22px;
  display:flex;
  align-items:center;
  gap:12px;
  box-shadow:0 12px 25px rgba(15,143,24,.28);
}

.hall-badge i{
  font-size:32px;
}

.hall-badge span{
  font-size:15px;
  line-height:1.1;
  font-weight:500;
}

.hall-badge small{
  font-size:13px;
}

.hall-details{
  background:#fff;
  border-radius:16px;
  padding:38px;
  box-shadow:var(--soft-shadow);
  transition:.35s ease;
}

.hall-detail-card:hover .hall-details{
  box-shadow:var(--shadow);
}

.hall-details h2{
  color:var(--blue);
  font-size:30px;
  font-weight:500;
  margin:0;
}

.hall-details h2 span{
  color:var(--green);
}

.hall-line{
  width:44px;
  height:3px;
  background:var(--green);
  border-radius:20px;
  margin:14px 0 22px;
}

.hall-details p{
  font-size:15px;
  line-height:1.75;
  margin-bottom:28px;
}

.hall-features{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px 32px;
  padding-bottom:28px;
  border-bottom:1px solid #dfe7f1;
}

.hall-features span{
  font-size:14px;
  display:flex;
  align-items:center;
  gap:12px;
}

.hall-features i{
  color:var(--blue);
  font-size:20px;
}

.hall-bottom{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  padding-top:24px;
}

.hall-bottom small{
  color:var(--blue);
  font-size:15px;
}

.hall-bottom h3{
  color:var(--green);
  font-size:34px;
  font-weight:500;
  margin:4px 0 0;
}

.hall-bottom h3 span{
  color:var(--blue);
  font-size:15px;
}

.hall-bottom a{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;
  padding:16px 34px;
  border-radius:10px;
  text-decoration:none;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:16px;
  transition:.3s ease;
}

.hall-bottom a:hover{
  transform:translateY(-4px);
}

/* CTA */

.halls-cta-section{
  padding:0 0 14px;
}

.halls-cta{
  background:linear-gradient(90deg,var(--blue),var(--blue-dark),var(--green));
  color:#fff;
  border-radius:18px;
  padding:24px 70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  box-shadow:var(--soft-shadow);
}

.cta-left{
  display:flex;
  align-items:center;
  gap:26px;
}

.cta-left > i{
  width:76px;
  height:76px;
  background:#fff;
  color:var(--blue);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:38px;
}

.halls-cta h3{
  color:#56e234;
  font-size:24px;
  font-weight:500;
  margin:0 0 6px;
}

.halls-cta p{
  margin:0;
  font-size:16px;
}

.halls-cta a{
  background:#fff;
  color:var(--green);
  padding:15px 34px;
  border-radius:42px;
  text-decoration:none;
  font-size:18px;
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:14px;
}

.halls-cta a i{
  font-size:26px;
}

/* ANIMATION */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(28px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes fadeRight{
  from{
    opacity:0;
    transform:translateX(40px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

/* iPad Pro */

@media(max-width:1200px){
  .halls-hero-content h1{
    font-size:62px;
  }

  .halls-hero-content h3{
    font-size:34px;
  }
}

/* iPad Mini */

@media(max-width:991px){
  .halls-container{
    padding-left:24px;
    padding-right:24px;
  }

  .halls-hero{
    text-align:center;
    padding:45px 0 76px;
  }

  .title-line,
  .halls-hero-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .halls-hero-img{
    margin-top:30px;
  }

  .halls-hero-img > img{
    height:330px;
    border-radius:90px 0 90px 90px;
  }

  .hall-detail-card{
    grid-template-columns:1fr;
    gap:0;
  }

  .hall-image{
    border-radius:16px 16px 0 0;
  }

  .hall-details{
    border-radius:0 0 16px 16px;
  }

  .halls-cta{
    padding:28px;
    flex-direction:column;
    align-items:flex-start;
    gap:22px;
  }
}

/* Mobile */

@media(max-width:576px){
  .halls-container{
    padding-left:14px;
    padding-right:14px;
  }

  .halls-hero-content h1{
    font-size:46px;
  }

  .halls-hero-content h3{
    font-size:28px;
  }

  .halls-hero-content p{
    font-size:16px;
  }

  .halls-hero-img > img{
    height:260px;
  }

  .hall-heading h2{
    font-size:26px;
  }

  .hall-image img{
    min-height:240px;
  }

  .hall-badge{
    left:14px;
    top:14px;
    padding:10px 14px;
  }

  .hall-badge i{
    font-size:24px;
  }

  .hall-details{
    padding:24px;
  }

  .hall-details h2{
    font-size:24px;
  }

  .hall-features{
    grid-template-columns:1fr;
    gap:14px;
  }

  .hall-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:18px;
  }

  .hall-bottom a{
    width:100%;
    justify-content:center;
  }

  .cta-left{
    flex-direction:column;
    align-items:flex-start;
  }

  .halls-cta a{
    width:100%;
    justify-content:center;
  }
}
/*Blogs Detail style*/
:root{
  --green:#0f8f18;
  --blue:#063b97;
  --blue-dark:#042764;
  --white:#ffffff;
  --dark:#07122d;
  --text:#202938;
  --border:#e5eaf2;
  --shadow:0 18px 45px rgba(0,0,0,.10);
  --soft-shadow:0 10px 30px rgba(0,0,0,.07);
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Poppins','Segoe UI',sans-serif;
  color:var(--dark);
  background:#fff;
  overflow-x:hidden;
  font-weight:500;
}

img{
  max-width:100%;
  display:block;
}

.blog-detail-container{
  width:100%;
  max-width:1420px;
  margin:auto;
  padding-left:38px;
  padding-right:38px;
}

.blog-detail-page{
  background:
    linear-gradient(90deg,#ffffff 0%,#ffffff 28%,#fbfdff 28%,#ffffff 100%);
}

.blog-layout{
  display:grid;
  grid-template-columns:320px 1fr;
  gap:64px;
  align-items:start;
}

/* LEFT STATIC SIDEBAR */

.blog-sidebar{
  position:sticky;
  top:120px;
  min-height:calc(100vh - 120px);
  padding:70px 26px 40px 8px;
  border-right:1px solid var(--border);
  background:#fff;
}

.blog-sidebar h3{
  color:var(--blue);
  font-size:24px;
  font-weight:500;
  margin:0;
}

.sidebar-line{
  width:58px;
  height:3px;
  background:var(--green);
  border-radius:20px;
  margin:22px 0 40px;
}

.side-blog{
  display:grid;
  grid-template-columns:130px 1fr;
  gap:20px;
  text-decoration:none;
  color:var(--dark);
  padding-bottom:32px;
  margin-bottom:32px;
  border-bottom:1px solid var(--border);
  transition:.3s ease;
}

.side-blog:last-child{
  border-bottom:0;
}

.side-blog:hover{
  transform:translateX(6px);
}

.side-blog img{
  width:130px;
  height:120px;
  object-fit:cover;
  border-radius:14px;
  box-shadow:var(--soft-shadow);
}

.side-blog h5{
  color:var(--blue);
  font-size:17px;
  line-height:1.45;
  font-weight:500;
  margin:10px 0 10px;
}

.side-blog span{
  color:#6b7280;
  font-size:14px;
}

/* ARTICLE */

.blog-article{
  max-width:920px;
  padding:72px 0 80px;
  animation:fadeUp .8s ease both;
}

.blog-category{
  display:inline-block;
  background:rgba(15,143,24,.12);
  color:var(--green);
  padding:9px 18px;
  border-radius:10px;
  font-size:15px;
  font-weight:500;
  margin-bottom:28px;
}

.blog-article h1{
  color:var(--blue);
  font-size:48px;
  line-height:1.18;
  font-weight:500;
  margin:0 0 24px;
}

.blog-meta{
  display:flex;
  align-items:center;
  gap:16px;
  color:#626b7a;
  font-size:17px;
  margin-bottom:38px;
}

.blog-meta i{
  margin-right:8px;
}

.main-blog-img{
  width:100%;
  height:390px;
  object-fit:cover;
  border-radius:16px;
  box-shadow:var(--soft-shadow);
  margin-bottom:42px;
}

.blog-article p{
  color:#111827;
  font-size:19px;
  line-height:1.85;
  margin-bottom:28px;
}

.blog-article h3{
  color:var(--green);
  font-size:21px;
  line-height:1.4;
  font-weight:500;
  margin:42px 0 8px;
}

/* ANIMATION */

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(28px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* iPad Pro */

@media(max-width:1200px){
  .blog-layout{
    grid-template-columns:280px 1fr;
    gap:42px;
  }

  .side-blog{
    grid-template-columns:100px 1fr;
  }

  .side-blog img{
    width:100px;
    height:100px;
  }

  .blog-article h1{
    font-size:42px;
  }
}

/* iPad Mini */

@media(max-width:991px){
  .blog-detail-container{
    padding-left:24px;
    padding-right:24px;
  }

  .blog-detail-page{
    background:#fff;
  }

  .blog-layout{
    grid-template-columns:1fr;
    gap:0;
  }

  .blog-sidebar{
    position:relative;
    top:auto;
    min-height:auto;
    border-right:0;
    border-bottom:1px solid var(--border);
    padding:36px 0 10px;
  }

  .blog-sidebar h3,
  .sidebar-line{
    margin-left:0;
  }

  .side-blog{
    grid-template-columns:110px 1fr;
    max-width:620px;
  }

  .side-blog img{
    width:110px;
    height:95px;
  }

  .blog-article{
    padding:45px 0 70px;
    max-width:100%;
  }

  .main-blog-img{
    height:340px;
  }
}

/* Mobile */

@media(max-width:576px){
  .blog-detail-container{
    padding-left:14px;
    padding-right:14px;
  }

  .blog-sidebar h3{
    font-size:22px;
  }

  .side-blog{
    grid-template-columns:90px 1fr;
    gap:14px;
    padding-bottom:22px;
    margin-bottom:22px;
  }

  .side-blog img{
    width:90px;
    height:84px;
  }

  .side-blog h5{
    font-size:14px;
    margin:0 0 8px;
  }

  .side-blog span{
    font-size:13px;
  }

  .blog-article{
    padding-top:36px;
  }

  .blog-article h1{
    font-size:32px;
  }

  .blog-meta{
    flex-wrap:wrap;
    font-size:14px;
    gap:10px;
  }

  .main-blog-img{
    height:230px;
    border-radius:14px;
  }

  .blog-article p{
    font-size:16px;
    line-height:1.75;
  }

  .blog-article h3{
    font-size:18px;
  }
}