

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

img {
  border: 0;
}

/**
 * Apply a natural box layout model to all elements
 */
*,
*:before,
*:after {
  box-sizing:border-box;
}

/**
 * 1. default to sans-serif
 * 2. prevent mobile browsers' text resize after orientation change
 */
html {
  font-family: sans-serif; /* 1 */
  -webkit-text-size-adjust:none; /* 2 */
}

body {
  line-height: 1;
}

b,
strong,
.strong {
  font-weight: bold;
}

i,
em,
.em {
  font-style: italic;
}

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Lists style is superfluous in most cases
 */
ol,
ul {
  list-style: none;
}

/**
 * Remove the gray background color from active links in IE 10.
 */
a { background: transparent; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small,
.small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/**
 * Remove default margin
 */
figure {
  margin: 0;
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Fixes inheritance on Safari
 * 2. Remove any OS specific style from form elements
 * 3. Remove default spacings
 */
button,
select,
input,
textarea {
  font-family: inherit; /* 1 */
  -webkit-appearance:none; /* 2 */
  border-radius:0; /* 2 */
  margin: 0; /* 3 */
  padding: 0; /* 3 */
}

/**
 * Remove additional margin an numeric controls on Android's stock browser
 */
input[type="number"]::-webkit-inner-spin-button, 
input[type="number"]::-webkit-outer-spin-button { 
  -webkit-appearance:none; 
  margin: 0; 
}

/**
 * appearance:none would completely hide checkboxes/radios.
 * It's up to the developer to decide here.
 */
input[type="checkbox"] {
  -webkit-appearance:checkbox;
}
input[type="radio"] {
  -webkit-appearance:radio;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * 1. Fixes iOS 5.1 bug where checkbox + label were not pressable
 */
label {
  cursor: pointer; /* 1 */
}


/**
 * Remove standard marker from details > summary
 */
summary::-webkit-details-marker { display: none; }

/**
 * 1. Fixes `.live` JS binds for iOS 5.1
 */
summary {
  cursor: pointer; /* 1 */
  outline-width: 0;
}


hr {
  box-sizing:content-box;
  height: 0;
  margin-bottom: 1em;
  margin-top: 1em;
}


/**
 * Remove table spacings
 */
 table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* Remove default asset in the select for windows phone */
select::-ms-expand {display:none;}



.btn {
  -webkit-appearance:none;
  border: 0;
  cursor: pointer;
  display: block;
  font-weight: normal;
  font-size: 100%;
  line-height: 1;
  margin: 0;
  padding: 0;
  text-align: center;
  text-decoration: none;
  -webkit-user-select:none;
  vertical-align: middle;
  white-space: normal;
  width: 100%;
}

/**
 * <a>'s' content is not vertically centered by default, while that happens on
 * input tags. We can make this behaviour consistent by using flex.
 */
a.btn {
  display: -webkit-box;
  display: -webkit-flex;
  display:     -ms-flex;
  display:     -ms-flexbox;
  display:         flex;
        -webkit-box-pack: center;
  -webkit-justify-content:center;
      -ms-justify-content:center;
            -ms-flex-pack:center;
          justify-content:center;
  -webkit-align-content:center;
     -ms-flex-line-pack:center;
      -ms-align-content:center;
          align-content:center;
  -webkit-box-orient: vertical !important;
  -webkit-flex-direction:column;
      -ms-flex-direction:column;
          flex-direction:column;
}

/**
 * By default, .btn is expanded at 100%.
 * This turns it back inline, at content-based width.
 */
.btn-inline {
  display: inline-block;
  width: auto;
}


/**
 * TEXTFIELD (ex. <input type="text">)
 * --------------------------------------------------------------------------
 *
 * We're using a class, since many input types are availables.
 */
.textfield {
  -webkit-appearance:none;
  border: 1px solid #CCC;
  border-radius:0;
  display: block;
  margin: 0;
  overflow: auto;
  padding: 0;
  vertical-align: bottom;
  width: 100%;
}


/**
 * TEXTAREA
 * --------------------------------------------------------------------------
 * 
 * Normalizing textarea layout. Feel free to create a specific class, if
 * necessary.
 */
textarea {
  -webkit-appearance:none;
  border: 1px solid #CCC;
  border-radius:0;
  display: block;
  margin:0;
  min-height: 4.8em;
  padding: 0;
  width: 100%;
}


/**
 * DROPDOWN
 * --------------------------------------------------------------------------
 * 
 * 1. Bubbles .live click event even on non-<select> elements
 * 2. Just like buttons, we mostly need dropdowns to expand at max-width
 */
.dropdown {
  border: 1px solid #CCC;
  border-radius:0;
  cursor: pointer; /* 1 */
  display: block; /* 2 */
  width: 100%; /* 2 */
}



.group {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}

.group > * {
  display: table-cell;
  float: none;
  width: 100%;
  vertical-align: top;
}




a {
    text-decoration: underline;
    color: #1E6291;
}




.btn {

}
.btn-primary,
.btn-secondary,
.btn-tertiary { /* without .btn gives the colors/sizes only */
    font-size: 14px;
    text-transform: capitalize;
    min-height: 40px;
    text-align: center;
    text-decoration: none;
}

.btn-primary {
    color: #FFFFFF;
    padding: 10px;
    background: #E68C40;
}

.btn-secondary {
    padding: 10px;
    color: #1E6291;
    background: #D7E4E3;
}

.btn-tertiary {
    padding: 10px;
    color: #fff;
    background: #4B81A7;
}

/**
 * SIZES (normal by default)
 */
.btn-xs {
    /* extra small button */
}

.btn-sm {
    /* small button */
}

.btn-lg {
    min-height: 50px;
}

.btn-xl {
    /* extra large button */
}



.error-box,
.success-box,
.warning-box {
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #CC0000;
    color: #CC0000;
}
.error-box *,
.success-box *,
.warning-box * {
    color: inherit !important;
}
.success-box {
    border-color: #4A7D00;
    color: #4A7D00;
}
.warning-box {
    border-color: #E68C40;
    color: #E68C40;
}



::-webkit-input-placeholder { color: #5D88A7; opacity: 0.8; }
::-moz-placeholder { color: #5D88A7; opacity: 0.8; }
:-ms-input-placeholder { color: #5D88A7; opacity: 0.8; }

input:focus, select:focus, textarea, button:focus, a.btn:focus,
input:active, select:active, textarea:active, button:active, a.btn:active { outline: none; outline-color: transparent; outline-style: none;  -webkit-tap-highlight-color:rgba(0, 0, 0, 0); -webkit-tap-highlight-color:transparent; } /* remove standard */
input:not([type="submit"]):not([type="hidden"]):not([type="range"]):focus, select:focus, textarea:focus { border: 1px solid #1E6291; } /* my standard */
input[type="submit"]:active, button:active, a.btn:active { opacity: 0.8 !important; }

.error:not(.disabled-area) input:not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), .error:not(.disabled-area) select, .error:not(.disabled-area) textarea,
input.error:not(.disabled-area):not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), select.error:not(.disabled-area), textarea.error:not(.disabled-area) { border: 1px solid #CC0000; }
.error input[type="checkbox"] + label, .error input[type="radio"] + label,
input[type="checkbox"].error + label, input[type="radio"].error + label, .error label { color: #CC0000 !important; } 
.error .normal-text{ color: #1E6291;}

.disabled input:not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), .disabled select, .disabled textarea,
input.disabled:not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), select.disabled, textarea.disabled,
input.readonly:not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), select.readonly, textarea.readonly,
input[disabled]:not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), select[disabled], textarea[disabled],
input[readonly]:not([type="submit"]):not([type="hidden"]):not([type="range"]):not([type="checkbox"]):not([type="radio"]), select[readonly], textarea[readonly] { opacity: 1; background-color: #FCFCFC; pointer-events: none; }

.disabled input[type="submit"], input[type="submit"].disabled, input[type="submit"][disabled],
.disabled button, button.disabled, button[disabled],
.disabled input[type="radio"], input[type="radio"].disabled, input[type="radio"][disabled],
.disabled input[type="submit"], input[type="submit"].disabled, input[type="submit"][disabled],
.disabled input[type="range"], input[type="range"].disabled, input[type="range"][disabled],
.disabled a.btn, a.btn.disabled, a.btn[disabled] { opacity: 0.5; pointer-events: none; }


.textfield {
    border: 1px solid #979797;
    padding: 0px 10px;
    font-size: 11px;
    height: 35px;
    color: #5D88A7;
    background-color: #FFFFFF;
}


textarea {
    border: 1px solid #979797;
    padding: 10px;
    font-size: 11px;
    min-height: 70px;
    color: #5D88A7;
    background-color: #FFFFFF;
}


.dropdown {  
    border: 1px solid #979797;
    padding: 0px 30px 0px 10px;
    font-size: 11px;
    height: 35px;
    color: #5D88A7;
    background-color: #FFFFFF;
    background-size: auto 18px;
    background-position: 97% center;
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_orange_up_down.w_1513941957000hc.png);
}


label {
    display: inline-block;
    color: #1E6291;
    margin-bottom: 10px;
}


.field.checkbox > label,
.field.radio > label {
    margin-bottom: 15px;
}

.checkbox input[type="checkbox"],
.radio input[type="radio"] { display: none; }

.checkbox input[type="checkbox"] + label,
.radio input[type="radio"] + label {
    display: table-cell;
    vertical-align: middle;
    height: 30px;
    color: #5D88A7;
    padding-left: 50px;
    min-height: 30px;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/radio_blue_off.w_1513941957000hc.png);
    background-size: 30px 30px;
    background-position: left top;
    background-repeat: no-repeat;
    -webkit-transition:100ms linear background-image;
}
.radio input[type="radio"]:checked + label {
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/radio_blue_on.w_1513941957000hc.png);
    /* PLEAS001UE-486 */
    background-size: 30px 30px;
    background-position: left top;
    background-repeat: no-repeat; 
    /* END PLEAS001UE-486 */
}
.checkbox input[type="checkbox"] + label {
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/checkbox_white_off.w_1513941957000hc.png);
    min-height: 30px;
}
.checkbox input[type="checkbox"]:checked + label {
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/checkbox_white_on.w_1513941957000hc.png);
    /* PLEAS001UE-499 */
    background-size: 30px 30px; 
    background-position: left top;
    background-repeat: no-repeat;
}




