@charset "utf-8";

/*========================================
RESET
========================================*/
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}
html{
    scroll-behavior:smooth;
}
body{
    font-family:'Manrope',sans-serif;
    font-size:16px;
    line-height:1.7;
    color:#1f2937;
    background:#ffffff;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
}
img{
    display:block;
    max-width:100%;
    height:auto;
}
a{
    color:inherit;
    text-decoration:none;
    transition:.30s;
}
ul{
    list-style:none;
}
button,
input,
select,
textarea{
    font:inherit;
    outline:none;
    border:none;
}
textarea{
    resize:none;
}
button{
    cursor:pointer;
}
::selection{
    background:#00a8de;
    color:#fff;
}

/*========================================
ROOT
========================================*/
:root{
    --primary:#00a8de;
    --primary-hover:#008dc1;
    --green:#25d366;
    --dark:#0f172a;
    --text:#667085;
    --border:#e5e7eb;
    --white:#ffffff;
    --bg:#f7f9fc;
    --radius:18px;
    --container:1380px;
    --shadow:0 20px 60px rgba(15,23,42,.12);
    --transition:.30s;
}

/*========================================
GLOBAL
========================================*/
.site-wrapper{
    position:relative;
    overflow:hidden;
}

.header__container,
.hero__wrapper,
.hero-info__container,
.quick-services{
    width:100%;
    max-width:var(--container);
    margin:0 auto;
    padding:0 25px;
}

.section-heading{
    max-width:760px;
    margin:0 auto 70px;
    text-align:center;
}

.section-heading span{
    display:inline-block;
    margin-bottom:12px;
    color:var(--primary);
    font-size:16px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.section-heading h2{
    margin-bottom:18px;
    color:var(--dark);
    font-size:48px;
    line-height:1.2;
    font-weight:800;
}

.section-heading p{
    color:var(--text);
    font-size:18px;
    line-height:1.8;
}

/*========================================
BUTTONS
========================================*/
.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:58px;
    padding:0 34px;
    border-radius:60px;
    font-size:16px;
    font-weight:700;
    transition:var(--transition);
}

.btn-primary{
    color:#fff;
    background:linear-gradient(135deg,var(--primary),var(--primary-hover));
    box-shadow:0 18px 40px rgba(0,168,222,.25);
}

.btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 25px 45px rgba(0,168,222,.35);
}

.btn-secondary{
    color:#fff;
    border:1px solid rgba(255,255,255,.35);
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(10px);
}

.btn-secondary:hover{
    color:var(--dark);
    background:#fff;
}

/*========================================
HEADER
========================================*/
.header{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    z-index:999;
    padding:5px 0;
}

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

.header__logo{
    flex:0 0 220px;
}

.header__logo img{
    width:100%;
    max-height: 120px;
}

.header__menu{
    margin-left:auto;
}

.header__menu ul{
    display:flex;
    align-items:center;
    gap:30px;
}

.header__menu ul li a{
    position:relative;
    color:#fff;
    font-size:18px;
    font-weight:700;
}

.header__menu ul li a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-8px;
    width:0;
    height:2px;
    background:#fff;
    transition:.30s;
}

.header__menu ul li a:hover::after{
    width:100%;
}

.header__actions{
    display:flex;
    align-items:center;
    gap:18px;
    margin-left:45px;
}

.header__phone{
    color:#fff;
    font-size:18px;
    font-weight:700;
}

.header__button{
    display:flex;
    align-items:center;
    justify-content:center;
    height:52px;
    padding:0 26px;
    border-radius:60px;
    color:#fff;
    font-size:14px;
    font-weight:700;
    background:var(--green);
    transition:var(--transition);
}

.header__button:hover{
    transform:translateY(-2px);
    background:#1cb85b;
}

.mobile-menu-button{
    display:none;
    width:46px;
    height:46px;
    background:none;
}

.mobile-menu-button span{
    display:block;
    width:26px;
    height:2px;
    margin:6px auto;
    background:#fff;
}

/*========================================
HERO
========================================*/
.hero{
    position:relative;
    min-height:1040px;
    overflow:hidden;
    background:#081b2d;
}

.hero__slider{
    position:absolute;
    inset:0;
    z-index:1;
}

.hero__slider .swiper-wrapper,
.hero__slider .swiper-slide{
    width:100%;
    height:100%;
}

.hero__slider img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.hero__overlay{
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(90deg,rgba(8,25,45,.72) 0%,rgba(8,25,45,.55) 35%,rgba(8,25,45,.18) 100%);
}

.hero__wrapper{
    position:relative;
    z-index:5;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    height:100%;
    max-width:1380px;
    margin:0 auto;
    padding:125px 25px 0;
}

.hero__left{
    width:55%;
    max-width:670px;
    padding-top:80px;
}

.hero__label{
    display:inline-flex;
    align-items:center;
    height:38px;
    padding:0 18px;
    margin-bottom:24px;
    border-radius:50px;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
    color:#fff;
    font-size:14px;
    font-weight:800;
    letter-spacing:1px;
}

.hero__title{
    margin-bottom:28px;
    color:#fff;
    font-size:78px;
    line-height:1.05;
    font-weight:800;
}

.hero__title strong{
    display:block;
    color:#69dfff;
}

.hero__description{
    max-width:670px;
    margin-bottom:42px;
    color:rgba(255,255,255,.88);
    font-size:18px;
    line-height:1.9;
}

.hero__buttons{
    display:flex;
    align-items:center;
    gap:18px;
}

.hero__review{
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:42px;
}

.hero__review-stars{
    color:#ffd64d;
    font-size:24px;
    letter-spacing:3px;
}

.hero__review-content{
    display:flex;
    flex-direction:column;
}

.hero__review-content strong{
    color:#fff;
    font-size:17px;
    font-weight:800;
}

.hero__review-content span{
    margin-top:2px;
    color:rgba(255,255,255,.75);
    font-size:14px;
}

.hero__right{
    width:550px;
    position:relative;
    z-index:20;
}

/*========================================
OFFER CARD
========================================*/
.offer-card{
    width:100%;
    background:#fff;
    border-radius:26px;
    overflow:hidden;
    box-shadow:0 35px 80px rgba(15,23,42,.18);
}

.offer-card__header{
    padding:22px;
    border-bottom:1px solid #edf2f7;
}

.offer-card__header span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:34px;
    padding:0 16px;
    margin-bottom:16px;
    border-radius:50px;
    background:#e8f8ff;
    color:var(--primary);
    font-size:12px;
    font-weight:800;
    letter-spacing:1px;
}

.offer-card__header h2{
    margin-bottom:12px;
    color:var(--dark);
    font-size:30px;
    line-height:1.2;
    font-weight:800;
}

.offer-card__header p{
    color:var(--text);
    font-size:15px;
    line-height:1.8;
}

.offer-form{
    padding:32px 32px;
}

.offer-services{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:22px;
}

.offer-service{
    position:relative;
}

.offer-service input{
    display:none;
}

.offer-service span{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    height:82px;
    border:1px solid var(--border);
    border-radius:16px;
    background:#fff;
    cursor:pointer;
    transition:var(--transition);
}

.offer-service span i{
    font-style:normal;
    font-size:24px;
}

.offer-service span small{
    color:var(--dark);
    font-size:13px;
    font-weight:700;
}

.offer-service span:hover{
    border-color:var(--primary);
    transform:translateY(-3px);
    box-shadow:0 15px 30px rgba(0,168,222,.15);
}

.offer-service input:checked+span{
    color:#fff;
    border-color:var(--primary);
    background:linear-gradient(135deg,var(--primary),var(--primary-hover));
}

