/* =======================================
   GOOGLE FONT
======================================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Playfair+Display:wght@700&display=swap');

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

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

body{

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

    background:linear-gradient(
        135deg,
        #f8f7f5,
        #ffffff,
        #f1ede8
    );

    color:#222;

    overflow-x:hidden;

}

a{
    text-decoration:none;
}

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

section{

    padding:110px 10%;

}

/* =======================================
LOADING
======================================= */

#loader{

    position:fixed;

    inset:0;

    background:#ffffff;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:99999;

}

#loader h1{

    font-size:60px;

    font-family:'Playfair Display',serif;

    color:#8A6F5A;

}

/* =======================================
SCROLL PROGRESS
======================================= */

#progress{

    position:fixed;

    top:0;

    left:0;

    width:0;

    height:5px;

    background:#8A6F5A;

    z-index:999999;

}

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

header{

    position:fixed;

    width:100%;

    top:0;

    left:0;

    z-index:1000;

}

nav{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 10%;

    backdrop-filter:blur(18px);

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

    border-bottom:1px solid rgba(255,255,255,.3);

    transition:.4s;

}

.logo{

    font-size:34px;

    font-weight:700;

    color:#8A6F5A;

    font-family:'Playfair Display',serif;

}

nav ul{

    display:flex;

    gap:35px;

    list-style:none;

}

nav ul li a{

    color:#222;

    font-weight:500;

    transition:.3s;

}

nav ul li a:hover{

    color:#8A6F5A;

}

.menu-btn{

    display:none;

    font-size:28px;

    cursor:pointer;

}

/* =======================================
TITLE
======================================= */

.title{

    text-align:center;

    margin-bottom:70px;

}

.title h2{

    font-size:48px;

    font-family:'Playfair Display',serif;

    color:#8A6F5A;

}

.title span{

    color:#777;

}

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

.hero{

    min-height:100vh;

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:70px;

    padding: 100px 10% 120px;

}

.hero-text span{

    color:#8A6F5A;

    letter-spacing:2px;

}

.hero-text h1{

    font-size:72px;

    line-height:1.1;

    margin:20px 0;

    font-family:'Playfair Display',serif;

}

.hero-text h3{

    color:#555;

    margin-bottom:20px;

    font-weight:500;

}

.hero-text p{

    color:#666;

    line-height:1.8;

    margin-bottom:35px;

}

/* =======================================
BUTTON
======================================= */

.hero-button{

    display:flex;

    gap:20px;

    margin-bottom:40px;

}

.btn{

    background:#8A6F5A;

    color:white;

    padding:15px 35px;

    border-radius:50px;

    transition:.4s;

    box-shadow:0 10px 25px rgba(138,111,90,.3);

}

.btn:hover{

    transform:translateY(-5px);

}

.btn-outline{

    border:2px solid #8A6F5A;

    color:#8A6F5A;

    padding:15px 35px;

    border-radius:50px;

    transition:.4s;

}

.btn-outline:hover{

    background:#8A6F5A;

    color:white;

}

/* =======================================
PROFILE IMAGE
======================================= */

.hero-image{

    position:relative;

    display:flex;

    justify-content:center;

}

.circle{

    position:absolute;

    width:420px;

    height:420px;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #B8955A,
        #8A6F5A
    );

    filter:blur(60px);

    opacity:.25;

}

.hero-image img{

    width:380px;

    height:380px;

    border-radius:50%;

    object-fit:cover;

    border:8px solid white;

    position:relative;

    box-shadow:0 20px 40px rgba(0,0,0,.15);

    transition:.5s;

}

.hero-image img:hover{

    transform:scale(1.05);

}

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

.about-container{

    display:grid;

    grid-template-columns:1fr 1.2fr;

    gap:60px;

    align-items:center;

}

.about-image img{

    width:100%;

    max-width:420px;

    margin:auto;

    border-radius:30px;

    object-fit:cover;

    box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.about-content{

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

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.5);

    padding:45px;

    border-radius:30px;

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

}

.about-content h3{

    font-size:34px;

    color:#8A6F5A;

    margin-bottom:20px;

    font-family:'Playfair Display',serif;

}

.about-content p{

    line-height:1.9;

    color:#555;

    margin-bottom:30px;

}

/* =======================================
PROFILE
======================================= */

.profile-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:30px;

}

