/*==================================================
RESET
==================================================*/

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "Poppins", sans-serif;
    overflow-x: hidden;
    background: #fff;
    color: #1a1a1a;
}

/*==================================================
NAVBAR
==================================================*/

.navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;

    /* padding: 18px 0; */

    background: rgba(255,255,255,.94);

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    border-bottom: 1px solid rgba(0,0,0,.08);

    transition: .35s ease;
}

.navbar.scrolled{
    padding:10px 0;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}
/* Active Menu */

.nav-link.active {
    color: #14355a !important;
    font-weight: 600;
}

.nav-link.active::after {
    width: 100%;
}

/* Smooth Fade */

body {
    opacity: 0;
    transition: opacity .4s ease;
}

body.loaded {
    opacity: 1;
}

/*==================================
FAQ SECTION
===================================*/

.faq-section{

    padding:90px 0;

    background:#f7f9fb;

}

.faq-accordion .accordion-item{

    border:none;

    border-radius:10px !important;

    background:#fff;

    margin-bottom:16px;

    box-shadow:0 2px 14px rgba(30,42,53,.06);

    overflow:hidden;

}

.faq-accordion .accordion-item:last-child{

    margin-bottom:0;

}

.faq-accordion .accordion-button{

    font-family:'Poppins', sans-serif;

    font-size:17px;

    font-weight:500;

    color:#1e2a35;

    padding:22px 26px;

    box-shadow:none;

    background:#fff;

}

.faq-accordion .accordion-button:not(.collapsed){

    color:#0B84FF;

    background:#fff;

    box-shadow:none;

}

.faq-accordion .accordion-button:focus{

    box-shadow:none;

    border-color:transparent;

}

.faq-accordion .accordion-button::after{

    width:22px;

    height:22px;

    background-size:22px;

    flex-shrink:0;

}

.faq-accordion .accordion-body{

    padding:0 26px 24px;

    color:#5b6470;

    font-size:15px;

    line-height:1.85;

}

/*==================================================
LOGO
==================================================*/

.navbar-brand img{

    width:115px;
    height:auto;
    display:block;

}

/*==================================================
MENU
==================================================*/

.navbar-nav{

    gap:36px;

}

.nav-link{

    font-size:14px;
    font-weight:500;

    color:#1f2d3d !important;

    position:relative;

    transition:.35s;

}

.nav-link:hover{

    color:#0e4d92 !important;

}

.nav-link::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-8px;

    width:0;

    height:2px;

    background:#c89b4d;

    transition:.35s;

}

.nav-link:hover::after{

    width:100%;

}

/*==================================================
BOOK BUTTON
==================================================*/

.visit-btn{

    text-decoration:none;

    background:#274f71;

    color:#fff;

    padding:12px 28px;

    font-size:13px;

    letter-spacing:1px;

    font-weight:600;

    border-radius:4px;

    transition:.35s;

}

.visit-btn:hover{

    background:#14355a;
    color:#fff;

    transform:translateY(-2px);

}

/*==================================================
HERO
==================================================*/

.hero{

    position:relative;

    width:100%;

    height:100vh;

    overflow:hidden;

}

/*==================================================
IMAGE
==================================================*/

.hero picture,
.hero-image{

    width:100%;
    height:100%;

    display:block;

}

.hero-image{

    object-fit:cover;
    object-position:center center;

}

/*==================================================
OPTIONAL OVERLAY
==================================================*/

.hero::after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
    to bottom,
    rgba(255,255,255,.03),
    rgba(255,255,255,.02)
    );

    pointer-events:none;

}

/*==================================================
MOBILE MENU
==================================================*/

.navbar-toggler{

    border:none;

    box-shadow:none !important;

}

.navbar-toggler:focus{

    box-shadow:none;

}

.navbar-toggler-icon{

    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='%2314355a' viewBox='0 0 16 16'%3E%3Cpath stroke='%2314355a' stroke-width='1.5' stroke-linecap='round' d='M2 4h12M2 8h12M2 12h12'/%3E%3C/svg%3E");

}

/*==================================================
TABLET
==================================================*/

@media(max-width:991px){

.navbar{

padding:15px 0;

}

.navbar-collapse{

margin-top:18px;

background:#fff;

padding:20px;

border-radius:12px;

box-shadow:0 10px 35px rgba(0,0,0,.08);

}

.navbar-nav{

gap:16px;

}

.visit-btn{

display:none;

}

}

/*==================================================
MOBILE
==================================================*/

