html { box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }
* { margin: 0; padding: 0; }

body { 
    color: #000; 
    background-color: #4d7304; 
    font-family: 'Open Sans', sans-serif;
    background-image: url(/images/bg.jpg);
    background-repeat: repeat-x;
}

h1,h2,h3 { margin-bottom: 10px;  }
h1 { font-size: 16pt; font-weight: bold; }
h2 { font-size: 14pt; font-weight: bold; }
h3 { font-size: 12pt; font-weight: bold; }

a { color: #000; text-decoration: underline; }
a:hover { text-decoration: underline; }

img { border: none; }
hr { margin-bottom: 10px; }

table tr { vertical-align: top; }

#messages {  background-color: #f2dede; border-color: #ebccd1; color: #a94442; padding: 3px; font-size: 14px; text-align: center; }
#messages ul { list-style-type: none; margin: 0px; padding: 0px;}
#messages li { line-height: inherit; margin: 0px; padding: 0px; clear: both; }

#page { 
    position: relative; 
    width: 960px; 
    margin: 20px auto 5px auto; padding: 0px; 
    background-color: #fff;
    border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px; 
    border: solid 1px #a0a0a0; 
}

#header {
    margin: 0px 40px 15px 40px;
    min-height: 50px; 
    background-color: #fff; 
    border-top-left-radius: 4px; border-top-right-radius: 4px;
    color: #033d6d;
    background-image: url(/images/headerlogo.png);
    background-repeat: no-repeat;
    background-position: center;
    font-size: 11pt;
}

#header p { padding: 0px; margin-top: 0px; margin-bottom: 0px; line-height: inherit;}
#header > div { text-align: center; }
#header img { display: inline-block; vertical-align: top; }

#header > div { text-align: left; }

#nav {  padding: 0px; 
    font-size: 12pt;
    z-index: 999;
}
#nav ul {  }
#nav li { display: inline-block; padding: 3px 0px 3px 0px; background-color: #033d6d; width: 16.3%; text-align: center; border-bottom: solid 2px #fff;}

#nav li { width: 24.5%; }

#nav li a { text-transform: uppercase; text-decoration: none; color: #fff; font-weight: bold;}
#nav li.on a, #nav li a:hover {   }
#nav li.on, #nav li:hover {  }

#subnav { padding: 10px 0px; font-size: 10pt; background-color: #033d6d; }
#subnav ul { margin-left: 80px; }
#subnav li { display: inline-block; margin-right: 20px; }
#subnav li a { text-decoration: none; color: #fff; }
#subnav li.on a, #nav li a:hover {  }
#subnav li.on, #subnav li:hover { border-bottom: solid 2px #fff; }

#imagebar img { display: block; }
#pagecontent tr { vertical-align: top; }

#holder { position: relative; background-color: #f8facb; }

.content { 
    width: auto;
    margin-right: 350px;
    padding: 40px;  
    background-color: #fff;
    min-height: 600px;
    font-size: 10pt; 
}

