/* =========================================
   PKYLink v2
   ========================================= */

/* 1. Root Variables */

:root{

    --primary:#2563EB;
    --primary-dark:#1D4ED8;

    --background:#F8FAFC;
    --surface:#FFFFFF;

    --border:#E2E8F0;

    --text:#0F172A;
    --muted:#64748B;

    --shadow:
        0 10px 30px rgba(15,23,42,.06);

    --shadow-hover:
        0 20px 45px rgba(15,23,42,.12);

}

/* 2. Global */

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

html{
    scroll-behavior:smooth;
}

body{

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

    background:var(--background);

    color:var(--text);

    line-height:1.5;

}

/* 3. Header */

header{

    backdrop-filter:blur(12px);

    background:
        rgba(255,255,255,.85);

    position:sticky;

    top:0;

    z-index:1000;

}

/* 4. Hero */

.hero-section{

    height:380px;

    border-radius:28px;

    overflow:hidden;

    position:relative;

    background-size:cover;

    background-position:center;

    transition:
        background-image .4s ease;

    background-repeat:no-repeat;

    background-color:#CBD5E1;

}

.hero-overlay{

    position:absolute;

    inset:0;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:flex-start;

    padding:70px;

    background:
        linear-gradient(
            90deg,
            rgba(15,23,42,.80),
            rgba(15,23,42,.20)
        );

    color:white;

}

.hero-badge{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    background:rgba(255,255,255,.18);

    backdrop-filter:blur(10px);

    font-size:.9rem;

    font-weight:600;

    margin-bottom:24px;

}

.hero-title{

    font-size:3.2rem;

    line-height:1.1;

    font-weight:800;

    margin-bottom:20px;

}

.hero-description{

    max-width:700px;

    font-size:1.1rem;

    line-height:1.8;

    opacity:.9;

    margin-bottom:36px;

}

.hero-button{

    width:auto;

    display:inline-flex;

    padding:16px 28px;

}

/* 5. Navigation Button */

.nav-btn{

    width:48px;

    height:48px;

    border:none;

    border-radius:999px;

    cursor:pointer;

    color:white;

    background:
        rgba(255,255,255,.20);

    backdrop-filter:blur(10px);

    transition:.25s;

}

.nav-btn:hover{

    background:white;

    color:var(--primary);

}

/* 6. App Card */

.app-card{

    background:white;

    border-radius:22px;

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

    overflow:hidden;

    box-shadow:var(--shadow);

    transition:
    transform .3s ease,
    box-shadow .3s ease,
    border-color .3s ease;

    min-height:580px;

    padding:15px;

    margin-top:10px;

    margin-bottom:8px;

}

.app-card:hover{

    transform:
        translateY(-6px);

    box-shadow:
        var(--shadow-hover);
    border-color:#BFDBFE;

}

.app-card img{

    display:block;

    width:100%;

    height:180px;

    object-fit:cover;

    border-radius:16px;

    transition:
        transform .35s ease;

    margin-bottom:24px;

}

.app-card:hover img{

transform:scale(1.03);

}

.app-description{

    display:-webkit-box;

    -webkit-line-clamp:4;

    -webkit-box-orient:vertical;

    overflow:hidden;

    color:var(--muted);

    line-height:1.8;

}

.app-title{

    font-size:1.5rem;

    font-weight:700;

    color:var(--text);

    margin-top:18px;

    margin-bottom:8px;

    line-height:1.3;

}

.app-subtitle{

    font-size:.7rem;

    color:var(--muted);

    font-weight:500;

    margin-bottom:18px;

}

/* 7. Button */

.btn-primary{

    display:block;

    width:100%;

    border-radius:14px;

    padding:14px;

    text-decoration:none;

    text-align:center;

    color:white;

    font-weight:600;

    background:
        linear-gradient(
            135deg,
            var(--primary),
            var(--primary-dark)
        );

    transition:.25s;

}

.btn-primary:hover{

    transform:
        translateY(-2px);
    box-shadow:
        0 12px 30px rgba(37,99,235,.25);

}

/* 8. Utilities */



/* 9. Responsive */

@media(max-width:768px){

.hero-section{

    height:260px;

}

.hero-overlay{

    padding:30px;

}

.hero-overlay h1{

    font-size:2rem;

}
}

/* =========================================
   Footer
========================================= */

.footer{

    margin-top:80px;

    background:#fff;

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

}

.footer-container{

    max-width:1280px;

    margin:auto;

    padding:28px 24px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.footer-left h3{

    font-size:1.2rem;

    font-weight:700;

    color:var(--text);

    margin-bottom:8px;

}

.footer-left p{

    color:var(--muted);

    line-height:1.6;

    font-size:.95rem;

}

.footer-right{

    display:flex;

    flex-direction:column;

    align-items:flex-end;

    gap:6px;

    color:var(--muted);

    font-size:.9rem;

}

@media(max-width:768px){

.footer-container{

    flex-direction:column;

    gap:24px;

    text-align:center;

}

.footer-right{

    align-items:center;

}

}