@media(max-width:767px){

        .hero{

        height:100vh;

        }

        .navbar-brand img{

        width:120px;

        }

        .nav-link{

        font-size:15px;

        }

        .hero-image{

        object-fit:cover;

        object-position:center;

        }

        .faq-section{

        padding:60px 0;

        }

        .faq-accordion .accordion-button{

            font-size:15px;

            padding:18px 20px;

        }

        .faq-accordion .accordion-body{

            padding:0 20px 20px;

            font-size:14px;

        }

}

/*==================================================
LARGE DESKTOP
==================================================*/

@media(min-width:1600px){

.navbar-brand img{

width:185px;

}

.nav-link{

font-size:15px;

}

.visit-btn{

padding:14px 34px;

}

}
/*==============================
OVERVIEW
==============================*/

.overview-section{

    padding:90px 0;
    background:#fff;

}

.overview-top{

    margin-bottom:35px;

}

.overview-tag{

    display:inline-block;

    font-size:13px;

    font-weight:700;

    color:#0f7cff;

    letter-spacing:.8px;

    margin-bottom:10px;

    text-transform:uppercase;

}

.overview-title{

    font-size:58px;

    font-weight:300;

    color:#1e2a35;

    margin-bottom:0;

    line-height:1.1;

}

.overview-text{

    color:#5b6470;

    font-size:15px;

    line-height:1.9;

    margin-bottom:22px;

}

.overview-text strong{

    color:#2d3742;

    font-weight:700;

}

.overview-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    background:#284861;

    color:#fff;

    text-decoration:none;

    height:46px;

    padding:0 32px;

    font-size:13px;

    letter-spacing:.8px;

    font-weight:600;

    transition:.3s;

}

.overview-btn:hover{

    background:#16364f;
    color:#fff;

}

.overview-image{

    overflow:hidden;

}

.overview-image img{

    width:100%;

    display:block;

}
/*==========================
Mobile
==========================*/

@media (max-width:991px){

.overview-section{

padding:60px 0;

}

.overview-tag{

font-size:12px;

margin-bottom:10px;

}

.overview-title{

font-size:40px;

margin-bottom:25px;

}

.overview-image{

margin-bottom:25px;

}

.overview-image img{

width:100%;

display:block;

}

.overview-text{

margin-bottom:25px;

font-size:15px;

line-height:1.9;

}

.overview-btn{

display:inline-flex;

height:44px;

padding:0 28px;

}

}

@media (max-width:767px){

.overview-title{

font-size:42px;

line-height:1.15;

}

.overview-text{

font-size:15px;

line-height:1.85;

}

.overview-btn{

/* width:140px; */

justify-content:center;

}

}
/*=========================================
QUOTE SECTION
=========================================*/

.quote-section {

    background: #ffffff;

    padding: 40px 0;

    border-bottom: 6px solid #f7ece7;

}

.quote-wrapper {

    text-align: center;

}

.quote-title {

    font-size: 40px;

    line-height: 1.18;

    font-weight: 300;

    color: #1d2734;

    max-width: 1180px;

    margin: 0 auto 40px;

    letter-spacing: -.5px;

}

.quote-subtitle {

    display: block;

    color: #6c7b8a;

    font-size: 11px;

    letter-spacing: 2.5px;

    text-transform: uppercase;

    margin-bottom: 18px;

    font-weight: 500;

}

.quote-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 118px;

    height: 40px;

    background: #274861;

    color: #fff;

    text-decoration: none;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: .8px;

    transition: .35s ease;

}

.quote-btn:hover {

    background: #14344f;

    color: #fff;

    transform: translateY(-2px);

}
/*=========================
Tablet
=========================*/

@media (max-width:991px){

.quote-section{

padding:80px 0;

}

.quote-title{

font-size:42px;

line-height:1.25;

margin-bottom:30px;

}

}


/*=========================
Mobile
=========================*/

@media (max-width:767px){

.quote-section{
padding-bottom: 60px;
padding-top: 0px;

}

.quote-title{

font-size:30px;

line-height:1.35;

margin-bottom:25px;

letter-spacing:0;

}

.quote-subtitle{

font-size:10px;

letter-spacing:2px;

margin-bottom:16px;

}

.quote-btn{

width:130px;

height:42px;

font-size:12px;

}

}
/*=========================================
PROJECT HIGHLIGHTS
=========================================*/

.highlights-section {

    position: relative;

    padding: 90px 0;

    background: #ffffff;

    overflow: hidden;

}

/* Background Glow */

.highlights-section::before {

    content: "";

    position: absolute;

    top: -180px;
    right: -150px;

    width: 550px;
    height: 550px;

    background: radial-gradient(circle,
            rgba(240, 125, 24, 0.32) 0%,
            rgba(255,255,255,0) 70%);

    pointer-events: none;

}

