/* =====================================================
   ZYLORIQ WEBSITE
   style.css - PART 1
   Reset • Variables • Typography • Header • Hero
===================================================== */

/*==============================
    GOOGLE FONTS
==============================*/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@500;600;700;800&display=swap');

/*==============================
    RESET
==============================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Inter',sans-serif;
    background:#F8FAFC;
    color:#334155;
    line-height:1.7;
    overflow-x:hidden;
}

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

/*==============================
    CSS VARIABLES
==============================*/

:root{

    --primary:#0F172A;
    --secondary:#2563EB;
    --accent:#06B6D4;

    --white:#ffffff;
    --light:#F8FAFC;

    --text:#334155;

    --border:#E2E8F0;

    --shadow:0 10px 35px rgba(0,0,0,.08);

    --radius:12px;

}

/*==============================
    CONTAINER
==============================*/

.container{

    width:90%;

    max-width:1200px;

    margin:auto;

}

/*==============================
    TYPOGRAPHY
==============================*/

h1,h2,h3,h4{

    font-family:'Poppins',sans-serif;

    color:var(--primary);

}

h1{

    font-size:60px;

    line-height:1.15;

    margin-bottom:25px;

}

h2{

    font-size:42px;

    margin-bottom:25px;

}

h3{

    font-size:24px;

    margin-bottom:15px;

}

p{

    font-size:18px;

    color:var(--text);

}

/*==============================
    SECTIONS
==============================*/

section{

    padding:100px 0;

}

/*==============================
    HEADER
==============================*/

.header{

    background:#fff;

    position:sticky;

    top:0;

    z-index:999;

    border-bottom:1px solid var(--border);

    transition:.3s;

}

/*==============================
    NAVBAR
==============================*/

.navbar{

    height:80px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

/*==============================
    LOGO
==============================*/

.logo{

    font-size:34px;

    font-weight:700;

    font-family:'Poppins',sans-serif;

    color:var(--primary);

}

.logo span{

    color:var(--secondary);

}

/*==============================
    MENU
==============================*/

.nav-links{

    display:flex;

    gap:35px;

}

.nav-links a{

    color:var(--text);

    font-weight:600;

    transition:.3s;

    position:relative;

}

.nav-links a:hover{

    color:var(--secondary);

}

.nav-links a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:var(--secondary);

    transition:.3s;

}

.nav-links a:hover::after{

    width:100%;

}

/*==============================
    BUTTONS
==============================*/

.btn-primary{

    display:inline-block;

    background:var(--secondary);

    color:#fff;

    padding:14px 28px;

    border-radius:10px;

    font-weight:600;

    transition:.3s;

}

.btn-primary:hover{

    background:#1D4ED8;

    transform:translateY(-3px);

    box-shadow:var(--shadow);

}

.btn-secondary{

    display:inline-block;

    border:2px solid var(--secondary);

    color:var(--secondary);

    padding:14px 28px;

    border-radius:10px;

    font-weight:600;

    transition:.3s;

}

.btn-secondary:hover{

    background:var(--secondary);

    color:#fff;

}

/*==============================
    HERO
==============================*/

.hero{

    min-height:90vh;

    display:flex;

    align-items:center;

    background:linear-gradient(
        135deg,
        #F8FAFC 0%,
        #EEF6FF 100%
    );

}

.hero-container{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:60px;

}

.hero-content{

    flex:1;

}

.hero-tag{

    display:inline-block;

    background:#DBEAFE;

    color:var(--secondary);

    padding:8px 18px;

    border-radius:50px;

    font-size:14px;

    font-weight:600;

    margin-bottom:25px;

}

.hero h1 span{

    color:var(--secondary);

}

.hero p{

    max-width:600px;

    margin-bottom:35px;

}

.hero-buttons{

    display:flex;

    gap:20px;

}

.hero-image{

    flex:1;

    display:flex;

    justify-content:center;

}

.hero-image img{

    width:100%;

    max-width:520px;

    border-radius:20px;

    box-shadow:var(--shadow);

}

/*==============================
    UTILITIES
==============================*/

.text-center{

    text-align:center;

}

.mt-1{margin-top:10px;}
.mt-2{margin-top:20px;}
.mt-3{margin-top:30px;}
.mt-4{margin-top:40px;}

.mb-1{margin-bottom:10px;}
.mb-2{margin-bottom:20px;}
.mb-3{margin-bottom:30px;}
.mb-4{margin-bottom:40px;}

