/*=========================================
            ABOUT HERO
=========================================*/

.about-hero{

    padding:110px 0;

    background:#fff;

    overflow:hidden;

    position:relative;

}

.about-hero .container{

    max-width:1280px;

    margin:auto;

    padding:0 20px;

}

/*=========================
Wrapper
=========================*/

.about-hero-wrapper{

    display:grid;

    grid-template-columns:1.1fr 1fr;

    gap:70px;

    align-items:center;

}

/*=========================
Left
=========================*/

.about-content .section-badge{

    display:inline-flex;

    align-items:center;

    padding:8px 18px;

    border-radius:50px;

    background:#EEF2FF;

    color:#4F46E5;

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:22px;

}

.about-content h1{

    font-family:"Plus Jakarta Sans",sans-serif;

    font-size:56px;

    font-weight:800;

    line-height:1.15;

    color:#111827;

    margin-bottom:24px;

}

.about-content p{

    font-size:17px;

    color:#6B7280;

    line-height:1.9;

    margin-bottom:35px;

}

/*=========================
Features
=========================*/

.about-features{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin-bottom:40px;

}

.feature{

    display:flex;

    align-items:center;

    gap:12px;

    font-weight:600;

    color:#111827;

}

.feature svg{

    width:22px;

    height:22px;

    color:#2563EB;

}

/*=========================
Buttons
=========================*/

.about-buttons{

    display:flex;

    gap:18px;

}

.primary-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:16px 32px;

    border-radius:14px;

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    color:#fff;

    text-decoration:none;

    font-weight:700;

    transition:.35s;

}

.primary-btn:hover{

    transform:translateY(-5px);

    box-shadow:0 15px 40px rgba(37,99,235,.25);

}

.secondary-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 30px;

    border-radius:14px;

    border:2px solid #E5E7EB;

    text-decoration:none;

    color:#111827;

    font-weight:700;

    transition:.35s;

}

.secondary-btn:hover{

    border-color:#2563EB;

    color:#2563EB;

}

/*=========================
Right Image
=========================*/

.about-image{

    position:relative;

}

.image-bg{

    position:absolute;

    width:520px;

    height:520px;

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    border-radius:40px;

    right:-35px;

    top:40px;

    opacity:.08;

    transform:rotate(-8deg);

}

.about-image img{

    width:100%;

    border-radius:28px;

    position:relative;

    z-index:2;

    box-shadow:0 30px 70px rgba(15,23,42,.12);

}

/*=========================
Floating Card
=========================*/

.experience-card{

    position:absolute;

    left:-30px;

    bottom:35px;

    background:#fff;

    padding:22px 26px;

    border-radius:20px;

    box-shadow:0 20px 60px rgba(15,23,42,.12);

    z-index:5;

}

.experience-card h3{

    font-size:42px;

    color:#2563EB;

    font-weight:800;

    margin-bottom:8px;

    font-family:"Plus Jakarta Sans",sans-serif;

}

.experience-card p{

    color:#6B7280;

    font-size:14px;

    line-height:1.6;

}

/*=========================
Responsive
=========================*/

@media(max-width:1200px){

.about-content h1{

font-size:48px;

}

}

@media(max-width:992px){

.about-hero-wrapper{

grid-template-columns:1fr;

}

.about-image{

order:-1;

max-width:650px;

margin:auto;

}

.about-content{

text-align:center;

}

.about-features{

grid-template-columns:repeat(2,1fr);

}

.about-buttons{

justify-content:center;

}

.experience-card{

left:20px;

bottom:20px;

}

}

@media(max-width:768px){

.about-hero{

padding:80px 0;

}

.about-content h1{

font-size:36px;

}

.about-content p{

font-size:16px;

}

.about-features{

grid-template-columns:1fr;

}

.about-buttons{

flex-direction:column;

}

.primary-btn,

.secondary-btn{

width:100%;

justify-content:center;

}

.image-bg{

display:none;

}

.experience-card{

position:relative;

left:0;

bottom:0;

margin-top:20px;

width:100%;

}

}

@media(max-width:480px){

.about-content h1{

font-size:30px;

}

}


/*=========================================
        ABOUT STATS SECTION
==========================================*/

.about-stats{

    padding:80px 0;

    background:#fff;

}

.stats-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

/*=========================
Stat Card
=========================*/

.stat-item{

    background:#fff;

    border:1px solid #EEF2FF;

    border-radius:20px;

    padding:35px 25px;

    text-align:center;

    transition:.35s;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

.stat-item:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 50px rgba(15,23,42,.10);

    border-color:#DDE3FF;

}

/*=========================
Icon
=========================*/

.stat-icon{

    width:65px;

    height:65px;

    margin:0 auto 18px;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    color:#fff;

    box-shadow:0 15px 30px rgba(37,99,235,.25);

}