.section-tag {

    display: inline-block;

    color: #0f7cff;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: .7px;

    margin-bottom: 10px;

    text-transform: uppercase;

}

.section-title {

    font-size: 52px;

    font-weight: 300;

    color: #1d2734;

    margin-bottom: 45px;

}

/*=========================
CARD
=========================*/

.highlight-card {

    background: #fff;

    border-radius: 14px;

    padding: 28px 22px;

    box-shadow: 0 8px 30px rgba(0,0,0,.08);

    transition: .35s;

    height: 100%;

}

.highlight-card:hover {

    transform: translateY(-6px);

    box-shadow: 0 20px 40px rgba(0,0,0,.12);

}

.highlight-card h3 {

    font-size: 28px;

    font-weight: 700;

    color: #1d2734;

    margin-bottom: 12px;

}

.orange-line {

    width: 100%;

    height: 2px;

    background: #df8f51;

    margin-bottom: 12px;

}

.highlight-card p {

    font-size: 13px;

    font-weight: 600;

    color: #3c4653;

    margin: 0;

}

.tc-text {

    display: inline-block;

    margin-top: 25px;

    color: #555;

    font-size: 12px;

}
/*=========================
Tablet
=========================*/

@media (max-width:991px){

.highlights-section{

padding:70px 0;

}

.section-title{

font-size:40px;

margin-bottom:35px;

}

.highlight-card{

padding:24px 18px;

}

.highlight-card h3{

font-size:24px;

}

}


/*=========================
Mobile
=========================*/

@media (max-width:767px){

.highlights-section{

padding:55px 0;

}

.section-tag{

font-size:12px;

}

.section-title{

font-size:32px;

line-height:1.2;

margin-bottom:28px;

}

.highlight-card{

padding:20px 16px;

border-radius:12px;

}

.highlight-card h3{

font-size:22px;

margin-bottom:10px;

}

.highlight-card p{

font-size:11px;

line-height:1.4;

}

.orange-line{

margin-bottom:10px;

}

.tc-text{

margin-top:20px;

font-size:11px;

}

}
/*=====================================
AMENITIES
======================================*/

.amenities-section{

    padding:40px 0;

    background:#fff;

}

.section-heading{

    margin-bottom:45px;

}

.section-subtitle{

    display:inline-block;

    color:#0B84FF;

    font-size:13px;

    font-weight:700;

    letter-spacing:.7px;

    margin-bottom:10px;

}

.section-title{

    font-size:52px;

    font-weight:300;

    color:#1d2734;

    margin:0;

}

/*========================*/

.amenity-card{

    transition:.35s;

}

.amenity-image{

    overflow:hidden;

    border-radius:8px;

    margin-bottom:18px;

}

.amenity-image img{

    width:100%;

    height:310px;

    object-fit:cover;

    transition:.5s;

    display:block;

}

.amenity-card:hover img{

    transform:scale(1.08);

}

.amenity-card h4{

    font-size:31px;

    font-weight:300;

    color:#1d2734;

    margin-bottom:6px;

}

.amenity-card span{

    display:block;

    font-size:10px;

    text-transform:uppercase;

    letter-spacing:.7px;

    color:#374151;

    font-weight:600;

}
/*=========================
Tablet
==========================*/

@media(max-width:991px){

.section-title{

font-size:42px;

}

.amenity-image img{

height:260px;

}

.amenity-card h4{

font-size:24px;

}

}


/*=========================
Mobile
==========================*/

@media(max-width:767px){

.amenities-section{

padding-bottom: 60px;
padding-top: 0px;

}

.section-heading{

margin-bottom:30px;

}

.section-subtitle{

font-size:12px;

}

.section-title{

font-size:32px;

line-height:1.2;

}

.amenity-image{

margin-bottom:12px;

}

.amenity-image img{

height:170px;

}

.amenity-card h4{

font-size:18px;

margin-bottom:4px;

}

.amenity-card span{

font-size:9px;

line-height:1.4;

}

}
/*==================================================
MASTER PLAN SECTION
==================================================*/

.masterplan-section{
    padding:90px 0;
    background:#ffffff;
    overflow:hidden;
}

.master-heading{
    max-width:860px;
    margin:0 auto 40px;
}

.master-tag{
    display:inline-block;
    color:#0B84FF;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.8px;
    margin-bottom:10px;
}

.master-title{
    font-size:46px;
    font-weight:300;
    color:#1f2d3d;
    line-height:1.15;
    margin-bottom:14px;
}

.master-desc{
    font-size:14px;
    line-height:1.8;
    color:#6b7280;
    max-width:740px;
    margin:0 auto;
}

