@import "reset.css";
@import "social/social-icons.css";
@import "social/animation.css";
@import "social/buttons.css";
@import url('https://fonts.googleapis.com/css?family=Lato:100,300,300i,400,400i,700,900|Poppins:100,200,300,300i,400,400i,500,600,700,800,900|Roboto:100,300,400,500,700,900');

.hide {
    display: none;
}

.fixed {
    position: fixed;
    top: 0;
}

.break,
.move-top {
    margin-top: 20px !important;
}

.break-large,
.move-top-large {
    margin-top: 40px !important;
}

.move-bottom {
    margin-bottom: 20px !important;
}

.push-top {
    margin-top: 20px !important;
}

.push-bottom {
    margin-bottom: 20px !important;
}

.pad-top {
    padding-top: 20px !important;
}

.pad-bottom {
    padding-bottom: 20px !important;
}

.padless {
    padding: 0 !important;
}

.marginless {
    margin: 0 !important;
}

.bold {
    font-weight: 700 !important;
}

.italic {
    font-style: italic !important;
}

.underline,
.underlined {
    text-decoration: underline !important;
}

.line-through {
    text-decoration: line-through !important;
}

.left {
    text-align: left !important;
}

.center {
    text-align: center !important;
}

.vertical-center {
    vertical-align: middle !important;
}

.right {
    text-align: right !important;
}

.justified,
.justify {
    text-align: justify !important;
}

.gigantic {
    font-size: 3em !important;
}

.huge {
    font-size: 2.2em !important;
}

.large {
    font-size: 1.7em !important;
}

.medium {
    font-size: 1.2em !important;
}

.normal {
    font-size: 1em !important;
}

.small {
    font-size: 0.8em !important;
}

.image-scale-hack {
    transform: rotate(0.0001deg);
}

.social .sbtnf,
.social .sbtnf:hover {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
}

.social .sbtnf {
    display: block;
    float: left;
    width: 32px;
    height: 32px;
    margin: 0 10px 10px 0;
    line-height: 32px;
    color: #fff;
    text-align: center;
    filter: alpha(opacity=75);
    border-radius: 2px;
    opacity: 0.75;
}

.social .sbtnf:hover {
    filter: alpha(opacity=100);
    opacity: 1;
}

#loading-ajax,
#loading-ajax-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#loading-ajax {
    z-index: 9997;
    display: none;
}

#loading-ajax-bg {
    z-index: 9998;
    background: #fff;
    filter: alpha(opacity=60);
    opacity: 0.6;
}

#loading-ajax-image {
    position: fixed;
    top: 20%;
    left: 50%;
    z-index: 9999;
    display: block;
    width: 160px;
    padding: 20px;
    margin-left: -100px;
    background: #fff;
    border-radius: 8px;
    -webkit-box-shadow: 0 0 3px 2px #aaa;
    -moz-box-shadow: 0 0 3px 2px #aaa;
    box-shadow: 0 0 3px 2px #aaa;
}

#loading-ajax-image img {
    display: block;
    padding: 0;
    margin: 0;
    border: 0;
}

[class*="columns-"] [class*="column-"] .price-grid .name {
    padding: 15px 0 !important;
    font-size: 1.2em;
    text-align: center;
}

[class*="columns-"] [class*="column-"] .price-grid .price {
    padding: 30px 0 !important;
    font-size: 3.5em;
    text-align: center;
}

[class*="columns-"] [class*="column-"] .price-grid .desc {
    padding: 15px 0 !important;
    text-align: center;
}

[class*="columns-"] [class*="column-"] .price-grid .info {
    padding: 0.938em !important;
}

.image-gallery {
    margin-right: -10px;
    margin-left: -10px;
}

.image-gallery .thumb {
    box-sizing: border-box;
    float: left;
    margin-top: 20px;
}

.image-gallery .thumb img {
    display: block;
    max-width: 100%;
    cursor: pointer;
}

.image-gallery.images-2 .thumb {
    width: 50%;
}

.image-gallery.images-3 .thumb {
    width: 33.3333%;
    padding: 0 10px;
}

.image-gallery.images-4 .thumb {
    width: 25%;
}

.image-gallery.images-5 .thumb {
    width: 20%;
}

#gallery-caption,
#gallery-controls,
#gallery-lightbox {
    display: none;
}

#gallery-lightbox {
    position: relative;
}

#gallery-image img {
    display: block;
    margin: 0 auto;
}

#gallery-caption {
    padding-top: 12px;
    overflow: hidden;
    font-size: 0.9em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#gallery-controls {
    position: absolute;
    bottom: -47px;
    left: 0;
    z-index: 9999;
}

#gallery-back,
#gallery-next {
    float: left;
    width: 32px;
    height: 32px;
    margin: 0 10px 0 0;
    line-height: 32px;
    text-indent: -9999px;
    cursor: pointer;
}