.content h1 a { color: #033d6d; }
.content strong { color: #033d6d;  }
.content a { }
.content p { line-height: 20pt; margin-bottom: 10px;  }
.content p:last-child { margin-bottom: 0px; }

.content img { }
.content ul { font-size: 14pt; margin-bottom: 10px; }
.content li { margin-left: 20px; line-height: 18pt;  margin-bottom: 10px;}

.content form { margin-bottom: 100px; }
.content form p { margin: 0px; }
.content form p.formerror { padding: 10px; margin-bottom: 10px; font-weight: bold; background-color: #ffaaaa; color: #000; font-size: 16pt; border-radius: 5px; }
.content form .nonfielderrors { padding: 10px; margin-bottom: 10px; font-weight: bold; background-color: #ffaaaa; color: #000; font-size: 16pt; border-radius: 5px; }
.content form ul { font-size: 12pt; }
.content form ul { list-style-type: none;}
.content form li { margin-left: 0px; color: #fff; }
.content form > ul > li { border: solid 1px #eee; padding: 10px; margin-bottom: 10px; }
.content form ul.fields > li > label { display: inline-block; color: #fff; background-color: #033d6d; padding: 8px; margin-bottom: 10px; font-size: 12pt; border-radius: 4px; }
.content form ul.fields > li.error > label { background-color: #ffaaaa; }
.content form ul.fields > li { color: #000; margin-bottom: 20px;}
.content form ul.fields > li > ul > li { padding-left: 10px; color: #000; margin-top: 4px; }
.content form li .errorlist { float: right; margin-top: 1px; margin-right: 10px; }
.content form ul.fields > li > ul.errorlist > li { color: #e00000; padding: 4px;}
.content form ul.fields > li > label { display: block }
.content form ul.fields li label + input { font-size: 13pt; padding: 5px; width: 100%; }
.content form ul.fields li label + textarea { font-size: 13t; padding: 5px; width: 100%;}
.content form ul.fields li #id_captcha_1 { font-size: 13pt; padding: 5px; display: block;width: 100%; }

.content form fieldset { padding: 0px; margin-bottom: 20px; border: none; }

.content form .helptext { font-size: 10pt; margin-left: 30px;}
.content form .description { font-size: 12pt; margin-bottom: 20px; }
.content form input[type=submit]:focus {border: #ccc 1px solid; }
.content form input[type=submit] { padding:5px 15px; color: #fff; background:#033d6d; border:0 none; cursor:pointer; border-radius: 5px; float: left; font-size: 12pt;  }


.contact form legend { font-size: 16pt; color: #EE1C25; }


.contact form ul.fields li:first-child label { display: none; }


.content form ul.errorlist { margin-bottom: 0px; }

.ordernow .content { width: auto; background-color: #e4eeb5; margin-right: 0px; }
.ordernow .content form ul.fields > li > label { background-color: transparent; margin-left: 60px; font-family: Nunito, sans-serif; font-size: 12pt; }
.ordernow form legend { float: left; text-align: center; font-family: Nunito, sans-serif; font-size: 40px; color: #fff; background-color: #033d6d; border-radius: 25px; width: 50px; height: 50px; display: inline-block; margin-bottom: 0px; padding: 1px 0px 0px 3px; }

.ordernow label[for=id_name] { float: left; width: 150px; margin-left: 10px !important;}
.ordernow label[for=id_email] { float: left; width: 150px;}
.ordernow label[for=id_telephone] { float: left; width: 150px;}

.ordernow #id_replacements, 
.ordernow #id_delivery_address,
.ordernow #id_delivery_option  { margin-left: 200px;}

.ordernow #id_replacements { clear: both; }
.ordernow #id_name { width: 300px; }
.ordernow #id_telephone { width: 300px; }
.ordernow #id_email { width: 300px; }

.ordernow .content form ul.fields li label + textarea { width: auto; }
.ordernow .content form li { color: #000; }

.ordernow .content form ul.fields > li > label { color: #000; }


#box_selectable { list-style-type: none; margin: 0; padding: 0; display: inline-block; }
#box_selectable > li { margin: 0px; padding: 0px; float: left; font-size: 10pt; }
#box_selectable h1 { font-size: 12pt; }
#box_selectable p { text-align: left; }

#box_selectable .box { background-color: #fff; padding: 10px; min-height: 350px; margin: 0px 10px 10px 0px; }

#box_selectable li.ui-selecting .box { background: #FECA40; }
#box_selectable li.ui-selected .box { background: #F39814; background-image: url(/images/tick.png); background-repeat: no-repeat; background-position: bottom right; background-size: 60px; color: white;  }

#box_selectable > li li { font-size: 10px; font-weight: bold; line-height: 15px; margin-bottom: 0px; text-align: left; list-style-type: square; margin-left: 15px;   }


.side { 
    position: absolute; top: 0px; right: 0px; 
    width: 350px;  
    padding: 40px 40px 30px 30px;
    font-size: 10pt;
}

.side p { line-height: 20pt; margin-bottom: 10px;  }
.side p:last-child { margin-bottom: 0px; }

.sideinner { background-color: #fff; padding-bottom: 10px; border: solid 1px #033d6d; }
.sideinner h1,h2,h3 { text-transform: uppercase; padding: 3px 10px 3px 10px; display: inline-block; width: 100%; background-color: #033d6d; color: #fff; } 
.sideinner h1 { font-size: 24pt;  } 
.sideinner h2 { font-size: 18pt;  } 
.sideinner h3 { font-size: 12pt;  } 

.sideinner p { padding: 0px 10px; } 
.sideinner hr { margin: 0px 10px 10px 10px;}
.sideinner ul { padding: 0px 10px; }

.fbfeed { margin-top: 20px; }

#footer { 
    padding: 10px 40px 10px 40px;
    min-height: 40px; 
    background-color: #809eb6; 
    color: #000; 
    border-top: solid 3px #000;
}

#footer a { color: #fff; font-weight: bold; }

#footeredit { font-size: 8pt; }
#footeredit p { line-height: 13pt; }
#footeredit tr { vertical-align: center; }

#footerseo { position: absolute; left: 40px; bottom: 10px; font-size: 9pt; width: 660px; }
#footerseo p { font-size: 9pt; line-height: 16pt;}
#footerlogos { position: absolute; top: 0px;  right: 0px; padding: 10px; }
#footerlogos img { margin-left: 5px; }

#login_panel { position: absolute; bottom: 10px; right: 40px; font-size: 9pt;}
#login_panel p { font-size: 9pt; }

ul.messages { margin-bottom: 10px; }
ul.messages li { margin-left: 20px; }

.subpage .content { margin-top: 0px; }

.fadein { position: relative;  height: 449px; width: 960px; }
.fadein img { position: absolute; top: 0; left: 0; }

.editconfig { position: absolute; left: 2px; top: 2px;  z-index: 1099;}
.editconfig .editlink { display: inline-block;}
.editarea {  position: relative; min-height: 30px; z-index: 999; }
.editarea .editlink { position: absolute; right: 2px; top: 2px;  }
.editlink { z-index: 5000; }
.editlink a { display: inline-block; padding: 2px; color: #000 !important; background-color: #0f0; text-decoration: none; 
              font-weight: normal; font-size: 12px; border: 2px solid #000; border-radius: 4px; } 
.editcontent { border: dashed 1px #0f0; }



@media screen and (max-device-width: 480px) {
  body { -webkit-text-size-adjust: none; }
}

@media screen and (max-width: 960px) {

  #page { width: 100%; margin: 0px; }
  #header { margin: 0px 0px 10px 0px; }

  .content { width: auto; padding: 20px; margin-right: 270px; }
  .ordernow .content { margin-right: 0px; }
  .side { width: 250px; padding: 20px; }
  .side { font-size: 14px; }
  #nav { font-size: 10pt; }
   
  #header img {display: none; }
  #header img.logo { display: inline-block; text-align: center;  }

  .ordernow #id_replacements { margin-left: 0px; width: 250px; }
  .content img { max-width: 100%; }

#footerseo { width: auto; position: static; }

 
}

@media screen and (max-width: 720px) {
  #page { width: 100%; }
  .content { width: inherit; padding: 20px; margin-right: 0px; }
  .side { position: static; width: inherit; }
  #nav li { width: 32%;  }
  #nav li { width: 24%; }

  #header { background-size: 50%; }
}

@media screen and (max-width: 480px) {
  #nav li { width: 49%;  }
}

