/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
@import url(https: //fonts.googleapis.com/css?family=Source+Sans+Pro:400,200);

html,
button,
input,
select,
textarea {
    border-radius: 0;
    color: #5a5a5a;
}

h2, h3, h4,
a {
    color: #212121;
}

a:hover {
    color: #FF5200;
}

p a:hover {
    text-decoration: underline;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

body {
    font: 14px/22px arial;
    font-weight: normal;
    background: url(/images/background.jpg) 50% 100px repeat-x;
}

article {
    padding: 30px 40px;
    background: rgba(255, 255, 255, .68);
    margin-top: 30px !important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: normal;
    text-transform: uppercase;
}

ul {
    list-style: none;
    padding: 0;
}

header nav a:hover {
    color: #fff;
}

nav a:hover,
a {
    text-decoration: none;
}

/* ==========================================================================
   Eurotech
   ========================================================================== */
ul.contact-details label {
    text-transform: uppercase;
    text-align: right;
    width: 100px;
    float: left;
    padding-right: 20px;
}

ul.contact-details {
    font-size: 11px;
}

ul.quick-links {
    text-transform: uppercase;
    list-style: none !important;
    padding-bottom: 0;
    padding-left: 10px !important;
    font-size: 12px;
}

ul.quick-links li {
    padding: 5px 0;
}

ul.quick-links a {
    padding-left: 30px;
    position: relative;
}

ul.quick-links a:before {
    position: absolute;
    content: '';
    display: block;
    width: 18px;
    height: 18px;
    background: url(/images/sprites.png) 0 0;
    left: 0;
    top: 0;
}

ul.quick-links a.information:before {
    background-position: -3px 1px;
}

ul.quick-links a.specifications:before {
    background-position: -3px -157px;
}

ul.quick-links a.enquiry:before {
    background-position: -3px -177px;
}

ul.quick-links a.find:before {
    background-position: -3px -37px;
}

ul.quick-links a.link:before {
    background-position: -3px -157px;
}

ul.quick-links a.home:before {
    background-position: -3px -37px;
}

ul.quick-links a.grid:before {
    background-position: -4px -75px;
}

ul.quick-links a.service:before {
    background-position: -3px -37px;
}

ul.quick-links a.directions:before {
    background-position: -3px -138px;
}

ul.quick-links a.web:before {
    background-position: -3px -158px;
}

ul.quick-links a.brochure:before {
    background-position: -3px -411px;
}

.center {
    width: 960px;
    margin: 0 auto;
    position: relative;
}

form {
    padding: 20px 0;
    padding: 0;
}

form > div {
    margin-bottom: 25px;
    position: relative;
    padding-left: 180px;
    outline: 1px solid #e6e6e6;
    min-height: 36px;
    background: #fff;
    overflow: hidden;
}

form > div label {
    position: absolute;
    background: #F0F0F0;
    padding: 7px 10px;
    color: #555;
    font-size: 14px;
    top: 0;
    left: 0;
    bottom: 0;
    width: 160px;
}

form > div input,
form > div textarea {
    padding: 10px;
    border: none;
    outline: none;
    width: 260px;
}

form input[type="submit"]:hover {
    background: #000;
}

form input[type="submit"] {
    background: #15212e;
    cursor: pointer;
    padding: 13px 28px;
    color: #fff;
    border: none;
}

form > div.radio-group {
    padding: 0;
    outline-color: transparent;
    background: transparent;
}

form > div.radio-group input[type="radio"] {
    width: auto;
    position: absolute;
    top: 10px;
    left: 7px;
    cursor: pointer;
}

form > div.radio-group input:before {
    position: absolute;
    width: 24px;
    height: 24px;
    background: url(/images/sprites.png) 0px -595px;
    content: '';
    top: -6px;
    left: -6px;
}

form > div.radio-group input:checked:before {
    background-position: 0px -635px;
}

form > div.radio-group span {
    float: left;
    padding: 5px 20px;
    position: relative;
}

form > div.radio-group label {
    position: relative;
    background: transparent;
}

form select {
    min-width: 310px;
    background: url(/images/sprites.png) 255px -198px no-repeat;
    border: none;
    outline: none;
    padding: 10px;
    padding-left: 0;
    cursor: pointer;
    top: 0px;
    bottom: 0px;
    position: absolute;
    left: 180px;
    text-indent: 10px;
}

/*Header
*/
header {
    color: #fff;
    background: #182531;
}

header ul.contact-details {
    margin-top: 10px;
}

header a {
    color: #fff;
}

header ul.contact-details {
    position: absolute;
    top: 20px;
    right: 0;
}

header section {
    padding: 15px 0;
}

header section > a {
    display: block;
    position: relative;
    height: 100px;
    width: 320px;
    margin: 0 10px;
    background: url(/images/title.png) center no-repeat;
}

header hgroup {
    position: absolute;
    width: 100%;
    height: 100%;
}

header hgroup * {
    text-indent: -9999px;
}

header nav {
    background: #0f1d29;
}

header nav li a {
    /*
    font-family: 'Source Sans Pro';
    */
    font-weight: lighter;
    font-size: 16px;
    letter-spacing: 1px;
    text-transform: uppercase;
    float: left;
    padding: 15px 25px;
    border-right: 1px solid #051521;
}

header nav li a.selected {
    background: #040F18;
}

header nav li a:hover {
    background: #051521;
}

/*Footer
*/
footer {
    color: #fff;
    background: #182531;
    margin-top: 2em;
}

footer ul.contact-details {
    margin-top: 10px;
}

footer > div {
    background: #0f1d29;
    text-align: center;
    margin-top: 30px;
    padding: 20px 0 10px 0;
    font-size: 10px;
}

footer > div a {
    padding: 5px 10px;
    margin: 0 5px;
}

footer section > a {
    display: block;
    background: url(/images/title.png) center no-repeat;
    width: 380px;
    height: 80px;
    text-indent: -9999px;
}

footer a {
    color: #fff;
}

footer ul.contact-details {
    position: absolute;
    top: 40px;
    right: 0;
}

footer section {
    padding: 45px 0 15px 0;
}

/*Article
*/
article ul li {
    margin: 0;
}

/*rename .landing to .twocolumn*/
/*Landing
*/
.landing.hero h2 {
    font-size: 48px;
    position: relative;
    display: block;
    padding-top: .5em;
    padding-bottom: 1.4em;
    margin-bottom: 0.35em;
    border-bottom: 1px solid #fff;
    color: #000;
}

.landing h2 sub {
    color: #001c3c;
    position: absolute;
    left: 0;
    font-size: 26px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    top: 2.75em;
    line-height: 1em;
}

section.tile .fade {
    height: 7em;
    overflow: hidden;
}

section.tile section {
    max-height: 90px;
}

section.tile {
    float: left;
    width: 460px;
}

section.tile a.photo img {
    padding: 20px 0;
}

section.tile:nth-child(2n) {
    margin-left: 40px;
}

section.tile ul {
    list-style: square;
    padding-left: 25px;
}

section.tile h3 {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    top: 2.75em;
    line-height: 1em;
}

.landing .map {
    height: 242px;
}

/*Generic page
*/
ul {
    margin: 0 0 1em 0;
}

.hero section {
    padding-bottom: 3em;
}

section {
    padding-bottom: 4em;
}

.hero h2 {
    line-height: 40px;
    font-size: 34px;
    position: relative;
    display: block;
    padding-top: .5em;
    padding-bottom: .5em;
    margin-bottom: 0;
    margin: 0;
    color: #000;
}

.hero nav a {
    padding: 0 45px 0 0;
}

.hero nav li {
    float: left;
    margin-top: 0;
    position: relative;
    font-family: 'Source Sans Pro';
    text-transform: uppercase;
    font-weight: normal;
}

.hero nav {
    border-bottom: 1px solid #fff;
    margin-bottom: 2em;
}

.hero nav li:last-child:after {
    display: none;
}

.hero nav li:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: url(/images/sprites.png) -5px -338px;
    position: absolute;
    right: 15px;
    top: 3px;
}

p {
    text-align: justify;
}

/*Generic
*/
h3 {
    font-size: 1.95em;
    margin: 0 0 .85em 0;
}

figure {
    outline: 1px solid #fff;
    display: block;
    text-align: center;
}

figure a {
    background: #f8f8f8;
    background: url(/images/figure-background.jpg) 0 0 repeat-x;
    display: block;
}

figure img {
    max-width: 80%;
    max-height: 80%;
}

table {
    border-collapse: collapse;
}

table td {
    padding: 1em;
}

table td,
table th {
    border: 1px solid #ddd;
}

/*Lightbox
*/
.lightbox > * {
    top: 25%;
    background: #fff;
    border: 10px solid #fff;
    position: relative;
}

.lightbox {
    cursor: pointer;
    text-align: center;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

/*Product list
*/
li.product:last-child {
    padding-bottom: 5em;
}

li.product div {
    max-height: 9em;
    overflow: hidden;
    position: relative;
}

li.product p {}

.landing .feature section {
    position: relative;
}

section p {
    margin-top: 0;
}

.fade {
    position: relative;
}

.tile section {
    padding-bottom: 0;
    overflow: hidden;
    margin-bottom: 3em;
}

.fade:after,
li.product div:after {
    border-bottom: 20px solid #fff;
    content: '';
    background: url(/images/elipsis-fade.png) center bottom repeat-x;
    position: absolute;
    display: block;
    height: 55px;
    bottom: 0;
    left: 0;
    right: 0;
}

li.product figure {
    float: left;
    margin-right: 40px;
    width: 300px;
}

li.product figure img {
    padding: 1em;
    max-width: 75%;
    max-height: 75%;
}

li.product ul.quick-links {
    padding-left: 340px !important;
    margin: 0;
}

/*Product page
*/
.product-detail section ul {
    list-style-position: inside;
    list-style-type: square;
}

.product-detail h3 {
    font-size: 1.5em;
}

.product-detail aside {
    width: 300px;
    float: left;
}

.product-detail > div {
    width: 620px;
    float: right;
}

.product-detail aside section {
    padding-bottom: 1.25em;
}

.product-detail aside section figure:first-child {
    width: 100%;
    height: auto;
    margin-left: 0;
    margin-top: 0;
}

.product-detail aside figure:nth-child(2n+1) {
    margin-left: 20px;
}

.product-detail aside figure {
    float: left;
    width: 140px;
    height: 100px;
    margin-top: 20px;
}

.product-detail aside figure.video {
    position: relative;
}

.product-detail aside figure.video:after {
    display: block;
    content: '';
    position: absolute;
    margin: -26px 0 0 -10px;
    left: 50%;
    top: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 0 18px 22px;
    border-color: transparent transparent transparent #fff;
    pointer-events: none;
}

.product-detail aside figure.video:before {
    display: block;
    content: '';
    position: absolute;
    margin: -32px 0 0 -13px;
    left: 50%;
    top: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 0 24px 29px;
    border-color: transparent transparent transparent #ddd;
    pointer-events: none;
}

/*Resellers page
*/
.resellers > section {
    width: 460px;
    float: left;
}

.resellers ul ul {
    margin: 0;
}

.resellers section > ul > li > ul > li {
    float: left;
    margin-bottom: 3em;
    width: 180px;
    margin-right: 40px;
    height: 175px;
}

.resellers section > ul > li {
    margin: 0 0 3em 0;
}

.resellers h4 {
    margin-top: 0;
    font-size: 1em;
    /*white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;*/
}

.resellers .map {
    height: 400px;
}

.contact-information div {
    position: relative;
    padding-left: 60px;
    margin-bottom: 10px;
    font-size: .9em;
}

.contact-information div label {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    color: #777;
}

/*Contact page
*/
.contact form {
    float: left;
}

.contact aside {
    float: right;
    margin-left: 40px;
    padding-bottom: 3em;
}

.contact aside,
.contact form {
    width: 460px;
}

h4 {
    font-size: 1.5em;
    margin: 1.33em 0 .66em 0;
}

.contact .map {
    height: 280px;
    padding: 0;
    margin-bottom: 20px;
}

.contact aside .contact-information:last-child {
    margin-left: 20px;
}

.contact .contact-information {
    float: left;
    width: 220px;
}

form.working {
    opacity: 0.5;
}

form .error {
    margin: 1em 0;
    background: #FF5200;
    padding: .5em;
    color: #fff;
    font-size: .75em;
    text-align: center;
}

form .message {
    margin: 1em 0;
    background: #0f1d29;
    padding: .5em;
    color: #fff;
    font-size: .75em;
    text-align: center;
}

form input {
    outline: none;
}

form.done input,
form.done textarea {
    opacity: 0.25;
}

form.done input[type="submit"],
form.done .error {
    display: none;
}

.meta {
    position: absolute;
    width: 0;
    height: 0;
    text-indent: -9999px;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */
@media only screen and (max-width: 767px) {
    article {
        padding: 20px;
    }

    header .center {
        width: 310px;
    }

    body li.product figure {
        width: 280px;
    }

    header section > a {
        height: 80px;
    }

    .hero h2 {
        text-align: center;
    }

    section {
        padding-bottom: 2.5em;
    }

    .product-detail aside {
        float: none;
        width: 280px;
    }

    .center {
        width: 280px;
    }

    li.product div {
        height: 7em;
    }

    footer ul.contact-details label {
        display: none;
    }

    footer section {
        padding-bottom: 0;
    }

    footer ul.contact-details {
        position: relative;
        text-align: center;
        top: 0;
    }

    ul {
        margin: 0;
    }

    footer section > a {
        width: 280px;
        background-size: 85%;
        margin-bottom: 1.5em;
    }

    header section > a {
        background-size: 85%;
        width: 310px;
        margin: 0;
    }

    header .contact-details {
        display: none;
    }

    .landing.hero h2 {
        font-size: 35px;
        line-height: 1.1em;
        padding-bottom: .5em;
        margin-bottom: .5em;
    }

    .landing h2 sub {
        display: none;
    }

    section.tile h4 {
        font-size: 1.15em;
    }

    h3,
    section.tile h3 {
        font-size: 1.3em;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        width: 100%;
        top: 2.75em;
        line-height: 1em;
    }

    header nav li a {
        text-align: center;
    }

    section.tile {
        float: none;
        width: 100%;
    }

    .hero {
        padding-bottom: 2.5em;
    }

    .hero h2 {
        line-height: 1.1em;
    }

    article section ul.quick-links li {
        padding: 5px 0px;
        white-space: nowrap;
    }

    .hero section ul.quick-links {
        padding-bottom: 3em;
        display: none;
    }

    ul.quick-links {
        padding: 10px 0;
        padding-left: 0px !important;
    }

    .resellers form,
    .resellers .map {
        display: none;
    }

    .resellers section > ul > li > ul > li {
        margin-bottom: 1em;
        width: 280px;
        float: none;
    }

    .resellers > section {
        width: auto;
    }

    iframe {
        width: 300px !important;
        height: 240px !important;
    }

    .controllers section.tile ul.quick-links,
    .controllers section.tile section {
        display: none;
    }

    .hero section {
        padding-bottom: 0em;
    }

    .hero nav {
        margin: 0;
    }

    .hero nav ul {
        display: none;
    }

    table {
        width: 280px;
    }

    .product-detail > div {
        width: 280px;
        padding: 2em 0 0 0;
    }

    section.tile:nth-child(2n) {
        margin: 0;
    }

    form label {
        display: none;
    }

    form > div {
        padding-left: 0;
    }

    form > div input,
    form > div textarea {
        width: 290px;
    }

    form input[type="submit"] {
        width: 280px;
    }

    header nav li a {
        float: none;
        display: block;
        border: none;
    }

    li.product figure {
        float: none;
        margin: 0;
        width: 310px;
    }

    li.product div {
        margin-top: 1em;
    }

    li.product:last-child {
        padding-bottom: 0;
    }

    li.product ul.quick-links {
        display: none;
    }

    li.product ul.quick-links {
        padding-left: 0px !important;
    }

    /**********/
    .contact aside {
        margin-top: 3em;
        margin-left: 0;
    }

    .contact .map {
        height: 200px;
    }

    .contact .contact-information:last-child {
        display: none;
    }

    .contact .contact-information {
        width: 280px;
    }

    .contact aside, .contact form {
        width: auto;
        float: none;
    }

    form > div.radio-group span {
        display: block;
        float: none;
        padding: 0 0px 10px 45px;
    }

    form > div.radio-group input[type="radio"] {
        top: 12px;
        left: 15px;
    }

    form > div.radio-group label {
        display: block;
    }

    form select {
        left: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1160px) {
    article {
        background: rgba(255, 255, 255, .9);
    }

    .center {
        width: 660px;
    }

    header nav li a {
        padding: 15px 22px;
    }

    .hero section nav {
        margin-bottom: 1em;
    }

    article .center {
        width: 700px;
    }

    h4,
    .product-detail > div section > a > h3 {
        font-size: 1.25em;
    }

    table,
    .product-detail > div {
        width: 320px
    }

    section.tile {
        width: auto;
        float: none;
    }

    section.tile:nth-child(2n) {
        margin-left: 0px;
    }

    h3,
    section.tile h3 {
        font-size: 1.65em;
    }

    .landing section.tile section {
        display: none;
    }

    form > div {
        padding-left: 0;
    }

    form > div input, form > div textarea {
        width: 355px;
    }

    form label {
        display: none;
    }

    form select {
        left: 0;
        width: 565px;
        background-position: 525px -198px;
    }

    .resellers > section {
        width: auto;
        float: none;
    }

    .resellers form,
    .resellers .map {
        display: none;
    }

    .resellers section > ul > li > ul > li {
        width: 250px;
    }

    .contact form > div input,
    .contact form > div textarea {
        width: 530px;
    }

    .contact aside .contact-information:last-child {
        margin-left: 40px;
    }

    .contact aside .contact-information {
        width: 255px;
    }

    .contact aside,
    .contact form {
        margin: 0 auto;
        width: 550px;
        float: none;
    }

    form input[type="submit"] {
        width: 100%;
    }

    .contact .map {
        margin-top: 2em;
    }

    form > div.radio-group span {
        display: block;
    }

    form > div.radio-group input[type="radio"] {
        top: 12px;
    }

    form > div.radio-group label {
        display: block;
    }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */
@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " ("attr(href) ")";
    }

    abbr[title]:after {
        content: " ("attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}