/*------------------------------------------------------------------
[Master Stylesheet]

Project:  Poolrex
-------------------------------------------------------------------*/
/*------------------------------------------------------------------
[Table of contents]

1. Body
2. Header  / .header-con
3. Banner  /.banner-con
4. Service  /.service-con
5. About  /.about-con
6. Form  /.main-form-con
7. Static  /.static-con
8. Vedio  /.vedio-con
9. Team  /.team-con
10. Testimonial  /.testimonials-con
11. Blog  /.blog-con
12. Footer  /.footer-con
*/
/*------------------------------------------------------------------
# [Color Codes]

#    --primary--color: #0a2663;
#    --secondary--color: #2ca2fc;
#    --accent--color: #fddc57; 
#    --black--color: #000;   
#    --white--color: #fff;
#    --text--color:#6d6c6c;
#    --grey--color:#f1f9ff;
#    --red--color:#ff0000;
#    --dark-orange: #fbab00;

*/
/*------------------------------------------------------------------
# [Typography]
 
Body copy: "Public Sans", sans-serif;
*/

@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&amp;family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&amp;family=Public+Sans:ital,wght@0,100..900;1,100..900&amp;family=Work+Sans:ital,wght@0,100..900;1,100..900&amp;display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html{
    scroll-behavior: smooth;
}
a,
button, input {
    outline: none;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
:root {
    --primary--color: #0a2663;
    --secondary--color: #2ca2fc;
    --accent--color: #fddc57; 
    --black--color: #000;   
    --white--color: #fff;
    --text--color:#6d6c6c;
    --grey--color:rgb(241, 249, 255);
    --red--color:#ff0000;
    --dark-orange: #fbab00;
}
body{
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: var(--text--color);
    font-family: "Public Sans", sans-serif;
}
.generic-btn a{
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    border-radius: 29px;
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
    color: white;
    padding: 22px 32px 22px 33px;
    background: #0f587a;
}
.generic-btn a i{
    font-size: 12px;
    padding-left: 15px;
    color: var(--black--color);
    transition: all 0.3s ease-in-out;
}
/* .generic-btn a:hover{
    color: var(--white--color);
    transform: translateY(-5px);
    background: var(--secondary--color);
} */
.generic-btn a:hover i{
    color: var(--white--color);
}
.padding-top{
    padding-top: 140px;
}
.padding-bottom{
    padding-bottom: 140px;
}
.generic-title span{
    font-size: 16px;
    line-height: 16px;
    margin-bottom: 16px;
    color: var(--secondary--color);
}
.generic-title h2{
    color: var(--primary--color);
}
.generic-title{
    width: 52%;
    margin: 0 auto 48px;
}
h1{
    font-size: 94px;
    font-weight: 800;
    line-height: 95px;
}
h2 {
    font-size: 44px;
    font-weight: 700;
    line-height: 53px;
}
h3 {
    font-size: 22px;
    font-weight: 700;
    line-height: 24px;
}
h4 {
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
}
h5 {
    font-size: 18px;
    font-weight: 700;
    line-height: 20px;
}
h6 {
    font-size: 16px;
    font-weight: 700;
    line-height: 18px;
}
/* HEADER SECTION */
.header-con{
    padding: 19px 6.7%;
}
.header-con .navbar-light .navbar-nav .nav-link{
    font-size: 14px;
    line-height: 18px;
    color: #3f3f3f;
    text-transform: uppercase;
}
.header-con .navbar-light .navbar-nav .nav-link:hover{
    color: var(--secondary--color);
}
.header-con .navbar-expand-lg .navbar-nav {
    gap: 55px;
    align-items: center;
}
.header-con .dropdown-toggle::after {
    top: 3px;
    border: none;
    font-size: 12px;
    content: "\f107";
    font-weight: 600;
    position: relative;
    font-family: "Font Awesome 6 free";
}
.header-btn {
    gap: 28px;
    display: flex;
    align-items: center;
    margin-left: 78px;
}
.header-con .navbar-light .navbar-nav .active > a{
    color: var(--secondary--color) !important;
}
.header-con .dropdown-item {
    font-size: 14px;
    color: #3f3f3f;
    border-bottom: 1px solid var(--white--color);
}
.header-con .dropdown-item:last-child {
    border: none;
}
.header-con .dropdown-menu{
    padding: 0;
    top: 52px !important;
    border-radius: 15px;
    width: 215px;
    padding: 10px 0;
}
.header-con .dropdown-item:hover{
    border-radius: 0;
    color: var(--white--color) !important;
    background-color: var(--secondary--color) !important;
}
.navbar-nav .dropdown-item.active, .dropdown-item:active{
    border-radius: 0;
    color: var(--white--color) !important;
    background-color: var(--secondary--color) !important;
}
.navbar-nav .dropdown .active > a:hover {
    border-radius: 0;
    color: var(--white--color) !important;
    background-color: var(--secondary--color) !important;
}
/* .navbar-nav .dropdown .dropdown-item:first-child:hover {
    border-radius: 14px 14px 0 0;
} */
.navbar-nav .dropdown .dropdown-item:first-child.active{
    /* border-radius: 14px 14px 0 0; */
    background-color: var(--secondary--color) !important;
}
/* .navbar-nav .dropdown .active:first-child > a {
    border-radius: 14px 14px 0 0;
}
.navbar-nav .dropdown .dropdown-item:last-child:hover {
    border-radius: 0 0 14px 14px;
} */
.navbar-nav .dropdown .dropdown-item:last-child.active{
    /* border-radius: 0 0 14px 14px; */
    background-color: var(--secondary--color) !important;
}
.quote-btn a{
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    border-radius: 26px;
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
    color: #ffffff;
    padding: 18px 26px 20px 31px;
    background: #d44852;
}
.quote-btn a i{
    font-size: 12px;
    padding-left: 12px;
}
.quote-btn a:hover{
    color: var(--white--color);
    transform: translateY(-5px);
    background: #0f587a;
}
.phone-num a{
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    display: inline-block;
    text-decoration: none;
    color: var(--primary--color);
}
.phone-num img{
    padding-right: 10px;
}
.phone-num a:hover{
    color: var(--secondary--color);
}
/* HEADER SECTION */
/* BANNER SECTION */

.banner-con{
    position: relative;
    /* padding: 210px 0 220px; */
    padding: 210px 0 145px;
    background: url(../images/banner-bg-image.png) no-repeat center;
    /* background-color: var(--grey--color); */
    /* background-image: linear-gradient(to right, var(--black--color)  0%, var(--white-color) 100%); */
    background-size: cover;
}
/* .banner-con::after{
    bottom: -25px;
    left: 0;
    content: "";
    width: 100%;
    height: 133px;
    position: absolute;
    background: url(../images/banner-shape.png) no-repeat;
    background-size: cover;
} */
.banner-con::before{
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: url(../images/banner-leftshade.png) no-repeat;
    /* background-size: cover; */
}
.banner-con .banner-wave{
    position: relative;
    bottom: -140px;
}
.banner-con .waves {
    position:relative;
    width: 100%;
    height:15vh;
    margin-bottom:-7px; /*Fix for safari gap*/
    min-height:100px;
    max-height:150px;
}  
.banner-con .content {
    position:relative;
    height:20vh;
    text-align:center;
    background-color: white;
}

/* Animation */
.parallax > use {
animation: move-forever 25s cubic-bezier(.40,.5,.35,.5) infinite;
}
.parallax > use:nth-child(1) {
animation-delay: -2s;
animation-duration: 7s;
}
.parallax > use:nth-child(2) {
animation-delay: -3s;
animation-duration: 10s;
}
.parallax > use:nth-child(3) {
animation-delay: -4s;
animation-duration: 13s;
}
.parallax > use:nth-child(4) {
animation-delay: -5s;
animation-duration: 20s;
}
@keyframes move-forever {
0% {
transform: translate3d(-90px,0,0);
}
100% {
transform: translate3d(85px,0,0);
}
}
.banner-title {
    width: 60%;
}
.banner-title *{
    color: var(--white--color);
}
.banner-title h1{
    margin-bottom: 19px;
}
.banner-title h1 span{
    color: #d43f49
}
.banner-title p{
    font-size: 20px;
    font-weight: 500;
    line-height: 33px;
    margin-bottom: 38px;
}
.banner-title ul{
    display: none;
}
.banner-con ul {
    position: absolute;
    left: 140px;
    top: 366px;
}
.banner-con ul li {
    margin: 16px 0;
    transition: all 0.3s ease-in-out;
}
.banner-con ul li:first-child {
    margin-top: 0;
}
.banner-con ul li:last-child {
    margin-bottom: 0;
}
.banner-con ul li i {
    font-size: 16px;
    width: 46px;
    height: 46px;
    line-height: 46px;
    border-radius: 100px;
    text-align: center;
    color: var(--white--color);
    background-color: transparent;
    border: 1px solid rgb(255 255 255 / 40%);
    transition: all 0.3s ease-in-out;
}
.banner-con ul li a:hover i {
    background-color: var(--secondary--color);
    border: 1px solid var(--secondary--color);
}
.banner-con .top-btn {
    bottom: -102px;
    display: block;
    text-align: center;
    position: relative;
}
.banner-con .banner-dropdownimage{
    display: inline-block;
    transition: all 0.3s ease-in-out;
}
.banner-con .banner-dropdownimage:hover {
    transform: translateY(-5px);
}
/* BANNER SECTION */
/* SERVICES SECTION */
.service-con{
    /* padding-top: 100px !important; */
    background: var(--grey--color);
}
.service-con .item {
    display: flex;
    flex-direction: column;
    border-radius: 20px;
    background: var(--white--color);
}
.service-img{
    position: relative;
}
.service-small-icon{
    position: absolute;
}
.service-small-icon figure{
    width: 99px;
    height: 99px;
    display: flex;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: var(--secondary--color);
    transition: all 0.4s ease-in-out;
}
.service-small-icon figure img{
    width: auto !important;
    transition: all 0.4s ease-in-out;
}
.service-img > figure > img{
    width: 100% !important;
    border-radius: 20px 20px 0 0;
}
.service-small-icon {
    left: 50%;
    bottom: -46px;
    position: absolute;
    transform: translateX(-50%);
}
.service-content{
    flex-grow: 1;
    display: flex;
    text-align: center;
    flex-direction: column;
    padding: 74px 55px 38px;
}
.service-content h3{
    margin-bottom: 13px;
    color: var(--primary--color);
}
.service-content p{
    margin-bottom: 28px;
}
.service-content a{
    font-size: 14px;
    font-weight: 600;
    line-height: 14px;
    margin-top: auto;
    display: inline-block;
    text-decoration: none;
    color: var(--secondary--color);
} 
.service-content a i{
    font-size: 12px;
    padding-left: 4px;
}
.service-content a:hover{
    color: var(--accent--color);
}
.service-box .owl-carousel .owl-stage {
    display: flex;
}
.service-box .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
}
.service-item {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
}
.service-item:hover .service-small-icon figure{
    transform: translateY(-5px);
}
.service-box .owl-nav{
    display: none;
}
 .owl-theme .owl-dots .owl-dot span{
    width: 12px;
    height: 12px;
    margin: 0;
    background: #ccd8e1;
}
.owl-theme .owl-dots .owl-dot:hover span{
    background: var(--secondary--color);
}
 .owl-theme .owl-dots .owl-dot.active span{
    width: 16px;
    height: 16px;
    background: var(--secondary--color);
}
.owl-theme button{
    outline: none;
}
.owl-dots{
    gap: 12px;
    display: flex;
    justify-content: center;
}
.service-box .owl-stage-outer{
    margin-bottom: 54px;
}
.about-con{
    padding-bottom: 182px !important;
}
/* .aboutpage-con{
    padding-top: 90px !important;
} */
/* =====================================================
   ABOUT SECTION – BIO PHARMA PREMIUM
   ===================================================== */

.about-con {
    position: relative;
    padding: 120px 0;
    background:#ffffff;
   overflow: hidden;
}

/* Molecular pattern */
.about-con::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(15,88,122,0.16) 2px, transparent 3px),
        radial-gradient(circle at 70% 60%, rgba(213,41,52,0.14) 2px, transparent 3px);
    background-size: 150px 150px;
    pointer-events: none;
    animation: aboutParticles 30s linear infinite;
    z-index: 0;
}

@keyframes aboutParticles {
    from { transform: translateY(0); }
    to { transform: translateY(-120px); }
}

/* =====================================================
   GRID
   ===================================================== */

.about-box {
    position: relative;
    display: grid;
    grid-template-columns: 48% 42%;
    gap: 30px;
    align-items: center;
    z-index: 2;
}

/* =====================================================
   IMAGE AREA
   ===================================================== */

