/* Variables */

:root{
    --primary:  rgb(250, 240, 230);
    --secondary: #0B0B0B;
    --accent: #003049;
}

/* reset */
body,p,a,ul,li{
margin: 0;
padding: 0;
text-decoration: none;
}

li{
    list-style-type: none;
}

/* Base */

body {
    overflow-x: hidden;
    background-color: whitesmoke;
}

.amazon a {
    color: white;
}

.amazon {
    background: none;
    border: 2px solid red;
    color: black;
    padding: 6px 8px;
    border-radius: 8px;
    text-transform: uppercase;
    /* box-shadow: 1px 2px 3px rgba(0, 0, 0, 0, 0.6); */
    animation: blinky 2s infinite alternate;
}

@keyframes blinky {
    0% {
        background: none;
        border: 2px solid red;
        color: red;
    }
    100% {
        background: red;
        border: 2px solid #222;
        color: #222;
    }
}


.amazon:hover{
    color: #222;
    background: red;
    padding: 10px;
}

input, textarea{
    background: white;
    padding: 10px 16px;
    border-radius: 20px;
}

.nav {
    width: 100vw;
    background-color: #0B0B0B;
}

nav {
    background-color: var(--secondary);
    color: white;
}

/* this styles the navbar menu */
#menu-toggle {
    display: none;
    flex-direction: column;
    cursor: pointer;
    
}

.bar {
    width: 30px;
    height: 3px;
    background-color: white;
    margin: 4px 0;
}

footer {
    background-color: var(--secondary);
    color: white;
    text-align: center;
}

/* Fonts */
@font-face {
    font-family: 'Rubik Regular';
    src: url(fonts/Rubik/static/Rubik-Regular.ttf);
}

h1,h2,h3,h4{
    font-weight: bold;
}

/* p,a,li{
    color: black;
} */

h1 {
    font-size: 2em;
}

h3{
    font-size: 1.3;
    color: #003049;
}

h2{
    font-size: 1.6em;
}

h4{
    font-size: 1.1em;
}

p{
    font-size: 1em;
}

/* Default background styles */



/* Blinking text for banner text */
  .blinking-text2 {
    margin-left: 20px;
    font-weight: bolder;
    animation: blink2 4s infinite alternate;
}

@keyframes blink2 {
    0% {
        color: red;
    }
    25% {
        color: red;
    }
    50% {
        color: goldenrod;
    }
    75% {
        color: gold;
    }
    100% {
        color: white;
    }
}
  
/* Blinking text main h1 text */

.blinking-text {
    font-weight: bolder;
    animation: blink 4s infinite alternate;
    margin-bottom: 40px;
}

@keyframes blink {
    0% {
        color: #003049;
    }margin-left
    25% {
        color: red;
    }
    50% {
        color: pink;
    }
    75% {
        color: gold;
    }
    100% {
        color: orange;
    }
}
  
  

/* Mobile Styles */

.main {
    text-align: center;
    height: 80%;
    margin-bottom: -10px;
    padding: 10px;
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
}

.main h1 {
    width: 85%;
    grid-column: span 8;
    grid-row: 1;
    margin-left: 20px;
    margin-top: -50px;
}

.main p {
    grid-row: 2;
    grid-column: span 9;
    text-align: justify;
}

.vince {
    grid-row: 2;
    width: 90%;
    margin-bottom: 30px;
    border-bottom: #003049 3px solid;
    padding: 30px;
}

.vince p {
    text-align: justify;
    margin-left: 20px;
}

.kelly {
    grid-row: 3;
    grid-column: span 11;
    width: 90%;
    margin-bottom: 30px;
    border-bottom: #003049 3px solid;
    padding: 30px;
}


.mob-info {
    grid-column: span 13;
    grid-template-columns: repeat(9, 1fr);
    grid-row-gap: 20px;
    
}

.mob-info h1 {
    grid-column: span 10;
    grid-row: 1;
}

.mob-info .profile {
    grid-column: span 10;
    grid-row: 3;
}

.mob {
    text-align: justify;
    grid-column: span 10;
    grid-row: 2;
}

.kelly-info h2 {
    grid-column: span 13;
}

