:root {

    --black: black;
    --dark-gray: #666;
    --medium-gray: #888;
    --light-gray: #aaa;
    --lightest-gray: #ccc;
    --white: #f5f5f4;
    --pinkwhite: #f6f4f3;
    --dark-peach: #eb7044;
    --peach: #f2a488;
    --light-peach: #f2b28d;
    --light-green: #90bf7c;
    --medium-green: #4c7d3d;
    --darker-green: #446006;
    --dark-green: #034001;
}


* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
html {
    font-size: 62.5%;
    height: 100%;
    width: 100%;
    scroll-behavior: smooth;
/* margin-top: 25px; */

}

body {
    /* background: hsl(11, 14%, 96%); */
    background: var(--white);
}
h1 {
    font-family: proxima-nova, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-variant: all-small-caps;
    font-size: 2.592rem;
    line-height: 2.3rem;
    padding-bottom: 4rem;
    padding-top: 2rem;
    letter-spacing: 5px;
    color: var(--black);
}

.huge {
    font-family: 'Playfair Display SC', serif;
    display: block;
    font-style: normal;
    font-variant: none;
    font-size: 7.250rem;
    line-height: 5.7rem;
    font-weight: 600;
    letter-spacing: 0;
    margin-left: 30px !important;
}

@media screen and (max-width: 1300px) {
    h1 {
        font-size: 2.16rem;
    }

    .huge {
        font-size: 5.7rem;
        line-height: 4.7rem;
    }
}

h2 {
    font-family: proxima-nova, sans-serif;
    font-weight: 700;
    font-size: 2.160rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--black);
}

/* h3 only used for menu dish names! */
h3 {
    font-family: proxima-nova, sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.5rem;
    letter-spacing: .5px;
    color: var(--black);
}

h4 {
    font-family: proxima-nova, sans-serif;
    font-weight: 700;
    font-size: 1.8rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--black);
}

p {
    font-family: proxima-nova, sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 2.2rem;
    padding: 0 1.5rem 1.5rem;
}

p a {
    color: var(--black);
    text-decoration: underline;
    text-decoration-color: var(--black);
        transition: all ease-in-out .15s;

}

/* hover = swap colors, no underline */
p a:hover, p a:focus {
    /* color: var(--medium-gray); */
    text-decoration: transparent;
    transition: all ease-in-out .15s;
}
    .link-cont {
        position: relative;
        font-size: 24px;
    }

    .link {
        display: inline-block;
        position: relative;
        text-decoration: none;
        padding: 5px 4px 5px 3px;
        transition: all ease-in-out .1s;
        /* color: #fff; */
    }

    .link-wrapper {
        position: relative;
        display: block;
        padding: 20px 0;
    }

    .hover-2:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 2px;
        transform: scaleX(0);
        transform-origin: left;
        background-color: var(--black);
        transition: transform 0.3s;
    }

    .hover-2:hover:after {
        transform: scaleX(1);
    }
    .hover-2:hover i {
        right: -25px;
        transition: all ease-in-out 0.2s;
    }
    .hover-2:focus i {
        right: 10px;
    }
/* FOCUS = swap f/b, add padding */
p a:focus, p a:focus-visible {
    color: var(--white);
    background-color: var(--black);
    padding: 5px 35px 5px 20px;
    transition: all ease-in-out .1s;
    outline: 2px solid black;
}
p a:focus i, p a:focus-visible i {
    right: 7px;
}

/* GLOBAL BUTTONS */
button {
    font-family: 'proxima-nova', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    text-transform: uppercase;
    height: 55px;
    width: fit-content;
    margin: 0 auto;

    border: none;
    transition: all ease-in-out .15s;
    cursor: pointer;
            border-radius: 12.5px;
}
button:hover {
    transform: scale(.97);
    transition: all ease-in-out .15sec;
}
/* WHITE BUTTON W/BLACK TEXT */
button.secondary {
    background-color: var(--white);
    color: var(--black);
    border: 3px solid var(--black)
}
/* BLACK BUTTON W/WHITE TEXT */
button.primary {
    background-color: var(--black);
    color: var(--white);
    border: 3px solid var(--black);
}
/*  //////////////  DESKTOP  //////////////  */
#container {
    display: grid;
    grid-template-rows: auto auto auto auto auto;
    grid-column-gap: 30px;
    grid-template-areas:
        "header"
        "main"
        "photo-grid"
        "full-overlay"
        "footer";
}

