
/* 2017 General */


/* Fonts */

@font-face {
    font-family: 'Conv_Helvetica-Light';
    src: url('../files/Helvetica-Light.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaNeueLT-CondensedObl';
    src: url('../files/328569_1_0.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaNeueLT-BoldCondensedObl';
    src: url('../files/328569_2_0.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaNeueLT-Condensed';
    src: url('../files/328569_4_0.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaNeueLT-BoldCondensed';
    src: url('../files/328569_5_0.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/** general styles **/

section {
    margin: 0;
    font-size: 16px;
    box-sizing: border-box;
    padding: 225px 0px 40px;
}

ul {
    margin: 0 auto 30px;
    padding: 0;
}

ul li {
    list-style-type: none;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
}

li,
p,
a {
    font-size: 18px;
}

p {
    line-height: 1.5em;
}

.content ol {
    max-width: 900px;
    margin: 0 auto 30px;
    text-align: left;
    padding: 0px;
    line-height: 1.3em;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
    font-size: 18px;
}

ol li {
    padding-left: 10px;
    padding-bottom: 6px;
}

section,
section p {
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
    font-size: 18px;
    line-height: 1.3em;
}

h1,
h2,
h3,
h4,
h5 {
    font-family: 'HelveticaNeueLT-BoldCondensed', sans-serif;
    font-weight: normal;
    line-height: 1em;
    margin: 1em auto;
    display: block;
    max-width: 900px;
    width: 96%;
}

h1 {
    font-size: 48px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 28px;
}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 24px !important;
    -webkit-margin-before: 1.67em !important;
}

.link-black a {
    text-decoration: none !important;
    color: #252525;
}

.link-white a {
    color: #FFFFFF;
    text-decoration: none !important;
}

a {
    color: #e31738;
    text-decoration: underline;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
}

a:hover {
    color: #792020;
}

a.btn-hollow {
    background: none !important;
    display: inline-block;
    border: 3px solid;
    padding: 10px 25px;
    border-radius: 5px;
    margin: 25px auto;
    max-width: 280px;
    width: 90%;
    font-size: 18px;
}

.white {
    color: #ffffff;
}

.btn-white:hover {
    background: #252525;
    color: #fff;
}

a.btn-hollow.white:hover {
    background: #e31738!important;
    border: 3px solid #e31738;
    color: #fff;
}

.quote a.btn-hollow.white:hover {
    background: #212121!important;
    border: 3px solid #212121;
    color: #fff;
}

.quote.dark a.btn-hollow:hover {
    background: #fff!important;
    color: #212121;
}

img {
    max-width: 100%;
    width: auto;
}
.pfproductattributecheckbox{
    position: relative;
    line-height: 20px;
    padding: 0 0 0 20px !important;
    background: none !important;
    margin-bottom: 5px;
    font-size: 15px;
}
.pfproductattributecheckbox.unchecked:before, .pfproductattributecheckbox.checked:before {
    content: '';    
    border: 1px solid black;
    position: absolute;
    left: 0;
    top: 2px;
    width: 16px;
    height: 16px;
    box-sizing: border-box;    
}
.pfproductattributecheckbox.checked:after {
    content: '';
    background: #e31738;
    position: absolute;
    left: 2px;
    top: 4px;
    width: 12px;
    height: 12px;
}

input.hasDatepicker {
    background: url(../files/calendar_icon.png?) 90% 50% no-repeat;
    padding-right: 30px;
    min-width: 120px;
}

label.checkbox {
	cursor: pointer;
	line-height: normal;
	display: block;
}
label.checkbox div {
    display: inline-block;
    width: calc(100% - 30px);
}
label.checkbox input {
  display: none;
}
label.checkbox span {
  	width: 20px;
  	height: 20px;
  	border: 1px solid black;
  	display: inline-block;
  	position: relative;
  	top: 5px;
  	margin-right: 8px;
  	background: white;  	
  	box-sizing: border-box;
}
label.checkbox [type=checkbox]:checked + span:before {
	content: '';
	position: absolute;
	top: 1px;
	left: 1px;
	width: 16px;
	height: 16px;
	background: #e31738;
}


/* hide last row */

body>table>tbody>tr>td>table>tbody>tr:last-of-type {
    display: none;
}


/*** Header ***/

iframe[name="google_conversion_frame"] {
    display: none;
}

.icon-divider img {
    width: auto;
}

header {
    position: fixed;
    width: 100%;
    z-index: 999999;
    background: #fff;
}

#header {
    position: relative!important;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 10px;
    BOX-SIZING: border-box;
    height: auto;
}

.header-top {
    position: relative;
}

.logo {
    width: 73px !important;
}

.logo img {
    width: 100%;
    transition: transform 0.2s ease-in-out;
}

.logo img:hover {
    transform: scale(0.95);
}

.menu-top-text,
.menu-top-icons {
    width: auto;
}

.menu-top-icons {
    position: absolute;
    right: 10px;
    top: 32px;
}

.menu-top-icons a {
    transition: transform 0.2s ease-in-out;
}

.menu-top-icons a:hover {
    transform: scale(0.95);
}

.logo,
.menu-top-text,
.menu-top-icons,
.menu-top-text ul li,
.header-down ul li,
.menu-top-icons ul li,
.header-down ul,
.header-down .btn-book,
.contact-title .icon-phone,
.contact-title .contact-number,
footer .social-media ul li,
footer .links-left,
footer .links-right {
    display: inline-block;
    vertical-align: top;
}

nav {
    background: #e31738;
    width: 100%;
    height: 60px;
    line-height: 60px;
    text-align: center;
    border-bottom: 8px solid #981228;
}

#theMenu {
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    background: #e31738;
}

#theMenu .megamenu li a.mega {
    display: block;
    font-size: 18px;
    font-family: 'HelveticaNeueLT-Condensed', Sans-serif;
    height: 40px;
    box-sizing: border-box;
    padding: 0px 20px;
    border-left: 1px solid #fff;
    margin: 10px 0px;
    line-height: 40px;
}

#theMenu .megamenu li.mega:first-of-type a.mega {
    border-left: 0;
}

.mainMenu li.mega.hovering {
    background: #c51531;
}

.mainMenu li.mega {
    width: calc((100% / 6) - 1px); /* -1px to fix issue on Edge */
    box-sizing: border-box;
}

.btn-book {
    padding: 10px 0;
    background: #c51531;
}

a.btn-white {
    background: #ffffff;
    padding: 10px 20px;
    margin: 3px 20px 2px 20px;
    display: block;
    border-radius: 5px;
}

a.btn-white:hover {
    background: #4d4d4d;
}

.menu-top-icons ul li {
    width: 36px;
    height: 36px;
    margin-right: 7px;
}

.menu-top-icons ul li:nth-last-child(1) {
    margin-right: 0 !important;
}

a.icon-home,
a.icon-location,
a.icon-search,
a.icon-user,
a.icon-cart {
    height: 70px;
    line-height: 90px;
    background-size: 36px 36px;
    display: block;
    color: transparent;
    overflow: hidden;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: top center;
    margin-top: 7px;
    font-size: 14px;
    text-align: center;
    overflow: visible;
}

.menu-top-icons li > a:hover {
    color: inherit;
    text-indent: 0;
}

.menu-top-icons a.icon-location:hover {
    text-indent: -5px;
}

a.icon-home {
    background-image: url(../files/home-grey.png);
}

a.icon-location {
    background-image: url(../files/location-grey.png);
}

a.icon-cart {
    background-image: url(../files/cart-grey.png);
}

a.icon-user {
    background-image: url(../files/user-grey.png);
}

a.icon-search {
    background-image: url(../files/search-grey.png);
}

#theSearchBox {
    position: absolute;
    top: 5px;
    right: -5px;
    height: 40px;
    background: #fff;
    width: 293px;
    z-index: 999999;
    display: none;
}

