/* --- Global & Theme Variables --- */
:root {
    --primary-blue: #1b86e6;
    --dark-blue: #0b4b8f;
    --text-color: #333333;
    --light-bg: #f8fafc;
    --card-border: #e2e8f0;
}

body {
    font-family: 'Poppins', sans-serif;
    color: var(--text-color);
    background-color: #ffffff;
}

/* --- Contact Hero Section (Fixed Text Cut-off) --- */
.contact-hero {
    background-color: var(--primary-blue);
    color: #ffffff;
    padding: 60px 0 90px 0; /* Expanded padding creates natural height without cutting off text */
    text-align: center;
}

.contact-hero h1 {
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.contact-hero p {
    font-size: 1.05rem;
    opacity: 0.95;
    max-width: 620px;
    margin: 0 auto;
}

/* --- Contact Info Cards --- */
.contact-info {
    margin-top: -30px;
    padding-bottom: 30px;
}

.info-card {
    background: #ffffff;
    border: 1px solid var(--card-border);
    border-radius: 12px;
    padding: 35px 20px;
    text-align: center;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
    height: 100%;
}

.info-icon {
    width: 46px;
    height: 46px;
    background-color: var(--primary-blue);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px auto;
    font-size: 1.25rem;
}

.info-card h4 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1e293b;
}

.info-card p {
    font-size: 0.9rem;
    color: #64748b;
    line-height: 1.5;
    margin-bottom: 0;
}

/* --- Contact Section Styling --- */
.contact-section {
    padding: 20px 0 60px 0;
}

.contact-box {
    background: #ffffff;
    border: 1px solid var(--card-border);
    border-radius: 12px;
    padding: 35px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
}

/* Dedicated Map Card Element (Stops infinite vertical expansion) */
.contact-box-map {
    background: #ffffff;
    border: 1px solid var(--card-border);
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
    display: block;
}

.contact-box-map iframe {
    border-radius: 8px;
    display: block;
}

.contact-box h3, 
.contact-box h4 {
    color: #1e293b;
    font-weight: 600;
    margin-bottom: 20px;
}

/* Form Fields Setup */
.contact-box label {
    font-size: 0.85rem;
    font-weight: 500;
    color: #475569;
    margin-bottom: 6px;
}

.contact-box .form-control {
    border: 1px solid var(--card-border);
    border-radius: 6px;
    padding: 10px 14px;
    font-size: 0.9rem;
}

.contact-box .form-control:focus {
    border-color: var(--primary-blue);
    box-shadow: 0 0 0 3px rgba(27, 134, 230, 0.12);
}

/* Action Button */
.contact-box .btn-primary {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
    padding: 11px;
    font-weight: 500;
    border-radius: 6px;
    font-size: 0.95rem;
}

/* Working Hours Content Layout */
.contact-box .table {
    margin-bottom: 0;
}

.contact-box .table tr td {
    padding: 12px 0;
    border-bottom: 1px solid #f1f5f9;
    color: #475569;
    font-size: 0.9rem;
}

.contact-box .table tr:last-child td {
    border-bottom: none;
}

.contact-box .table tr td.text-end {
    font-weight: 500;
    color: #1e293b;
}