.about-img {
    position: relative;
    animation: floatImage 10s ease-in-out infinite;
}

@keyframes floatImage {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

.about-img > figure > img {
    width: 100%;
    border-radius: 50%;
    box-shadow: 0 35px 90px rgba(15,88,122,0.35);
}

/* Image glow ring */
.about-img > figure::after {
    content: "";
    position: absolute;
    inset: -12px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0f587a, #0f587a);
    opacity: 0.25;
    z-index: -1;
    filter: blur(18px);
}

/* Floating icon */
.about-icon figure {
    top: 15px;
    right: 15px;
    width: 129px;
    height: 129px;
    position: absolute;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    box-shadow: 0 20px 60px rgba(15,88,122,0.35);
    animation: iconPulse 4s ease-in-out infinite;
}

@keyframes iconPulse {
    0%,100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}

/* Small image */
.about-small-img {
    position: absolute;
    left: 4px;
    bottom: -57px;
}

.about-small-img figure {
    width: 216px;
    height: 216px;
    border-radius: 50%;
    outline: 4px solid #ffffff;
    box-shadow: 0 18px 45px rgba(213,41,52,0.25);
    animation: floatSmall 8s ease-in-out infinite;
}

@keyframes floatSmall {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

.about-small-img figure img {
    width: 100%;
    border-radius: 50%;
}

/* =====================================================
   CONTENT AREA
   ===================================================== */

.about-content {
    padding-top: 36px;
}

/* About tag */
.about-content span {
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1.2px;
    padding: 8px 20px;
    border-radius: 30px;
    color: #0f587a;
    background: rgba(15,88,122,0.12);
    margin-bottom: 18px;
    position: relative;
    overflow: hidden;
}

/* Tag shimmer */
.about-content span::after {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 120%;
    height: 100%;
    background: linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,0.7),
        transparent
    );
    animation: tagShimmer 3.5s ease-in-out infinite;
}

@keyframes tagShimmer {
    0% { left: -120%; }
    50% { left: 120%; }
    100% { left: 120%; }
}

/* Heading */
.about-content h2 {
    margin-bottom: 26px;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 800;
    line-height: 1.25;
    background: linear-gradient(90deg, #0f587a, #0f587a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Paragraph */
.about-content p {
    margin-bottom: 28px;
    font-size: 16px;
    line-height: 1.8;
    font-weight: 500;
    color: #000000;
}

/* =====================================================
   BUTTON
   ===================================================== */

.about-content .generic-btn a {
    padding: 22px 40px;
    border-radius: 50px;
    background: linear-gradient(90deg, #0f587a, #0f587a);
    color: #ffffff;
    box-shadow: 0 18px 45px rgba(15,88,122,0.4);
    /* transition: all 0.4s ease; */
}

/* .about-content .generic-btn a:hover {
    transform: translateY(-4px);
    box-shadow: 0 28px 65px rgba(213,41,52,0.45);
} */

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 991px) {
    .about-box {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .about-small-img {
        position: static;
        margin-top: 25px;
    }

    .about-content {
        padding-top: 0;
    }
}

@media (max-width: 575px) {
    .about-con {
        padding: 80px 0;
    }

    .about-icon figure {
        width: 90px;
        height: 90px;
    }

    .about-small-img figure {
        width: 160px;
        height: 160px;
    }
}

/* SERVICES SECTION */
/* FORM SECTION */
.form-box {
    display: grid;
    grid-template-columns: 53.4% 46.6%;
}
.form-clean-box figure {
    display: flex;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: #d52934;
    border: 4px solid #fff;
    position: absolute;
    right: -165px;
    top: 172px;
    z-index: 1;
}
.contact-form {
    z-index: 1;
    position: relative;
}
.mian-form-con {
    /* background-image: url(../images/contact-backgroundimage.jpg); */
    background-color: var(--primary--color);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
/* .mian-form-con::after{
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/contact-backgroundimage.jpg);
    background-repeat: no-repeat;
    background-size: cover;
} */
.mian-form-con::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 45%;
    height: 100%;
    background-image: url(../images/form-img.png);
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 1;
}
.form-item {
    display: flex;
    align-items: center;
    position: relative;
    /* background: var(--primary--color) url(../images/line-img.png) no-repeat center; */
    background-size: cover;
    z-index: 1;
}
.form-icon {
    left: 0;
    bottom: 0;
    position: absolute;
}
.form-img figure img{
    width: 100%;
}
.form-con {
    width: 492px;
    margin-left: auto;
    margin-right: 130px;
    padding: 115px 0;
}
.form-con span{
    font-size: 16px;
    font-weight: 500;
    line-height: 16px;
    margin-bottom: 15px;
    color: var(--white--color);
}
.form-con h2{
    margin-bottom: 24px;
    color: var(--white--color);
}
.form-con p{
    padding-right: 30px;
    margin-bottom: 38px;
    color: var(--white--color);
}
.contact-form ul {
    display: grid;
    gap: 25px 15px;
    margin-bottom: 32px;
    grid-template-columns: 48.6% 48.6%;
}
.contact-form ul li input:focus,
.contact-form ul li textarea:focus{
/* .submit-btn:focus{ */
    outline: none;
    border: 1px solid var(--accent--color);
}
.contact-form ul li input,
.contact-form ul li textarea{
    width: 100%;
    border: none;
    font-size: 14px;
    line-height: 14px;
    border-radius: 26.5px;
    padding: 18px 24px 19px;
    color: var(--text--color);
    border: 1px solid transparent;
    background: var(--white--color);
}
.contact-form ul li input::placeholder{
    font-size: 14px;
    line-height: 14px;
    color: var(--text--color);
}
.contact-form ul li:last-child{
    grid-column: 1/-1;
}
.contact-form ul li textarea{
    resize: none;
    height: 118px;
}
.contact-form span {
    font-size: 12px;
    line-height: 12px;
    font-weight: 400;
    margin-top: 5px;
    margin-bottom: 0 !important;
    /* left: 35px; */
    display: block;
    position: absolute;
    color: var(--red--color);
}
.form-img{
    position: relative;
    /* background: url(../images/form-img.png) no-repeat center; */
    background-size: cover;
}
.form-box{
    background: #0f587a url(../images/line-img.png) no-repeat center;
    background-size: cover;
}
.submit-btn{
    /* border: none; */
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    border-radius: 29px;
    text-transform: uppercase;
    color: var(--black--color);
    padding: 22px 30px 22px 39px;
    background: #ffffff;
    outline: none;
    /* border-style: none; */
    border: #d52934;
}
.submit-btn i{
    font-size: 12px;
    padding-left: 19px;
    color: var(--black--color);  
    transition: all 0.3s ease-in-out;   
}
.submit-btn:hover{
    color: var(--white--color);
    transform: translateY(-5px);
    background: #0f587a;
    border: 2px solid #d52934;
}

.submit-btn:hover i{
    color: var(--white--color);
}

/* FORM SECTION */

/* =====================================================
   BIO PHARMA STATISTICS SECTION (PREMIUM)
   Colors: #0f587a (Science Blue), #d52934 (Bio Red)
   ===================================================== */

/* =====================================================
   BIO PHARACEUTICAL SECTION BACKGROUND (BRAND COLORS)
   ===================================================== */

.static-section-bio {
    position:relative;
padding:110px 0;
overflow:hidden;
isolation:isolate;

background:
linear-gradient(rgba(15,88,122,.95), rgba(15,88,122,.95)),
url("assets/images/pond-numbers-bg.jpg") center/cover no-repeat;
}

/* Molecular dot pattern */
.static-section-bio::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(15,88,122,0.14) 2px, transparent 3px),
        radial-gradient(circle at 70% 60%, rgba(213,41,52,0.14) 2px, transparent 3px),
        radial-gradient(circle at 40% 85%, rgba(15,88,122,0.10) 2px, transparent 3px);
    background-size: 140px 140px;
    pointer-events: none;
    z-index: 0;
}

/* Floating bio glow waves */
.static-section-bio::after {
    content: "";
    position: absolute;
    inset: -25%;
    background:
        radial-gradient(circle at center, rgba(15,88,122,0.28), transparent 60%),
        radial-gradient(circle at 30% 70%, rgba(213,41,52,0.24), transparent 65%);
    opacity: 0.35;
    animation: bioGlowMove 26s linear infinite;
    pointer-events: none;
    z-index: 0;
}

@keyframes bioGlowMove {
    0% {
        transform: translateY(0) rotate(0deg);
    }
    100% {
        transform: translateY(-140px) rotate(360deg);
    }
}


/* =====================================================
   GRID
   ===================================================== */

.static-box {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 34px;
    z-index: 2;
}

/* =====================================================
   CARD – GLASS SCIENCE STYLE
   ===================================================== */

.static-box-item {
    position: relative;
    overflow: hidden;
    padding: 46px 52px;
    border-radius: 24px;
    text-align: center;

    background: rgba(255,255,255,0.82);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    border: 1px solid rgba(15,88,122,0.15);
    box-shadow:
        0 25px 70px rgba(15,88,122,0.18);

    transition: all 0.5s cubic-bezier(.22,.61,.36,1);
}

/* Lift + depth */
.static-box-item:hover {
    transform: translateY(-16px) scale(1.045);
    box-shadow:
        0 45px 100px rgba(15,88,122,0.35),
        0 0 0 1px rgba(213,41,52,0.25);
}

/* Animated gradient border */
.static-box-item::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: 24px;
    background: linear-gradient(
        360deg,
        #d52934,
        #0f587a
    );
    opacity: 0;
    transition: opacity 0.45s ease;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}

.static-box-item:hover::before {
    opacity: 1;
}

/* =====================================================
   ICON – BIO NODE
   ===================================================== */

.static-box-item figure {
    position: relative;
    width: 88px;
    height: 88px;
    margin: 0 auto 26px;
    border-radius: 50%;

    background: linear-gradient(135deg, #0f587a, #0f587a);
    display: flex;
    align-items: center;
    justify-content: center;

    transition: all 0.45s ease;
}

/* Rotating molecular ring */
.static-box-item figure::before {
    content: "";
    position: absolute;
    inset: -16px;
    border-radius: 50%;
    border: 2px dashed rgba(15,88,122,0.45);
    animation: moleculeSpin 18s linear infinite;
}

@keyframes moleculeSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Icon interaction */
.static-box-item:hover figure {
    transform: translateY(-8px) scale(1.15);
    /* box-shadow:
        0 18px 40px rgba(213,41,52,0.45); */
}

/* =====================================================
   NUMBER – SCIENTIFIC COUNTER
   ===================================================== */

.staic-value {
    font-size: 36px;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 12px;
    display: inline-block;
    color: #0f587a;
    position: relative;
}

/* Glow on hover */
.static-box-item:hover .staic-value {
    color: #d52934;
    text-shadow:
        0 0 14px rgba(15,88,122,0.35),
        0 0 28px rgba(15,88,122,0.35);
}

/* Shine sweep */
.staic-value::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        120deg,
        transparent 30%,
        rgba(255,255,255,0.9),
        transparent 70%
    );
    opacity: 0;
}

.static-box-item:hover .staic-value::after {
    animation: statShine 0.95s ease;
}

@keyframes statShine {
    0% { transform: translateX(-120%); opacity: 0; }
    40% { opacity: 1; }
    100% { transform: translateX(120%); opacity: 0; }
}

/* =====================================================
   LABEL
   ===================================================== */

.static-box-item small {
    font-size: 14px;
    line-height: 1.7;
    color: #4d4d4d;
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 991px) {
    .static-box {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .static-section-bio {
        padding: 75px 0;
    }

    .static-box {
        grid-template-columns: 1fr;
    }

    .static-box-item {
        padding: 36px 26px;
        backdrop-filter: none;
    }

    .static-section-bio::after {
        animation: none;
    }
}


/* VEDIO SECTION */
/* =====================================================
   VIDEO SECTION (STICKY BACKGROUND EFFECT)
   ===================================================== */

.vedio-con {
    position: relative;
    background: url(../images/vedio-bg-img.jpg) center center / cover no-repeat;
    background-attachment: fixed; /* Sticky background */
    overflow: hidden;
}

/* Brand gradient overlay */
.vedio-con::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            120deg,
            rgba(15, 88, 122, 0.55),
            rgba(15, 88, 122, 0.55)
        );
    z-index: 0;
}

/* Optional soft animated texture */
.vedio-con::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top, rgba(255,255,255,0.08), transparent 60%);
    animation: bgPulse 10s ease-in-out infinite;
    z-index: 0;
}

@keyframes bgPulse {
    0%,100% { opacity: 0.4; }
    50% { opacity: 0.7; }
}