.offer-service input:checked+span small{
    color:#fff;
}

.offer-form__group{
    margin-bottom:3px;
}

.offer-form__row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
    margin-bottom:15px;
}

/*========================================
FORM ELEMENTS
========================================*/
.offer-form input,
.offer-form select,
.offer-form textarea{
    width:100%;
    border:1px solid var(--border);
    border-radius:14px;
    background:#f8fafc;
    color:var(--dark);
    transition:var(--transition);
}

.offer-form input,
.offer-form select{
    height:54px;
    padding:0 18px;
}

.offer-form textarea{
    height:110px;
    padding:16px 18px;
}

.offer-form input::placeholder,
.offer-form textarea::placeholder{
    color:#98a2b3;
}

.offer-form select{
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    padding-right:45px;
    cursor:pointer;
    background:#f8fafc url("../img/icons/select-arrow.svg") no-repeat right 18px center;
    background-size:11px;
}

.offer-form input:focus,
.offer-form select:focus,
.offer-form textarea:focus{
    background:#fff;
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(0,168,222,.12);
}

.offer-button{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:56px;
    margin-top:15px;
    border-radius:16px;
    color:#fff;
    font-size:16px;
    font-weight:800;
    background:linear-gradient(135deg,#25d366,#17b85b);
    box-shadow:0 18px 35px rgba(37,211,102,.28);
    transition:var(--transition);
}

.offer-button:hover{
    transform:translateY(-3px);
    box-shadow:0 24px 45px rgba(37,211,102,.38);
}

.offer-button span{
    display:flex;
    align-items:center;
    gap:10px;
}

.offer-card__footer{
    padding:28px 32px;
    border-top:1px solid #edf2f7;
    background:#fbfcfd;
}

.offer-card__item{
    display:flex;
    flex-direction:column;
}

.offer-card__item:not(:last-child){
    margin-bottom:18px;
}

.offer-card__item strong{
    margin-bottom:5px;
    color:var(--dark);
    font-size:15px;
    font-weight:800;
}

.offer-card__item span{
    color:var(--text);
    font-size:14px;
    line-height:1.7;
}

/*========================================
INPUT HOVER
========================================*/
.offer-form input:hover,
.offer-form select:hover,
.offer-form textarea:hover{
    border-color:#cfd8e3;
}

.offer-service span,
.offer-button,
.offer-card,
.btn{
    transition:.30s ease;
}

/*========================================
HERO INFO
========================================*/
.hero-info{
    position:relative;
    z-index:20;
    margin-top:-70px;
    margin-bottom:110px;
}

.hero-info__container{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.hero-info__item{
    display:flex;
    align-items:center;
    gap:20px;
    padding:30px;
    background:#fff;
    border-radius:22px;
    box-shadow:0 18px 45px rgba(15,23,42,.08);
    transition:var(--transition);
}

.hero-info__item:hover{
    transform:translateY(-8px);
    box-shadow:0 28px 60px rgba(15,23,42,.14);
}

.hero-info__icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 72px;
    width:72px;
    height:72px;
    border-radius:20px;
    background:#eef9ff;
}

.hero-info__icon img{
    width:34px;
    height:34px;
    object-fit:contain;
}

.hero-info__content{
    flex:1;
}

.hero-info__content h3{
    margin-bottom:8px;
    color:var(--dark);
    font-size:19px;
    font-weight:800;
    line-height:1.3;
}

.hero-info__content p{
    color:var(--text);
    font-size:14px;
    line-height:1.7;
}

/*========================================
QUICK SERVICES
========================================*/
.quick-services{
    padding:30px 25px 120px;
}

.quick-services__grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
}

/*========================================
SERVICE CARD
========================================*/
.service-card{
    display:block;
    position:relative;
    padding:40px 35px;
    background:#fff;
    border:1px solid #edf2f7;
    border-radius:24px;
    overflow:hidden;
    transition:var(--transition);
    box-shadow:0 15px 40px rgba(15,23,42,.06);
}

.service-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    transform:scaleX(0);
    transform-origin:left;
    transition:.35s;
}

.service-card:hover::before{
    transform:scaleX(1);
}

.service-card:hover{
    transform:translateY(-10px);
    box-shadow:0 28px 65px rgba(15,23,42,.12);
    border-color:#d9e8f4;
}

.service-card img{
    width:72px;
    height:72px;
    object-fit:contain;
    margin-bottom:28px;
    transition:.35s;
}

.service-card:hover img{
    transform:scale(1.08) rotate(-5deg);
}

.service-card h3{
    margin-bottom:14px;
    color:var(--dark);
    font-size:24px;
    font-weight:800;
    line-height:1.3;
    transition:.30s;
}

.service-card p{
    color:var(--text);
    font-size:15px;
    line-height:1.9;
}

.service-card:hover h3{
    color:var(--primary);
}

.service-card::after{
    content:"→";
    position:absolute;
    right:30px;
    bottom:28px;
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    color:#fff;
    font-size:18px;
    font-weight:700;
    background:linear-gradient(135deg,var(--primary),var(--primary-hover));
    opacity:0;
    transform:translateX(-10px);
    transition:.35s;
}

.service-card:hover::after{
    opacity:1;
    transform:translateX(0);
}

.service-card:hover p{
    padding-right:45px;
}

.service-card:nth-child(1){
    border-top:4px solid #00a8de;
}

.service-card:nth-child(2){
    border-top:4px solid #25d366;
}

.service-card:nth-child(3){
    border-top:4px solid #ff9f43;
}

.service-card:nth-child(4){
    border-top:4px solid #7c5cff;
}

.service-card:nth-child(5){
    border-top:4px solid #ff5f6d;
}

.service-card:nth-child(6){
    border-top:4px solid #00c4a7;
}

/*========================================
SWIPER
========================================*/
.heroSlider{
    width:100%;
    height:100%;
}

.heroSlider .swiper-slide{
    overflow:hidden;
}

.heroSlider .swiper-slide img{
    transform:scale(1);
    transition:8s ease;
}

.heroSlider .swiper-slide-active img{
    transform:scale(1.08);
}

.heroSlider .swiper-pagination{
    bottom:35px !important;
}

.heroSlider .swiper-pagination-bullet{
    width:12px;
    height:12px;
    margin:0 6px !important;
    opacity:1;
    background:rgba(255,255,255,.35);
    border-radius:30px;
    transition:.35s;
}

.heroSlider .swiper-pagination-bullet-active{
    width:34px;
    background:#fff;
}

.heroSlider .swiper-button-prev,
.heroSlider .swiper-button-next{
    width:56px;
    height:56px;
    margin-top:-28px;
    border-radius:50%;
    color:#fff;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(12px);
    transition:.35s;
}

.heroSlider .swiper-button-prev{
    left:35px;
}

.heroSlider .swiper-button-next{
    right:35px;
}

.heroSlider .swiper-button-prev:hover,
.heroSlider .swiper-button-next:hover{
    color:var(--dark);
    background:#fff;
}

.heroSlider .swiper-button-prev::after,
.heroSlider .swiper-button-next::after{
    font-size:18px;
    font-weight:700;
}

/*========================================
ANIMATION
========================================*/
.hero__label,
.hero__title,
.hero__description,
.hero__buttons,
.hero__review,
.offer-card{
    opacity:0;
    transform:translateY(35px);
    animation:fadeUp .8s ease forwards;
}