#gallery-back {
    background: url('images/back.gif') center center no-repeat;
}

#gallery-next {
    background: url('images/next.gif') center center no-repeat;
}

.form input[type="file"],
.form input[type="password"],
.form input[type="text"],
.form select,
.form textarea {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 0.5em;
    margin: 0 0 0.938em;
    font-family: inherit;
    background: #fafafa;
    border: 1px solid #ccc;
    -webkit-box-shadow: inset 0 1px 3px #ddd;
    -moz-box-shadow: inset 0 1px 3px #ddd;
    box-shadow: inset 0 1px 3px #ddd;
}

.form .fieldset {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    overflow: hidden;
    border: 1px solid #ccc;
}

.form .legend {
    margin: 0 0 15px;
    font-weight: 700;
}

.form input[type="file"]:focus,
.form input[type="password"]:focus,
.form input[type="text"]:focus,
.form select:focus,
.form textarea:focus {
    border: 1px solid #999;
    outline: 0;
}

.form input[type="file"],
.form input[type="password"],
.form input[type="text"],
.wsc-select {
    height: 2.5em;
}

.form textarea {
    min-height: 5em;
    overflow: auto;
    vertical-align: top;
}

.form select {
    -webkit-appearance: none;
    height: 2.5em;
}

.wsc-select {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0 0 0.938em;
    font-family: inherit;
    background: #fafafa;
    border: 1px solid #ccc;
    -webkit-box-shadow: inset 0 1px 3px #ddd;
    -moz-box-shadow: inset 0 1px 3px #ddd;
    box-shadow: inset 0 1px 3px #ddd;
}

.wsc-select select {
    position: absolute;
    z-index: 992;
    height: 2.5em;
    padding: 0;
    margin: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -khtml-opacity: 0;
    -moz-opacity: 0;
    opacity: 0;
}

.wsc-select .wsc-text {
    position: absolute;
    z-index: 991;
    box-sizing: border-box;
    width: 100%;
    padding: 0 0 0 0.5em;
    overflow: hidden;
    line-height: 2.5em;
    white-space: nowrap;
    border-right: 2em solid transparent;
}

.wsc-select .wsc-arrow {
    position: absolute;
    top: 1em;
    right: 0.5em;
    width: 0;
    height: 0;
    border-color: #aaa transparent transparent;
    border-style: solid;
    border-width: 0.5em;
}

.wsc-select.wsc-focus {
    border: 1px solid #999;
}

.wsc-select.wsc-focus .wsc-arrow {
    border-color: #555 transparent transparent;
}

.rounded .form .wsc-file,
.rounded .form .wsc-select,
.rounded .form input[type="file"],
.rounded .form input[type="password"],
.rounded .form input[type="text"],
.rounded .form select,
.rounded .form textarea {
    border-radius: 6px;
}

.form .label.required {
    font-weight: 700;
}

.form .fieldset .legend {
    padding-bottom: 15px;
    font-size: 1.2em;
    color: #444;
    border-bottom: 1px solid #ccc;
}

.image-rounded .content img,
.rounded .form .fieldset {
    border-radius: 6px;
}

input.placeholder {
    color: #ccc !important;
}

.button {
    box-sizing: border-box;
    display: inline-block;
    padding: 0.625em;
    margin: 0 0.625em 0 0;
    font-family: inherit;
    text-decoration: none !important;
    cursor: pointer;
    -webkit-appearance: none;
    background-color: #fff;
    border: 1px solid #ccc;
}

.button::-moz-focus-inner {
    border: 0;
}

.rounded .button {
    border-radius: 4px;
}

#newsletter button,
#newsletter input[type="text"],
#slider #controls li,
.alert {
    box-sizing: border-box;
    display: block;
}

.alert {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 0.625em 0.938em;
    margin: 0 0 20px;
    border: 1px solid #ccc;
}

.alert.notice {
    color: #3c6496;
    background-color: #e1f0ff;
    border-color: #b4dcff;
}

.alert.success {
    color: #146414;
    background-color: #d7f5d7;
    border-color: #aaf0a5;
}

.alert.caution {
    color: #a0a000;
    background-color: #fafac8;
    border-color: #f0f0a5;
}

.alert.failure {
    color: #b44646;
    background-color: #ffe6e6;
    border-color: #ffc3c3;
}

.alert.success a {
    color: #146414 !important;
}

.alert.failure a {
    color: #b44646 !important;
}

.alert.rounded,
.rounded .alert {
    border-radius: 6px;
}

.alert.square,
.alert.squared,
.square .alert,
.squared .alert {
    border-radius: 0;
}

.alert.fluffy,
.alert.padded,
.alert.puffy {
    padding: 1.5em 2em;
}

#slider,
#title,
.alert {
    overflow: hidden;
}

#slider #slides {
    width: 100%;
}

#slider .slide {
    position: relative;
    display: none;
}