/*======================================
SLIDER AREA
======================================*/

.master-slider-wrapper{

    margin-top:45px;

    padding:35px;

    position:relative;

    background-color:#fff;

   

    background-size:24px 24px;

}

/* Swiper */

.masterSwiper{

    overflow:hidden;

}

/*======================================
IMAGE
======================================*/

.master-image{

    display:flex;

    justify-content:center;

    align-items:center;

}

.master-image img{

    width:100%;

    max-width:900px;

    height:auto;

    display:block;

    

    box-shadow:0 18px 40px rgba(0,0,0,.08);

}

/*======================================
ARROWS
======================================*/

.master-navigation{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:60px;

    margin-top:0px;

}

.master-prev,
.master-next{

    width:44px;

    height:44px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    cursor:pointer;

    transition:.3s;

}

.master-prev:hover,
.master-next:hover{

    background:#f5f5f5;

    transform:translateY(-2px);

}

/*======================================
SWIPER
======================================*/

.swiper-slide{

    display:flex;

    justify-content:center;

    align-items:center;

}

/*======================================
TABLET
======================================*/

@media(max-width:991px){

.masterplan-section{

padding:70px 0;

}

.master-title{

font-size:36px;

}

.master-slider-wrapper{

padding:20px;

}

.master-image img{

border-radius:120px;

}

.master-navigation{

gap:40px;

}

}

/*======================================
MOBILE
======================================*/

@media(max-width:767px){

.masterplan-section{

padding-bottom: 60px;
padding-top: 0px;

}

.master-tag{

font-size:11px;

}

.master-title{

font-size:28px;

line-height:1.25;

}

.master-desc{

font-size:13px;

line-height:1.7;

padding:0 10px;

}

.master-slider-wrapper{

margin-top:30px;

padding:15px;

background-size:18px 18px;

}

.master-image img{

border-radius:50px;

}

.master-navigation{

margin-top:25px;

gap:25px;

}

.master-prev,
.master-next{

width:40px;

height:40px;

}

}
/*=========================================
FLOOR PLAN
=========================================*/

.floorplan-section{

    padding:40px 0;

    background:#fff;

}

/*========================*/

.floorplan-heading{

    margin-bottom:35px;

}

.floorplan-tag{

    display:inline-block;

    color:#0B84FF;

    font-size:12px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.8px;

    margin-bottom:10px;

}

.floorplan-title{

    font-size:52px;

    font-weight:300;

    color:#1f2d3d;

    line-height:1.15;

    margin:0;

}

/*========================
WHITE BOX
========================*/

.floorplan-wrapper{

    position:relative;

    background:#fff;

    padding:22px;

    min-height:650px;

    overflow:hidden;

}

/*========================
IMAGES
========================*/

.floorplan-image{

    display:none;

    animation:fade .45s ease;

}

.floorplan-image.active{

    display:block;

}

.floorplan-image img{

    width:100%;

    display:block;

    object-fit:contain;

}

/*========================
FADE
========================*/

@keyframes fade{

from{

opacity:0;

transform:translateY(10px);

}

to{

opacity:1;

transform:translateY(0);

}

}

/*========================
BOTTOM TABS
========================*/

.floor-plan-tabs{

    display:flex;

    align-items:center;

    gap:16px;

    margin-top:30px;

}

.floor-tab{

    border:none;

    background:none;

    padding:10px 22px;

    border-radius:50px;

    cursor:pointer;

    font-size:12px;

    font-weight:500;

    color:#6d737a;

    transition:.35s;

    font-family:'Poppins',sans-serif;

}

.floor-tab.active{

    background:#152B42;

    color:#fff;

}

.floor-tab:hover{

    color:#152B42;

}

.floor-tab.active:hover{

    color:#fff;

    background:#102236;

}
@media(max-width:991px){

.floorplan-section{

padding:70px 0;

}

.floorplan-title{

font-size:40px;

}

.floorplan-wrapper{

min-height:auto;

padding:18px;

}

}
@media(max-width:767px){

.floorplan-section{

padding-bottom: 60px;
padding-top: 0px;

}

.floorplan-tag{

font-size:11px;

}

.floorplan-title{

font-size:30px;

line-height:1.2;

margin-bottom:10px;

}

.floorplan-wrapper{

padding:10px;

min-height:auto;

}

.floor-plan-tabs{

gap:10px;

flex-wrap:wrap;

margin-top:22px;

}

.floor-tab{

font-size:11px;

padding:9px 16px;

}

}
.floorplan-wrapper{
    position: relative;
    /* min-height: 650px; */
}

.floorplan-image{
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .45s ease, visibility .45s ease;
    display: flex;
    justify-content: center;
    align-items: center;
}

