html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
}

/* fonts and font sizes */

* {
    font-family: Josefin Slab !important;
    font-weight: 600 !important;
}

h1 {
    color: white;
    font-size: 60px;
    font-weight: 700 !important;
    line-height: 75px;
    text-align: center;
    text-transform: uppercase;
}

h3 {
    color: white;
    font-size: 45px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 400;
}

h4 {
    color: white;
    font-size: 30px;
    text-align: center;
    text-transform: uppercase;
}

p {
    line-height: 20px;
    color: white;
}

/* navigation styling */

nav{
    background: black;
 }

ul{
    display:flex;
    justify-content:center;
    align-items:center;
    height:69px;
    padding:10px 0px;
}

.menu li, .menu a{
    text-decoration:none;
    list-style:none;
    color:#fff;
    padding:8px 15px;
    font-weight:400;
    font-size: 18px;
    text-transform: uppercase;
}

li > a{
    transition:color 1s ease 0s;
}

li > a:hover{
    color:#e44534;
}


#logo{
    font-size:30px;
    font-weight:700;
}

#logo:hover{
    color: white;
}

#logo img {
    margin-top: 47%;
    border: 15px solid black;
    border-radius: 50%;
    background-color: black;
}
  
#logo-container {
    width: 200px;
    height: 100%;
    position: relative;
}

.logo {
    width: 100%;
    height: 100%;
    background-size: contain;
    background-image: url('/assets/rustic-cheese-logo.png');
    background-repeat: no-repeat;
    position: absolute;
}

/* burger menu */

.header .menu {
    clear: both;
    max-height: 0;
    transition: max-height .2s ease-out;
}

/* burger menu icon */

.header .menu-icon {
    cursor: pointer;
    float: right;
    padding: 28px 20px;
    position: relative;
    user-select: none;
}

.header .menu-icon .nav-icon {
    background: white;
    display: block;
    height: 2px;
    position: relative;
    transition: background .2s ease-out;
    width: 18px;
}

.header .menu-icon .nav-icon:before,
.header .menu-icon .nav-icon:after {
    background: white;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .3s ease-out;
    width: 100%;
}

.header .menu-icon .nav-icon:before {
    top: 5px;
}

.header .menu-icon .nav-icon:after {
    top: -5px;
}

/* burger menu logo */

#mobile-logo {
    position: absolute;
    margin-left: 50% !important;
    transform: translateX(-50%);
    height: 50px;
    margin: auto;
    text-align: center;
    display: flex;
    padding: 3px;
}

/* burger menu btn */

.header .menu-btn {
    display: none;
}

.header .menu-btn:checked ~ .menu {
    max-height: 240px;
}

.header .menu-btn:checked ~ .menu-icon .nav-icon {
    background: transparent;
}

.header .menu-btn:checked ~ .menu-icon .nav-icon:before {
    transform: rotate(-45deg);
}

.header .menu-btn:checked ~ .menu-icon .nav-icon:after {
    transform: rotate(45deg);
}

.header .menu-btn:checked ~ .menu-icon:not(.steps) .nav-icon:before,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .nav-icon:after {
    top: 0;
}


@media (min-width: 1000px) {
    .header li {
        float: left;
    }
    .header li a {
        padding: 20px 30px;
    }
    .header .menu {
        clear: none;
        max-height: none;
    }
    .header .menu-icon, #mobile-logo {
        display: none;
    }
}

/* first section */

#main-container {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-image: url('../assets/main.jpg');
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    flex-direction: column;
}

#main {
    display: flex;
    width: 45%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 17%;
    margin-bottom: 6%;
    border: 50px solid;
    border-image: url('../assets/heading-frame.png') 40 round;
}

#forks {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    margin-top: -120px;
}

#down-icon {
    margin-top: 1%;
    text-align: center;
    margin-bottom: 5%;
  }
  
#down-icon a {
    display: inline-block;
    border-radius: 50%;
  }
  
#down-icon a:hover .bottom{
    border: 0.4em solid #e44534;
  }
  
#down-icon a:hover .bottom:after{
    border-top: 0.4em solid #e44534;
    border-right: 0.4em solid #e44534;
  }

#down-icon a .bottom, #down-icon a .bottom:after {
    transition: all 1s ease 0s;
}  
  
#down-icon .bottom {
    display: inline-block;
    width: 4em;
    height: 4em;
    border: 0.4em solid white;
    border-radius: 50%;
    margin-left: 0.75em;
  }
  
#down-icon .bottom:after {
    content: '';
    display: inline-block;
    margin-top: 0.8em;
    width: 1.4em;
    height: 1.4em;
    border-top: 0.4em solid white;
    border-right: 0.4em solid white;
    -moz-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }

 /* about */

 #about-container {
     background-color: gold;
     padding: 3% 15%;
 }

 #about-container h3 {
     padding-bottom: 2%;
 }

 #about-container p {
     font-size: 20px;
     text-align: center;
     padding: 15px 0px;
 }

 #about-info {
     padding-bottom: 2%;
     background-image: url(../assets/knives-faded-bg.png);
     background-repeat: no-repeat;
     background-position: top;
     background-size: 175px;
 }

 #about-twitter {
     text-align: center;
 }

 #about-twitter img {
     padding-bottom: 1%;
 }

 #twitter-feed {
    display: grid;
    grid-template-columns: 1fr 9fr 1fr;
    background: rgba(255,255,255,0.2);
    padding: 15px 0px;
 }

#twitter-feed > p:nth-child(2) {
    font-weight: 700 !important;
}