.kelly-info {
    grid-column: span 13;
    grid-template-columns: repeat(9, 1fr);
}

.kelly-info .profile {
    grid-column: span 10;
    grid-row: 2;
}

.kelly p {
    text-align: justify;
    grid-column: span 9;
    grid-row: 3;
}

.john {
    grid-row: 4/7;
    width: 90%;
    margin-bottom: 30px;
    border-bottom: #003049 3px solid;
    padding: 30px;
    
}

.john p {
    text-align: justify;
    margin-left: 20px;
}

.profile{
    max-height: 400px;
    max-width: 400px;
    margin-bottom: 20px;
    margin-left: 5px;
}

.book {
    height: 200px;
    margin-bottom: 10px;
}

.vbook1{
    margin-bottom: 10px;
    margin-top: 30px;
    text-align: center;
}

.vbook1 p {
    margin-bottom: 20px;
    text-align: justify;
}

.main h3 {
    margin-left: 0px;
}

.grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    box-sizing: border-box;
}

.site-nav {
    width: 100vw;
}

/* Hiding menu on mobile */

.site-nav ul {
    display: none; /* Hide the menu by default */
    flex-direction: column;
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--secondary);
    z-index: 1;
    margin-top: 50px;
    padding: 15px;
}

.site-nav ul li{
    color: white;
    margin-top: 5px;
}

.site-nav ul li a {
    color: white;
}

.site-nav ul.active {
    display: flex; /* Display the menu when the active class is applied */
}

/* Ensure the hamburger icon is visible when the menu is active */
.site-nav ul.active + #menu-toggle {
    display: flex;
}

.site-nav h1 {
    grid-column: 1/4;
    grid-row: 1;
    margin-bottom: 3px;
    border-bottom: 3px solid red;
    color: white;
    margin-left: 10px;
}


/* Styles for the hamburger menu icon */

nav li {
    margin-left: 2px;
    
}

nav {
margin-bottom: 100px;

} 

ul.active {
    display: flex;
}

#menu-toggle {
    display: flex; /* Change it back to flex to make the hamburger menu visible */
    flex-direction: column; /* Change to column */
    cursor: pointer;
    position: absolute; /* Position it absolutely to overlap other content */
    top: 10px; /* Adjust the top positioning as needed */
    right: 10px; /* Adjust the right positioning as needed */
    z-index: 1; /* Ensure it's above other content */
    margin-right: 20px;
}

.bar {
    width: 30px;
    height: 3px;
    background-color: white;
    margin: 4px 0;
}

    footer{
        height: 50px;
        padding: 5px;
        margin-top: 20px;
    }

    footer p {
        margin-top: 20px;
        font-size: medium;
    }

/* weired 629px breakpoint */
@media screen and (min-width: 589px){
    

    .main {
        width: 90vw;
    }

    .mob-info {
        margin-right: 0px;
        grid-column: span 13;
        gap: 10px;
        
    }

    
    .mob {
        border-right: #003049 solid 3px;
        border-bottom: #003049 solid 3px;
        padding: 15px;
    }

    .mob-info h1 {
        grid-column: span 13;
    }

    .mob-info .profile {
        grid-column: span 5;
        grid-row: 2;
        height: 235px;
    }

    .grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        box-sizing: border-box;
        width: 100w;
        max-width: 1060px;
    }

    h1 {
        grid-column: 4/7;
    }


    
    .kelly {
        grid-column: span 13;
    }

    .kelly-info {
        grid-column: span 14;
        gap: 10px;
        margin-right: 0px;
        grid-template-columns: repeat(10, 1fr);
    }

     .kelly-info h2 {
        grid-row: 1;
        grid-column: span 15;
    }

    .kelly-info .profile {
        grid-column: span 4;
        grid-row: 2;
        height: 280px;
        margin-left: -20px;
    }

    .kelly-info p {
        grid-column: 6/14;
        grid-row: 2;
        border-right: #003049 solid 3px;
        border-bottom: #003049 solid 3px;
        padding: 15px;
    } 
    


    .vince .blinking-text {
        text-align: center;
        width: 90%;
        grid-column: span 10;
        grid-row: 1;
    }

    .vince-pic {
        display: grid;
        grid-row: 2;
        grid-template-columns: repeat(2, 1fr);
        width: 90vw;
        gap: 5px;
    }

    .profile {
        height: 1000px;
    }



    .kelly-books {
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        margin-top: 20px;
        margin-left: -5px;
    }

    .kelly-books h3 {
        grid-column: span 11;
       
        
    }

    .book {
        height: 160px;
        margin-bottom: 10px;
       
    }

    .desc {
        border-right: #003049 solid 3px;
        border-bottom: #003049 solid 3px;
        margin-left: -10px;
        padding: 15px;
    }

    .vbook1 {
        border:  3px solid #003049;
        padding: 15px;
    }
}