.floorplan-image.active{
    opacity: 1;
    visibility: visible;
    position: relative;
}
/*=====================================
GALLERY SECTION
=====================================*/

.gallery-section{
    padding:50px 0;
    background:#fff;
    overflow:hidden;
}

/*==============================
HEADING
==============================*/

.gallery-heading{
    margin-bottom:50px;
}

.gallery-subtitle{
    display:block;
    color:#0B84FF;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:12px;
}

.gallery-title{
    font-size:52px;
    font-weight:300;
    color:#1F2D3D;
    line-height:1.15;
    margin:0;
}

/*==============================
SWIPER
==============================*/

.gallerySwiper{
    overflow:hidden;
}

.gallery-card{
    overflow:hidden;
    border-radius:6px;
}

.gallery-card img{

    width:100%;
    height:320px;
    object-fit:cover;
    display:block;

    border-radius:6px;

    transition:.45s ease;

}

.gallery-card:hover img{

    transform:scale(1.05);

}

/*==============================
ARROWS
==============================*/

.gallery-navigation{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:55px;

    margin-top:35px;

}

.gallery-prev,
.gallery-next{

    width:46px;

    height:46px;

    border:none;

    background:transparent;

    border-radius:50%;

    cursor:pointer;

    transition:.35s;

}

.gallery-prev:hover,
.gallery-next:hover{

    background:#f5f5f5;

}

.gallery-prev i,
.gallery-next i{

    font-size:20px;

    color:#1F2D3D;

}

/*==============================
TABLET
==============================*/

@media(max-width:991px){

.gallery-section{

padding:80px 0;

}

.gallery-title{

font-size:42px;

}

.gallery-card img{

height:420px;

}

.gallery-navigation{

gap:35px;

}

}

/*==============================
MOBILE
==============================*/

@media(max-width:767px){

.gallery-section{

padding-bottom: 60px;
padding-top: 0px;

}

.gallery-heading{

margin-bottom:30px;

}

.gallery-subtitle{

font-size:11px;

}

.gallery-title{

font-size:30px;

line-height:1.25;

}

.gallery-card img{

height:320px;

}

.gallery-navigation{

margin-top:22px;

gap:25px;

}

.gallery-prev,
.gallery-next{

width:40px;

height:40px;

}

.gallery-prev i,
.gallery-next i{

font-size:18px;

}

}
/*=================================
CTA SECTION
=================================*/

.cta-section{

    background:#0F1E2C;

    padding:70px 0;

}

.cta-content{

    text-align:center;

}

.cta-content h2{

    font-size:48px;

    font-weight:400;

    color:#fff;

    line-height:1.2;

    margin-bottom:18px;

}

.cta-content p{

    max-width:740px;

    margin:0 auto 35px;

    color:#5A6E7F;

    font-size:14px;

    line-height:1.8;

    font-weight:400;

}

.cta-btn{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    width:150px;

    height:48px;
     border-radius:4px;
    background:#fff;

    color:#172532;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    text-decoration:none;

    text-transform:uppercase;

    transition:.35s;

}

.cta-btn:hover{

    background:#c8a46b;

    color:#fff;

    text-decoration:none;

}

/*=========================
Tablet
=========================*/

@media(max-width:991px){

.cta-section{

padding:80px 20px;

}

.cta-content h2{

font-size:42px;

}

}

/*=========================
Mobile
=========================*/

@media(max-width:767px){

.cta-section{

padding:60px 20px;

}

.cta-content h2{

font-size:32px;

line-height:1.3;

margin-bottom:15px;

}

.cta-content p{

font-size:14px;

line-height:1.7;

margin-bottom:30px;

max-width:100%;

}

.cta-btn{

width:160px;

height:46px;

font-size:11px;

}

}
/*=========================================
VIRTUAL TOUR SECTION
=========================================*/

.virtual-tour-section{

    padding:100px 0;

    background:#fff;

}

.virtual-heading{

    margin-bottom:55px;

}

.section-subtitle{

    display:block;

    font-size:12px;

    font-weight:700;

    color:#0B84FF;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:10px;

}

.section-title{

    font-size:54px;

    font-weight:300;

    color:#1F2D3D;

    line-height:1.15;

    margin-bottom:18px;

}

.section-description{

    max-width:620px;

    margin:auto;

    font-size:15px;

    line-height:1.8;

    color:#6c757d;

}

/*===========================
Image
===========================*/

.virtual-image-wrapper{

    position:relative;

    overflow:hidden;

    border-radius:18px;

}

.virtual-image{

    width:100%;

    height:450px;

    object-fit:cover;

    display:block;

}