.mobile {
    display: none;
}

header {
    grid-area: header;
    height: 90px;
    width: 90%;
    /*max-width: 1400px;*/
    margin: 0 auto;
    z-index: 9999999999999;
}

#header-bg {
    background-color: var(--white);
    width: 100vw;
    height: 90px;
    /*min-height: 75px;*/
    /*max-height: 90px;*/
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    border-bottom: 9px solid black;
    z-index: 99999999999999;
}

.replace-logo {
    z-index: 990;
    position: fixed;
    top: 15px;
    overflow-x: hidden;
}

#logo,
.replace-logo {
    width: 25vw;
    max-width: 250px;
    margin-top: 9px;
}

.top {
    top: -20px;
    width: auto !important;
    height: auto;
    /*-webkit-transition: all ease-in-out .05s;*/
    /*-moz-transition: all ease-in-out .05s;*/
    /*-ms-transition: all ease-in-out .05s;*/
    /*-o-transition: all ease-in-out .05s;*/
    /*transition: all ease-in-out .05s;*/
}

nav {
    position: fixed;
    right: 2.5%;
    top: 30px;
    width: 95%;
    height: auto;
}

#mobileMenu {
    display: none;
}

nav ul {
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    width: 95%;
    margin: 0 auto;
    height: 36px;
}

nav ul li {
    margin: 0 2.75% 0 0;
    list-style-type: none;
    padding-bottom: 10px
}

nav ul li:last-of-type {
    margin-right: 0;
}

nav a {
    font-family: proxima-nova, sans-serif;
    font-weight: 700;
    font-size: 1.5rem;
    letter-spacing: 1px;
    font-style: normal;
    text-transform: uppercase;
    text-decoration: none;
    border: none;
    color: hsla(68, 5%, 12%, .3);
}

nav a:hover,
nav a:focus {
    color: var(--black);
    /* opacity: .4;     */
    outline: none;
    transition: all ease-in-out .25s;
}

nav a.active {
    font-weight: 700;
    color: var(--black);
    opacity: 1;
}

nav a.active:hover {
    cursor: default;
}

    /* DESKTOP NAV RESERVATION BUTTON */
    #resBtn-nav {
        height: 40px;
        padding: 6px 30px;
        position: relative;
        bottom: 0;
        right: 0;
        font-size: 1.45rem;
    }

main {
    grid-area: main;
    display: grid;
    margin: 0 auto 30px;
    width: 100%;
    grid-template-columns: 50% 50%;
    grid-template-rows: repeat(3, minmax(94vh, min-content));
}

/* for non-imac, viewport height lessens*/
@media (max-width: 1600px) {
    main {
        grid-template-rows: repeat(3, minmax(94vh, min-content));
    }
}

.main-image {
    height: auto;
    width: 100%;
}
.main-image#img1 {
    grid-column: 1 / span 1;
    background: url('../images/cafe2.jpeg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    /* height: 90vh; */
       /* border-radius: 0 0 5px 0; */
}

.main-image#img2 {
    grid-column: 2 / span 1;
    background: url('../images/aretusa.jpeg') no-repeat 30% 50%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
      /* border-radius: 5px 0 0 5px; */
}

.main-image#img3 {
    grid-column: 1 / span 1;
    background: url('../images/entree.jpeg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
      /* border-radius: 0 5px 5px 0; */
}

.text-overlay {
    z-index: 110;
    display: flex;
    padding: 60px 60px 60px 30px;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    background: var(--white);
    height: auto;
}

.text-overlay.left {
    grid-column: 1 / span 1;
    align-items: flex-end;
    padding: 60px 45px 60px 60px;
}

.text-overlay .text-box {
    max-width: 600px;
    padding-bottom: 30px;
}

.text-overlay .text-box p:not(.read-more) {
    margin-left: 30px;
    padding-left: 0;
}
.full-width {
    background-color: black;
    width: 100%;
    height: 50px;
}
p.read-more {
    color: var(--black);
    display: block;
    margin: auto 0 auto auto;
    padding: 4px 15px;
    text-align: right;
    font-family: proxima-nova, sans-serif;
    font-weight: 700;
    font-size: 1.5rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    width: fit-content;
    text-decoration: none !important;
    height: 30px;
    z-index: 999999999999999999;
}