#title {
    position: relative;
}

#slider .slide img {
    display: block;
    max-width: 100%;
    margin: auto;
}

#title img {
    display: block;
    margin: 0 auto;
    visibility: hidden;
}

#slider .slide .text,
#title .text {
    position: absolute;
    top: 0;
    z-index: 9;
    box-sizing: border-box;
    max-width: 960px;
}

#slider .inside,
#title .inside {
    float: left;
    width: auto;
    text-shadow: none !important;
}

#slider .inside.left,
#title .inside.left {
    float: left;
}

#slider .inside.center,
#slider .inside.force-center,
#title .inside.center,
#title .inside.force-center {
    position: absolute;
}

#slider .inside.right,
#title .inside.right {
    float: right;
}

#slider .inside.overlay,
#title .inside.overlay {
    padding: 20px;
    background: url('../images/transparent.png');
}

#slider .large,
#slider .medium,
#slider .small,
#title .large,
#title .medium,
#title .small,
p {
    line-height: 1.5;
}

#slider #controls {
    margin: 0 auto;
    overflow: hidden;
    background-color: #fff;
}

#slider #controls ul {
    padding: 0;
    margin: 15px 0 0;
    line-height: 0;
    text-align: center;
    list-style: none;
}

#slider #controls li {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0 2px;
    line-height: 16px;
    text-indent: -9999px;
    cursor: pointer;
    background-color: #eee;
    border: 3px solid #cacaca;
    border-radius: 50%;
}

#slider #controls li.active {
    background-color: #ccc;
    border: 3px solid #aaa;
}

#container,
#isolated {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    font-size: 0.9em;
}

#isolated {
    padding: 20px;
}

#isolated .alert {
    margin: 0;
}

#logo {
    display: flex;
    align-items: center;
}

#logo img {
    display: block;
    border: 0;
}

#back-to-main {
    margin-left: auto;
}

#back-to-main a {
    display: block;
    padding: 15px;
    color: #fff;
    text-decoration: none;
    background-color: #1997a6;
    border-radius: 4px;
}

#back-to-main a:hover {
    background-color: #0a8090;
}

section.content {
    padding-top: 0;
    padding-bottom: 20px;
    overflow: hidden;
}

section.content.spacious {
    padding-top: 20px;
    padding-bottom: 40px;
}

#bottom,
#bottom .inside,
#footer,
#footer .inside,
section.content .inside {
    overflow: hidden;
}

#nav ul {
    list-style: none;
}

p {
    margin: 20px 0 0;
}

.arrow {
    background-image: url('images/down-arrow.png');
    background-repeat: no-repeat;
    background-position: top center;
}

#logo img,
#slogan p {
    padding: 0;
    margin: 0;
}

.content .h1,
.content .h2,
.content .h3,
.content .h4,
.content h1,
.content h2,
.content h3,
.content h4 {
    margin: 30px 0 0;
    line-height: normal;
}

.content .h1.underline,
.content .h1.underlined,
.content .h2.underline,
.content .h2.underlined,
.content .h3.underline,
.content .h3.underlined,
.content .h4.underline,
.content .h4.underlined,
.content h1.underline,
.content h1.underlined,
.content h2.underline,
.content h2.underlined,
.content h3.underline,
.content h3.underlined,
.content h4.underline,
.content h4.underlined {
    padding: 0 0 18px;
    text-decoration: none !important;
    border-bottom: 1px solid #ccc;
}

.content .h1.noline,
.content .h2.noline,
.content .h3.noline,
.content .h4.noline,
.content h1.noline,
.content h2.noline,
.content h3.noline,
.content h4.noline {
    text-decoration: none !important;
    border-bottom: 0;
}

.content .h1,
.content .h2,
.content h1,
.content h2 {
    font-size: 2em;
    font-weight: 700;
    color: #555;
}

.content .h2,
.content h2 {
    font-size: 1.6em;
}

.content .h3,
.content .h4,
.content h3,
.content h4 {
    font-size: 1.3em;
    font-weight: 700;
    color: #555;
}

.content .h4,
.content h4 {
    font-size: 1.2em;
}

.content.background {
    position: relative;
    z-index: 0;
    background-repeat: no-repeat;
    background-position: 50% 40%;
    background-size: cover;
}

.content.background .overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: 100%;
}

.image-center iframe,
.image-center img,
.image-left iframe,
.image-left img,
.image-right iframe,
.image-right img {
    box-sizing: border-box;
    display: block;
    padding: 0;
    margin: 20px auto;
    border: 0;
}

#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6 {
    display: block;
    float: left;
    width: 100%;
    padding: 0 0 15px;
    margin: 0 0 15px;
    font-weight: 400;
    color: #ccc;
    border-bottom: 1px solid #656565;
}

#footer h5,
#footer h6 {
    font-size: 1em;
}

