/*=========================================
  MWEMBU KINUTHIA FOUNDATION
  Main Stylesheet
==========================================*/

:root{

    --primary:#4B218B;
    --secondary:#D63384;
    --accent:#1BC5BD;
    --light:#F8F9FA;
    --dark:#212529;
    --white:#ffffff;

    --transition:.4s ease;
    --radius:12px;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Poppins',sans-serif;
    color:var(--dark);
    background:#fff;
    overflow-x:hidden;

}

/*=========================
TOP BAR
==========================*/

.top-bar{

    background:var(--primary);
    color:#fff;
    font-size:14px;
    padding:10px 0;

}

.top-bar i{

    color:var(--accent);
    margin-right:8px;

}

/*=========================
NAVBAR
==========================*/

.navbar{

    transition:.4s;
    padding:15px 0;
    z-index:999;

}

.navbar-brand img{

    transition:.4s;

}

.navbar-nav .nav-link{

    font-weight:500;
    color:var(--dark);
    margin-left:15px;
    transition:.3s;

}

.navbar-nav .nav-link:hover{

    color:var(--secondary);

}

.btn-donate{

    background:var(--secondary);
    color:#fff;
    border-radius:40px;
    padding:10px 30px;
    font-weight:600;

}

.btn-donate:hover{

    background:var(--primary);
    color:#fff;

}

/*=========================
HERO
==========================*/

.hero{

    position:relative;
    min-height:100vh;

    background-image:url('../images/hero1.jpg');
    background-size:cover;
    background-position:center;
    background-attachment:fixed;

    display:flex;
    align-items:center;

}

.overlay{

    position:absolute;
    inset:0;

    background:linear-gradient(

    rgba(34,17,80,.82),
    rgba(27,197,189,.55)

    );

}

.hero .container{

    position:relative;
    z-index:10;

}

.hero-tag{

    display:inline-block;
    background:rgba(255,255,255,.15);
    color:#fff;

    padding:10px 20px;

    border-radius:50px;

    margin-bottom:25px;

}

.hero h1{

    color:#fff;

    font-size:68px;

    font-weight:700;

    line-height:1.15;

}

.hero h1 span{

    color:var(--accent);

}

.hero p{

    color:#fff;

    margin-top:25px;

    max-width:650px;

    font-size:20px;

}

.hero-logo{

    max-width:320px;

    animation:float 4s ease-in-out infinite;

}

/*=========================
BUTTONS
==========================*/

.btn-primary{

    background:var(--secondary);
    border:none;
    padding:15px 35px;
    border-radius:40px;

}

.btn-primary:hover{

    background:var(--primary);

}

.btn-outline-light{

    border-radius:40px;
    padding:15px 35px;

}

/*=========================
SCROLL ICON
==========================*/

.scroll-down{

    position:absolute;

    bottom:35px;

    left:50%;

    transform:translateX(-50%);

    font-size:38px;

    z-index:100;

}

.scroll-down a{

    color:#fff;

    animation:bounce 2s infinite;

}

/*=========================
SECTIONS
==========================*/

section{

    padding:100px 0;

}

.section-title{

    font-size:42px;

    font-weight:700;

    color:var(--primary);

    margin-bottom:25px;

}

.section-subtitle{

    color:var(--secondary);

    text-transform:uppercase;

    letter-spacing:2px;

    font-weight:600;

}

/*=========================
CARDS
==========================*/

.card{

    border:none;

    border-radius:var(--radius);

    transition:var(--transition);

}

.card:hover{

    transform:translateY(-12px);

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

/*=========================
ICONS
==========================*/

.icon-box{

    width:80px;

    height:80px;

    border-radius:50%;

    background:var(--accent);

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:34px;

    margin:auto;

}

/*=========================
IMAGES
==========================*/

img{

    max-width:100%;

}

.rounded-img{

    border-radius:20px;

}

/*=========================
FOOTER
==========================*/

footer{

    background:#181818;

    color:#ddd;

    padding:60px 0 20px;

}

footer a{

    color:#ccc;

    text-decoration:none;

}

footer a:hover{

    color:var(--accent);

}

/*=========================
ANIMATIONS
==========================*/

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-15px);

}

100%{

transform:translateY(0);

}

}

@keyframes bounce{

0%,20%,50%,80%,100%{

transform:translateY(0);

}

40%{

transform:translateY(-10px);

}

60%{

transform:translateY(-5px);

}

}

/*=========================
TABLETS
==========================*/

@media(max-width:992px){

.hero h1{

font-size:48px;

}

.hero{

text-align:center;

}

.hero-logo{

margin-top:50px;

max-width:250px;

}

}

/*=========================
MOBILE
==========================*/

@media(max-width:768px){

.hero h1{

font-size:38px;

}

.hero p{

font-size:17px;

}

.section-title{

font-size:30px;

}

.top-bar{

text-align:center;

}

.top-bar .text-end{

text-align:center!important;

margin-top:5px;

}

.navbar{

padding:10px;

}

}
/* Scroll Reveal Animation */

.reveal{
    opacity:0;
    transform:translateY(50px);
    transition:all .8s ease;
}

.reveal.active{
    opacity:1;
    transform:translateY(0);
}
/*=========================================
Impact Section
==========================================*/

.impact-section{

background:linear-gradient(135deg,#4B218B,#1BC5BD);

}

.counter{

font-size:60px;
font-weight:700;

}

/*=========================================
Gallery
==========================================*/

.gallery-img{

transition:.4s;
cursor:pointer;
height:280px;
width:100%;
object-fit:cover;

}

.gallery-img:hover{

transform:scale(1.05);

}
.partner-logo{

max-height:80px;
filter:grayscale(100%);
opacity:.7;
transition:.4s;

}

.partner-logo:hover{

filter:none;
opacity:1;
transform:scale(1.1);

}

.cta-section{

padding:100px 0;
background:linear-gradient(135deg,#4B218B,#D63384);
color:#fff;

}

.newsletter{

padding:70px 0;
background:#4B218B;

}

footer{

background:#111;
color:#ddd;

}

footer h5{

color:#fff;
margin-bottom:20px;

}

footer a{

color:#ddd;
text-decoration:none;

}

footer a:hover{

color:#1BC5BD;

}

form .form-control{

padding:15px;
border-radius:10px;

}

.btn{

border-radius:50px;

}