¬/*
Theme Name: The Willo 
Theme URI: https://green-giraffe-902753.hostingersite.com/
Author: struc1.com
Author URI: http://struc1.com/
Description: Voted best steak Nevada County 13 years in a row by the Readers of the Union Newspaper. Choice aged hand cut midwest new yorks expertly cooked over our open dining room flame grill. Juicy Ribeyes on Fridays. Cook off style St. Louis pork ribs smoked daily Also features chops, chicken and fish Monday Special- Nancy's hand ground new york steak burgrers- 1/2 lb. Big and Juicy on a sourdough bun.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, two-columns, left-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
Text Domain: ffgr

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/** Varibles
******************************************************************************/
:root {
    --black1: #000;
    --black2: #333;
    --black3: #999;
    --white: #fff;
    --bgcream: #F9F5F4;
    --transition: 0.3s;
    --h1: clamp(3.5rem, 6vw + 1rem, 5rem);
    --h2: clamp(2rem, 6vw + 1rem, 3rem);
    --h3: clamp(1.125rem, 0.9787rem + 0.7317vw, 1.5rem);
} 

/** Globals
******************************************************************************/
html {
    margin: 0;
    padding: 0;
}
body {
    font-family: 'Roboto+Slab', serif;
    font-display: auto;
    background-color: #000;
    font-size: 1.3rem;
    line-height: 2rem;
}
h2 {
    font-size: 3.5rem;
}
.scrim {
    background-color: rgba(0, 0, 0, 0.7) !important;
}
a {
    
}
a:hover {
    text-decoration: underline !important;
    color: red !important;
}
a.btn-danger:hover, a.btn-secondary:hover {
    color: #fff !important;
    text-decoration: none !important;
}

/** Header
******************************************************************************/
header {
    position: fixed;
    width: 100%;
    height: 100px;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1000;
}
header .logo img {
 padding: 18px;
 background-color: #000;
}
header .nav {
    
}
header .nav ul {
    display: flex;
    justify-content: end;
    gap: 30px;
    align-items: center;
    list-style: none;
    width: 100%;
    font-size: 1.2rem;
    list-style: none;
}
header .nav ul li {
  
}
header .nav ul li a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}
header .nav ul li a:hover {
    color: #ffc107;
    text-decoration: none;
}

#psbParallaxSection-ea04bf52-0 {
    width: 100%;
}
header .hamburger,
header .nav ul li.close-cage,
header .mobile-nav {
    display: none;
}

/** Hero
******************************************************************************/
.hero {
    background-image: url('/wp-content/uploads/2025/07/willo-outside-front5.webp');
    background-size: 100%;
    background-repeat: no-repeat;
   
    height: 100vh;
    color: #fff;
}
.hero .hero-info {
    display: flex;
    flex-direction: column;
    gap: 30px;
    justify-content:end;
    align-items: center;
    height: 55vh;
}
.hero .hero-info h1 {
    font-size: clamp(2.5rem, 6vw + 1rem, 4rem);
    margin: 0 0 -35px 0;
    padding: 0;
}
.hero .hero-info p {
    font-size: 1.3rem;
}
.hero .hero-info a {
    color: #fff;
}
.hero .hero-info .btn {
    font-size: 2rem;
}

/** HP About
******************************************************************************/
.hp-about {
    background-color: #fff;
    color: #000;
    padding: 150px 0;
}
#events {
    padding-top: 150px;
}
.hp-about-internal {
    background-color: #fff;
    color: #000;
    padding: 150px 0;
}
.hp-about-internal .col-md-4 {
    margin-bottom: 30px;
}
.about-copy {
   padding: 50px; 
}
.hp-about h2 {
    font-size: clamp(2rem, 6vw + 1rem, 3rem);
}
.hp-about h3.hp-sub {
    font-size: clamp(1.5rem, 6vw + 1rem, 2.5rem);
}
.hp-about img, .hp-about-internal img {
    padding-bottom: 30px;
}
.badge img {
    padding: 0;
    margin: 0;
}

/** events
******************************************************************************/
.events h3 {
    font-size: 2.5rem;
}

/** HP Process
******************************************************************************/
.hp-process {
    display: flex;
    align-items: center;
    background-image: url(/wp-content/uploads/2025/07/willo-grilling2.webp);
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    background-size: cover;
    
    padding: 100px 30px;
    color: #fff;    
}
.hp-process h3 {
    margin-bottom: 15px;
    font-size: 2rem;
} 

