@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Alegreya:ital,wght@0,400..900;1,400..900&display=swap');

/* --------------------------
Default Code 
-----------------------------*/
* {
    padding: 0;
    margin: 0;
    text-decoration: none;
    scroll-behavior: smooth;
}

.grid{
    grid-column: 1 / span 2;
}

.col_sm1 {
    width: 100%;
}

.col_sm2 {
    width: 48%;
    float: left;
    margin: 1%;
}

.col_sm2-1 {
    width: 50%;
    float: left;
    margin: 0%;
}

.col_sm3 {
    width: 31%;
    float: left;
    margin: 1%;
}

.col_sm4 {
    width: 23%;
    margin: 1%;
    float: left;
}

.col_sm44 {
    width: 28%;
    margin: 1%;
    float: left;
}

.col_sm8 {
    width: 58%;
    float: left;
    margin: 1%;
}

.col_sm88 {
    width: 38%;
    float: left;
    margin: 1%;
}

.col_sm9 {
    width: 80%;
    float: left;
    margin: 1%;
}

.col_sm99 {
    width: 14%;
    float: left;
    margin: 1%;
}

.clear {
    clear: both;
}

.top2 {
    width: 90%;
    margin: 0 auto;
}

.logo {
    width: 242px;
    float: left;
}

.img {
    width: 100%;
}

.pdg-top-btm {
    padding: 60px 0px;
}

/* Banner */
/* Banner */
.banner-in {
    position: relative;
    width: 100%;
    height: 70vh;
    background-image: url('../images/banner-about.jpg');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    color: white;
    padding-left: 60px;
    z-index: -1;
    /* behind navbar */
}

.banner-text-in {
    padding: 20px 40px;
    border-radius: 8px;
    max-width: 1600px;
    text-align: justify;
    margin-top: 60px;
}

.banner-text-in h2 {
    font-family: 'Alegreya', serif;
    font-size: 45px;
    margin-bottom: 10px;
    font-weight: 500;
    line-height: 140%;
    color: #FFFFFF;
}

.banner-text-in p {
    font-size: 20px;
}

.banner-in {
    /* existing styles... */
    animation: zoomOut 1.5s ease-out forwards;
}



.banner-in32 {
    position: relative;
    width: 100%;
    height: 70vh;
    background-image: url(../images/contact-banner.jpg);
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    color: white;
    padding-left: 60px;
    z-index: -1;
    /* behind navbar */
}

.banner-text-in32 {
    padding: 20px 40px;
    border-radius: 8px;
    max-width: 1600px;
    text-align: justify;
    margin-top: 60px;
}

.banner-text-in32 h2 {
    font-family: 'Alegreya', serif;
    font-size: 45px;
    margin-bottom: 10px;
    font-weight: 500;
    line-height: 140%;
    color: #13472D;
}

.banner-text-in32 p {
    font-size: 20px;
}

.banner-in32 {
    /* existing styles... */
    animation: zoomOut 1.5s ease-out forwards;
}







/* Banner */
/* Banner */
.banner-in1 {
    position: relative;
    width: 100%;
    height: 70vh;
    background-image: url('../images/banner-prod.jpg');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    color: white;
    padding-left: 60px;
    z-index: -1;
    /* behind navbar */
}

.banner-text-in1 {
    padding: 20px 40px;
    border-radius: 8px;
    max-width: 1600px;
    text-align: justify;
    margin-top: 60px;
}

.banner-text-in1 h2 {
    font-family: 'Alegreya', serif;
    font-size: 45px;
    margin-bottom: 10px;
    font-weight: 500;
    line-height: 140%;
    color: #fff;
}

.banner-text-in1 p {
    font-size: 20px;
}

.banner-in1 {
    /* existing styles... */
    animation: zoomOut 1.5s ease-out forwards;
}











/* Banner */
/* Banner */
.banner {
    position: relative;
    width: 100%;
    height: 100vh;
    background-image: url('../images/banner.jpg');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    color: white;
    padding-left: 60px;
    z-index: -1;
    /* behind navbar */
}

.banner-text {
    padding: 20px 40px;
    border-radius: 8px;
    max-width: 1600px;
    text-align: justify;
    margin-top: 60px;
}