/*==================================================
DEPARTMENT HERO SECTION
==================================================*/
.department-hero {
    background-color: var(--primary, #0B5ED7);
    color: var(--white, #ffffff);
    text-align: center;
    /* Structural offset buffers to prevent the absolute header from masking elements */
    margin-top: 124px !important; /* Counterbalances topbar (40px) + navbar (84px) */
    padding: 80px 0 !important;
}

.department-hero-content h1 {
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 12px;
    letter-spacing: -0.5px;
    color: var(--white, #ffffff);
}

.department-hero-content p {
    font-size: 1.05rem;
    opacity: 0.95;
    max-width: 620px;
    margin: 0 auto;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.9);
}

/* --- Responsive Breakpoints --- */
@media (max-width: 992px) {
    .department-hero {
        margin-top: 74px !important; /* Matches responsive header tracking height change */
        padding: 60px 0 !important;
    }
    .department-hero-content h1 {
        font-size: 2.2rem;
    }
}

@media (max-width: 576px) {
    .department-hero {
        margin-top: 68px !important; /* Matches mobile header tracking height change */
        padding: 50px 0 !important;
    }
    .department-hero-content h1 {
        font-size: 1.8rem;
    }
    .department-hero-content p {
        font-size: 0.95rem;
    }
}

/*=========================================
FOOTER
=========================================*/

.footer{

    background:#141d2b;

    color:#fff;

    padding:80px 0 0;

}

.footer .container{

    width:100%;

    max-width:1300px;

    margin:auto;

    padding:0 20px;

    box-sizing:border-box;

}

.footer-grid{

    display:grid;

    grid-template-columns:1.3fr 1fr 1fr 1fr;

    gap:60px;

    align-items:flex-start;

}

.footer-logo{

    display:flex;

    align-items:center;

    gap:15px;

    margin-bottom:25px;

}

.footer-logo img{

    width:65px;

    height:65px;

    object-fit:contain;

}

.footer-logo h3{

    font-size:28px;

    font-weight:700;

    color:#fff;

    margin:0;

}

.footer-logo p{

    color:#9ca8bb;

    margin:0;

    font-size:14px;

}

.footer-text{

    color:#c9d2df;

    line-height:1.9;

    font-size:15px;

    margin-bottom:30px;

}

.footer-social{

    display:flex;

    gap:14px;

}

.footer-social a{

    width:48px;

    height:48px;

    background:#2a3444;

    color:#fff;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    transition:.35s;

}

.footer-social a:hover{

    background:#0d6efd;

    transform:translateY(-4px);

}

.footer h4{

    font-size:24px;

    margin-bottom:28px;

    color:#fff;

}

.footer-links ul,

.footer-contact ul{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-links li,

.footer-contact li{

    margin-bottom:18px;

}

.footer-links a{

    color:#d2d8e3;

    text-decoration:none;

    transition:.3s;

}

.footer-links a:hover{

    color:#0d6efd;

    padding-left:8px;

}

.footer-contact li{

    display:flex;

    gap:15px;

    align-items:flex-start;

}

.footer-contact i{

    color:#0dcaf0;

    margin-top:4px;

    font-size:18px;

}

.footer-contact span{

    color:#d5dce8;

    line-height:1.8;

}

.footer-newsletter p{

    color:#d5dce8;

    line-height:1.8;

    margin-bottom:25px;

}

.newsletter-box{

    display:flex;

    align-items:center;

    width:100%;

    max-width:100%;

    background:#2b3545;

    border-radius:50px;

    overflow:hidden;

    box-sizing:border-box;

}

.newsletter-box input{

    flex:1;

    width:0;

    min-width:0;

    background:transparent;

    border:none;

    color:#fff;

    padding:18px 22px;

    outline:none;

    font-size:15px;

}

.newsletter-box input::placeholder{

    color:#9ea9bb;

}

.newsletter-box button{

    flex:0 0 60px;

    width:60px;

    height:60px;

    border:none;

    background:#0d6efd;

    color:#fff;

    cursor:pointer;

    transition:.3s;

}

.newsletter-box button:hover{

    background:#0b5ed7;

}

.footer-divider{

    border:none;

    border-top:1px solid rgba(255,255,255,.08);

    margin:70px 0 30px;

}

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding-bottom:35px;

    flex-wrap:wrap;

    gap:20px;

}

.footer-bottom p{

    color:#b8c2d3;

    margin:0;

}

.footer-bottom-links{

    display:flex;

    gap:30px;

}

.footer-bottom-links a{

    color:#d2d8e3;

    text-decoration:none;

    transition:.3s;

}

.footer-bottom-links a:hover{

    color:#0d6efd;

}

/*==========================
Responsive
==========================*/

@media(max-width:1100px){

.footer-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.footer{

padding:60px 0 0;

overflow-x:hidden;

}

.footer .container{

padding:0 20px;

}

.footer-grid{

grid-template-columns:1fr;

gap:45px;

}

.footer-logo{

flex-wrap:wrap;

}

.footer-social{

flex-wrap:wrap;

}

.footer-contact li{

word-break:break-word;

}

.newsletter-box{

width:100%;

}

.footer-bottom{

flex-direction:column;

text-align:center;

gap:15px;

}

.footer-bottom-links{

justify-content:center;

flex-wrap:wrap;

gap:20px;

}

.footer h4{

font-size:22px;

}

}

/*=========================================
TESTIMONIALS
=========================================*/

.testimonial-section{

    padding:100px 0;

    background:#fff;

}

.testimonial-heading{

    text-align:center;

    margin-bottom:60px;

}

.testimonial-heading .section-tag{

    display:inline-block;

    color:#0d6efd;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.testimonial-heading h2{

    font-size:46px;

    font-weight:700;

    color:#14213d;

    line-height:1.2;

    margin:0;

}

.testimonial-slider{

    position:relative;

    overflow:hidden;

}

.testimonial-track{

    position:relative;

}

.testimonial-card{

    width:90%;

    max-width:980px;

    margin:0 auto;

    background:#fff;

    border:1px solid #dde6f3;

    border-radius:28px;

    padding:45px;

    display:none;

    align-items:center;

    gap:40px;

    box-shadow:0 15px 45px rgba(18,38,63,.08);

    animation:fadeIn .6s ease;

}

.testimonial-card.active{

    display:flex;

}

.testimonial-left{

    flex:0 0 120px;

}

.testimonial-left img{

    width:110px;

    height:110px;

    border-radius:50%;

    object-fit:cover;

    border:6px solid #edf3fb;

}

.testimonial-right{

    flex:1;

}

.testimonial-stars{

    margin-bottom:18px;

}

.testimonial-stars i{

    color:#d9d9d9;

    font-size:20px;

    margin-right:4px;

}

.testimonial-stars i.active{

    color:#23b5d3;

}

.testimonial-message{

    font-size:20px;

    line-height:1.8;

    color:#4d5d73;

    font-style:italic;

    max-width:650px;

    margin-bottom:28px;

}

.testimonial-right h4{

    font-size:22px;

    font-weight:700;

    color:#14213d;

    margin-bottom:5px;

}

.testimonial-right span{

    color:#7d8da6;

    font-size:16px;

}

.testimonial-dots{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:8px;

    margin-top:35px;

}

.testimonial-dots span{

    width:10px;

    height:10px;

    border-radius:50%;

    background:#d7dce6;

    cursor:pointer;

    transition:.3s;

}

.testimonial-dots span.active{

    width:28px;

    border-radius:20px;

    background:#0d6efd;

}

@keyframes fadeIn{

from{

opacity:0;

transform:translateY(20px);

}

to{

opacity:1;

transform:translateY(0);

}

}

/*==========================
Responsive
==========================*/

@media(max-width:992px){

.testimonial-heading h2{

font-size:38px;

}

.testimonial-card{

width:95%;

padding:35px;

flex-direction:column;

text-align:center;

gap:25px;

}

.testimonial-left{

flex:none;

}

.testimonial-message{

max-width:100%;

font-size:18px;

}

}

@media(max-width:768px){

.testimonial-section{

padding:70px 0;

}

.testimonial-heading h2{

font-size:32px;

}

.testimonial-card{

padding:28px 22px;

border-radius:22px;

}

.testimonial-left img{

width:95px;

height:95px;

}

.testimonial-right h4{

font-size:20px;

}

.testimonial-message{

font-size:17px;

line-height:1.7;

}

}

/*==================================================
SERVICES HERO
==================================================*/

.page-hero{

    background:linear-gradient(135deg,#1B75E8,#2F80ED) !important;

    margin-top:124px;

    padding:80px 0;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

}

.page-hero .container{

    width:100%;

    max-width:1200px;

    margin:auto;

}

.page-hero h1{

    color:#fff !important;

    font-size:56px;

    font-weight:800;

    margin-bottom:10px;

}

.page-hero p{

    color:rgba(255,255,255,.92) !important;

    max-width:700px;

    margin:auto;

    font-size:18px;

    line-height:1.7;

}

@media(max-width:992px){

.page-hero{

margin-top:74px;

padding:60px 0;

}

.page-hero h1{

font-size:42px;

}

}

@media(max-width:576px){

.page-hero{

margin-top:68px;

padding:50px 0;

}

.page-hero h1{

font-size:34px;

}

.page-hero p{

font-size:16px;

}

}

/* ==========================================================================
   SERVICES CONTAINER & GRID
   ========================================================================== */
.services-page {
    background-color: #F4F7FB; 
    padding-top: 60px;
    padding-bottom: 100px; /* Generous breathing space before your footer */
}

.services-page .container {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 Columns across expansive displays */
    gap: 30px;
}

/* ==========================================================================
   PREMIUM CARDS STYLE
   ========================================================================== */
.service-card {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 40px 30px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    border: 1px solid rgba(226, 232, 240, 0.5);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    word-wrap: break-word; /* Prevents overflow strings like "General Consultation" */
}

.service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06);
}

/* Uniform Squircle Icon Badges */
.service-icon {
    width: 68px;
    height: 68px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}

.service-icon i {
    font-size: 24px;
    color: #FFFFFF;
}

/* Service Card Typography */
.service-card h4 {
    font-size: 22px;
    font-weight: 600;
    color: #2D3748;
    margin-bottom: 14px;
    line-height: 1.3;
}

.service-card p {
    font-size: 15px;
    color: #718096;
    line-height: 1.6;
    margin: 0;
}

/* ==========================================================================
   DYNAMIC COLOR BADGES FOR ICONS
   ========================================================================== */
.icon-blue    { background: #3B82F6; box-shadow: 0 8px 20px rgba(59, 130, 246, 0.3); }
.icon-green   { background: #10B981; box-shadow: 0 8px 20px rgba(16, 185, 129, 0.3); }
.icon-purple  { background: #8B5CF6; box-shadow: 0 8px 20px rgba(139, 92, 246, 0.3); }
.icon-pink    { background: #EC4899; box-shadow: 0 8px 20px rgba(236, 72, 153, 0.3); }
.icon-orange  { background: #F97316; box-shadow: 0 8px 20px rgba(249, 115, 22, 0.3); }
.icon-indigo  { background: #4F46E5; box-shadow: 0 8px 20px rgba(79, 70, 229, 0.3); }
.icon-red     { background: #EF4444; box-shadow: 0 8px 20px rgba(239, 68, 68, 0.3); }
.icon-cyan    { background: #06B6D4; box-shadow: 0 8px 20px rgba(6, 182, 212, 0.3); }
.icon-crimson { background: #E11D48; box-shadow: 0 8px 20px rgba(225, 29, 72, 0.3); }
.icon-teal    { background: #0D9488; box-shadow: 0 8px 20px rgba(13, 148, 136, 0.3); }
.icon-amber   { background: #D97706; box-shadow: 0 8px 20px rgba(217, 119, 6, 0.3); }
.icon-navy    { background: #1E3A8A; box-shadow: 0 8px 20px rgba(30, 58, 138, 0.3); }

/* ==========================================================================
   MOBILE & TABLET RESPONSIVENESS (Fixes Image_285188 Layout Bug)
   ========================================================================== */
@media (max-width: 1200px) {
    .services-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .page-hero {
        padding: 60px 0;
    }
    .page-hero h1 {
        font-size: 38px;
    }
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

/* Comprehensive Fix for Smaller Mobile Screen Formats (e.g. your phone screenshot) */
@media (max-width: 600px) {
    .page-hero {
        padding: 50px 0;
    }
    .page-hero h1 {
        font-size: 32px;
        text-align: center !important;
        width: 100%;
    }
    .page-hero p {
        font-size: 15px;
        text-align: center !important;
        padding: 0 10px;
    }
    .services-page {
        padding-top: 30px;
        padding-bottom: 70px; /* Secure bottom gutter before the footer elements */
    }
    .services-grid {
        grid-template-columns: 1fr !important; /* Force items into a clean single block stack */
        gap: 24px;
    }
    .service-card {
        padding: 35px 20px;
        max-width: 100%;
    }
    .service-card h4 {
        font-size: 20px;
    }
}

/*=========================================
ABOUT PAGE
=========================================*/

.about-page{

    padding:90px 0;

    background:#fff;

}

.about-page .container{

    max-width:1280px;

}

.about-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.about-image img{

    width:100%;

    border-radius:24px;

    display:block;

    box-shadow:0 20px 60px rgba(0,0,0,.12);

}

.about-tag{

    display:inline-block;

    color:#0d6efd;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.about-content h2{

    font-size:48px;

    font-weight:800;

    color:#162544;

    line-height:1.15;

    margin-bottom:25px;

}

.about-content p{

    font-size:17px;

    color:#5d6b82;

    line-height:1.9;

    margin-bottom:20px;

}

/* Tablet */

@media(max-width:991px){

.about-grid{

grid-template-columns:1fr;

gap:50px;

}

.about-content{

text-align:center;

}

.about-content h2{

font-size:38px;

}

}

/* Mobile */

@media(max-width:768px){

.about-page{

padding:70px 0;

}

.about-content h2{

font-size:32px;

}

.about-content p{

font-size:16px;

}

}

/*=========================================
MISSION & VISION
=========================================*/

.mission-vision{

    background:#f5fbff;

    padding:80px 0;

}

.mission-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

}

.mission-card{

    background:#fff;

    border-radius:18px;

    padding:35px;

    border:1px solid #e5eef9;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.mission-icon{

    width:60px;

    height:60px;

    border-radius:15px;

    background:#2563eb;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

    margin-bottom:20px;

}

.mission-icon.vision{

    background:#14b8a6;

}

.mission-card h3{

    font-size:24px;

    margin-bottom:15px;

    color:#162544;

}

.mission-card p{

    color:#6b7280;

    line-height:1.8;

}

/*=========================================
VALUES
=========================================*/

.values-section{

    padding:90px 0;

    background:#fff;

    text-align:center;

}

.values-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

    margin-top:45px;

}

.value-card{

    background:#fff;

    padding:35px 25px;

    border-radius:18px;

    border:1px solid #e7edf6;

    transition:.3s;

    box-shadow:0 10px 25px rgba(0,0,0,.04);

}

.value-card:hover{

    transform:translateY(-8px);

}

.value-icon{

    width:55px;

    height:55px;

    margin:0 auto 20px;

    border-radius:15px;

    background:#21b8d5;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:20px;

}

.value-card h4{

    margin-bottom:12px;

    color:#162544;

}

.value-card p{

    color:#6b7280;

    line-height:1.7;

    font-size:15px;

}

/* Responsive */

@media(max-width:991px){

.mission-grid{

grid-template-columns:1fr;

}

.values-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.values-grid{

grid-template-columns:1fr;

}

}

/*=========================================
FAQ
=========================================*/

.faq-section{

padding:90px 0;

background:#fff;

}

.faq-wrapper{

max-width:760px;

margin:auto;

}

.faq-item{

margin-bottom:18px;

border:1px solid #dce6f3;

border-radius:14px;

overflow:hidden;

box-shadow:0 8px 20px rgba(0,0,0,.04);

}

.faq-question{

width:100%;

padding:22px 25px;

border:none;

background:#fff;

display:flex;

justify-content:space-between;

align-items:center;

font-size:17px;

font-weight:600;

cursor:pointer;

color:#162544;

}

.faq-question span{

font-size:24px;

font-weight:bold;

color:#2563eb;

transition:.3s;

}

.faq-answer{

max-height:0;

overflow:hidden;

transition:.35s ease;

background:#f9fbff;

}

.faq-answer p{

padding:0 25px 22px;

line-height:1.8;

color:#6b7280;

margin:0;

}

.faq-item.active .faq-answer{

max-height:250px;

}

.faq-item.active .faq-question span{

transform:rotate(45deg);

}

@media(max-width:768px){

.faq-section{

padding:70px 0;

}

.faq-question{

font-size:16px;

padding:18px;

}

}

/*=========================================
PRIVACY POLICY
=========================================*/

.privacy-section{

padding:90px 0;

background:#f8fbff;

}

.privacy-date{

text-align:center;

color:#6b7280;

margin-bottom:35px;

font-size:14px;

}

.privacy-wrapper{

max-width:760px;

margin:auto;

}

.privacy-card{

background:#fff;

padding:28px 30px;

border-radius:16px;

margin-bottom:20px;

border:1px solid #dfe8f5;

box-shadow:0 10px 30px rgba(0,0,0,.05);

transition:.3s;

}

.privacy-card:hover{

transform:translateY(-5px);

}

.privacy-card h3{

font-size:20px;

color:#162544;

margin-bottom:14px;

}

.privacy-card p{

line-height:1.9;

color:#64748b;

margin:0;

}

@media(max-width:768px){

.privacy-section{

padding:70px 0;

}

.privacy-card{

padding:24px;

}

}

/*=========================================
PARTNERS + CTA
=========================================*/

.partners-section{

padding:90px 0;

background:#fff;

}

.partners-title{

text-align:center;

font-size:13px;

font-weight:700;

letter-spacing:2px;

text-transform:uppercase;

color:#667085;

margin-bottom:35px;

}

.partners-grid{

display:grid;

grid-template-columns:repeat(6,1fr);

gap:18px;

margin-bottom:80px;

}

.partner-card{

height:70px;

background:#fff;

border:1px solid #dce6f5;

border-radius:14px;

display:flex;

justify-content:center;

align-items:center;

font-weight:600;

color:#475467;

transition:.3s;

}

.partner-card:hover{

border-color:#0d6efd;

transform:translateY(-5px);

box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.cta-box{

background:linear-gradient(135deg,#1f6fd6,#2e9cf4);

padding:80px 40px;

border-radius:25px;

text-align:center;

box-shadow:0 25px 60px rgba(30,111,214,.25);

}

.cta-box h2{

font-size:52px;

font-weight:800;

color:#fff;

margin-bottom:18px;

}

.cta-box p{

max-width:650px;

margin:auto;

font-size:18px;

line-height:1.8;

color:rgba(255,255,255,.95);

margin-bottom:40px;

}

.cta-buttons{

display:flex;

justify-content:center;

gap:18px;

flex-wrap:wrap;

}

.btn-primary-cta{

display:inline-flex;

align-items:center;

gap:10px;

padding:18px 34px;

background:#fff;

color:#1f6fd6;

font-weight:700;

border-radius:50px;

text-decoration:none;

transition:.3s;

}

.btn-primary-cta:hover{

transform:translateY(-4px);

}

.btn-outline-cta{

display:inline-flex;

align-items:center;

gap:10px;

padding:18px 34px;

border:2px solid #fff;

border-radius:50px;

color:#fff;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.btn-outline-cta:hover{

background:#fff;

color:#1f6fd6;

}

@media(max-width:1200px){

.partners-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:768px){

.partners-grid{

grid-template-columns:repeat(2,1fr);

}

.cta-box{

padding:50px 25px;

}

.cta-box h2{

font-size:34px;

}

.cta-box p{

font-size:16px;

}

}

@media(max-width:480px){

.partners-grid{

grid-template-columns:1fr;

}

}

/*=========================================
WHATSAPP FLOAT BUTTON
=========================================*/

.whatsapp-float{

    position:fixed;

    right:25px;

    bottom:25px;

    width:65px;

    height:65px;

    background:#25D366;

    color:#fff;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:34px;

    text-decoration:none;

    box-shadow:0 10px 25px rgba(37,211,102,.4);

    z-index:9999;

    transition:.3s;

}

.whatsapp-float:hover{

    background:#1ebe5d;

    color:#fff;

    transform:scale(1.1);

}

.whatsapp-float i{

    line-height:1;

}

@media(max-width:768px){

.whatsapp-float{

width:58px;

height:58px;

right:18px;

bottom:18px;

font-size:30px;

}

}