* {
    margin:0;
    border:0;
    padding:0;
    box-sizing:border-box;
}
body {
    background-color:#000;
    background:url("../img/bg-pattern.png");
    background-image:url("../img/bg-photo.jpg");
    background-size:auto;
    background-repeat:repeat;
    font-family: 'Strait', sans-serif;
    color:#fff;
}
#wrap-page {
    margin:0 auto;
    max-width:1020px;
}
#banner {
    margin:10px 0 15px 0;
    width:100%;
}
#logo {
    display:block;
    width:200px;
    margin:0 auto;
}
#logo img {
    width:200px;
    height:auto;
}
#non-logo {
    width:100%;
    padding-top:10px;
}
#bannertext p {
    margin:0 0 0.75em 0;
    text-align:center;
}
#who {
    text-transform:uppercase;
}
#what {
    font-size:0.85em;
}
#slogan {
    text-transform:uppercase;
    font-family: 'Jura', sans-serif;
    font-weight:700;
}
#where {
    width:275px;
    margin:0 auto;
}
#where::after {
    display:block;
    content:"";
    clear:both;
}
#ukflag {
    display:inline-block;
    width:128px;
    height:auto;
    float:left;
}
#made-in-uk {
    display:inline-block;
    padding:5px 0 0 10px;
    width:147px;
    float:left;
    text-transform:uppercase;
    font-family: 'Jura', sans-serif;
    font-weight:700;
    color:#ff0000;
}
#nav-mobile {
    display:block;
    height:36px;
    background:url(../img/menumob-open.png) no-repeat 98% center;
    cursor:pointer;
    z-index:200000;
}
#nav-wrap {
    margin:10px 0 10px 0;
    padding:0 10px 0 10px;
    width:100%;
}
#nav-main {
    width:100%;
    border:solid 1px #fff;
}
#nav-main ul {
    list-style:none;
    height:0;
    overflow:hidden;
}
#nav-main ul.open {
    height:auto;
}
#nav-main ul li {
    display:block;
    line-height:50px;
}
#nav-main ul li a {
    display:block;
    padding:0 20px;
    text-decoration:none;
    font-family: 'Jura', sans-serif;
    font-weight:700;
    font-size:1.5em;
    color:#fff;
}
#nav-main ul li a:hover {
    font-family: 'Jura', sans-serif;
    font-weight:700;
    color:#000;
    background-color:#fff;
}
#main-home {
    padding:5px 10px 0 10px;
    width:100%;
}
#mod-box {
    margin-bottom:20px;
    border:2px solid #ff0000;
    padding:10px;
    width:100%;
    line-height:0;
}
#shroud-box {
    margin-bottom:20px;
    border:2px solid #fff;
    padding:0 10px 10px 10px;
    width:100%;
    line-height:0;
}
.productpic {
    display:block;
    width:100%;
}
.productpic img {
    width:100%;
}
.mod-txt {
    margin-right:5%;
    padding:1.3em;
    display:block;
    width:95%;
    text-align:left;
    font-family:Strait, sans-serif;
    font-weight:400;
    font-size:1.2em;
    color:#fff;
    line-height:1em;
}
.shroud-txt {
    margin-left:5%;
    padding:1.3em;
    display:block;
    width:95%;
    text-align:right;
    font-family:Strait, sans-serif;
    font-weight:400;
    font-size:1.2em;
    color:#fff;
    line-height:1em;
}
#main-mods {
    padding:5px 10px 0 10px;
    width:100%;
}
#specs {
    margin:0 0 40px 0;
    border:1px solid #fff;
    padding:10px;
    width:100%;
}
#styles {
    margin:0 0 40px 0;
    border:1px solid blue;
    padding:10px;
    width:100%;
}
#styles p {
    margin-bottom:20px;
}
#diamond-box {
    width:100%;
    position:relative;
}
#diamond-txt {
    width:70%;
    height:100%;
    position:absolute;
    right:0;
    bottom:0;
    display:table-cell;
    padding:4em 2em 0 0;
    vertical-align:middle;
}
#colours {
    margin:0 0 20px 0;
    border:1px solid #fff;
    padding:10px;
    width:100%;
}
#main-mods h2 {
    margin-bottom:20px;
}
.mod-pic {
    width:100%;
}
.mod-pic img {
    width:100%;
}
.mod-pic p {
    font-size:0.8em;
}
#desc-box {
    margin:20px 0 0 0;
    padding:0;
    width:100%;
}
#desc-box ul {
    padding-left:20px;
}
#desc-box li {
    margin:0 0 1em 0;
}
#desc-box li:last-child {
    margin:0;
}
.mod-info {
    margin:20px 0 0 0;
    width:100%;
}
table, thead, tbody, th, td, tr {
    display:block;
}
thead tr {
    position:absolute;
    top:-9999px;
    left:-9999px;
}
tr {
    border:1px solid #fff;
}
tr:nth-of-type(odd) {
    background:#ff0000;
}
tr:nth-of-type(even) {
    background:#00237d;
}
td {
    border-bottom:1px solid #fff;
    padding:6px;
    position:relative;
    padding-left:50%;
}
td:before {
    position:absolute;
    top:6px;
    left:6px;
    width:45%;
    padding-right:10px;
    white-space:nowrap;
}
td:nth-of-type(1):before { content:"Model:"; }
td:nth-of-type(2):before { content:"Length:"; }
td:nth-of-type(3):before { content:"Diameter:"; }
td:nth-of-type(4):before { content:"Weight:"; }
td:nth-of-type(5):before { content:"ft/lbs:"; }
#main-shrouds {
    padding:5px 10px 0 10px;
    width:100%;
}
.nb {
    width:100%;
    text-align:left;
    font-size:0.75em;
    font-style:italic;
}
.shrouds {
    display:flex;
    justify-content:space-between;
    flex-basis:240px;
    flex-wrap:wrap;
}
.shroud-manf {
    margin:0 0 20px 0;
    border:1px solid #fff;
    padding:15px;
    display:block;
    width:100%;
}
.shroud-manf img {
    margin:0 0 1em 0;
    width:100%;
}
.manf-name {
    width:100%;
    text-align:center;
}
.shroud-desc {
    padding:0 1em 1em 1em;
}
#main-shrouds p {
    margin:0 0 1em 0;
}
.txt-emph {
    font-size:0.75em;
    font-style:italic;
}
#main-conns {
    padding:5px 10px 0 10px;
    width:100%;
}
#main-conns h3 {
    text-transform:uppercase;
}
#main-conns p {
    margin:1em 0 0 0;
    font-family:'Source Sans Pro', sans-serif;
}
.conns-category {
    width:100%;
    border-top: 4px solid #fff;
    padding:1em 0 3em 0;
}
.conns-category::after {
    display:block;
    content:"";
    clear:both;
}
.conns-category:last-child {
    margin:0 0 1.25em 0;
    border-bottom: 4px solid #fff;
}
.conns-category h3 {
    text-transform:uppercase;
}
.conns-category p {
    margin:1em 0 0 0;
    font-family:'Source Sans Pro', sans-serif;
}
.conns-category img {
    width:100%;
}
.conns-category a {
    color:#add8e6;
}
.conns-category a:hover {
    color:#42c0fb;
}
.conns-banner {
    margin:0 0 20px 0;
    width:100%;
}
.conns-banner h2 {
    display:inline-block;
    line-height:1.5em;
}
.conns-banner p {
    margin:1em 0 0 10px;
    font-family:'Source Sans Pro', sans-serif;
}
.conns-banner img {
    width:auto;
    height:auto;
}
.wideimg img {
    width:100%;
}
.box-2cols {
    width:100%;
    margin:10px 0;
}
.box-left {
    margin:0 0 20px 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.box-right {
    margin:20px 0 20px 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.box-out-odd {
    margin:20px 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.box-x2-txtpic {
    padding:20px 20px 10px 20px;
    display:flex;
    flex-wrap:wrap;
}
.box-txt {
    margin:0 0 10px 0;
    padding:0px;
}
.box-pic {
    margin:10px 0 0 0;
    line-height:0;
}
.box-x2-fit {
    padding:10px 20px 20px 20px;
    line-height:0;
    width:100%;
}
.box-txtpic {
    padding:20px 20px 10px 20px;
    display:flex;
    flex-wrap:wrap;
}
.box-fit {
    padding:10px 20px 20px 20px;
    line-height:0;
    width:100%;
}
footer {
    position:relative;
    width:100%;
}
footer::after {
    display:block;
    content:"";
    clear:both;
} 
#contact {
    padding:20px;
    width:100%;
    float:none;
}
#channel {
    padding:20px;
    width:100%;
    float:none;
    font-family:Strait, sans-serif;
    text-align:left;
}
#ordering {
    padding:20px;
    width:100%;
    float:none;
}
.standout {
    margin-bottom:4px;
    font-family:Lato, sans-serif;
}
.info {
    font-family:Lato, sans-serif;
    font-weight:400;
    font-size:0.8em;
}
#tel {
    font-size:1.8em;
}
#copyright {
    margin-top:20px;
    border-top:1px solid #fff;
    padding:5px 0px 7px;
    width:100%;
    font-family:Lato, sans-serif;
    font-weight:300;
    font-size:0.75rem;
}
@media only screen and (min-width:342px) {
.wideimg img {
    width:auto;
}
@media screen and (min-width:355px) {
.mod-txt {
    margin-right:15%;
    width:85%;
    font-size:1.3em;
}
.shroud-txt {
    margin-left:15%;
    width:85%;
    font-size:1.3em;
}
}
@media screen and (min-width:432px) {
.mod-txt {
    margin-right:20%;
    width:80%;
    font-size:1.5em;
}
.shroud-txt {
    margin-left:20%;
    width:80%;
    font-size:1.5em;
}
}
@media screen and (min-width:443px) {
#specs {
    padding:20px;
}
#styles {
    padding:20px;
}
#colours {
    padding:20px;
}
.mod-pic p {
    font-size:1em;
}
table {
    display:table;
    width:100%;
    border-collapse:collapse;
}
thead {
    position:static !important;
    top:auto;
    left:auto;
    display:table-header-group;
}
tbody {
    display:table-row-group;
}
tr {
    position:static !important;
    top:auto;
    left:auto;
    display:table-row;
}
tr:nth-of-type(odd) {
    background:#ff0000;
}
tr:nth-of-type(even) {
    background:#00237d;
}
th {
    border:1px solid #fff;
    padding:6px;
    display:table-cell;
    text-align:left;
    font-weight:400;
    background:#000;
}
td {
    border:1px solid #fff;
    padding:6px;
    display:table-cell;
    text-align:left;
}
td:nth-of-type(1):before { content:""; }
td:nth-of-type(2):before { content:""; }
td:nth-of-type(3):before { content:""; }
td:nth-of-type(4):before { content:""; }
td:nth-of-type(5):before { content:""; }
}
@media screen and (min-width:449px) {
.mod-txt {
    padding:1.5em;
}
.shroud-txt {
    padding:1.5em;
}
}
@media screen and (min-width:466px) {
.mod-txt {
    font-size:1.6em;
    line-height:1.1em;
}
.shroud-txt {
    font-size:1.6em;
    line-height:1.1em;
}
}
@media screen and (min-width:510px) {
.shrouds {
    flex-basis:228px;
}
.shroud-manf {
    display:inline-block;
    width:49%;
}
}
@media screen and (min-width:530px) {
#contact {
    padding:20px;
    width:51%;
    float:left;
}
#channel {
    padding:20px;
    width:51%;
    float:left;
    font-family:Strait, sans-serif;
    text-align:left;
}
#ordering {
    position:absolute;
    top:0;
    left:calc(51%);
    padding:20px;
    width:49%;
}
#tel {
    font-size:2em;
}
#email {
    font-size:1.5em;
}
}
@media screen and (min-width:563px) {
.mod-txt {
    font-size:1.8em;
}
.shroud-txt {
    font-size:1.8em;
}
}
@media screen and (min-width:601px) {
.mod-txt {
    font-size:2em;
    line-height:1.2em;
}
.shroud-txt {
    font-size:2em;
    line-height:1.2em;
}
}
@media only screen and (min-width:640px) {
.conns-banner h2 {
    line-height:1.5em;
}
.box-2cols {
    width:100%;
    margin:10px 0;
}
.box-left {
    margin:0 0 20px 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.box-right {
    margin:20px 0 0 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.box-out-odd {
    margin:20px 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.box-x2-txtpic {
    padding:20px 20px 10px 20px;
    display:flex;
    flex-wrap:nowrap;
}
.box-txt {
    margin:0 10px 0 0;
    padding:0px;
    flex:1 1 0;
}
.box-pic {
    margin:0 0 0 10px;
    line-height:0;
    flex:1 1 0;
}
.box-x2-fit {
    padding:10px 20px 20px 20px;
    line-height:0;
    width:100%;
}
.box-txtpic {
    padding:20px 20px 10px 20px;
    display:flex;
    flex-wrap:nowrap;
}
.box-fit {
    padding:10px 20px 20px 20px;
    line-height:0;
    width:100%;
}
}
@media screen and (min-width:669px) {
#mod-box {
    display:flex;
}
#shroud-box {
    padding:10px;
    display:flex;
}
.productpic {
    display:inline-block;
    width:50%;
}
.mod-txt {
    margin:0;
    padding:1.5em;
    display:inline-block;
    width:50%;
    font-size:1.5em;
    line-height:1.1em;
}
.shroud-txt {
    margin:0;
    padding:1.5em;
    display:inline-block;
    width:50%;
    font-size:1.5em;
    line-height:1.1em;
}
}
@media screen and (min-width:709px) {
.mod-txt {
    font-size:1.6em;
}
.shroud-txt {
    font-size:1.6em;
}
}
@media screen and (min-width:711px) {
#nav-mobile {
    display:none;
}
#nav-wrap {
    margin:10px 0 10px 0;
    padding:0 10px 0 10px;
    width:100%;
    display:flex;
}
#nav-main {
    width:100%;
    min-height:50px;
    border:solid 1px #fff;
}
#nav-main ul {
    list-style:none;
    height:auto;
    display:flex;
}
#nav-main ul li {
    flex:1 1 0;
    line-height:50px;
}
#nav-main ul li a {
    text-decoration:none;
    text-align:center;
    font-family:'Jura', sans-serif;
    font-weight:700;
    font-size:1.5em;
    color:#fff;
}
#nav-main ul li a:hover,
#nav-main ul li a.active {
    color:#000;
    background-color:#fff;
}
.conns-banner h2 {
    line-height:0;
}
}
@media screen and (min-width:790px) {
.mod-txt {
    font-size:1.8em;
}
.shroud-txt {
    font-size:1.8em;
}
}
@media screen and (min-width:871px) {
.mod-txt {
    font-size:2em;
    line-height:1.2em;
}
.shroud-txt {
    font-size:2em;
    line-height:1.2em;
}
}
@media screen and (min-width:960px) {
.shrouds {
    flex-basis:0;
    flex-wrap:none;
}
.shroud-manf {
    padding:0 0 15px 0;
    width:24%;
}
.shroud-manf img {
    margin:0 0 1em 0;
}
}
@media screen and (min-width:1020px) {
#banner {
    margin:10px 0 10px 0;
    width:100%;
}
#banner::after {
    display:block;
    content:"";
    clear:both;
}
#logo {
    display:inline-block;
    margin:0;
    width:auto;
    float:left;
}
#logo img {
    width:255px;
    height:auto;
}
#non-logo {
    display:inline-block;
    width:calc(100% - 255px);
    float:right;
}
#bannertext {
    width:100%;
    font-size:1.5em;
}
#bannertext p {
    margin:0 0 0.75em 0;
    text-align:center;
}
#who {
    text-transform:uppercase;
}
#what {
    font-size:0.85em;
}
#slogan {
    text-transform:uppercase;
    font-weight:700;
}
#where {
    width:90%;
    margin:0 auto 10px;
}
#ukflag {
    display:table-cell;
    width:128px;
    height:auto;
    line-height:0;
    float:none;
}
#made-in-uk {
    height:64px;
    width:auto;
    display:table-cell;
    vertical-align:middle;
    float:none;
    text-transform:uppercase;
    font-family: 'Jura', sans-serif;
    font-weight:700;
    color:#ff0000;
}
.conns-banner h2 {
    line-height:0;
}
.box-2cols {
    width:100%;
    margin:10px 0;
    display:flex;
    flex:nowrap;
}
.box-left {
    margin:4px 10px 4px 0;
    border:1px solid #fff;
    display:flex;
    flex-wrap:wrap;
}
.box-right {
    margin:4px 0 4px 10px;
    border:1px solid #fff;
    display:flex;
    flex-wrap:wrap;
}
.box-out-odd {
    margin:15px 0;
    border:1px solid #fff;
    width:100%;
    display:flex;
    flex-wrap:nowrap;
}
.box-x2-txtpic {
    padding:20px 20px 10px 20px;
    display:flex;
    flex-wrap:nowrap;
}
.box-txt {
    margin:0 10px 0 0;
    padding:0;
    flex:1 1 0;
}
.box-pic {
    margin:0 0 0 10px;
    line-height:0;
    flex:1 1 0;
}
.box-x2-fit {
    padding:10px 20px 20px 20px;
    line-height:0;
    width:100%;
}
.box-txtpic {
    padding:20px 10px 20px 20px;
    display:flex;
    flex-wrap:nowrap;
    flex:1 1 0;
}
.box-fit {
    padding:20px 20px 20px 10px;
    line-height:0;
    width:100%;
    flex:1 1 0;
}
#contact {
    padding:20px;
    width:30%;
    float:left;
}
#channel {
    padding:20px;
    width:40%;
    float:left;
    font-family:Strait, sans-serif;
    text-align:center;
}
#ordering {
    position:initial;
    padding:20px;
    width:30%;
    float:right;
}
#tel {
    font-size:2em;
}
#email {
    font-size:1.5em;
}
}