.banner-text h1 {
    font-family: 'Alegreya', serif;
    font-size: 45px;
    margin-bottom: 10px;
    font-weight: 500;
    line-height: 140%;
    color: #104329;
}

.banner-text p {
    font-size: 20px;
}

.banner {
    /* existing styles... */
    animation: zoomOut 1.5s ease-out forwards;
}

.abt-text h1 {
    font-family: 'Alegreya', serif;
    font-size: 36px;
    margin-bottom: 15px;
    font-weight: 600;
    line-height: 140%;
    text-align: justify;
    color: #0f452b;
}

.abt-text p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
    margin-bottom: 3%;
}

.abt-text h4 {
    font-family: 'Alegreya', serif;
    font-weight: 600;
    font-size: 30px;
    color: #262626;
    margin-bottom: 9px;
    text-align: justify;
}

.abt-text1 h4 {
    font-family: 'Alegreya', serif;
    font-weight: 600;
    font-size: 30px;
    color: #262626;
    margin-bottom: 9px;
    text-align: center;
}

.side-text h3 {
    font-family: 'Alegreya', serif;
    font-weight: normal;
    font-size: 24px;
    color: #262626;
}

.side-text p {
    font-family: 'Alegreya', serif;
    font-weight: normal;
    font-size: 18px;
    color: #d0d0d0;
}


.flex-sec {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cta {
    position: relative;
    margin: auto;
    padding: 0px 0px;
    border: none;
    background: none;
    cursor: pointer;
    transition: 0.2s ease;
    float: left;
}

.cta::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    width: 45px;
    height: 45px;
    border-radius: 50px;
    /*background: #82d1a8;*/
    transition: 0.3s ease;
}

.cta span {
    font-family: 'Alegreya', serif;
    position: relative;
    font-size: 23px;
    font-weight: 500;
    letter-spacing: 1px;
    color: #0e4429;
}

.cta svg {
    margin-left: 10px;
    stroke: #0e4429;
    stroke-width: 2;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    transform: translateX(-5px);
    transition: 0.3s ease;
}

.marg-left {
    margin-left: 30px;
}

.cta:hover::before {
    width: 100%;
}

.cta:hover svg {
    transform: translateX(0);
}

.cta:active {
    transform: scale(0.95);
}


.card {
    max-width: 650px;
    margin: 37px auto;
    background: rgba(255, 255, 255, 0.50);
    /* translucent glass look */
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    /* for Safari */
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 30px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    /* light border for glass look */
}

.icon-siz {
    width: 60px;
    margin: 0 auto;
}

.left-section h3 {
    font-family: 'Alegreya', serif;
    margin: 0px 0 2px;
    font-size: 16px;
    color: #000;
    font-weight: 400;
}

.left-section p {
    font-family: 'Alegreya', serif;
    margin: 0 0 20px;
    font-size: 22px;
    font-weight: 500;
    color: #0f452b;
}

.right-section h3 {
    font-family: 'Alegreya', serif;
    margin-bottom: 15px;
    font-size: 16px;
    color: #000;
    font-weight: 400;
}

.features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.feature-box {
    font-family: 'Alegreya', serif;
    background: #f5f8ff;
    border-radius: 10px;
    padding: 10px;
    text-align: center;
    font-size: 16px;
    color: #000;
    font-weight: 400;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

.feature-box i {
    font-size: 28px;
    margin-bottom: 10px;
    color: #2c318d;
}

.exit-box {
    font-family: 'Alegreya', serif;
    grid-column: span 3;
    background: #f5f8ff;
    border-radius: 10px;
    padding: 20px;
    font-size: 16px;
    color: #000;
    font-weight: 400;
    text-align: center;
}

/* Responsive for mobile */
@media(max-width: 768px) {
    .card {
        grid-template-columns: 1fr;
    }

    .features {
        grid-template-columns: 1fr;
    }

    .exit-box {
        grid-column: span 1;
    }
}




/**/
.cta-1 {
    position: relative;
    margin: auto;
    padding: 12px 18px;
    border: none;
    background: none;
    cursor: pointer;
    transition: 0.2s ease;
    float: left;
    margin-left: 95px;
}

.cta-1::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 45px;
    height: 45px;
    border-radius: 50px;
    background: #82d1a8;
    transition: 0.3s ease;
}

