@charset "utf-8";

/* HTML and Body styles */
html {
   background: rgb(246, 174, 176) url(../media/rb_background.png);
   font-family: Verdana, Geneva, sans-serif;
   height: 100%;
}
body {
   background-color: white;
   box-shadow: rgb(51, 51, 51) 20px 0px 40px,  rgb(51, 51, 51) -20px 0px 40px,
               inset rgb(51, 21, 21) 0px 0px 40px;
   border-left: 3px solid rgb(51, 51, 51);
   border-right: 3px solid rgb(51, 51, 51);
   min-height: 100%;  
   margin: 0px auto;
   min-width: 320px;
   max-width: 1020px;  
   width: 100%;
}

/* Header styles */
header img#logoimg {
   width: 100%;
}
header {
   background: linear-gradient(to bottom, black 70%, rgb(179, 20, 25));
   border-bottom: 1px solid rgb(0, 0, 0);
   color: white;
}



/* Navigation list styles */
header nav ul li {
   font-size: 1.2em; 
   line-height: 3.3em; 
   height: 2.3em;
   padding: 0px 10px;
   list-style: none;
   text-transform: capitalize;
}
header nav ul li a {
   color: white;
   display: block;
   width: 100%;
}
header nav ul li a:hover {
   color: rgb(249, 209, 17);
   text-decoration: none;
}
a#navicon {
   display: none;
}
section {
   margin: 30px 5%;
}
section h1 {
   font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, sans-serif;
   font-size: 2.5em;
   color: rgb(179, 20, 25);
   margin-bottom: 35px;
   font-weight: bold;
}
section p {
   line-height: 1.4em;
   margin: 15px 0px;
   font-size: 15px;
}

/* Form Layout Styles */

form {
   display: -webkit-flex;
   display: flex;
   -webkit-flex-flow: row wrap;
   flex-flow: row wrap;
} 

fieldset {
   background-color: rgb(234, 189, 142);
   -webkit-flex: 1 1 300px;
   flex: 1 1 300px; 
   margin: 10px;  
   padding: 5px;
}

div {
   margin: 5px;
   width: 100%;
}

legend {
   color: rgb(255, 200, 200);
   background-color: rgb(179, 20, 25);
   padding: 10px;
}

label {
   display: inline-block;
   width: 120px;
}

img[src="rb_sizes.png"] {
   display: block;
   margin-left: 135px;
}

fieldset#pickupInfo label, fieldset#deliveryInfo label {
   margin-bottom: 10px;
   width: 100%;
   margin-left: 4px;
}

textarea {
   display: block;
   width: 90%;
   height: 100px;
   padding: 4px;
   margin-left: 4px;
}

input[type="submit"] {
   height: 50px;
   width: 200px;
}

input#sizeBox {
   width: 240px;
}


/* Footer styles */   
footer {
   color: white;    
   background: linear-gradient(to bottom, rgb(179, 20, 25), black);   
   -moz-column-width: 200px;
   -webkit-column-width: 200px;
    column-width: 200px;
   -moz-column-gap: 25px;
   -webkit-column-gap: 25px;
    column-gap: 25px;
    padding: 20px 40px;
}
footer h1 {
   color: rgb(255, 241, 147);   
   font-size: 1em;
   margin: 10px 0px;
}
footer h1:first-of-type {
   margin-top: 0px;
}
footer a {
   display: block;
   color: white;
   text-decoration: none;
   font-size: 1em;
}
footer a:hover {
   text-decoration: underline;
   color: rgb(249, 209, 17);
}
footer address {
   margin-top: 30px;
   font-style: normal;
}

/* ===============================
   Mobile Styles: 0px to 640px 
   ===============================
*/
@media only screen and (max-width: 640px) {

   
   a#navicon {
      display: block;
   }
   
   header nav ul {
      display: none;
   }
   
   header nav ul li {
      font-size: 1em;
      line-height: 1.3em;
      height: 1.3em;
   }
   
   a#navicon:hover+ul, header nav ul:hover {
      display: block;
   }
   
   section h1 {
      font-size: 1.5em;
   }
   
   section p {
      font-size: 0.9em;
   }
}

/* Validation Styles */
input:focus, select:focus, textarea:focus {
   background-color: rgb(225, 225, 180);
}
input#nameBox:focus:valid,input#phoneBox:focus:valid {
   background-color: rgb(220, 255, 220) url(../media/rb_valid.png) bottom right/contain no-repeat;
}
input#nameBox:focus:invalid,input#phoneBox:focus:invalid {
   background-color: rgb(255, 230, 230) url(../media/rb_invalid.png) bottom right/contain no-repeat;
}


/* =============================================
   Tablet and Desktop Styles: greater than 640px
   =============================================
*/
@media only screen and (min-width: 641px) {

   body header nav ul {
      display: -webkit-flex;
      display: flex;
      -webkit-flex-flow: row nowrap;
      flex-flow: row nowrap;
      -webkit-justify-content: center;
      justify-content: center;
   }
   
   body header nav ul li {
      -webkit-flex: 0 1 auto;
      flex: 0 1 auto;
   }
}