/** HP 
******************************************************************************/
.hp-reviews {

}

/** Banquet Room
******************************************************************************/
.hp-banquet {
    background-color: #fff; 
    padding: 150px 100px 150px 0;
}
.hp-banquet h2 {
    font-size: 3rem;
    margin-bottom: 15px;
}
.modal-body {
    padding: 30px;
}
.modal-body, 
.modal-header,
.modal-footer {
    background-color: #000;
    color:#fff;
}
.modal .modal-body img {
    width: 100%;
    height: auto;
}

/** HP Gallery
******************************************************************************/
.hp-gallery {
    padding: 150px 30px 140px 30px;
}
.hp-gallery img {
    padding-bottom: 30px;
}
.hp-gallery h2 {
    text-align: center;
    color: #fff;
}

/** HP Menu / HP Wine List
******************************************************************************/
.hp-menu {
    background-image: url(/wp-content/uploads/2025/07/menu-dinner2.webp);
    background-repeat: no-repeat;
    background-position: right center;
    background-attachment: fixed;
    background-size: 78%;
    padding: 150px 0;
    padding-left: 50px;
    background-color: #000;
    color: #fff !important;
}
 
.hp-menu h2 {
    margin-bottom: 30px;
    font-size: 3rem;
}
.hp-menu h3 {
    font-size: 2rem;
    margin: 0;
}
.hp-wine-list {
    background-image: url(/wp-content/uploads/2025/07/hp-wine-list3.webp);
    background-repeat: no-repeat;
    background-position: right center;
    background-attachment: fixed;
    background-size: 78%;
    padding: 150px 0;
    padding-left: 50px;
    background-color: #000;
    color: #fff !important;
}
.hp-wine-list .house-wine, .hp-menu .menu-specials {
    border: solid 1px #ccc;
    border-radius: 10px;
    padding: 30px;
    margin: 30px 0;
    text-align: center;
}
ul.nav-tabs {
    border: none;
}
ul.nav-tabs li.nav-item a.nav-link {
    background-color: transparent;
    color: #999;
    border: none;
    font-size: 1.5rem
}
ul.nav-tabs li.nav-item a.nav-link:hover {
    color: #fff;
}
ul.nav-tabs li.nav-item a.nav-link.active{
    border: solid 1px #fff;
    color: #fff;
    border-radius: 8px;
}
ul.nav-tabs li.nav-item a.nav-link.active:hover{
    border: solid 1px red;
    color: #fff;
}
.tab-pane {
  
}
table {
    width: 100%;
}
table td {
    padding: 3px;
    font-size: 1.2rem;
}
table td hr {
    border: none;
    height: 1px;
    background-color: #ccc !important;
    opacity: 100;
}
table tr td.price {
    text-align: right !important;
}
.hp-wine-list table tr td {
    font-size: 1.3rem;
}
.hp-wine-list table tr td.heading {
    text-align: right;
    font-weight: 900;
}
.hp-wine-list table tr td.main-heading h3 {
    font-weight: 900;
    font-size: 2rem;
}


h1 .h-line, h2 .h-line {
     border-bottom: solid 2px red;
     width: 20%;
     margin: 30px 0;
}
h1 .h-line-center, h2 .h-line-center  {
     border-bottom: solid 2px red;
     width: 150px;
     padding-top: 30px;
     margin: 0 auto;
}

.hp-menu button.t-btn  {
    font-family: inherit;
    font-size: 1.7rem;
    line-height: inherit;
    background-color: transparent;
    color: #777;
    border: none;
    margin-bottom: 20px;
    margin-right: 20px;
}

.hp-menu button.t-btn.active  {
    color: #fff;
}

/** Internal Content
******************************************************************************/
.internal-content .musician {
    margin-bottom: 30px;
}

/** Nav Tabs
******************************************************************************/
.tab-content  {
    padding-top: 30px;
}
.tab-content .content-scroll {
    height: 350px;
    overflow-y: scroll;
    padding: 0 30px;
}

/** contact
******************************************************************************/
.contact {
    padding-top: 150px;
    padding-bottom: 150px;
    background-color: #fff;
}