.hero__label{animation-delay:.10s;}
.hero__title{animation-delay:.25s;}
.hero__description{animation-delay:.40s;}
.hero__buttons{animation-delay:.55s;}
.hero__review{animation-delay:.70s;}
.offer-card{animation-delay:.35s;}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(35px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/*========================================
HOVER
========================================*/
.hero__review{
    transition:.35s;
}

.hero__review:hover{
    transform:translateX(6px);
}

.offer-card{
    transition:.40s;
}

.offer-card:hover{
    transform:translateY(-8px);
    box-shadow:0 45px 90px rgba(15,23,42,.18);
}

.offer-service span{
    transition:.30s;
}

.offer-service:hover span{
    transform:translateY(-4px);
}

.hero-info__item,
.service-card,
.btn,
.header__button{
    transition:.35s;
}

/*========================================
SECTION SPACING
========================================*/
section{
    position:relative;
}

.quick-services{
    position:relative;
    z-index:2;
}

.hero::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:180px;
    background:linear-gradient(to top,rgba(8,25,45,.35),transparent);
    pointer-events:none;
    z-index:2;
}

/*========================================
UTILITY
========================================*/
.text-center{
    text-align:center;
}

.d-flex{
    display:flex;
}

.align-center{
    align-items:center;
}

.justify-between{
    justify-content:space-between;
}

.w-100{
    width:100%;
}

/*========================================
FOOTER CTA
========================================*/
.footer-cta{
    position:relative;
    margin-top:80px;
    background:linear-gradient(135deg,#00a8de,#008dc1);
}

.footer-cta__container{
    width:100%;
    max-width:1380px;
    margin:0 auto;
    padding:70px 25px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
}

.footer-cta__content{
    max-width:700px;
}

.footer-cta__content span{
    display:inline-block;
    margin-bottom:14px;
    color:rgba(255,255,255,.75);
    font-size:13px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.footer-cta__content h2{
    margin-bottom:18px;
    color:#fff;
    font-size:48px;
    line-height:1.2;
    font-weight:800;
}

.footer-cta__content p{
    color:rgba(255,255,255,.90);
    font-size:18px;
    line-height:1.9;
}

.footer-cta__buttons{
    display:flex;
    align-items:center;
    gap:18px;
    flex-shrink:0;
}

.footer-cta__buttons .btn-primary{
    background:#fff;
    color:#008dc1;
    box-shadow:none;
}

.footer-cta__buttons .btn-primary:hover{
    background:#f5f5f5;
}

.footer-cta__buttons .btn-secondary{
    border:1px solid rgba(255,255,255,.35);
    background:rgba(255,255,255,.10);
}

.footer-cta__buttons .btn-secondary:hover{
    background:#fff;
    color:#008dc1;
}

/*========================================
FOOTER
========================================*/
.footer{
    background:#081b2d;
}

.footer__container{
    width:100%;
    max-width:1380px;
    margin:0 auto;
    padding:80px 25px 60px;
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.2fr;
    gap:60px;
}

.footer__column h3{
    margin-bottom:24px;
    color:#fff;
    font-size:22px;
    font-weight:800;
}

.footer__about p{
    margin: 5px 0px 20px 0px;
    color:rgba(255,255,255,.70);
    font-size:16px;
    line-height:1.9;
}

.footer__logo{
    display:inline-block;
}

.footer__logo img{
    width:360px;
    height:160px;
}

.footer__column ul{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.footer__column ul li{
    list-style:none;
}

.footer__column ul li a{
    color:rgba(255,255,255,.70);
    font-size:16px;
    transition:var(--transition);
}

.footer__column ul li a:hover{
    color:#00a8de;
    padding-left:8px;
}

.footer__social{
    display:flex;
    gap:14px;
}

.footer__social a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:46px;
    height:46px;
    border-radius:50%;
    background: rgb(186 186 186 / 13%);
    transition:var(--transition);
}

.footer__social a:hover{
    background:#00a8de;
    transform:translateY(-4px);
}

.footer__social img{
    width:20px;
    height:20px;
}

.footer__contact{
    gap:22px!important;
}

.footer__contact li{
    display:flex;
    flex-direction:column;
}

.footer__contact strong{
    margin-bottom:6px;
    color:#ffffff;
    font-size:16px;
    font-weight:700;
}

.footer__contact span{
    color:rgba(255,255,255,.70);
    font-size:16px;
    line-height:1.8;
}

/*========================================
FOOTER BOTTOM
========================================*/
.footer__bottom{
    width:100%;
    background:#081b2d;
    border-top:1px solid rgba(255,255,255,.08);
}

.footer__bottom-left{
    width:100%;
    max-width:1380px;
    margin:0 auto;
    padding:28px 25px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}

.footer__bottom-left p{
    margin:0;
    color:rgba(255,255,255,.60);
    font-size:16px;
    font-weight:500;
    line-height:1.6;
    letter-spacing:.2px;
}

/*========================================
FOOTER EFFECTS
========================================*/
.footer__column ul li a,
.footer__contact span,
.footer__social a{
    transition:.30s ease;
}

.footer__social a img{
    transition:.30s ease;
}

.footer__social a:hover img{
    transform:scale(1.12);
}

.footer__column ul li a:hover{
    color:#00A8DE;
}

.footer__contact li:hover strong{
    color:#00A8DE;
}

.footer__contact li:hover span{
    color:#ffffff;
}

/*========================================
FOOTER EFFECTS
========================================*/
.footer__column ul li a,
.footer__contact span,
.footer__social a,
.footer__bottom-right a{
    transition:.30s ease;
}

.footer__social a img{
    transition:.30s ease;
}

.footer__social a:hover img{
    transform:scale(1.12);
}

.footer__column ul li a:hover{
    color:#00A8DE;
}

.footer__contact li:hover strong{
    color:#00A8DE;
}

.footer__contact li:hover span{
    color:#ffffff;
}

/*========================================
SCROLLBAR
========================================*/
::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#eef3f8;
}

::-webkit-scrollbar-thumb{
    background:#00A8DE;
    border-radius:20px;
}

::-webkit-scrollbar-thumb:hover{
    background:#008DC1;
}

/*========================================
END
========================================*/

.offer-location{
    position:relative;
}

.offer-location{
    position:relative;
}

.district-results{
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    right:0;
    width:100%;
    background:#ffffff;
    border:1px solid #dfe8f0;
    border-radius:18px;
    box-shadow:0 15px 40px rgba(0,0,0,.12);
    overflow:hidden;
    display:none;
    max-height:260px;
    overflow-y:auto;
    z-index:9999;
}

.district-results.active{
    display:block;
}

.district-results.active{
    display:block;
}

.district-item{
    padding:14px 18px;
    cursor:pointer;
    transition:.25s;
    font-size:15px;
    color:#24324a;
    display:flex;
    align-items:center;
    gap:10px;
}

.district-item:hover{
    background:#f3f9fd;
    color:#00A8DE;
}

.district-item i{
    font-style:normal;
}

.copyright_text{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:25px 15px;
}

.copyright_text p{
    margin:0;
    color:#bebebe;
    font-size:16px;
    line-height:1.7;
    font-weight:400;
}

.copyright_text a{
    color:#00A8DE;
    text-decoration:none;
    font-weight:600;
    transition:.30s ease;
}

.copyright_text a:hover{
    color:#25D366;
}

/*========================================
ABOUT HERO
========================================*/
.about-hero {
    position: relative;
    height: 300px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 85px;
}

.about-hero__bg{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
}

.about-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(rgb(0 100 170), rgb(50 138 201 / 71%));
    backdrop-filter: blur(2px);
}

.about-hero .container{
position:relative;
z-index:2;
height:20%;
align-items:center;
justify-content:center;
}

.about-hero__content{
max-width:850px;
text-align:center;
color:#fff;
}