.read-more i {
    font-size: 1.4rem;
    padding-left: 1rem;
    position: absolute;
    bottom: 10px;
    right: -20px;
    transition: all ease-in-out 0.1s;

}


.read-more-outer-div {
    display: block;
    margin-right: 15px;
}

/* .no-underline {
    border-bottom: none !important;
    padding-left: 6px;
}

.underline {
    border-bottom: 1px solid var(--black);
} */

/* MENU STYLES */
main.menu {
    grid-area: main;
    display: grid;
    grid-template-columns: 48.5% 48.5%;
    grid-template-rows: repeat(4, minmax(94vh, min-content));
    margin: 0 auto 30px;
    width: 100%;
    grid-column-gap: 3%;
    grid-row-gap: 150px;
}

main.menu {
    grid-area: main;
    display: grid;
    /*grid-template-columns: repeat(6,15%);*/
    grid-template-columns: repeat(6, 16.66666%);

    grid-template-rows: repeat(4, minmax(94vh, min-content));
    margin: 0 auto 30px;
    width: 100%;
    /*grid-column-gap: 2%;*/
    grid-column-gap: 0;
    grid-row-gap: 0;
}

.menu-image-left {
    /*grid-column: 1 / span 1;*/
    grid-column: 1 / span 3;
        /* border-radius: 0 5px 5px 0; */
}

.menu-image-right {
    /*grid-column: 2 / span 1;*/
    grid-column: 5 / span 2;
        /* border-radius: 5px 0 0 5px; */
}

.menu-overlay {
    background: var(--white);
    margin: 30px auto 60px!important;
}

.menu-overlay.left {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
}