#newsletter input[type="text"] {
    width: 100%;
    height: 32px;
    padding: 0 6px;
    line-height: 32px;
    -webkit-box-shadow: 0;
    -moz-box-shadow: 0;
    box-shadow: 0;
}

#newsletter button {
    width: 5em;
    height: 32px;
    margin: 0;
    text-align: center;
    cursor: pointer;
    background-color: #333;
}

#header #nav li.active ul li a {
    background-color: transparent;
}

#social .inside {
    max-width: 960px;
    margin: 5px auto 0;
}

.columns-2,
.columns-3,
.columns-4 {
    display: table;
    width: 100%;
    overflow: hidden;
    table-layout: fixed;
}

.columns-2 [class*="column-"],
.columns-3 [class*="column-"],
.columns-4 [class*="column-"] {
    display: table-cell;
    line-height: 1.5;
    vertical-align: top;
}

.columns-2 img,
.columns-3 img,
.columns-4 img {
    display: block;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    border: 0;
}

.columns-2 .column-1,
.columns-2 .column-2 {
    width: 50%;
}

.columns-2.padded .column-1 div {
    padding: 0 8px 0 0;
}

.columns-2.padded .column-2 div {
    padding: 0 0 0 8px;
}

.columns-2.padded .column-1 div div,
.columns-2.padded .column-2 div div,
.columns-3.padded .column-1 div div,
.columns-3.padded .column-2 div div,
.columns-3.padded .column-3 div div,
.columns-4.padded .column-1 div div,
.columns-4.padded .column-2 div div,
.columns-4.padded .column-3 div div,
.columns-4.padded .column-4 div div {
    padding: 0;
}

.columns-3 .column-1,
.columns-3 .column-2,
.columns-3 .column-3 {
    width: 33.3333%;
}

.columns-3.padded .column-1 div {
    padding: 0 16px 0 0;
}

.columns-3.padded .column-2 div {
    padding: 0 8px;
}

.columns-3.padded .column-3 div {
    padding: 0 0 0 16px;
}

.columns-4 .column-1,
.columns-4 .column-2,
.columns-4 .column-3,
.columns-4 .column-4 {
    width: 25%;
}

.columns-4.padded .column-1 div {
    padding: 0 16px 0 0;
}

.columns-4.padded .column-2 div,
.columns-4.padded .column-3 div {
    padding: 0 8px;
}

.columns-4.padded .column-4 div {
    padding: 0 0 0 16px;
}

.columns-2 [class*="column-"] div.row-icon,
.columns-3 [class*="column-"] div.row-icon,
.columns-4 [class*="column-"] div.row-icon {
    float: left;
    max-width: 25%;
}

.columns-2 [class*="column-"] div.row-text,
.columns-3 [class*="column-"] div.row-text,
.columns-4 [class*="column-"] div.row-text {
    padding-left: 20px !important;
    margin-top: -0.3em;
    margin-left: 25%;
    line-height: 1.5;
}

body {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: #222;
}

a {
    color: #1450c8;
}

#bottom a,
a:hover {
    text-decoration: none;
}

#header {
    background-color: #f8f8f8;
}

#header #nav {
    background-color: #5c5c5c;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}

#header #nav ul ul {
    background-color: #000;
}

#header #nav a,
.contrast.alternate .h2,
.contrast.alternate .h3,
.contrast.alternate .h4,
.contrast.alternate .h5,
.contrast.alternate .h6,
.contrast.alternate h2,
.contrast.alternate h3,
.contrast.alternate h4,
.contrast.alternate h5,
.contrast.alternate h6 {
    color: #fff;
}

#header #nav li.active a.hover {
    background-color: #1997a6;
}

#isolated,
.content {
    color: #333;
    background-color: #fff;
}

.contrast {
    color: #000;
    background-color: #eee;
}

.contrast.alternate {
    color: #fff;
    background-color: #444;
}

.contrast .h2,
.contrast .h3,
.contrast .h4,
.contrast .h5,
.contrast .h6,
.contrast h2,
.contrast h3,
.contrast h4,
.contrast h5,
.contrast h6,
.image-center span,
.image-left span,
.image-right span {
    color: #555;
}

#slider .inside *,
#title .inside * {
    color: #000;
    text-shadow: 3px 3px 2px #464646;
}

#slider .inside.overlay *,
#title .inside.overlay * {
    color: #fff;
    text-shadow: 3px 3px 2px #000;
}

#slogan {
    font-size: 4.25em;
    font-style: italic;
    font-weight: 300;
    line-height: 1.8;
    color: #777;
    text-align: center;
    vertical-align: middle;
}

#footer {
    padding-top: 20px;
    color: #fff;
    background-color: #444;
    border-top: 1px solid #000;
}

#footer ul {
    float: left;
    padding: 0;
    margin: 0;
    overflow: hidden;
    font-size: 0.9em;
    list-style: none;
}