#twitter-feed > p:nth-child(4) {
    font-size: 16px;
}


#twitter-feed p {
    grid-column-start: 2;
    padding: 0px !important;
    display: flex;
    justify-content: center;
    align-items: center;
}

#apostrophe-left {
    grid-column-start: 1;
    grid-row-start: 2;
    margin: auto;
    filter: invert(1);
    transform: scale(-1);
}

#apostrophe-right {
    grid-column-start: 3;
    grid-row-start: 2;
    margin: auto;
    filter: invert(1);
}

/* cheese image section */

#image-container {
    background-image: url(../assets/image3.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding-top: 50%;
}

/* cheeseboard section */

#cheeseboard-container {
    background-color: black;
    padding: 3% 15%;
}

#cheeseboard-container h1 {
    padding-bottom: 3%;
}

#cheeseboard-container p {
    font-size: 20px;
    text-align: center;
}

#cheese-list {
    margin-top: 4%;
    border: 50px solid;
    border-image: url('../assets/cheese-board-border.png') 40 round;
    display: flex;
}

#cheese-list p {
    line-height: 32px !important;
}

#cheese-list-left {
    flex: 1;
    border-right: 3px dotted white;
}

#cheese-list-right {
    flex: 1;
}
  

/* contact container */

#contact-container {
    padding: 3% 15%;
    background-color: #eaeaea;
}

#contact-container h3, #contact-container p {
    color: black;
    text-align: center;
}

#contact-container p {
    font-size: 20px;
}

#contact-container-first {
    padding-top: 4%;
}

#contact-container-second, #contact-container-third {
    padding-top: 2%;
}

#contact-container-form {
    margin-top: 4%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 0.3fr 1fr 0.3fr;
    grid-gap: 20px;
}

#contact-container-form input {
    border: none;
    background-color: white;
    text-indent: 10px;
    height: 75%;
    border-radius: 5px;
}

::-webkit-input-placeholder { /* Edge */
    font-size: 20px;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    font-size: 20px;
}

::placeholder {
    font-size: 20px;
}
#contact-container-form input[type=text] {
    grid-column-start: 1;
}

#contact-container-form textarea {
    text-indent: 10px;
    border: none;
    grid-column-start: 1;
    grid-column-end: 3;
    height: 200px;
    padding-top: 2%;
    border-radius: 5px;
}


#contact-container-form input[type=submit] {
    font-size: 25px;
    grid-column-end: 3;
    grid-column-start: 1;
    margin: auto;
    padding: 1% 8%;
    color: white;
    background-color: gold;
}

 /* footer */  

footer {
    background-color: gold;
    display: flex;
    padding: 2% 5%;
}

footer p {
    color: white;
}

#footer-left {
    display: flex;
    flex: 1;
    flex-direction: column;
}

#footer-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: 15%;
}

#footer-right p {
    text-align: right;
}

#footer-left-address {
    padding-bottom: 3%;
}

#footer-left-copyright p {
    padding-bottom: 1%;
}


#copyright-symbol {
    font-size: 26px;
    vertical-align: bottom;
}

#footer-right-bidvest {
    text-align: right;
    padding-bottom: 15%;
}

#footer-right-bidvest p, #footer-right-extramile p {
    padding-bottom: 1%;
}

/* mobile styling */

@media (max-width: 1000px) {
    ul {
        padding:0;
        margin:0;
        overflow:hidden;
        display: block;
        height: 100%;
    }

    .menu > li:nth-child(3) {
        display: none;
    }

}

@media (max-width: 768px) {
    h1, h2, h3 {
        font-size: 30px;
        line-height: 30px;
    }

    h4 {
        font-size: 26px;
    }

    #main {
        margin-bottom: 15%;
    }

    #forks {
        display: none;
    }

    #about-container {
        padding: 12% 6%;
    }

    #apostrophe-left {
        display: none;
    }

    #apostrophe-right {
        display: none;
    }

    #image-container {
        padding-top: 66%;
    }

    #cheeseboard-container {
        padding: 12% 6%;
    }

    #cheese-list {
        flex-direction: column;
    }

    #cheese-list-left {
        border-right: none;
    }

    #contact-container {
        padding: 15% 6%;
    }

    #contact-container-first, #contact-container-second, #contact-container-third {
        padding-top: 7%;
    }

    #contact-container-form {
        display: block;
        margin-top: 10%;
    }

    #contact-container-form input {
        margin: 2% 0% 5% 0%;
        padding: 5%;
        width: 91%;
    }

    #contact-container-form textarea {
        width: 100%;
        float: left;
        margin-bottom: 5%;
        text-indent: 30px;
        padding-top: 5%;
    }

    #contact-container-form input[type=submit] {
        width: 101%;
    }

    footer {
        background-color: gold;
        display: flex;
        flex-direction: column;
        padding: 5% 5%;
        text-align: center;
    }
    
    footer p {
        color: white;
    }
    
    #footer-left {
        display: block;
        order: 2;
        text-align: center;
    }
    
    #footer-right {
        display: block;
        width: 100%;
        order: 1;
        margin-bottom: 5%;
        text-align: center;
    }
    
    #footer-right p {
        text-align: center;
    }
    
    #footer-left-address {
        padding-bottom: 3%;
    }
    
    #footer-left-copyright p {
        padding-bottom: 1%;
    }
    
    #footer-right-bidvest {
        text-align: center;
        padding-bottom: 5%;
    }
    
    #footer-right-bidvest p, #footer-right-extramile p {
        padding-bottom: 1%;
    }    

}