.field {
    margin-bottom: 20px;
    position: relative;
}
.field.inline-fields {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}

.field.inline-fields > div {
  display: table-cell;
  float: none;
  vertical-align: top;
  margin: 0px;
}
.field.inline-fields > div:not(:last-child) { border-right: 10px solid rgba(255, 255, 255, 0); }
.field.inline-fields > div:not(:first-child) { border-left: 10px solid rgba(255, 255, 255, 0); }
.field .fake-label { display: none !important; } /*PLEAS001UE-571*/
.field.inline-fields .fake-label { /*PLEAS001UE-571*/
    display: inline-block !important;
    margin-bottom: 10px;
    height: 14px;
}

.field.ajax-on-field::after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    z-index: 5;
    right: 7.5px;
    top: 31.5px;
    background: url(https://pleasantholidays.usablenet.net/h5/images/loader_blue.w_1513941957000hc.png) no-repeat center;
    background-size: 20px 20px;
    animation: spinLoader 0.5s linear infinite;
}
@keyframes spinLoader { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

.field .error-text, .outer-field-error { 
    padding-top: 10px;
    color: #CC0000; 
}

.field .radio-inner:not(:last-child) {
    margin-bottom: 20px;
}


/*
 * Field cancel PLEAS001UE-370
 */
.field .cancel-field {
    display: none;
    width: 20px;
    height: 20px;
    position: absolute;
    z-index: 5;
    right: 7.5px;
    top: 31.5px;
    background: url(https://pleasantholidays.usablenet.net/h5/images/cancel_field.w_1516383274000hc.png) no-repeat center;
    background-size: 20px 20px;
    cursor: pointer;
}
.field.ajax-on-field .cancel-field {
    display: none !important;
}
.field.js_cancel_wrapper input.textfield {
    padding-right: 30px;
}
/* /PLEAS001UE-370 */


/**
 * GROUPING THINGS (like buttons, inputs and so on..)
 * --------------------------------------------------------------------------
 */
.group > *:first-child:not(:last-child) {}

.group > *:last-child:not(:first-child) {}

.group > *:not(:first-child):not(:last-child) {}



.title {
    font-family: 'serif';
    color: #1E6291;
    margin-bottom: 10px;
    text-decoration: none;
}
.title a {
    text-decoration: none;
}
.main-title { /* .title.main-title for standard main title and so on... */
    font-size: 16px;
    color: #1E6291;
}
.sub-title {
    font-size: 14px;
    color: #1E6291;
}
.title-font { /*PLEAS001UE-730*/
    font-family: 'serif';
}




p {
    margin-bottom: 10px;
}




ul.list {
    list-style-type: disc;
    margin-left: 2em;
}
ol.list {
    list-style-type: decimal;
    margin-left: 2em;
}


dl { line-height: 1.8em; }
dt {
    font-weight: bold;
}
dt:not(:first-child) { margin-top: 10px; }



[data-loadmore-list] > * {
    -webkit-transition:opacity 750ms;
}



.fs-content h1, .fs-content h2, .fs-content h3,
.fs-content h4, .fs-content h5, .fs-content h6 {
    color: #1E6291;
    font-family: 'serif'; /*PLEAS001UE-730*/
}
.fs-content h1 {
    font-size: 16px;
    margin-bottom: 10px;
}
.fs-content h2, .fs-content h3 { /*PLEAS001UE-730*/
    font-size: 14px;
    margin-bottom: 10px;
}
.fs-content ul {
	margin-bottom: 10px;
    list-style-type: disc;
    margin-left: 1.5em;
}
.fs-content ul ul {
    list-style-type: circle;
}
.fs-content ul ul ul {
    list-style-type: square;
}
.fs-content li {
	margin-bottom: 5px;
}
.fs-content ol {
	list-style-type: decimal;
	margin-left: 1.5em;
}
.fs-content blockquote {
	margin: 20px;
	font-size: 11px;
}
.fs-content table {
	margin-bottom: 10px;
	border: 1px solid #CCCCCC;
}
.fs-content table thead,
.fs-content table tbody {

}
.fs-content table th,
.fs-content table td {
	padding: 10px;
	vertical-align: middle;
	text-align: center;
}
.fs-content table th {
	color: #FFFFFF;
	background-color: #1E6291;
	font-weight: bold;
}
.fs-content a {
	word-wrap: break-word;
}
.fs-content pre {
	white-space: normal;
}
}





.box {
	position: relative;
}
.box.box-outer {
	margin: 10px;
}
.box.box-outer-db {
	margin: 20px 10px;
}
.box.box-inner {
	padding: 10px;
}
.box.box-inner-db {
	padding: 20px 10px;
}
.box.box-inner > :last-child,
.box.box-inner-db > :last-child {
	margin-bottom: 0px;
}
/*.box.box-gaps {
	margin-top: 10px;
	margin-bottom: 10px;
}
.box.box-sides {
	margin-right: 10px;
	margin-left: 10px;
}
.box.box-gap {
	margin-bottom: 10px;
}*/
.box.box-light-blue { /*PLEAS001UE-884*/
	background-color: #CCE4F4;
}

.box .field.fill-bottom {
	margin-bottom: 0px;
}
.box.box-inner .fill-bottom {
	margin-left: -10px;
	margin-right: -10px;
	margin-bottom: -10px;
}

/*.box.force-bottom-box {
	position: relative;
}*/
.box .to-box-bottom {
	position: absolute;
	top: auto;
	bottom: 0px;
	left: 0px;
	right: 0px;
}


/* scroll box */
.box-scroll {
	border: 1px solid #5D88A7;
	padding: 10px;
	overflow-y: scroll;
	height: 300px;
	height: 50vh;
	box-shadow:inset 0px 7px 10px -8px #5D88A7, inset 0px -7px 10px -8px #5D88A7;
}
@media (orientation: landscape) {
	.box-scroll {
		height: 250px;
		height: 70vh;
	}
}



.group.group-spaced > :not(:last-child) { border-right: 10px solid rgba(255, 255, 255, 0); }
.group.group-spaced > :not(:first-child) { border-left: 10px solid rgba(255, 255, 255, 0); }

.group.group-free {
	table-layout: auto;
}
.group.group-full-height {
	height: 100%;
}
.group.group-full-height > * {
	height: inherit;
}
.group.group-full-height > * > * {
	height: inherit;
}

@media (orientation: landscape) {
	.group-in-landscape {
	  display: table;
	  width: 100%;
	  table-layout: fixed;
	  border-collapse: separate;
	}
	.group-in-landscape > * {
	  display: table-cell;
	  float: none;
	  width: 100%;
	  vertical-align: top;
	}
	.group-in-landscape.group-spaced > div:not(:last-child) { border-right: 10px solid rgba(255, 255, 255, 0); }
	.group-in-landscape.group-spaced > div:not(:first-child) { border-left: 10px solid rgba(255, 255, 255, 0); }
}

.multigroup {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
}
.multigroup > * {
	display: table-row;
	width: 100%;
}
.multigroup > * > * {
	display: table-cell;
	width: 100%;
	vertical-align: top;
}



.switch {
	display: table;
	width: 100%;
	table-layout: fixed;
}
.switch > * {
	display: table-cell;
	height: 40px;
	text-align: center;
	vertical-align: middle;
	color: #1E6291;
	text-decoration: none;
	background-color: #D7E4E3;
	width: 100%;
}
.switch > .selected {
	background-color: #4B81A7;
	color: #FFFFFF;
}
.switch > :not(.selected) + :not(.selected) {
	border-left: 1px solid #9EBEBE; /* looks better than #4B81A7 */
}

.tabs {
	display: table;
	width: 100%;
	table-layout: fixed;
}
.tabs > * {
	display: table-cell;
	height: 50px;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	color: #CCE4F4;
	font-weight: bold;
	background-color: #4B81A7;
	width: 100%;
	padding: 5px;
}
.tabs > :not(.selected) + :not(.selected) {
	border-left: 1px solid #1E6291;
}
.tabs > .selected {
	background-color: #CCE4F4;
	color: #1E6291;
	pointer-events: none;
}




/* GENERIC */
[data-details] {

}
[data-details] > [data-summary] {
	cursor: pointer;
	/*-webkit-transition:100ms background-image;*/
}
[data-details] > :not([data-summary]):not([data-stay-visible]) {
	-webkit-transition:opacity 250ms;
}
[data-details]:not([data-open]) > :not([data-summary]):not([data-stay-visible]) {
	display: none;
}

[data-details].expand-more-less [data-summary] .expand-less,
[data-details][data-open].expand-more-less [data-summary] .expand-more {
	display: none;
}
[data-details].expand-more-less [data-summary] .expand-more,
[data-details][data-open].expand-more-less [data-summary] .expand-less {
	display: inline-block;
}

[data-details].expand-block > [data-summary] + .box.box-outer,
[data-details].expand-block > [data-summary] + .box.box-outer-db {
	/*margin-top: 0px;*/
}

/* BLUE plus */
[data-details].expand-block.expand-blue > [data-summary] {
	background-color: #1E6291;
	color: #FFFFFF;
	padding: 20px 40px 20px 10px;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/expand_white_plus.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: 95% center;
	background-position: right 20px center;
	background-size: auto 20px;
	font-size: 14px;
}
[data-details].expand-block.expand-blue[data-open] > [data-summary] {
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/expand_white_minus.w_1513941957000hc.png);
}
[data-details].expand-block.expand-blue + [data-details].expand-block.expand-blue {
	border-top: 1px solid #FFFFFF;
}
[data-details].expand-block.expand-blue.expand-selected > [data-summary] {
	background-color: #4A7D00;
}
[data-details].expand-block.expand-blue > [data-summary] a {
	color: #FFFFFF; /* PLEAS001UE-598 */
}