#footer ul li {
    float: left;
    width: 100%;
    padding: 0;
    margin: 2px 0;
    line-height: 22px;
}

#footer ul a {
    color: #fff;
    text-decoration: none;
}

#footer ul a:hover {
    text-decoration: underline;
}

#footer h1 {
    font-size: 2em;
}

#footer h2 {
    font-size: 1.6em;
}

#footer h3 {
    font-size: 1.4em;
}

#footer h4 {
    font-size: 1.3em;
}

#newsletter button,
#newsletter input[type="text"] {
    color: #fff;
    background-color: #777;
    border: 1px solid #222;
}

#bottom {
    color: #fff;
    background-color: #0f3a78;
    border-top: 1px solid #000;
}

#bottom a:hover {
    color: #ddd;
}

.price-grid .desc,
.price-grid .name,
.price-grid .price {
    background-color: #ccc;
    border-bottom: 1px solid #fff;
}

.price-grid .name {
    font-size: 1.3em !important;
}

.price-grid .price {
    font-size: 4.5em !important;
}

.price-grid .desc {
    font-size: 1.2em !important;
}

.price-grid .info {
    background-color: #eee;
    border-bottom: 1px solid #ccc;
}

#contact-form {
    margin-bottom: 20px;
}

.button:focus,
.button:hover {
    background-color: #eee;
    border: 1px solid #bbb;
}

.button:active {
    background-color: #eee;
    border-color: #aaa;
}

.button.fixate {
    color: #fff;
    background-color: #378cd2;
    border-color: #226491;
}

.button.fixate:focus,
.button.fixate:hover {
    background-color: #3282be;
}

.button.link {
    color: #333;
    background-color: #f2f2f2;
    border-color: #ccc;
}

.button.link:focus,
.button.link:hover {
    background-color: #eee;
}

.button.success {
    color: #fff;
    background-color: #3cb950;
    border-color: #2d963c;
}

.button.success:focus,
.button.success:hover {
    background-color: #37aa4a;
}

.button.caution {
    color: #fff;
    background-color: #f5af5f;
    border-color: #e6a555;
}

.button.caution:focus,
.button.caution:hover {
    background-color: #eba055;
    border-color: #d28c46;
}

.button.failure {
    color: #fff;
    background-color: #eb5a5a;
    border-color: #c34646;
}

.button.failure:focus,
.button.failure:hover {
    background-color: #cd4646;
    border-color: #962323;
}

.cart-buttons {
    display: flex;
}

.cart-buttons > span {
    display: block;
    width: 50%;
}

.cart-buttons > span .cs-widget {
    width: 100%;
}

.cart-buttons > span .cs-button-basic {
    width: 95%;
    text-align: center;
}

.cart-buttons > span[data-action="view"] .cs-button-basic {
    float: right;
}

.cart-buttons .cs .cs-cart-mini-details {
    display: block;
    float: none;
}

