:root{
    --primary:#162B5B;
    --secondary:#D62828;
    --accent:#F4C430;
}
#landing{
    justify-content:space-between;
    min-height:100vh;
    display:flex;
    align-items:center;
    background:linear-gradient(
        180deg,
        #ffffff 0%,
        #f7f9fc 100%
    );
    padding-top:120px;
}

.landing-subtitle{

    color:var(--accent);

    font-weight:700;

    letter-spacing:2px;

}

.landing-title{
    color:#1D3557;
    font-size:88px;
    font-weight:900;
    line-height:1;
}


.landing-position{
    margin-top:20px;
    font-size: clamp(26px,3vw,38px);
    font-weight:700;
    color:var(--primary);
}

.landing-intro{
    margin-top:18px;
    margin-bottom:10px;
    font-size:20px;
    color:#444;
    font-weight:500;
}

.landing-text{
    color:#666;
    font-size:18px;
    line-height:1.7;
    max-width:520px;
}

.landing-button{

    background:#FFC107;

    color:#162B5B;

    border:none;

    border-radius:50px;

    padding:18px 40px;

    font-weight:700;

    font-size:18px;

}

.landing-button:hover{

    background:#ffb300;

}

.landing-image{
    width:100%;
    max-width:520px;
    transition:.3s;
    filter: drop-shadow(0 20px 35px rgba(0,0,0,.10));
}

.landing-image:hover{

    transform:scale(1.02);

}

.services{

    background:#ffffff;

    padding:100px 0;

}

.service-card{

    background:white;

    border-radius:15px;

    padding:40px;

    text-align:center;

    box-shadow:0 5px 25px rgba(0,0,0,.08);

    transition:.3s;

    height:100%;

}

.service-card:hover{

    transform:translateY(-10px);

}

.service-card i{

    font-size:50px;

    color:var(--primary);

    margin-bottom:20px;

}

.service-card h4{

    font-weight:700;

    margin-bottom:15px;

}

.contact{

    background:#f8f9fa;

}

.contact-form{

    background:white;

    padding:50px;

    border-radius:15px;

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

}

.form-control{

    min-height:55px;

}

textarea.form-control{

    min-height:180px;

}


.header {
    background: #ffffff;
    box-shadow: 0 2px 20px rgba(0,0,0,.08);
}

.campaign-badge{
    margin-bottom:25px;
}

.campaign-badge span{
    display:inline-block;
    background:var(--accent);
    color:var(--primary);
    padding:10px 22px;
    border-radius:50px;
    font-weight:700;
    font-size:15px;
    letter-spacing:1px;
}

.hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-top:40px;
}

.hero-actions .btn{
    min-width:220px;
    height:55px;
    border-radius:50px;
    font-weight:600;
}

.landing-button{
    background: var(--accent);
    color: var(--primary);
    border: 2px solid var(--accent);
    border-radius:999px;
    padding:18px 42px;
    min-height:58px;
    font-weight: 700;
    transition: all .3s ease;
    box-shadow: 0 8px 20px rgba(244,196,48,.30);
    letter-spacing:.3px;
    font-size:18px;
}

.landing-button:hover{
    background: #e8b500;
    border-color: #e8b500;
    color: var(--primary);
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(244,196,48,.40);
}

.hero-actions .btn-outline-primary{

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

    color:var(--primary);

    border-radius:50px;

    transition:.3s;

}

.hero-actions .btn-outline-primary:hover{
    background:var(--primary);
    color:#fff;
}

.landing-wrapper{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:50px;
}

.landing-content{
    flex:0 0 46%;
    max-width:520px;
}

.landing-photo{
    flex:0 0 54%;
    display:flex;
    justify-content:center;
    align-items:flex-end;
}

.hero-links{
    margin-top:12px;
    font-size:14px;
}

.hero-links a{
    color:var(--primary);
    text-decoration:none;
}

.hero-links span{
    margin:0 8px;
    color:#bbb;
}

.first-name{
    font-weight:700;
}

.last-name{
    font-weight:900;
}

/* ==========================================================
   MOBILE FIRST
========================================================== */
@media (max-width:768px){
    #landing{
        padding:20px 0;
        min-height:auto;
    }

    .landing-wrapper{
        display:flex;
        flex-direction:column;
        gap:8px;
    }

    .landing-content{
        text-align:left;
        position:relative;
        z-index:2;
    }

    .landing-photo{
        /* margin-top:-70px; */
        display:block;
        /* margin:0 auto; */
        margin-top:-25px;
        z-index:1;
    }

    .landing-title{
        font-size: clamp(48px, 10vw, 62px);
        line-height:.92;
    }

    .landing-intro{
        font-size:17px;
        margin-top:14px;
        margin-bottom:8px;
    }

    .landing-text{
        font-size:15px;
        line-height:1.6;
    }

    .landing-button{
        width:100%;
        margin-top:10px;
    }

    .hero-links{
        text-align:center;
        margin-top:15px;
    }

    .campaign-badge{
        margin-bottom:18px;
    }
}