/* WHITE + grey arrow */
[data-details].expand-block.expand-white {
	border-top: 1px solid #1E6291;
	border-bottom: 1px solid #1E6291;
}
[data-details].expand-block.expand-white > [data-summary] {
	color: #1E6291;
	padding: 20px 40px 20px 0px;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_medgrey_down.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 12px;
	font-size: 14px;
}
[data-details].expand-block.expand-white[data-open] > [data-summary] {
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_medgrey_up.w_1513941957000hc.png);
}
[data-details].expand-block.expand-white + [data-details].expand-block.expand-white {
	margin-top: -1px;
}
[data-details].expand-block.expand-white.pale-borders { /*PLEAS001UE-730*/
	border-top: 1px solid #CCE4F4;
	border-bottom: 1px solid #CCE4F4;
}

.no-expand-block.expand-white {
	border-top: 1px solid #1E6291;
	border-bottom: 1px solid #1E6291;
}
.no-expand-block.expand-white + .no-expand-block.expand-white,
[data-details].expand-block.expand-white + .no-expand-block.expand-white {
	margin-top: -1px;
}
.no-expand-block.expand-white a {
	color: #1E6291;
    padding: 20px 40px 20px 0px;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: auto 12px;
    font-size: 14px;
    display: block;
}


/* WHITE + orange triangle */
[data-details].expand-block.expand-orange-indicator {
	border-bottom: 1px solid #1E6291;
}
[data-details].expand-block.expand-orange-indicator > [data-summary] {
	color: #1E6291;
	padding: 20px 40px 20px 10px;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/expand_orange_down.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: 95% center;
	background-position: right 20px center;
	background-size: auto 10px;
	font-size: 14px;
}
[data-details].expand-block.expand-orange-indicator[data-open] > [data-summary] {
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/expand_orange_up.w_1513941957000hc.png);
}