.cta-1 span {
    font-family: "Libre Franklin", sans-serif;
    position: relative;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 1px;
    color: #0e4429;
}

.cta-1 svg {
    margin-left: 10px;
    stroke: #0e4429;
    stroke-width: 2;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    transform: translateX(-5px);
    transition: 0.3s ease;
}

.cta-1:hover::before {
    width: 100%;
}

.cta-1:hover svg {
    transform: translateX(0);
}

.cta-1:active {
    transform: scale(0.95);
}

.felx-abt {
    display: flex;
    align-items: flex-start;
}

.home-bg {
    background-image: url(../images/home-bg.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: scroll;
}


.home-bg2 {
    background: rgba(255, 255, 255, 0.50);
    /* semi-transparent white */
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    /* Safari support */
    padding: 60px 90px;
}

.home-bg3 {
    background: rgba(255, 255, 255, 0.50);
    /* semi-transparent white */
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    /* Safari support */
    padding: 155px 90px;
}


.bg {
    background-color: #f7f7f7;
}

.sec2-text h2 {
    font-family: "Merriweather", serif;
    font-size: 36px;
    /* margin-bottom: 15px; */
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #0f452b;
}

.bullet ul {
    font-family: 'Alegreya', serif;
    list-style-type: disc;
    margin: 10px 15px;
    font-family: Arial, sans-serif;
    font-size: 16px;
    font-weight: 400;
}

.bullet li {
    font-family: 'Alegreya', serif;
    margin-bottom: 5px;
    font-size: 18px;
}

.bullet ul li strong {
    font-family: 'Alegreya', serif;
    font-size: 24px;
    font-weight: 400;

}

.icon {
    width: 75px;
    display: block;
    margin: 0 auto;
}

.divider {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px 0;
}

.line {
    flex: 1;
    height: 1px;
    background-color: #ccc;
}

.circle {
    width: 12px;
    height: 12px;
    background-color: #2f4265;
    /* Dark blue */
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px #ccc;
    margin: 0 10px;
}

.divider2 {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

.line2 {
    flex: 1;
    height: 1px;
    background-color: #ccc;
}

.circle2 {
    width: 12px;
    height: 12px;
    background-color: #2f4265;
    /* Dark blue */
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px #ccc;
    margin: 0 10px;
}

.philosophy-txt h3 {
    font-family: 'Alegreya', serif;
    font-size: 24px;
    font-weight: 400;
    color: #262626;
    padding-bottom: 5px;
    text-align: center;
}

.philosophy-txt p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: center;
    color: #444;
    padding: 0px 50px;
}


.skew-button {
    position: relative;
    width: 195px;
    height: 45px;
    background: #fff;
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    cursor: pointer;
    overflow: hidden;
    transition: color 0.3s ease;
}

.skew-button span {
    font-family: 'Alegreya', serif;
    position: relative;
    z-index: 1;
    text-align: center;
}

.skew-button::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 100%;
    left: 0;
    background: rgb(20, 20, 20);
    opacity: 0;
    z-index: 0;
    transition: all 0.5s ease;
}

.skew-button:hover {
    color: #fff;
}

.skew-button:hover::before {
    left: 0;
    right: 0;
    opacity: 1;
}


.cta-txt h2 {
    font-family: 'Alegreya', serif;
    font-size: 31px;
    margin-bottom: 15px;
    font-weight: 500;
    line-height: 140%;
    text-align: justify;
    color: #fff;
}

.cta-bg {
    background-color: #0e452a;
    padding: 30px 10px;
}

.ftr-logo {
    width: 200px;
}


/*--------------------------------------------------------------
top_arrow
--------------------------------------------------------------*/
.top_arrow {
    width: 45px;
    height: 45px;
    position: fixed;
    display: flex;
    right: 1%;
    bottom: 2.5%;
    transition-duration: 1s;
    font-size: 20px;
    cursor: pointer;
    color: #fff;
    z-index: 9999;
    background-color: #03c2e4;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
}