/* Small Tablet Styles */
@media screen and (min-width: 860px) {
    body{
        font-size: 16px;
    }

    .kelly {
        grid-column: span 13;
        
    }

     /* .mob-info {
       
        grid-column: span 13;
    }

    .mob-info h1 {
        grid-column: span 13;
    }

    .mob-info .profile {
        grid-column: span 2;
        grid-row: 2;
    } */

    .kelly-books {
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 4%;
        margin-top: 20px;
        
    }

    .kelly-books h3 {
        grid-column: span 11;
        
    }

    .book{
        height: 230px;
    }

    #menu-toggle {
        display: none;
        }
    
        .site-nav ul {
            /* display: none;  Hide the menu by default */
            display: flex;
            flex-direction:row;
            position: absolute;
            top: 0;
            right: 0;
            background-color: var(--secondary);
            z-index: 1;
            margin-top: 8px;
            padding: 1px;
            margin-right: 40px;
        }
        
        .site-nav ul li{
            color: white;
            margin-top: 5px;
            font-size: medium;
            margin-left: 15px;
            padding: 10px;
            border-radius: 12px;
        }
        
        .site-nav ul li a {
            color: white;
            
        }
        
        .site-nav ul.active {
            display: flex; /* Display the menu when the active class is applied */
        }

    .nav {
        width: 100vw;
        background-color: #0B0B0B;
        padding: 5px;
        height: 50px;
        position: fixed;
        top: 0;
    }

    .site-nav{
        height: 100%;
    }

    .blinking-text2 {
        margin-top: 5px;
        margin-left: 10px;
    }

    .main{
        
        margin-top: 150px;
        width: 90vw;
    }

    footer{
        height: 50px;
        padding: 5px;
        margin-top: 200px;
    }

    footer p {
        margin-top: 20px;
        font-size: medium;
    }

    .grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        box-sizing: border-box;
        width: 100%;
        max-width: 1060px;
    }

    h1 {
        grid-column: 4/7;
        width: 90%;
    }

    .main {
        width: 90vw;
    }


    .vince .blinking-text {
        text-align: center;
        width: 90%;
        grid-column: span 10;
        grid-row: 1;
    }

    .vince-pic {
        display: grid;
        grid-row: 2;
        grid-template-columns: repeat(2, 1fr);
        width: 90vw;
        gap: 2px;
    }

    .profile {
        height: 300px;
        width: 300px;
    }



    .vince-books {
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        padding: 20px;
        gap: 50px;
        margin-top: 50px;
    }

    .vbook1 {
        border:  3px solid #003049;
        padding: 15px;
    }

    .vince-books h3 {
        grid-column: span 3;
        
    }

    .desc {
        border-right: #003049 solid 3px;
        border-bottom: #003049 solid 3px;
        margin-left: -10px;
        padding: 15px;
    }

}