/* ONLY arrow inline */
[data-details].expand-block.expand-arrow > [data-summary] {
	color: #1E6291;
	position: relative;
}
[data-details].expand-block.expand-arrow > [data-summary]::after {
	position: absolute;
	bottom: 2px;
	content: '';
	display: inline-block;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_medgrey_down.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: auto 10px;
	width: 25px;
	height: 10px;
}
[data-details].expand-block.expand-arrow[data-open] > [data-summary]::after {
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_medgrey_up.w_1513941957000hc.png);
}

/* ONLY arrow inline */
[data-details].expand-block.expand-orange-arrow > [data-summary] {
	display: inline-block;
}
[data-details].expand-block.expand-orange-arrow > [data-summary]::after {
	content: '';
	display: inline-block;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/expand_orange_down.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: auto 8px;
	width: 18px;
	height: 8px;
	vertical-align: baseline;
}
[data-details].expand-block.expand-orange-arrow[data-open] > [data-summary]::after {
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/expand_orange_up.w_1513941957000hc.png);
}

/* NESTED */
.expand-nested.expand-block.expand-blue > :not([data-summary]) {
	padding-left: 10px;
	padding-right: 10px;
}
.expand-nested.expand-block.expand-blue .expand-block.expand-white:first-child,
.expand-nested.expand-block.expand-blue .no-expand-block.expand-white:first-child {
	border-top: none;
}
.expand-nested.expand-block.expand-blue .expand-block.expand-white:last-child,
.expand-nested.expand-block.expand-blue .no-expand-block.expand-white:last-child {
	border-bottom: none;
}
.expand-nested.expand-block.expand-blue > :last-child {
	border-bottom: 1px solid #1E6291;
}

/* INACTIVE */
[data-details].expand-block.expand-inactive > [data-summary] {
	pointer-events: none;
	cursor: default;
}

/* SAME HEIGHT vertical alignment for summary */
[data-details].expand-block.expand-valign > [data-summary] {
	display: table;
	table-layout: fixed;
	width: 100%;
	padding-top: 0px;
	padding-bottom: 0px;
}
[data-details].expand-block.expand-valign > [data-summary] > * {
	display: table-cell;
	vertical-align: middle;
	height: 50px; /* 20 + standard line height + 20 */
}





/* Breadcrumbs */
.breadcrumbs {
    display: table;
    table-layout: fixed;
    border-bottom: 1px solid #1E6291;
	margin-bottom: 20px;
	width: 100%;
	position: relative;
}
.breadcrumbs > *:not(.js_back):not(.js_back_panel) {
	display: table-cell;
    text-align: center;
    vertical-align: middle;
    height: 40px;
    color: #E68C40;
    font-size: 14px;
    font-family: 'serif';
    width: 100%;
    padding: 2px 50px;
}
.breadcrumbs > .js_back,
.breadcrumbs > .js_back_panel {
	display: block;
	position: absolute;
	height: 100%;
	width: 50px;
	left: 0px;
	top: 0px;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_medgrey_left.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: 46% center;
	background-size: auto 16px;
}