.scroll-top {
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 999;
    display: none;
    width: 40px;
    height: 40px;
    font-size: 22px;
    line-height: 40px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    background-color: #1997a6;
    border-radius: 3px;
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

.scroll-top:hover {
    line-height: 33px;
}

/* --- RESPONSIVE STYLES -------------------------------------------------------------------- */

@media (min-width: 1025px) {
    body #header #nav li li,
    body #header #nav ul li {
        padding: 0;
    }

    body #bottom .inside,
    body #footer .inside,
    body .content .form,
    body .content .inside {
        width: 960px;
        margin: 0 auto;
    }

    body #header {
        overflow: auto;
    }

    body #header #logo {
        width: 960px;
        padding: 0;
        margin: 20px auto;
    }

    body #header.flat #logo {
        margin: 0 auto;
    }

    body #header #nav #menu {
        float: none;
        width: 960px;
        margin: 0 auto;
    }

    body .content .h1,
    body .content .h2,
    body .content .h3,
    body .content .h4,
    body .content h1,
    body .content h2,
    body .content h3,
    body .content h4 {
        width: 960px;
        margin-right: auto;
        margin-left: auto;
    }

    body #bottom a,
    body #footer a {
        color: #eee;
        text-decoration: none;
    }

    body #copyright {
        margin-top: 5px;
        font-size: 0.8em;
        text-align: left;
    }

    #slider .slide .text,
    #title .text {
        width: 960px;
    }

    #logo {
        padding: 20px;
    }

    #logo img {
        max-width: 100%;
        max-height: 200px;
    }

    #logo img.center {
        margin: 0 auto;
    }

    #header #nav {
        box-sizing: border-box;
        overflow: hidden;
    }

    #header #nav.fixed {
        width: 100%;
    }

    #header #nav.fixed ul {
        width: 960px;
        margin: auto;
    }

    #header #menu {
        float: left;
        width: 100%;
    }

    #header #nav ul ul {
        display: none;
        min-width: 200px;
    }

    #header #nav ul li {
        float: left;
        margin: 0;
    }

    #header #nav a {
        display: block;
        padding: 0 20px;
        line-height: 48px;
        text-decoration: none;
    }

    #header #nav ul li.active ul {
        position: absolute;
        top: auto;
        left: auto;
        z-index: 99;
        display: block;
        margin-left: 0;
        overflow: visible;
    }

    #header #nav ul ul li {
        float: none;
        border: 0 !important;
    }

    #header #nav ul ul li a {
        border: 0 !important;
    }

    #header #mobile-menu {
        display: none;
    }

    #header #nav.rounded ul ul,
    #header.rounded #nav ul ul,
    body.rounded #header #nav ul ul {
        border-radius: 0 0 6px 6px;
    }

    #header #nav.rounded li ul li.active:last-child,
    #header #nav.rounded li ul li.active:last-child a,
    #header.rounded #nav li ul li.active:last-child,
    #header.rounded #nav li ul li.active:last-child a,
    body.rounded #header #nav li ul li.active:last-child,
    body.rounded #header #nav li ul li.active:last-child a {
        border-radius: 0 0 6px 6px;
    }

    .content .inside {
        font-size: 1em;
    }

    #newsletter {
        position: relative;
        float: left;
        width: 100%;
        padding: 0;
        overflow: hidden;
    }

    #newsletter input[type="text"] {
        padding-right: 5.3em;
    }

    #newsletter button {
        position: absolute;
        top: 0;
        right: 0;
    }

    .rounded #newsletter input[type="text"] {
        border-radius: 6px;
    }

    .rounded #newsletter button {
        border-radius: 0 6px 6px 0;
    }

    #bottom {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    #footer .columns-2,
    #footer .columns-3,
    #footer .columns-4 {
        margin: 0 0 20px;
    }

    .image-left {
        float: left;
        padding: 0 20px 0 0;
    }

    .image-center {
        width: 100%;
        padding: 0;
        margin: 0 auto;
    }

    .image-right {
        float: right;
        padding: 0 0 0 20px;
    }

    .image-center span,
    .image-left span,
    .image-right span {
        display: block;
        margin: -10px 0 5px;
        font-size: 0.8em;
        font-style: italic;
    }

    .image-center span {
        text-align: center;
    }

    #gallery-image img {
        max-width: 800px;
        max-height: 600px;
    }

    #gallery-caption {
        max-width: 800px;
    }

    .form .fieldset {
        padding: 20px 20px 10px;
        overflow: hidden;
        background-color: #eee;
    }

    .contrast .form .fieldset {
        padding: 20px 0 0;
        background-color: transparent;
        border: 0;
    }

    .form .actions {
        margin-top: 20px;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .price-grid .info {
        font-size: 0.85em;
    }

    #gallery-image img {
        max-width: 640px;
        max-height: 480px;
    }

    #gallery-caption {
        max-width: 640px;
    }

    .form .fieldset {
        padding: 20px;
        background-color: #eee;
    }

    .contrast .form .fieldset {
        background-color: transparent;
        border: 0;
    }

    .form .actions {
        padding: 20px 0;
        margin-bottom: -18px;
    }

    #slider .slide .text,
    #title .text {
        width: 100%;
        padding: 0 20px;
    }

    #slider .large,
    #title .large {
        font-size: 1.7em;
    }

    #slider .medium,
    #title .medium {
        font-size: 1.3em;
    }

    #slider .small,
    #title .small {
        font-size: 1em;
    }

    #logo {
        padding: 20px;
    }

    #logo img {
        max-width: 100%;
        max-height: 120px;
    }

    #header #nav.fixed {
        width: 100%;
    }

    #header #nav ul {
        margin: 0;
        overflow: hidden;
        list-style: none;
    }

    #header #nav ul ul {
        display: none;
        float: left;
        min-width: 150px;
        margin: 0;
    }

    #header #nav ul li {
        float: left;
        padding: 0;
        margin: 0;
    }

    #header #nav ul ul li,
    #header #nav ul ul li a {
        border: 0 !important;
    }

    #header #nav a {
        display: block;
        padding: 0 15px;
        line-height: 48px;
        text-decoration: none;
    }

    #header #nav ul li.active ul {
        position: absolute;
        top: auto;
        left: auto;
        z-index: 99;
        display: block;
        overflow: visible;
    }

    #header #nav ul ul li {
        float: none;
        padding: 0;
    }

    #nav #menu li:first-child {
        border: 0 !important;
    }

    #nav #menu li:first-child a {
        padding: 0 15px 0 20px;
        border-left: 0 !important;
    }

    #nav #menu ul a {
        padding: 0 15px !important;
    }

    #header #mobile-menu {
        display: none;
    }

    #header #nav.rounded ul ul,
    #header.rounded #nav ul ul,
    body.rounded #header #nav ul ul {
        border-radius: 0 0 6px 6px;
    }

    #header #nav.rounded li ul li.active:last-child,
    #header #nav.rounded li ul li.active:last-child a,
    #header.rounded #nav li ul li.active:last-child,
    #header.rounded #nav li ul li.active:last-child a,
    body.rounded #header #nav li ul li.active:last-child,
    body.rounded #header #nav li ul li.active:last-child a {
        border-radius: 0 0 6px 6px;
    }

    #footer,
    .content .inside {
        padding: 0 20px;
        font-size: 0.9em;
    }

    #footer {
        padding: 20px;
        font-size: 0.8em;
    }

    #newsletter {
        position: relative;
        float: left;
        width: 100%;
        padding: 0;
        overflow: hidden;
    }

    #newsletter input[type="text"] {
        padding-right: 5.3em;
    }

    #newsletter button {
        position: absolute;
        top: 0;
        right: 0;
    }

    .rounded #newsletter input[type="text"] {
        border-radius: 6px;
    }

    .rounded #newsletter button {
        border-radius: 0 6px 6px 0;
    }

    #bottom {
        padding: 20px;
        font-size: 0.7em;
        line-height: 1.5;
    }

    #copyright {
        display: none;
    }

    #footer a {
        text-decoration: none;
    }

    body #end {
        float: right;
        margin: 15px 15px 0 10px;
    }

    #bottom a,
    #footer a {
        color: #eee;
    }

    #footer ul {
        font-size: 1em;
    }

    .image-left {
        float: left;
        padding: 0 20px 0 0;
    }

    .image-center {
        width: 100%;
        padding: 0;
        margin: 0 auto;
    }

    .image-right {
        float: right;
        padding: 0 0 0 20px;
    }

    .image-center span,
    .image-left span,
    .image-right span {
        display: block;
        margin: -10px 0 5px;
        font-size: 0.8em;
        font-style: italic;
    }

    .image-center span {
        text-align: center;
    }

    #social .sbtnf,
    .social .sbtnf {
        width: 30px;
        height: 30px;
        filter: alpha(opacity=100);
        opacity: 1;
    }
}