.stat-icon svg{

    width:26px;

    height:26px;

}

/*=========================
Numbers
=========================*/

.stat-item h3{

    font-size:42px;

    font-weight:800;

    color:#111827;

    font-family:"Plus Jakarta Sans",sans-serif;

    margin-bottom:8px;

}

.stat-item p{

    color:#6B7280;

    font-size:15px;

}

/*=========================
Responsive
=========================*/

@media(max-width:992px){

.stats-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.stats-grid{

grid-template-columns:1fr;

}

.stat-item{

padding:30px 20px;

}

.stat-item h3{

font-size:36px;

}

}

/*=========================================
        OUR STORY SECTION
==========================================*/

.our-story{

    padding:110px 0;

    background:#fff;

    position:relative;

}

.story-wrapper{

    display:grid;

    grid-template-columns:1.2fr 1fr;

    gap:70px;

    align-items:center;

}

/* LEFT */

.story-content .section-badge{

    display:inline-block;

    padding:8px 16px;

    background:#EEF2FF;

    color:#4F46E5;

    border-radius:50px;

    font-size:12px;

    font-weight:700;

    margin-bottom:20px;

}

.story-content h2{

    font-size:44px;

    font-weight:800;

    color:#111827;

    margin-bottom:20px;

    font-family:"Plus Jakarta Sans",sans-serif;

}

.story-content p{

    color:#6B7280;

    font-size:16px;

    line-height:1.9;

    margin-bottom:18px;

}

/* BUTTON */

.story-content .primary-btn{

    margin-top:20px;

}

/* RIGHT IMAGE */

.story-image{

    position:relative;

}

.story-image img{

    width:100%;

    border-radius:24px;

    box-shadow:0 25px 60px rgba(15,23,42,.12);

}

/* FLOATING CARD */

.story-card{

    position:absolute;

    bottom:25px;

    left:-30px;

    background:#fff;

    padding:20px 24px;

    border-radius:18px;

    box-shadow:0 20px 50px rgba(15,23,42,.15);

}

.story-card h3{

    font-size:28px;

    color:#2563EB;

    font-weight:800;

    margin-bottom:6px;

}

.story-card p{

    font-size:13px;

    color:#6B7280;

}

/* RESPONSIVE */

@media(max-width:992px){

.story-wrapper{

grid-template-columns:1fr;

text-align:center;

}

.story-image{

order:-1;

}

.story-card{

left:20px;

}

.story-content h2{

font-size:34px;

}

}

@media(max-width:576px){

.story-content h2{

font-size:28px;

}

.story-card{

position:relative;

left:0;

margin-top:15px;

}

}

/*=========================================
        WHY CHOOSE SECTION
==========================================*/

.why-choose{

    padding:110px 0;

    background:linear-gradient(180deg,#F9FAFF,#FFFFFF);

}

.section-header{

    text-align:center;

    margin-bottom:60px;

}

.section-header h2{

    font-size:42px;

    font-weight:800;

    color:#111827;

    margin-top:15px;

    font-family:"Plus Jakarta Sans",sans-serif;

}

/* GRID */

.why-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

/* CARD */

.why-card{

    background:#fff;

    border:1px solid #EEF2FF;

    padding:35px 25px;

    border-radius:22px;

    text-align:center;

    transition:.35s ease;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

    position:relative;

}

/* hover */

.why-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(37,99,235,.12);

}

/* ICON */

.why-icon{

    width:70px;

    height:70px;

    margin:0 auto 20px;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    color:#fff;

    box-shadow:0 15px 30px rgba(37,99,235,.25);

}

.why-icon svg{

    width:26px;

    height:26px;

}

/* TEXT */

.why-card h3{

    font-size:20px;

    font-weight:800;

    margin-bottom:10px;

    color:#111827;

}

.why-card p{

    font-size:14px;

    color:#6B7280;

    line-height:1.8;

}

/* RESPONSIVE */

@media(max-width:992px){

.why-grid{

grid-template-columns:repeat(2,1fr);

}

.section-header h2{

font-size:34px;

}

}

@media(max-width:576px){

.why-grid{

grid-template-columns:1fr;

}

.section-header h2{

font-size:28px;

}

}

/*=========================================
        MISSION & VISION
==========================================*/

.mission-vision{

    padding:110px 0;

    background:#fff;

}

.mv-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

}

/* CARD */

.mv-card{

    background:rgba(255,255,255,0.8);

    backdrop-filter:blur(10px);

    border:1px solid #EEF2FF;

    border-radius:24px;

    padding:45px 35px;

    text-align:center;

    transition:.35s ease;

    box-shadow:0 15px 40px rgba(15,23,42,.05);

}

/* hover */

.mv-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(37,99,235,.12);

}

/* ICON */

.mv-icon{

    width:75px;

    height:75px;

    margin:0 auto 20px;

    border-radius:20px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    color:#fff;

    box-shadow:0 15px 30px rgba(37,99,235,.25);

}

