/*
DEFINITION OF CHARACTER CODING ACCORDING TO SELFHTML.ORG
*/
@charset "ISO-8859-1";
/*
RESET STYLES
*/
*
{
 border: none;
 box-sizing: border-box;
 color: #222222;
 font-family: "standard";
 font-size: 1.2rem;
 font-weight: normal;
 list-style-type: none;
 margin: 0;
 padding: 0;
 text-decoration: none;
}
/*
DEFINITION OF FONTS
*/
@font-face
{
 font-family: "standard";
 src: url("fonts/SourceSansPro-Light.otf") format("opentype");
}
@font-face
{
 font-family: "bold";
 src: url("fonts/SourceSansPro-Semibold.otf") format("opentype");
}
@font-face
{
 font-family: "symbols";
 src: url("fonts/symbols.woff") format("woff");
}
/*
HTML ELEMENTS GENERAL STYLING
*/
a, input[type=submit]
{
 transition: color 0.15s;
 -webkit-appearance: none;
}
a:hover, input[type=submit]:hover
{
 color: #5D8034;
 cursor: pointer;
}
body
{
 height: 100%;
}
h1
{
 font-family: "bold";
 font-size: 2rem;
}
@media (max-width: 1000px)
{
 h1
 {
  font-size: 1.6rem;
 }
}
h2
{
 font-family: "bold";
 font-size: 1.2rem;
}
html
{
 font-size: 1rem;
 height: 100%;
 overflow-y: scroll;
}
input[type=checkbox]
{
 margin: 0 0.2rem;
}
input[type=radio]
{
 margin-right: 0.6rem;
}
input[type=submit]
{
 background: white;
}
input[type=submit].action, a.action
{
 background-color: #79A644;
 border: 0;
 border-radius: 0.2rem;
 color: #FFFFFF;
 cursor: pointer;
 height: 2.5rem;
 padding-left: 1rem;
 padding-right: 1rem;
 transition: background-color 0.15s;
}
input[type=submit].action:hover, a.action:hover
{
 background-color: #5D8034;
}
input[type=text], input[type=password], textarea
{
 -webkit-appearance: none;
}
input[type=text], input[type=number], input[type=password], select, textarea
{
 border: 1px solid #BBBBBB;
 border-radius: 0.2rem;
 padding: 0.2rem 0.5rem;
 transition: border 0.15s;
}
input[type=text]:focus, input[type=number]:focus, input[type=password]:focus, select:focus, textarea:focus
{
 border: 1px solid #888888;
}
select
{
 height: 2.5rem;
 text-align: center;
 width: 4rem;
}
small
{
 font-size: 0.8rem;
}
strong
{
 font-family: "bold";
}
/*
STYLING BASED ON CLASSES
*/
.action
{
 padding-bottom: 0.5rem;
 padding-top: 0.5rem;
}
.background_green
{
 background: rgb(121, 166, 68);
 transition: background 0.15s;
}
.background_red
{
 background: rgb(144, 14, 18);
 transition: background 0.15s;
}
.confirmation
{
 border: 1px solid #5D8034;
 color: #5D8034;
}
.confirmation, .error
{
 border-radius: 0.2rem;
 display: inline-block;
 font-family: "bold";
 margin: 1.2rem auto;
 padding: 0.5rem 1.5rem;
}
.container
{
 background: #FFFFFF;
 margin: 0 auto;
 padding-bottom: 4rem;
 width: 100%;
}
.container:first-child
{
 padding-bottom: 0rem;
}
.error
{
 border: 1px solid #FF0000;
 color: #FF0000;
}
.greyed_out
{
 background-color: #DDDDDD;
}
.hidden
{
 display: none;
}
.legal, .service
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 .legal, .service
 {
  margin-top: 2.4rem;
  width: 90%;
 }
}
.legal>div
{
 margin-bottom: 2rem;
}
.legal>div>h2
{
 margin-bottom: 1rem;
}
.legal>h1
{
 margin-bottom: 2rem;
}
.linespace
{
 height: 1.2rem;
}
.service>div
{
 display: grid;
 grid-column-gap: 2rem;
 grid-row-gap: 2rem;
 grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
 margin-bottom: 2rem;
}
@media (max-width: 1000px)
{
 .service>div
 {
  grid-template-columns: 100%;
 }
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 .service>div
 {
  display: inline;
  margin-bottom: 2rem;
 }
 .service>div>div
 {
  display: inline-block;
  margin-bottom: 2rem;
  margin-right: 2rem;
  vertical-align: top;
  width: 21rem;
 }
}
.service>div>div>h2
{
 margin-bottom: 1rem;
}
.service>div>h2
{
 margin-bottom: 1rem;
 white-space: nowrap;
}
.service>h1
{
 margin-bottom: 2.4rem;
}
.wine_description
{
 display: flex;
 flex-wrap: nowrap;
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 .wine_description
 {
  flex-direction: column;
  width: 90%;
 }
}
.wine_description>div>div, .wine_description>div>img
{
 margin-bottom: 2rem;
}
.wine_description>div>img
{
 width: 100%;
}
.wine_description>div:first-child>img
{
 animation: smooth_fade_in 0.5s ease-in-out;
}
.wine_description>div:nth-child(1)
{
 flex-basis: 20%;
 max-width: 25rem;
 min-width: 10rem;
}
@media (max-width: 1000px)
{
 .wine_description>div:nth-child(1)
 {
  flex-basis: 100%;
  margin: 0 auto;
  max-width: initial;
  min-width: initial;
  padding: 0 30%;
 }
}
.wine_description>div:nth-child(2)
{
 flex-basis: 55%;
 max-width: 55rem;
 padding: 0 4rem;
}
@media (max-width: 1300px)
{
 .wine_description>div:nth-child(2)
 {
  padding: 0 2rem;
 }
}
@media (max-width: 1000px)
{
 .wine_description>div:nth-child(2)
 {
  padding: 0;
 }
}
.wine_description>div:nth-child(2)>div:nth-child(3), .wine_description>div:nth-child(3)>div
{
 display: grid;
 grid-column-gap: 3rem;
 grid-row-gap: 0.3rem;
 grid-template-columns: max-content auto;
}
@media (max-width: 1000px)
{
 .wine_description>div:nth-child(2)>div:nth-child(3), .wine_description>div:nth-child(3)>div
 {
  grid-column-gap: 2rem;
  grid-template-columns: min-content auto;
 }
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 .wine_description>div:nth-child(2)>div:nth-child(3)>div:nth-child(2n-1), .wine_description>div:nth-child(3)>div>div:nth-child(2n-1)
 {
  display: inline-block;
  margin-bottom: 0.3rem;
  vertical-align: top;
  width: 29%;
 }
 .wine_description>div:nth-child(2)>div:nth-child(3)>div:nth-child(2n), .wine_description>div:nth-child(3)>div>div:nth-child(2n)
 {
  display: inline-block;
  vertical-align: top;
  width: 69%;
 }
}
.wine_description>div:nth-child(2)>div:nth-child(3)>div:nth-child(odd), .wine_description>div:nth-child(3)>div>div:nth-child(odd)
{
 font-family: "bold";
}
.wine_description>div:nth-child(3)
{
 flex-basis: 25%;
 max-width: 30rem;
}
.wine_description>div:nth-child(3)>div
{
 justify-content: center;
}
.wine_description>div:nth-child(3)>img
{
 border: 1px solid #BBBBBB;
 border-radius: 0.2rem;
}
/*
STYLING BASED ON ID
*/
#account
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #account
 {
  width: 90%;
 }
}
#account>div
{
 margin-bottom: 3.6rem;
}
#account>div>div
{
 display: flex;
 flex-wrap: wrap;
}
#account>div>div>div
{
 margin-bottom: 2.4rem;
 text-align: center;
 width: 20rem;
}
@media (max-width: 1000px)
{
 #account>div>div>div
 {
  flex-basis: 100%;
 }
}
#account>div>div>div>a
{
 display: block;
 height: auto;
 margin: 0 1.2rem;
}
@media (max-width: 1000px)
{
 #account>div>div>div>a
 {
  display: inline-block;
  margin: auto;
  width: 18rem;
 }
}
#account>div>div>div>div:nth-child(3)
{
 margin-bottom: 0.6rem;
}
#account>div>div>div>img
{
 margin-bottom: 0.6rem;
 width: 8rem;
}
#account>div>div.confirmation, #account>div>div.error
{
 display: inline-block;
}
#account>div:nth-child(2)>div
{
 display: inline;
}
#account>div:nth-child(3)
{
 margin-bottom: 1.2rem;
}
#account>div:last-child>a
{
 margin-right: 1.2rem;
}
#account>div>form>fieldset
{
 margin-bottom: 0.6rem;
}
#account>div>form>fieldset>div
{
 display: block;
 margin-bottom: 0.6rem;
}
#account>div>form>fieldset>div>input[type=text], #account>div>form>fieldset>div>input[type=password], #account>div>form>fieldset>div>select
{
 display: inline-block;
 width: 18rem;
}
#account>div>form>fieldset>div>label, #account>div>form>fieldset:nth-child(2)>div
{
 display: inline-block;
 width: 15rem;
}
#account>div>form>fieldset select
{
 height: auto;
}
#account>div>form>fieldset:nth-child(2)>div
{
 display: inline-block;
}
#account>div>form>fieldset:nth-child(2)>div:first-child
{
 vertical-align: top;
}
#account>div>form>fieldset:nth-child(2)>div:last-child>div
{
 margin-bottom: 0.6rem;
}
#account>div>form>fieldset:nth-child(2)>div:last-child>div>img
{
 height: 1.6rem;
 margin-right: 0.3rem;
 vertical-align: middle;
}
#account>div>form>fieldset:nth-child(3)>div>input, #account>div>form>fieldset:nth-child(3)>div>a
{
 display: inline-block;
 margin-top: 0.6rem;
 margin-right: 0.6rem;
}
#account>div>h2
{
 margin-bottom: 1.8rem;
}
#account>h1
{
 margin-bottom: 2.4rem;
}
#account_delete
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #account_delete
 {
  margin: 2.4rem auto 0 auto;     
  width: 90%;
 }
}
#account_delete>div
{
 margin-bottom: 3.6rem;
}
#account_delete>div>a
{
 display: inline-block;
 margin-right: 0.6rem;
 margin-top: 0.6rem;
 white-space: nowrap;
}
#account_delete>div>h2
{
 margin-bottom: 1.8rem;
}
#account_delete>h1
{
 margin-bottom: 2.4rem;
}
#cart
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #cart
 {
  margin: 2.4rem auto 0 auto;
  width: 100%;
 }
}
#cart>div:nth-child(2)
{
 display: grid;
 grid-template-columns: auto auto auto auto auto auto;
 margin-bottom: 1.2rem;
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)
 {
  grid-template-columns: auto auto auto auto auto;
 }
}
#cart>div:nth-child(2)>div
{
 border-bottom: 1px solid #BBBBBB;
 padding: 1.2rem;
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div
 {
  padding: 0.5rem;
 }
 #cart>div:nth-child(2)>div>small
 {
  font-size: 0.6rem;
 }
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 #cart>div:nth-child(2)>div
 {
  display: inline-block;
  padding: 0.6rem;
  height: 10rem;
  vertical-align: top;
 }
 #cart>div:nth-child(2)>div:nth-child(1), #cart>div:nth-child(2)>div:nth-child(2), #cart>div:nth-child(2)>div:nth-child(3), #cart>div:nth-child(2)>div:nth-child(4), #cart>div:nth-child(2)>div:nth-child(5), #cart>div:nth-child(2)>div:nth-child(6)
 {
  height: 4rem;
  vertical-align: bottom;
 }
 #cart>div:nth-child(2)>div:nth-child(6n-5)
 {
  width: 12%;
 }
 #cart>div:nth-child(2)>div:nth-child(6n-4)
 {
  width: 30%;
 }
 #cart>div:nth-child(2)>div:nth-child(6n-3)
 {
  width: 15%;
 }
 #cart>div:nth-child(2)>div:nth-child(6n-2), #cart>div:nth-child(2)>div:nth-child(6n-1)
 {
  width: 12%;
 }
 #cart>div:nth-child(2)>div:nth-child(6n)
 {
  width: 16%;
 }
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div, #cart>div>div>h2, #cart>div>div>a, #cart>div>div>form>select, #cart>div:nth-child(2)>div>form>input
 {
  font-size: 0.8rem;
 }
}
#cart>div:nth-child(2)>div:nth-child(6n+1)
{
 padding-bottom: 0.8rem;
 padding-left: 20%;
 padding-top: 0.8rem;
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div:nth-child(6n+1)
 {
  display: none;
 }
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 #cart>div:nth-child(2)>div:nth-child(6n+1)
 {
  padding-left: 3%;
 }
}
#cart>div:nth-child(2)>div>a:first-child
{
 font-family: "bold";
}
#cart>div:nth-child(2)>div>form>input:nth-child(4)
{
 display: none;
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div>form>input:nth-child(4)
 {
  display: inline-block;
 }
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div>form>input, #cart>div:nth-child(2)>div>form>select
 {
  height: 2rem;
  padding: 0 0.5rem;
 }
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div>form>input:nth-child(3)
 {
  display: none;
 }
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(2)>div>form>select
 {
  width: min-content;
 }
}
#cart>div:nth-child(3)
{
 display: grid;
 grid-template-columns: max-content max-content;
 justify-content: flex-end;
 margin-bottom: 3.6rem;
}
@media (max-width: 1000px)
{
 #cart>div:nth-child(3)
 {
  grid-template-columns: 100% max-content;
 }
}
#cart>div:nth-child(3)>div
{
 padding: 0.3rem 1.2rem;
 text-align: right;
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 #cart>div:nth-child(3)>div
 {
  display: inline-block;
  text-align: right;
 }
 #cart>div:nth-child(3)>div:nth-child(2n-1)
 {
  width: 84%
 }
 #cart>div:nth-child(3)>div:nth-child(2n)
 {
  width: 15%
 }
}
#cart>div:nth-child(3)>div:nth-child(2n-1)
{
 padding-right: 2.4rem;
}
#cart>div:nth-child(3)>div:nth-child(5), #cart>div:nth-child(3)>div:nth-child(6)
{
 border-bottom: 1px solid #BBBBBB;
 font-family: "bold";
 padding-bottom: 1.2rem;
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 #cart>div:nth-child(3)>div:nth-child(5)
 {
  border-bottom: none;
 }
}
#cart>h1
{
 margin-bottom: 2.4rem;
}
@media (max-width: 1000px)
{
 #cart>h1
 {
  margin-left: 5%;
 }
}
#cart img
{
 height: 8rem;
}
#cart_confirmation_link_top
{
 margin-left: 0.6rem;
 margin-right: 4.8rem;
}
@media (max-width: 1000px)
{
 #cart_confirmation_link_top
 {
  display: inline-block;
  margin-left: 0;
 }
}
#contact
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #contact
 {
  margin-top: 2.4rem;
  width: 90%;
 }
}
#contact>div
{
 display: inline-block;
 width: 100%;
}
#contact>div>a
{
 display: inline-block;
 margin-top: 1.2rem;
}
#contact>div>h2
{
 margin-bottom: 2.4rem;
}
#contact input, #contact textarea
{
 margin-bottom: 1.2rem;
}
#contact input[type=submit]
{
 margin-bottom: 3.6rem;
}
#contact>h1
{
 margin-bottom: 2.4rem;
}
#contact img
{
 border-radius: 0.2rem;
 height: 4rem;
 margin-bottom: 2.4rem;
 margin-top: 0.6rem;
}
#contact input[name=email]
{
 width: 15rem;
}
#contact input[name=security_code]
{
 width: 8rem;
}
#contact textarea
{
 height: 10rem;
 resize: none;
 width: 50%;
}
@media (max-width: 1000px)
{
 #contact textarea
 {
  width: 100%;
 }
}
#contact_confirmation
{
 margin-bottom: 1.2rem;
}
#filter
{
 margin: 1.2rem auto;
 position: relative;
 width: 80%;
}
@media (max-width: 1000px)
{
 #filter
 {
  width: 90%;
 }
}
#filter>form>div>div
{
 display: none;
}
#filter>form>div>div>div
{
 margin-right: 2rem;
 margin-top: 1.5rem;
}
#filter>form>div>div>div>div
{
 border-top: 1px solid #BBBBBB;
 display: flex;
 margin-top: 0.3rem;
 padding-top: 0.3rem;
}
@media (max-width: 1000px)
{
 #filter>form>div>div>div>div
 {
  flex-direction: column;
 }
}
#filter>form>div>div>div>div>div
{
 margin-right: 2rem;
 width: 12rem;
}
#filter>form>div>div>div>div>div:last-of-type
{
 margin-right: 0;
}
#filter>form>div>div>div>div>div>div
{
 display: flex;
}
#filter>form>div>div>div>div>div>div>input
{
 cursor: pointer;
 margin: 0.3rem 0.5rem auto 0;
}
#filter>form>div>div:first-child
{
 border: 1px solid transparent;
 border-radius: 0.2rem;
 display: none;
 flex-wrap: wrap;
 padding: 0 1.5rem 1.8rem 1.5rem;
}
#filter>form>a
{
 display: inline-block;
 float: right;
}
#filter>form>label
{
 cursor: pointer;
 display: inline-block;
}
#filter>form>label>img
{
 height: 2rem;
 vertical-align: middle;
}
@media (max-width: 1000px)
{
 #filter>form>label>img
 {
  height: 1.5rem;
 }
}
#filter>form>input:first-child
{
 display: none;
}
#filter>form>input + label
{
 transition: color 0.15s;
}
#filter>form>input:checked + label, #filter>form>input:hover + label
{
 color: rgb(121, 166, 68);
}
#filter>form>input + label>img
{
 transition: background 0.15s;
}
#filter>form>input:checked + label>img, #filter>form>input:hover + label>img
{
 background: rgb(121, 166, 68);
}
#filter input:checked ~ a:first-of-type
{
 display: none;
}
#filter input:checked ~ div>div:first-child
{
 border-color: #BBBBBB;
 display: flex;
 margin-top: 1.2rem;
}
#filter input:checked ~ div>div:last-child
{
 display: flex;
 flex-wrap: wrap;
 justify-content: flex-end;
}
#filter input[type=submit]
{
 margin-left: 0.6rem;
 margin-top: 1rem;
}
#filter label
{
 margin-right: 1rem;
}
#final_return
{
 margin: 1.2rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #final_return
 {
  width: 90%;
 }
}
#footer
{  
 background: #900E12;
 display: flex;
 flex-wrap: wrap;
 padding: 2.4rem 10%;
 width: 100%;
}
@media (max-width: 1000px)
{
 #footer
 {
  padding: 2.4rem 5%;
 }
}
#footer a, #footer li, #footer>div, #footer strong
{
 color: #FFFFFF;
 line-height: 2.1rem;
}
#footer a:hover
{
 color: #BBBBBB;
}
#footer div
{
 flex-basis: 32%;
 flex-grow: 1;
 margin-bottom: 2.4rem;
 margin-right: 2%;
}
@media (max-width: 1000px)
{
 #footer div
  {
  flex-basis: 100%;
  margin-right: 0;
 }
}
#footer div:nth-child(3n)
{
 margin: 0;
}
#footer>div:last-child
{
 margin-top: 1.2rem;
}
#footer h2
{
 color: #FFFFFF;
 margin-bottom: 1rem;
}
#footer img
{
 background: white;
 height: 2.5rem;
 margin: 0.5rem 0 0.5rem 1.5rem;
 padding: 0.2rem 0.2rem;
}
#footer strong
{
 font-family: "bold";
 font-weight: bold;
 margin-right: 0.4rem;
}
#footer_extension
{
 background: #900E12;    
}
@media (min-height: 1200px)
{
 #footer_extension
 {
  height: 50%;
 }
}
#general
{
 margin: 0 auto;
 text-align: right;
 width: 80%;
}
@media (max-width: 1000px)
{
 #general
 {
  width: 90%;
 }
}
#general>div>a
{
 height: 2.5rem;
 margin-left: 0.6rem;
}
@media (max-width: 1000px)
{
 #general>div>a
 {
  display: inline-block;
  margin-bottom: 0.5rem;
 }
}
#general>div:first-child
{
 margin-bottom: 2.3rem;
}
#header
{
 margin: 0 auto 1.2rem auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #header
 {
  width: 90%;
 }
}
#header>div:first-of-type
{
 margin: 0 auto 0 auto;
 text-align: right;
}
@media (max-width: 1000px)
{
 #header>div:first-of-type
 {
  margin-bottom: 0.6rem;
 }
}
#header>div:first-of-type>div:first-of-type
{
 display: inline;
}
@media (max-width: 1000px)
{
 #header>div:first-of-type>div:first-of-type
 {
  display: none;
 }
}
#header>div:first-of-type>div:last-of-type
{
 display: none;
}
@media (max-width: 1000px)
{
 #header>div:first-of-type>div:last-of-type
 {
  display: inline;
 }
 #header>div:first-of-type>div:last-of-type>small
 {
  font-size: 0.6rem;
 }
}
#header>div:first-of-type>img
{
 height: 0.6rem;
}
#header>div:first-of-type>img:first-of-type
{
 padding-left: 0.6rem;
}
#header>div:last-of-type
{
 display: flex;
 flex-wrap: wrap;
}
@media (max-width: 1000px)
{
 #header>div:last-of-type
 {
  flex-direction: column;
 }
}
#header>div:last-of-type>div:first-child img
{
 height: 4rem;
 vertical-align: bottom;
}
@media (max-width: 1000px)
{
 #header>div:last-of-type>div:first-child img
 {
  height: 2.5rem;
 }
}
#header>div:last-of-type>div:nth-child(2)
{
 align-items: flex-end;
 display: flex;
 flex-grow: 1;
 min-width: 20rem;
}
@media (max-width: 1000px)
{
 #header>div:last-of-type>div:nth-child(2)
 {
  width: 100%;
 }
}
#header>div:last-of-type>div:last-child
{
 justify-content: flex-end;
 flex-grow: 1;
 display: flex;
 margin: auto 0 0 1rem;
 padding-top: 1rem;
}
#header>div:last-of-type>div:last-child a
{
 align-items: flex-end;
 display: flex;
 flex-shrink: 0;
 flex-wrap: nowrap;
 min-width: 0;
}
#header>div:last-of-type>div:last-child a>div>div
{
 color: #FFFFFF;
 font-family: "bold";
 font-size: 1rem;
 left: 50%;
 position: absolute;
 top: 50%;
 transform: translate(-35%, -55%);
}
#header>div:last-of-type>div:last-child>a>div>img:hover
{
 background: rgb(121, 166, 68);
}
#header>div:last-of-type>div:last-child>a>div:first-child
{
 position: relative;
 margin: auto 0.5rem 0 1.5rem;
 text-align: center;
}
@media (max-width: 1000px)
{
 #header>div:last-of-type>div:last-child>a>div:first-child
 {
  margin: auto 0 0 1rem;
 }
}
#header>div:last-of-type>div:last-child>a>div:last-child
{
 white-space: nowrap;
}
@media (max-width: 1000px)
{
 #header>div:last-of-type>div:last-child>a>div:last-child
 {
  display: none;
 }
}
#header>div:last-of-type>div:last-child div
{
 margin-bottom: 0.2rem;
 transition: color 0.15s;
}
#header>div:last-of-type>div:last-child div:hover
{
 color: #5D8034;
}
#header>div:last-of-type>div:last-child img
{
 display: block;
 height: 2rem;
}
@media (max-width: 1000px)
{
 #header>div:last-of-type>div:last-child img
 {
  height: 1.5rem;
 }
}
#header form
{
 display: flex;
 margin: auto 0 0 2rem;
 width: 100%;
 white-space: nowrap;
}
@media (max-width: 1000px)
{
 #header form
 {
  margin: 0.5rem 0 0 0;
 }
}
#header input[type=submit]
{
 background-color: rgb(144, 14, 18);
 border: 0;
 border-radius: 0 0.2rem 0.2rem 0;
 cursor: pointer;
 flex: 1;
 font-family: "symbols";
 font-size: 1.4rem;
 height: 2.5rem;
 padding: 0.3rem 1rem;
}
#header input[type=submit]:hover
{
 background-color: rgb(121, 166, 68);
}
#header input[type=text]
{
 flex: 10;
}
#header input[type=text]
{
 border: 1px solid #BBBBBB;
 border-radius: 0.2rem 0 0 0.2rem;
 border-right: none;
 color: #AAAAAA;
 height: 2.5rem;
 padding: 0.3rem 0.8rem;
 transition: color 0.15s;
}
#header input[type=text]:hover
{
 color: transparent;
}
#header input[type=text]:focus
{
 border: 1px solid #888888;
 border-right: none;
 color: #222222;
}
#introduction
{
 margin: 0 auto;
 position: relative;
 width: 80%;
}
@media (max-width: 1000px)
{
 #introduction
 {
  overflow: hidden;
  width: 100%;
 }
}
#introduction div
{
 bottom: 1rem;
 color: #FFFFFF;
 font-family: "bold";
 font-size: 1.4rem;
 position: absolute;
 right: 2rem;
 text-shadow: 0 0 0.2rem #000000;
 white-space: nowrap;
}
@media (max-width: 1000px)
{
 #introduction div
 {
  font-size: 1rem;
 }
}
#introduction img
{
 border-radius: 0.2rem;
 width: 100%;
}
@media (max-width: 1000px)
{
 #introduction img
 {
  border-radius: 0;
  margin: 0 -75%;
  width: 250%;
 }
}
#login
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #login
 {
  margin: 2.4rem auto 0 auto;
  width: 90%;
 }
}
#login>div>form>fieldset
{
 margin-bottom: 0.6rem;
}
#login>div>form>fieldset>div
{
 display: block;
 margin-bottom: 0.6rem;
}
#login>div>form>fieldset>div>input[type=text], #login>div>form>fieldset>div>input[type=password]
{
 display: inline-block;
 width: 18rem;
}
#login>div>form>fieldset>div>label
{
 display: inline-block;
 width: 10rem;
}
#login>div>form>fieldset:last-child
{
 margin-top: 1.2rem;
}
#login>div>form>fieldset:last-child>div>input:last-child
{
 margin-left: 1.2rem;
}
#login>div>h2
{
 margin-bottom: 2.4rem;
}
#login>h1
{
 margin-bottom: 2.4rem;
}
#order
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #order
 {
  width: 90%;
 }
}
#order>div
{
 display: flex;
}
@media (max-width: 1000px)
{
 #order>div
 {
  display: block;
 }
}
#order>div>div
{
 flex: 1;
}
#order>div>div>form>fieldset
{
 margin-bottom: 0.6rem;
}
#order>div>div>form>fieldset>div
{
 display: block;
 margin-bottom: 0.6rem;
}
#order>div>div>form>fieldset>div>label, #order>div>div>form>fieldset>div>input[type=text], #order>div>div>form>fieldset>div>input[type=password], #order>div>div>form>fieldset>div>select, #order>div>div>form:last-child>fieldset:nth-child(2)>div, #order>div>div>form>fieldset:nth-child(3)>div:nth-child(2)>div>label, #order>div>div>form>fieldset:nth-child(3)>div:nth-child(2)>div>input
{
 display: inline-block;
 vertical-align: middle;
 width: 49%;
}
@media (max-width: 1000px)
{
 #order>div>div>form>fieldset>div>input[type=text], #order>div>div>form>fieldset>div>input[type=password], #order>div>div>form>fieldset>div>select, #order>div>div>form>fieldset:nth-child(3)>div:nth-child(2)>div>input
 {
  width: 59%;
 }
 #order>div>div>form>fieldset>div>label, #order>div>div>form>fieldset:nth-child(3)>div:nth-child(2)>div>label, #order>div>div>form:last-child>fieldset:nth-child(2)>div
 {
  width: 39%;
 }
}
#order>div>div>form>fieldset select
{
 height: auto;
}
#order>div>div>form>fieldset:nth-child(2)>div
{
 display: inline-block;
}
#order>div>div>form>fieldset:nth-child(2)>div:first-child
{
 vertical-align: top;
}
#order>div>div>form>fieldset:nth-child(2)>div:last-child>div
{
 margin-bottom: 0.6rem;
}
#order>div>div>form>fieldset:nth-child(2)>div:last-child>div>img
{
 height: 1.6rem;
 margin-right: 0.3rem;
 vertical-align: middle;
}
#order>div>div>form>fieldset:nth-child(2)>div:last-child>div>input
{
 cursor: pointer;
}
#order>div>div>form>fieldset:nth-child(3)>div
{
 margin-top: 1.2rem;
 width: 100%;
}
#order>div>div>form>fieldset:nth-child(3)>div>a
{
 font-family: "bold";
}
#order>div>div>form>fieldset:nth-child(3)>div>input
{
 cursor: pointer;
}
#order>div>div>form>fieldset:nth-child(3)>div>input[type=checkbox]:checked~div
{
 display: block;
}
#order>div>div>form>fieldset:nth-child(3)>div:nth-child(2)>div
{
 display: none;
 margin-top: 0.6rem;
}
#order>div>div>form>fieldset:nth-child(4)>div>input, #order>div>div>form>fieldset:nth-child(4)>div>a, #order>div>div>form>fieldset:nth-child(2)>div>input, #order_check>div>div>div>a, #order_check>div>div>div>div>a
{
 display: inline-block;
 margin-right: 1.2rem;
 margin-top: 0.6rem;
 white-space: nowrap;
}
#order>div>div>form>fieldset:last-child
{
 margin-top: 1.2rem;
}
#order>div>div>form>fieldset:nth-of-type(2)>div>div
{
 white-space: nowrap;
}
#order>div>div:first-child, #order_check>div>div:first-child
{
 padding-right: 3.6rem;
}
@media (max-width: 1300px)
{
 #order>div>div:first-child, #order_check>div>div:first-child
 {
  padding-right: 1.8rem;
 }
}
@media (max-width: 1000px)
{
 #order>div>div:first-child, #order_check>div>div:first-child
 {
  padding-right: 0;
 }
}
#order>div>div:first-child.right_border, #order_check>div>div:first-child.right_border
{
 border-right: 1px solid #BBBBBB;
}
@media (max-width: 1000px)
{
 #order>div>div:first-child.right_border, #order_check>div>div:first-child.right_border
 {
  border-right: none;
 }
}
#order>div>div:last-child, #order_check>div>div:last-child
{
 padding-left: 3.6rem;
}
@media (max-width: 1300px)
{
 #order>div>div:last-child, #order_check>div>div:last-child
 {
  padding-left: 1.8rem;
 }
}
@media (max-width: 1000px)
{
 #order>div>div:last-child, #order_check>div>div:last-child
 {
  padding-left: 0;
  padding-top: 2rem;
 }
}
#order>div>div:last-child>form>fieldset:last-child>div:last-child
{
 width: 100%;
}
#order>div>div>h2
{
 margin-bottom: 2.4rem;
}
#order>h1
{
 margin-bottom: 2.4rem;
}
#order_check
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #order_check
 {
  width: 100%;
 }
}
@media (max-width: 1000px)
{
 #order_check>a
 {
  margin-left: 5%;
 }
}
#order_check>div
{
 display: flex;
}
@media (max-width: 1000px)
{
 #order_check>div
 {
  display: block;
 }
}
#order_check>div>div
{
 flex: 1;
}
#order_check>div>div:first-child
{
 flex: 1.8;
}
#order_check>div>div>div>a
{
 display: inline-block;
 margin-bottom: 0.3rem;
}
#order_check>div>div>div>a:last-of-type
{
 white-space: nowrap;
}
@media (max-width: 1000px)
{
 #order_check>div>div>div>a:last-of-type
 {
  white-space: normal;
 }
}
#order_check>div>div:first-child>div:first-child
{
 display: grid;
 grid-template-columns: auto auto auto auto;
 margin-bottom: 1.2rem;
}
#order_check>div>div:first-child>div:first-child>div
{
 border-bottom: 1px solid #BBBBBB;
 padding: 0.6rem;
}
@media (max-width: 1000px)
{
 #order_check>div>div:first-child>div>div, #order_check>div>div:first-child>div>div>h2
 {
  font-size: 0.8rem;
 }
 #order_check>div>div:first-child>div>div>small
 {
  font-size: 0.6rem;
 }
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 #order_check>div>div:first-child>div:first-child>div
 {
  display: inline-block;
  height: 5rem;
  vertical-align: top;
 }
 #order_check>div>div:first-child>div:first-child>div:nth-child(1), #order_check>div>div:first-child>div:first-child>div:nth-child(2), #order_check>div>div:first-child>div:first-child>div:nth-child(3), #order_check>div>div:first-child>div:first-child>div:nth-child(4)
 {
  height: auto;
 } 
 #order_check>div>div:first-child>div:first-child>div:nth-child(4n-3)
 {
  width: 40%;
 }
 #order_check>div>div:first-child>div:first-child>div:nth-child(4n-2), #order_check>div>div:first-child>div:first-child>div:nth-child(4n-1), #order_check>div>div:first-child>div:first-child>div:nth-child(4n)
 {
  width: 19%;
 }
}
#order_check>div>div:first-child>div:first-child>div:nth-child(4n)
{
 text-align: right;
}
#order_check>div>div:first-child>div:first-child>div:nth-child(4n-1), #order_check>div>div:first-child>div:first-child>div:nth-child(4n-2)
{
 text-align: center;
}
#order_check>div>div:first-child>div:nth-child(2)
{
 border-bottom: 1px solid #BBBBBB;
 display: grid;
 grid-template-columns: max-content max-content;
 justify-content: flex-end;
 margin-bottom: 3.6rem;
 padding-bottom: 1.2rem;
}
@media (max-width: 1000px)
{
 #order_check>div>div:first-child>div:nth-child(2)
 {
  margin-bottom: 1.2rem;
 }
}
#order_check>div>div:first-child>div:nth-child(2)>div
{
 padding: 0.1rem 0.6rem;
 text-align: right;
}
/*
SPECIFIC STYLING WORKAROUND FOR IE 10 AND 11 AS GRID CODE IS NOT SUPPORTED
*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
 #order_check>div>div:first-child>div:nth-child(2)>div
 {
  display: inline-block;
 }
 #order_check>div>div:first-child>div:nth-child(2)>div:nth-child(2n-1)
 {
  width: 79%;
 }
 #order_check>div>div:first-child>div:nth-child(2)>div:nth-child(2n)
 {
  width: 20%;
 }
}
#order_check>div>div:first-child>div:nth-child(2)>div:nth-child(2n-1)
{
 padding-right: 2.4rem;
}
#order_check>div>div:first-child>div:nth-child(2)>div:nth-child(7), #order_check>div>div:first-child>div:nth-child(2)>div:nth-child(8)
{
 font-family: "bold";
}
@media (max-width: 1000px)
{
 #order_check>div>div:first-child>div:nth-child(3)
 {
  margin-left: 5%;
 }
}
@media (max-width: 1000px)
{
 #order_check>div>div:first-child>div:nth-child(3)>a:first-of-type
 {
  display: none;
 }
}
@media (max-width: 1000px)
{
 #order_check>div>div:last-child
 {
  margin-left: 5%;
 }
}
#order_check>div>div:last-child>div
{
 margin-bottom: 1.2rem;
}
#order_check>div>div:last-child>div:last-child
{
 margin-top: 3.6rem;
}
#order_check>div>div:last-child>h2
{
 padding-bottom: 1.2rem;
 padding-top: 0.6rem;
}
#order_check>div>div:last-of-type>div>a:first-of-type
{
 display: none;
}
@media (max-width: 1000px)
{
 #order_check>div>div:last-of-type>div>a:first-of-type
 {
  display: inline-block;
 }
}
#order_check>h1
{
 margin-bottom: 2.4rem;
}
@media (max-width: 1000px)
{
 #order_check>h1
 {
  margin-left: 5%;
 }
}
#password_reset
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #password_reset
 {
  width: 90%;
 }
}
#password_reset>div>form>fieldset
{
 margin-bottom: 0.6rem;
}
#password_reset>div>form>fieldset>div
{
 display: block;
 margin-bottom: 0.6rem;
}
#password_reset>div>form>fieldset>div>input[type=password]
{
 display: inline-block;
 width: 18rem;
}
#password_reset>div>form>fieldset>div>label
{
 display: inline-block;
 width: 18rem;
}
#password_reset>div>form>fieldset:last-child
{
 margin-top: 1.2rem;
}
#password_reset>h1
{
 margin-bottom: 2.4rem;
}
#payment_processing
{
 margin: 4rem auto 0 auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #payment_processing
 {
  margin: 2.4rem auto 0 auto;
  width: 90%;
 }
}
#payment_processing>div
{
 margin-bottom: 1.2rem;
}
#payment_processing>h1
{
 margin-bottom: 1.2rem;
}
#selection
{
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 margin: 0 auto 2.4rem auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #selection
 {
  width: 90%;
 }
}
#selection>div
{
 animation: smooth_fade_in 0.5s ease-in-out;
 border: 1px solid transparent;
 border-radius: 0.2rem;
 padding: 2rem 0.2rem;
 text-align: center;
 transition: border-color 0.15s;
 width: 23rem;
}
@media (max-width: 1000px)
{
 #selection>div
 {
  flex-basis: 100%;
  margin-bottom: 0.5rem;
 }
}
#selection>div>a>div:nth-child(2)
{
 font-family: "bold";
}
#selection>div>a>div:nth-child(5)>small
{
 color: #AAAAAA;
}
#selection>div>div
{
 margin-top: 1rem;
}
#selection>div:hover
{
 border-color: #BBBBBB;
}
#selection img
{
 display: block;
 padding: 0 20% 2rem 20%;
 width: 100%;
}
@media (max-width: 1500px)
{
 #selection img
 {
  padding: 0 25% 1.5rem 25%;
 }
}
@media (max-width: 1000px)
{
 #selection img
 {
  padding: 0 32% 1rem 32%;
 }
}
#status_message
{
 margin: 0.6rem auto;
 width: 80%;
}
@media (max-width: 1000px)
{
 #status_message
 {
  width: 90%;
 }
}
/*
ANIMATION KEYFRAMES
*/
@keyframes smooth_fade_in
{
 from
 {
  opacity: 0;
 }
 to
 {
  opacity: 1;
 }
}