.profile-card{

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

    backdrop-filter:blur(20px);

    border-radius:25px;

    padding:35px;

    text-align:center;

    transition:.45s;

    border:1px solid rgba(255,255,255,.5);

    box-shadow:0 12px 30px rgba(0,0,0,.08);

}

.profile-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 45px rgba(0,0,0,.15);

}

.profile-card i{

    font-size:42px;

    color:#B8955A;

    margin-bottom:20px;

}

.profile-card h3{

    color:#8A6F5A;

    margin-bottom:12px;

    font-size:22px;

}

.profile-card p{

    color:#666;

    line-height:1.7;

}

/* =======================================
EDUCATION
======================================= */

.timeline{

    position:relative;

    max-width:900px;

    margin:auto;

}

.timeline::before{

    content:"";

    position:absolute;

    left:30px;

    top:0;

    width:4px;

    height:100%;

    background:#B8955A;

}

.timeline-item{

    display:flex;

    align-items:flex-start;

    gap:30px;

    margin-bottom:45px;

    position:relative;

}

.timeline-dot{

    width:22px;

    height:22px;

    background:#8A6F5A;

    border-radius:50%;

    border:5px solid #fff;

    box-shadow:0 0 0 5px rgba(184,149,90,.25);

    z-index:2;

    margin-left:20px;

}

.timeline-content{

    flex:1;

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

    backdrop-filter:blur(15px);

    border-radius:25px;

    padding:30px;

    box-shadow:0 12px 30px rgba(0,0,0,.08);

    transition:.35s;

}

.timeline-content:hover{

    transform:translateX(10px);

}

.timeline-content h3{

    color:#8A6F5A;

    margin-bottom:8px;

    font-size:22px;

}

.timeline-content h4{

    font-size:20px;

    margin-bottom:8px;

}

.timeline-content p{

    color:#666;

}


/* =======================================
   LOCATION
======================================= */

.location-box{

    display:grid;

    grid-template-columns:1fr 2fr;

    gap:35px;

    align-items:center;

}

.location-info{

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

    backdrop-filter:blur(18px);

    padding:40px;

    border-radius:25px;

    text-align:center;

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

}

.location-info i{

    font-size:50px;

    color:#B8955A;

    margin-bottom:20px;

}

.location-info h3{

    color:#8A6F5A;

    margin-bottom:15px;

}

.location iframe{

    border-radius:25px;

    box-shadow:0 15px 35px rgba(0,0,0,.12);

}


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

.footer {
    width: 100%;
    border-top: 1px solid rgba(255,255,255,.2);
    margin-top: 50px;
    padding: 35px 20px 25px;
    box-sizing: border-box;
    text-align: center;
    background-color: #7A6252;
}

.footer-content h3 {
    margin: 0 0 14px;
    font-size: 17px;
    font-weight: 600;
    color: #FFF8F0;
}

.social-media {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    font-size: 14px;
}

.social-media a {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #EDE2D7;
    text-decoration: none;
    transition: 0.3s ease;
}

.social-media a i {
    font-size: 17px;
}

.social-media a:hover {
    color: #C7A36A;
    transform: translateY(-2px);
}

.separator {
    color: rgba(255,255,255,.35);
}

.footer-content p {
    margin: 0;
    font-size: 12px;
    color: #EDE2D7;
}

/* =======================================
   SCROLL ANIMATION
======================================= */

.reveal{

    opacity:0;

    transform:translateY(60px);

    transition:1s;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

/* =======================================
   RESPONSIVE
======================================= */

@media(max-width:992px){

.hero{

    grid-template-columns:1fr;

    text-align:center;

}

.hero-image{

    order:-1;

}

.about-container{

    grid-template-columns:1fr;

}

.location-box{

    grid-template-columns:1fr;

}

.hero-info{

    justify-content:center;

    flex-wrap:wrap;

}

nav ul{

    display:none;

}

.menu-btn{

    display:block;

}

section{

    padding:90px 7%;

}

.hero-text h1{

    font-size:54px;

}

}

@media(max-width:576px){

.hero-image img{

    width:280px;

    height:280px;

}

.circle{

    width:300px;

    height:300px;

}

.title h2{

    font-size:36px;

}

.hero-text h1{

    font-size:42px;

}

.hero-button{

    flex-direction:column;

}

.btn,

.btn-outline{

    text-align:center;

}

}