.mv-icon svg{

    width:28px;

    height:28px;

}

/* TEXT */

.mv-card h3{

    font-size:24px;

    font-weight:800;

    margin-bottom:15px;

    color:#111827;

}

.mv-card p{

    font-size:15px;

    color:#6B7280;

    line-height:1.9;

}

/* RESPONSIVE */

@media(max-width:768px){

.mv-grid{

grid-template-columns:1fr;

}

.mv-card{

padding:35px 25px;

}

}


/*=========================================
        TECHNOLOGIES SECTION
==========================================*/

.tech-section{

    padding:110px 0;

    background:linear-gradient(180deg,#F9FAFF,#FFFFFF);

}

.tech-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:20px;

}

/* CARD */

.tech-card{

    background:#fff;

    border:1px solid #EEF2FF;

    border-radius:18px;

    padding:25px 15px;

    text-align:center;

    font-weight:700;

    color:#111827;

    font-size:15px;

    transition:.35s;

    position:relative;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

/* hover effect */

.tech-card:hover{

    transform:translateY(-8px);

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    color:#fff;

    box-shadow:0 20px 50px rgba(37,99,235,.20);

}

/* RESPONSIVE */

@media(max-width:992px){

.tech-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.tech-grid{

grid-template-columns:1fr;

}

}

/*=========================================
        TECHNOLOGIES (WITH ICONS)
==========================================*/

.tech-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:20px;

}

/* CARD */

.tech-card{

    background:#fff;

    border:1px solid #EEF2FF;

    border-radius:18px;

    padding:28px 15px;

    text-align:center;

    font-weight:700;

    color:#111827;

    font-size:15px;

    transition:.35s;

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:10px;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

/* ICON */

.tech-card i{

    width:34px;

    height:34px;

    color:#2563EB;

}

/* TEXT */

.tech-card span{

    font-size:15px;

    font-weight:700;

}

/* HOVER */

.tech-card:hover{

    transform:translateY(-10px);

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    color:#fff;

    box-shadow:0 20px 50px rgba(37,99,235,.20);

}

.tech-card:hover i{

    color:#fff;

}

/* RESPONSIVE */

@media(max-width:992px){

.tech-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.tech-grid{

grid-template-columns:1fr;

}

}

/*=========================================
        FAQ SECTION
==========================================*/

.faq-section{

    padding:110px 0;

    background:#fff;

}

.faq-wrapper{

    max-width:800px;

    margin:auto;

    display:flex;

    flex-direction:column;

    gap:15px;

}

/* ITEM */

.faq-item{

    border:1px solid #EEF2FF;

    border-radius:16px;

    overflow:hidden;

    background:#fff;

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

/* QUESTION */

.faq-question{

    width:100%;

    padding:18px 20px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:#fff;

    border:none;

    cursor:pointer;

    font-weight:700;

    font-size:15px;

    color:#111827;

}

/* ANSWER */

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:.4s ease;

    padding:0 20px;

}

.faq-answer p{

    padding:15px 0;

    color:#6B7280;

    font-size:14px;

    line-height:1.7;

}

/* ACTIVE */

.faq-item.active .faq-answer{

    max-height:200px;

}

/* ICON ROTATE */

.faq-item.active i{

    transform:rotate(180deg);

    transition:.3s;

}

/*=========================================
        ABOUT CTA SECTION
==========================================*/

.about-cta{

    padding:120px 0;

    background:#fff;

}

.cta-box{

    background:linear-gradient(135deg,#2563EB,#7C3AED);

    padding:70px 40px;

    border-radius:28px;

    text-align:center;

    color:#fff;

    position:relative;

    overflow:hidden;

    box-shadow:0 25px 70px rgba(37,99,235,.25);

}

/* glow effect */

.cta-box::before{

    content:"";

    position:absolute;

    width:400px;

    height:400px;

    background:rgba(255,255,255,0.15);

    border-radius:50%;

    top:-120px;

    left:-120px;

}

.cta-box h2{

    font-size:40px;

    font-weight:800;

    margin-bottom:15px;

    font-family:"Plus Jakarta Sans",sans-serif;

}

.cta-box p{

    font-size:16px;

    opacity:0.9;

    margin-bottom:30px;

}

/* BUTTONS */

.cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

}

/* override secondary button for CTA */

.about-cta .secondary-btn{

    background:#fff;

    color:#111827;

    border:none;

}

/* hover */

.about-cta .secondary-btn:hover{

    transform:translateY(-5px);

}

/* RESPONSIVE */

@media(max-width:768px){

.cta-box{

padding:50px 25px;

}

.cta-box h2{

font-size:28px;

}

.cta-buttons{

flex-direction:column;

}

.cta-buttons a{

width:100%;

}

}