#theSearchBox.show {
    display: block;
}

.theSearchBox>table {
    background: none;
    display: inline-block;
    vertical-align: top;
}

.theSearchBox form table {
    width: 100%;
}

.theSearchBox form table tr {
    display: inline-block;
}

.theSearchBox form tr:first-of-type {
    display: none;
}

.theSearchBox form td {
    display: inline-block;
    padding: 0px;
}

.theSearchBox .inputbox {
    width: 200px!important;
    height: 40px;
    border: 1px solid #333;
    box-sizing: border-box;
    line-height: 38px;
    text-indent: 8px;
    font-size: 18px;
    color: #222;
    font-family: 'HelveticaNeueLT-Condensed', Sans-serif;
}

.theSearchBox form a>img {
    display: none;
}

.theSearchBox td>a {
    display: block;
    height: 40px;
    width: 36px;
    background: url(../files/search-grey.png) no-repeat center / 40px;
}

a.icon-close {
    display: inline-block;
    height: 40px;
    width: 36px;
    font-size: 0px;
    background: url(../files/close-grey.png) no-repeat center / 40px;
    vertical-align: top;
    margin-left: 8px;
}

.menu-top-text {
    position: absolute;
    top: -74px;
    right: 234px;
    z-index: 99999;
    line-height: 1em;
    font-family: 'HelveticaNeueLT-Condensed', Sans-serif;
}

.menu-top-text li {
    border-left: 1px solid #858585;
    background: none;
}

.menu-top-text li:first-of-type {
    border-left: none;
}

.menu-top-text li a:hover {
    color: #c51531;
}

.menu-top-text li a {
    padding: 0 20px;
    display: block;
    margin: 0;
    font-size: 16px;
    color: #252525;
}

.icon-burger a {
    color: transparent;
    display: none;
    vertical-align: top;
    width: 24px;
    height: 24px;
    background: url(../files/menu-burger.png) no-repeat center;
}

#theMenu .pfmegamenu a {
    color: #ffffff;
}

#theMenu .megamenu {
    margin: 0;
    padding: 0;
    position: relative;
    top: 0;
    list-style-type: none;
    width: 100%;
}

#theMenu li.mega:last-of-type {
    display: block;
    background: #c51531;
    padding: 0px 8px;
}

#theMenu li.mega:last-of-type a {
    background: #fff;
    border-radius: 5px;
    margin: 10px;
    color: #e31738;
    text-align: center;
    transition: 0.2s ease-in-out;
    line-height: 40px;
}

#theMenu li.mega:last-of-type a:hover {
    background: #555;
    color: #FFF!important;
    border: none !important;
}

#theMenu h4 {
    display: none;
}

#theMenu hr {
    display: none;
}

#wrapper-divider {
    display: block;
    padding-top: 0;
    z-index: -999999;
}

#wrapper-divider .divider {
    width: 100%;
    display: block;
    height: 65px;
    background: #e31738;
    border-bottom: 10px solid #981228;
    position: relative;
    z-index: -99999;
    top: -65px;
}


/*** Footer ***/

footer {
    display: block;
    width: 100%;
    bottom: 0;
    left: 0;
    margin: 0 auto;
    background: #e31738;
    overflow: auto;
    z-index: 0;
}

.wide1280 {
    max-width: 1280px;
    margin: 0 auto;
    width: 96%;
}

footer .footer-top {
    position: relative;
}

footer .newsletter input {
    display: inline-block;
    vertical-align: top;
}

footer .icon-phone img {
    display: block;
    padding: 25px 0 0px;
    width: 30px;
}

footer .social-media ul li a {
    display: block;
    background-size: 30px 30px;
    width: 30px;
    height: 30px;
    text-indent: -999px;
    text-align: center;
    color: transparent;
    transition: transform 0.2s ease-in-out;
}

footer .social-media ul li a:hover {
    transform: scale(0.92);
}

footer .social-media ul li {
    padding: 0 7.5px;
}

footer a.icon-fb {
    background: url(../files/facebook-circle.png) no-repeat center;
}