.menu-overlay.right {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.menu-overlay.right {
    grid-column: 4 / span 3;
    max-width: 75%;
    margin: 0 auto;
}

.menu-overlay.left {
    grid-column: 1 / span 4;
    max-width: 90%;
    margin: 0 auto;
}
.menu h1 .huge {
    font-size: 5.75rem;
}
@media (max-width: 1300px) {
    .menu-overlay.right {
        /*grid-column: 4 / span 3;*/
        max-width: 90%;
        margin: 0 auto;
    }
    .menu h1 .huge {
        font-size: 4.7rem;
    }
    .menu h1 {
        padding-bottom: 2rem;
    }
}

#salads {
    background: url('../images/salad.jpeg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;;
        /* border-radius: 0 0 5px 0; */
}

#entrees {
    background: url('../images/entree.jpeg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

#sides {
    background: url('../images/side.jpeg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

#desserts {
    background: url('../images/dessert.jpeg') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.menu-overlay.right.salads {
    margin-top: 30px!important;
}
.menu-text {
    padding: 60px 15px;
    background-color: var(--white);
    /*max-width: 850px;*/
}

.menu-text .headline {
    text-align: center;
}

.menu-text .headline h1 .huge {
    margin-left: 0 !important;
}

.menu-text h3 {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-top: 2.4rem;
    padding-bottom: .5rem;
    line-height: 1.8rem;

}

.menu-text p {
    /*width: 100%;*/
    /*position: relative;*/
    padding-bottom: 0;
}

.menu-food {
    max-width: 550px;
}

.price {
    display: inline-block;
    font-size: 1.8rem;
    text-align: right;
}

.bolder {
    font-weight: 600;
    font-size: 1.4rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.bolder .number {
    vertical-align: center;
    font-size: 1.4rem;
    /*font-variant-numeric: lining-nums!important;*/
    padding: 0 1px;
    text-transform: uppercase;
}

.menu-text p.diet,
span.diet {
    font-family: 'Playfair Display';
    font-style: italic;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.8rem;
    color: var(--dark-gray);
    letter-spacing: .025rem;
    padding-top: 1rem;
    margin-top: 0;
}

/* NESTED MENU GRIDS */
.menu-grid {
    display: grid;
    grid-template-columns: 47.5% 47.5%;
    column-gap: 5%;
    grid-template-areas: "left right";
}

.menu-grid-left {
    grid-area: left;
}

.menu-grid-right {
    grid-area: right;
}

.dessert-list {
    padding: 0 0 2rem;
}

.dessert-list p {
    padding-bottom: 1.2rem;
}

.menu-grid p {
    width: 100%;
}

/* UN-NEST MENU GRIDS AT <1160px TO PREVENT TITLES FROM WRAPPING*/
@media (max-width: 1160px) {
    .menu-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-areas: "left""right";
    }

    .menu-text {
        background: none;
        margin: 0 auto;
        padding: 30px 6% 60px;
    }

    .dessert-list {
        padding: 0;
    }
}

        /* THE IMAGE GRID */
        .photo-grid-bg {
            border: 3px solid black;
            width: 90%;
            margin: 180px auto;
        }
        .photo-grid {
            grid-area: "photo-grid";
            width: 80%;
            margin: 90px auto 150px;
            position:relative;

        }
        .row {
            display: flex;
            flex-wrap: wrap;
            padding: 0;
        }

        /* Create four equal columns that sit next to each other */
        .column {
            /* flex: 33.333%;
            max-width: 33.333%; */
            flex: 25%;
            max-width: 25%;
            padding: 0 4px;
        }

        .column img {
            margin-top: 8px;
            vertical-align: middle;
            width: 100%;
        }

        /* TABLET layout - makes a two column-layout instead of four columns */
        @media screen and (max-width: 800px) {
            .column {
                flex: 50%;
                max-width: 50%;
            }
            .photo-grid-bg {
                margin-top: 30px;
            }

        }

        /* MOBILE LAYOUT */
        @media screen and (max-width: 600px) {
            .photo-grid-bg {
                border: none;
                width: 100%;
                margin: 0 auto 30px;
            }
            .photo-grid {
                width: 95%;
                margin-top: 0;
            }
         
        }
        .gallery-label {
            position: absolute;
            bottom: -60px;
            right: 0;
            z-index: 1;
        }
        .gallery-label p a {
            color: var(--light-gray)!important;
        }
        .gallery-label a.hover-2:after {
            background-color: var(--light-gray)!important;
        }
.full-overlay {
    grid-area: full-overlay;
    width: 100%;
    background-color: var(--white);
    /* height: 90vh; */
    margin: 120px auto 0;
    /* margin: 0 auto; */
}

.full-overlay #pre-footer {
    margin-top: 90px;
}
.full-border {
    height: 32px;
    background-image: url("../images/border-b.png");
        /* background-repeat: no-repeat; */
    background-position: top center;
        /* margin: 75px auto 30px; */
    margin: 0px auto;
}

.full-overlay .text {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-column-gap: 30px;
    height: auto;
    margin: 120px auto;
    width: 90%;
    max-width: 1400px;
}

.full-overlay h2 {
    padding: 0 0 2rem;
    text-align: center;
}

.first-column {
    grid-column: 1 / span 2;
}

#hours-box {
    border: 3px solid var(--black);
    margin: 0 12%;
    padding: 57px 0 40px;
    letter-spacing: .5px;
    height: 100%;
}

#hours-box p {
    font-weight: 400;
    text-align: right;
    padding: 0 0 15px 0;
    font-size: 1.8rem;
    font-variant: all-small-caps;
}

#hours-box p.hour {
    text-align: left;
    font-variant-numeric: oldstyle-nums;
}

#hours-box p.centered {
    text-align: center;
    font-style: italic;
}

#hours-box p.day {
    font-weight: 700;
}

#schedule {
    width: 70%;
    max-width: fit-content;
    margin: 0 auto;
    display: grid;
    grid-template-columns: max-content max-content;
    grid-template-rows: repeat(8, auto);
    grid-column-gap: 15px;
}

.second-column {
    grid-column: 3 / span 2;
    padding: 60px 0 0;
}

.second-column iframe {
    width: 100%;
    max-height: 250px;
}

#location-text {
    text-align: center;
}

.third-column {
    grid-column: 5 / span 2;
    margin: 0 12%;
    padding: 60px 0 0;
}

#button-group {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: 75px;
}

.third-column button,
.third-column+button {
    width: 100%;
}

#button-group a:focus,
#button-group a:focus-visible {
    outline: none;
}
#button-group a:focus button,
#button-group a:focus-visible button {
    transform: scale(1.1);
    outline: 3px solid var(--black);
    padding: 5px;
    border: 3px solid var(--white);
}
#button-group a:focus .resBtn
#button-group a:focus-visible .resBtn {
    outline: 3px solid ;
}
#button-group .resBtn:hover {
    /* background-color: var(--black);
    color: var(--white); */
    transition: all ease-in-out .1s;
    transform: scale(.97) !important;
}

