/* =========================
   MONTSERRAT VARIABLE FONT
========================= */
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat/Montserrat-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

/* =========================
   PLAYFAIR DISPLAY VARIABLE FONT
========================= */
@font-face {
  font-family: 'Playfair Display';
  src: url('../fonts/Playfair_Display/PlayfairDisplay-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Playfair Display';
  src: url('../fonts/Playfair_Display/PlayfairDisplay-Italic-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

/* =========================
   ARCHIVO VARIABLE FONT
========================= */
@font-face {
  font-family: 'Archivo';
  src: url('../fonts/Archivo/Archivo-VariableFont_wdth,wght.ttf') format('truetype');
  font-weight: 100 900;
  font-stretch: 75% 125%; /* optional, for width variation */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Archivo';
  src: url('../fonts/Archivo/Archivo-Italic-VariableFont_wdth,wght.ttf') format('truetype');
  font-weight: 100 900;
  font-stretch: 75% 125%;
  font-style: italic;
  font-display: swap;
}

* {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: "Archivo", sans-serif;
            
}
 
        
        .left-overlayed-img {
            transform: translateX(100px);
        }
        
        .right-overlayed-img {
            transform: translateX(-100px);
        }
        
        html {
            scroll-behavior: smooth;
        }
        
        footer a {
            text-decoration: none;
        }
        
        .main {
            overflow-x: hidden;
        }
        
        img {
            max-width: 100%;
        }
        
        .typing-anim {
            display: inline-block;
            position: relative;
            white-space: normal;
            /* allow wrapping */
        }
        /* caret */
        
        .typing-anim::after {
            content: "";
            display: inline-block;
            width: 2px;
            height: 1em;
            background: #fff;
            margin-left: 3px;
            animation: blink 0.7s steps(1) infinite;
            vertical-align: bottom;
        }
        
        @keyframes blink {
            0%,
            49% {
                opacity: 1;
            }
            50%,
            100% {
                opacity: 0;
            }
        }
        
        .main-header {
            padding: 30px 25px;
            background: transparent;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            z-index: 9999;
        }
        
        .nav-hidden {
            background: linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 247, 134, 1) 100%);
            animation: slideUp 0.4s ease forwards;
        }
        
        @keyframes slideUp {
            from {
                transform: translateY(0);
                opacity: 1;
            }
            to {
                transform: translateY(-100%);
                opacity: 0;
            }
        }
        
        .fixed-nav-bar {
            animation: slideDown 0.4s ease forwards;
            background: linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 247, 134, 1) 100%);
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            z-index: 9999;
            animation: slideDown 0.4s ease forwards;
        }
        
        @keyframes slideDown {
            from {
                transform: translateY(-100%);
                opacity: 0;
            }
            to {
                transform: translateY(0);
                opacity: 1;
            }
        }
        
        .header-logo {
            max-width: 300px;
            width: 100%;
        }
        
        .menu-ul {
            display: flex;
            justify-content: start;
            list-style: none;
        }
        
        .menu-ul li a {
            text-decoration: none;
            color: #002452;
            padding: 0 40px;
            border-right: 2px solid #fff;
            font-size: 22px;
            font-weight: 400;
        }
        
        .menu-ul li:last-child a {
            border-right: 0px solid #fff;
        }
        
        .header-menu {
            display: flex;
            gap: 10em;
            align-items: center;
        }
        
        a.theme-btn {
            text-decoration: none;
            color: #fff;
            padding: 10px 30px;
            font-size: 22px;
            border-radius: 25px 25px 0 0;
            background-color: #003DD5;
            font-weight: 500;
            border: 1px solid #003DD5;
            transition: 0.3s background-color ease;
        }
        
        .banner-know-btn {
            display: inline-block;
            margin-bottom: 35px;
        }
        
        a.theme-btn:hover {
            color: #003DD5;
            background-color: transparent;
        }
        
        .service-banner,
        .home-banner,
        .about-banner {
            background: #FFF9A6;
            background: -webkit-linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 242, 52, 1) 50%, rgba(255, 241, 12, 1) 100%);
            background: -moz-linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 242, 52, 1) 50%, rgba(255, 241, 12, 1) 100%);
            background: linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 242, 52, 1) 50%, rgba(255, 241, 12, 1) 100%);
            filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#FFF9A6", endColorstr="#FFF10C", GradientType=0);
            padding-top: 120px;
            overflow: hidden;
        }
        
        .home-banner-collage {
            max-width: 1250px;
            width: 100%;
            object-fit: contain;
            object-position: bottom;
        }
        
        .service-banner .home-banner-collage {
            max-width: 1400px;
            padding-top: 60px;
            transform-origin: right bottom;
            scale: 1.2;
        }
        
        .about-banner .home-banner-collage {
            padding-top: 150px;
            transform-origin: left bottom;
            scale: 1.2;
        }
        
        .left-home-text-img {
            padding-top: 40px;
        }
        
        .theme-heading {
            color: #002452;
            font-weight: 600;
            font-size: clamp(20px, 2vw, 40px);
            line-height: 1;
        }
        
        .bigger-theme-heading {
            font-size: 45px;
        }
        
        .theme-heading.undeline-heading {
            position: relative;
            z-index: 9;
            /* border-bottom: 2px solid #002452; */
            padding-top: 10px;
            padding-bottom: 10px;
            margin-bottom: 0;
        }
        
        .underline {
            display: block;
            margin-bottom: 10px;
            width: 100%;
            height: 2px;
            background-color: #002452;
        }
        
        .theme-para {
            color: #002452;
            font-size: clamp(15px, 1vw, 20px);
            font-size: 24px;
            font-weight: 500;
            line-height: 1.2;
        }
        
        .standing-ovation-card .theme-para {
            font-weight: 300;
        }
        
        .bigger-theme-para {
            font-size: 24px;
        }
        
        .bigger-theme-para2 {
            font-size: 28px;
        }
        
        .home-banner-content {
            display: flex;
        }
        
        .home-banner-left {
            max-width: 480px;
            width: 100%;
            padding-left: 25px;
            margin-left: 5%;
        }
        
        .home-banner-left.about-banner-left {
            padding-right: 50px;
            margin-right: 5%;
            padding-left: 0;
            margin-left: 0%;
        }
        
        .bg-pinkblue {
            background-image: url(../images/home/Banner-02.jpg);
            background-position: top center;
            background-size: cover;
            background-repeat: no-repeat;
            padding: 40px 0;
            /* background-attachment: fixed; */
        }
        
        .bg-yellow-gradient {
            background: #FFF9A6;
            background: -webkit-linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 242, 52, 1) 50%, rgba(255, 241, 12, 1) 100%);
            background: -moz-linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 242, 52, 1) 50%, rgba(255, 241, 12, 1) 100%);
            background: linear-gradient(180deg, rgba(255, 249, 166, 1) 0%, rgba(255, 242, 52, 1) 50%, rgba(255, 241, 12, 1) 100%);
            filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#FFF9A6", endColorstr="#FFF10C", GradientType=0);
        }
        
        .counter-1,
        .slider-home {
            max-width: 1700px;
            width: 100%;
            margin: 0 auto;
            padding: 0 15px;
        }
        
        .testimonial-section {
            max-width: 1700px;
            width: 100%;
            margin: 0 auto;
            padding: 0 35px;
        }
        
        .custom-arrow {
            background-color: transparent;
            border-color: transparent;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            z-index: 5;
            background: none;
            border: none;
            cursor: pointer;
            padding: 0;
        }
        
        .counter-card .theme-heading {
            font-size: 30px;
        }
        
        .slick-prev {
            left: 0;
        }
        
        .slick-next {
            right: 0;
        }
        
        .custom-arrow svg {
            transition: fill 0.3s ease;
        }
        
        .custom-arrow:hover svg {
            fill: #ffd700;
            /* gold hover */
        }
        
        .playfair-font {
            font-family: "Playfair Display", serif;
        }
        
        .italic-font {
            font-style: italic;
        }
        
        .counter-card {
            padding: 45px 10px;
            border: 2px solid #99C5EB;
            outline: 3px solid #99C5EB;
            outline-offset: 4px;
            max-width: 220px !important;
            width: 100% !important;
            border-radius: 125px;
            aspect-ratio: 4.5/6;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
        }
        
        .slide-item .counter-card {
            margin: 10px auto !important;
            text-align: center;
        }
        
        .counter-card .counter-num {
            font-size: 70px;
            line-height: 0.9;
            font-family: "Archivo SemiExpanded";
            font-style: italic;
        }
        
        .theme-lg-head {
            font-size: 50px;
        }
        
        .theme-lg-head2 {
            font-size: 75px;
        }
        
        .header-animation1 {
            position: relative;
            z-index: 1;
        }
        
        .header-animation1 .text-covering {
            position: absolute;
            width: 100%;
            height: 100%;
            left: -10px;
            top: 0;
        }
        
        .testimonial-section-main {
            background-color: #FFEFE0;
            position: relative;
            padding-bottom: 150px;
            padding-top: 40px;
            overflow: hidden;
        }
        
        .home-dream-sec-4 {
            position: relative;
            overflow: hidden;
        }
        
        .home-dream-subsec-4 {
            position: relative;
            z-index: 2;
        }
        
        .testimonial-section-main .bottom-cloud {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            object-fit: cover;
            height: 150px;
            object-position: left center;
        }
        
        .home-dream-sec-4 .bottom-cloudsec-4 {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            object-fit: cover;
            height: 400px;
            object-position: left top;
            z-index: 0;
        }
        
        .home-dream-sec-4 .bottom-cloudsec-4.your-brand-cloud {
            object-fit: contain;
            height: 400px;
            bottom: 0;
            object-position: left bottom;
        }
        
        .home-dream-sec-4 .bottom-cloudsec-4.your-brand-cloud.right-aligned-image {
            object-position: right bottom;
        }
        
        .home-dream-sec-4 .bottom-cloudsec-4.height-300img {
            height: 300px;
        }
        
        .testimonial-content {
             border-radius: 75px 75px 0 0;
            padding: 25px 75px;
            position: relative;
            z-index: 30;
            text-align: center;
        }
        .testi-head{
            position:relative;
            display:inline;
        }
        .testi-head::after{
            position:absolute;
            content:'';
            width:100px;
            height:auto;
            aspect-ratio: 30 / 35;
            background:url(../images/home/left-quote.png);
            background-position:center center;
            background-size:contain;
            background-repeat:no-repeat;
            left:-125px;
            top:-50px;
        }
        .testi-head::before{
            position:absolute;
            content:'';
            width:100px;
            height:auto;
            aspect-ratio: 30 / 35;
            background:url(../images/home/right-quote.png);
            background-position:center center;
            background-size:contain;
            background-repeat:no-repeat;
            right:-125px;
            bottom:0;
        }
        
        
        
        .testimonial-text {
            font-weight: 400;
        }
        
        .home-dream-sec-right4 {
            width: 100%;
            max-width: 705px;
            padding: 0 15px;
            margin: 0 auto;
            margin-bottom: 180px;
        }
        
        .banner-sec-2 {
            max-width: 750px;
        }
        
        .main-footer {
            max-width: 1700px;
            width: 100%;
            margin: 0 auto;
            padding: 20px 35px;
        }
        
        .footer-logo {
            max-width: 350px;
            width: 100%;
        }
        
        .footer-left {
            position: relative;
        }
        
        .footer-left-border {
            content: '';
            position: absolute;
            width: 4px;
            height: 100%;
            right: 0;
            top: 0;
            border-radius: 3px;
            background-color: #fff;
        }
        
        .footer-main-left {
            padding: 75px 0;
        }
        
        .footer-links {
            list-style: none;
        }
        
        .footer-links li {
            padding-bottom: 35px;
        }
        
        .footer-links li a {
            text-decoration: none;
        }
        
        .social-media-link {
            width: 50px;
            height: 50px;
            background-color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
        }
        
        .standing-ovation {
            background-color: #ffefe0;
            padding: 75px 0;
        }
        
        .standing-ovation h1 {
            max-width: 750px;
            margin: 0 auto;
            padding: 0 25px;
            padding-bottom: 85px;
        }
        
        .standing-ovation .standing-ovation-card {
            background: #D87FA5;
            background: linear-gradient(180deg, rgba(216, 127, 165, 1) 0%, rgba(0, 61, 211, 1) 100%);
            padding: 50px;
            width: 100%;
        }
        
        .standing-ovation-main {
            max-width: 1600px;
            width: 100%;
            padding: 0 25px;
            margin: 0 auto;
        }
        
        .standing-ovation-card {
            margin-bottom: 100px;
        }
        
        .standing-ovation-card:last-child {
            margin-bottom: 0;
        }
        /******************************************************************** Responsive  ********************************************************************/
        
        @media(max-width:1630px) {
            .standing-ovation-card {
                margin-bottom: 70px;
            }
            .home-banner-left {
                max-width: 400px;
            }
        }
        
        @media(max-width:1450px) {
            .home-dream-sec-4 .bottom-cloudsec-4 {
                height: 250px;
            }
            .header-menu {
                gap: 25px;
            }
            a.theme-btn {
                padding: 10px 30px;
            }
            .menu-ul li a {
                padding: 0 20px;
            }
            .header-logo {
                max-width: 200px;
            }
            .theme-heading {
                font-size: 30px;
            }
            .theme-para {
                font-size: 17px;
            }
            .bigger-theme-para2 {
                font-size: 20px;
            }
            .theme-lg-head {
                font-size: 40px;
            }
            .home-banner-left {
                max-width: 360px;
            }
            .service-banner,
            .home-banner,
            .about-banner {
                padding-top: 100px;
            }
        }
        
        @media(max-width:1350px) {
            .standing-ovation-card {
                margin-bottom: 50px;
            }
            .social-media-link {
                width: 40px;
                height: 40px;
            }
        }
        
        @media(max-width:1200px) {
            .testi-head::before{
              width:50px;
              right:-65px;
              bottom:-15px;
        }
        .testi-head::after{
             width:50px;
              left:-65px;
              top:-15px;
        }
            .service-banner .home-banner-collage {
                padding-top: 0;
                scale: 1;
            }
            .about-banner .home-banner-collage {
                padding-top: 0;
                scale: 1;
            }
            .footer-main-left {
                padding: 50px 0;
            }
            .counter-1 .counter-left-text {
                text-align: center;
                margin: 0 auto;
                margin-bottom: 35px;
            }
        }
        
        @media(max-width:991px) {
            .standing-ovation-card {
                margin-bottom: 30px;
            }
            .standing-ovation .standing-ovation-card {
                padding: 25px;
            }
            .standing-ovation-main {
                padding: 0 15px;
            }
            .standing-ovation {
                background-color: #ffefe0;
                padding: 40px 0;
            }
            .footer-left-border {
                width: 100%;
                height: 4px;
                left: 0;
                bottom: 0;
                top: auto;
                right: auto;
                border-radius: 3px;
                background-color: #fff;
            }
            .footer-links li:last-child {
                padding-bottom: 0;
            }
            .footer-links li {
                padding-bottom: 20px;
            }
            .main-footer {
                padding: 0 15px;
            }
            .footer-links {
                padding-left: 0;
            }
            .home-dream-sec-right4 {
                width: 100%;
                max-width: 650px;
                padding: 0 15px;
                margin: 0 auto;
                margin-bottom: 0;
            }
            .home-banner-left,
            .home-banner-left.about-banner-left {
                margin: 0;
            }
            .home-banner-content {
                flex-direction: column;
                align-items: center;
            }
            .home-banner-left,
            .home-banner-left.about-banner-left {
                padding-left: 0;
                padding: 0 15px;
            }
            .menu-ul {
                position: fixed;
                height: 100vh;
                background: rgba(255, 242, 59, 0.3);
                backdrop-filter: blur(8px);
                z-index: 9999999;
                right: 0;
                top: 0;
                max-width: 300px;
                left: auto;
                flex-direction: column;
                width: 100%;
                gap: 20px;
                padding-top: 50px;
                box-shadow: rgba(0, 0, 0, 0.25) 0px 0.0625em 0.0625em, rgba(0, 0, 0, 0.25) 0px 0.125em 0.5em, rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset;
                transform: translateX(300px);
            }
            .main {
                position: relative;
                z-index: 1;
            }
            .standing-ovation h1 {
                padding-bottom: 20px;
            }
            .closemenu {
                position: absolute;
                right: 25px;
                top: 25px;
                cursor: pointer;
                background-color: transparent;
                border-radius: 50%;
            }
            .menu-ul li a {
                text-decoration: none;
                color: #002452;
                padding: 0 0 40px 0;
                border-right: none;
                font-size: 22px;
                font-weight: 500;
            }
            #togglebtn {
                cursor: pointer;
            }
            .main-header {
                padding: 15px;
            }
            .header-menu {
                gap: 5px;
            }
            a.theme-btn {
                font-size: 18px;
            }
            .left-home-text-img {
                padding-top: 25px;
            }
            .testimonial-content {
                padding: 25px 35px;
            }
        }
        
        @media (max-width: 650px) {
            .footer-logo {
                max-width: 250px;
                width: 100%;
            }
            .footer-main-left {
                padding: 20px 0;
            }
            .home-dream-sec-4 .bottom-cloudsec-4 {
                height: 150px;
            }
            .counter-num {
                font-size: 50px;
            }
            .header-logo {
                max-width: 150px;
            }
            a.theme-btn {
                padding: 7px 20px;
                font-size: 15px;
                border-radius: 20px 20px 0 0;
            }
            .counter-card {
                margin-bottom: 15px;
            }
            .theme-lg-head {
                font-size: 35px;
            }
            .theme-lg-head2 {
                font-size: 45px;
            }
        }
        
        @media (max-width: 350px) {
            a.theme-btn {
                padding: 5px 10px;
                font-size: 15px;
                border-radius: 12px 12px 0 0;
            }
            .header-logo {
                max-width: 135px;
            }
        }


.text-decoration-underline {
    text-decoration: underline !important;
    color: #fff;
}