.vedio-con .container {
    position: relative;
    z-index: 2;
}

/* =====================================================
   CONTENT CARD (GLASS EFFECT)
   ===================================================== */

.vedio-content {
    max-width: 820px;
    margin: auto;
    padding: 70px 60px;

    background: rgba(255,255,255,0.08);
    backdrop-filter: blur(12px);
    border-radius: 26px;

    box-shadow:
        0 40px 100px rgba(0,0,0,0.35),
        inset 0 0 0 1px rgba(255,255,255,0.15);

    animation: floatContent 6s ease-in-out infinite;
}

@keyframes floatContent {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

.vedio-content * {
    color: #000000;
}

.vedio-content h2 {
    margin-bottom: 18px;
    font-size: 36px;
}

.vedio-content p {
    font-size: 18px;
    line-height: 1.7;
    padding: 0 40px;
    opacity: 0.95;
}

/* =====================================================
   PLAY BUTTON WITH RIPPLE + PULSE
   ===================================================== */

.video-icon-wrap {
    position: relative;
    margin: 0 auto 45px;
    width: 120px;
    height: 120px;
}

.video-icon {
    width: 100px;
    height: 100px;
    margin: auto;

    background: linear-gradient(135deg, #0f587a, #0f587a);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow:
        0 20px 50px rgba(213,41,52,0.45);

    position: relative;
    z-index: 2;
    transition: all 0.4s ease;
}

.video-icon i {
    font-size: 22px;
    color: #ffffff;
    margin-left: 3px;
}

/* Hover */
.video-icon-wrap:hover .video-icon {
    transform: scale(1.12) rotate(6deg);
    box-shadow:
        0 30px 70px rgba(15,88,122,0.55);
}

/* =====================================================
   RIPPLE EFFECT
   ===================================================== */

.video-ripple {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(255,255,255,0.2);
    animation: ripple 2.5s infinite;
}

.video-ripple.delay {
    animation-delay: 1.25s;
}

@keyframes ripple {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }
    100% {
        transform: scale(1.9);
        opacity: 0;
    }
}

/* .......................... */

/* =====================================================
   CONTACT CTA BUTTON (PREMIUM BIO STYLE)
   ===================================================== */

.video-cta {
    margin-top: 45px;
    animation: fadeUpCta 1.2s ease forwards;
}

@keyframes fadeUpCta {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.video-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 14px;

    padding: 18px 40px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.5px;

    color: #ffffff;
    text-decoration: none;
    border-radius: 50px;

    background: linear-gradient(
        135deg,
        #0f587a,
        #0f587a
    );

    box-shadow:
        0 18px 45px rgba(213, 41, 52, 0.45);

    overflow: hidden;
    transition: all 0.4s ease;
}

/* Arrow animation */
.video-btn i {
    font-size: 14px;
    transition: transform 0.35s ease;
}

/* Hover state */
.video-btn:hover {
    transform: translateY(-6px) scale(1.05);
    box-shadow:
        0 28px 70px rgba(15, 88, 122, 0.6);
    color: #ffffff;
}

.video-btn:hover i {
    transform: translateX(6px);
}

/* Glow sweep */
.video-btn .btn-glow {
    position: absolute;
    top: 0;
    left: -120%;
    width: 200%;
    height: 100%;
    background: linear-gradient(
        120deg,
        transparent 30%,
        rgba(255,255,255,0.6),
        transparent 70%
    );
    transition: 0.8s ease;
}

.video-btn:hover .btn-glow {
    left: 120%;
}

/* Pulse breathing effect */
.video-btn::after {
    content: "";
    position: absolute;
    inset: -4px;
    border-radius: 50px;
    background: linear-gradient(
        135deg,
        rgba(213,41,52,0.6),
        rgba(15,88,122,0.6)
    );
    opacity: 0.4;
    filter: blur(18px);
    z-index: -1;
    animation: ctaPulse 3s ease-in-out infinite;
}

@keyframes ctaPulse {
    0%,100% { opacity: 0.35; }
    50% { opacity: 0.65; }
}

/* =====================================================
   MOBILE OPTIMIZATION
   ===================================================== */

@media (max-width: 575px) {
    .video-btn {
        padding: 16px 32px;
        font-size: 15px;
    }
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 991px) {
    .vedio-content {
        padding: 60px 40px;
    }

    .vedio-content p {
        padding: 0;
    }
}

@media (max-width: 575px) {
    .vedio-con {
        background-attachment: scroll; /* Better mobile performance */
    }

    .vedio-content {
        padding: 50px 25px;
        border-radius: 18px;
    }

    .vedio-content h2 {
        font-size: 28px;
    }

    .vedio-content p {
        font-size: 16px;
    }

    .video-icon-wrap {
        width: 100px;
        height: 100px;
    }

    .video-icon {
        width: 80px;
        height: 80px;
    }
}

/* .play-btn{
    border: none;
    display: flex;
    width: 85.5px;
    height: 85.8px;
    cursor: pointer;
    border-radius: 50%;
    align-items: center;
    margin: 0 auto 61px;
    outline-offset: 13px;
    justify-content: center;
    background: var(--accent--color);
    outline: 1px solid rgb(255 255 255 / 30%);
}
.play-btn:hover{
    background: var(--secondary--color);
}
.play-btn:hover i{
    color: var(--white--color);
}
.play-btn i{
    font-size: 20px;
    color: var(--black--color);
} */
/* VEDIO SECTION */
/* TEAM SECTION */
.team-con{
    background: var(--grey--color);
}
.team-box {
    gap: 30px;
    display: grid;
    grid-template-columns: 23% 23% 23% 23%;
}
.team-box-item {
    border-radius: 20px;
    background: var(--white--color);
}
.team-box-item figure img{
    width: 100%;
    border-radius: 20px 20px 0 0;
}
.team-content{
    padding:30px 15px;
}
.team-content h5{
    margin-bottom: 8px;
    color: var(--primary--color);
    transition: all 0.3s ease-in-out;
}
.team-content span{
    font-size: 14px;
    line-height: 14px;
    margin-bottom: 22px;
}
.team-social ul{
    /* gap: 15px; */
    gap: 10px;
    display: flex;
    justify-content: center;
}
.team-social ul li a i{
    width: 33px;
    height: 33px;
    display: flex;
    font-size: 14px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: var(--white--color);
    background: var(--primary--color);
    transition: all 0.3s ease-in-out;
}
.team-social ul li a i:hover{
    color: var(--black--color);
    background: var(--accent--color);
    transform: translateY(-5px);
}
.team-social ul li a{
    text-decoration: none;
}
.team-box-item:hover h5{
    color: var(--secondary--color);
}
.team-box-item:hover li a i{
    color: var(--white--color);
    background: var(--secondary--color);
}
/* TEAM SECTION */
/* TESTIMONIALS SECTION */
.tesimonials-con {
    padding-bottom: 217px;
}
.tesimonials-con .generic-title{
    width: 100%;
}
.slider-box .owl-carousel .owl-stage-outer{
    overflow: inherit;
    overflow-x: clip !important;
}
.slider-box .review-details-box figure{
    text-align: center;
    margin-bottom: 20px;
}
.slider-box .review-details-box figure img{
    margin: 0 auto;
}
.slider-box .review-details-box {
    width: 82.9%;
    margin: 0 auto;
    position: relative;
    border-radius: 20px;
    text-align: center;
    padding: 60px 63px 55px;
    background: var(--white--color);
    box-shadow: 2px 2px 67px rgb(44 162 252 / 7%);
}
.slider-box .owl-carousel .owl-item img{
    width: auto;
}
.review-details-box figure {
    margin-bottom: 20px;
}
.review-details-box p {
    font-size: 18px;
    margin-bottom: 0;
    line-height: 28px;
    font-weight: 400;
}
#thumbs figure{
    width: 53px;
    height: 53px;
    margin: 0 4px;
    position: relative;
    border-radius: 100%;
    transition: .4s ease-in-out;
}
#thumbs figure:after{
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgb(0 0 0 / 30%);
    border-radius: 50%;
}
#thumbs .owl-item {
    width: auto !important;
}
#thumbs .owl-item img{
    border-radius: 50%;
}
#thumbs .owl-stage{
    text-align: center;
    margin: 0px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88% !important;
    transform: none !important;
}
#big {
    position: relative;
    margin-bottom: 44px;
}
.customer-status h5 {
    font-size: 20px;
    font-weight: 600;
    line-height: 20px;
    margin-bottom: 8px;
    color: var(--primary--color);
}
.customer-status span {
    font-size: 13px;
    line-height: 13px;
}
.customer-status {
    left: 51%;
    bottom: -174px;
    position: absolute;
    text-align: center;
    transform: translateX(-50%);
}
.slider-con .owl-nav button{
    top: 50%;
    position: absolute;
    transform: translateY(-50%);
}
.slider-con .owl-next{
    right: 0;
}
.slider-con .owl-prev{
    left: 0;
}
#thumbs .owl-item.current  figure{
    opacity: 1;
    scale: 1.3;
    margin: 0 20px;
}
#thumbs .owl-item.current  figure:after{
    display: none;
}
.slider-box .review-details-box::after {
    width: 0;
    height: 0;
    left: 50%;
    content: "";
    bottom: -15px;
    position: absolute;
    transform: translateX(-50%);
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #fff;
}
.slider-box .owl-theme .owl-nav {
    margin-top: 0;
}
.slider-box .owl-theme .owl-nav button {
    top: 50%;
    margin: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    position: absolute;
    color: var(--white--color);
    transform: translateY(-50%);
    background: var(--primary--color);
}
.slider-box .owl-theme .owl-nav button.owl-prev{
    left: 0;
}
.slider-box .owl-theme .owl-nav button.owl-next{
    right: 0;
}
.slider-box .owl-theme .owl-nav [class*=owl-]:hover{
    background: var(--secondary--color);
}
/* TESTIMONIALS SECTION */
/* BLOG SECTION */
.blog-con{
    background: var(--grey--color);
}
.blog-box .item {
    display: flex;
    border-radius: 20px;
    flex-direction: column;
    background: var(--white--color);
}
.blog-box-item figure img{
    border-radius: 20px 20px 0 0;
}
.blog-box-content {
    flex-grow: 1;
    padding: 30px;
    display: flex;
    flex-direction: column;
}
.blog-date{
    font-size: 12px;
    line-height: 12px;
    margin-bottom: 10px;
    color: var(--secondary--color);
}
.blog-box-content h4{
    line-height: 28px;
    margin-bottom: 8px;
}
.blog-box-content h4 a{
    text-decoration: none;
    color: var(--primary--color);
}
.blog-box-content h4 a:hover{
    color: var(--accent--color);
}
.blog-box-content p{
    line-height: 24px;
    margin-bottom: 20px;
}
.blog-box-content .read-btn{
    font-size: 14px;
    font-weight: 600;
    line-height: 14px;
    margin-top: auto;
    display: inline-block;
    text-decoration: none;
    color: var(--secondary--color);
}
.blog-box-content .read-btn i{
    font-size: 12px;
    padding-left: 4px;
}
.blog-box-content .read-btn:hover{
    color: var(--accent--color);
}
.blog-box .owl-theme .owl-nav{
    display: none;
}
.blog-box .owl-stage-outer{
    margin-bottom: 54px;
}
.blog-box .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
}
.blog-box .owl-carousel .owl-stage{
    display: flex;
}
.blog-box-item {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}
/* BLOG SECTION */
/* FOOTER SECTION */
.footer-item {
    padding-top: 86px;
    padding-bottom: 80px;
}
.footer-con{
    background: #0f587a;
}
.footer-box {
    gap: 60px;
    display: grid;
    grid-template-columns:29.1% 11.8% 14% 28.83%;
}
.footer-info{
    padding-left: 54px;
    padding-right: 54px;
    background: #bfbfbf;
}
.footer-logo a{
    margin-bottom: 30px;
    display: inline-block;
}
.footer-info ul li{
    display: flex;
    align-items: center;
    margin-bottom: 18px;
}
.footer-info ul li:last-child{
    margin-bottom: 0;
}
.footer-info ul li a,
.footer-info ul li span{
    font-size: 14px;
    line-height: 14px;
    display: inline-block;
    text-decoration: none;
    color: var(--white--color);
}
.footer-info ul li a:hover{
    color: var(--accent--color);
}
.footer-info ul li i{
    padding-right: 15px;
    color: var(--white--color);
}
.footer-info ul li span{
    line-height: 25px;
}
.footer-info ul li:last-child i{
    top: -10px;
    position: relative;
}
.site-map h4{
    margin-bottom: 22px;
    color: var(--white--color);
}
.site-map > ul li {
    font-size: 14px;
    font-weight: 600;
    line-height: 14px;
    margin-bottom: 19px;
}
.site-map > ul li a{
    text-decoration: none;
    color: #92a7d3;
}
.site-map > ul li a:hover{
    color: var(--accent--color);
}
.site-map > ul li i {
    top: -2px;
    font-size: 10px;
    line-height: 12px;
    color: #92a7d3;
    padding-right: 10px;
    position: relative;
}
.site-map > ul li:last-child{
    margin-bottom: 0;
}
.newsletter {
    position: relative;
    margin-bottom: 30px;
}
.newsletter input{
    border: none;
    width: 100%;
    font-size: 14px;
    line-height: 14px;
    border-radius: 8px;
    color: var(--text--color);
    padding: 19px 65px 20px 25px;
    border: 1px solid transparent;
    background: var(--white--color);
}
.newsletter input:hover{
    border: 1px solid var(--accent--color);
}
.newsletter input:focus,
.newsletter button:focus{
    outline: none;
}
.newsletter input::placeholder{
    font-size: 14px;
    line-height: 14px;
    color: var(--text--color);
}
.newsletter button{
    top: 50%;
    right: 8px;
    width: 48px;
    height: 44px;
    border: none;
    display: flex;
    cursor: pointer;
    position: absolute;
    border-radius: 8px;
    align-items: center;
    justify-content: center;
    color: var(--black--color);
    transform: translateY(-50%);
    background: var(--accent--color);
}
.newsletter button:hover{
    color: var(--white--color);
    background: var(--secondary--color);
}
.footer-item .team-social ul {
    justify-content: flex-start;
}
.footer-item .team-social ul li a i{
    width: 46px;
    height: 46px;
    background: #122f6f;
}
.footer-item .team-social ul li a i:hover{
    background: var(--accent--color);
}
.copyright{
    padding: 24px 0;
    background: #07225b;
}
.copyright span{
    font-size: 12px;
    line-height: 12px;
    color: #8197c7;
}
/* FOOTER SECTION */
/* BACK TO TOP BUTTON */
#back-to-top-btn:focus{
    outline: none;
}
#back-to-top-btn {
    display: none;
    position: fixed;
    bottom: 60px;
    right: 60px;
    z-index: 99;
    font-size: 18px;
    border: none;
    background-color: #971b15;
    color: white;
    cursor: pointer;
    border-radius: 5px;
    width: 62px;
    height: 62px;
    -webkit-animation: spineer 2s infinite;
    animation: spineer 2s infinite;
}
#back-to-top-btn::after {    
    font-size: 18px;
    font-weight: 600;
    content: "\f062";
    line-height: 50px;
    color: var(--white-color);
    font-family: "Font Awesome 5 free";
}
@-webkit-keyframes spineer {
    from {
     box-shadow: 0 0 0 0 rgba(44, 162, 252, .99)
    }
     to {
      box-shadow: 0 0 0 30px rgba(44, 162, 252, .01)
     }
    }    
    @keyframes spineer {
    from {
     box-shadow: 0 0 0 0 rgba(44, 162, 252, .99)
    }
    to {
     box-shadow: 0 0 0 30px rgba(44, 162, 252, .01)
    }
}
/* BACK TO TOP BUTTON */
/* LOADER SECTION */
.loader-mask {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: fixed;
    z-index: 99999;
    background-color: var;
}
.loader {
    top: 50%;
    left: 50%;
    width: 50px;
    height: 50px;
    font-size: 0;
    position: absolute;
    text-indent: -9999em;
    display: inline-block;
    margin: -25px 0 0 -25px;
    color:var(--primary--color);
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
}
.loader-mask {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99999;
    position: fixed;
    background-color: #fff;
}
.lead{
  font-size:13px;
}
.loader div {
    top: 0;
    left: 0;
    opacity: .5;
    float: none;
    width: 50px;
    height: 50px;
    position: absolute;
    border-radius: 50%;
    display: inline-block;
    background-color:var(--secondary--color);
    -webkit-animation: ballPulseDouble 2s ease-in-out infinite;
    animation: ballPulseDouble 2s ease-in-out infinite;
}
.loader div:last-child {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

@-webkit-keyframes ballPulseDouble {
    0%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes ballPulseDouble {
    0%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
/* LOADER SECTION */
/* SUB BANNER */
.sub-banner {
    position: relative;
    padding: 124px 0 210px;
    padding: 124px 0 145px;
    background: url(../images/sub-banner-img.png) no-repeat center;
    background-size: cover;
}
.sub-banner .container{
    z-index: 1;
    position: relative;
}
.sub-banner::before{
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    /* background: rgb(0 0 0 / 50%); */
    background: url(../images/banner-leftshade.png) no-repeat;
}
/* .sub-banner::after{
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: url(../images/wave-img2.png) no-repeat;
    background-size: cover !important;
} */

.sub-banner .banner-wave{
    position: relative;
    bottom: -140px;
}
.sub-banner .waves {
    position:relative;
    width: 100%;
    height:15vh;
    margin-bottom:-7px; /*Fix for safari gap*/
    min-height:100px;
    max-height:150px;
}  
.sub-banner .content {
    position:relative;
    height:20vh;
    text-align:center;
    background-color: white;
}



.sub-banner-title *{
    color: var(--white--color);
}
.breadcrumb {
    border-radius: 24px;
    display: inline-block;
    background: transparent;
    padding: 10px 31px 11px 32px;
    border: 1px solid rgb(255 255 255 / 40%);
}
.breadcrumb-item{
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    display: inline-block;
    text-transform: uppercase;
}
.breadcrumb-item a:hover{
    text-decoration: none;
    color: var(--secondary--color);
}
.breadcrumb-item.active{
    color: var(--white--color);
}
.breadcrumb-item+.breadcrumb-item::before {
    content: "-";
    padding-right: .5rem;
    padding-left: .5rem;
    color: var(--white--color);
}
.sub-banner-title{
    width: 47%;
}
.sub-banner-title h1{
    font-size: 66px;
    line-height: 66px;
    margin-bottom: 20px;
}
.sub-banner-title p {
    font-size: 16px;
    font-weight: 500;
    line-height: 28px;
    margin-bottom: 37px;
}
/* SUB BANNER */
/* SERVICES PAGE STYLING */
/* =====================================================
   MAIN SERVICES – FULL REPLACEMENT CSS
   ===================================================== */

/* Section spacing (optional if already handled globally) */
.main-services-con {
    padding: 60px 0;
}

/* =====================================================
   GRID LAYOUT
   ===================================================== */

.main-services-box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

/* =====================================================
   SERVICE CARD
   ===================================================== */

.main-services-item {
    position: relative;
    overflow: hidden;
    padding: 42px 36px;
    border-radius: 22px;

    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;

    background: linear-gradient(
        180deg,
        #ffffff,
        #f7fbfe
    );

    box-shadow:
        0 18px 55px rgba(15, 88, 122, 0.12),
        inset 0 0 0 1px rgba(15, 88, 122, 0.05);

    transition: all 0.5s cubic-bezier(.4,0,.2,1);
    transform-style: preserve-3d;

    animation: serviceFloat 8s ease-in-out infinite;
}

/* Hover Lift */
.main-services-item:hover {
    animation-play-state: paused;
    transform: translateY(-16px) scale(1.045);
    box-shadow:
        0 40px 90px rgba(15, 88, 122, 0.28),
        0 40px 90px rgba(15, 88, 122, 0.28);
}

/* =====================================================
   GRADIENT BORDER (BRAND COLORS)
   ===================================================== */

.main-services-item::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        #0f587a,
        #0f587a,
        #0f587a
    );
    opacity: 0;
    transition: opacity 0.45s ease;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}

.main-services-item:hover::before {
    opacity: 1;
}

/* =====================================================
   BIOTECH LIGHT SWEEP
   ===================================================== */

.main-services-item::after {
    content: "";
    position: absolute;
    top: -140%;
    left: -140%;
    width: 260%;
    height: 260%;
    background:
        radial-gradient(
            circle,
            rgba(213,41,52,0.18),
            rgba(15,88,122,0.18),
            transparent 65%
        );
    opacity: 0;
    transition: 0.7s ease;
}

.main-services-item:hover::after {
    top: 0;
    left: 0;
    opacity: 1;
}

/* =====================================================
   ICON WRAPPER
   ===================================================== */

.main-services-item figure {
    position: relative;
    width: 92px;
    height: 92px;
    margin-bottom: 24px;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        radial-gradient(circle at top, #ffffff, #eef6fb);

    box-shadow:
        0 16px 40px rgba(15,88,122,0.25);

    transition: all 0.45s ease;
}

/* Icon Image */
.main-services-item figure img {
    width: 46px;
    transition: transform 0.5s ease;
}

/* Hover Motion */
.main-services-item:hover figure {
    transform: scale(1.15) rotate(8deg);
    box-shadow:
        0 16px 40px rgba(15,88,122,0.25);
}

/* =====================================================
   ICON GLOW RING
   ===================================================== */

.main-services-item figure::after {
    content: "";
    position: absolute;
    inset: -12px;
    border-radius: 50%;
    background:
        radial-gradient(
            circle,
            rgba(15,88,122,0.35),
            rgba(15,88,122,0.35),
            /* transparent 70% */
        );
    opacity: 0;
    filter: blur(10px);
    transition: opacity 0.45s ease;
}

.main-services-item:hover figure::after {
    opacity: 1;
}

/* =====================================================
   TITLE
   ===================================================== */

.main-services-item h3 {
    position: relative;
    font-size: 22px;
    margin-bottom: 14px;
    font-weight: 700;
    color: #0f587a;
}

/* Animated underline */
.main-services-item h3::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -9px;
    width: 0;
    height: 3px;
    border-radius: 10px;
    background: linear-gradient(
        90deg,
        #0f587a,
        #d52934
    );
    transform: translateX(-50%);
    transition: width 0.45s ease;
}

.main-services-item:hover h3::after {
    width: 70px;
}

/* =====================================================
   DESCRIPTION
   ===================================================== */

.main-services-item p {
    font-size: 15px;
    line-height: 1.75;
    color: #555;
}

/* =====================================================
   COIN FLIP ICON (REFINED)
   ===================================================== */

.main-services-item figure {
    perspective: 1200px;
}

.main-services-item figure img {
    backface-visibility: hidden;
    transform-style: preserve-3d;
}

/* Trigger flip */
.main-services-item:hover figure img {
    animation: coinFlip 0.45s ease-in-out forwards;
}

@keyframes coinFlip {
    0%   { transform: rotateY(0deg); }
    40%  { transform: rotateY(120deg); }
    70%  { transform: rotateY(240deg); }
    100% { transform: rotateY(360deg); }
}

/* =====================================================
   IDLE FLOAT (PREMIUM)
   ===================================================== */

@keyframes serviceFloat {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 991px) {
    .main-services-box {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .main-services-box {
        grid-template-columns: 1fr;
    }

    .main-services-item {
        padding: 36px 26px;
        animation: none;
        transform: none;
    }

    .main-services-item:hover figure img {
        animation: none;
    }
}


/* SERVICES PAGE STYLING */
/* ABOUT PAGE STYLING */
.help-con{
    position: relative;
    background: url(../images/help-bg-img.jpg) no-repeat center;
    background-size: cover;
    /* background-attachment: fixed; */
}
.help-con .container{
    z-index: 1;
    position: relative;
}
.help-title *{
    color: var(--white--color);
}
.help-con:after {
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgb(0 0 0 / 50%);
}
.help-title {
    width: 70%;
    margin: 0 auto;
}
.help-title span{
    font-weight: 500;
    margin-bottom: 10px;
}
.help-title h2{
    margin-bottom: 43px;
}
.about-static-con{
    padding-bottom: 180px;
    background: var(--grey--color);
}
.about-static-content span{
    font-weight: 500;
    margin-bottom: 10px;
    color: var(--secondary--color);
}
.about-static-content h2{
    margin-bottom: 25px;
    color: var(--primary--color);
}
.about-static-content .generic-btn a {
    padding: 22px 36px 22px 37px;
}
.about-static-content p {
    margin-bottom: 41px;
    padding-right: 10px;
}
.about-static-box {
    gap: 30px;
    display: grid;
    align-items: baseline;
    justify-content: space-between;
    grid-template-columns: 44% 48.65%;
}
.about-static .static-box {
    grid-template-columns: 47.24% 47.24%;
}
.about-static .staic-value {
    font-size: 44px;
    line-height: 44px;
    margin-bottom: 19px;
}
.staic-sign {
    top: -13px;
    font-size: 28px;
    font-weight: 500;
    position: relative;
    color: var(--secondary--color);
}
.about-static .static-box-item small {
    font-size: 16px;
    line-height: 16px;
}
.about-static-box .static-box .static-box-item:first-child{
    top: 40px;
    position: relative;
}
.about-static-box .static-box .static-box-item:nth-child(3){
    top: 40px;
    position: relative;
}
/* ABOUT PAGE STYLING */
/* INDEX 2 PAGE STYLING */
.top-bar1-con{
    background: var(--primary--color);
}
.top-bar1-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.top-bar-info{
    gap: 33px;
    display: flex;
    align-items: center;
}
.top-bar-txt span{
    font-size: 12px;
    font-weight: 500;
    line-height: 12px;
    color: var(--white--color);
}
.top-bar-txt span a{
    text-decoration: none;
    color: var(--accent--color);
}
.tel-num{
    display: flex;
    font-size: 14px;
    line-height: 14px;
    align-items: center;
}
.tel-num img{
    padding-right: 11px;
}
.tel-num span{
    font-weight: 500;
    color: #92a7d3;
    padding-right: 7px;
}
.tel-num a{
    font-weight: 600;
    text-decoration: none;
    color: var(--white--color);
}
.top-bar-info .quote-btn a {
    border-radius: 0;
    padding: 16px 25px;
}
.top-bar1-con .tel-num a:hover{
    color: var(--accent--color);
}
.top-bar-info .quote-btn a:hover {
    transform: none;
}
.home2-header .header-btn {
    margin-left: 0 !important;
}
.home2-header{
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.home2-header .navbar-expand-lg .navbar-nav {
    gap: 65px;
    margin-right: 24px;
    padding-right: 32px;
    border-right: 1px solid var(--text--color);
}
.main-banner2-con{
    padding: 30px 0 0;
    background: url(../images/banner2-bg-img.jpg) no-repeat center;
    background-size: cover;
}
.main-banner2-box {
    gap: 100px;
    display: grid;
    align-items: center;
    grid-template-columns: 58% 47%;
}
.main-banner2-title h1{
    font-size: 80px;
    line-height: 88px;
    margin-bottom: 22px;
    color: var(--primary--color);
}
.main-banner2-title h1 span{
    color: var(--secondary--color);
}
.main-banner2-title p{
    font-size: 20px;
    font-weight: 500;
    line-height: 33px;
    margin-bottom: 26px;
    color: var(--primary--color);
}
.main-banner2-img{
    position: relative;
}
.main-banner2-img > figure{
    position: relative;
}
.main-banner2-img > figure::after{
    left: 50%;
    top: 109px;
    content: "";
    width: 511px;
    height: 511px;
    border-radius: 50%;
    position: absolute;
    transform: translateX(-50%);
    background: var(--accent--color);
}
.main-banner2-img figure img{
    z-index: 1;
    position: relative;
}
.main-banner2-img .about-icon figure {
    top: 145px;
    right: -5px;
}
.main-banner2-title ul{
    display: none;
}
.main-banner2-con ul {
    position: absolute;
    left: 140px;
    top: 476px;
}
.main-banner2-con ul li {
    margin: 16px 0;
    transition: all 0.3s ease-in-out;
}
.main-banner2-con ul li:first-child {
    margin-top: 0;
}
.main-banner2-con ul li:last-child {
    margin-bottom: 0;
}
.main-banner2-con ul li i {
    font-size: 16px;
    width: 46px;
    height: 46px;
    line-height: 46px;
    border-radius: 100px;
    text-align: center;
    color: var(--primary--color);
    background-color: var(--white--color);
    border: 1px solid var(--white--color);
    transition: all 0.3s ease-in-out;
}
.main-banner2-con ul li a:hover i {
    color: var(--white--color);
    background-color: var(--secondary--color);
    border: 1px solid var(--secondary--color);
}
.about-text-box{
    display: grid;
    grid-template-columns: 50% 50%;
}
.about-text-img {
    background: url(../images/home2-about-img.jpg) no-repeat center;
    background-size: cover;
}
.about-text {
    padding: 110px 88px 118px;
    background: var(--primary--color) url(../images/line-img.png) no-repeat center;
}
.about-text *{
    color: var(--white--color);
}
.about-inner-text {
    width: 64%;
}
.about-text span{
    font-weight: 500;
    margin-bottom: 10px;
}
.about-text h2{
    margin-bottom: 29px;
}
.about-text p{
    margin-bottom: 26px;
}
.about-inner-text ul{
    margin-bottom: 47px;
}
.about-inner-text ul li{
    display: flex;
}
.about-inner-text ul li i{
    font-size: 16px;
    line-height: 16px;
    padding-right: 17px;
    color: var(--accent--color);
}
.about-inner-text ul li{
    font-size: 16px;
    font-weight: 600;
    line-height: 16px;
    margin-bottom: 14px;
}
.about-inner-text ul li:last-child{
    margin-bottom: 0;
}
.mission-box{
    gap: 26px;
    width: 98.2%;
    display: flex;
    padding: 40px 45px;
    align-items: center;
    border-radius: 20px;
    background: var(--secondary--color);
}
.mission-box h3{
    font-size: 24px;
    font-weight: 700;
    line-height: 38px;
}
/* .pricingpage-con{
    padding-top: 60px !important;
} */
.pricing-box {
    gap: 30px;
    display: grid;
    grid-template-columns: 31.532% 31.532% 31.532%;
}
.pricing-box-item{
    border-radius: 15px;
    padding: 40px 30px 81px;
    background: var(--white--color);
    box-shadow: 2px 2px 67px rgb(44 162 252 / 7%);
}
.pricing-box-item figure{
    margin-bottom: 30px;
}
.pricing-box-item h3{
    margin-bottom:11px;
    color: var(--primary--color);
}
.pricing-box-item > span{
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 20px;
}
.plan-value{
    font-size: 46px;
    font-weight: 700;
    line-height: 46px;
    margin-bottom: 22px;
    color: var(--secondary--color);
}
.plan-value span {
    top: -14px;
    font-size: 26px;
    font-weight: 500;
    position: relative;
    margin-right: 6px;
    color: var(--secondary--color);
}
.plan-value small{
    font-size: 16px;
    line-height: 16px;
    color: var(--text--color);
}
.pricing-box-item ul {
    text-align: left;
    margin: 0 auto 43px;
    display: inline-block;
}
.pricing-box-item li{
    display: flex;
    font-size: 16px;
    font-weight: 600;
    line-height: 16px;
    margin-bottom: 13px;
    color: var(--primary--color);
}
.pricing-box-item li i{
    padding-right: 10px;
    color: var(--primary--color);
}
.pricing-box-item li:last-child{
    margin-bottom: 0;
}
.pricing-box-item .generic-btn a {
    padding: 18px 32px 18px 33px;
    color: var(--black--color);
}
.pricing-box-item .generic-btn a i{
    color: var(--black--color);
}
.pricing-box-item .generic-btn a:hover {
    background-color: var(--white--color);
}
.pricing-box-item:hover{
    background: var(--secondary--color);
}
.pricing-box-item:hover *{
    color: var(--white--color);
}
.pricing-box-item:hover figure img{
    filter: brightness(0) invert(1);
}
.slider-con .generic-title {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.slider-con .owl-nav{
    display: none;
}
.owl-carousel .owl-item img{
    width: auto;
}
.testimonials-box .item {
    border-radius: 15px;
    padding: 50px 25px 52px 35px;
    background: var(--white--color);
    box-shadow: 2px 2px 67px rgb(44 162 252 / 7%);
}
.testimonials-content > figure{
    margin-bottom: 18px;
}
.testimonials-content p{
    margin-bottom: 20px;
}
.client-info > figure  img{
    width: 54px;
    height: 54px;
    border-radius: 50%;
}
.client-info {
    gap: 15px;
    display: flex;
}
.client-info-txt figure{
    margin-bottom:14px;
}
.client-info-txt h6{
    margin-bottom: 7px;
    color: var(--primary--color);
}
.client-info-txt span{
    font-size: 14px;
    line-height: 14px;
}
.testimonials-box .owl-item.active {
    opacity: 1;
}
.testimonials-box .owl-item {
    opacity: 0;
    transition: opacity 100ms;
}
.testimonials-box .owl-stage-outer {
    overflow: visible;
    margin-bottom: 50px;
}
.slider-con {
    overflow: hidden;
}
/* .faqpage-con{
    padding-top: 60px !important;
} */
.faq-banner h1,
.faqpage-con span{
    text-transform: uppercase;
}
.faq-con .card:has(.btn-link) {
    border: 1px solid var(--secondary--color);
}
.faq-con .card:has(.collapsed) {
    border: 1px solid transparent;
}
.faq-con .generic-title{
    width: 100%;
}
.faq-con{
    background: var(--grey--color);
}
/* .faq-box {
    gap: 30px;
    display: grid;
    grid-template-columns: 48.65% 48.65%;
} */
.faq-box .card-header .btn-link {
    width: 100%;
    font-size: 18px;
    font-weight: 700;
    text-align: left;
    line-height: 18px;
    position: relative;
    text-decoration: none;
    padding: 20px 40px 20px 30px;
    color: var(--primary--color);
    white-space: normal;
    box-shadow: none;
}
.card {
    border: none;
    border-radius: 15px;
    background: var(--white--color);
    box-shadow: 2px 2px 67px rgb(44 162 252 / 7%);
}
.card-header {
    border: none;
    border-radius: 0 !important;
    background: transparent;
}
#accordion .card,#accordion2 .card{
    margin-bottom: 30px;
}
#accordion .card:last-child,#accordion2 .card:last-child{
    margin-bottom: 0;
}
.faq-box .card-body {
    padding: 0 30px 30px;
}
.faq-box .card-body p{
    margin-bottom: 0;
}
.faq-box .card-header .btn-link:after {
    top: 19px;
    right: 20px;
    content: "\f061";
    position: absolute;
    color: var(--primary--color);
    font-family: "Font Awesome 6 free";
}
.faq-box .card-header .btn-link:not(.collapsed):after{
    transform: rotate(90deg);
}
/* INDEX 2 PAGE STYLING */
/* INDEX 3 PAGE STYLING */
.top-bar2-con{
    padding: 10px 6.7%;
    background: var(--primary--color);
}
.top-bar2-info ul {
    gap: 27px;
    display: flex;
}
.top-bar2-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.top-bar2-info ul li i{
    font-size: 16px;
    line-height: 16px;
    padding-right: 11px;
    color: var(--secondary--color);
}
.top-bar2-info ul li{
    display: flex;
    font-size: 12px;
    line-height: 12px;
    align-items: center;
    color: var(--white--color);
}
.top-bar-social span{
    font-size: 12px;
    line-height: 12px;
    padding-right: 24px;
    color: var(--white--color);
}
.top-bar-social{
    display: flex;
    align-items: center;
}
.top-bar-social ul {
    gap: 22px;
    display: flex;
}
.top-bar-social ul li a{
    font-size: 14px;
    line-height: 14px;
    text-decoration: none;
    color: var(--white--color);
    transition: all 0.3s ease-in-out;
}
.top-bar-social ul li a:hover{
    color: var(--accent--color);
}
.main-banner3-con{
    position: relative;
    padding: 212px 0 330px;
    background: url(../images/banner3-bg-img.jpg) no-repeat center;
    background-size: cover;
    /* background-attachment: fixed; */
}
.main-banner3-con::after{
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgb(0 0 0 / 50%);
}
.main-banner3-con::before{
    left: 0;
    z-index: 1;
    width: 100%;
    bottom: -100px;
    content: "";
    height: 156px;
    position: absolute;
    background: url(../images/wave-img3.png) no-repeat center;
    background-size: cover;
}
.main-banner3-con .container{
    z-index: 1;
    position: relative;
}
.main-banner3-title *{
    color: var(--white--color);
}
.main-banner3-title span{
    margin-bottom: 20px;
}
.main-banner3-title span,.main-banner3-title small {
    font-size: 18px;
    font-weight: 500;
    line-height: 18px;
}
.main-banner3-title small{
    color: var(--accent--color);
}
.main-banner3-title h1{
    font-size: 70px;
    line-height: 78px;
    margin-bottom: 20px;
}
.main-banner3-title p{
    font-size: 20px;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 42px;
}
.home3-services {
    margin-top: -137px;
    background: var(--grey--color);
}
.main-services-box{
    z-index: 2;
    position: relative;
}
.home3-about-con{
    background: var(--grey--color);
}
.home3-about-box{
    display: grid;
    align-items: center;
    grid-template-columns: 42.8% 57.21%;
}
.home3-about-img figure img{
    border-radius: 20px;
}
.home3-about-content *{
    color: var(--white--color);
}
.home3-about-content-box{
    border-radius: 20px;
    padding: 80px 72px 76px;
    background: var(--primary--color);
}
.home3-about-content-box span{
    font-size: 16px;
    font-weight: 500;
    line-height: 16px;
    margin-bottom: 15px;
}
.home3-about-content-box h2{
    margin-bottom: 24px;
}
.home3-about-content-box p{
    color: #b8c3dc;
    line-height: 27px;
    margin-bottom: 30px;
    padding-right: 10px;
}
.home3-about-content-box .generic-btn a i {
    padding-left: 20px;
}
.home3-about-content-box .generic-btn a {
    padding: 22px 32px 22px 37px;
}
.home3-pricing-box {
    gap: 30px;
    display: grid;
    justify-content: space-between;
    grid-template-columns: 30% 65.77%;
}
.home3-pricing-box .pricing-box-item {
    border: 1px solid rgb(44 162 252 / 7%);
    box-shadow: none;
    padding: 40px 30px 50px;
}
.home3-pricing-box .owl-carousel .owl-item img {
    filter: brightness(0) invert(1);
}
.home3-pricing-box .owl-dots{
    display: none;
}
.home3-pricing-slider .pricing-box-item figure{
    width: 99px;
    height: 99px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    margin-left: auto;
    margin-right: auto;
    background: var(--secondary--color);
}

.home3-pricing-title span{
    font-weight: 500;
    margin-bottom: 10px;
    color: var(--secondary--color);
}
.home3-pricing-title h2{
    margin-bottom: 27px;
    color: var(--primary--color);
}
.home3-pricing-title p{
    padding-right: 20px;
}
.home3-pricing-box .pricing-box-item:hover figure{
    background: var(--white--color);
}
.home3-pricing-box .pricing-box-item:hover figure img{
    filter: none;
}
.home3-pricing-box .owl-theme .owl-nav {
    margin-top: 0;
    position: absolute;
    left: -52%;
    bottom: 226px;
    display: flex;
    gap: 20px;
}
.home3-pricing-box .owl-carousel .owl-nav button{
    width: 60px;
    height: 60px;
    margin: 0;
    border-radius: 50%;
    color: var(--white--color);
    background: var(--primary--color);
}
.home3-pricing-box .owl-carousel .owl-nav button:hover{
    background: var(--secondary--color);
}
.home3-static-con{
    background: var(--grey--color);
}
.home3-slider-con .client-info {
    gap: 0;
    display: flex;
    flex-direction: column;
}
.home3-slider-con .item {
    gap: 25px;
    display: flex;
    /* padding: 44px 45px;
    border-bottom: 2px solid var(--secondary--color); */
}
/* .home3-slider-con .testimonials-content > figure{
    margin-bottom: 0;
}
.home3-slider-con .testimonials-content > figure img {
    width: 88px;
    height: 88px;
    border-radius: 50%;
} */
/* .home3-slider-con .testimonials-content p {
    line-height: 25px;
    margin-bottom: 13px;
}
.home3-slider-con .client-info-txt figure {
    margin-bottom: 18px;
} */
.testimonials-box .owl-carousel .owl-stage{
    display: flex;
}
.testimonials-box  .owl-carousel .owl-item{
    display: flex;
    flex: 1 0 auto;
}
.home3-slider-con .testimonials-box .item {
    border-radius: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
}
.home3-slider-con .testimonial-box {
    padding: 46px 50px 46px 38px;
    border-radius: 15px;
    background-color: var(--white--color);
    box-shadow: 0 0 0 1px rgba(44, 162, 252, 0.07) inset, 0 -2px 0 0 var(--secondary--color) inset;
}
.home3-slider-con .testimonial-box .testimonial-personimage {
    width: 19%;
    float: left;
}
.home3-slider-con .testimonial-box .testimonial-personimage img {
    border-radius: 100%;
}
.home3-slider-con .testimonial-box .content {
    width: 81%;
    padding-left: 25px;
    display: inline-block;
}
.home3-slider-con .testimonial-box p {
    line-height: 24px;
    margin-bottom: 10px;
}
.home3-slider-con .testimonial-box ul {
    margin-bottom: 10px;
}
.home3-slider-con .testimonial-box ul li {
    display: inline-block;
}
.home3-slider-con .testimonial-box ul li i {
    font-size: 14px;
    line-height: 14px;
    color: var(--dark-orange);
}
.home3-slider-con .testimonial-box .name {
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    display: block;
    color: var(--primary--color);
}
.home3-slider-con .testimonial-box .review {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    color: var(--text--color);
}
/* INDEX 3 PAGE STYLING */
/* FAQ PAGE STYLING */
.faq-banner{
    background-color: var(--grey--color);
    /* background: url(../images/wave-img4.png) no-repeat; */
}

/* Team Page */

.team-banner {
    background-color: var(--grey--color);
    /* background: url(../images/wave-img4.png) no-repeat; */
}
/* .teampage-con {
    padding-top: 60px !important;
} */

/* Review Page */

/* .reviewpage-con {
    padding-top: 60px !important;
} */

/* Contact Page */

.contact-banner {
    background-color: var(--grey--color);
    /* background: url(../images/wave-img4.png) no-repeat; */
}

/* Contact info */

/* =====================================================
   CONTACT SECTION – BIOTECH PREMIUM STYLE
   ===================================================== */

.contact-con {
    position: relative;
    padding: 120px 0 140px;
    background: linear-gradient(
        135deg,
        rgba(15,88,122,0.08),
        rgba(213,41,52,0.06),
        #f8fbfd
    );
    overflow: hidden;
}

/* Floating molecular lights */
.contact-con::before,
.contact-con::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    filter: blur(120px);
    opacity: 0.35;
    animation: bioFloat 14s ease-in-out infinite alternate;
}

.contact-con::before {
    background: #0f587a;
    top: -120px;
    left: -120px;
}

.contact-con::after {
    background: #d52934;
    bottom: -120px;
    right: -120px;
    animation-delay: 6s;
}

@keyframes bioFloat {
    from { transform: translateY(0); }
    to { transform: translateY(-80px); }
}

.contact-con .container {
    position: relative;
    z-index: 2;
}

/* =====================================================
   HEADINGS
   ===================================================== */

.contact-con .contact_info h6 {
    font-size: 14px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #d52934;
    margin-bottom: 14px;
}

.contact-con .contact_info h2 {
    font-size: 36px;
    margin-bottom: 45px;
    color: #0f587a;
}

/* =====================================================
   CONTACT INFO CARDS
   ===================================================== */

.contact-con .contact-box {
    position: relative;
    width: 90%;
    padding: 42px 40px;
    margin-bottom: 30px;

    border-radius: 20px;
    background: rgba(255,255,255,0.75);
    backdrop-filter: blur(14px);

    box-shadow: 0 25px 70px rgba(15,88,122,0.15);
    transition: all 0.45s ease;
}

.contact-con .contact-box:hover {
    transform: translateY(-12px);
    box-shadow: 0 40px 95px rgba(213,41,52,0.35);
}

/* Gradient border */
.contact-con .contact-box::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: 20px;
    background: linear-gradient(135deg, #0f587a, #d52934);
    opacity: 0;
    transition: opacity 0.4s ease;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}

.contact-con .contact-box:hover::before {
    opacity: 1;
}

/* =====================================================
   ICON
   ===================================================== */

.contact-con .contact-box .box-image {
    float: left;
    width: 18%;
}

.contact-con .contact-box figure {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffffff, #ffffff);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;
}

.contact-con .contact-box:hover figure {
    transform: rotate(12deg) scale(1.12);
    box-shadow: 0 15px 40px rgba(15,88,122,0.45);
}

/* =====================================================
   CONTENT
   ===================================================== */

.contact-con .contact-box .box-content {
    width: 82%;
    display: inline-block;
    padding-left: 28px;
}

.contact-con .contact-box h4 {
    font-size: 18px;
    margin-bottom: 10px;
    color: #bb656b;
}

.contact-con .contact-box p,
.contact-con .contact-box a {
    font-size: 15px;
    color: #555;
}

.contact-con .contact-box a:hover {
    color: #d52934;
}

/* =====================================================
   FORM CONTAINER
   ===================================================== */

.contact_form {
    padding: 60px 55px;
    border-radius: 24px;

    background: rgba(255,255,255,0.85);
    backdrop-filter: blur(16px);

    box-shadow: 0 40px 120px rgba(15,88,122,0.2);
}

/* =====================================================
   INPUTS
   ===================================================== */

.contact-con input,
.contact-con textarea {
    width: 100%;
    padding: 16px 26px;
    font-size: 14px;

    border-radius: 30px;
    border: 1px solid rgba(15,88,122,0.15);
    background: #ffffff;

    transition: all 0.35s ease;
}

.contact-con textarea {
    height: 200px;
    border-radius: 20px;
    resize: none;
}

.contact-con input:focus,
.contact-con textarea:focus {
    border-color: #d52934;
    box-shadow: 0 0 0 4px rgba(213,41,52,0.15);
}

/* =====================================================
   SUBMIT BUTTON
   ===================================================== */

.contact-con .submit_now {
    padding: 20px 45px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;

    background: linear-gradient(135deg, #0f587a, #0f587a);
    color: #ffffff !important;

    box-shadow: 0 20px 60px rgba(213,41,52,0.45);
    transition: all 0.4s ease;
}

.contact-con .submit_now i {
    margin-left: 12px;
    transition: transform 0.35s ease;
}

.contact-con .submit_now:hover {
    transform: translateY(-6px) scale(1.05);
    box-shadow: 0 35px 90px rgba(15,88,122,0.6);
}

.contact-con .submit_now:hover i {
    transform: translateX(6px);
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 991px) {
    .contact_form {
        padding: 45px 35px;
    }

    .contact-con .contact-box {
        width: 100%;
    }
}

@media (max-width: 575px) {
    .contact-con {
        padding: 80px 0;
    }

    .contact-con .contact_info h2 {
        font-size: 28px;
    }

    .contact_form {
        padding: 35px 25px;
    }
}

/* Map */

.map-con {
    padding: 120px 0;
    overflow: hidden;
    background: linear-gradient(
        135deg,
        rgba(15,88,122,0.08),
        rgba(213,41,52,0.08),
        #f8fbfd
    );
}
.map-con iframe {
    width: 100%;
    height: 590px;
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}
.map-con iframe:hover {
    filter: none;
}

/* Service Detail */

.service_detail {
    padding: 120px 0;
}
.service_detail .main-box {
    position: relative;
}
.service_detail .main-box .image {
    margin-bottom: 30px;
}
.service_detail .main-box .image img {
    width: 100%;
    border-radius: 20px;
}
.service_detail .main-box h3 {
    font-size: 24px;
    line-height: 30px;
    color: var(--primary--color);
}
.service_detail .main-box p {
    margin-bottom: 10px;
}
.service_detail .main-box .text2 {
    margin-bottom: 20px;
}
.service_detail .main-box .list {
    margin-bottom: 20px;
}
.service_detail .main-box .list li {
    margin-bottom: 6px;
    padding-left: 28px;
    line-height: 20px;
    font-weight: 500;
    position: relative;
    color: var(--e-global-color-text);
}
.service_detail .main-box .list li i {
    font-size: 9px;
    height: 16px;
    width: 16px;
    line-height: 16px;
    top: 2PX;
    left: 0;
    border-radius: 100px;
    position: absolute;
    text-align: center;
    display: inline-block;
    background-color: var(--secondary--color);
    color: var(--white--color);
}

/* Service */

.servicesdetail-con {
    /* padding-bottom: 200px; */
    background: var(--grey--color);
}

/* 404 Page */

.error_page {
    height: 100vh;
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    justify-content: center;
    position: relative;
    background-color: var(--grey--color);
}
.error_page .error_content h1 {
    font-size: 140px;
    line-height: 140px;
    margin-bottom: 25px;
    color: var(--primary--color);
}
.error_page .error_content .text {
    font-size: 46px;
    line-height: 50px;
    font-weight: 700;
    margin-bottom: 20px;
    color: var(--primary--color);
}
.error_page .error_content .text2 {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    margin-bottom: 30px;
    color: var(--text--color);
}
.error_page .error_content .back_home {
    font-size: 20px;
    line-height: 20px;
    font-weight: 500;
    padding: 18px 35px 20px;
    text-align: center;
    border-radius: 30px;
    display: inline-block;
    position: relative;
    color: var(--black--color);
    text-decoration: none;
    background-color: var(--accent--color);
    transition: all 0.3s ease-in-out;
}
.error_page .error_content .back_home:hover {
    color: var(--white--color);
    background-color: var(--secondary--color);
}
.error_page .error_content .back_home i {
    font-size: 12px;
    margin-left: 14px;
    transition: all 0.3s ease-in-out;
    color: var(--black--color);
}
.error_page .error_content .back_home:hover i{
    color: var(--white--color);
}

/* Coming Soon */

.comingsoon_outer {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    min-height: 100vh;
    text-align: center;
    position: relative;
    background-color: var(--grey--color);
}
.comingsoon_outer .logo_outer {
    margin-bottom: 90px;
}
.comingsoon_outer .comingsoon_section {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
}
.comingsoon_outer .sub_banner_content h1 {
    font-size: 80px;
    line-height: 90px;
    margin-bottom: 30px;
    color: var(--primary--color);
}
.comingsoon_outer .sub_banner_content p {
    font-weight: 500;
    margin-bottom: 12px;
    color: var(--text--color);
}
.comingsoon_outer .sub_banner_content form {
    display: flex;
    align-items: center;
    justify-content: center;
}
.comingsoon_outer .sub_banner_content .form-group {
    margin-bottom: 30px;
}
.comingsoon_outer .sub_banner_content input {
    font-size: 16px;
    line-height: 16px;
    font-weight: 400;
    padding: 14px 16px 16px;
    width: 540px;
    position: relative;
    color: var(--text--color);
    background-color: var(--white--color);
    border: 1px solid transparent;
    border-radius: 30px;
    overflow: visible;
    outline: none;
}
.comingsoon_outer .sub_banner_content button {
    font-size: 18px;
    line-height: 18px;
    font-weight: 400;
    padding: 15px 30px 18px;
    height: 100%;
    top: 0;
    right: -5px;
    border-radius: 0 30px 30px 0;
    position: absolute;
    color: var(--black--color);
    background-color: var(--accent--color);
    border: 1px solid var(--accent--color);
    overflow: visible;
    outline: none;
    transition: all 0.3s ease-in-out;
}
.comingsoon_outer .sub_banner_content input:focus {
    border: 1px solid var(--accent--color);
}
.comingsoon_outer .sub_banner_content button:hover {
    color: var(--white--color);
    background-color: var(--secondary--color);
    border: 1px solid var(--secondary--color);
}
.comingsoon_outer .sub_banner_content .social-icon li {
    display: inline-block;
    margin: 0 4px;
}
.comingsoon_outer .sub_banner_content .social-icon li:first-child {
    margin-left: 0;
}
.comingsoon_outer .sub_banner_content .social-icon li:last-child {
    margin-right: 0;
}
.comingsoon_outer .sub_banner_content .social-icon a {
    transition: all 0.3s ease-in-out;
}
.comingsoon_outer .sub_banner_content .social-icon i {
    font-size: 16px;
    height: 46px;
    width: 46px;
    line-height: 46px;
    border-radius: 100px;
    text-align: center;
    color: var(--white--color);
    background-color: var(--primary--color);
    transition: all 0.3s ease-in-out;
}
.comingsoon_outer .sub_banner_content .social-icon a:hover i {
    color: var(--black--color);
    background-color: var(--accent--color);
}

/* SEARCH FORM */

#search {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    -webkit-transform: translate(0px, -100%) scale(0, 0);
    -moz-transform: translate(0px, -100%) scale(0, 0);
    -ms-transform: translate(0px, -100%) scale(0, 0);
    -o-transform: translate(0px, -100%) scale(0, 0);
    transform: translate(0px, -100%) scale(0, 0);
    opacity: 0;
    display: none;
}
#search.open {
    -webkit-transform: translate(0px, 0px) scale(1, 1);
    -moz-transform: translate(0px, 0px) scale(1, 1);
    -ms-transform: translate(0px, 0px) scale(1, 1);
    -o-transform: translate(0px, 0px) scale(1, 1);
    transform: translate(0px, 0px) scale(1, 1);
    opacity: 1;
    z-index: 106;
    display: block;
}
#search input[type="search"] {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -51px;
    width: 60%;
    margin-left: 20%;
    color: rgb(255, 255, 255);
    background-color: transparent;
    border-top: none;
    border-bottom: 2px solid rgba(255, 255, 255, .5);
    border-left: 0px solid transparent;
    border-right: 0px solid transparent;
    font-size: 40px;
    font-weight: 400;
    text-align: center;
    outline: none;
    padding: 10px;
}
#search input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    height: 20px;
    width: 20px;
    content: "\f00d";
    background-image: url('../images/close.html');
}
#search .close {
    position: fixed;
    top: 15px;
    right: 15px;
    opacity: 1;
    font-size: 27px;
    color: #fff;
}
#search .close:hover {
    color: var(--accent--color);
    cursor: pointer;
    text-shadow: none;
}
.header-btn .search-box .search-icon {
    font-size: 20px;
    color: var(--black--color);
    transition: all 0.3s ease-in-out;
}
.header-btn .search-box .search-icon:hover {
    color: var(--secondary--color);
}
