footer a.icon-tw {
    background: url(../files/twitter-circle.png) no-repeat center;
}

footer a.icon-li {
    background: url(../files/linkedin-circle.png) no-repeat center;
}

footer a.icon-ig {
    background: url(../files/instagram-icon.png) no-repeat center;
}

footer .footer-item {
    width: 32%;
    padding-bottom: 15px;
    margin-right: 1.65%;
}

footer .footer-item.newsletter {
    margin-right: 1.65%;
    position: absolute;
    top: 0;
    left: 0;
}

footer .footer-item.contact {
    margin: 0 auto;
    display: block;
}

footer a.btn-white {
    background: #ffffff;
    padding: 12px 15px;
    margin: 0 auto;
    display: block;
    border-radius: 5px;
    width: 94%;
    font-size: 16px;
    box-sizing: border-box;
}

footer .contact-title {
    display: block;
    margin: 0 auto;
    text-align: center;
}

footer .social-media {
    margin: 0 auto;
    text-align: center;
}

footer .newsletter form {
    display: block;
    width: 100%;
}

footer .newsletter form input[name="Name"],
#footer .newsletter form input[type="email"],
#footer .newsletter form input[type="image"] {
    display: inline-block;
    vertical-align: top;
}

footer .newsletter form input[type="text"],
footer .newsletter form input[type="email"] {
    font-size: 16px;
    padding: 10px 0px 10px 10px;
    background: #981228;
    border: 1px solid #981228;
    color: #FFFFFF;
}

footer .newsletter form input[name="Name"] {
    width: 35.5%;
    margin-bottom: 0;
}

footer .footer-item.send-mail {
    text-align: center;
}

footer .footer-item.newsletter {
    text-align: left;
}

footer .newsletter form input[type="email"] {
    width: 40%;
    float: none;
}

footer .newsletter form input[type="image"] {
    width: auto;
    float: none;
    transition: transform 0.2s ease-in-out;
}

footer .newsletter form input[type="image"]:hover {
    transform: scale(0.95);
}

footer .footer-down ul li {
    padding: 5px 0;
}

footer .links-left {
    text-align: left;
    float: left;
}

footer .links-right {
    text-align: right;
    float: right;
}

footer .footer-down {
    display: block;
    margin: 25px 0 35px 0;
    position: relative;
}

.links-left ul li:first-of-type b {
    font-family: 'HelveticaNeueLT-BoldCondensed', sans-serif;
    color: #fff;
    font-weight: normal;
    font-size: 20px;
}

footer .copyright {
    font-size: 11.5px;
    display: block;
    background: #981228;
    padding: 15px 0;
    text-align: center;
    line-height: 18px;
}

footer .logo-scroll {
    display: block;
    width: 30%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

footer .logo-footer {
    display: block;
    margin: 0;
}

.logo-footer img {
    max-height: 138px;
    margin: 0 auto;
    display: block;
    width: auto;
}

footer .icon-scroll {
    display: block;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 10px;
    font-size: 13px;
    color: #ffffff;
}

footer .icon-scroll img {
    display: block;
    margin: 0 auto;
    width: auto;
    transition: transform 0.2s ease-in-out;
}

#scrolltotop a:hover img {
    transform: scale(0.92);
}


/*** home page ***/

#homepage>table>tbody>tr>td {
    text-align: center;
}

#homepage .banner-hero img,
.story .video-thumb img {
    width: 100%;
    margin: 0;
    display: block;
}

.heroBanner {
    position: relative;
}

.heroBanner img {
    display: block;
    width: 100%;
}

.heroBanner h2 {
/*    position: absolute; */
    top: 25%;
    color: #fff;
    left: 5%;
    font-size: 4em;
    line-height: 1.1em;
    margin: 0;
    min-width: 300px;
    max-width: 450px;
    width: 40%;
}

.heroBanner h2,
.heroBanner h4 {
    text-align: left;
}

.texts h1 {
    font-size: 36px;
}


/** content nav template **/

.nav-content {
    display: block;
    width: 100%;
    margin: 0;
    background: #000;
}

.nav-content ul {
    display: block;
    margin: 0 auto;
    width: 100%;
    text-align: center;
}

.nav-content ul li {
    display: inline-block !important;
    width: auto;
    margin: 20px 25px;
    text-align: center;
    vertical-align: top;
}

.nav-content li a {
    display: block;
    width: 70px;
    color: #fff;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
    text-align: center;
}

.nav-content li a:hover {
    color: #e31738;
}

.nav-content li a:hover img {
    transform: scale(0.92);
}

.nav-content a>img {
    max-height: 50px;
    width: auto;
    padding-bottom: 5px;
    display: block;
    margin: 0 auto;
    transition: all 0.22s ease-in-out;
}


/** scroll down icon **/

.icon-divider {
    display: block;
    text-align: center;
    width: auto;
    height: auto;
    margin: 20px auto;
}


/** course finder template **/

.course-locator {
    text-align: center;
    color: #ffffff;
    width: 100%;
    margin: 0 auto;
    padding: 1px 0 0 0;
    max-height: 360px;
    overflow: hidden;
}

.course-locator .map-result {
    width: 70%;
    float: left;
	height: 360px;
	/*min-height: 360px;*/
}

.course-locator .map-result p{
	color: #000;
}


.course-locator .form-wrapper {
    background: #e31738;
    width: 30%;
    float: right;
    display: block;
    padding: 30px 0;
    min-height: 360px;
}

.course-locator form {
    display: block;
    width: 85%;
    margin: 0 auto;
}

.course-locator input,
.course-locator select,
.course-locator button {
    display: block;
    width: 100%;
    max-width: 750px;
    font-size: 14px;
    margin: 20px auto;
    padding: 2.5% 2%;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border: transparent;
}

.course-locator input[type="text"] {
    width: 96%;
}

.course-locator button {
    color: #ffffff;
    background: none;
    border: 3px solid;
}