/*===========================
Overlay
===========================*/

.virtual-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.35);

}

/*===========================
Play Button
===========================*/

.play-button{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    width:78px;

    height:78px;

    border:2px solid rgba(255,255,255,.9);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    transition:.35s;

    text-decoration:none;

    backdrop-filter:blur(2px);

}

.play-button:hover{

    background:#fff;

    color:#1F2D3D;

    transform:translate(-50%,-50%) scale(1.08);

}

/*===========================
Bottom Info
===========================*/

.virtual-info{

    position:absolute;

    left:28px;

    bottom:24px;

    color:#fff;

    z-index:5;

}

.virtual-info h6{

    font-size:16px;

    font-weight:600;

    margin-bottom:4px;

}

.virtual-info span{

    font-size:13px;

    opacity:.9;

}

/*===========================
Button
===========================*/

.book-btn{

    margin-top:45px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:170px;

    height:48px;

    background:#23415C;

    color:#fff;

    text-decoration:none;

    font-size:12px;

    letter-spacing:1px;

    font-weight:600;

    border-radius:4px;

    transition:.35s;

}

.book-btn:hover{

    background:#C89D5B;

    color:#fff;

}

/*====================================
Large Desktop
====================================*/

@media(min-width:1400px){

.virtual-image{

height:720px;

}

}

/*====================================
Tablet
====================================*/

@media(max-width:991px){

.virtual-tour-section{

padding:80px 0;

}

.section-title{

font-size:42px;

}

.virtual-image{

height:500px;

}

.play-button{

width:70px;

height:70px;

}

}

/*====================================
Mobile
====================================*/

@media(max-width:767px){

.virtual-tour-section{

padding:60px 0;

}

.virtual-heading{

margin-bottom:30px;

}

.section-subtitle{

font-size:11px;

}

.section-title{

font-size:32px;

line-height:1.25;

margin-bottom:15px;

}

.section-description{

font-size:14px;

line-height:1.7;

padding:0 15px;

}

.virtual-image{

height:260px;

border-radius:12px;

}

.virtual-image-wrapper{

border-radius:12px;

}

.play-button{

width:58px;

height:58px;

}

.play-button svg{

width:20px;

height:20px;

}

.virtual-info{

left:16px;

bottom:14px;

}

.virtual-info h6{

font-size:13px;

}

.virtual-info span{

font-size:11px;

}

.book-btn{

margin-top:30px;

width:160px;

height:46px;

font-size:11px;

}

}
/*=========================================
FOOTER
=========================================*/

.site-footer{

    background:#ffffff;

    padding:90px 0 35px;

    color:#5f6b7a;

    font-family:inherit;

}

/*=========================================
TOP AREA
=========================================*/

.footer-about{

    padding-right:60px;

}

.footer-logo{

    display:inline-block;

    margin-bottom:28px;

}

.footer-logo img{

    max-width:220px;

    height:auto;

}

.footer-desc{

    font-size:15px;

    line-height:2;

    color:#6b7280;

    margin:0;

    max-width:420px;

}

/*=========================================
HEADINGS
=========================================*/

.footer-links h6,
.footer-contact h6{

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    color:#1F2D3D;

    margin-bottom:25px;

    text-transform:uppercase;

}

/*=========================================
LINKS
=========================================*/

.footer-links ul{

    margin:0;

    padding:0;

    list-style:none;

}

.footer-links ul li{

    margin-bottom:18px;

}

.footer-links ul li:last-child{

    margin-bottom:0;

}

.footer-links a{

    text-decoration:none;

    color:#667085;

    font-size:15px;

    transition:.3s;

}

.footer-links a:hover{

    color:#1F2D3D;

}

/*=========================================
CONTACT
=========================================*/

.footer-contact p{

    margin-bottom:18px;

    font-size:15px;

    line-height:1.8;

    color:#667085;

}

.footer-contact a{

    color:#667085;

    text-decoration:none;

    transition:.3s;

}

.footer-contact a:hover{

    color:#1F2D3D;

}

/*=========================================
DIVIDER
=========================================*/

.footer-divider{

    margin:70px 0 30px;

    border-top:1px solid #e7eaef;

}

/*=========================================
BOTTOM
=========================================*/

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

}

.copyright p{

    margin-bottom:8px;

    font-size:13px;

    color:#8b95a5;

    line-height:1.8;

}

/*=========================================
SOCIAL
=========================================*/

.footer-social{

    display:flex;

    justify-content:flex-end;

    align-items:center;

    gap:30px;

}

.footer-social a{

    text-decoration:none;

    color:#1F2D3D;

    font-size:14px;

    transition:.3s;

}

