/* ===========================
   PROFIL ANGGA ALAN
=========================== */

.profile-hero{
    position:relative;

    padding:120px 20px 80px;

    background:
    linear-gradient(
        135deg,
        #7c2d12 0%,
        #ea580c 45%,
        #fb923c 80%,
        #fff7ed 100%
    );

    overflow:hidden;
}

.profile-overlay{
    position:absolute;
    inset:0;

    background:
    radial-gradient(
        circle at top right,
        rgba(255,255,255,.15),
        transparent 50%
    );
}

.profile-content{

    position:relative;

    max-width:1200px;
    margin:auto;

    display:grid;
    grid-template-columns:350px 1fr;
    gap:60px;

    align-items:center;
}

.profile-photo{

    text-align:center;
}

.profile-photo img{

    width:320px;
    height:320px;

    object-fit:cover;

    border-radius:50%;

    border:8px solid rgba(255,255,255,.35);

    box-shadow:
    0 20px 60px rgba(0,0,0,.25);
}

.profile-info{
    color:white;
}

.badge{

    display:inline-block;

    padding:10px 18px;

    border-radius:999px;

    background:rgba(255,255,255,.18);

    backdrop-filter:blur(10px);

    font-size:14px;

    margin-bottom:20px;
}

.profile-info h1{

    font-size:56px;

    line-height:1.1;

    margin-bottom:20px;

    font-weight:800;
}

.profile-info p{

    font-size:18px;

    line-height:1.8;

    max-width:750px;

    opacity:.95;
}

/* ===========================
   SECTION UMUM
=========================== */

.profile-section,
.bio-section,
.focus-section,
.timeline-section,
.vision-section,
.contact-profile{

    padding:90px 20px;
}

.profile-section .container,
.bio-section .container,
.focus-section .container,
.timeline-section .container,
.vision-section .container,
.contact-profile .container{

    max-width:1200px;
    margin:auto;
}

.section-title{

    text-align:center;

    margin-bottom:40px;
}

.section-title h2{

    font-size:42px;

    color:#111827;
}

.profile-text{

    max-width:900px;

    margin:auto;

    text-align:center;

    line-height:2;

    color:#4b5563;

    font-size:18px;
}

.profile-text p{
    margin-bottom:25px;
}

/* ===========================
   BIODATA
=========================== */

.bio-section{
    background:#fff7ed;
}

.bio-section h2{

    text-align:center;

    margin-bottom:45px;

    font-size:42px;

    color:#111827;
}

.bio-grid{

    display:grid;

    grid-template-columns:
    repeat(2,1fr);

    gap:25px;
}

.bio-item{

    background:white;

    padding:25px;

    border-radius:20px;

    box-shadow:
    0 8px 25px rgba(0,0,0,.06);
}

.bio-item strong{

    display:block;

    margin-bottom:8px;

    color:#ea580c;
}

.bio-item span{

    color:#111827;

    font-size:17px;
}

/* ===========================
   FOKUS PERJUANGAN
=========================== */

.focus-section{
    background:white;
}

.focus-section h2{

    text-align:center;

    margin-bottom:50px;

    font-size:42px;
}

.focus-grid{

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    gap:25px;
}

.focus-card{

    background:white;

    padding:35px 25px;

    border-radius:24px;

    text-align:center;

    box-shadow:
    0 15px 40px rgba(0,0,0,.08);

    transition:.3s;
}

.focus-card:hover{

    transform:translateY(-8px);
}

.focus-card i{

    font-size:42px;

    color:#ea580c;

    margin-bottom:20px;
}

.focus-card h3{

    margin-bottom:15px;

    color:#111827;
}

.focus-card p{

    line-height:1.7;

    color:#6b7280;
}

/* ===========================
   TIMELINE
=========================== */

.timeline-section{

    background:#fff7ed;
}

.timeline-section h2{

    text-align:center;

    margin-bottom:60px;

    font-size:42px;
}

.timeline{

    max-width:850px;

    margin:auto;

    position:relative;
}

.timeline::before{

    content:'';

    position:absolute;

    left:30px;

    top:0;

    width:4px;

    height:100%;

    background:#ea580c;
}

.timeline-item{

    position:relative;

    padding-left:90px;

    margin-bottom:40px;
}

.timeline-item::before{

    content:'';

    position:absolute;

    left:18px;

    top:5px;

    width:28px;
    height:28px;

    border-radius:50%;

    background:#ea580c;

    border:4px solid white;
}

.timeline-item h3{

    color:#ea580c;

    margin-bottom:10px;
}

.timeline-item p{

    color:#4b5563;

    line-height:1.8;
}

/* ===========================
   VISI
=========================== */

.vision-section{

    background:white;

    text-align:center;
}

.vision-section h2{

    font-size:42px;

    margin-bottom:40px;
}

.vision-section blockquote{

    max-width:900px;

    margin:auto;

    font-size:28px;

    line-height:1.8;

    color:#111827;

    font-style:italic;

    font-weight:500;
}

/* ===========================
   SOCIAL & CONTACT
=========================== */

.contact-profile{

    background:
    linear-gradient(
        135deg,
        #ea580c,
        #fb923c
    );

    text-align:center;
}

.contact-profile h2{

    color:white;

    margin-bottom:35px;

    font-size:42px;
}

.social-links{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:20px;
}

.social-links a{

    padding:14px 30px;

    background:white;

    color:#ea580c;

    text-decoration:none;

    border-radius:999px;

    font-weight:700;

    transition:.3s;
}

.social-links a:hover{

    transform:translateY(-3px);

    box-shadow:
    0 12px 25px rgba(0,0,0,.15);
}

/* ===========================
   MOBILE
=========================== */

@media(max-width:992px){

    .profile-content{

        grid-template-columns:1fr;

        text-align:center;
    }

    .profile-info h1{
        font-size:42px;
    }

    .focus-grid{

        grid-template-columns:
        repeat(2,1fr);
    }
}

@media(max-width:768px){

    .profile-photo img{

        width:220px;
        height:220px;
    }

    .profile-info h1{

        font-size:34px;
    }

    .section-title h2,
    .bio-section h2,
    .focus-section h2,
    .timeline-section h2,
    .vision-section h2,
    .contact-profile h2{

        font-size:30px;
    }

    .bio-grid{

        grid-template-columns:1fr;
    }

    .focus-grid{

        grid-template-columns:1fr;
    }

    .vision-section blockquote{

        font-size:22px;
    }
}