@import url('https://fonts.googleapis.com/css2?family=Noticia+Text:ital,wght@0,400;0,700;1,400;1,700&family=Playwrite+US+Trad:wght@100..400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noticia+Text:ital,wght@0,400;0,700;1,400;1,700&family=Playwrite+AU+QLD:wght@100..400&family=Playwrite+US+Trad:wght@100..400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noticia+Text:ital,wght@0,400;0,700;1,400;1,700&family=Outfit:wght@100..900&family=Playwrite+AU+QLD:wght@100..400&family=Playwrite+US+Trad:wght@100..400&display=swap');

body {
    font-family: "Outfit", sans-serif;
    margin: 0;
}

button {
    cursor: pointer;
}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 300px;
    color: #131313;
    position: relative;
}


.nav-link {
    color: #131313;
    text-decoration: none;
    padding: 10px 15px;
    transition: background-color 0.3s;
}

.nav-link:hover {
    color: #575757;
}

.nav-center {
    display: flex;
    justify-content: center;
    flex-grow: 1;
}

.nav-center .nav-link {
    padding: 0 10px;
}

.hamburger {
    display: none;
    font-size: 24px;
    cursor: pointer;
    position: absolute;
}

.nav-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: white;
}

.nav-menu .nav-link {
    display: block;
    padding: 10px 20px;
}

.plain-links {
    text-decoration: none;
    color: #fff;
}
.plain-links-two {
    text-decoration: none;
    color: #000;
}

.opac img:hover {
    opacity: .7;
}

.left {
    font-family: "Playwrite US Trad", cursive;
    /* font-family: "Playwrite AU QLD", cursive; */
}
.home-main {
    display: flex;
    justify-content: center; /* Horizontal alignment */
    padding: 20px;
}
.top {
    margin-top: 50px;
    text-align: center;
    max-width: 600px;
    font-weight: 250;
}
.top h1 {
    font-size: 40px;
    margin-bottom: 5px;
    font-weight: 400;
}
.top p {
    font-size: 20px;
}
.top button {
    padding: 15px;
    background-color: #fff;
    border: 1px solid black;
    font-size: 16px;
    /* border-radius: 8px; */
}
.top button:hover {
    /* background-color: #942419; */
    font-weight: 250;
}

.top .left-btn {
    margin-right: 10px;
    background-color: black;
    color: white;
}

.image-section {
    text-align: center;
    padding-bottom: 10px;
}

.home-image {
    width: 800px;
    height: auto;
}

.four-hundred {
    height: 175px;
    background-color: #0A0A0A;
    text-align: center;
    color: white;
}
.four-hundred img {
    padding: 50px 0px 0px 0px;
}
.four-hundred p {
    padding-top: 0px;
    margin-top: 5px;
}
.two-hundred {
    padding: 0px 275px;
    margin: 0px;
    height: 150px;
    background-color: #0A0A0A;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    text-align: center;
    color: white;
}
.item {
    padding: 50px;
    border-top: 1px solid #3f3f3f;
    border-bottom: 1px solid #3f3f3f;
    justify-content: center;
    align-items: center;
}
.item button {
    padding: 15px;
    background-color: #fff;
    border: 1px solid black;
    font-size: 18px;

}
.item button:hover {
    /* background-color: #ffae00; */
    font-weight: 250;
}
.port {
    vertical-align: middle; /* Aligns image with the text */
    margin-bottom: 2px; /* Adjust this value to fine-tune the vertical alignment */
}
.port2 {
    vertical-align: middle; /* Aligns image with the text */
    margin-bottom: 4px; /* Adjust this value to fine-tune the vertical alignment */
}
.two p {
    border-left: solid #3f3f3f 1px;
    border-right: solid #3f3f3f 1px;
}
.two-hundred p {
    padding: 0px;
    margin: 0px;
}
.footer {
    background-color: #0A0A0A;
    margin: 0px;
    padding: 50px 275px;
    color: white;
}
.footer p {
    padding-bottom: 10px;
    margin: 0px;
}
.right {
    float: right;
    font-size: 24px;
}
.fa {
    padding: 0px 5px;
}
.footer .right i {
    transition: transform 0.3s ease;
}

.footer .right i:hover {
    transform: translateY(-5px);
}
.no-style {
    text-decoration: none; /* Removes underline */
    color: inherit;       /* Inherits color from parent element */
    background: none;     /* Removes any background styling */
    border: none;         /* Removes any border styling */
    font-weight: normal;  /* Resets font weight if needed */
}

/* About Page */

.about {
    margin-top: 50px;
    max-width: 600px;
    font-weight: 250;
}

.about h1 {
    font-size: 30px;
    font-weight: 350;
}

.about h2 {
    font-size: 30px;
    font-weight: 350;
}

.about p {
    font-size: 20px;
}

.about img {
    width: 100%;
    height: auto;
}

/* Books Page */

.books {
    display: flex;
    flex-direction: column; /* Stacks the sections vertically */
    max-width: 600px;
    margin: 0 auto; /* Centers the container horizontally */
    margin-top: 50px;
}