/* =====================================================
   BIO HERO SECTION (PHARMA + AQUA)
   ===================================================== */

.bio-hero {
    position: relative;
    padding: 140px 20px 120px;
    text-align: center;
    /* background:
        radial-gradient(circle at 15% 20%, rgba(15,88,122,0.28), transparent 45%),
        radial-gradient(circle at 85% 75%, rgba(213,41,52,0.22), transparent 45%),
        linear-gradient(135deg, #f1f7fb, #ffffff, #fdf1f2); */
    overflow: hidden;
}

/* Floating bio particles */
.bio-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(15,88,122,0.18) 2px, transparent 3px),
        radial-gradient(circle at 70% 60%, rgba(213,41,52,0.18) 2px, transparent 3px);
    background-size: 160px 160px;
    animation: bioParticles 30s linear infinite;
    z-index: 0;
}

@keyframes bioParticles {
    from { transform: translateY(0); }
    to { transform: translateY(-120px); }
}

.bio-hero-inner {
    position: relative;
    max-width: 980px;
    margin: auto;
    z-index: 2;
}

/* Tag */
.bio-tag {
    position: relative;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: 40px;
    color: #0f587a;
    background: rgba(15,88,122,0.15);
    overflow: hidden;
}

/* Water shimmer */
.bio-tag::after {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 120%;
    height: 100%;
    background: linear-gradient(
        120deg,
        transparent 30%,
        rgba(255,255,255,0.6),
        transparent 70%
    );
    animation: aquaShimmer 3s ease-in-out infinite;
}