.top_arrow:hover {
    background-color: #3f3f3f;
}


/*------------------------------------------
footer
------------------------------------------*/
.ftr-head h3 {
    font-family: 'Alegreya', serif;
    font-size: 24px;
    margin-bottom: 15px;
    font-weight: 500;
    line-height: 140%;
    text-align: justify;
    color: #10462c;
}


.ftr-head p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
}

.ftr-head p a {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
}

.bullet-ftr ul {
    font-family: 'Alegreya', serif;
    list-style-type: disc;
    margin: 10px 30px;
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 400;
}

.bullet-ftr li {
    font-family: 'Alegreya', serif;
    margin-bottom: 5px;
    font-size: 16px;
}

.bullet-ftr li a {
    font-family: 'Alegreya', serif;
    margin-bottom: 5px;
    font-size: 18px;
    text-decoration: none;
    color: #000;
}

.footer-mail p::before {
    font-family: "Font Awesome 6 Free"; /* adjust depending on FA version */
    font-weight: 900; /* solid icons need this */
    content: "\f0e0"; /* unicode for envelope icon */
    color: #0f462c;
    margin-right: 8px; /* spacing between icon and text */
  }

  

.ftr-under p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
}


.ftr-under-1 p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: right;
    color: #000;
}


.ftr-under-1 p a {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: right;
    color: #000;
}

/*------------------------------------------
Main Code 
------------------------------------------*/
.contact-flex {
    display: flex;
    align-items: center;
}

.col_sm11 {
    width: 17%;
    float: left;
    margin: 6% 0% 4%;
}

.col_sm111 {
    width: 82%;
    float: left;
    margin: 4% 0%;
}

.col_sm8_8 {
    width: 30%;
    float: left;
    margin: 1%;
}

.col_sm88_8 {
    width: 66%;
    float: left;
    margin: 1%;
}

.cont-info p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
}

.cont-info a {
    font-family: 'Alegreya', serif;
    font-size: 19px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
}