/* Stars rating */
.stars-container {
	display: block;
	position: relative;
	height: 12px;
	width: 60px;
    background: url(https://pleasantholidays.usablenet.net/h5/images/star_orange_full.w_1513941957000hc.png) left center repeat-x;
    background-size: 12px 12px;
}
.stars-container .stars-cover {
	display: block;
	position: absolute;
	height: 12px;
	right: 0px;
	top: 0px;
	background-color: #FFFFFF;
	z-index: 1;
}

/* Header with See All link */
.header-group {
    display: table;
    width: 100%;
    table-layout: fixed;
    margin-bottom: 10px;
}
.header-group > * {
    display: table-cell;
    vertical-align: baseline;
    width: 100%;
    text-transform: capitalize;
}
.header-group > :last-child:not(:first-child) {
    text-align: right;
    width: 80px;
}

/* Maps loader */
.map {
	position: relative;
}
.map .map-loader {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -30px;
	margin-top: -30px;
	height: 60px;
	width: 60px;
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/location_blue.w_1513941957000hc.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
	animation: rotation 2s linear infinite;
}
@keyframes rotation {
	0% { transform: rotateY(0deg); }
	100% { transform: rotateY(360deg); }
}

/* Separators */
hr {
  margin-bottom: 10px;
  margin-top: 0px;
  border: 0;
  display: block;
  height: 0px;
  border-bottom: 1px solid #979797;
}
hr.line-full-width {
  margin-left: -10px;
  margin-right: -10px;
}
hr.line-blue {
  border-bottom: 1px solid #1E6291;
}
hr.line-light-blue {
  border-bottom: 1px solid #CCE4F4;
}
hr.line-med-grey {
  border-bottom: 1px solid #979797;
}
hr.line-light-grey {
  border-bottom: 1px solid #CCCCCC;
}

/* Tables */
.table-wrapper {
	overflow-x: scroll;
}

table.table-default {
	border: 1px solid #CCCCCC;
	min-width: 100%;
}
table.table-default thead,
table.table-default tbody {

}
table.table-default th,
table.table-default td {
	padding: 10px;
	vertical-align: middle;
	text-align: center;
}
table.table-default th {
	color: #FFFFFF;
	background-color: #1E6291;
	font-weight: bold;
}

table.table-row-sep tbody tr:not(:last-child) td {
	border-bottom: 1px solid #CCCCCC;
}

table.table-rounded {
	border-collapse: separate;
	border-radius:5px;
}
table.table-rounded > :first-child tr:first-of-type th:first-of-type,
table.table-rounded > :first-child tr:first-of-type td:first-of-type {
	border-top-left-radius: 5px;
}
table.table-rounded > :first-child tr:first-of-type th:last-of-type,
table.table-rounded > :first-child tr:first-of-type td:last-of-type {
	border-top-right-radius: 5px;
}
table.table-rounded > :last-child tr:last-of-type th:first-of-type,
table.table-rounded > :last-child tr:last-of-type td:first-of-type {
	border-bottom-left-radius: 5px;
}
table.table-rounded > :last-child tr:last-of-type th:last-of-type,
table.table-rounded > :last-child tr:last-of-type td:last-of-type {
	border-bottom-right-radius: 5px;
}

/* info icon tooltip */
.info-blue-icon {
	background-image: url(https://pleasantholidays.usablenet.net/h5/images/info_blue.w_1513941957000hc.png);
    background-repeat: no-repeat;
    background-size: 12px auto;
    background-position: 50% 50%;
    width: 12px;
    height: 12px;
    display: inline-block;
}

/* PAGINATION */
.pagination .pagination-count {
	margin: 20px 0px;
	text-align: center;
	font-size: 14px;
}
.pagination .group > * {
	vertical-align: middle;
	text-align: center;
	height: 40px;
	border-top: 1px solid #FFFFFF;
	padding: 10px 0px;
}
.pagination .group > :not(:first-child) {
	border-left: 1px solid #FFFFFF;
}
.pagination .pagination-nav > * {
	width: auto;
}
.pagination .selected {
	background-color: #1E6291;
	color: #FFFFFF;
	pointer-events: none;
}
.pagination .pagination-nav > :first-child,
.pagination .pagination-nav > :last-child {
	width: 20%;
}
.pagination .pagination-all {
	margin-top: 20px;
	text-align: center;
	font-size: 14px;
}




.standard-loader {
	display: block;
    width: 50px;
    height: 50px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
.standard-loader::after {
    content: '';
    display: block;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0px;
    left: 0px;
    background: url(https://pleasantholidays.usablenet.net/h5/images/loader_blue.w_1513941957000hc.png) no-repeat center;
    background-size: 50px 50px;
    animation: standardLoader 1s linear infinite;
}
@keyframes standardLoader { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }



.ribbon-bar {
	display: table;
	width: 100%;
	table-layout: fixed;
	margin-bottom: 10px;
}
.ribbon-bar > * {
	display: table-cell;
	height: 50px;
    font-family: sans-serif; /* forces the sans even if .title used */
    color: #FFFFFF;
    background-color: #1E6291;
    vertical-align: middle;
    padding: 0px 10px;
    width: 100%;
}
.ribbon-bar.bar-sm > * {
  height: 40px;
}
.ribbon-bar a,
.ribbon-bar > * > * {
	color: inherit;
}
.ribbon-bar.light-bar > * {
	background-color: #CCE4F4;
	color: #1E6291;
}
.ribbon-bar.orange-bar > * {
	background-color: #E68C40;
}
.ribbon-bar.green-bar > * {
	background-color: #4A7D00;
}


.arrow-orange-right {
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_orange_right.w_1513941957000hc.png);
    background-size: auto 12px;
    background-position: right center;
    background-repeat: no-repeat;
    padding-right: 15px;
}
.arrow-filled-blue-right { /*PLEAS001UE-730*/
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_filled_blue_right.w_1537264673000hc.png);
    background-size: auto 8px;
    background-position: right center;
    background-repeat: no-repeat;
    padding-right: 11px;
}
.arrow-filled-blue-left { /*PLEAS001UE-730*/
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/arrow_filled_blue_left.w_1537264673000hc.png);
    background-size: auto 8px;
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 11px;
}


.orange {
	color: #E68C40;
}
.orange a {
	color: #E68C40;
}
.blue {
	color: #1E6291;
}
.blue a {
	color: #1E6291;
}


.next-label-info {
	display: inline-block;
	float: right;
	margin-bottom: 10px;
}


.text-small {
	font-size: 11px;
}
.text-big {
	font-size: 14px;
}
.text-bigger {
	font-size: 16px;
}

.lh-none {
	line-height: 0px;
}



.show-in-landscape {
	display: none !important;
}
@media (orientation:landscape) {
	.hide-in-landscape {
		display: none !important;
	}
	.show-in-landscape {
		display: block !important;
	}
	.show-in-landscape.show-inline {
		display: inline-block !important;
	}
	.group > .show-in-landscape {
		display: table-cell !important;
	}
}

.carousel-wrapper {
	overflow: hidden;
	height: 0px; /* this becomes 'auto' once carousels are loaded */
}




.range-plugin {
	display: block;
	padding-left: 14px;
	padding-right: 14px;
}
.range-wrapper {
	display: block;
	position: relative;
	height: 28px;
}
.range-plugin .range-rail,
.range-plugin .range-bar {
	display: block;
	position: absolute;
	height: 5px;
	left: 0px;
	right: 0px;
	top: 11.5px;
	background-color: #CCCCCC;
	border-radius:2.5px;
	z-index: 2;
}
.range-plugin .range-bar {
	z-index: 4;
	background-color: #E68C40;
}
.range-plugin .range-inf,
.range-plugin .range-sup {
	display: block;
	position: absolute;
	top: 0px;
	left: -14px;
	height: 28px;
	width: 28px;
	border-radius:14px;
	background-color: #1E6291;
	z-index: 6;
	box-shadow:0px 2px 2px 1px rgba(0,0,0,0.2);
}
.range-plugin .range-sup {
	left: auto;
	right: -14px;
}




body {
    font-size: 12px;
    color: #5D88A7;
    font-family: sans-serif;
    line-height: 1.2;
}
.site-wrapper{
    background: #FFFFFF;
    box-shadow:-10px 0px 12px -10px rgba(0,0,0,0.2);
}




.main-header {
    display: table;
    table-layout: fixed;
    width: 100%;
    width: 100vw;
    background: #1E6291;
}
.main-header > * {
    display: table-cell;
    background-repeat: no-repeat;
    background-position: center center;
    height: 50px;
}
.header-menu {
    width: 50px;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/menu_white.w_1513941957000hc.png);
    background-size: auto 20px;
    cursor: pointer;
}
.menu-placeholder { /*PLEAS001UE-497*/
    width: 50px;
}
.header-logo {
    width: 100%;
    max-width: 100%;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/header_white_hr.w_1737367849662hc.png);
    background-size: auto 24px;
}
.header-logo-partner { /*PLEAS001UE-361*/
    display: block;
    width: 100%;
    max-width: 100%;
    text-align: center;
}
.header-logo-partner > img { /*PLEAS001UE-361*/
    max-width: 100%;
    max-height: 100%;
}
/* CR PLEAS001UE-49 - replaced by phone
.header-account {
    width: 50px;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/account_white.w_1513941957000hc.png);
    background-size: auto 24px;
}*/
.header-phone {
    width: 50px;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/phone_white.w_1513941957000hc.png);
    background-size: auto 24px;
}
.header-phone-placeholder { /*PLEAS001UE-361*/
    width: 50px;
}