.footer-social a:hover{

    color:#0B84FF;

}

/*=========================================
LARGE DESKTOP
=========================================*/

@media(min-width:1400px){

.site-footer{

padding:110px 0 40px;

}

.footer-desc{

max-width:470px;

}

}

/*=========================================
TABLET
=========================================*/

@media(max-width:991px){

.site-footer{

padding:70px 0 30px;

}

.footer-about{

padding-right:0;

}

.footer-divider{

margin:50px 0 25px;

}

.footer-bottom{

display:block;

}

.footer-social{

justify-content:flex-start;

margin-top:20px;

}

}

/*=========================================
MOBILE
=========================================*/

@media(max-width:767px){

.site-footer{

padding:30px 0 25px;

text-align:center;

}

.footer-about{

margin-bottom:20px;

}

.footer-logo{

margin-bottom:20px;

}

.footer-logo img{

max-width:180px;

}

.footer-desc{

font-size:14px;

line-height:1.8;

max-width:100%;

margin:auto;

}

.footer-links{

margin-top:15px;

}

.footer-links ul li{

margin-bottom:14px;

}

.footer-contact{

margin-top:10px;

}

.footer-contact p{

font-size:14px;

margin-bottom:12px;

}

.footer-divider{

margin:40px 0 25px;

}

.footer-bottom{

text-align:center;

}

.copyright p{

font-size:12px;

line-height:1.7;

}

.footer-social{

justify-content:center;

flex-wrap:wrap;

gap:18px;

margin-top:18px;

}

.footer-social a{

font-size:13px;

}

}
/* =========================================
   ENQUIRE POPUP
========================================= */

.enquiry-popup .modal-dialog {
    margin-top: 12vh;
    max-width: 500px;
    /* margin: 1.75rem auto; */
}

.enquiry-popup .modal-content {
    background: transparent;
    border: 0;
    overflow: visible;
}

/* =========================================
   WHITE CARD
========================================= */

.enquiry-modal {
    position: relative;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.popup-card {
    position: relative;
    z-index: 2;

    width: 100%;

    background: #ffffff;

    border-radius: 20px;

    padding: 20px 16px 18px;

    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18);
}

/* =========================================
   YELLOW BACKGROUND SHAPE
========================================= */

.popup-yellow-shape {
    position: absolute;

    z-index: 1;

    width: 100%;
    height: 100%;

    left: 8px;
    top: -7px;

    background: #ffd400;

    border-radius: 18px;

    transform: rotate(4deg);
}

/* =========================================
   HEADER
========================================= */

.popup-header {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 14px;
}

.popup-header h3 {
    margin: 0;

    color: #304f68;

    font-size: 22px;

    line-height: 1.2;

    font-weight: 700;
}

/* =========================================
   CLOSE BUTTON
========================================= */

.popup-close {
    width: 32px;
    height: 32px;

    border: 0;

    border-radius: 50%;

    background: #f1f2f3;

    color: #69727b;

    font-size: 22px;

    line-height: 28px;

    padding: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: all 0.2s ease;
}

.popup-close:hover {
    background: #e3e5e7;

    color: #263746;
}

/* =========================================
   IMAGE
========================================= */

.popup-image {
    width: 100%;

    height: 130px;

    overflow: hidden;

    border-radius: 10px;

    margin-bottom: 12px;
}

.popup-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}

/* =========================================
   FORM FIELD
========================================= */

.popup-field {
    margin-bottom: 10px;
}

.popup-field label {
    display: block;

    margin-bottom: 6px;

    color: #304f68;

    font-size: 13px;

    font-weight: 600;
}

.popup-field .form-control {
    width: 100%;

    height: 37px;

    border: 1px solid #dfe3e7;

    border-radius: 10px;

    padding: 0 12px;

    color: #263746;

    background: #fff;

    font-size: 12px;

    box-shadow: none;

    outline: none;

    transition: border-color 0.2s ease,
                box-shadow 0.2s ease;
}

.popup-field .form-control::placeholder {
    color: #a6adb5;

    opacity: 1;
}

.popup-field .form-control:focus {
    border-color: #304f68;

    box-shadow: 0 0 0 2px rgba(48, 79, 104, 0.08);
}

/* =========================================
   PHONE INPUT
========================================= */

.phone-input {
    display: flex;

    align-items: center;

    height: 37px;

    border: 1px solid #dfe3e7;

    border-radius: 10px;

    overflow: hidden;

    background: #fff;
}

.phone-input:focus-within {
    border-color: #304f68;

    box-shadow: 0 0 0 2px rgba(48, 79, 104, 0.08);
}