@keyframes aquaShimmer {
    0% { left: -120%; }
    50% { left: 120%; }
    100% { left: 120%; }
}

/* Main Heading */
.bio-hero-title {
    font-size: clamp(32px, 5vw, 60px);
    font-weight: 900;
    line-height: 1.15;
    margin-bottom: 28px;
}

.bio-hero-title span {
    display: block;
    background: linear-gradient(90deg, #0f587a, #0f587a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: textReveal 1.2s ease forwards;
}

.bio-hero-title span:nth-child(2) { animation-delay: 0.2s; }
.bio-hero-title span:nth-child(3) { animation-delay: 0.4s; }

@keyframes textReveal {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Wave divider */
.bio-wave {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin: 22px 0 26px;
}

.bio-wave span {
    width: 14px;
    height: 6px;
    border-radius: 50px;
    background: #0f587a;
    animation: wavePulse 1.6s ease-in-out infinite;
}

.bio-wave span:nth-child(2) {
    background: #d52934;
    animation-delay: 0.2s;
}
.bio-wave span:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes wavePulse {
    0%,100% { transform: scaleX(1); opacity: 0.6; }
    50% { transform: scaleX(1.6); opacity: 1; }
}

/* Description */
.bio-hero-desc {
    max-width: 820px;
    margin: auto;
    font-size: 18px;
    line-height: 1.8;
    color: #444;
    animation: fadeUp 1.4s ease forwards;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===============================
   WATER RIPPLE EFFECT
   =============================== */

.bio-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    /* background:
        repeating-radial-gradient(
            circle at center,
            rgba(15,88,122,0.06) 0px,
            rgba(15,88,122,0.06) 1px,
            transparent 6px,
            transparent 12px
        ); */
    opacity: 0.35;
    animation: rippleMove 22s linear infinite;
    pointer-events: none;
    z-index: 1;
}

@keyframes rippleMove {
    from { background-position: 0 0; }
    to { background-position: 0 -240px; }
}

/* ===============================
   DNA HELIX BACKGROUND
   =============================== */

.dna-helix {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 420px;
    height: 420px;
    transform: translate(-50%, -50%);
    background:
        repeating-linear-gradient(
            45deg,
            rgba(213,41,52,0.08) 0px,
            rgba(213,41,52,0.08) 6px,
            transparent 6px,
            transparent px
        );
    border-radius: 50%;
    filter: blur(1px);
    animation: dnaSpin 60s linear infinite;
    z-index: 0;
}

@keyframes dnaSpin {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(360deg); }
}

@media (max-width: 768px) {
    .dna-helix {
        width: 260px;
        height: 260px;
        opacity: 0.5;
    }
}
/* ===============================
   AQUA FLOATING MOTION
   =============================== */

.bio-hero-inner {
    animation: aquaFloat 9s ease-in-out infinite;
}

@keyframes aquaFloat {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 768px) {
    .bio-hero {
        padding: 100px 16px 90px;
    }

    .bio-hero-desc {
        font-size: 15px;
    }
}


.pharma-hero{
position:relative;
padding:100px 20px;
display:flex;
justify-content:center;
align-items:center;
overflow:hidden;
}

/* Video */

.pharma-hero-video{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
z-index:0;
}

/* Brand overlay */

.pharma-video-overlay{
position:absolute;
inset:0;
background:rgba(15,88,122,.55);
z-index:1;
}

/* Keep content above video */

.pharma-hero-card{
position:relative;
z-index:2;
}


.pharma-hero-card{
position:relative;
border-radius:32px;
padding:70px;
max-width:1050px;
text-align:center;
overflow:visible;

background:
linear-gradient(rgba(178, 197, 206, 0.25), rgba(169, 180, 185, 0.25)),
url("assets/images/pond.jfif") center/cover no-repeat;

box-shadow:0 40px 100px rgba(15,88,122,.25);
animation:pharmaEnter 1s ease;
}


.pharma-hero-card:before{
content:"";
position:absolute;
inset:-2px;
border-radius:32px;
background:#ffffff;
z-index:-1;
}
.pharma-hero-card{
background-size:110%;
animation:
pharmaEnter 1s ease,
pharmaZoom 18s ease-in-out infinite;
}

@keyframes pharmaZoom{
0%,100%{background-size:110%}
50%{background-size:120%}
}

@keyframes pharmaGlow{
to{filter:hue-rotate(360deg)}
}

@keyframes pharmaEnter{
from{opacity:0;transform:translateY(40px)}
to{opacity:1}
}

.pharma-welcome{
    position: relative;
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: 40px;
    color: #d52934;
    background: rgba(15,88,122,0.15);
    overflow: hidden;
}
.pharma-welcome::after{
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 120%;
    height: 100%;
    background: linear-gradient(
        120deg,
        transparent 30%,
        rgba(255,255,255,0.6),
        transparent 70%
    );
    animation: aquaShimmer 3s ease-in-out infinite;
}

@keyframes aquaShimmer {
    0% { left: -120%; }
    50% { left: 120%; }
    100% { left: 120%; }
}
.pharma-title{
font-size:32px;
color:#0f587a;
line-height:1.2;
margin:15px 0;
}

.pharma-title span{display:block}

.pharma-desc{
max-width:760px;
margin:20px auto;
font-size:18px;
line-height:1.8;
color:#444;
}

.pharma-actions{
margin-top:30px;
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.pharma-btn{
padding:14px 32px;
border-radius:40px;
text-decoration:none;
transition:.3s;
font-size:16px;
}

.pharma-primary{
background:#0f587a;
color:white;
box-shadow:0 10px 25px rgba(15,88,122,.4);
}

.pharma-primary:hover{transform:translateY(-3px)}

.pharma-outline{
border:2px solid #0f587a;
color:#0f587a;
}

.pharma-outline:hover{
background:#0f587a;
color:white;
}

.pharma-stats{
margin-top:40px;
display:flex;
justify-content:center;
gap:40px;
flex-wrap:wrap;
}

.pharma-stat{
font-size:28px;
font-weight:700;
color:#0f587a;
}

.pharma-stat small{
display:block;
font-size:13px;
color:#555;
}

/* .pharma-wave{
position:absolute;
bottom:0;
width:200%;
height:220px;
background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%230f587a22' d='M0,192L48,176C96,160,192,128,288,144C384,160,480,224,576,224C672,224,768,160,864,138.7C960,117,1056,139,1152,160C1248,181,1344,203,1392,213.3L1440,224L1440,320Z'%3E%3C/path%3E%3C/svg%3E");
animation:pharmaWave 18s linear infinite;
} */

@keyframes pharmaWave{
to{transform:translateX(-50%)}
}

.pharma-fish{
position:absolute;
font-size:30px;
opacity:.32;
animation:pharmaFish 20s linear infinite;
}

.pharma-f1{top:20%;left:-60px}
.pharma-f2{top:60%;left:-100px;animation-delay:5s}
.pharma-f3{top:30%;left:-70px;animation-delay:8s}
.pharma-f4{top:80%;left:-60px;animation-delay:5s}
.pharma-f5{top:90%;left:-80px;animation-delay:7s}
.pharma-f6{top:10%;left:-90px;animation-delay:9s}

@keyframes pharmaFish{
to{transform:translateX(120vw)}
}

@media(max-width:768px){
.pharma-hero-card{padding:40px 25px}
.pharma-title{font-size:34px}
.pharma-desc{font-size:16px}
}






.pharma-about{
position:relative;
padding:100px 20px;
background: url(../images/pond-numbers-bg.jpg) no-repeat center/cover;
overflow:hidden;
}

/* Overlay */

.pharma-about::before{
content:"";
position:absolute;
inset:0;
background:rgba(0, 14, 22, 0.05); /* brand overlay */
z-index:0;
}

/* Keep content above overlay */

.pharma-about > *{
position:relative;
z-index:1;
}


.pharma-about-inner{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

/* Left text */

.pharma-mini-title{
color:#f4b41a;
font-weight:600;
letter-spacing:1px;
margin-bottom:10px;
}

.pharma-about-title{
font-size:44px;
line-height:1.2;
color:#0f587a;
margin:0;
}

.pharma-about-title span{
background:linear-gradient(90deg,#0f587a,#00bcd4);
-webkit-background-clip:text;
color:transparent;
}

.pharma-wave-line{
width:60px;
height:5px;
border-radius:10px;
margin:18px 0;
background:linear-gradient(90deg,#0f587a,#00bcd4);
animation:pharmaWaveLine 2s infinite;
}

@keyframes pharmaWaveLine{
50%{transform:scaleX(1.5)}
}

.pharma-about-text p{
color:#444;
line-height:1.8;
margin-bottom:15px;
}

.pharma-about-btn{
display:inline-block;
margin-top:15px;
padding:12px 28px;
border-radius:30px;
background:#0f587a;
color:white;
text-decoration:none;
box-shadow:0 10px 25px rgba(15,88,122,.4);
transition:.3s;
}

.pharma-about-btn:hover{
transform:translateY(-3px);
color: white;
box-shadow:0 10px 25px rgba(71, 183, 235, 0.99);
}

/* Image */

.pharma-about-image{
position:relative;
text-align:center;
}

.pharma-about-image img{
max-width:65%;
border-radius:82px 0;
box-shadow:0 30px 70px rgba(15,88,122,.3);
transition:.5s;
}

.pharma-about-image:hover img{
transform:translateY(-8px) scale(1.02);
}

/* Glow blobs */

.pharma-glow{
position:absolute;
width:120px;
height:120px;
background:#0f587a;
opacity:.15;
filter:blur(60px);
border-radius:50%;
animation:pharmaGlowFloat 6s ease-in-out infinite;
}

.g1{top:-40px;left:-40px}
.g2{bottom:-40px;right:-40px;animation-delay:3s}

@keyframes pharmaGlowFloat{
50%{transform:translateY(-20px)}
}

/* Scroll reveal */

.pharma-reveal{
opacity:0;
transform:translateY(40px);
transition:1s;
}

.pharma-reveal.active{
opacity:1;
transform:none;
}

.pharma-hero,
.pharma-about{
position:relative;
overflow:hidden;
}
 /* About Section Fish */

.pharma-about-fish{
position:absolute;
font-size:26px;
opacity:.32;
animation:pharmaAboutFish 30s linear infinite;
}

/* reuse same positions */
.pharma-about-fish.pharma-f1{top:15%;left:-80px}
.pharma-about-fish.pharma-f2{top:55%;left:-120px;animation-delay:4s}
.pharma-about-fish.pharma-f3{top:35%;left:-90px;animation-delay:7s}
.pharma-about-fish.pharma-f4{top:75%;left:-100px;animation-delay:3s}
.pharma-about-fish.pharma-f5{top:90%;left:-110px;animation-delay:6s}
.pharma-about-fish.pharma-f6{top:5%;left:-130px;animation-delay:9s}

@keyframes pharmaAboutFish{
to{transform:translateX(130vw)}
}


/* Responsive */

@media(max-width:900px){
.pharma-about-inner{
grid-template-columns:1fr;
text-align:center;
}
.pharma-wave-line{margin:15px auto}
}






/* About us second section */
/* ==============================
   GMS Mission Vision Values
============================== */

.gms-mvv{
padding:110px 20px;
background:
linear-gradient(135deg,#0f587a,#0b3f56);
position:relative;
overflow:hidden;
}

/* animated soft background */

.gms-mvv::before{
content:"";
position:absolute;
inset:-30%;
background:
radial-gradient(circle at 25% 30%, rgba(255,255,255,.12)),
radial-gradient(circle at 75% 70%, rgba(255,255,255,.1));
animation:gmsBg 22s linear infinite;
}

@keyframes gmsBg{
to{transform:rotate(360deg)}
}

/* layout */

.gms-mvv-wrap{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:35px;
position:relative;
z-index:2;
}

/* cards */

.gms-mvv-card{
background:#fff;
border-radius:26px;
padding:45px 35px;
text-align:center;
box-shadow:0 25px 70px rgba(0,0,0,.35);
transition:.4s cubic-bezier(.22,.61,.36,1);
opacity:0;
transform:translateY(40px);
}

/* appear animation */

.gms-mvv-card.active{
opacity:1;
transform:none;
}

.gms-mvv-card:hover{
transform:translateY(-14px) scale(1.04);
}

/* icon */

.gms-mvv-badge{
width:70px;
height:70px;
margin:0 auto 20px;
border-radius:50%;
background:#0f587a;
color:#fff;
display:flex;
align-items:center;
justify-content:center;
font-size:28px;
}

/* titles */

.gms-mvv-card h3{
color:#0f587a;
margin-bottom:12px;
}

/* text */

.gms-mvv-card p,
.gms-mvv-card li{
color:#333;
line-height:1.7;
}

.gms-mvv-card ul{
list-style:none;
padding:0;
margin:0;
}

/* responsive */

@media(max-width:900px){
.gms-mvv-wrap{
grid-template-columns:1fr;
max-width:520px;
}
}



/* ============================
   GMS FEATURED PRODUCTS
============================ */

.gms-featured{
padding:120px 20px;
background:var(--grey--color);
overflow:hidden;
}

.gms-featured-wrap{
max-width:1250px;
margin:auto;
display:grid;
grid-template-columns:1fr 1.2fr 1fr;
gap:40px;
align-items:center;
}

/* columns */

.gms-featured-col{
display:flex;
flex-direction:column;
gap:25px;
}

/* feature cards */

.gms-feature{
background:rgba(255,255,255,.12);
backdrop-filter:blur(10px);
border-radius:18px;
padding:25px;
color:#000;
box-shadow:0 20px 45px rgba(0,0,0,.35);
transition:.4s cubic-bezier(.22,.61,.36,1);
opacity:0;
transform:translateY(30px);
}

.gms-feature.active{
opacity:1;
transform:none;
}

.gms-feature:hover{
transform:translateY(-10px);
background:rgba(255,255,255,.18);
}

.gms-feature h4{
margin:0 0 6px;
letter-spacing:.5px;
}

.gms-feature p{
margin:0;
opacity:.9;
line-height:1.6;
}

/* center image */

.gms-featured-center{
position:relative;
text-align:center;
}

.gms-featured-center img{
max-width:100%;
border-radius:22px;
box-shadow:0 35px 90px rgba(0,0,0,.5);
transition:.5s;
position:relative;
z-index:2;
}

.gms-featured-center:hover img{
transform:scale(1.05);
}

/* glow */

.gms-center-glow{
position:absolute;
width:220px;
height:220px;
background:#0f587a;
border-radius:50%;
filter:blur(120px);
top:50%;
left:50%;
transform:translate(-50%,-50%);
opacity:.5;
animation:gmsGlow 6s ease-in-out infinite;
}

@keyframes gmsGlow{
50%{opacity:.8}
}

/* responsive */

@media(max-width:991px){
.gms-featured-wrap{
grid-template-columns:1fr;
}

.gms-featured-center{
order:-1;
margin-bottom:30px;
}
}


/* ==========================
   GMS SHOP SECTION
========================== */

.gms-shop{
padding:100px 20px;
background:#f4f9fd;
text-align:center;
}

.gms-shop-title{
color:#0f587a;
font-size:36px;
margin-bottom:8px;
}

.gms-shop-sub{
color:#555;
margin-bottom:50px;
}

.gms-shop-grid{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

/* product card */

.gms-product{
background:#fff;
border-radius:22px;
padding:25px;
position:relative;
box-shadow:0 20px 60px rgba(0,0,0,.12);
transition:.4s cubic-bezier(.22,.61,.36,1);
opacity:0;
transform:translateY(40px);
}

.gms-product.active{
opacity:1;
transform:none;
}

.gms-product:hover{
transform:translateY(-15px) scale(1.04);
box-shadow:0 35px 90px rgba(15,88,122,.35);
}

/* badge */

.gms-badge{
position:absolute;
top:15px;
right:15px;
background:#0f587a;
color:#fff;
font-size:11px;
padding:6px 10px;
border-radius:20px;
}

/* image */

.gms-product img{
max-width:100%;
height:160px;
object-fit:contain;
transition:.4s;
}

.gms-product:hover img{
transform:scale(1.1);
}

/* text */

.gms-product h4{
margin:12px 0 6px;
color:#0f587a;
}

.gms-product p{
font-size:14px;
color:#555;
line-height:1.6;
}

/* price */

.gms-price{
margin:12px 0;
}

.gms-price del{
color:#999;
margin-right:8px;
}

.gms-price strong{
color:#d52934;
font-size:25px;
}

/* button */

.gms-buy{
display:inline-block;
margin-top:10px;
padding:10px 26px;
border-radius:30px;
background:#0f587a;
color:#fff;
text-decoration:none;
transition:.3s;
}

.gms-buy:hover{
background:#0b3f56;
color:#fff;
}

/* button row */

.gms-btn-row{
display:flex;
gap:12px;
justify-content:space-between;
margin-top:12px;
}

/* buttons equal width */

.gms-btn-row .gms-buy{
flex:1;
padding:10px 0;
}

/* optional outline style for second button */

.gms-outline{
background:#fff;
color:#0f587a;
border:2px solid #0f587a;
}

.gms-outline:hover{
background:#0f587a;
color:#fff;
}

/* responsive */

@media(max-width:1000px){
.gms-shop-grid{
grid-template-columns:repeat(2,1fr);
}
}

@media(max-width:600px){
.gms-shop-grid{
grid-template-columns:1fr;
}
}






/* Fullscreen popup overlay */
.fullscreen-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background: rgba(0,0,0,0.9); */
  background: rgba(255, 255, 255, 0.6);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  padding: 20px;
}

/* Show popup when clicked */
#dr-popup-1:target {
  display: flex;
}
#dr-popup-2:target {
  display: flex;
}
#dr-popup-3:target {
  display: flex;
}
#dr-popup-4:target {
  display: flex;
}
#dr-popup-5:target {
  display: flex;
}
#dr-popup-6:target {
  display: flex;
}
#dr-popup-7:target {
  display: flex;
}
#dr-popup-8:target {
  display: flex;
}
#dr-popup-9:target {
  display: flex;
}
#dr-popup-10:target {
  display: flex;
}
#dr-popup-11:target {
  display: flex;
}
#dr-popup-12:target {
  display: flex;
}
#dr-popup-13:target {
  display: flex;
}
#dr-popup-14:target {
  display: flex;
}
#dr-popup-15:target {
  display: flex;
}
#dr-popup-16:target {
  display: flex;
}
#dr-popup-17:target {
  display: flex;
}
#dr-popup-18:target {
  display: flex;
}

/* Fullscreen responsive image */
.fullscreen-popup img {
  max-width: 95%;
  max-height: 95%;
  object-fit: contain;
  border-radius: 10px;
}

/* Close (X) button */
.popup-close {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 40px;
  color: #000;
  text-decoration: none;
  font-weight: bold;
  z-index: 10000;
}

/* Mobile responsive tweaks */
@media (max-width: 768px) {
  .popup-close {
    font-size: 32px;
    right: 20px;
    top: 15px;
  }
}