/* Fix for android-stock browser and width:100% fixed elements. */
@media screen and (orientation:landscape) {
    .androidStock .main-header { width: 100%; }
}


/* MENU
 * --------------------------------------------------------------------------
 *
 * Suggested name: `.main-menu`
 */
.menuize_panel {
    background: #FFF;
}


.main-menu {

}
.main-menu li {
    display: table;
}
.main-menu li:not(.menu-user) {
    width: 100%;
}
.main-menu li > * {
    display: table-cell;
    vertical-align: middle;
    height: 40px;
    text-decoration: none;
    font-size: 14px;
    color: #1E6291;
    padding: 0px 10px;
}
.main-menu li.menu-user > * {
    font-size: 16px;
    height: 50px;
}
.main-menu li.menu-user > a {
    color: #E68C40;
}
.main-menu li.menu-user > .menu-sep::before {
    content: "";
    display: block;
    border-left: 1px solid #1E6291;
    height: 20px;
}
.main-menu li > .menu-sep {
    padding: 0px;
}
.main-menu li > :first-child:not(.selected) {
    padding-left: 20px;
}
.main-menu li > .selected {
    background-color: #CCE4F4;
    color: #FFFFFF;
    border-left: 10px solid #1E6291;
}




main {
    /* margin collapse fix */
    padding-top: 1px;
    margin-top: -1px;
    padding-bottom: 1px;
    margin-bottom: -1px;
}