/*=====================================================
    ABOUT SECTION
=====================================================*/

.about{
    background:#ffffff;
}

.about .container{
    max-width:900px;
    text-align:center;
}

.about h2{
    margin-bottom:20px;
}

.about p{
    font-size:18px;
    line-height:1.9;
    color:#475569;
}


/*=====================================================
    SERVICES SECTION
=====================================================*/

.services{
    background:#F8FAFC;
}

.services h2{
    text-align:center;
    margin-bottom:15px;
}

.services .section-subtitle{
    text-align:center;
    max-width:700px;
    margin:0 auto 60px;
    color:#64748B;
}


/*=====================================================
    SERVICE GRID
=====================================================*/

.service-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}


/*=====================================================
    SERVICE CARD
=====================================================*/

.card{

    background:#ffffff;

    padding:40px 30px;

    border-radius:16px;

    text-align:center;

    box-shadow:0 10px 35px rgba(0,0,0,.05);

    transition:.35s;

    border:1px solid #E2E8F0;

}

.card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(0,0,0,.10);

}

.card i{

    font-size:50px;

    color:#2563EB;

    margin-bottom:25px;

}

.card h3{

    margin-bottom:15px;

}

.card p{

    font-size:16px;

    color:#64748B;

}


/*=====================================================
    WHY CHOOSE US
=====================================================*/

.why{

    background:#ffffff;

}

.why h2{

    text-align:center;

    margin-bottom:15px;

}

.why .section-subtitle{

    text-align:center;

    max-width:750px;

    margin:0 auto 60px;

    color:#64748B;

}

.why-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.why-card{

    background:#F8FAFC;

    padding:35px;

    border-radius:16px;

    transition:.3s;

    border:1px solid #E2E8F0;

}

.why-card:hover{

    background:#2563EB;

    color:#fff;

    transform:translateY(-8px);

}

.why-card:hover h3,
.why-card:hover p,
.why-card:hover i{

    color:#fff;

}

.why-card i{

    font-size:42px;

    color:#2563EB;

    margin-bottom:20px;

}

.why-card p{

    color:#64748B;

}


/*=====================================================
    INDUSTRIES
=====================================================*/

.industries{

    background:#F8FAFC;

}

.industries h2{

    text-align:center;

    margin-bottom:15px;

}

.industries .section-subtitle{

    text-align:center;

    max-width:700px;

    margin:0 auto 60px;

    color:#64748B;

}

.industry-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

}

.industry-card{

    background:#ffffff;

    padding:35px;

    border-radius:14px;

    text-align:center;

    transition:.3s;

    border:1px solid #E2E8F0;

}

.industry-card:hover{

    background:#2563EB;

    color:#fff;

    transform:translateY(-8px);

}

.industry-card:hover h3,
.industry-card:hover i{

    color:#fff;

}

.industry-card i{

    font-size:48px;

    color:#2563EB;

    margin-bottom:20px;

}


/*=====================================================
    SECTION TITLES
=====================================================*/

.section-title{

    text-align:center;

    margin-bottom:20px;

}

.section-subtitle{

    text-align:center;

    color:#64748B;

    margin-bottom:60px;

    font-size:18px;

}


/*=====================================================
    SIMPLE FADE ANIMATION
=====================================================*/

.card,
.why-card,
.industry-card{

    opacity:0;

    transform:translateY(40px);

    animation:fadeUp .8s ease forwards;

}

.card:nth-child(2){animation-delay:.15s;}
.card:nth-child(3){animation-delay:.3s;}
.card:nth-child(4){animation-delay:.45s;}
.card:nth-child(5){animation-delay:.6s;}
.card:nth-child(6){animation-delay:.75s;}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(40px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*=====================================================
    OUR PROCESS
=====================================================*/

.process{

    background:#ffffff;

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:60px;

}

.process-card{

    background:#F8FAFC;

    border:1px solid #E2E8F0;

    border-radius:18px;

    padding:40px 30px;

    text-align:center;

    position:relative;

    transition:.35s;

}

.process-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.process-number{

    position:absolute;

    top:20px;

    right:20px;

    width:45px;

    height:45px;

    border-radius:50%;

    background:#2563EB;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-weight:700;

}

.process-card i{

    font-size:50px;

    color:#2563EB;

    margin-bottom:25px;

}

.process-card h3{

    margin-bottom:15px;

}

.process-card p{

    color:#64748B;

    font-size:16px;

}

/*=========================================
    BUSINESS STATS
=========================================*/

.stats{

    background:#2563EB;

    color:#fff;

}

.stats-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.stat-box{

    text-align:center;

}

.stat-box h2{

    color:#fff;

    font-size:56px;

    margin-bottom:10px;

}

.stat-box p{

    color:#E2E8F0;

    font-size:18px;

}

/*=====================================================
    TESTIMONIALS
=====================================================*/

.testimonials{

    background:#F8FAFC;

}

.testimonial-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:60px;

}