.about-hero__tag{
display:inline-flex;
align-items:center;
justify-content:center;
padding:8px 22px;
border-radius:50px;
background:rgba(255,255,255,.14);
backdrop-filter:blur(8px);
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
margin-bottom:18px;
}

.about-hero__content h1{
font-size:48px;
font-weight:800;
line-height:1.15;
margin-bottom:18px;
color:#fff;
}

.about-hero__content p{
font-size:17px;
line-height:1.8;
color:rgba(255,255,255,.90);
max-width:650px;
margin:0 auto 24px;
}

.about-hero__breadcrumb{
display:flex;
justify-content:center;
align-items:center;
gap:12px;
font-size:20px;
}

.about-hero__breadcrumb a{
color:#ffffff;
text-decoration:none;
opacity:.8;
transition:.30s;
}

.about-hero__breadcrumb a:hover{
opacity:1;
color:#00A8DE;
}

.about-hero__breadcrumb span{
opacity:.45;
}

.about-hero__breadcrumb strong{
font-weight:600;
color:#ffffff;
}

/*========================================
ABOUT COMPANY
========================================*/
.about-company{
padding:90px 20px 110px;
background:#ffffff;
}

.about-company__wrapper{
display:grid;
grid-template-columns:520px 1fr;
gap:70px;
align-items:center;
}

.about-company__image{
margin-top:-60px;
z-index:5;
position:relative;
}

.about-company__shape{
position:absolute;
width:180px;
height:180px;
background:#e8f8fd;
border-radius:50%;
top:-35px;
left:-35px;
z-index:1;
}

.about-company__image img{
position:relative;
z-index:2;
width:100%;
display:block;
border-radius:28px;
box-shadow:0 25px 60px rgba(15,23,42,.12);
}

.about-company__content{
position:relative;
z-index:2;
}

.section-title{
display:inline-flex;
align-items:center;
padding:8px 18px;
background:#e8f8fd;
border-radius:50px;
color:#00A8DE;
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
margin-bottom:20px;
}

.about-company__content h2{
font-size:44px;
font-weight:800;
line-height:1.2;
color:#0f2235;
margin-bottom:25px;
}

.about-company__text{
font-size:17px;
line-height:1.95;
color:#667085;
}

.about-company__text p{
margin-bottom:20px;
}

.about-company__text p:last-child{
margin-bottom:0;
}

/*========================================
ABOUT LIST
========================================*/
.about-company__list{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:16px 22px;
margin:35px 0;
}

.about-company__item{
display:flex;
align-items:center;
gap:14px;
font-size:16px;
font-weight:600;
color:#24324a;
}

.about-company__item i{
display:flex;
align-items:center;
justify-content:center;
width:32px;
height:32px;
border-radius:50%;
background:#00A8DE;
color:#ffffff;
font-style:normal;
font-size:15px;
font-weight:700;
flex-shrink:0;
}

.about-company__buttons{
display:flex;
align-items:center;
gap:18px;
margin-top:10px;
}

.about-company__buttons .btn{
display:inline-flex;
align-items:center;
justify-content:center;
height:56px;
padding:0 32px;
border-radius:14px;
font-size:16px;
font-weight:700;
text-decoration:none;
transition:.30s;
}

.about-company__buttons .btn-outline{
background:#ffffff;
border:2px solid #dfe8f0;
color:#0f2235;
}

.about-company__buttons .btn-outline:hover{
border-color:#00A8DE;
color:#00A8DE;
transform:translateY(-3px);
}

.about-company__buttons .btn-primary{
background:#25D366;
color:#ffffff;
}

.about-company__buttons .btn-primary:hover{
background:#1FB557;
transform:translateY(-3px);
}

/*========================================
WHY US
========================================*/
.about-why{
padding:0 20px 110px;
background:#ffffff;
}

.section-heading{
max-width:760px;
margin:0 auto 55px;
text-align:center;
}

.section-heading span{
display:inline-flex;
align-items:center;
padding:8px 18px;
border-radius:50px;
background:#e8f8fd;
color:#00A8DE;
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
margin-bottom:18px;
}

.section-heading h2{
font-size:42px;
font-weight:800;
line-height:1.2;
color:#0f2235;
margin-bottom:18px;
}

.section-heading p{
font-size:17px;
line-height:1.9;
color:#667085;
}

.about-why__grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:24px;
}

.about-why__card{
background:#ffffff;
border:1px solid #edf2f7;
border-radius:24px;
padding:35px 28px;
text-align:center;
transition:.35s;
box-shadow:0 10px 35px rgba(15,23,42,.05);
}

.about-why__card:hover{
transform:translateY(-8px);
box-shadow:0 25px 45px rgba(15,23,42,.10);
border-color:#d9edf7;
}

.about-why__icon{
width:72px;
height:72px;
margin:0 auto 22px;
display:flex;
align-items:center;
justify-content:center;
border-radius:20px;
background:#eef9fd;
}

.about-why__icon img{
width:38px;
height:38px;
}

.about-why__card h3{
font-size:22px;
font-weight:700;
color:#0f2235;
margin-bottom:14px;
}

.about-why__card p{
font-size:15px;
line-height:1.8;
color:#667085;
margin:0;
}

/*========================================
MISSION & VISION
========================================*/
.about-mv{
padding:0 20px 110px;
background:#ffffff;
}

.about-mv__wrapper{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:30px;
}

.about-mv__box{
position:relative;
padding:45px;
background:#ffffff;
border:1px solid #edf2f7;
border-radius:28px;
box-shadow:0 15px 45px rgba(15,23,42,.05);
transition:.35s;
overflow:hidden;
}

.about-mv__box::before{
content:"";
position:absolute;
top:0;
left:0;
width:5px;
height:100%;
background:#00A8DE;
}

.about-mv__box:hover{
transform:translateY(-8px);
box-shadow:0 25px 55px rgba(15,23,42,.10);
}

.about-mv__box span{
display:inline-block;
margin-bottom:14px;
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
color:#00A8DE;
}

.about-mv__box h3{
font-size:30px;
font-weight:800;
color:#0f2235;
margin-bottom:18px;
}

.about-mv__box p{
font-size:16px;
line-height:1.9;
color:#667085;
margin:0;
}

/*========================================
ABOUT CTA
========================================*/
.about-call{
padding:0 20px 110px;
background:#ffffff;
}