.main-footer {
    padding-bottom: 15px; /*PLEAS001UE-361*/
}
.main-footer a {
    color: #5D88A7;
    display: block;
}
.main-footer .footer-expands a {
    text-decoration: none;
    margin: 15px 10px;
}
.main-footer .footer-expands ul {
    padding: 5px 0px 15px;
}
.main-footer .footer-expands a {
    text-decoration: none;
}
.main-footer .footer-expands .expand-block:last-child ul {
    border-bottom: 1px solid #1E6291;
}
.main-footer .footer-legal ul {
    padding: 10px 25%;
    text-align: center;
}
.main-footer .footer-legal a {
    padding: 10px 0px;
    text-align: center;
}
.main-footer .footer-phone {
    background-color: #CCE4F4;
    text-align: center;
}
.main-footer .footer-phone a {
    color: #1E6291;
    display: inline-block;
    padding: 10px 20px 10px 50px;
    font-size: 18px;
    background-image: url(https://pleasantholidays.usablenet.net/h5/images/phone_blue.w_1513941957000hc.png);
    background-repeat: no-repeat;
    background-position: 95% center;
    background-position: 20px center;
    background-size: auto 20px;
    text-decoration: none;
}
.main-footer .footer-disclaimer {
    font-size: 11px;
    padding: 20px 10px 10px;
    text-align: center;
    border-top: 1px solid #1E6291;
}
.session-id-link {
    display: block;
    width: 20px;
    height: 20px;
    margin: 0px auto;
    background: url(https://pleasantholidays.usablenet.net/h5/images/arrow_circle_lightgreen_down.w_1513941957000hc.png) no-repeat center center;
    background-size: auto 20px;
    /*margin-bottom: 15px; PLEAS001UE-361*/
}
.session-id-panel label {
    margin-bottom: 0px;
}
.main-footer .footer-phone + .session-id-link { /*PLEAS001UE-631*/
    margin-top: 15px;
}




.panel {
    width: 100%;
    background: #FFFFFF;
}
/* PLEAS001UE-927 PLEAS001UE-928 .newChrome .panel {
    position: fixed !important;
}*/
.overlay, .ui_stop_overlay, .ui_stop_main { /* ui_stop_main is inside main stack, not the same of other overlays */
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 300;
    top: 0;
    display: none;
}
.overlay {
    background: rgba(0,0,0,0.2);
    z-index: 299; /* moving .overlay under .ui_stop_overlay */
}
.ui_stop_main {
    cursor: pointer; /* allow blur to happen PLEAS001UE-455 */
}

.hasFixed.overflowScroll .scrollable {
    -webkit-overflow-scrolling:touch;
    overflow: scroll;
    width: 100%;
}
/*.overflowScroll body[landscape] .scrollable { ???
    height: auto !important;
    overflow: visible;
    -webkit-overflow-scrolling:none;
}*/

.panel-title {
    display: table;
    width: 100%;
    table-layout: fixed;
    position: relative;
}
.panel-title > :first-child {
    width: 100%;
    display: table-cell;
    vertical-align: middle;
    padding: 0px 50px;
    text-align: center;
    height: 50px;
    color: #FFFFFF;
    background: #1E6291;
    font-family: sans-serif;
}
.panel-title .close_panel,
.panel-title .close_panel_custom { /*PLEAS001UE-884*/
    position: absolute;
    background: url(https://pleasantholidays.usablenet.net/h5/images/close_white.w_1513941957000hc.png) no-repeat center;
    background-size: auto 20px;
    height: 50px;
    width: 50px;
    top: 0px;
    right: 0px;
    cursor: pointer;
}



.tooltip {
    display: none;
    visibility: hidden;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 350;
    width: 95%;
    width: calc(100% - 20px);
    width: calc(100vw - 20px);
    margin: 0px 10px;
    min-height: 20px;
}
.tooltip > .tooltip_inner {
    background-color: #FFFFFF;
    box-shadow:0px 0px 15px 4px rgba(0,0,0,0.2);
    border: 1px solid #CCCCCC;
}
.tooltip > .pointer {
    position: absolute;
    bottom: -9px;
    left: 0px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #CCCCCC transparent transparent transparent;
}
.tooltip > .pointer::after {
    content: '';
    position: absolute;
    bottom: 1px;
    left: -10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #FFFFFF transparent transparent transparent;
}
.tooltip > .pointer.pointer_up {
    border-width: 0px 10px 10px 10px;
    border-color: transparent transparent #FFFFFF transparent;
    border-color: transparent transparent #CCCCCC transparent;
    bottom: auto;
    top: -9px;
}
.tooltip > .pointer.pointer_up::after {
    border-width: 0px 10px 10px 10px;
    border-color: transparent transparent #FFFFFF transparent;
    bottom: auto;
    top: 1px;
}

.panel-ui {
    display: none;
    visibility: hidden;
    z-index: 350;
    margin: 0px;
}
.panel-ui-close {
    position: absolute;
    background: url(https://pleasantholidays.usablenet.net/h5/images/close_white.w_1513941957000hc.png) no-repeat center;
    background-size: auto 20px;
    height: 50px;
    width: 50px;
    top: 0px;
    right: 0px;
    cursor: pointer;
}



.loader_bar { /* show also .ui_stop_overlay to block user interactions */
  display: none;
  height: 5px;
  width: 100%;
  width: 100vw;
  position: fixed;
  z-index: 401; /* greater than 300 if you want it above overlays - greater than 400 if you want it above panelize */
  /*overflow: hidden;*/
  bottom: 0px;
  left: 0px;
}
.loader_bar::before {
  display: block;
  position: absolute;
  content: "";
  left: 0%;
  width: 0%;
  height: 5px;
  background-color: #1E6291;
  animation: loadingBar 1.5s linear infinite;
  box-shadow:0px 0px 3px 0px #FFFFFF;
}
@keyframes loadingBar {
    0%   {left: 0%; width: 0%;}
    33%   {left: 0%; width: 66%;}
    100% {left: 100%; width: 100%;}
}
body.ajax-in-progress .loader_bar {
    display: block;
}
/*body.submit-in-progress .loader_bar { PLEAS001UE-816
    display: block;
}*/




.card_container img { width: 100%; }
.card_container > a:first-of-type {
    display: block;
}
.card_container a { 
    text-decoration: none;
    color: #1E6291;
}
.lecture-bullets { 
    padding-top: 10px;
    text-align: center; 
}
.lecture-bullets img {
    width: 15px;    
    padding: 0px 3px;
}


.js-templates,
.js-scripts {
    display: none;
}



.margins { margin: 10px !important; }
.sides { margin-left: 10px !important; margin-right: 10px !important; }
.left-side { margin-left: 10px !important; }
.right-side { margin-right: 10px !important; }
.gaps { margin-bottom: 10px !important; margin-top: 10px !important; }
.gap { margin-bottom: 10px !important; }
.gapt { margin-top: 10px !important; }

.gap-sm { margin-bottom: 5px !important; }
.gaps-sm { margin-bottom: 5px !important; margin-top: 5px !important; }
.gapt-sm { margin-top: 5px !important; }

.gaps-lg { margin-bottom: 15px !important; margin-top: 15px !important; }
.gap-lg { margin-bottom: 15px !important; }
.gapt-lg { margin-top: 15px !important; }

.gaps-db { margin-bottom: 20px !important; margin-top: 20px !important; }
.gap-db { margin-bottom: 20px !important; }
.gapt-db { margin-top: 20px !important; }


.paddings { padding: 10px !important; }
.pad-sides { padding-left: 10px !important; padding-right: 10px !important; }
.left-side-p { padding-left: 10px !important; }
.right-side-p { padding-right: 10px !important; }
.bottom-side-p { padding-bottom: 10px !important; }

.margins-none { margin: 0px; }
.gap-fix:last-child { margin-bottom: -10px !important; } /*PLEAS001UE-730*/
.gap-fix-db:last-child { margin-bottom: -20px !important; } /*PLEAS001UE-730*/

/**
 * WIDTH
 * --------------------------------------------------------------------------
 *
 * Using !important to avoid specificity issues
 */
.w100 { width: 100% !important; }
 .w80 { width: 80%  !important; }
 .w75 { width: 75%  !important; } //PLEAS001UE-984
 .w70 { width: 70%  !important; }
 .w30 { width: 30%  !important; }
 .w60 { width: 60%  !important; }
 .w50 { width: 50%  !important; }
 .w45 { width: 45%  !important; } /*PLEAS001UE-540*/
 .w40 { width: 40%  !important; }
 .w35 { width: 35% !important; } /*PLEAS001UE-540*/
 .w25 { width: 25% !important; }
 .w20 { width: 20% !important; }
 .w15 { width: 15% !important; } /*PLEAS001UE-540*/
 .w66 { width: 66.66666667% !important; }
 .w33 { width: 33.33333333% !important; }
 .w15 { width: 15% !important; }
 .w10 { width: 10% !important; }
 .w5 { width: 5% !important; }

/**
 * Width 100% fix for Blackberry 5, at least on most usecases, as border-box is
 * not supported
 */
.bb5 .w100 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/**
 * DISPLAY (SHOW/HIDE)
 * --------------------------------------------------------------------------
 *
 * Using !important to avoid specificity issues
 */
.hide {
    display: none !important;
    visibility: hidden !important;
}
.show, .block { display: block !important; }
.inline-block {display: inline-block !important; }
.invisible { visibility: hidden !important; }
.flex { /*PLEAS001UE-730*/
    display: -webkit-flex !important; display: -ms-flex !important; display: -ms-flexbox !important; display: -moz-flex !important; display: flex !important;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; -moz-flex-wrap: wrap; flex-wrap: wrap;
}
.overflow-hidden { /* PLEAS001UE-928 */
    overflow: hidden !important;
}

/**
 * FLOATING and POSITIONING
 * --------------------------------------------------------------------------
 */
.float-left { float: left !important; }
.float-right { float: right !important; }

.position-relative { position: relative; }


/**
 * VERTICAL ALIGNMENT
 * --------------------------------------------------------------------------
 */
 .valign-middle { vertical-align: middle !important; }
 .valign-bottom { vertical-align: bottom !important; }
 .valign-base { vertical-align: baseline !important; }



/**
 * CLEARING FLOATED ELEMENTS
 * --------------------------------------------------------------------------
 */
.clear { clear: both !important; }

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


/**
 * TEXT ALIGNMENT
 * --------------------------------------------------------------------------
 */
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.text-justify { text-align: justify !important; }
.text-nowrap { white-space: nowrap !important; }
.text-lowercase { text-transform: lowercase !important; }
.text-uppercase { text-transform: uppercase !important; }
.text-capitalize { text-transform: capitalize !important; }
.text-underline { text-decoration: underline !important; }
.text-nodecoration { text-decoration: none !important; } /* PLEAS001UE-598 */




.no-touch-feedback {
    
    outline: none;
    outline-color: transparent;
    outline-style: none;
     /* 1 */
    -webkit-tap-highlight-color:rgba(0, 0, 0, 0); /* 2 */
    -webkit-tap-highlight-color:transparent; /* 3 */

}
.no-pointer {
    pointer-events: none;
}
/*.form-submit, PLEAS001UE-816*/
.async-update,
.disabled-area {
  pointer-events: none;
  opacity: 0.5;
}
.disabled-area .disabled-area {
  opacity: 1;
}
/**
 * Sliding
 * Adding .menuize_opened.menuize_opened-[left,right] to <html> will trigger menu open.
 * 
 * @author Giovanni Piller Cottrer <giovanni.piller@usablenet.com>
 * 
 * .menuize_panel - sliding menu wrapper. Hidden by default, to prevent clicks
 *					   in the bg on WP8 devices.
 * .menuize_main   	 - main content wrapper
 * .menuize_sticky   - main top header. Usually needs to be translated on its own,
 *				       due to position fixed issues w/ translate3d.
 * .menuize_overlay  - transparent overlay that covers .menuize_main when .menuize_opened
 *					   is present. Intercepts interactions, and triggers menu close.
 */
.menuize_panel { display:none; }
.translate3d.hasFixed .menuize_panel {
	display: none;
	left: 0;
	height: auto;
	position: absolute;
	top: 0;
	width: 85%;
	z-index: 1;
}
@media (orientation: landscape) {
	.translate3d.hasFixed .menuize_panel {
		width: 40%;
	}
}
.overflowScroll.translate3d.hasFixed .menuize_panel {
	max-height: 100%;
	overflow: scroll;
	position: fixed;
}
.translate3d.hasFixed .menuize_panel.menuize_panel-right {
	left: auto;
	right: 0;
}

.translate3d.hasFixed .menuize_main {
	display: block;
	min-height: 100%;
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
}

/* @group open menu */
.translate3d.hasFixed.menuize_opened-left .menuize_panel-left,
.translate3d.hasFixed.menuize_opened-right .menuize_panel-right {
	display: block;
	min-height: 100%;
	max-height: none;
	box-sizing:border-box;
}

.overflowScroll.translate3d.hasFixed.menuize_opened-left .menuize_panel-left,
.overflowScroll.translate3d.hasFixed.menuize_opened-right .menuize_panel-right {
	overflow: scroll;
	overflow-y: scroll;
	overflow-x: hidden;
	/*-webkit-overflow-scrolling:touch; AIRENGM-640 */
}

.chrome.translate3d.hasFixed.menuize_opened-left .menuize_panel-left,
.chrome.translate3d.hasFixed.menuize_opened-right .menuize_panel-right {
	overflow: auto;
	overflow-y: auto;
	overflow-x: hidden;
}

.translate3d.hasFixed .menuize_main,
.translate3d.hasFixed .menuize_sticky,
.translate3d.hasFixed .menuize_overlay {
	-ms-transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.translate3d.hasFixed.menuize_opened-left .menuize_main,
.translate3d.hasFixed.menuize_opened-left .menuize_sticky,
.translate3d.hasFixed.menuize_opened-left .menuize_overlay {
	-ms-transform: translate3d(85%, 0, 0);
	-webkit-transform: translate3d(85%, 0, 0);
	transform: translate3d(85%, 0, 0);
}

.translate3d.hasFixed.menuize_opened-right .menuize_main,
.translate3d.hasFixed.menuize_opened-right .menuize_sticky,
.translate3d.hasFixed.menuize_opened-right .menuize_overlay  {
	-ms-transform: translate3d(-85%, 0, 0);
	-webkit-transform: translate3d(-85%, 0, 0);
	transform: translate3d(-85%, 0, 0);
}

@media (orientation: landscape) {
	.translate3d.hasFixed.menuize_opened-left .menuize_main,
	.translate3d.hasFixed.menuize_opened-left .menuize_sticky,
	.translate3d.hasFixed.menuize_opened-left .menuize_overlay {
		-ms-transform: translate3d(40%, 0, 0);
		-webkit-transform: translate3d(40%, 0, 0);
		transform: translate3d(40%, 0, 0);
	}

	.translate3d.hasFixed.menuize_opened-right .menuize_main,
	.translate3d.hasFixed.menuize_opened-right .menuize_sticky,
	.translate3d.hasFixed.menuize_opened-right .menuize_overlay  {
		-ms-transform: translate3d(-40%, 0, 0);
		-webkit-transform: translate3d(-40%, 0, 0);
		transform: translate3d(-40%, 0, 0);
	}
}
/* @end */

/* theorically, the menu can degrade if overflowScroll is not supported */
.translate3d.hasFixed.menuize_opened .menuize_panel {
	min-height: 100%;
	max-height: none;
	box-sizing:border-box;
}

.overflowScroll.translate3d.hasFixed.menuize_opened .menuize_panel {
	min-height: 100%;
	max-height: 100%;
	overflow: scroll;
	overflow-y: scroll;
	overflow-x: hidden;
	/*-webkit-overflow-scrolling:touch; AIRENGM-640 */
	box-sizing:border-box;
}
.chrome.translate3d.hasFixed.menuize_opened .menuize_panel {
	overflow: auto;
	overflow-y: auto;
	overflow-x: hidden;
}

.translate3d.hasFixed .menuize_sticky,
.translate3d.hasFixed .menuize_main,
.translate3d.hasFixed .menuize_overlay {
	-webkit-backface-visibility:hidden;
	-webkit-perspective:1000;
	-webkit-transition: -webkit-transform cubic-bezier(0.25,0,0,1) 300ms;
	-ms-transition: -ms-transform cubic-bezier(0.25,0,0,1) 300ms;
	transition: transform cubic-bezier(0.25,0,0,1) 300ms;
}

/**
 * Android stock browser may support transition but it could be bugged.
 * To avoid bugs, set -webkit-transition again to overwrite transition
 * if -webkit- version is available.
 */
.androidStock.translate3d.hasFixed .menuize_sticky,
.androidStock.translate3d.hasFixed .menuize_main,
.androidStock.translate3d.hasFixed .menuize_overlay {
  -webkit-transition: -webkit-transform cubic-bezier(0.25,0,0,1) 300ms;
}

/**
 * IE11 has a bug for which is unable to correctly interpret and transition
 * translate3d instructions for .menuize_main
 * Even when we specify a horizontal translation of 85%, .menuize_main will
 * be translated outside the viewport.
 * Hiding and then showing .menuize_main fixes the issue, but the transition is
 * already corrupted.
 * 
 * This is why we have to disable the animation altogether, leaving just enough
 * milliseconds to trigger a transitionEnd event.
 */
.ie11.translate3d.hasFixed .menuize_sticky,
.ie11.translate3d.hasFixed .menuize_main,
.ie11.translate3d.hasFixed .menuize_overlay {
	-ms-transition: -ms-transform cubic-bezier(0.25,0,0,1) 10ms;
	transition: transform cubic-bezier(0.25,0,0,1) 10ms;
}

html.overflowScroll.menuize_opened,
.overflowScroll.menuize_opened body {
	overflow: hidden;
	position: relative;
}

/**
 * Avoids accidental touches on the slided area by covering it.
 * Tapping it will hide the menu, and show the main content area.
 */
.translate3d.hasFixed .menuize_overlay {
 	display: block;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	visibility: hidden;
	width:100%;
	z-index: 11;
}

.translate3d.hasFixed.menuize_opened .menuize_overlay {
	display: block;
	-webkit-backface-visibility:visible;
	visibility: visible;
}