.map-result iframe {
    height: 360px;
}

section p {
    display: block;
    max-width: 900px;
    margin: 0 auto 30px;
    width: 96%;
    text-align: left;
}

section ul {
    text-align: left;
    max-width: 900px;
    width: 96%;
    line-height: 1.8em;
}

.form-wrapper h3 {
    -webkit-margin-before: 0;
    -moz-margin-before: 0;
    -o-margin-before: 0;
}

.red {
    color: #e31738;
}

.btn-red {
    background: #e31738;
    color: #fff;
    font-size: 17px;
    border-radius: 5px;
    display: inline-block;
    padding: 10px 25px;
}

a.btn-red:hover {
    background: #000;
    color: #fff;
}

/** quote content (red) style **/

.quote {
    display: block;
    margin: 40px auto;
    background: #e31738;
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 0;
    text-align: left;
    line-height: 1em;
    /*    max-width: 1280px; */
}

.quote.right {
    text-align: right;
}

.quote h3 {
    margin-top: 40px;
    font-size: 32px;
    line-height: 1em;
    -webkit-margin-before: 0;
}

.quote-text {
    padding: 30px;
    width: 50%!important;
    box-sizing: border-box;
    display: inline-block!important;
    vertical-align: middle;
    text-align: center;
    margin: 0 auto;

}

.quote-text p {
    max-width: 370px;
    margin: 30px auto 0px;
}

.quote-image {
    width: 50%;
    display: inline-block;
    vertical-align: middle;
}

.quote-image img {
    display: block;
    width: 100%;
}


/** quote content (dark) style **/

.quote.dark {
    background: #212121;
    color: #FFFFFF;
    display: block;
    position: relative;
    margin: 40px auto;
}

.quote a.btn-hollow {
    background: none !important;
    display: inline-block;
    border: 3px solid;
    padding: 10px 25px;
    border-radius: 5px;
    margin: 25px auto 0px;
    max-width: 280px;
    width: 90%;
    font-size: 18px;
    color: #fff;
    box-sizing: border-box;
    line-height: 1.3em;
}

td>.story:last-child {
    margin: 40px auto 0px;
}

.dark {
    background: #212121;
    color: #fff;
}

.story h3 {
    padding: 40px 0px 10px;
}

.story a.btn-hollow {
    color: #FFFFFF;
}

.story.benefits {
    width: 100%;
    max-width: 100%;
}


/** benefits style **/

ul.benefit-item {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}

.benefits ul li {
    display: inline-block;
    width: calc(100% / 6);
    margin: 10px;
    vertical-align: top;
}

.benefits li img {
    display: block;
    width: auto;
    max-height: 80px;
    margin: 0 auto;
    padding-bottom: 20px;
}

.benefits li p {
    font-size: 14px;
    text-align: center;
}

.story.dark .image {
    display: inline-block;
    width: 59%;
    vertical-align: top;
}

.story.dark .text {
    display: inline-block !important;
    width: 40% !important;
    padding-top: 30px;
    vertical-align: top;
}


/** Article **/

.article>table>tbody>tr>td {
    text-align: center;
}

.article>table>tbody>tr>td > table,
.article>table>tbody>tr>td> div[style*="column"] {
    width: 96%;
    margin: 20px auto;
    max-width: 900px;
    clear:both;
}

.article>table>tbody>tr>td> div[style*="column"] p{
    text-align: center;
}

.article>table>tbody>tr>td> div[style*="column"] h3 {
    margin-top: 0;
}

article {
    display: block;
    margin: 35px 0;
}

.article h2 {
    text-align: left;
}

.heroBanner h4 {
    position: absolute;
    color: #FFFFFF;
    top: 35%;
    left: 5%;
    max-width: 320px;
    font-weight: 300;
}

.article iframe {
    width: 92%;
    max-width: 630px;
}

.article .issuuembed,
.article #publication {
    margin: 0 auto;
}

#publication td {
    padding: 5px;
}

small.map {
    font-size: 13px;
    display: block;
    width: 160px;
    margin: 0 auto;
}

.formContainer {
    width: 96%;
    max-width: 600px;
    margin: 0 auto;
}

.article .inputbox {
    height: 38px;
    line-height: 38px;
    text-indent: 5px;
    border: 1px solid #aaa;
    border-radius: 4px;
    font-size: 16px!important;
    color: #333;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
    width: 90%!important;
}

.article textarea.inputbox {
    height: 90px;
    line-height: 1.3em;
}

.article form td {
    font-size: 16px;
    color: #333;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
}

.article .formContainer h2 {
    font-size: 24px;
    text-align: center;
}

.form {
    margin: 0 auto;
    width: 100%;
    display: inline-block;
    text-align: center;
    max-width: 600px;
}

.form h2 {
    text-align: center;
}

.pointer {
    font-size: 0;
    display: block;
    border-top: 1px solid #ddd;
    margin-bottom: 20px;
}

.form input.inputbox {
    height: 32px;
    line-height: 32px;
    padding: 2px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 3px;
    width: 100%!important;
    max-width: 420px;
}

.form textarea.inputbox {
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 16px;
    width: 100%;
    max-width: 420px;
}

.article .onsite-booking h2 {
    text-align: center;
}

.article .onsite-booking h2 a {
    font-size: inherit;
}
.article .onsite-booking > table  {
    margin: auto;
}

/* Welcome */
.article.welcome > table {
    margin: auto;
}
.article.welcome img {
    max-width: none;
}

.article.welcome .my-account {
    max-width: 900px;  
    display: flex;
    flex-wrap: wrap;
}
.article.welcome .box {
    width: 50%;
    padding: 20px;
    box-sizing: border-box;
    border-top: #c4c4c4 1px dotted;
    text-align: left;
}

.article.welcome .box:last-child{
    width: 100%;
}

.article.welcome .box a:first-child{    
    float: left;
    margin-right: 15px;
}

.article.welcome .box p {
    font-size: 16px;
}