.books h1 {
    font-size: 30px;
    font-weight: 350;
}

.books p, li {
    font-size: 20px;
}

.book-image, .book-content {
    font-weight: 250;
    flex: 1; /* Each section will take up an equal amount of space */
}

.book-content img {
    width: 100%;
    height: auto;
}

.book-image {
    display: flex; /* Enables Flexbox on .book-image */

    justify-content: center; /* Centers items horizontally within .book-image */
}
.book-image img {
    max-width: 600px; /* Ensures the image fills the section */
    height: auto; /* Maintains the aspect ratio */
}

.center {
    text-align: center;
}

/* Contact Form */

.contact-image {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

/* Basic styling for the contact form */
.contact-style {
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.contact-style label {
    display: block;
    margin-bottom: 8px;
    font-weight: bold;
    color: #333;
}

.contact-style input[type="text"],
.contact-style input[type="email"],
.contact-style input[type="phone"],
.contact-style textarea {
    width: calc(100% - 20px);
    padding: 10px;
    margin-bottom: 16px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
    box-sizing: border-box;
}

.contact-style textarea {
    height: 150px;
}

.contact-style input[type="checkbox"] {
    margin-right: 10px;
}

.contact-submit {
    display: inline-block;
    padding: 12px 20px;
    font-size: 16px;
    color: #fff;
    background-color: #007bff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.3s ease;
}

.contact-submit:hover {
    background-color: #0056b3;
}

.contact-style p {
    margin: 0;
    padding: 0;
    color: #666;
    font-size: 14px;
}

/* Resume Page */

.resume {
    margin-top: 50px;
    max-width: 600px;
    font-weight: 250;
}

.resume h1 {
    font-size: 30px;
    font-weight: 350;
    
}

.resume h2 {
    font-size: 27px;
    font-weight: 350;
    margin-bottom: 0px;
}

.resume h3 {
    font-weight: 500;
    padding-bottom: 1px;
    margin-bottom: 0px;
}

.resume h4 {
    font-weight: 375;
    padding: 1px 0px;
    margin: 0px;
    font-size: 18px;
    font-style: italic;
}

.resume p {
    font-size: 20px;
}

.resume img {
    width: 100%;
    height: auto;
}

.float-right {
    float: right;
}

/* Portfolio Page */
/* Portfolio Page */
.templates {
    display: flex;
    justify-content: center; /* Center the sections horizontally */
    gap: 20px; /* Add space between each section */
    padding: 10px 50px;
    margin-bottom: 20px;
}

.site-one, .site-two, .site-three {
    position: relative; /* Enable absolute positioning for the text overlay */
    width: 380px;
    height: 300px;
    
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    color: white; /* Set text color to white for contrast */
    overflow: hidden; /* Ensure content stays within the border radius */
}

.site-one .overlay, .site-two .overlay, .site-three .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9); /* Semi-transparent overlay */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    text-align: center;
    border-radius: 20px; /* Match the border radius of the section */
    box-sizing: border-box; /* Ensure padding is included in the element's width */
    opacity: 0; /* Make the overlay invisible by default */
    transition: opacity 0.3s ease; /* Smooth transition for the overlay */
}

.site-one:hover .overlay, .site-two:hover .overlay, .site-three:hover .overlay {
    opacity: 1; /* Make the overlay visible on hover */
}

.site-one {
    background-image: url('img/taco-truck-image.png');
}
.site-two {
    background-image: url('img/yellow-food-truck.png');
}
.site-three {
    background-image: url('img/coffee-truck.png');
}

.overlay h2 {
    margin: 0;
    font-size: 24px;
}

.overlay p {
    margin-top: 10px;
    font-size: 16px;
}

.recent-work {
    background-color: white;
    padding: 10px;
    border-radius: 10px;
}


@media  (max-width: 1024px) {
    .navbar {
        padding: 10px 15px;
    }
    .footer {
        padding: 50px 15px;
    }
    .two-hundred {
        padding: 0px 15px;
        grid-template-columns: repeat(1, 1fr);
        height: auto;
    }
    .books {
        flex-direction: column; /* Stacks the sections vertically */
    }
    .book-content {
        padding: 0px 10px;
    }
    .templates {
        flex-direction: column; /* Stack sections vertically */
        align-items: center; /* Center the sections */
    }

    .site-one, .site-two, .site-three {
        width: 100%; /* Make sections take full width */
        max-width: 380px; /* Optional: Set a max width to keep sections from getting too wide */
    }
}
@media (max-width: 768px) {
    .navbar {
        flex-direction: column;
        align-items: flex-start;
    }

    .nav-center {
        display: none;
    }

    .hamburger {
        display: block;
        position: absolute;
        top: 15px;
        right: 16px;
    }

    .nav-menu {
        display: none;
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    .nav-menu.active {
        display: flex;
    }

    .nav-link.right {
        display: none;
    }
    .navbar {
        padding: 10px 15px;
    }
    .top h1 {
        font-size: 30px;
    }
    .home-image {
        width: 400px;
        height: auto;
    }
}
@media (max-width: 400px) {
    .home-image {
        width: 350px;
        height: auto;
    }
}