.testimonial-card{

    background:#ffffff;

    padding:35px;

    border-radius:16px;

    border:1px solid #E2E8F0;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

    transition:.35s;

}

.testimonial-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(0,0,0,.10);

}

.stars{

    color:#F59E0B;

    font-size:22px;

    margin-bottom:20px;

    letter-spacing:3px;

}

.testimonial-text{

    color:#475569;

    line-height:1.8;

    margin-bottom:30px;

    font-style:italic;

}

.client-info h4{

    color:#0F172A;

    margin-bottom:6px;

    font-size:18px;

}

.client-info span{

    color:#64748B;

    font-size:15px;

}

/*=====================================================
    FAQ
=====================================================*/

.faq{

    background:#ffffff;

}

.faq-container{

    max-width:900px;

    margin:60px auto 0;

}

.faq-item{

    background:#F8FAFC;

    border:1px solid #E2E8F0;

    border-radius:12px;

    margin-bottom:20px;

    overflow:hidden;

    transition:.3s;

}

.faq-item:hover{

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.faq-question{

    width:100%;

    background:none;

    border:none;

    cursor:pointer;

    padding:22px 25px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:18px;

    font-weight:600;

    color:#0F172A;

}

.faq-question i{

    color:#2563EB;

    transition:.3s;

}

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .35s ease;

}

.faq-answer p{

    padding:0 25px 25px;

    color:#64748B;

    line-height:1.8;

}

.faq-item.active .faq-answer{

    max-height:250px;

}

.faq-item.active i{

    transform:rotate(45deg);

}

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

.contact{
    background:#F8FAFC;
}

.contact-info{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin:60px 0;
}

.contact-card{
    background:#fff;
    padding:30px;
    text-align:center;
    border-radius:16px;
    border:1px solid #E2E8F0;
    transition:.3s;
}

.contact-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.contact-card i{
    font-size:42px;
    color:#2563EB;
    margin-bottom:20px;
}

.contact-form{
    display:grid;
    gap:20px;
    max-width:800px;
    margin:auto;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
    width:100%;
    padding:16px;
    border:1px solid #CBD5E1;
    border-radius:10px;
    font-size:16px;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
    outline:none;
    border-color:#2563EB;
}

.contact-form button{
    width:220px;
}

/*=====================================================
    FOOTER
=====================================================*/

.footer{

    background:#0F172A;

    color:#CBD5E1;

    padding:70px 0 25px;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1.5fr;

    gap:40px;

}

.footer-logo{

    color:#ffffff;

    margin-bottom:20px;

}

.footer-column h3{

    color:#ffffff;

    margin-bottom:20px;

}

.footer-column ul{

    list-style:none;

    padding:0;

}

.footer-column ul li{

    margin-bottom:12px;

}

.footer-column ul li a{

    color:#CBD5E1;

    text-decoration:none;

    transition:.3s;

}

.footer-column ul li a:hover{

    color:#2563EB;

}

.footer-column p{

    margin-bottom:15px;

    line-height:1.8;

}

.footer-column i{

    color:#2563EB;

    margin-right:8px;

}

.social-icons{

    margin-top:20px;

}

.social-icons a{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    width:42px;

    height:42px;

    border-radius:50%;

    background:#1E293B;

    color:#ffffff;

    margin-right:10px;

    text-decoration:none;

    transition:.3s;

}

.social-icons a:hover{

    background:#2563EB;

    transform:translateY(-4px);

}

.footer hr{

    margin:50px 0 25px;

    border:none;

    border-top:1px solid #334155;

}

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:15px;

}

.footer-links a{

    color:#CBD5E1;

    margin-left:20px;

    text-decoration:none;

}

.footer-links a:hover{

    color:#2563EB;

}

.logo img{
    height: 60px;px;
    width:auto;
    display:block;
}

.footer-logo{
    height:50px;
    width:auto;
    margin-bottom:15px;
}