/* Transaction */
.article.transaction .back {
    display: block;	
	outline: none;	
	font-size: 0;
	font-weight: bold;
	width: 39px;
	height: 39px;
	cursor: pointer;
	float: left;
	margin-right: 20px;
	text-align: center;	
	background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzlweCIgaGVpZ2h0PSIzOXB4IiB2aWV3Qm94PSI2MCAyMDg1IDI5IDI5IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPjxkZWZzPjwvZGVmcz48ZyBpZD0iU2Nyb2xsLVRvcC1JY29uIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3NC41MDAwMDAsIDIwOTkuNTAwMDAwKSByb3RhdGUoLTkwLjAwMDAwMCkgdHJhbnNsYXRlKC03NC41MDAwMDAsIC0yMDk5LjUwMDAwMCkgdHJhbnNsYXRlKDYzLjAwMDAwMCwgMjA4OC4wMDAwMDApIj48ZyBpZD0iR3JvdXAtNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi40MDUwNjMsIDguNzM0MTc3KSIgZmlsbD0iI0UzMTczOCI+PHJlY3QgaWQ9IlJlY3RhbmdsZS00IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3LjI4Mzc3NywgMi42NzE2MDIpIHJvdGF0ZSgzNS4wMDAwMDApIHRyYW5zbGF0ZSgtNy4yODM3NzcsIC0yLjY3MTYwMikgIiB4PSI0LjA4MTI0NTE5IiB5PSIxLjY1MjYxNDkxIiB3aWR0aD0iNi40MDUwNjMyOSIgaGVpZ2h0PSIyLjAzNzk3NDY4Ij48L3JlY3Q+PHJlY3QgaWQ9IlJlY3RhbmdsZS00IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzLjIwNzgyNywgMi42NzE2MDIpIHNjYWxlKC0xLCAxKSByb3RhdGUoMzUuMDAwMDAwKSB0cmFuc2xhdGUoLTMuMjA3ODI3LCAtMi42NzE2MDIpICIgeD0iMC4wMDUyOTU4MjY5OCIgeT0iMS42NTI2MTQ5MSIgd2lkdGg9IjYuNDA1MDYzMjkiIGhlaWdodD0iMi4wMzc5NzQ2OCI+PC9yZWN0PjwvZz48cGF0aCBkPSJNMTEuNSwyMyBDMTcuODUxMjc0NiwyMyAyMywxNy44NTEyNzQ2IDIzLDExLjUgQzIzLDUuMTQ4NzI1MzggMTcuODUxMjc0NiwwIDExLjUsMCBDNS4xNDg3MjUzOCwwIDAsNS4xNDg3MjUzOCAwLDExLjUgQzAsMTcuODUxMjc0NiA1LjE0ODcyNTM4LDIzIDExLjUsMjMgWiIgaWQ9Ik92YWwiIHN0cm9rZT0iI0UzMTczOCIgc3Ryb2tlLXdpZHRoPSI0LjYxIj48L3BhdGg+PC9nPjwvc3ZnPg==) center no-repeat;
}


/** question list **/

div#question {
    display: block;
    width: 100%;
    max-width: 900px;
    margin: 40px auto;
}

#question ul li {
    text-align: left;
    margin-bottom: 40px;
    background: url(../files/icon-q.jpg) no-repeat left top;
    padding-left: 55px;
    background-size: 40px auto;
}

#question p {
    margin: 0;
}

article h2,
article h3,
article h4 {
    display: block;
    width: 90%;
    margin: 0 auto 30px;
    max-width: 650px;
    text-align: left;
}

article blockquote {
    font-family: HelveticaNeueLT-Condensed, sans-serif;
    font-size: 24px;
    color: #999;
    text-rendering: optimizeLegibility;
    display: block;
    width: 90%;
    margin: 30px auto;
    max-width: 650px;
    line-height: 36px;
}

article p {
    text-align: left;
    line-height: 28px;
    display: block;
    width: 90%;
    max-width: 650px;
}