/** Footer
******************************************************************************/
footer {
    padding: 100px 15px;
    color:#fff;
    font-size: 1.1rem;
}
footer a {
    color:#fff;
    text-decoration: none;
}
footer h3 {
    border-bottom: solid 1px rgba(255, 0, 0, 0.7);
    padding-bottom: 15px;
    margin-bottom: 15px;
}
footer img.nccoc {
    width: 35px;
    height: auto;
}

/** Media Queries
******************************************************************************/
@media only screen and (max-width : 820px) {
    header .logo img {
        position: absolute;
        top: 0;
        padding: 18px;
        width: 25%;
        height: auto;
    }
    header .hamburger {
        position: absolute;
        top: 20px;
        right: 50px;
        width: 20px;
        height: auto    ;
        display: block;
    }
    header .hamburger button {
        text-decoration: none;
        color: #fff;
        background-color: transparent;
        border: none;
    }
    header .mobile-nav {
        position: absolute;
        left: 0;
        top: 0;
        background-color: #000;
        padding: 0;
        width: 100%;
        z-index: 100;
    }
    header .mobile-nav ul {
        display: flex;
        flex-direction: column;
        justify-content: end;
        text-align: left;
        margin-right: 30px;
    }
    header .mobile-nav ul li {
        padding: 10px 0;
        border-bottom: solid 1px #777;
    }
    header .mobile-nav ul li:first-child {
        text-align: end;
    }
    header .mobile-nav ul li:first-child,
    header .mobile-nav ul li:last-child {
        border-bottom: none ;
    }
    header .mobile-nav ul li a {
        color: #fff;
        text-decoration: none;
    }
    header .nav {
        display: none;
    }

    header .logo img {
        padding: 18px;
        width: 30%;
        height: auto;
    }
    .hero {
        background-image: url('/wp-content/uploads/2025/07/willo-outside-front5.webp');
        background-size: cover;
        background-position: center top;
        background-repeat: no-repeat;
        height: 80vh;
        color: #fff;
    }
     .hero .hero-info h1 {
            font-size: 3rem;
    }
    .hero .hero-info {
            height: 45vh;
    }

    .contact {
        padding-left: 15px;
        padding-right: 15px;
    }

} 

@media only screen and (max-width : 480px) {
    h2 {
        font-size: 2.5rem;
    }
    header .logo img {
        padding: 18px;
        width: 40%;
        height: auto;
    }
    .hero {
        background-image: none;
    }
    #hero {
        background-image: url('/wp-content/uploads/2025/07/willo-outside-front-mobile.webp');
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        height: 90vh;
        color: #fff;
    }
    .hero .hero-info {
            height: 45vh;
    }
    .hero .hero-info h1 {
        font-size: 2.4rem;
        margin: 0 0 -35px 0;
        padding: 0;
    }
    .hero .hero-info p {
        font-size: 1rem;
        line-height: 1.5rem;
        margin-top: 15px;
    }
    .hp-process {
        background-image: none;
    }
    #process {
        background-image: url(/wp-content/uploads/2025/07/willo-grilling2.webp);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
        color: #fff;
    }
    .hp-menu, .hp-wine-list {
        padding-left: 15px;
        padding-right: 15px;
    }
    .hp-banquet {
        background-color: #fff; 
        padding: 100px 20px 100px 20px;
    }
    .hp-process .box {
        border-bottom: solid 1px #ccc;
        margin-bottom: 30px;
    }
     .hp-process .box:last-child {
        border:none;
    }
    .hp-menu {
        background-position: -100px;
        background-size: 300%;
    }
    footer p.footer-logo {
        text-align: center;
    }
    footer p img {
        width: 50%;
        height: auto;
        text-align: center;
        padding: 40px 0;
    }
}

@media only screen and (max-width : 480px) {
    .hero .hero-info {
        height: 45vh;
    }
    .hero .hero-info h1 {
        font-size: 2.4rem;
        margin: 0 0 -35px 0;
        padding: 0;
    }
    .hero .hero-info p {
        font-size: 1.1rem;
        font-weight: normal;
        line-height: 1.5rem;
        margin-top: 15px;
    }
}

@media only screen and (max-width : 380px) {
    .hero .hero-info {
        height: 60vh;
    }
    .hero .hero-info h1 {
        font-size: 2rem;
        margin: 0 0 -35px 0;
        padding: 0;
    }
    .hero .hero-info p {
        font-size: 1.2rem;
        font-weight: normal;
        line-height: normal;
        margin-top: 15px;
    }
}