/* Large Tablet and laptops Styles */
@media screen and (min-width: 960px) {
    body{
        font-size: 15px;
        
    }

    .mob-info h1 {
        grid-column: 4/9;
    }

    .mob {
        margin-left: 50px;
    }


    .profile {
        height: 350px;
        width: 350px;
    }

    .kelly-books {
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        margin-top: 20px;
        margin-right: -170px;
    }

    .kelly-books h3 {
        grid-column: span 13;
        
    }

    .kelly-info p {
        grid-column: 7/19;
    }

    .book{
        height: 250px;
    }

    .grid{
        width: 100%;
        max-width: 1060px;
        margin: 0 auto;
    }

    .main h1 {
        
        width: 90%;
        grid-column: 3/13;
        grid-row: 1;
        margin-left: 20px;
        margin-top: 10px;
    }
    
    .main h3 {

        margin-left: 20px;
    
        
    }

    #menu-toggle {
        display: none;
        }
    
        .site-nav ul {
            /* display: none;  Hide the menu by default */
            display: flex;
            flex-direction:row;
            position: absolute;
            top: 0;
            right: 0;
            background-color: var(--secondary);
            z-index: 1;
            margin-top: 8px;
            padding: 1px;
            margin-right: 40px;
        }
        
        .site-nav ul li{
            color: white;
            margin-top: 5px;
            font-size: medium;
            margin-left: 15px;
            padding: 10px;
            border-radius: 12px;
        }
        
        .site-nav ul li a {
            color: white;
            
        }
        
        .site-nav ul.active {
            display: flex; /* Display the menu when the active class is applied */
        }

    .nav {
        width: 100vw;
        background-color: #0B0B0B;
        padding: 5px;
        height: 50px;
        position: fixed;
        top: 0;
    }

    .site-nav{
        height: 100%;
    }

    .blinking-text2 {
        margin-top: 5px;
        margin-left: 10px;
    }

    .main{
        margin-top: 80px;
        margin-left: 30px;
        width: 90vw;
    }

    footer{
        height: 50px;
        padding: 5px;
        margin-top: 10px;
    }

    footer p {
        margin-top: 20px;
        font-size: medium;
    }
}

/* desktop Styles */
@media screen and (min-width: 1200px) {
    body{
      font-size: 17px;  
    
    }

    .kelly {
        grid-column: 1/13;
    }

    .profile {
        height: 400px;
        width: 400px;
    }

    .kelly-info p {
        width: 700px;
        margin-left: -70px;
    }

    .mob {
        width: 690px;
        margin-left: 10px;
    }

    .mob-info {
        grid-column:1/15 ;
        margin-left: -120px;
    }

    .kelly-info {
        grid-column:1/15 ;
        margin-left: -100px;
    }

    /* .kelly-info p {
        grid-column: 7/19;
        width: 600px;
    } */

    .main{
        grid-column: 1/19;
  
    }

    .kelly-books {
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        margin-top: 20px;
        margin-left: -80px;
    }

    .kelly-books h3 {
        grid-column: span 13;
    
        
    }

    .book{
        height: 300px;
    }
    
     #menu-toggle {
    display: none;
    }

    .site-nav ul {
        /* display: none;  Hide the menu by default */
        display: flex;
        flex-direction:row;
        position: absolute;
        top: 0;
        right: 0;
        background-color: var(--secondary);
        z-index: 1;
        margin-top: 8px;
        padding: 1px;
        
    }
    
    .site-nav ul li{
        color: white;
        margin-top: 5px;
        font-size: medium;
        margin-left: 15px;
        padding: 10px;
        border-radius: 12px;
    }
    
    .site-nav ul li a {
        color: white;
        
    }
    
    .site-nav ul.active {
        display: flex; /* Display the menu when the active class is applied */
    }

    .nav {
        width: 100vw;
        background-color: #0B0B0B;
        padding: 5px;
        height: 50px;
        top: 0;
        position: fixed;
    }

    .site-nav{
        height: 100%;
    }

    .blinking-text2 {
        margin-top: 5px;
        margin-left: -60px;
    }

    .main{
        margin-top: 100px;
        margin-left: 150px;
    }

    footer{
        height: 50px;
        padding: 5px;
       margin-top: 100px;
    }

    footer p {
        margin-top: 20px;
        font-size: medium;
    }
}

@media screen and (min-width: 1280px) {

    
    .profile {
        height: 400px;
        width: 400px;
    }

    .kelly-info p {
        width: 700px;
        margin-left: -10px;
    }

    .mob {
        width: 690px;
        margin-left: 10px;
    }

    .mob-info {
        grid-column:1/15 ;
        margin-left: -70px;
    }

    .kelly-info {
        grid-column:1/15 ;
        margin-left: -100px;
    }
}