.subIndex {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.subIndex>table {
    width: auto;
    margin: 0 auto;
}

.subIndex>table>tbody>tr>td>table>tbody>tr>td {
    display: inline-block;
    width: 200px;
    margin: 10px;
    vertical-align: top;
}

.subIndex td {
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
    font-size: 16px;
    line-height: 1.3em;
    text-align: center;
}

.subIndex table table tr {
    text-align: center;
}

.subIndex table table table td {
    display: block;
}

.subIndex b>a {
    font-size: 32px;
    font-family: 'HelveticaNeueLT-BoldCondensed', sans-serif;
    font-weight: normal;
    line-height: 1.3em;
    display: block;
    margin: 10px 0px -10px
}

.subIndex table table table td:last-of-type>a {
    background: #e31738;
    border-radius: 5px;
    padding: 10px 25px;
    font-size: 17px;
    color: #fff;
    display: block;
    width: 80px;
    margin: 0 auto;
}

.subIndex a>b {
    font-weight: normal;
}

.subIndex.community>table>tbody>tr>td>table>tbody>tr>td {
    width: auto;
    max-width: calc(880px / 2 - 20px);
    min-width: 270px;
    margin-bottom: 30px;
}

.subIndex.community .imageborder {
    height: 100px;
}


/** homepage stats content **/

.stats {
    max-width: 900px;
    margin: 0 auto;
}

.stat-item {
    display: inline-block;
    padding: 30px;
    box-sizing: border-box;
    width: 33%;
    vertical-align: top;
}

.stat-item img {
    width: auto;
    display: block;
    max-width: 100%;
    margin: 0 auto;
    max-height: 120px;
}

.stat-item h3 {
    font-size: 48px;
    color: #e31738;
    line-height: 1em;
    margin: 25px 0px 15px;
}

.stat-item h5 {
    font-family: HelveticaNeueLT-Condensed;
    font-size: 22px!important;
    margin: 0!important;
    line-height: 1.2em;
}


/** testimonial styles **/

.testimonial {
    width: 49.5%;
    margin: 0 auto;
    text-align: left;
    max-width: 440px;
    display: inline-block;
    vertical-align: top;
}

.quoteMark {
    display: inline-block;
    font-size: 4.5em;
    color: #e31738;
    line-height: 1em;
    vertical-align: top;
    width: 25px;
}

.testimonial .text {
    display: inline-block;
    width: calc(100% - 30px);
    vertical-align: top;
}

.testimonial h5 {
    margin: 1.5em 0px 0.5em !important;
    font-size: 18px!important;
}

.testimonial p {
    margin: 0;
    font-size: 14px;
}

ol li ul li {
    padding-left: 0px;
}

/* Category */

.pfproductcategoryportlet {
    display: flex;
    flex-wrap: wrap;
}

.pfproductcategoryportlet .PFProductContainer {
    width: 270px;
    margin: 14px;
    border: 2px solid #E31738;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 95px 20px 20px 20px;
    position: relative;
    overflow: hidden;
}

.pfproductcategoryportlet table {
    width: 100%;
    box-sizing: border-box;
}

.pfproductcategoryportlet .productShortDescription a,
.pfproductcategoryportlet .productShortDescription span {
    color: black;
    font-size: 18px;
}

.pfproductcategoryportlet .productCodeTable a {
    color: #888888 !important;
}

.pfproductcategoryportlet .productShortDescription,
.pfproductcategoryportlet .productCodeTable {
    position: absolute;
    top: 0;
    left: 0;
    text-align: left;
    padding: 20px;
}

.pfproductcategoryportlet .productCodeTable {
    padding-top: 68px;
}

.pfproductcategoryportlet .pfProductAttributesTable {
    display: none;
}

.pfproductcategoryportlet .productImageCell {
    padding: 20px;
    width: 100%;
    min-height: 228px;
    box-sizing: border-box;
}

.pfproductcategoryportlet .productImageCell img {
    width: 100%;    
}

.pfproductcategoryportlet [class*="Row2"]>td>table:last-of-type a,
.pfproductcategoryportlet .addToCart {
    display: block;
    width: 100px;
    border: 2px solid #e31738;
    text-align: center;
    border-radius: 5px;
    font-size: 16px;
    box-sizing: border-box;
    line-height: 24px;
    padding: 0;
    margin-top: 15px;
    float: left;
    outline: none;
    font-family: 'HelveticaNeueLT-Condensed', sans-serif;
}

.pfproductcategoryportlet .addToCart {
    background: #e31738;
    color: white;
    float: right;
    cursor: pointer;
}

.pfproductcategoryportlet .addToCart.loading {
    opacity: 0.5;
    pointer-events: none;
}

.pfproductcategoryportlet .price {
    font-size: 20px !important;
}

/* Article */
#articlePane {
    background: #ffffff;
    margin-bottom: 30px;
    margin: 190px auto 0px;
}

#submittingdatalayer { display: none;}


section.search.content {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
}

.search.content table td table:nth-of-type(1) tr:nth-of-type(2) td {
    text-align: center;
}

.search.content table td table:nth-of-type(2) td a {
    display: block;
    min-height: 130px;
}

.search.content img.imageborder {
    max-width: 130px;
    width: 98%;
    margin: 0 auto;
    display: block;
    margin-bottom: 5px;
}

.search.content table td table:nth-of-type(2) td b a {
    font-size: 16px;
    letter-spacing: 0.02em;
    font-weight: 700;
    min-height: initial;
}


/*** 2017 Responsive ***/

@media (min-width: 1400px) {
    .heroBanner h2 {
        font-size: 5em;
        max-width: 600px;
        width: 45%;
    }
}

@media (min-width: 769px) {
    .mobile {
        display: none!important;
    }
    footer .footer-item.send-mail {
        margin-right: 0 !important;
        position: absolute;
        right: 0;
        top: 0;
    }
    footer a.btn-white {
        width: 94%;
    }
    .search.content table td table:nth-of-type(2) td {
        max-width: 360px;
    }
}

@media (max-width: 1140px) {
    #theMenu .megamenu li a.mega {
        padding: 0px 4px;
    }
}

@media (max-width: 990px) {
    #theMenu .megamenu li a.mega {
        font-size: 20px;
        padding: 0px 8px;
        line-height: 20px;
    }
    .heroBanner h2 {
        top: 20%;
        font-size: 4em;
        width: 50%;
    }
    footer h3 {
        font-size: 20px;
    }
    footer .icon-phone img {
        padding: 22px 0;
    }
    .content ol {
        padding-left: 25px;
    }
}


/* max-width 768px */