.form-container {
    background: #fff;
    padding: 30px;
    /* max-width: 800px; */
    margin: auto;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.contact_1 h3 {
    color: #0f452b;
    font-family: 'Alegreya', serif;
    text-align: justify;
    font-size: 28px;
    font-weight: 700;
    line-height: 140%;
    margin-bottom: 2% !important;
}


.cont-form-pdg {
    padding-left: 55px;
}

.form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

.form-group {
    position: relative;
    width: 100%;
}



.form-group input,
.form-group textarea {
    width: 100%;
    padding: 18px 10px 10px 10px;
    border: 1px solid #ddd;
    font-size: 16px;
    font-family: 'Alegreya', serif;
    background: none;
    outline: none;
    transition: all 0.3s ease;
    box-sizing: border-box;
}

.form-group input:focus+label,
.form-group input:not(:placeholder-shown)+label,
.form-group textarea:focus+label,
.form-group textarea:not(:placeholder-shown)+label {
    top: 0;
    transform: translateY(-50%);
    background: #fff;
    color: #434343;
    font-size: 12px;
}

.form-group label {
    position: absolute;
    top: 50%;
    left: 12px;
    transform: translateY(-50%);
    background: #fff;
    padding: 0 5px;
    color: #999;
    pointer-events: none;
    transition: all 0.3s ease;
    font-family: 'Alegreya', serif;
    font-size: 16px;
}

.book_now2_red {
    height: 46px;
    position: relative;
    padding: 5px 30px;
    z-index: 1;
    font-weight: 600;
    display: inline-block;
    color: #fff;
    background: #0e452a;
    font-family: 'Alegreya', serif;
    font-size: 16px;
    border: none;
    width: 164px;
    transition: all 0.4s ease-in-out;
    text-transform: uppercase;
    cursor: pointer;
}

.expert-team p {
    font-family: 'Alegreya', serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 140%;
    text-align: justify;
    color: #000;
    text-align: center;
}

.team h2 {
    font-family: 'Alegreya', serif;
    color: #000;
    font-size: 26px;
    font-weight: 600;
    line-height: 140%;
    margin: 0;
    padding: 0;
    text-align: center;
}

.col_sm2_2 {
    width: 27%;
    float: left;
    margin: 1%;
}

.flex-center {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.expert-team {
    background: #f6f2f2;
    padding: 1% 1% 1%;
}





/*------------------------------------------
Responsive Code 
------------------------------------------*/
@media only screen and (max-width :1600px) {}

@media only screen and (max-width :1500px) {}

@media only screen and (max-width :1400px) {}

@media only screen and (max-width :1300px) {}



@media only screen and (max-width :1200px) {}

@media screen and (max-width: 1100px) {}

@media only screen and (max-width :1000px) {}


@media only screen and (max-width:960px) {
    .menu ul {
        display: block !important;
    }

    .grid{
        grid-column: 1 / span 2;
    }

    .grid2{
        grid-column: 1 / span 2;
    }

    .banner-text {
        padding: 20px 20px;
        margin-top: 208px;
    }

    .banner {
        padding-left: 20px;
        justify-content: flex-start;
    }

    .banner-text h1 {
        font-size: 28px;
    }

    .banner-text p {
        font-size: 16px;
    }

    .col_sm8 {
        width: 98%;
        float: left;
        margin: 1%;
    }

    .flex-sec {
        flex-direction: column;
    }

    .cta-txt h2 {
        text-align: center;
    }

    .col_sm99 {
        width: 23%;
    }

    .col_sm4 {
        width: 98%;
    }

    .banner {
        margin-top: -122px;
    }

    .marg-left {
        margin-left: 0px;
    }

    @media only screen and (max-width:960px) {
        .col_sm2_2 {
            width: 98%;
            float: left;
            margin: 1%;
        }
    }


}


@media only screen and (max-width: 900px) {

    .col_sm99 {
        width: 100%;
        float: none;
        text-align: center;
        /* centers inline elements like button */
    }

    .col_sm99 .skew-button {
        margin: 10px auto;
        /* ensures the button itself centers */
        display: inline-block;
    }

    .col_sm8_8 {
        width: 98%;
        float: left;
        margin: 1%;
    }

    .col_sm88_8 {
        width: 98%;
        float: left;
        margin: 1%;
    }

    .col_sm11 {
        width: 11%;
        float: left;
        margin: 6% 0% 4%;
    }

    .cont-form-pdg {
        padding: 0px;
    }

    /* .contact-flex img {
        width: 53% !important;
    } */
}

@media only screen and (max-width:800px) {
    .col_sm88 {
        width: 98%;
    }

    .col_sm2-1 {
        width: 98%;
        margin: 1%;
    }
}




@media only screen and (max-width : 700px) {
    .col_sm3 {
        width: 98%;
    }

    .col_sm99 {
        width: 98%;
    }
}

@media only screen and (max-width:600px) {
    .col_sm2 {
        width: 98%;
    }

    .ftr-under-1 p {
        text-align: left;
    }
}

@media only screen and (max-width:500px) {
    .abt-text h1 {
        font-size: 31px;
    }

    .home-bg2 {
        padding: 60px 20px;
    }

    .home-bg3 {
        padding: 60px 20px;
    }




    @media only screen and (max-width:400px) {

        .abt-text h1 {
            font-size: 29px;
        }

        .banner-text-in h2 {
            font-size: 22px;
            margin-bottom: 0px;
        }

        .banner-text-in1 h2 {
            font-size: 22px;
            margin-bottom: 0px;
        }

        .banner-text-in32 h2 {
            font-size: 22px;
            margin-bottom: 0px;
        }

        .banner {
            height: 60vh;
        }

        .banner-in {
            height: 39vh;
            padding-left: 0px;
        }

        .banner-in1 {
            height: 39vh;
            padding-left: 0px;
        }

        .banner-in32 {
            height: 39vh;
            padding-left: 0px;
        }

        .philosophy-txt p {
            padding: 0px 0px 15px 0px;
        }

        .banner-text h1 {
            font-size: 24px;
        }


    }
}

@media only screen and (max-width:360px) {
    .form-group {
        position: relative;
        width: 83%;
    }
}