@media (min-width: 768px) {
    .form .fieldset .legend {
        padding-bottom: 15px;
        font-size: 1.2em;
        color: #444;
        border-bottom: 1px solid #ccc;
    }

    .form .row {
        overflow: hidden;
    }

    .form .label {
        float: left;
        width: 20%;
        line-height: 2.5em;
    }

    .form .field {
        float: left;
        width: 30%;
    }

    #captcha-refresh {
        float: left;
        width: 100%;
        font-size: 12px;
        line-height: normal;
    }

    #captcha-image {
        box-sizing: border-box;
        float: left;
        width: 100%;
        margin: 0 0 0.938em;
        border: 1px solid #ccc;
    }

    .rounded #captcha-image {
        border-radius: 6px;
    }
}

@media (max-width: 767px) {
    #gallery-image img {
        max-width: 320px;
        max-height: 240px;
    }

    #gallery-caption {
        max-width: 320px;
    }

    .form .fieldset {
        padding: 20px;
        background-color: #eee;
    }

    .contrast .form .fieldset {
        background-color: transparent;
        border: 0;
    }

    .form .actions {
        padding: 20px 0;
        margin-bottom: -18px;
    }

    .form .label {
        margin-bottom: 8px;
    }

    .form input[type="file"],
    .form input[type="password"],
    .form input[type="text"],
    .form select,
    .form textarea,
    .wsc-select {
        margin: 0 0 1.875em;
    }

    #captcha-refresh {
        float: right;
        font-size: 12px;
        line-height: normal;
    }

    #captcha-image {
        box-sizing: border-box;
        float: left;
        width: 100%;
        margin: 0 0 0.938em;
        border: 1px solid #ccc;
    }

    .rounded #captcha-image {
        border-radius: 6px;
    }

    #title img {
        max-height: 200px;
    }

    #slider .slide .text *,
    #title .text * {
        text-align: center;
    }

    #slider .slide .text,
    #title .text {
        width: 100%;
        padding: 0 20px;
    }

    #slider .large,
    #title .large {
        font-size: 1.4em !important;
    }

    #slider .medium,
    #title .medium {
        font-size: 1.1em !important;
    }

    #slider .small,
    #title .small {
        font-size: 0.9em !important;
    }

    #slider .inside.overlay,
    #title .inside.overlay {
        padding: 10px;
    }

    #container {
        min-width: 320px;
    }

    #logo {
        padding: 15px;
    }

    #logo img {
        max-height: 200px;
        margin: auto;
    }

    .image-center,
    .image-left,
    .image-right {
        max-width: 100%;
        margin: 0 auto;
    }

    #logo img,
    .image-center iframe,
    .image-center img,
    .image-left iframe,
    .image-left img,
    .image-right iframe,
    .image-right img {
        max-width: 100%;
    }

    .image-center span,
    .image-left span,
    .image-right span {
        display: block;
        margin: -10px 0 5px;
        font-size: 0.8em;
        font-style: italic;
        text-align: center;
    }

    #social .sbtnf,
    .social .sbtnf {
        width: 32px;
        height: 32px;
        margin-bottom: 0;
        filter: alpha(opacity=100);
        opacity: 1;
    }

    .columns-2 [class*="column-"],
    .columns-3 [class*="column-"],
    .columns-4 [class*="column-"] {
        float: left;
        width: 100% !important;
        padding: 0 !important;
        margin: 20px 0 !important;
    }

    #header #nav li,
    #nav,
    #nav #menu,
    #nav ul ul,
    .columns-2.padded [class*="column-"] div,
    .columns-3.padded [class*="column-"] div,
    .columns-4.padded [class*="column-"] div {
        padding: 0;
    }

    .columns-2 img,
    .columns-3 img,
    .columns-4 img {
        margin: 0 auto;
    }

    .columns-2 [class*="column-"] div.row-icon,
    .columns-3 [class*="column-"] div.row-icon,
    .columns-4 [class*="column-"] div.row-icon {
        float: left;
        max-width: 20%;
        margin-top: 0.3em;
    }

    .columns-2 [class*="column-"] div.row-text,
    .columns-3 [class*="column-"] div.row-text,
    .columns-4 [class*="column-"] div.row-text {
        padding-left: 20px !important;
        margin-top: 0;
        margin-left: 20%;
        line-height: 1.5;
    }

    #nav {
        font-size: 0.9em;
        line-height: 40px;
    }

    #nav a {
        padding: 0 15px;
        text-decoration: none;
    }

    #nav ul {
        margin: 0;
    }

    #nav ul ul a::before {
        content: "• ";
    }

    #nav ul ul a {
        padding-left: 20px;
    }

    #mobile-menu {
        display: block;
        padding: 0 15px;
        cursor: pointer;
    }

    #mobile-menu .text {
        font-size: 1.2em;
        line-height: 46px;
        color: #fff;
    }

    #mobile-menu .icon {
        float: right;
        margin: 13px 0;
    }

    #mobile-menu .bar {
        display: block;
        width: 1.75em;
        height: 3px;
        margin: 3px 0 0;
        background-color: #fff;
    }

    #menu {
        display: none;
    }

    #header #nav li,
    #header #nav li a {
        display: block;
        line-height: 3;
        border-right: 0 !important;
        border-left: 0 !important;
    }

    #header #nav ul ul li,
    #header #nav ul ul li a {
        line-height: 3;
    }

    #header #nav li ul li.active,
    #header #nav li.active {
        background-color: transparent !important;
    }

    #footer,
    .content .inside {
        padding: 0 15px;
        font-size: 0.9em;
    }

    #footer #end,
    #newsletter {
        float: left;
        width: 100%;
        padding: 0;
    }

    #newsletter {
        position: relative;
        overflow: hidden;
    }

    #newsletter button {
        margin-top: 10px;
    }

    .rounded #newsletter button,
    .rounded #newsletter input[type="text"] {
        border-radius: 6px;
    }

    #bottom {
        padding: 0;
        font-size: 0.7em;
        line-height: 1.5;
    }

    #copyright {
        display: none;
    }

    #footer #end {
        margin: 0 0 15px;
    }

    #footer .social {
        padding: 0 0 0 5px;
    }

    #header #nav #menu {
        font-size: 1.2em;
    }

    #header #nav #menu,
    #header #nav #menu ul {
        background-color: #656565;
    }

    #header #nav #menu li {
        border-top: 1px solid #aaa;
    }

    #header #nav #menu ul li {
        border: 0;
    }

    #header #nav a.hover {
        background-color: #777 !important;
    }

    #footer ul li {
        float: none;
        padding: 0;
        border-left: 0;
    }

    #bottom a,
    #footer a {
        color: #eee;
    }

    #end .social {
        padding: 0;
        margin: 0;
        overflow: hidden;
    }

    #end .social a {
        margin: 0 10px 10px 0;
    }
}

@media (max-width: 480px) {
    #gallery-image img {
        max-width: 200px;
        max-height: 150px;
    }

    #gallery-caption {
        max-width: 200px;
    }

    #title img {
        max-height: 150px;
    }

    #slider .slide .text *,
    #title .text * {
        text-align: center;
    }

    #slider .slide .text #title .text {
        width: 100%;
        padding: 0 20px;
    }

    #slider .large,
    #title .large {
        font-size: 0.9em !important;
    }

    #slider .medium,
    #title .medium {
        font-size: 0.8em !important;
    }

    #slider .small,
    #title .small {
        font-size: 0.6em !important;
    }
}