.phone-input .form-control {
    border: 0;

    border-radius: 0;

    height: 35px;

    box-shadow: none !important;

    padding-left: 8px;
}

.country-code {
    height: 24px;

    min-width: 58px;

    padding: 0 8px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 5px;

    border-right: 1px solid #d9dde1;

    color: #3f464c;

    font-size: 12px;

    white-space: nowrap;
}

.country-arrow {
    font-size: 7px;

    color: #707880;
}

/* =========================================
   SUBMIT BUTTON
========================================= */

.popup-submit {
    width: 100%;

    height: 40px;

    margin-top: 3px;

    border: 0;

    border-radius: 10px;

    background: #304f68;

    color: #ffffff;

    font-size: 13px;

    font-weight: 700;

    cursor: pointer;

    box-shadow: 0 5px 12px rgba(48, 79, 104, 0.22);

    transition: all 0.25s ease;
}

.popup-submit:hover {
    background: #243f55;

    transform: translateY(-1px);
}

/* =========================================
   BOOTSTRAP BACKDROP
========================================= */

.enquiry-popup + .modal-backdrop {
    background: #000;
}

.enquiry-popup + .modal-backdrop.show {
    opacity: 0.62;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 767px) {

    .enquiry-popup .modal-dialog {
        max-width: calc(100% - 30px);

        margin: 1rem auto;
    }

    .popup-card {
        padding: 18px 15px 17px;

        border-radius: 19px;
    }

    .popup-yellow-shape {
        left: 7px;
        top: -6px;

        border-radius: 18px;
    }

    .popup-header {
        margin-bottom: 13px;
    }

    .popup-header h3 {
        font-size: 20px;
    }

    .popup-image {
        height: 108px;

        border-radius: 9px;

        margin-bottom: 11px;
    }

    .popup-field {
        margin-bottom: 9px;
    }

    .popup-field label {
        font-size: 12px;

        margin-bottom: 5px;
    }

    .popup-field .form-control,
    .phone-input {
        height: 37px;
    }

    .popup-submit {
        height: 40px;

        margin-top: 2px;
    }
}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 400px) {

    .enquiry-popup .modal-dialog {
        max-width: calc(100% - 24px);

        margin: 0.75rem auto;
    }

    .popup-card {
        padding: 17px 14px 16px;
    }

    .popup-header h3 {
        font-size: 19px;
    }

    .popup-image {
        height: 105px;
    }

    .popup-field label {
        font-size: 12px;
    }

}
.success_msg,.error_msg {

    font-size: 8px;


    color: black;

    padding: 3px 6px;

    border-radius: 4px;

    margin-top: 5px;

    display: none;

}

/*==================================
STICKY CTA BUTTONS
===================================*/

/* ---- Mobile Sticky Bar ---- */

    .mobile-sticky-bar{

        position:fixed;

        left:0;

        right:0;

        bottom:0;

        z-index:1050;

        background:#fff;

        box-shadow:0 -4px 18px rgba(0,0,0,.12);

    }

    .mobile-sticky-grid{

        display:grid;

        grid-template-columns:1fr 1fr;

    }

    .mobile-sticky-btn{

        display:flex;

        align-items:center;

        justify-content:center;

        gap:8px;

        padding:15px 10px;

        font-size:14px;

        font-weight:600;

        letter-spacing:.3px;

        text-transform:uppercase;

        text-decoration:none;

    }

    .mobile-sticky-btn.enquiry-btn{

        background:#274f71;

        color:#fff;

    }

    .mobile-sticky-btn.mobile-sticky-call{

        background:#1e2a35;

        color:#fff;

    }

    .mobile-sticky-btn i{

        font-size:16px;

    }

    .border-right{
        border-right: 2px solid #fff;
    }

    body{

        padding-bottom:0;

    }

    @media(max-width:991px){

        body{

            padding-bottom:56px;

        }

    }

/* ---- Desktop Sticky Button ---- */

.desktop-sticky-btn{

    position:fixed;

    top:50%;

    right:0;

    z-index:1050;

    display:flex;

    align-items:center;

    gap:8px;

    background:#274f71;

    color:#fff;

    font-size:14px;

    font-weight:600;

    letter-spacing:.5px;

    text-transform:uppercase;

    text-decoration:none;

        padding: 14px 12px;

    border-radius:8px 0 0 8px;

    box-shadow:-4px 0 16px rgba(11,132,255,.35);

    transition:.3s;
    transform: translateY(-50%);
    writing-mode: vertical-lr;

}

.desktop-sticky-btn:hover{

    background:#1e2a35;

    color:#fff;

    padding-right:28px;

}

.desktop-sticky-btn i{

    font-size:16px;

}