@media (max-width: 768px) {
    .search.content table td table:nth-of-type(2) tr {
        display: block;
        width: 96%;
        margin: 0 auto;
    }
    .search.content table td table:nth-of-type(2) td {
        max-width: 360px;
        width: 100%;
        display: inline-block;
        margin: 0 auto;
        margin-bottom: 15px;
        text-align: center;
    }
    .theSearchBox .inputbox {
        font-size: 16px!important;
    }
    .desktop {
        display: none !important;
    }
    header {
        background: RGBA(255, 255, 255, 0.9);
    }
    section {
        font-size: 13px;
        box-sizing: border-box;
        padding: 83px 0px 0px;
    }
    .logo {
        width: 44px!important;
    }
    .menu-top-icons {
        position: absolute;
        right: 65px;
        top: 10px;
    }
    .icon-burger {
        display: inline-block;
        position: absolute;
        top: 10px;
        right: -50px;
        z-index: 9999999;
    }
    .icon-burger a {
        display: block;
        vertical-align: top;
        height: 26px;
        background-size: inherit;
    }
    .menu-top-icons ul li.user-mark {
        display: none;
    }
    a.icon-home {
        background: url(../files/home-mobile.png) no-repeat center;
    }
    a.icon-location {
        background: url(../files/location-mobile.png) no-repeat center;
        background-size: 16px !important;
    }
    a.icon-cart {
        background: url(../files/cart-mobile.png) no-repeat center;
    }
    a.icon-search {
        background: url(../files/search-mobile.png) no-repeat center;
    }
    a.icon-home,
    a.icon-location,
    a.icon-search,
    a.icon-user,
    a.icon-cart {
        background-size: 22px;
        display: block;
        color: transparent;
    }
    #theMenu {
        background: #e31738;
        position: absolute;
        width: 220px;
        display: block;
        top: 0;
        right: 0;
        min-height: 100%;
        padding: 0px 20px 10px;
        transition: transform 0.2s ease-in-out;
        z-index: 999999;
        box-shadow: -2px 0px 5px RGBA(0, 0, 0, 0.3);
        transform: translate3d(226px, 0px, 0px);
        box-sizing: border-box;
        height: calc(100vh);
        overflow: auto;
    }
    #theMenu.show {
        transform: translate3d(0px, 0px, 0px);
    }
    #theMenu h4 {
        display: block;
        margin: 10px 0px 0px;
        text-align: left;
        font-size: 13px;
        width: 90px;
        line-height: 50px;
    }
    #theMenu .megamenu li.mega {
        float: none!important;
        display: block !important;
        width: 100%!important;
        text-align: left;
    }
    #theMenu .megamenu li a.mega {
        display: block;
        border-left: 0;
        padding: 0!important;
        line-height: 34px!important;
        height: auto;
        margin: 4px 0px!important;
        min-height: 34px;
        font-size: 18px;
    }
    nav {
        height: 4px;
        line-height: 60px;
        text-align: center;
        border-bottom: 2px solid #981228;
    }

    #theMenu .megamenu {
        padding-top: 50px!important;
        display: block;
    }
    .mainMenu {
        border-bottom: 1px solid RGBA(255, 255, 255, 0.4);
        margin-bottom: 8px;
    }
    div#theMenu h4.white {
        -webkit-margin-before: 0.86em;
    }
    .megamenu li.mega {
        float: none;
        display: block !important;
        margin: 0;
        width: 100%;
    }
    li.mega:last-of-type {
        position: absolute;
        top: 0;
        background: none!important;
        padding: 0!important;
    }
    #theMenu li.mega:last-of-type a {
        height: 34px!important;
        line-height: 34px!important;
        margin: 0px!important;
    }
    .menu-top-text {
        top: 0;
        position: relative;
        right: 0;
        padding: 0;
    }
    .menu-top-text li {
        border-left: none;
        width: 100%;
        text-align: left;
    }
    .menu-top-text li a {
        display: block;
        border-right: none;
        margin: 10px 0;
        color: #FFFFFF;
        padding: 0 !important;
    }
    .menu-top-text li a:hover {
        color: #000!important;
    }
    footer .social-media {
        width: 100%;
        margin: 0 auto;
        display: block;
    }
    footer .icon-phone img {
        display: block;
        padding: 25px 0px 0px;
    }
    footer .links-left,
    #footer .links-right {
        width: 49%;
    }
    footer h3 {
        font-size: 22px;
        margin-bottom: 10px;
    }
    footer .footer-item {
        padding-bottom: 15px;
        width: 96%;
        display: block!important;
        max-width: 480px;
        margin: 0 auto!important;
    }
    footer .contact-title {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
    footer .footer-item.send-mail {
        position: static;
    }
    footer .footer-item.newsletter {
        /* width: 100%; */
        position: static;
        text-align: center;
    }
    footer .newsletter form input[name="Name"] {
        display: block;
        width: 100%;
        margin-bottom: 10px;
        padding: 10px 0px;
        text-indent: 10px;
    }
    footer .newsletter form input[type="image"] {
        width: 40px;
        float: right;
    }
    footer .newsletter form input[type="email"] {
        width: calc(100% - 64px);
        float: left;
    }
    footer .logo-footer img {
        display: block;
        width: auto;
        height: 130px;
        margin: 0 auto;
    }
    footer a.btn-white {
        background: #ffffff;
        padding: 12px 0;
        margin: 0 auto;
        display: block;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -o-border-radius: 5px;
        width: 100%;
        font-size: 16px;
    }
    footer .footer-down {
        display: block;
        margin: 0 auto;
        position: relative;
        width: 96%;
        margin-top: 20px;
        margin-bottom: 35px;
    }
    footer .footer-down li a {
        font-size: 13px;
    }
    footer .icon-scroll {
        font-size: 11px!important;
    }
    .heroBanner h2 {
        position: absolute;
        top: 27.5%;
        color: #ffffff;
        left: 5%;
        font-size: 2.75em;
        line-height: 1em;
        margin: 0 auto;
        min-width: 300px;
        max-width: 450px;
        width: 35%;
        display: block;
    }
    .heroBanner h4 {
        position: absolute;
        color: #FFFFFF;
        top: 45%;
        width: 80%;
        max-width: 280px;
        margin: 0 auto;
        font-size: 16px;
        line-height: 22px;
    }
    .quote-image {
        width: 100%;
    }
    .quote-image img {
        display: block;
        width: 100%;
    }
    .quote .quote-text {
        padding: 30px 0;
        width: 100% !important;
        box-sizing: border-box;
        display: inline-block!important;
        background: #e31738;
    }
    .quote.dark .quote-text {
        background: #212121;
    }
    /** testimonial styles **/
    .testimonial {
        width: 98%;
        margin: 0px auto 20px;
        max-width: 600px;
    }
    .stat-item {
        display: inline-block;
        width: 32%;
        padding: 8px;
    }
    .stat-item h3 {
        font-size: 28px;
    }
    .stat-item h5 {
        font-size: 14px !important;
    }
    .stat-item img {
        display: block;
        margin: 20px auto;
        height: 60px;
    }
    .aid-cover img {
        display: block;
        width: 75%;
        margin: 0 auto;
    }
    .course-locator .form-wrapper {
        background: #e31738;
        width: 40%;
        float: right;
        display: block;
        padding: 30px 0;
        min-height: 360px;
    }
    .course-locator .map-result {
        width: 60%;
        float: left;
    }
    .benefits ul li {
        display: inline-block;
        width: 40%;
        margin: 10px;
        vertical-align: top;
    }
    .benefits li img {
        max-height: 60px;
    }
    .video-thumb {
        display: block;
        width: 100%;
        vertical-align: top;
    }
    .story .quote-text {
        float: none;
        padding-top: 20px;
        vertical-align: top;
        padding-bottom: 20px;
        width: 90% !important;
    }
    #question {
        display: block;
        max-width: 700px;
        margin: 0 auto;
        position: relative;
    }
    #question h3 {
        font-size: 22px;
        line-height: 1.1em;
    }
    #question ul li {
        text-align: left;
        margin-bottom: 30px;
        background: url(../files/icon-q.jpg) no-repeat left top;
        padding: 0px 8px 0px 16px;
        background-size: 25px auto;
    }
    .subIndex>table>tbody>tr>td>table>tbody>tr>td {
        display: inline-block;
        width: 160px;
        margin: 10px;
    }
    .subIndex b>a {
        font-size: 24px;
        font-family: 'HelveticaNeueLT-BoldCondensed', sans-serif;
        font-weight: normal;
        line-height: 1.3em;
    }
    h1 {
        font-size: 32px;
    }
    h2 {
        font-size: 28px;
    }
    .article.transaction .back {
        transform: scale(0.75);
		margin-top: -5px;
		margin-right: 5px;
    }
}


