/*
|--------------------------------------------------------------------------
| TPQ AT-TAQWA
|--------------------------------------------------------------------------
| Landing Page
|--------------------------------------------------------------------------
*/

/* ==========================================
   MOBILE MENU
========================================== */

.mobile-menu-btn{

    display:none;

    background:none;

    border:none;

    color:#fff;

    font-size:34px;

}

.mobile-menu{

    display:none;

    position:fixed;

    top:80px;

    left:0;

    width:100%;

    background:#fff;

    z-index:999;

    box-shadow:0 10px 25px rgba(0,0,0,.1);

}

.mobile-menu.show{

    display:block;

}

.mobile-menu a{

    display:flex;

    align-items:center;

    gap:12px;

    padding:16px 25px;

    border-bottom:1px solid #eee;

    color:var(--primary);

    font-weight:500;

}

.mobile-menu a:hover{

    background:#F5F7FA;

}

/* ==========================================
   HERO
========================================== */

.hero{

    min-height:90vh;

    display:flex;

    align-items:center;

}

.hero-content{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:60px;

    align-items:center;

}

.hero-text small{

    display:inline-block;.hero-image img{

    transition:.5s;

}

    background:rgba(255,255,255,.15);

    color:#fff;

    padding:8px 18px;

    border-radius:50px;

    margin-bottom:20px;

}

.hero-text h1{

    font-size:60px;

    color:#fff;

    line-height:1.2;

    margin-bottom:25px;

}

.hero-text p{

    color:rgba(255,255,255,.85);

    font-size:18px;

    margin-bottom:35px;

}

.hero-image{

    text-align:center;

}

.hero-image img{

    width:100%;

    max-width:550px;

    transition:.5s;
}
 

/* ==========================================
   CTA
========================================== */

.cta{

    background:linear-gradient(

    135deg,

    var(--secondary),

    var(--primary)

    );

    border-radius:25px;

    color:#fff;

    padding:70px;

    text-align:center;

}

.cta h2{

    font-size:42px;

    margin-bottom:20px;

}

.cta p{

    max-width:700px;

    margin:auto;

    margin-bottom:35px;

    opacity:.9;

}

/* ==========================================
   TIMELINE
========================================== */

.timeline{

    position:relative;

    margin-left:25px;

}

.timeline::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:3px;

    height:100%;

    background:var(--secondary);

}

.timeline-item{

    position:relative;

    margin-bottom:35px;

    padding-left:30px;

}

.timeline-item::before{

    content:"";

    position:absolute;

    width:18px;

    height:18px;

    border-radius:50%;

    background:var(--gold);

    left:-8px;

    top:8px;

}

.timeline-item h4{

    color:var(--primary);

    margin-bottom:5px;

}

.timeline-item small{

    color:var(--muted);

}

.timeline-item p{

    margin-top:10px;

}

/* ==========================================
   CTA BUTTON
========================================== */

.hero-button{

    display:flex;

    gap:15px;

}

.hero-button .btn{

    min-width:170px;

}

/* ==========================================
   RESPONSIVE
========================================== */

@media(max-width:992px){

.hero-content{

grid-template-columns:1fr;

text-align:center;

}

.hero-text h1{

font-size:45px;

}

.hero-button{

justify-content:center;

}

.hero-image{

order:-1;

}

}

@media(max-width:768px){

.menu{

display:none;

}

.mobile-menu-btn{

display:block;

}

.hero{

padding-top:120px;
position:relative;

overflow:hidden;

}

.hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        135deg,
        rgba(15,46,109,.88),
        rgba(47,110,219,.70)
    );

    z-index:1;

}

.hero .container{

    position:relative;

    z-index:2;

}

.hero-text h1{

font-size:36px;

}

.cta{

padding:40px 25px;

}

.cta h2{

font-size:30px;

}

.hero-button{

flex-direction:column;

}

.hero-button .btn{

width:100%;

}

}

/*
|--------------------------------------------------------------------------
| PRESTASI
|--------------------------------------------------------------------------
*/

.achievement-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(300px,1fr));

gap:30px;

}

.achievement-card{

background:#fff;

border-radius:20px;

overflow:hidden;

text-decoration:none;

color:inherit;

box-shadow:0 10px 30px rgba(0,0,0,.08);

transition:.3s;

}

.achievement-card:hover{

transform:translateY(-6px);

}

.achievement-card img{

width:100%;

height:220px;

object-fit:cover;

display:block;

}

.achievement-body{

padding:22px;

}

.achievement-badge{

display:inline-block;

background:#ffc107;

padding:6px 12px;

border-radius:30px;

font-weight:700;

margin-bottom:15px;

}

.achievement-body h3{

margin:0 0 12px;

font-size:24px;

color:var(--primary);

}

.achievement-body p{

margin:0;

font-weight:600;

}

.achievement-body small{

display:block;

margin-top:8px;

color:#777;

}