/* FULL OVERLAY MID-WIDTH; 860-1170px */
@media (max-width: 1170px) {
    .full-overlay .text {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
        grid-template-areas:
            "a b"
            "c b";
        grid-row-gap: 60px;
        margin: 80px auto;
    }

    .first-column {
        grid-area: a;
    }

    .second-column {
        grid-area: b;
    }

    .second-column iframe {
        max-height: 700px;
        margin: 0;
        padding: 0 12%;
        height: 100%;
    }

    .third-column {
        grid-area: c;
        padding-top: 0;
        padding-bottom: 30px;
        margin-bottom: 0;
    }

    .third-column #button-group {
        padding: 10px 0 0;
    }

    .third-column #button-group button {
        margin: 5px 0;
    }

    #schedule {
        width: 70%;
    }
}

/* END FULL OVERLAY STYLES */
footer {
    grid-area: footer;
    display: flex;
    flex-direction: column;
    text-align: center;
    width: 100%;
    left: 0;
    bottom: 0;
}

.footer-bg {
    background-color: var(--white);
    width: 100%;
    margin: 0;
    left: 0;
    bottom: 0;
    padding-top: 15px;
    z-index: 99;
}

.no-margin {
    margin-top: 0;
    margin-bottom: 0;
}

.no-padding {
    padding-top: 0 !important;
}

footer p {
    font-size: 1.5rem;
    line-height: 2.25rem;
    padding: 0;
    font-weight: 400;
}

footer img {
    margin: 0 auto;
    width: 200px;
}

footer a {
    color: var(--black);
}

/* hover = swap colors, no underline */
/* footer a:hover {
    color: var(--dark-green);
    transition: all ease-in-out .15s;
} */
/* 'simple focus' = swap colors, keep underline */
/* footer a:focus {
    color: var(--dark-green);
    transition: all ease-in-out .15s;
    text-decoration: underline;
    text-decoration-color: var(--dark-green);
} */
/* 'visible focus' = swap colors, keep underline, scale up  */
/* footer a:focus-visible {
    transition: all ease-in-out .15s;
    font-size: 1.6rem;
} */
#icons a:focus {
    color: var(--dark-green);
    transition: all ease-in-out .1s;
    transform: scale(.94) !important;
}

#icons i {
    font-size: 28px;
    line-height: 30px;
    width: 60px;
    height: 100%;
    padding: 15px;
    margin-top: 15px;
    transition: all ease-in-out .1s;
}

/* hover = swap colors, scale up */
#icons i:hover {
    color: var(--light-gray);
    transition: all ease-in-out .1s;
    transform: scale(.96) !important;
    transform-origin: center;
}

#to-top {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 1.5rem;
    letter-spacing: 1px;
    font-weight: 700;
    margin: 15px auto 30px;
}

#bottom-footer-bar {
    background-color: var(--black);
    color: var(--medium-gray);
    width: 100%;
    padding: 15px 0;
    align-self: flex-end;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
}

#bottom-footer-bar p {
    font-size: 1.042rem;
}

/* \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ */
/*!* \\\\\\\\\\\\ TABLET & MOBILE ( < 860px )\\\\\\\\\\\\\\ *!*/
/* \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ */

@media (max-width: 860px) {
    html {
        font-size: 55.5%;
        /* scroll-padding-top: 0px; */

    }
/* 
    .headline {
        display: block;
        width: fit-content;
        margin: 0 auto;
    } */

    h1 {
        font-size: 3.2rem;
        line-height: 2.6rem;
        width: fit-content;
        margin: 0 auto;
    }

    .huge {
        font-size: 6.4rem;
        margin-left: 15px !important;
        letter-spacing: 0;
        line-height: 5.4rem;
        font-weight: 900;
    }

    .mobile {
        display: block;
    }

    .desktop {
        display: none;
    }

    #container {
        width: 100%;
        grid-template-columns: 100%;
        grid-template-rows: 100px auto auto auto auto;
        grid-template-areas:
            "header"
            "main"
            "photo-grid"
            "full-overlay"
            "footer";
        position: relative;
    }

    #header-bg {
        display: none;
    }

    #mobile-banner img {
        height: 100px;
        width: auto;
        clip-path: polygon(0 0, 100% 0, 100% 88%, 23% 88%, 11.5% 100%, 0 88%);
        backdrop-filter: blur(3px);
    }

    header {
        grid-area: header;
    }

    header img {
        position: fixed;
        width: max-content;
        top: 0;
        left: -8px;
        z-index: 9999999;
    }

    nav {
        position: static;
    }

    #mobileMenu {
        display: block;
        z-index: 995;
        margin: 0 auto;
    }

    #navbar {
        display: none;
    }

    /* 'MAIN' GRID TABLET */
    main {
        grid-template-columns: 100%;
        grid-template-rows: repeat(6, auto);
        height: auto;
        row-gap: 0px;
        /* for scrolling up, eliminate white space at the top */
        margin-top: -100px;
        grid-template-areas:
            "main-image-1"
            "text-overlay-1"
            "main-image-2"
            "text-overlay-2"
            "main-image-3"
            "text-overlay-3";
    }

    .main-image#img1 {
        grid-area: main-image-1;
        /* margin-top: -100px; */
        border-radius: 0;
    }

    .text-overlay#txt1 {
        grid-area: text-overlay-1;
    }

    .main-image#img2 {
        grid-area: main-image-2;
        border-radius: 0;
    }

    .text-overlay#txt2 {
        grid-area: text-overlay-2;
    }

    .main-image#img3 {
        grid-area: main-image-3;
        border-radius: 0;
    }

    .text-overlay#txt3 {
        grid-area: text-overlay-3;
    }

    .text-overlay.left,
    .text-overlay.right {
        grid-column: 1 / span 1;
        /* height: max-content; */
        padding: 30px 30px 60px;
        margin: 0 auto;
        width: 100%;
        justify-content: flex-start;
    }

    .text-overlay .text-box p:not(.read-more) {
        margin-left: 0;
        padding-right: 0;
    }

    /* .text-overlay p {
            font-size: 1.8rem;
            line-height: 2.4rem;
        } */
    .text-overlay .text-box {
        max-width: 600px;
        width: 100%;
        margin: 0 auto;
    }

    .main-image {
        border-radius: 0 !important;
        height: 44vh;
    }
        .hover-2:after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            width: 100%;
            height: 2px;
            /* transform: scaleX(0); */
            transform-origin: left;
            background-color: var(--black);
            transition: transform 0.3s;
        }
        .hover-2:after {
            transform: scaleX(1);
        }

        .hover-2 i {
            right: -25px;
            transition: all ease-in-out 0.2s;
        }

    /*'MENU' GRID TABLET */
    .menu-image-left,
    .menu-image-right {
        grid-column: 1 / span 1;
        border-radius: 0 !important;
    }

    main.menu {
        grid-template-columns: 100%;
        grid-template-rows: 200px auto 300px auto 300px auto 300px auto;
        height: auto;
        grid-row-gap: 0;
        grid-template-areas:
            "salads-img"
            "salads-text"
            "entrees-img"
            "entrees-text"
            "sides-img"
            "sides-text"
            "desserts-img"
            "desserts-text";
    }

    /* THE GRID ASSIGNMENTS */
    .menu-image-left#salads {
        grid-area: salads-img;
        margin-top: -100px;
    }

    .menu-overlay.salads {
        grid-area: salads-text;
    }

    .menu-overlay#entrees {
        grid-area: entrees-img;
    }

    .menu-overlay.entrees {
        grid-area: entrees-text;
    }

    .menu-overlay#sides {
        grid-area: sides-img;
    }

    .menu-overlay.sides {
        grid-area: sides-text;
    }

    .menu-overlay#desserts {
        grid-area: desserts-img;
    }

    .menu-overlay.desserts {
        grid-area: desserts-text;
    }

    .menu-overlay.right,
    .menu-overlay.left {
        max-width: 92%;
    }

    .menu-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-areas: "left""right";
    }

    .menu-text {
        background: none;
        margin: 0 auto;
        padding: 15px 5% 30px;
    }
    .menu-text .huge {
        margin-right: 0;
    }
    .dessert-list {
        padding: 0;
    }

    .full-overlay {
        margin-bottom: 0;
        margin-top: 0;
    }

    .full-border {
        margin: 0px auto 30px;
    }
    #hours-box {
        margin: 0 10%;
    }
    .second-column iframe {
        height: 90%;
        padding: 0 10%;
    }

    .third-column {
        padding-bottom: 3rem;
        margin: 0 5%;
    }
    .third-column #button-group {
        padding: 0;
    }
    .third-column #button-group button {
        margin: 0 0 5px;
    }
    .footer-bg {
        grid-area: footer;
        margin: 0;
        padding-top: 0;
    }

    #bottom-footer-bar {
        height: 100px;
        align-items: flex-end;
        padding-bottom: 3px;
    }
    #bottom-footer-bar p {
        line-height: 2rem;
        font-size: 1.25rem;
        margin-bottom: 3px;
    }
}