.about-call__wrapper{
position:relative;
overflow:hidden;
padding:70px;
border-radius:30px;
background:linear-gradient(135deg,#00A8DE 0%,#008DC1 100%);
text-align:center;
box-shadow:0 30px 70px rgba(0,168,222,.18);
}

.about-call__wrapper::before{
content:"";
position:absolute;
top:-120px;
right:-120px;
width:280px;
height:280px;
border-radius:50%;
background:rgba(255,255,255,.08);
}

.about-call__wrapper::after{
content:"";
position:absolute;
bottom:-90px;
left:-90px;
width:220px;
height:220px;
border-radius:50%;
background:rgba(255,255,255,.06);
}

.about-call__wrapper>*{
position:relative;
z-index:2;
}

.about-call__wrapper span{
display:inline-block;
margin-bottom:16px;
font-size:14px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
color:rgba(255,255,255,.88);
}

.about-call__wrapper h2{
font-size:42px;
font-weight:800;
line-height:1.2;
color:#ffffff;
margin-bottom:18px;
}

.about-call__wrapper p{
max-width:760px;
margin:0 auto 35px;
font-size:17px;
line-height:1.9;
color:rgba(255,255,255,.92);
}

.about-call__buttons{
display:flex;
justify-content:center;
align-items:center;
gap:18px;
flex-wrap:wrap;
}

.about-call__buttons .btn{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:220px;
height:58px;
padding:0 30px;
border-radius:14px;
font-size:16px;
font-weight:700;
text-decoration:none;
transition:.30s;
}

.about-call__buttons .btn-outline{
background:#ffffff;
color:#0f2235;
}

.about-call__buttons .btn-outline:hover{
background:#eef8fc;
transform:translateY(-3px);
}

.about-call__buttons .btn-primary{
background:#25D366;
color:#ffffff;
}

.about-call__buttons .btn-primary:hover{
background:#1FB557;
transform:translateY(-3px);
}

/*========================================
END ABOUT
========================================*/

/*========================================
CONTACT PAGE
========================================*/

.contact-section{
padding:110px 0;
background:#ffffff;
}

.contact-info{
padding:0 20px;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:24px;
margin-bottom:70px;
}

.contact-card{
background:#ffffff;
border:1px solid #edf2f7;
border-radius:24px;
padding:35px 30px;
text-align:center;
box-shadow:0 15px 45px rgba(15,23,42,.05);
transition:.35s;
}

.contact-card:hover{
transform:translateY(-8px);
box-shadow:0 25px 55px rgba(15,23,42,.10);
border-color:#d7ebf6;
}

.contact-card__icon{
width:72px;
height:72px;
margin:0 auto 22px;
display:flex;
align-items:center;
justify-content:center;
background:#eef9fd;
border-radius:20px;
}

.contact-card__icon img{
width:38px;
height:38px;
}

.contact-card h3{
font-size:22px;
font-weight:700;
color:#0f2235;
margin-bottom:15px;
}

.contact-card p,
.contact-card a{
font-size:16px;
line-height:1.8;
color:#667085;
text-decoration:none;
transition:.30s;
word-break:break-word;
}

.contact-card a:hover{
color:#00A8DE;
}

.contact-wrapper{
padding: 0 20px;
display:grid;
grid-template-columns:1.1fr .9fr;
gap:45px;
align-items:start;
}

.contact-form{
background:#ffffff;
border:1px solid #edf2f7;
border-radius:28px;
padding:45px;
box-shadow:0 20px 60px rgba(15,23,42,.06);
}

.contact-form__header{
margin-bottom:35px;
}

.contact-form__header span{
display:inline-flex;
align-items:center;
padding:8px 18px;
border-radius:50px;
background:#e8f8fd;
color:#00A8DE;
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
margin-bottom:18px;
}

.contact-form__header h2{
font-size:38px;
font-weight:800;
line-height:1.2;
color:#0f2235;
margin-bottom:15px;
}

.contact-form__header p{
font-size:16px;
line-height:1.8;
color:#667085;
}

.contact-form__row{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:18px;
margin-bottom:18px;
}

.contact-form__group{
margin-bottom:18px;
}

.contact-form__group:last-child{
margin-bottom:0;
}

.contact-form input,
.contact-form textarea{
width:100%;
height:58px;
padding:0 20px;
border:1px solid #e5e7eb;
border-radius:14px;
background:#ffffff;
font-size:15px;
font-family:inherit;
transition:.30s;
outline:none;
}

.contact-form textarea{
height:170px;
padding:18px 20px;
resize:none;
}

.contact-form input:focus,
.contact-form textarea:focus{
border-color:#00A8DE;
box-shadow:0 0 0 4px rgba(0,168,222,.10);
}

.contact-form .offer-button{
width:100%;
height:58px;
border:none;
border-radius:14px;
background:#25D366;
color:#ffffff;
font-size:16px;
font-weight:700;
cursor:pointer;
transition:.30s;
}

.contact-form .offer-button:hover{
background:#1FB557;
transform:translateY(-2px);
}

.contact-sidebar{
display:flex;
flex-direction:column;
gap:30px;
}

.contact-map{
overflow:hidden;
border-radius:28px;
border:1px solid #edf2f7;
box-shadow:0 20px 60px rgba(15,23,42,.06);
background:#ffffff;
}

.contact-map iframe{
display:block;
width:100%;
height:420px;
border:0;
}

.contact-social{
padding:35px;
background:#ffffff;
border:1px solid #edf2f7;
border-radius:28px;
box-shadow:0 20px 60px rgba(15,23,42,.06);
}

.contact-social h3{
font-size:26px;
font-weight:700;
color:#0f2235;
margin-bottom:12px;
}

.contact-social p{
font-size:15px;
line-height:1.8;
color:#667085;
margin-bottom:25px;
}

.contact-social__links{
display:flex;
flex-wrap:wrap;
gap:14px;
}

.contact-social__links a{
width:54px;
height:54px;
display:flex;
align-items:center;
justify-content:center;
border-radius:16px;
background:#eef9fd;
transition:.30s;
}

.contact-social__links a:hover{
background:#00A8DE;
transform:translateY(-4px);
}

.contact-social__links img{
width:24px;
height:24px;
transition:.30s;
}

.contact-social__links a:hover img{
filter:brightness(0) invert(1);
}

.contact-box{
padding:40px;
border-radius:28px;
background:linear-gradient(135deg,#00A8DE 0%,#008DC1 100%);
color:#ffffff;
box-shadow:0 30px 70px rgba(0,168,222,.18);
position:relative;
overflow:hidden;
}

.contact-box::before{
content:"";
position:absolute;
top:-100px;
right:-100px;
width:220px;
height:220px;
border-radius:50%;
background:rgba(255,255,255,.08);
}

.contact-box::after{
content:"";
position:absolute;
bottom:-80px;
left:-80px;
width:180px;
height:180px;
border-radius:50%;
background:rgba(255,255,255,.05);
}

.contact-box>*{
position:relative;
z-index:2;
}

.contact-box span{
display:inline-block;
margin-bottom:15px;
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
color:rgba(255,255,255,.85);
}

.contact-box h3{
font-size:32px;
font-weight:800;
line-height:1.25;
margin-bottom:18px;
}

.contact-box p{
font-size:16px;
line-height:1.8;
margin-bottom:30px;
color:rgba(255,255,255,.92);
}

.contact-box .btn{
display:flex;
align-items:center;
justify-content:center;
width:100%;
height:56px;
border-radius:14px;
text-decoration:none;
font-size:16px;
font-weight:700;
margin-bottom:14px;
transition:.30s;
}

.contact-box .btn:last-child{
margin-bottom:0;
}

.contact-box .btn-outline{
background:#ffffff;
color:#0f2235;
}

.contact-box .btn-outline:hover{
background:#eef8fc;
transform:translateY(-3px);
}

.contact-box .btn-primary{
background:#25D366;
color:#ffffff;
}

.contact-box .btn-primary:hover{
background:#1FB557;
transform:translateY(-3px);
}

/*========================================
END CONTACT
========================================*/

/*========================================
SERVICES PAGE
========================================*/
.services-page{
padding:110px 0;
background:#fff;
}

.services-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:60px;
padding: 0 20px;
}

.service-card{
background:#fff;
border:1px solid #edf2f7;
border-radius:28px;
overflow:hidden;
box-shadow:0 20px 60px rgba(15,23,42,.05);
transition:.35s;
}

.service-card:hover{
transform:translateY(-10px);
box-shadow:0 35px 70px rgba(15,23,42,.12);
}

.service-card__image{
display:block;
position:relative;
overflow:hidden;
height:250px;
}

.service-card__image img{
width:100%;
height:100%;
object-fit:cover;
transition:.5s;
}

.service-card:hover .service-card__image img{
transform:scale(1.08);
}

.service-card__overlay{
position:absolute;
inset:0;
display:flex;
align-items:center;
justify-content:center;
background:rgba(0,168,222,.82);
opacity:0;
transition:.35s;
}

.service-card:hover .service-card__overlay{
opacity:1;
}

.service-card__overlay span{
display:flex;
align-items:center;
justify-content:center;
width:110px;
height:44px;
background:#fff;
border-radius:50px;
font-size:14px;
font-weight:700;
color:#0f2235;
}

.service-card__content{
padding:32px;
}

.service-card__content h3{
margin:0 0 15px;
font-size:28px;
font-weight:800;
line-height:1.25;
}

.service-card__content h3 a{
color:#0f2235;
text-decoration:none;
transition:.30s;
}

.service-card__content h3 a:hover{
color:#00A8DE;
}

.service-card__content p{
margin:0;
font-size:16px;
line-height:1.9;
color:#667085;
}

.service-card__link{
display:inline-flex;
align-items:center;
gap:10px;
margin-top:28px;
font-size:15px;
font-weight:700;
color:#00A8DE;
text-decoration:none;
transition:.30s;
}

.service-card__link svg{
width:18px;
height:18px;
transition:.30s;
}

.service-card:hover .service-card__link{
color:#0f2235;
}

.service-card:hover .service-card__link svg{
transform:translateX(6px);
}

.services-cta{
padding:0 20px 110px;
background:#fff;
}

.services-cta__wrapper{
position:relative;
overflow:hidden;
padding:70px;
border-radius:30px;
background:linear-gradient(135deg,#00A8DE 0%,#008BC5 100%);
text-align:center;
box-shadow:0 35px 80px rgba(0,168,222,.18);
}

.services-cta__wrapper::before{
content:"";
position:absolute;
top:-120px;
right:-120px;
width:260px;
height:260px;
border-radius:50%;
background:rgba(255,255,255,.08);
}

.services-cta__wrapper::after{
content:"";
position:absolute;
bottom:-100px;
left:-100px;
width:220px;
height:220px;
border-radius:50%;
background:rgba(255,255,255,.05);
}

.services-cta__wrapper>*{
position:relative;
z-index:2;
}

.services-cta__wrapper span{
display:inline-block;
margin-bottom:18px;
font-size:13px;
font-weight:700;
letter-spacing:1px;
text-transform:uppercase;
color:rgba(255,255,255,.85);
}

.services-cta__wrapper h2{
margin:0 0 20px;
font-size:42px;
font-weight:800;
line-height:1.25;
color:#fff;
}

.services-cta__wrapper p{
max-width:760px;
margin:0 auto 35px;
font-size:17px;
line-height:1.9;
color:rgba(255,255,255,.92);
}

.services-cta__buttons{
display:flex;
justify-content:center;
gap:18px;
flex-wrap:wrap;
}

.services-cta__buttons .btn{
display:flex;
align-items:center;
justify-content:center;
min-width:210px;
height:56px;
padding:0 30px;
border-radius:14px;
font-size:16px;
font-weight:700;
text-decoration:none;
transition:.35s;
}

.services-cta__buttons .btn-outline{
background:#fff;
color:#0f2235;
}

.services-cta__buttons .btn-outline:hover{
background:#eef8fc;
transform:translateY(-4px);
}

.services-cta__buttons .btn-primary{
background:#25D366;
color:#fff;
}

.services-cta__buttons .btn-primary:hover{
background:#1FB557;
transform:translateY(-4px);
}

/*========================================
END SERVICES
========================================*/

/*========================================
SERVICE DETAIL
========================================*/
.service-showcase{
padding:110px 20px;
background:#fff;
}

.service-showcase__wrapper{
display:grid;
grid-template-columns:750px 1fr;
gap:50px;
align-items:center;
}

.service-showcase__image{
position:relative;
}

.service-showcase__shape{
position:absolute;
top:-25px;
left:-25px;
width:170px;
height:170px;
border-radius:30px;
background:#e9f8fd;
z-index:0;
}

.service-showcase__image img{
position:relative;
z-index:2;
display:block;
width:100%;
border-radius:28px;
box-shadow:0 30px 80px rgba(15,23,42,.10);
}

.service-showcase__content .section-title{
margin-bottom:18px;
}

.service-showcase__content h2{
margin:0 0 22px;
font-size:48px;
font-weight:800;
line-height:1.2;
color:#0f2235;
}

.service-showcase__content>p{
margin:0;
font-size:17px;
line-height:1.9;
color:#667085;
}

.service-showcase__features{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:22px;
margin:40px 0;
}

.service-feature{
display:flex;
align-items:flex-start;
gap:16px;
padding:22px;
background:#fff;
border:1px solid #edf2f7;
border-radius:20px;
transition:.35s;
box-shadow:0 15px 45px rgba(15,23,42,.04);
}

.service-feature:hover{
transform:translateY(-6px);
box-shadow:0 25px 60px rgba(15,23,42,.08);
}

.service-feature__icon{
width:46px;
height:46px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#00A8DE;
color:#fff;
font-size:18px;
font-weight:700;
flex-shrink:0;
}

.service-feature h4{
margin:2px 0 8px;
font-size:18px;
font-weight:700;
color:#0f2235;
}

.service-feature p{
margin:0;
font-size:15px;
line-height:1.7;
color:#667085;
}

.service-showcase__buttons{
display:flex;
gap:18px;
flex-wrap:wrap;
}

.service-showcase__buttons .btn{
display:flex;
align-items:center;
justify-content:center;
min-width:200px;
height:56px;
padding:0 30px;
border-radius:14px;
text-decoration:none;
font-size:16px;
font-weight:700;
transition:.35s;
}

.service-showcase__buttons .btn-outline{
background:#fff;
border:1px solid #dbe6ec;
color:#0f2235;
}

.service-showcase__buttons .btn-outline:hover{
background:#eef8fc;
transform:translateY(-4px);
}

.service-showcase__buttons .btn-primary{
background:#25D366;
color:#fff;
}

.service-showcase__buttons .btn-primary:hover{
background:#1FB557;
transform:translateY(-4px);
}

.service-content{
padding:0 0 110px;
background:#fff;
}

.service-content .container{
max-width:980px;
}

.service-content__wrapper{
width:100%;
}

.service-content__text{
font-size:17px;
line-height:2;
color:#667085;
}

.service-content__text>*:first-child{
margin-top:0;
}

.service-content__text h2{
margin:45px 0 20px;
font-size:40px;
font-weight:800;
line-height:1.25;
color:#0f2235;
}

.service-content__text h3{
margin:40px 0 18px;
font-size:32px;
font-weight:800;
line-height:1.3;
color:#0f2235;
}

.service-content__text h4{
margin:35px 0 15px;
font-size:24px;
font-weight:700;
color:#0f2235;
}

.service-content__text p{
margin:0 0 28px;
}

.service-content__text ul,
.service-content__text ol{
margin:0 0 30px 22px;
}

.service-content__text li{
margin-bottom:12px;
}

.service-content__text img{
display:block;
width:100%;
height:auto;
margin:40px 0;
border-radius:24px;
box-shadow:0 20px 60px rgba(15,23,42,.08);
}

.service-content__text table{
width:100%;
border-collapse:collapse;
margin:35px 0;
}

.service-content__text th,
.service-content__text td{
padding:15px 18px;
border:1px solid #e5e7eb;
}

.service-content__text blockquote{
margin:35px 0;
padding:30px;
background:#f7fbfd;
border-left:5px solid #00A8DE;
border-radius:18px;
font-size:18px;
font-style:italic;
color:#344054;
}

.service-process{
padding:0 20px 110px;
background:#fff;
}

.service-process__grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
margin-top:55px;
}

.process-card{
position:relative;
padding:35px 30px;
background:#fff;
border:1px solid #edf2f7;
border-radius:24px;
text-align:center;
box-shadow:0 20px 60px rgba(15,23,42,.05);
transition:.35s;
}

.process-card:hover{
transform:translateY(-8px);
box-shadow:0 30px 70px rgba(15,23,42,.10);
}

.process-card__number{
width:64px;
height:64px;
margin:0 auto 22px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#00A8DE;
color:#fff;
font-size:22px;
font-weight:800;
}

.process-card h3{
margin:0 0 15px;
font-size:22px;
font-weight:700;
color:#0f2235;
}

.process-card p{
margin:0;
font-size:15px;
line-height:1.8;
color:#667085;
}

/*========================================
END SERVICE DETAIL
========================================*/

/*========================================
BLOG SINGLE
========================================*/

.blog-single{
padding:90px 0;
background:#f8fbff;
}

.blog-single .container{
max-width:1150px;
margin:auto;
}

.blog-single-cover{
position:relative;
overflow:hidden;
border-radius:24px;
box-shadow:0 25px 60px rgba(0,0,0,.08);
margin-bottom:-70px;
z-index:1;
}

.blog-single-cover img{
width:100%;
display:block;
transition:.4s;
}

.blog-single-cover:hover img{
transform:scale(1.02);
}

.blog-single-card{
position:relative;
max-width:930px;
margin:0 auto;
background:#fff;
padding:45px 50px;
border-radius:24px;
box-shadow:0 15px 50px rgba(16,41,77,.08);
z-index:5;
}

.blog-single-meta{
display:flex;
align-items:center;
gap:20px;
flex-wrap:wrap;
margin-bottom:25px;
padding-bottom:20px;
border-bottom:1px solid #edf2f7;
}

.blog-meta-item{
display:flex;
align-items:center;
gap:8px;
font-size:15px;
font-weight:600;
color:#6d7b8d;
}

.blog-meta-item i{
color:#14a3df;
font-size:15px;
}

.blog-single-title{
font-size:46px;
line-height:1.25;
font-weight:800;
color:#12233d;
margin:0 0 20px;
}

.blog-single-desc{
font-size:19px;
line-height:1.9;
color:#5f6f82;
margin:0;
}

.blog-single-content{
max-width:930px;
margin:70px auto 0;
font-size:19px;
line-height:2;
color:#4b5b70;
}

.blog-single-content p{
margin:0 0 28px;
}

.blog-single-content h2{
font-size:34px;
font-weight:800;
line-height:1.35;
color:#12233d;
margin:60px 0 25px;
}

.blog-single-content h3{
font-size:28px;
font-weight:700;
line-height:1.4;
color:#12233d;
margin:50px 0 20px;
}

.blog-single-content strong{
font-weight:700;
color:#12233d;
}

.blog-single-content ul,
.blog-single-content ol{
padding-left:24px;
margin:30px 0;
}

.blog-single-content li{
margin-bottom:14px;
}

.blog-single-content img{
width:100%;
border-radius:18px;
margin:45px 0;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.blog-single-content a{
color:#14a3df;
font-weight:600;
text-decoration:none;
transition:.3s;
}

.blog-single-content a:hover{
color:#0b78b2;
}

.blog-single-content blockquote{
margin:45px 0;
padding:35px;
background:#f4fbff;
border-left:5px solid #14a3df;
border-radius:18px;
font-size:20px;
font-weight:600;
line-height:1.8;
color:#12233d;
}

/*========================================
BLOG INFO BOX
========================================*/

.blog-info-box{
display:flex;
align-items:flex-start;
gap:25px;
background:linear-gradient(135deg,#0ea5e9,#0284c7);
padding:40px;
border-radius:24px;
margin:70px auto;
max-width:930px;
box-shadow:0 20px 50px rgba(14,165,233,.25);
}

.blog-info-icon{
width:70px;
height:70px;
min-width:70px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(255,255,255,.15);
border-radius:18px;
font-size:30px;
color:#fff;
}

.blog-info-text h3{
margin:0 0 15px;
font-size:28px;
font-weight:800;
color:#fff;
}

.blog-info-text p{
margin:0;
font-size:17px;
line-height:1.9;
color:rgba(255,255,255,.95);
}

/*========================================
BLOG SHARE
========================================*/

.blog-share{
max-width:930px;
margin:60px auto 0;
padding-top:35px;
border-top:1px solid #e8eef5;
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
gap:20px;
}

.blog-share h4{
margin:0;
font-size:24px;
font-weight:800;
color:#12233d;
}

.blog-share-buttons{
display:flex;
align-items:center;
gap:15px;
}

.blog-share-buttons a{
width:52px;
height:52px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#eef6fb;
color:#12233d;
font-size:18px;
text-decoration:none;
transition:.35s;
}

.blog-share-buttons a:hover{
background:#14a3df;
color:#fff;
transform:translateY(-4px);
box-shadow:0 15px 30px rgba(20,163,223,.25);
}

/*========================================
BLOG CTA
========================================*/

.blog-cta{
padding:100px 0;
background:#fff;
}

.blog-cta-box{
position:relative;
overflow:hidden;
padding:70px;
border-radius:28px;
background:linear-gradient(135deg,#0ea5e9,#0369a1);
text-align:center;
box-shadow:0 25px 60px rgba(0,0,0,.08);
}

.blog-cta-box::before{
content:"";
position:absolute;
width:350px;
height:350px;
border-radius:50%;
background:rgba(255,255,255,.05);
top:-150px;
right:-120px;
}

.blog-cta-box::after{
content:"";
position:absolute;
width:240px;
height:240px;
border-radius:50%;
background:rgba(255,255,255,.05);
bottom:-120px;
left:-80px;
}

.blog-cta-box>*{
position:relative;
z-index:2;
}

.blog-cta-box span{
display:inline-block;
margin-bottom:18px;
font-size:14px;
font-weight:700;
letter-spacing:1.2px;
text-transform:uppercase;
color:#fff;
}

.blog-cta-box h2{
margin:0 0 25px;
font-size:48px;
font-weight:800;
line-height:1.3;
color:#fff;
}

.blog-cta-box p{
max-width:760px;
margin:0 auto;
font-size:18px;
line-height:1.9;
color:rgba(255,255,255,.92);
}

.blog-cta-buttons{
display:flex;
justify-content:center;
align-items:center;
gap:18px;
flex-wrap:wrap;
margin-top:45px;
}

.blog-cta-buttons a{
min-width:220px;
height:58px;
display:flex;
align-items:center;
justify-content:center;
border-radius:14px;
font-size:16px;
font-weight:700;
text-decoration:none;
transition:.35s;
}

.blog-cta-buttons .phone-btn{
background:#fff;
color:#12233d;
}

.blog-cta-buttons .phone-btn:hover{
transform:translateY(-4px);
box-shadow:0 15px 30px rgba(0,0,0,.18);
}

.blog-cta-buttons .offer-btn{
background:#22c55e;
color:#fff;
}

.blog-cta-buttons .offer-btn:hover{
background:#16a34a;
transform:translateY(-4px);
box-shadow:0 15px 30px rgba(0,0,0,.18);
}

.offer-intro{
padding:50px 30px;
background:#f8fbff;
position:relative;
overflow:hidden;
}
.offer-intro::before{
content:"";
position:absolute;
width:550px;
height:550px;
border-radius:50%;
background:rgba(0,126,255,.06);
top:-220px;
left:-220px;
filter:blur(40px);
}
.offer-intro::after{
content:"";
position:absolute;
width:500px;
height:500px;
border-radius:50%;
background:rgba(0,126,255,.04);
right:-180px;
bottom:-180px;
filter:blur(50px);
}
.offer-grid{
display:grid;
grid-template-columns:1.1fr .9fr;
gap:60px;
align-items:center;
position:relative;
z-index:2;
}
.offer-left{
position:relative;
}
.offer-badge{
display:inline-flex;
align-items:center;
background:#e8f3ff;
color:#007eff;
border-radius:50px;
font-size:35px;
font-weight:700;
letter-spacing:.4px;
margin-bottom:10px;
}
.offer-badge i{
font-size:16px;
}
.offer-left h2{
font-size:48px;
line-height:1.2;
font-weight:800;
color:#14213d;
margin:0 0 25px;
}
.offer-left>p{
font-size:17px;
line-height:30px;
color:#6b7280;
margin:0 0 45px;
max-width:620px;
}
.offer-items{
display:flex;
flex-direction:column;
gap:22px;
}
.offer-item{
display:flex;
align-items:flex-start;
gap:18px;
background:#fff;
border-radius:18px;
padding:24px;
box-shadow:0 15px 45px rgba(0,0,0,.05);
transition:.35s;
}
.offer-item:hover{
transform:translateY(-6px);
box-shadow:0 25px 60px rgba(0,0,0,.08);
}
.offer-item-icon{
width:62px;
height:62px;
border-radius:16px;
background:#007eff;
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
}
.offer-item-icon i{
font-size:24px;
color:#fff;
}
.offer-item-content h3{
font-size:20px;
font-weight:700;
color:#14213d;
margin:0 0 10px;
}
.offer-item-content p{
margin:0;
font-size:15px;
line-height:28px;
color:#6b7280;
}
.offer-right{
position:relative;
}
.offer-form-box{
background:#fff;
border-radius:26px;
padding:40px;
box-shadow:0 25px 80px rgba(0,0,0,.08);
position:sticky;
top:120px;
}
.offer-form-head{
margin-bottom:30px;
}
.offer-form-head h3{
font-size:30px;
font-weight:800;
color:#14213d;
margin:0 0 10px;
}
.offer-form-head p{
margin:0;
font-size:16px;
line-height:28px;
color:#6b7280;
}
.offer-services{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:12px;
margin-bottom:25px;
}
.offer-services label{
cursor:pointer;
}
.offer-services input{
display:none;
}
.offer-services span{
display:flex;
align-items:center;
justify-content:center;
height:80px;
border:2px solid #e6edf5;
border-radius:12px;
font-size:14px;
font-weight:600;
color:#4b5563;
transition:.3s;
}
.offer-services input:checked+span{
background:#007eff;
border-color:#007eff;
color:#fff;
}
.offer-form-group{
margin-bottom:18px;
position:relative;
}
.offer-form input,
.offer-form textarea{
width:100%;
border:2px solid #edf2f7;
border-radius:14px;
padding:16px 18px;
font-size:15px;
font-family:inherit;
outline:none;
transition:.3s;
background:#fff;
}
.offer-form textarea{
resize:none;
min-height:140px;
}
.offer-form input:focus,
.offer-form textarea:focus{
border-color:#007eff;
box-shadow:0 0 0 4px rgba(0,126,255,.12);
}
.offer-submit{
width:100%;
height:58px;
border:none;
border-radius:14px;
background:#25d366;
color:#fff;
font-size:16px;
font-weight:700;
display:flex;
align-items:center;
justify-content:center;
gap:10px;
cursor:pointer;
transition:.3s;
}
.offer-submit i{
font-size:22px;
}
.offer-submit:hover{
background:#20ba5a;
transform:translateY(-3px);
box-shadow:0 20px 40px rgba(37,211,102,.28);
}
.district-results{
position:absolute;
top:100%;
left:0;
width:100%;
background:#fff;
border-radius:14px;
box-shadow:0 20px 40px rgba(0,0,0,.08);
overflow:hidden;
display:none;
z-index:50;
}
.district-results.active{
display:block;
}
.district-results div{
padding:14px 18px;
cursor:pointer;
font-size:14px;
transition:.25s;
}
.district-results div:hover{
background:#007eff;
color:#fff;
}

.section-heading{
text-align:center;
max-width:760px;
margin:0 auto 70px;
}
.section-heading span{
display:inline-block;
padding:10px 22px;
background:#e8f3ff;
color:#007eff;
font-size:14px;
font-weight:700;
border-radius:50px;
letter-spacing:.5px;
margin-bottom:20px;
}
.section-heading h2{
font-size:42px;
font-weight:800;
color:#14213d;
margin:0 0 20px;
line-height:1.2;
}
.section-heading p{
margin:0;
font-size:17px;
line-height:30px;
color:#6b7280;
}
.offer-process{
padding:80px 30px;
background:#fff;
position:relative;
overflow:hidden;
}
.offer-process-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}
.process-card{
background:#fff;
border-radius:22px;
padding:40px 30px;
position:relative;
text-align:center;
box-shadow:0 15px 50px rgba(0,0,0,.05);
transition:.35s;
overflow:hidden;
}
.process-card::before{
content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:5px;
background:#007eff;
transform:scaleX(0);
transition:.35s;
}
.process-card:hover::before{
transform:scaleX(1);
}
.process-card:hover{
transform:translateY(-8px);
box-shadow:0 25px 60px rgba(0,0,0,.08);
}
.process-number{
position:absolute;
top:20px;
right:22px;
font-size:48px;
font-weight:800;
color:#edf2f7;
line-height:1;
}
.process-icon{
width:80px;
height:80px;
margin:0 auto 25px;
border-radius:50%;
background:#007eff;
display:flex;
align-items:center;
justify-content:center;
}
.process-icon i{
font-size:30px;
color:#fff;
}
.process-card h3{
font-size:22px;
font-weight:700;
margin:0 0 15px;
color:#14213d;
}
.process-card p{
margin:0;
font-size:15px;
line-height:28px;
color:#6b7280;
}
.offer-services-section{
padding:110px 0;
background:#f8fbff;
position:relative;
}
.offer-service-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}
.offer-service-card{
display:block;
position:relative;
overflow:hidden;
border-radius:24px;
height:340px;
box-shadow:0 20px 60px rgba(0,0,0,.06);
}
.offer-service-card img{
width:100%;
height:100%;
object-fit:cover;
transition:.6s;
}
.offer-service-overlay{
position:absolute;
left:0;
right:0;
bottom:0;
padding:35px;
background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.1));
transition:.35s;
}
.offer-service-overlay h3{
margin:0;
font-size:28px;
font-weight:700;
color:#fff;
}
.offer-service-overlay span{
display:inline-flex;
align-items:center;
gap:10px;
margin-top:18px;
font-size:15px;
font-weight:600;
color:#fff;
opacity:0;
transform:translateY(15px);
transition:.35s;
}
.offer-service-card:hover img{
transform:scale(1.08);
}
.offer-service-card:hover .offer-service-overlay{
padding-bottom:45px;
}
.offer-service-card:hover .offer-service-overlay span{
opacity:1;
transform:translateY(0);
}
.offer-service-overlay i{
font-size:14px;
transition:.3s;
}
.offer-service-card:hover .offer-service-overlay i{
transform:translateX(6px);
}
.offer-service-card::after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(180deg,rgba(0,126,255,0) 20%,rgba(0,126,255,.25) 100%);
opacity:0;
transition:.35s;
}
.offer-service-card:hover::after{
opacity:1;
}
.offer-service-card:hover{
box-shadow:0 30px 70px rgba(0,0,0,.12);
}
.offer-form-row{
display:flex;
gap:18px;
margin-bottom:18px;
}
.offer-form-row .offer-form-group{
flex:1;
margin-bottom:0;
}
