* {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    text-decoration: none;
    list-style: none;
    box-sizing: border-box;
    /* padding and border are included in the width and height */
}

:root {
    --color--primary: rgb(148, 37, 208);

    /* xs (for phones - screens less than 768px wide)
    sm (for tablets - screens equal to or greater than 768px wide)
    md (for small laptops - screens equal to or greater than 992px wide)
    lg (for laptops and desktops - screens equal to or greater than 1200px wide)  */
    --container-width-lg: 76%;
    --container-width-md: 76%;
    --container-width-sm: 76%;

    --transition: all 400ms ease;
    /* transitions allows us  to change property values smoothly, over a given duration. */
    /* specifies a transition effect with a slow start, then fast, then end slowly  */
}

body {
    font-family: 'Montserrat', sans-serif;
    line-height: 2;
    /* specifies the height of a line. */
    color: white;
    background: #1f2641;
}

.container {
    width: var(--container-width-lg);
    margin: 0 auto;
}

section {
    padding: 6rem 0;
    /* 1rem=16pixel */
}

section h2 {
    text-align: center;
    margin-bottom: 4rem;
}

h1,
h2,
h3,
h4,
h5 {
    line-height: 1.2;
}

h1 {
    font-size: 2.4rem;
}

h2 {
    font-size: 2rem;
}

h3 {
    font-size: 1.6rem;
}

h4 {
    font-size: 1.3rem;
}

a {
    color: white;
}

img {
    width: 100%;
    display: block;
    object-fit: cover;
}

.btn {
    display: inline-block;
    background-color: black;
    background: rgb(225, 53, 53);
    padding: 1rem 2rem;
    border: 1px solid transparent;
    font-weight: 500;
    transition: var(--transition);
}

.btn:hover {
    background: transparent;
    color: white;
    border-color: white;
}

.btn-primary {
    background: rgb(243, 71, 9);
    color: white;
    padding: 0.89rem;
}


/* ******************  NAVBAR  ****************** */
nav {
    background: transparent;
    width: 100vw;
    height: 5rem;
    position: fixed;
    top: 0;
    z-index: 11;
}

/* Changing navbar style on scroll using javascript */
.window-scroll {
    background: #2e3260;
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.2);
    /* x y blur color  */
}

.nav__container {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

 nav button {
    display: none;
} 

.nav__menu {
    display: flex;
    align-items: center;
    gap: 4rem;
}

.nav__menu a {
    font-size: 0.9rem;
    transition: all 400ms ease;
}

.nav__menu a:hover {
    color: #424890;
}

/* ******************  HEADER  ****************** */
header {
    position: relative;
    /* positioned relative to its normal position */
    top: 5rem;
    overflow: hidden;
    /* The overflow is clipped, and the rest of the content will be invisible. Content can be scrolled programmatically */
    height: 80vh;
    margin-bottom: 5rem;
}

.header__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 5rem;
    height: 100%;
    /* margin:2px auto; */
}

.header__left p {
    margin: 1rem 0 2.4rem;

}

/* ******************  CATEGORIES  ****************** */
.categories {
    background: #4b2e67;
    height: 29rem;
}

.categories h1 {
    line-height: 1;
    margin-bottom: 3rem;
}

.categories__container {
    display: grid;
    grid-template-columns: 40% 60%;
}

.categories__left {
    margin-right: 4rem;
}

.categories__left p {
    margin: 1rem 0 3rem;
}

.categories__right {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.2rem;
}

.category {
    background: #634290;
    padding: 2rem;
    border-radius: 2rem;
    transition: var(--transition);
}

.category:hover {
    /* X-axis Y-axis Blur color */
    box-shadow: 0 3rem 3rem rgba(0, 0, 0, 1.3);
    z-index: 1;
}

.category:nth-child(1) .category__icon {
    background: rgb(201, 111, 47);
}

.category:nth-child(2) .category__icon {
    background: rgb(201, 81, 41);
}

.category:nth-child(3) .category__icon {
    background: orangered;
}

.category__icon {
    background: #6b2da5;
    padding: 0.7rem;
    border-radius: 0.9rem;
}

.category h5 {
    margin: 2rem 0 1rem;
}

.category p {
    font-size: 0.85rem;
}

/* ******************  FOOTER  ****************** */
footer {
    background: #1f2641;
    padding-top: 5rem;
    padding-bottom: 1rem;
    font-size: 0.9rem;
}

.footer__container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5rem;
}

.footer__container h4 {
    margin-bottom: 1.2rem;
}

.footer_1 p {
    margin: 0 0 2rem;
}

footer ul li {
    margin-bottom: 0.7rem;
}

footer ul li a:hover {
    text-decoration: underline;
}