/*!* \\\\\\\\\\\\ SMALLER MOBILE ( < 700 px \\\\\\\\\\\\\\ *!*/
@media (max-width: 700px) {

    #mobile-banner img {
        height: 85px;
        margin-top: -2px;
        clip-path: polygon(0 0, 100% 0, 100% 88%, 23% 88%, 11.5% 100%, 0 88%);
        backdrop-filter: blur(3px);
    }
    main {
        width: 100%;
    }
    .link {
        padding-top: 10px;
        line-height: 1.2rem;
    }
    .read-more i {
        font-size: 1.3rem;
        bottom: 6px;
        right: -20px;
    }
/* .main-image {
margin-top: -25px;
height: 43vh;
} */
    main.menu {
        grid-template-rows: 150px auto 250px auto 250px auto 250px auto;
    }
    #salads {
        background-position: center 29%;
    }
    #sides {
        background-position: center 35%;
    }
    #desserts {
        background-position: center 30%;
    }
    .menu-text {
        padding: 30px 3% 60px;
    }

    .menu-text .headline h1 .huge {
        font-size: 4rem;
    }

    .menu-text .headline h1 {
        padding-bottom: 1.75rem;
        padding-top: 0;
    }

    .menu-text h3 {
        letter-spacing: .5px;
        font-size: 1.8rem;
    }

    .menu-text p {
        font-size: 1.7rem;
        line-height: 2.0rem;
        padding: 3px 0 0 7px;
    }
    .menu-text p:nth-of-type(4) {
        padding-bottom: 0;
    }
    .menu-text h3>p {
        padding: 0 1.25rem 1.5rem;
    }

    .menu-text p.diet {
        padding-top: 1rem;
    }

    .full-overlay .text {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        grid-template-areas:
            "a""b""c";
        grid-row-gap: 60px;
        margin: 8rem auto;
    }

    .second-column {
        padding-right: 0;
        padding-top: 3rem;
        height: auto;
    }

    .third-column {
        padding-top: 3rem;
        padding-bottom: 0;
        margin: 0;
    }

    #hours-box {
        margin: 0 20%;
    }

    .second-column iframe {
        margin-top: 10px;
        padding: 0 30px;
        height: 300px;
    }

    #schedule {
        width: 70%;
        margin: 0 auto;
    }
    #bottom-footer-bar {
        height: 115px;
    }
    #bottom-footer-bar p {
        line-height: 2rem;
        font-size: 1.025rem;
        margin-bottom: 10px;
    }
}

/*!* \\\\\\\\\\\\ SMALLEST MOBILE ( < 450 px \\\\\\\\\\\\\\ *!*/
@media (max-width: 450px) {
    header {
        width: 100%;
    }
    .headline h1 {
        font-size: 2.4rem;
        letter-spacing: 3.5px;
    }
    .huge {
        font-size: 5.2rem;
        line-height: 4.0rem;
        margin-right: 15px;
    }
    p {
        font-size: 1.8rem;
        line-height: 2.4rem;
    }

    .text-overlay {
        padding: 1.5rem;
        margin: 0 auto;
    }

    .text h1 {
        letter-spacing: 3.5px;
    }
    .menu-text {
        padding-top: 0;
    }
    .full-border {
        margin: 0 auto 30px;
    }

    #hours-box {
        margin: 0 10%;
    }

    #location-text iframe {
        width: 90%;
    }

    #schedule {
        width: 70%;
    }

}