/* small mobile screens */

@media (max-width: 481px) {
    h1 {
        font-size: 26px;
    }
    .heroBanner h2 {
        position: absolute;
        top: 25%;
        color: #fff;
        left: 0.5em;
        font-size: 2em;
        line-height: 1em;
        margin: 0;
        min-width: 300px;
        max-width: 450px;
        width: 90%;
        display: block;
    }
    .quote-image {
        float: none;
        width: 100%;
    }
    .quote .quote-text {
        padding: 20px 0;
        box-sizing: border-box;
        display: block !important;
        width: 90% !important;
    }
    a.btn-hollow {
        background: none !important;
        display: block;
        border: 3px solid;
        padding: 5px 0;
        border-radius: 5px;
        margin: 25px auto;
        max-width: 280px;
        width: 80%;
        font-size: 16px;
    }
    footer .logo-scroll {
        display: block;
        width: 30%;
        margin: 0 auto;
        position: static;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }
    footer .icon-scroll {
        display: none !important;
    }

    .links-right { padding-top: 56px;}

    .course-locator {
        text-align: center;
        color: #ffffff;
        width: 100%;
        margin: 0 auto;
        padding: 1px 0 0 0;
        max-height: none;
        overflow: auto;
    }
    .course-locator .form-wrapper {
        background: #e31738;
        width: 100%;
        float: none;
        display: block;
        padding: 30px 0;
        min-height: auto;
    }
    .course-locator .map-result {
        width: 100%;
        float: none;
    }
    .nav-content a>img {
        max-height: 32px;
    }
    .nav-content ul li {
        display: inline-block !important;
        width: auto;
        margin: 8px;
        text-align: center;
        vertical-align: top;
    }
    .nav-content a {
        font-size: 14px;
        line-height: 1.2em;
    }
    .subIndex>table>tbody>tr>td>table>tbody>tr>td {
        display: inline-block;
        width: 130px;
        margin: 10px;
    }
    .subIndex>table>tbody>tr>td>table>tbody>tr>td>table {
        border-spacing: 0px;
    }
    .subIndex td {
        font-size: 15px;
    }
    .subIndex b>a {
        font-size: 18px;
        font-family: 'HelveticaNeueLT-BoldCondensed', sans-serif;
        font-weight: normal;
        line-height: 1.3em;
    }
    .search.content table td table:nth-of-type(2) td {
        max-width: none;
        width: 48%;
        display: inline-block;
        margin: 0 auto;
        margin-bottom: 15px;
    }
    .search.content table td table:nth-of-type(2) tr {
        display: block;
        width: 96%;
        margin: 0 auto;
    }
    .article.welcome .box, .article.welcome .box a {
        width: 100%;     
        margin-bottom: 10px;
        text-align: center;
    }
    .article.welcome .box p {        
        margin: 10px 0;
        text-align: center;
    }    
    .article.transaction table table {
        margin: 0 auto 80px auto;
    }
    .article.transaction table table tr, .article.transaction table table td {
        display: block;
        text-align: left;
    }

	.article.transaction table table tr:first-child, 
	.article.transaction table table tr:nth-child(even),
	.article.transaction table table td:nth-child(even) { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	.article.transaction table table tr { border: 1px solid #ccc; }
	
	.article.transaction table table td {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 60%;
		height: 27px;
		box-sizing: border-box;
		line-height: 27px;
	}
	
	.article.transaction table table td:before {
		position: absolute;
		top: 0;
		left: 0;
		width: 35%;
		padding: 0 10px;
		line-height: 27px;
		white-space: nowrap;
		font-weight: bold;
	}
	.article.transaction table table td:nth-of-type(1):before { content: "Order No"; }
	.article.transaction table table td:nth-of-type(3):before { content: "Order Date"; }
	.article.transaction table table td:nth-of-type(5):before { content: "Expected Delivery Date"; }
	.article.transaction table table td:nth-of-type(7):before { content: "Status"; }
	.article.transaction table table td:nth-of-type(9):before { content: "Total"; }	
}

@media (max-width: 400px) {
    #theSearchBox {
        width: 205px;
    }
    .theSearchBox .inputbox {
        width: 120px!important;
    }
}


/* max-width 321px */

@media (max-width: 321px) {
    footer .icon-phone img {
        display: block;
        padding: 25px 0;
    }
    footer .footer-down a {
        font-size: 13px;
    }
}
