/* Reset */
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}blockquote,figure,h1,h2,h3,h4,h5,h6,ol,p,ul{margin:0;padding:0}main{display:block}h1,h2,h3,h4{font-size:inherit}strong{font-weight:700}a,button{color:inherit}a{text-decoration:none}button{overflow:visible;border:0;font:inherit;-webkit-font-smoothing:inherit;letter-spacing:inherit;background:0 0;cursor:pointer}::-moz-focus-inner{padding:0;border:0}img{border:0}fieldset{border:none;padding:0;margin:0}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}label{cursor:pointer;}
::-webkit-input-placeholder {color: inherit}
::-moz-placeholder {color: inherit}
:-ms-input-placeholder {color: inherit}
:-moz-placeholder {color: inherit}

/* Lib */
.clear {clear:both;}
.center {text-align: center;}
.align-right {text-align: right;}
.wrapper { width: 1200px;margin:0 auto; }
.text-alert{color:crimson}
.uppercased{text-transform:uppercase}
.image-as-icon{position:relative;top:3px;margin-left:10px;}
.mb{margin-bottom: 20px;}
.mb2{margin-bottom: 40px;}
.mb3{margin-bottom: 50px;}
.sr-only { position: absolute; width: 1px !important; height: 1px !important; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
.cf:before, .cf:after {content: " "; display: table;}
.cf:after {clear: both;}
.mobile-menu-button, .mobile-only, .mobile-toggle-submenu{display: none !important;}
.disclaimer-text{font-size: 14px;color: #bbb;}

button:focus,
button:active,
a:focus,
a:active{
    outline: none;
}

details{
    margin-bottom: 8px;
}
details summary{
    margin-bottom: 8px;
    border-radius: 3px;
    border: 1px solid #ccc;
    background-color: #f7f7f7;
    font-size: 14px;
    padding: 8px 12px;
    cursor: pointer;
}
details summary:hover{
    color: #003b68;
}

/* font-family: 'Roboto', sans-serif; */
/* font-family: 'Roboto Condensed', sans-serif; */
/* font-family: 'PT Sans', sans-serif; */
@font-face {
    font-family: 'DaxPro';
    src: url('../fonts/DaxPro.eot');
    src: local('☺'), url('../fonts/DaxPro.woff') format('woff'), url('../fonts/DaxPro.ttf') format('truetype'), url('../fonts/DaxPro.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'DaxPro-Light';
    src: url('../fonts/DaxPro-Light.eot');
    src: local('☺'), url('../fonts/DaxPro-Light.woff') format('woff'), url('../fonts/DaxPro-Light.ttf') format('truetype'), url('../fonts/DaxPro-Light.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'DaxPro-Bold';
    src: url('../fonts/DaxPro-Bold.eot');
    src: local('☺'), url('../fonts/DaxPro-Bold.woff') format('woff'), url('../fonts/DaxPro-Bold.ttf') format('truetype'), url('../fonts/DaxPro-Bold.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'DaxPro-Black';
    src: url('../fonts/DaxPro-Black.eot');
    src: local('☺'), url('../fonts/DaxPro-Black.woff') format('woff'), url('../fonts/DaxPro-Black.ttf') format('truetype'), url('../fonts/DaxPro-Black.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

body{
    font: 15px/18px 'Roboto', sans-serif;
    color: #000;
}

/* Homepage open the form - START */
.page-homepage-index .homepage-slider .search-close-button-parent,
.page-homepage-index .homepage-slider .close-search-x,
.page-homepage-index .homepage-slider .controls .actions{
    display: none;
}
.page-homepage-index .homepage-slider .controls .site-form{
    display: block;
}
/* Homepage open the form - END */

.privacy-policy-info{
    display: block;
    border: 1px solid;
    border-radius: 5px;
    margin: 1px 0;
    padding:10px;
}
.ship-rating{
    display: inline-block;
}
.ship-rating svg{
    margin: 0 2px;
}
.consent-checkboxes{
    text-align: left;
    margin: 0 auto;
    max-width: 550px;
    padding: 20px 0 40px;
}
#flash-messages{
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    color: #fff;
    background-color: #3ab9e1;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
    padding: 15px;
    z-index: 9999;
    font-size: 17px;
}
#flash-messages > button{
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(0, -55%);
    font-size: 31px;
    line-height: 1;
    display: block;
}
.c-marquee{
    display: block;
    padding: 15px;
    font-weight: bold;
    background-color: #ffda0e;
    color: crimson;
}
.c-marquee_repetative-links > a:not(:first-child) {
    margin-left: 250px;
}
/* Typography */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6{
    font-size: 43px;
    line-height: 45px;
    margin-bottom: 15px;
    display: block;
    color: #0b3152;
    font-family: "Roboto Condensed";
    font-weight: normal;
}
h2, .h2{font-size: 30px; line-height: 32px;}
h3, .h3{font-size: 26px; line-height: 28px;}
h4, .h4{font-size: 22px; line-height: 24px;}
h5, .h5{font-size: 18px; line-height: 20px;}
h6, .h6{font-size: 16px; line-height: 18px;}
.mb0{margin-bottom: 0 !important;}
.text{
    line-height: 20px;
}
hr,
.text hr{
    border: none;
    border-top: 1px solid #dbdbdb;
    margin: 16px 2px 18px;
}
.text p{
    margin-bottom: 15px;
}
.site-tooltip .text ol:last-child,
.site-tooltip .text ul:last-child,
.site-tooltip .text p:last-child{
    margin-bottom: 0;
}
.text.less-padded p{
    margin-bottom: 5px;
}
.text ul,
.text ol{
    padding-left: 25px;
    margin-bottom: 15px;
}
.text ul{
    list-style-type: circle;
}
.text ol{
    list-style-type: decimal;
}
.text a{
    text-decoration: none;
}
.text a,
.text .accented{
    color: #0b3152;
}
.page-pages-view .text a,
.text a:hover{
    text-decoration: underline;
}
.text iframe{
    max-width: 100%;
}
.text img{
    max-width: 100%;
    height: auto;
}
.text q{
    padding: 20px 20px 20px 30px;
    border: 1px solid #aaa;
    border-left-width: 5px;
    margin-bottom: 10px;
    background-color: #ddd;
    font-style: italic;
}
.text table{
    margin-bottom: 15px;
}
.text table td,
.text table th{
    padding: 8px;
    border-bottom: 1px solid #ccc;
    text-align: left;
}
.text table th{
    border-bottom-width: 2px;
}
.text table:not(.no-hover) tr:hover td{
    background-color: #f7f7f7;
}

/* Banners - START */
.c-banner{
    display: block;
}
.c-banner:hover{
    opacity: 0.8;
}
.c-banner__image{
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
.c-banner__image_mobile{
    display: none;
}
@media screen and (max-width: 767px){
    .c-banner__image_desktop{
        display: none;
    }
    .c-banner__image_mobile{
        display: block;
    }
}
/* Banners - END */

/* Template columns - START */
.column-templates{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.column-templates__column{
    margin-bottom: 20px;
}
.column-templates_per-row_2 .column-templates__column{
    width: calc(50% - 10px);
}
.column-templates_per-row_3 .column-templates__column{
    width: calc(33% - 10px);
}
@media screen and (max-width: 950px){
    .column-templates_per-row_3 .column-templates__column{
        width: calc(50% - 10px);
    }
}
@media screen and (max-width: 690px){
    .column-templates{
        margin-bottom: 0;
    }
    .column-templates_per-row_2 .column-templates__column,
    .column-templates_per-row_3 .column-templates__column{
        width: 100%;
    }
}
/* Template columns - END */

/* .grid */
.grid{margin: 0 -5px; padding-left: 0 !important;}
.grid.compact{margin: 0 -1px;}
.grid:after{
    content: "";
    display: table;
    clear: both;
}
.grid [class^="col-"],
.grid [class*=" col-"]{
    float: left;
    margin: 5px;
    display: block;
    box-sizing: border-box;
}
.grid.compact [class^="col-"],
.grid.compact [class*=" col-"]{
    margin: 1px;
}
.grid .col-right{
    float: right;
}
.grid .col-10{width: calc(10% - 10px);}
.grid .col-15{width: calc(15% - 10px);}
.grid .col-20{width: calc(20% - 10px);}
.grid .col-25{width: calc(25% - 10px);}
.grid .col-30{width: calc(30% - 10px);}
.grid .col-33{width: calc(33.3333% - 10px);}
.grid .col-35{width: calc(35% - 10px);}
.grid .col-40{width: calc(40% - 10px);}
.grid .col-43{width: calc(43% - 10px);}
.grid .col-45{width: calc(45% - 10px);}
.grid .col-50{width: calc(50% - 10px);}
.grid .col-55{width: calc(55% - 10px);}
.grid .col-60{width: calc(60% - 10px);}
.grid .col-65{width: calc(65% - 10px);}
.grid .col-66{width: calc(66.6666% - 10px);}
.grid .col-70{width: calc(70% - 10px);}
.grid .col-75{width: calc(75% - 10px);}
.grid .col-80{width: calc(80% - 10px);}
.grid .col-85{width: calc(85% - 10px);}
.grid .col-90{width: calc(90% - 10px);}
.grid .col-100{width: calc(100% - 10px);}

.grid.compact .col-10{width: calc(10% - 2px);}
.grid.compact .col-15{width: calc(15% - 2px);}
.grid.compact .col-20{width: calc(20% - 2px);}
.grid.compact .col-25{width: calc(25% - 2px);}
.grid.compact .col-30{width: calc(30% - 2px);}
.grid.compact .col-33{width: calc(33.3333% - 2px);}
.grid.compact .col-35{width: calc(35% - 2px);}
.grid.compact .col-40{width: calc(40% - 2px);}
.grid.compact .col-43{width: calc(43% - 2px);}
.grid.compact .col-45{width: calc(45% - 2px);}
.grid.compact .col-50{width: calc(50% - 2px);}
.grid.compact .col-55{width: calc(55% - 2px);}
.grid.compact .col-60{width: calc(60% - 2px);}
.grid.compact .col-65{width: calc(65% - 2px);}
.grid.compact .col-66{width: calc(66.6666% - 2px);}
.grid.compact .col-70{width: calc(70% - 2px);}
.grid.compact .col-75{width: calc(75% - 2px);}
.grid.compact .col-80{width: calc(80% - 2px);}
.grid.compact .col-85{width: calc(85% - 2px);}
.grid.compact .col-90{width: calc(90% - 2px);}
.grid.compact .col-100{width: calc(100% - 2px);}

.grid .col-center{
    clear: both;
    margin: 5px auto 0;
    float: none;
}
/* .site-form */
.site-form fieldset{
    margin-bottom: 40px;
    overflow: hidden;
}
.site-form legend{
    margin-bottom: 10px;
    padding: 0;
}
.site-form .error{
    border: none;
    padding: 0;
    margin: 0;
    font-weight: bold;
}
.site-form li{
    vertical-align: middle;
    margin-bottom: 10px;
}
.site-form li[class^="col-"]:not(:last-child),
.site-form li[class^=" col-"]:not(:last-child){
    margin-bottom: 25px;
}
.site-form .clicker a{
    text-decoration: underline;
}
.site-form label{
    display: block;
    margin-bottom: 4px;
    cursor: pointer;
}
.site-form label em{
    color: crimson;
    font-style: normal;
}
.site-form label.clicker input[type="checkbox"],
.site-form label.clicker input[type="radio"]{
    position: relative;
    top: 1px;
    margin: 0 3px 0 0;
}
select,
.site-form select,
.site-form textarea,
.site-form input[type="file"],
.site-form input[type="email"],
.site-form input[type="password"],
.site-form input[type="number"],
.site-form input[type="tel"],
.site-form input[type="url"],
.site-form input[type="text"]{
    padding: 9px;
    font-size: 14px;
    border: 1px solid #6a6a6a;
    width: 100%;
    box-sizing: border-box;
    font-family: inherit;
    background-color: #fff;
    color: inherit;
}
select{
    -webkit-appearance: none;
    background: #fff url('../images/small-arrow-down.png') no-repeat right 10px center;
}
.site-form select{
    padding: 8px;
}
select.select-width-auto{
    width: auto !important;
    padding: 5px 30px 5px 5px;
}
.site-form select.sm,
.site-form textarea.sm,
.site-form input[type="file"].sm,
.site-form input[type="email"].sm,
.site-form input[type="password"].sm,
.site-form input[type="number"].sm,
.site-form input[type="tel"].sm,
.site-form input[type="url"].sm,
.site-form input[type="text"].sm,
.site-form select.sm{
    padding: 9px;
}
select,
.site-form select,
.site-form select.sm{
    padding-right: 33px;
}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=number] {
    -moz-appearance:textfield;
}
.site-form textarea{
    resize: vertical;
}
.daterangepicker{
    padding-left: 38px !important;
    background-image: url('../images/icon-calendar.svg');
    background-position: 5px center;
    background-repeat: no-repeat;
}
.site-form input#mathCaptcha{
    width: 70px;
    margin: 0 3px;
    padding: 6px;
    text-align: center;
}
/* .site-header */
.site-header .top{
    background-color: #0b3152;
    overflow: hidden;
}
.site-header .top a{
    color: #fff;
    font-size: 13px;
    line-height: 13px;
    height: 30px;
    line-height: 30px;
    display: inline-block;
}
.site-header .top a:hover{
    text-decoration: underline;
}
.site-header .top .sites-network{
    float: left;
}
.site-header .top .sites-network a{
    padding: 0 30px;
}
.site-header .top .sites-network a.active{
    background-color: #fff;
    color: #0b3152;
}
.site-header .top .secondary-nav{
    float: right;
}
.site-header .top .secondary-nav a{
    padding: 0 15px 0 20px;
    position: relative;
}
.site-header .top .secondary-nav a.accent{
    background-color: #3ab9e1;
    color: #fff;
}
.site-header .top .secondary-nav a:not(:first-child):before{
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    bottom: 8px;
    width: 1px;
    background-color: #fff;
}
.site-header .top .secondary-nav a.accent:before{
    display: none;
}
.site-header .top .secondary-nav a.newsletter{
    padding-left: 35px;
}
.site-header .top .secondary-nav a.newsletter:before{
    content: "";
    display: inline-block;
    width: 21px;
    height: 21px;
    position: absolute;
    top: 50%;
    left: 8px;
    transform: translate(0, -50.3%);
    background-color: transparent;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(../images/icon-email-white.svg);
}
.site-header .logo{
    margin-bottom: 0;
}
.site-header .logo,
.site-header .logo img{
    display: block;
}
.site-header .bottom{
    padding: 25px 30px 20px;
}
.site-header .bottom{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.site-header .primary-nav{
    margin-left: 30px;
}
.site-header .primary-nav > ul{
    display: flex;
    justify-content: space-between;
}
.site-header .primary-nav > ul > li{
    display: inline-block;
    position: relative;
}
.site-header .primary-nav > ul > li{
    font-family: 'Roboto Condensed', sans-serif;
    text-transform: uppercase;
    color: #0b3152;
    margin: 0 25px;
    padding: 2px 0;
    display: inline-block;
    position: relative;
    font-size: 16px;
}
.site-header .primary-nav > ul > li:after{
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    bottom: 0;
    width: 0;
    transition: width 250ms;
    background-color: #0b3152;
}
.site-header .primary-nav > ul > li.active:after,
.site-header .primary-nav > ul > li:hover:after{
    width: 100%;
}
.site-header .primary-nav > ul > li a{
    text-align: center;
    position: relative;
    display: block;
}
.site-header .primary-nav > ul > li a:before{
    content: "";
    position: absolute;
    height: 30px;
    display: block;
    bottom: -25px;
    left: -25px;
    right: -25px;
}
.site-header .primary-nav > ul > li .supermenu{
    position: absolute;
    background-color: #fff;
    z-index: 999;
    box-shadow: 0 0 3px #bbb;
    left: 50%;
    transform: translate(-50.2%, 0);
    top: 32px;
    display: none;
    border-radius: 3px;
}
.site-header .primary-nav > ul > li .supermenu a{
    white-space: nowrap;
    display: block;
    padding: 11px 15px;
    text-transform: none;
    font-size: 16px;
    position: relative;
    z-index: 12;
}
.site-header .primary-nav > ul > li .supermenu a:hover{
    text-decoration: underline;
}
@media screen and (min-width: 1250px){
    .site-header .primary-nav > ul > li:hover .supermenu{
        display: block !important;
    }
}
.site-header .primary-nav > ul > li .supermenu:after,
.site-header .primary-nav > ul > li .supermenu:before{
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    background-color: #fff;
}
.site-header .primary-nav > ul > li .supermenu:before{
    z-index: 10;
    width: 16px;
    height: 16px;
    transform: translate(-50.2%, 0) rotate(45deg);
    box-shadow: 0 0 3px #bbb;
    border-radius: 3px;
    top: -8px;
}
.site-header .primary-nav > ul > li .supermenu:after{
    z-index: 11;
    width: 26px;
    height: 16px;
    transform: translate(-50.2%, 0);
    top: 0;
}
/* .site-footer */
.site-footer{
    text-align: center;
    padding-bottom: 15px;
}
.footer-nav{
    background-color: #092944;
}
.footer-nav a{
    color: #fff;
    padding: 20px;
    display: inline-block;
}
.site-footer .copyrights a:hover,
.footer-nav a:hover{
    text-decoration: underline;
}
.footer-socials{
    margin-bottom: 20px;
}
.footer-socials a{
    display: inline-block;
    width: 46px;
    height: 46px;
    margin: 0 8px;
    border-radius: 50%;
    background-color: #092944;
    background-position: center center;
    background-repeat: no-repeat;
    transition: background-color 250ms;
}
.footer-socials a:hover{
    background-color: #1a5b93;
}
.footer-socials a.fb{background-image: url('../images/socials-fb.png');}
.footer-socials a.tw{background-image: url('../images/socials-tw.png');}
.footer-socials a.gp{background-image: url('../images/socials-gp.png');}
.footer-socials a.em{background-image: url('../images/icon-email-white.svg');}
.footer-socials a.ig{background-image: url('../images/socials-ig.png');}

.site-footer .info{
    display: flex;
    align-items: center;
    text-transform: uppercase;
    justify-content: center;
    margin: 15px 0;
}
.site-footer .info span{
    text-transform: uppercase;
    font: 18px/21px 'DaxPro-Bold', sans-serif;
    margin-right: 15px;
}
.site-footer .copyrights{
    font-size: 13px;
}
.site-footer .newsletter-form{
    max-width: 400px;
    margin: 0 auto;
    padding: 10px 0 15px;
}
.site-footer .newsletter-form fieldset{
    margin-bottom: 0;
}
.site-footer .newsletter-form button[type="submit"]{
    width: 100%;
}
/* .cruise-companies-logos */
.cruise-companies-logos{
    text-align: center;
    color: #fff;
    padding: 55px 0 45px;
    background: url('../images/cruise-companies-logos-bg.jpg') no-repeat center center;
    background-size: cover;
}
.cruise-companies-logos ul li{
    display: inline-block;
    margin: 15px;
}
.cruise-companies-logos ul li a{
    display: block;
    position: relative;
    width: 250px;
    height: 115px;
}
.cruise-companies-logos ul li img{
    transition: opacity 250ms;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
}
.cruise-companies-logos ul li:hover img{
    opacity: 0.8;
}
.cruise-companies-logos .site-section-title{
    color: #fff;
}
/* .site-section */
.site-section{
    padding: 50px 0;
}
.site-section-no-top-padding{
    padding-top: 0;
}
.site-section-title{
    font-size: 42px;
    line-height: 42px;
    text-transform: uppercase;
    font-weight: 400;
    text-align: center;
    margin-bottom: 35px;
    color: #0b3152;
}
.site-section-title:before{
    content: "";
    width: 38px;
    height: 38px;
}
.site-section-title:before,
.site-section-title img{
    display: inline-block;
    position: relative;
    top: 5px;
    margin-right: 15px;
}
.site-section-title img{
    margin-right: 5px;
}
.site-section.cruise-companies-logos .site-section-title:before{
    background: url('../images/cruise-companies-logos-icon.png') no-repeat center center;
}
.site-section.articles .site-section-title:before{
    background: url('../images/articles-section-icon.png') no-repeat center center;
}
.site-section.grey{
    background-color: #f0f4f6;
}
.site-section.dark-grey{
    background-color: #DBDBDB;
}
.site-section.grey .site-section-title{
    color: #0b3152;
}
/* .articles */
.articles-list{
    margin-bottom: 20px;
    overflow: hidden;
}
.articles-list li{
    margin-bottom: 50px;
    display: flex;
    align-items: center;
}
.articles-list li div h2{
    margin-bottom: 0;
}
.articles-list .preview{
    margin-right: 33px;
}
.articles-list .preview img{
    display: block;
    transition: opacity 250ms;
    border-radius: 50%;
}
.articles-list .title:hover,
.articles-list .preview:hover img{
    opacity: 0.8;
}
.articles-list .title{
    display: block;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 26px;
    font-weight: 700;
    color: #0b3152;
    margin-bottom: 10px;
    transition: opacity 250ms;
}
.articles-list .btn{
    margin: 0 auto;
}
/* .btn */
.btn{
    background-color: #ffda0e;
    border: 2px solid #ffda0e;
    color: #010101;
    text-transform: uppercase;
    font-family: 'Roboto Condensed', sans-serif;
    padding: 0 40px;
    font-size: 22px;
    height: 60px;
    line-height: 60px;
    position: relative;
    transition: background-color 250ms;
    display: inline-block;
    box-sizing: border-box;
}
.btn:not(.btn-plain):after{
    content: "";
    display: inline-block;
    background: url('../images/button-arrow.png') no-repeat center center;
    width: 22px;
    height: 22px;
    left: 13px;
    position: relative;
    top: 5px;
    transition: transform 250ms;
}
.btn:disabled{
    cursor: not-allowed;
    opacity: 0.2;
}
.btn-sm{
    padding: 0 17px;
    font-size: 15px;
    height: 37px;
    line-height: 33px;
}
.btn-sm:after{
    left: 7px;
    top: 5px;
    transform: scale(0.85);
}
.btn-outline{
    border-color: #ffda0e;
    background-color: transparent;
}
.btn-outline-blue{
    border-color: #092944;
    background-color: transparent;
}
.btn:active,
.btn:hover{
    background-color: #fff;
}
.btn-simple:active,
.btn-simple:hover,
.btn-simple{
    border-color: transparent;
    background-color: transparent;
    text-decoration: underline;
}
.btn-simple:after{
    display: none;
}
.btn-outline-blue:active,
.btn-outline-blue:hover,
.btn-outline:active,
.btn-outline:hover{
    background-color: #ffda0e;
}
.btn-icon-before::after{
    display: none;
}
.btn-icon-before{
    padding: 0 17px;
}
.btn-icon-before img{
    margin-right: 5px;
    top: 2px;
    position: relative;
}
.btn-accent{
    color: #010101;
    border-color: #725fa6;
}
.btn-accent:hover{
    background-color: #725fa6;
    color: #fff;
}
.btn-accent:after{
    background: url('../images/btn-accent-arrow.png') no-repeat center center;
}
.btn-accent:hover:after{
    background: url('../images/btn-accent-arrow-active.png') no-repeat center center;
}

.btnpdf--enhanced {
    background-color: #ffda0e;
    border: 2px solid #ffda0e;
    color: #010101;
    text-transform: uppercase;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 15px;
    height: 42px;
    line-height: 38px;
    position: relative;
    transition: all 250ms ease;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 0 20px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 500;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.btnpdf--enhanced:hover {
    background-color: #f5d000;
    border-color: #f5d000;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.btnpdf--enhanced:active {
    transform: translateY(0);
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
}

.btnpdf__icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../images/download-pdf.png) no-repeat center center;
    background-size: contain;
    flex-shrink: 0;
}

.btnpdf__text {
    white-space: nowrap;
}

/* Алтернативен вариант с Font Awesome икона */
.btnpdf--enhanced.with-fontawesome .btnpdf__icon {
    background: none;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    font-size: 18px;
    color: #d32f2f; /* Червен цвят за PDF */
}

.btnpdf--enhanced.with-fontawesome .btnpdf__icon::before {
    content: '\f1c1'; /* PDF icon */
}

/* За малки устройства */
@media (max-width: 768px) {
    .btnpdf--enhanced {
        font-size: 14px;
        height: 38px;
        padding: 0 16px;
        gap: 8px;
    }

    .btnpdf__icon {
        width: 18px;
        height: 18px;
    }
}

/* .breadcrumbs */
.breadcrumbs li{
    display: inline-block;
}
.breadcrumbs li,
.breadcrumbs li a{
    color: #04a6db;
}
.breadcrumbs li:last-child a{
    color: #888;
}
.breadcrumbs li:not(:last-child):after {
    content: "/";
    margin: 0 4px 0 5px;
    font-size: 14px;
}
.breadcrumbs li a:hover{
    text-decoration: underline;
}
/* .paging */
.paging{
    text-align: center;
}
.paging a{
    display: inline-block;
    font-size: 20px;
    font-family: 'DaxPro-Bold';
    margin: 0 4px;
    padding: 7px;
    transition: opacity 250ms;
    vertical-align: middle;
}
.paging a.prev,
.paging a.next{
    text-indent: -9999px;
    width: 31px;
    height: 31px;
    padding: 0;
    background: url('../images/arrow-big-left.png') no-repeat center center;
}
.paging a.next{
    background-image: url('../images/arrow-big-right.png');
}
.paging a:hover{
    opacity: 0.8;
}
.paging a.active{
    color: #04a6db;
}
.paging span{
    font-size: 24px;
    line-height: 1;
    margin: 0 5px;
}
/* .site-tooltip */
.site-tooltip{
    position: absolute;
    padding: 7px 10px 9px;
    background-color: #0b3152;
    color: #fff;
    border-radius: 4px;
    display: none;
    z-index: 9999;
    max-width: 300px;
    box-sizing: border-box;
}
.site-tooltip:after{
    content: "";
    display: block;
    z-index: 98;
    width: 14px;
    height: 14px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    position: absolute;
    background-color: #0b3152;
    border-radius: 4px;
}
[data-tooltip]:not(a):not(button) {
    cursor: help;
}
.site-tooltip-top:after{left: 50%; bottom: -5px; margin-left: -7px;}

.site-tooltip[aria-hidden="false"]{
    display: block;
}
/* .featured */
.featured{
    background-color: #f0f4f6;
}
.featured-list{
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 -10px;
}
.featured-list .btn{
    white-space: nowrap;
}
.featured.grey-items{
    background-color: #fff;
}
.featured .site-section-title:before{
    display: none;
}
.featured-list > li{
    width: calc(33.33% - 20px);
    margin: 0 10px 20px;
    background-color: #fff;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    border-bottom: 6px solid #ffda0e;
}
.page-cruises-view .featured-list > li{
    flex-basis: 340px;
}
.page-cruises-view .featured .wrapper{
    position: relative;
}
.slides-prev,
.slides-next{
    display: block;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    text-indent: -9999px;
    width: 31px;
    height: 31px;
    background: url('../images/arrow-big-right.png') no-repeat center center;
}
.slides-next{
    right: -40px;
}
.slides-prev{
    left: -40px;
    background-image: url('../images/arrow-big-left.png');
}
.featured.grey-items .featured-list > li{
    background-color: #f0f4f6;
}
.featured-list .preview{
    display: block;
    position: relative;
    overflow: hidden;
}
.featured-list .preview img{
    display: block;
    width: 100%;
    height: auto;
}
.featured-list .preview:hover img{
    opacity: 0.9;
}
.featured-list .info{
    padding: 18px 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
    flex-basis: auto;
}
.featured-list .top{
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 15px;
    transition: opacity 250ms;
    justify-content: space-between;
}
.featured-list .title{
    font-size: 20px;
    font-family: "Roboto Condensed";
    font-weight: 700;
    color: #0b3152;
    text-transform: uppercase;
    line-height: 23px;
    display: block;
    padding-right: 20px;
    width:60%;
}
.featured-list .top:hover{
    opacity: 0.9;
}
.featured-list .price strong{
    font-family: "DaxPro-Bold";
    font-size: 38px;
    line-height: 25px;
    color: #04a6db;
}
.featured-list .price strong regular{
    font-family: "DaxPro";
    font-weight: 500;
}
.featured-list .price strong small{
    font-size: 25px;
    line-height: 25px;
    margin-right: 3px;
}
.featured-list .price em{
    display: block;
    font-size: 13px;
    line-height: 13px;
    color: #20282d;
    font-style: normal;
    text-align: right;
}
.featured-list .bottom{
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.featured-list .bottom ul li{
    margin-top: 5px;
    position: relative;
    padding-left: 23px;
    font-size: 14px;
}
.featured-list .bottom ul li:first-child{
    margin-top: 0;
}
.featured-list .bottom ul li:before{
    width: 16px;
    height: 16px;
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50.2%);
    background-repeat: no-repeat;
    background-position: left center;
}
.featured-list .bottom ul li.ship:before{
    background-image: url('../images/offer-icon-ship.png');
}
.featured-list .bottom ul li.date:before{
    background-image: url('../images/offer-icon-date.png');
}
.featured-list .bottom ul li.port:before{
    background-image: url('../images/offer-icon-port.png');
}
.cruise-detailed-page .cruise-top .prices .label,
.featured-list .preview .label{
    position: absolute;
    right: -95px;
    top: 20px;
    background-color: #ffda0e;
    color: #000;
    font-size: 16px;
    font-family: 'DaxPro-Bold';
    line-height: 22px;
    width: 125px;
    text-align: center;
    text-transform: uppercase;
    padding: 13px 77px;
    transform: rotate(45deg);
}
.cruise-detailed-page .cruise-top .prices .label{
    padding: 5px 77px;
    right: -88px;
    top: 9px;
    width: 65px;
}
.disclaimer{
    display: block;
    text-align: right;
    color: #cb0d04;
    font-style: normal;
}
.disclaimer.center{
    text-align: center;
}
.disclaimer.blue {
    color: #3ab8e1;
}
.disclaimer.red {
    color: red;
}
.disclaimer.gold {
    color: #c5b358;
}
.featured-list > li.featured-list__accent-item,
.featured.grey-items .featured-list > li.featured-list__accent-item{
    border-bottom-color: #725fa6;
}
.featured-list__accent-item .top p{
    margin-top: 10px;
    font-size: 14px;
}
.featured-list__accent-item .bottom p{
    margin-right: 15px;
    font-size: 14px;
}
.featured.grey-items .featured-list > li.featured-list__accent-item .btn-accent{
    width: 100%;
    text-align: center;
}
/* .article */
.article{
    padding: 30px 0;
}
.page-header{
    display: flex;
    margin-bottom: 30px;
    justify-content: space-between;
    align-items: center;
}
.page-header h1,
.page-header h2{
    margin-bottom: 0;
}
.article .main-image{
    float: left;
    margin: 0 25px 10px 0;
}
/* .share-tools */
.share-tools{
    font-family: 'Roboto Condensed', sans-serif;
    text-align: right;
    min-width: 320px;
    font-size: 0;
}
.share-tools li{
    display: inline-block;
    vertical-align: top;
}
.share-tools a{
    display: inline-block;
    transition: background-color 300ms;
    background-color: #154c7b;
    text-decoration: none;
    margin: 0 0 3px 3px;
    width: 35px;
    height: 33px;
    background-position: center center;
    background-repeat: no-repeat;
}
.share-tools a span,
.share-tools a em{
    display: none;
}
.share-tools a[data-share="facebook"]{background-image: url('../images/facebook.svg')}
.share-tools a[data-share="email"]{background-image: url('../images/email.svg')}
.share-tools a[data-share="twitter"]{background-image: url('../images/share-tools-twitter.png')}
.share-tools a[data-share="print"]{background-image: url('../images/print.svg')}
.share-tools a[data-share="google"]{background-image: url('../images/share-tools-google.png')}
.share-tools a[data-share="whatsapp"]{background-image: url('../images/whatsapp.svg')}
.share-tools a[data-share="viber"]{background-image: url('../images/viber.svg')}
.share-tools a[data-share="fbMessenger"]{background-image: url('../images/facebook-messenger.svg')}
.share-tools a:hover{background-color: #3ab8e1}
.share-tools a[data-share="facebook"]:hover{background-color: #4267b2}
.share-tools a[data-share="fbMessenger"]:hover{background-color: #0084ff}
.share-tools a[data-share="whatsapp"]:hover{background-color: #26d266}
.share-tools a[data-share="viber"]:hover{background-color: #574e92}
@media screen and (min-width: 800px){
    .share-tools a[data-share="fbMessenger"]{
        display: none;
    }
}
/* .list-with-image */
.list-with-image{
    padding: 15px 0;
}
.list-with-image > li{
    overflow: hidden;
    border-bottom: 1px solid #ddd;
    margin-bottom: 30px;
    padding-bottom: 25px;
}
.list-with-image > li:last-child{
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.list-with-image .summary{
    float: left;
    width: 745px;
}
.list-with-image .preview{
    float: right;
    display: block;
    position: relative;
    width: 420px;
    height: 185px;
    border: 1px solid #d6d6d6;
}
.list-with-image > li.without-image .preview,
.list-with-image > li.without-image .summary{
    width: auto;
    float: none;
}
.list-with-image .preview img{
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    max-width: 95%;
    max-height: 95%;
}
.ships-list .title:hover,
.ships-list .preview:hover img,
.list-with-image .title:hover,
.list-with-image .preview:hover img{
    opacity: 0.8;
}
.list-with-image .btn{
    clear: both;
    float: right;
    margin-top: 15px;
}
.list-with-image.image-on-left .preview{
    float: left;
    border: none;
    width: auto;
    height: auto;
}
.list-with-image.image-on-left .preview img{
    max-width: 100%;
    max-height: 100%;
    position: static;
}
.list-with-image.image-on-left .summary{
    float: right;
    width: 805px;
}
/* .ships-list */
.ships-list-page{
    background-color: #f3f3f3;
    padding-bottom: 35px;
}
.filter-ship-form{
    text-align: right;
}
.filter-ship-form select{
    width: 300px;
}
.page-header-outer{
    background-color: #fff;
    padding: 30px 0;
}
.ships-list{
    padding: 35px 0;
}
.ships-list > li > h2{
    margin-bottom: 0;
}
.ships-list > li{
    background-color: #fff;
    overflow: hidden;
    padding-bottom: 70px;
    position: relative;
}
.ships-list .company-logo{
    position: absolute;
    right: 20px;
    top: 0;
    display: block;
}
.ships-list .company-logo:hover{
    opacity: 0.8;
}
.ships-list .company-logo img{
    display: block;
}
.ships-list > li:not(:last-child):after{
    content: "";
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 25px;
    height: 1px;
    background-color: #ddd;
}
.ships-list .title{
    padding: 15px;
    margin: 0;
}
.ships-list .preview{
    float: left;
    display: block;
}
.ships-list .preview img{
    display: block;
}
.ships-list .info{
    float: right;
    width: 680px;
    padding-right: 20px;
    box-sizing: border-box;
}
.ships-list .about{
    margin-bottom: 41px;
}
.ships-list .about,
.ships-list .tech{
    padding-left: 55px;
    position: relative;
    overflow: hidden;
}
.ships-list .about > p{
    max-height: 91px;
    overflow: hidden;
}
.ships-list .about:before,
.ships-list .tech:before{
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    width: 36px;
    height: 40px;
}
.ships-list .about:before{
    width: 36px;
    height: 40px;
    background-image: url('../images/ship-icon-about.png');
}
.ships-list .tech:before{
    width: 41px;
    height: 46px;
    background-image: url('../images/ship-icon-tech.png');
}
.ships-list .tech .btn{
    float: right;
}
.ships-list .about .h2,
.ships-list .tech .h2{
    text-transform: uppercase;
    padding-top: 3px;
    margin-bottom: 9px;
}
.page-ships-view .mosaic-slider{
    margin-bottom: 10px;
}
.page-ships-view .company-logo{
    float: right;
    display: flex;
    align-items: center;
    color: #0b3152;
    font-size: 20px;
}
.page-ships-view .company-logo img{
    margin-right: 10px;
}
.page-ships-view .company-logo:hover strong{
    text-decoration: underline;
}
.page-ships-view .company-logo strong{
    font-weight: 500;
}
.ship-details{
    clear: both;
}
.ship-details .tech,
.ships-list .tech ul{
    overflow: hidden;
    margin-bottom: 20px;
}
.ship-details .tech li,
.ships-list .tech li{
    float: left;
    width: 50%;
    margin-bottom: 5px;
}
.ship-details .tech li span,
.ships-list .tech li span{
    color: #154c7b;
}
.ships-list-page .page-header{
    margin-bottom: 15px;
}
/* .offices-list */
.offices-list{
    padding-top: 25px;
}
.offices-list > li[hidden]{
    display: none;
}
.offices-list > li{
    display: inline-block;
    width: 260px;
    margin-bottom: 35px;
    margin: 0 45px 35px 0;
    vertical-align: top;
}
.offices-list > li:nth-child(4n) {
    margin-right: 0;
}
.offices-list .row{
    padding-left: 25px;
    position: relative;
    margin-bottom: 10px;
    font-size: 14px;
}
.offices-list .row a{
    color: #04a6db;
}
.offices-list address{
    font-style: normal;
}
.offices-list .row:before{
    content: "";
    display: block;
    position: absolute;
    width: 14px;
    height: 17px;
    background-position: center top;
    background-repeat: no-repeat;
    left: 0;
    top: 3px;
}
.offices-list .row.address:before{
    background-image: url('../images/offices-icon-pin.png');
}
.offices-list .row.phone:before{
    background-image: url('../images/offices-icon-phone.png');
}
.offices-list .row.time:before{
    background-image: url('../images/offices-icon-clock.png');
}
.offices-list .row.email:before{
    background-image: url('../images/offices-icon-mail.png');
}
#contacts-map{
    position: relative;
}
#contacts-map #map-container{
    height: 500px;
}
#contacts-map select[name="town-select"]{
    padding: 5px 30px 5px 5px;
    position: absolute;
    z-index: 3;
    top: 30px;
    right: 30px;
    width: auto;
}
.contacts-form{
    max-width: 750px;
    margin: 0 auto;
}
/* .company-highlights */
.company-highlights{
    display: flex;
    align-items: center;
    justify-content: center;
    background: url('../images/highlights-bg.jpg') no-repeat center center;
    background-size: cover;
    padding: 30px;
    box-sizing: border-box;
    margin-bottom: 50px;
    color: #fff;
    font-weight: 700;
    text-shadow: 1px 1px 1px #000;
}
.homepage-company-highlights .company-highlights{
    margin-bottom: 0;
    margin-top: 35px;
}
.company-highlights > strong{
    font-family: "Roboto Condensed";
    font-size: 70px;
    line-height: 66px;
    text-transform: uppercase;
    display: inline-block;
    width: 535px;
    margin-right: 20px;
}
.company-highlights > ul{
    display: inline-block;
    border-left: 5px solid #ffda0e;
    font-size: 16px;
    text-transform: uppercase;
    overflow: hidden;
    padding-left: 25px;
    width: 400px;
}
.company-highlights > ul > li{
    position: relative;
    margin: 8px 0;
    padding-left: 20px;
}
.company-highlights > ul > li:before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 4px;
    background-color: #fff;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    box-shadow: 1px 1px 1px #000;
}
/* .results */
.results > li{
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   margin-bottom: 40px;
}
.results .disclaimer{
    width: 100%;
    margin-top: 5px;
}
.results .preview{
    width: 394px;
    display: block;
    overflow: hidden;
    text-align: center;
}
.results .preview img {
    /* display: inline-block; */
    display: block;
    margin: 0 auto;

    object-fit: cover;
    width: auto;
    max-width: 100%;
    height: 100%;
    max-height: 310px;
}
/* With Wide thumbnails
.results .preview{
    width: 455px;
    display: block;
    overflow: hidden;
    text-align: center;
}
.results .preview img {
    display: block;
    object-fit: cover;
    width: auto;
    max-width: 100%;
    height: 100%;
    width: 100%;
}*/
.results .info{
    background-color: #f0f4f6;
    flex: 1;
    padding: 20px 15px;
}
.results:not(.grid-view) .info.in-promotion{
    padding-right: 70px;
}
.results .prices{
    width: 195px;
    background-color: #3ab8e1;
    color: #fff;
    padding: 20px 16px;
    box-sizing: border-box;
}
.results .top{
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
}
.results .top > em{
    color: #154c7b;
}
.results .title{
    color: #0b3152;
    font-size: 20px;
    line-height: 25px;
    text-transform: uppercase;
    font-family: "Roboto Condensed";
    width: calc(100% - 130px);
}
.results .title,
.results .company{
    display: inline-block;
    vertical-align: top;
}
.results .title:hover,
.results .preview:hover,
.results .company:hover{
    opacity: 0.8;
}
/*.results .company{
    margin-top: -15px;
}*/
.results .bottom ul{
    overflow: hidden;
}
.results .bottom ul > li{
    float: left;
    display: block;
    padding: 0 10px 10px 21px;
    position: relative;
    width: 100%;
    box-sizing: border-box;
}
.results .bottom ul > li span{
    color: #154c7b;
}
.results .bottom ul > li.start,
.results .bottom ul > li.end{
    width: 50%;
}
.results .bottom ul > li:before{
    content: "";
    position: absolute;
    left: 0;
    top: 2px;
    display: block;
    background-position: center top;
    background-repeat: no-repeat;
    width: 16px;
    height: 15px;
}
.results .bottom ul > li.route:before{
    background-image: url('../images/results-icon-pin.png');
}
.results .bottom ul > li.start:before{
    background-image: url('../images/results-icon-start-point.png');
    top: 5px;
}
.results .bottom ul > li.end:before{
    background-image: url('../images/results-icon-end-point.png');
    top: 5px;
}
.results .bottom ul > li.ship:before{
    top: 1px;
    background-image: url('../images/results-icon-ship.png');
}
.results .bottom ul > li.date:before{
    top: 3px;
    background-image: url('../images/results-icon-dates.png');
}
.results .bottom ul > li.price-type-options{
    border-left: 5px solid #3ab8e1;
    margin-left: 3px;
    padding: 5px 5px 5px 13px;
    color: #0c3251;
    margin-top: 3px;
}
.results .bottom time{
    position: relative;
    padding: 0 10px 0 11px;
    font-size: 14px;
    line-height: 14px;
    display: inline-block;
}
.results .bottom time:before {
    position: absolute;
    left: 2px;
    top: 4px;
    background-color: #154c7b;
    content: "";
    width: 5px;
    height: 5px;
}
.results .bottom ul a{
    color: #04a6db;
}
.results .bottom a:hover{
    text-decoration: underline;
}
.results .prices{
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.cruise-detailed-page .cruise-top .prices ul li,
.results .prices li{
    text-align: right;
    margin: 3px 0;
    font-size: 13px;
}
.cruise-detailed-page .cruise-top .prices .price,
.results .prices .price{
    display: block;
    position: relative;
}
.cruise-detailed-page .cruise-top .prices .price strong,
.results .prices .price strong,
.results .prices li strong{
    font-family: "DaxPro-Bold";
    font-size: 17px;
}
.cruise-detailed-page .cruise-top .prices .price strong regular,
.cruise-detailed-page .cruise-top .prices ul li strong regular,
.results .prices .price strong regular,
.results .prices li strong regular{
    font-family: "DaxPro";
    font-weight: 500;
}
.results .prices li no-margin {
    margin-left: -20px;
    margin-right: -20px;
}
.results .prices li center{
    text-align: center;
}
.results .prices ul{
    border-top: 1px solid #9ddcf0;
    margin: 12px 0;
    padding: 10px 7px 0;
}
.cruise-detailed-page .cruise-top .prices .price strong,
.results .prices .price strong{
    font-size: 50px;
    line-height: 50px;
    display: block;
    margin-bottom: 5px;
}
.cruise-detailed-page .cruise-top .prices .price strong{
    margin-bottom: 10px;
}
.cruise-detailed-page .cruise-top .prices .price strong small,
.results .prices .price strong small{
    font-size: 34px;
    line-height: 34px;
}
.results .prices .price strong em{
    margin-right: 5px;
}
.cruise-detailed-page .cruise-top .prices .price strong em,
.results .prices .price strong em{
    display: inline-block;
    font-family: 'Roboto';
    font-weight: 300;
}
.cruise-detailed-page .cruise-top .prices .price em,
.results .prices .price em{
    font-size: 13px;
    line-height: 13px;
    font-style: normal;
    display: block;
}
.cruise-detailed-page-header{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}
.cruise-detailed-page-header h1{
    background: url('../images/icon-ship.png') no-repeat left top;
    padding-left: 50px;
}
.results.results-compact .prices{
    text-align: right;
}
.results .badge{
    position: absolute;
    top: 5px;
    left: -80px;
    width: 92px;
    height: 50px;
    box-sizing: border-box;
    text-transform: uppercase;
    padding: 7px 10px;
    display: block;
    color: #000;
    text-align: left;
    font-weight: 400;
    background: url('../images/promo-badge.png') no-repeat center center;
}
.results-header{
    position: relative;
}
.results-header .change-view{
    position: absolute;
    right: 0;
    top: 9px;
}
.results-header .change-view a{
    display: inline-block;
    width: 26px;
    height: 25px;
    margin-left: 5px;
    cursor: pointer;
    background: url('../images/change-view-icons.png') no-repeat;
}
.results-header .change-view a:hover{
    opacity: 0.8;
}
.results-header .change-view a[data-view="list-view"]{
    background-position: 0 0;
}
.results-header .change-view a[data-view="list-view"].active{
    background-position: -26px 0;
}
.results-header .change-view a[data-view="grid-view"]{
    background-position: -52px 0;
}
.results-header .change-view a[data-view="grid-view"].active{
    background-position: -78px 0;
}
.results.grid-view{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.results.grid-view .info{
    order: 2;
    width: 100%;
    padding-bottom: 60px;
}
.results.grid-view .preview{
    width: 65%;
}
.results.grid-view .prices{
    width: 35%;
}
.results.grid-view .prices .btn{
    position: absolute;
    right: 15px;
    bottom: 56px;
}
.results.grid-view > li{
    width: 49%;
    position: relative;
}
.results.grid-view .disclaimer{
    order: 3;
}
.results.grid-view .prices ul {
    margin-bottom: 0;
}
.results.results-compact .preview{
    width: 330px;
}
.grey .results .info{
    background-color: #fff;
}
.results.results-compact > li{
    margin-bottom: 20px;
}
.results.results-compact .prices{
    justify-content: space-between;
}
.results.results-compact .prices .price{
    border-bottom: none;
}
/* .ship-details */
.ship-details > li{
    margin-bottom: 35px;
    overflow: hidden;
}
.ship-details > li:last-child{
    margin-bottom: 0;
}
.ship-details > li > img{
    float: left;
    max-width: 85px;
    height: auto;
}
.ship-offers-icon{
    border: 2px solid #0b3152;
    border-radius: 50%;
    padding: 7px;
    margin-left: 1px;
}
.ship-details > li .tech,
.ship-details > li .text{
    margin-left: 100px;
}
.ship-details h2{
    text-transform: uppercase;
    font-family: "Roboto Condensed";
    color: #000;
    font-weight: bold;
}
.related-offers .results-header h2{
    margin-bottom: 10px;
}
.related-offers .results-header h3{
    margin-bottom: 25px;
}
/* .mosaic-slider */
.mosaic-slider{
    position: relative;
    height: 600px;
    overflow: hidden;
    margin: 10px 0 50px;
}
.mosaic-slider .prev,
.mosaic-slider .next{
    position: absolute;
    z-index: 2;
    top: 50%;
    transform: translate(0, -50.2%);
    display: block;
    width: 45px;
    height: 38px;
}
.mosaic-slider .prev{
    left: 1px;
    background: url('../images/slider-arrow-left.png') no-repeat center center;
}
.mosaic-slider .next{
    right: 0;
    background: url('../images/slider-arrow-right.png') no-repeat center center;
}
.mosaic-slider .prev.disabled,
.mosaic-slider .next.disabled{
    display: none;
}
.mosaic-slider .frame > ul > li{
    float: left;
    width: 400px;
    height: 600px;
    overflow: hidden;
}
.mosaic-slider .frame > ul > li.featured{
    width: 800px;
}
.mosaic-slider .frame > ul > li img{
    display: block;
    border: 1px solid #fff;
}
.mosaic-slider .frame > ul > li img:nth-child(2) {
    border-top: none;
}
/* .toggle-offer-prices */
.toggle-offer-prices{
    display: inline-block;
    text-transform: uppercase;
    margin: 15px 0 20px;
    padding-bottom: 5px;
}
.toggle-offer-prices:after{
    content: "";
    display: inline-block;
    margin-left: 3px;
    position: relative;
    top: 5px;
    width: 22px;
    height: 22px;
    background: url('../images/arrow-down.png') no-repeat center center;
}
.toggle-offer-prices.active:after{
    background-image: url('../images/arrow-up.png');
}
/* .price-table */
.price-table{
    width: 100%;
    border-bottom: 1px solid #ddd;
}
.price-table th,
.price-table td{
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    padding: 15px 0;
    transition: background-color 250ms;
}
.price-table th{
    font-family: "Roboto Condensed";
    color: #fff;
    background-color: #154c7b;
    font-size: 17px;
}
.row-summary,
.clickable-rows tbody tr:not(.row-date){
    cursor: pointer;
}
.price-tag,
.price-table td strong{
    font-size: 23px;
    font-family: "DaxPro-Bold";
    color: #154c7b;
    display: inline-block;
}
.price-tag regular,
.price-table td strong regular{
    font-family: "DaxPro";
    font-weight: 500;
}
.cruise-prices del{
    color: #154c7b;
    font-size: 15px;
}
.row-summary.active td,
.row-summary:hover td,
.price-table tbody tr:hover:not(.row-spacer):not(.row-date) td{
    background-color: #edeffa;
}
.price-table tbody tr:not(.row-spacer):not(.row-date) td:last-child{
    border-right: 1px solid #ddd;
}
.price-table tbody tr td{
    background-color: #f9f9f9;
}
.price-table_zebra tr:nth-child(even) td{
    background-color: #fff;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.price-table_zebra tr th:first-child{
    border-left: 1px solid #154c7b;
}
.price-table_zebra tr td:first-child{
    border-left: 1px solid #ddd;
}
.price-table tbody tr.row-spacer td{
    padding:0;
    height: 10px;
    background-color: #fff;
}
.price-table tbody tr.row-date td{
    border: 1px solid #ddd;
    border-right: none;
}
.price-table tbody tr td.price-type-cell{
    text-align: left;
    padding-left: 10px;
    font-size: 16px;
}
.mobile-cruise-prices .price-type-cell .packet-title,
.price-table tbody tr td.price-type-cell .packet-title{
    border-left: 4px solid #ffd739;
    padding: 10px 0 10px 15px;
}
.price-type-terms-anchor img,
.price-table tbody tr td.price-type-cell .packet-title img{
    position: relative;
    top: 2px;
    margin-left: 3px;
}
.mobile-cruise-prices .price-type-cell .packet-title{
    padding: 5px 0 5px 8px;
    border-width: 7px;
    margin: 10px;
    color: #154c7b;
}
.mobile-cruise-prices .price-type-cell.row-even .packet-title,
.price-table tbody tr.row-even td.price-type-cell .packet-title{
    border-left-color: #3ab8e1;
}
.mobile-cruise-prices .price-type-cell.row-even .btn,
.price-table tbody tr.row-even .btn{
    border-color: #3ab8e1;
    background-color: #3ab8e1;
}
.price-table tbody tr.row-even .btn:hover{
    border-color: #3ab8e1;
    background-color: #fff;
}
.promo-badge{
    background: url('../images/promo-badge-small.png') no-repeat center center;
    display: inline-block;
    font-family: "Roboto Condensed";
    font-weight: bold;
    box-sizing: border-box;
    text-align: right;
    padding-right: 8px;
    width: 58px;
    height: 22px;
    line-height: 23px;
    font-size: 11px;
    text-transform: uppercase;
}
.price-table tbody tr.row-date td div{
    position: relative;
}
.price-table tbody tr.row-date td div .promo-badge{
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-65%, -50%);
}
.cruise-prices{
    padding-top: 50px;
}
.cruise-prices .text > h2{
    text-transform: uppercase;
    margin-bottom: 5px;
    font-weight: bold;
}
.cruise-prices .button-container{
    text-align: right;
}
.price-table-scrollable thead tr th{
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 999;
}
/* .site-tabs */
.site-tabs [role="tabpanel"] {
    padding: 15px 5px;
    outline: none;
}
.site-tabs.product-related [role="tabpanel"] {
    padding: 15px 0;
}
.site-tabs [role="tablist"] {
    background-color: #0b3152;
    display: flex;
    justify-content: space-around;
}
.site-tabs [role="tab"] {
    padding: 10px;
    color: #fff;
    flex: 1;
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    transition: all 250ms;
    position: relative;
}
.site-tabs [role="tab"]:hover{
    text-decoration: underline;
}
.site-tabs [role="tab"][aria-selected="true"]{
    color: #000;
    background-color: #fff;
    text-decoration: none;
}
.site-tabs [role="tab"][aria-selected="true"]:after{
    content: "";
    left: 0;
    right: 0;
    top: -7px;
    height: 7px;
    position: absolute;
    display: block;
    background-color: #fff;
}
.site-tabs [role="tabpanel"]{
    background-color: #fff;
    padding: 30px;
}
.site-tabs [role="tabpanel"]#tab-ship{
    padding-left: 0;
    padding-right: 0;
}
.site-tabs [role="tabpanel"]#tab-ship > h2,
.site-tabs [role="tabpanel"]#tab-ship .ship-details{
    padding-left: 30px;
    padding-right: 30px;
}
.site-tabs [role="tabpanel"][aria-hidden="true"] {
    display: none;
}
.site-tabs [role="tabpanel"][aria-hidden="false"] {
    display: block;
}
/* .checkbox */
.checkbox{
    cursor: pointer;
}
.checkbox_disabled{
    opacity: 0.5;
}
.checkbox span,
.checkbox strong{
    position: relative;
    padding-left: 30px;
    display: inline-block;
}
.checkbox span:before,
.checkbox strong:before,
.checkbox span:after,
.checkbox strong:after{
    content: "";
    position: absolute;
    display: block;
}
.checkbox span:before,
.checkbox strong:before{
    left: 0;
    top: -1px;
    width: 18px;
    height: 18px;
    border: 1px solid #ccc;
    background-color: #fff;
}
.checkbox span:after,
.checkbox strong:after{
    left: 1px;
    top: 0;
    width: 17px;
    height: 17px;
    background: #fff url('../images/checkbox-tick.png') no-repeat center center;
    transform: scale(0);
    transition: transform 250ms;
}
.checkbox input:checked + span:after,
.checkbox input:checked + strong:after{
    transform: scale(1);
}
/* .radio */
.radio{
    cursor: pointer;
    display: inline-block !important;
}
.radio span{
    position: relative;
    padding-left: 22px;
}
.radio span:before{
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 14px;
    height: 14px;
    background-color: #fff;
    border: 1px solid #154c7b;
    border-radius: 50%;
    display: block;
}
.radio input + span:after{
    background-color: #154c7b;
    width: 10px;
    height: 10px;
    content: "";
    display: block;
    left: 3px;
    top: 4px;
    border-radius: 50%;
    position: absolute;
    transform: scale(0);
    transition: transform 250ms;
}
.radio input:checked + span:after{
    transform: scale(1);
}
/* .cabins-list */
.cabins-list > li{
    margin-bottom: 25px;
    padding-bottom: 60px;
    border-bottom: 1px solid #dbdbdb;
    overflow: hidden;
}
.cabins-list > li:last-child{
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.cabins-list > li > img {
    float: left;
}
.cabins-list > li > em {
    float: left;
    display: block;
width: 320px;
position: absolute;
margin-top: 240px;
margin-left: 0px;
}
.cabins-list > li .info{
    margin-left: 340px;
}
.cabins-list > li h3{
    text-transform: uppercase;
    font-weight: bold;
}
/* .decks-list */
.decks-list li{
    margin-bottom: 30px;
}
.decks-list li:last-child{
    margin-bottom: 0;
}
.decks-list li h3{
    margin-bottom: 10px;
}
.decks-list li .zoom{
    padding: 40px 70px;
    text-align: center;
    border: 1px solid #dbdbdb;
}
.decks-list li .zoom img{
    width: 100%;
    height: auto;
}
.decks-list li .zoom .zoomImg{
    background-color: #fff;
}
/* .expandable-table */
.expandable-table{
    border: 1px solid #dbdbdb;
    width: 100%;
    text-align: center;
    border-collapse: initial;
}
.expandable-table th{
    background-color: #f3f3f3;
    padding: 15px;
    text-transform: uppercase;
    font-family: "Roboto Condensed";
    font-weight: bold;
    font-size: 14px;
    text-align: center;
    line-height: 16px;
    border-bottom: 1px solid #dbdbdb;
}
.expandable-table td{
    padding: 15px;
    border-top: 1px solid #dbdbdb;
}
.expandable-table td img{
    vertical-align: middle;
    display: inline-block;
}
.expandable-table tr:first-child td{
    border-top: none;
}
.expandable-table td button{
    white-space: nowrap;
}
.expandable-table .row-details{
    display: none;
    text-align: left;
}
.expandable-table .row-details.active{
    display: table-row;
}
.expandable-table .row-details td > div{
    overflow: hidden;
    position: relative;
}
.expandable-table .row-details td > div .close-button{
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 16px;
    display: block;
    text-indent: -9999px;
    background: url('../images/icon-cross.png') no-repeat center center;
}
.expandable-table .row-details td > div .close-button:hover{
    opacity: 0.8;
}
.expandable-table .row-details .preview{
    float: left;
    margin-right: 15px;
}
.expandable-table .row-details td > div > h3{
    text-transform: uppercase;
    font-weight: bold;
    padding-right: 25px;
    color: #000;
}
.expandable-table .row-details td > div > em {
    float: left;
    display: block;
    width: 320px;
    margin-top: 240px;
    margin-left: -334px;
margin-right: 15px;
}
.expandable-table .row-details-button:after{
    content: "";
    display: inline-block;
    width: 11px;
    height: 7px;
    margin-left: 10px;
    position: relative;
    top: -1px;
    background: url('../images/small-arrow-down.png') no-repeat center center;
}
.expandable-table .row-details-button.active:after{
    background-image: url('../images/small-arrow-up.png');
}
.expandable-table .row-highlight td{
    background-color: #ffda0e;
    color: #154c7b;
}
.error,
.is-failed,
.choose-cabin-error{
    margin-bottom: 10px;
    color: crimson;
    padding: 10px;
    border: 1px solid crimson;
}
.choose-cabin-error{
    display: none;
    width: 176px;
    font-weight: bold;
    float: right;
    text-align: center;
}
.no-available-cabins{
    margin: 20px 0 0;
    display: none;
}
/* .cruise-detailed-page */
.cruise-detailed-page .cruise-top{
    display: flex;
    justify-content: space-between;
}
.cruise-detailed-page .cruise-top .map-container{
    width: 585px;
    position: relative;
}
.cruise-detailed-page .cruise-top .map-container > img{
    max-width: 100%;
    height: auto;
    display: block;
}
body.map-full-screen-mode{
    overflow: hidden;
}
body.map-full-screen-mode .cruise-detailed-page .cruise-top .map-container{
    position: fixed;
    z-index: 9999999999;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
}
body.map-full-screen-mode .cruise-detailed-page .cruise-top .map-container > em{
    display: none;
}
body.map-full-screen-mode .cruise-detailed-page .cruise-top .map-container .map{
    height: 100%;
}
#cruise-map.is-loading{
    position: relative;
}
#cruise-map.is-loading:before,
#cruise-map.is-loading:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 20;
}
#cruise-map.is-loading:before{
    background: url('../images/map-loading-bg.png') no-repeat center center;
    background-size: cover;
}
#cruise-map.is-loading:after{
    z-index: 21;
    content: "Loading...";
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.6);
    font-size: 27px;
    font-weight: bold;
    border: 2px solid #154c7b;
    color: #154c7b;
    display: flex;
    align-items: center;
    justify-content: space-around;
    animation: preloader 1.5s infinite alternate;
    -webkit-animation: preloader 1.5s infinite alternate;
}
@keyframes preloader {
    0% {letter-spacing: 1px;}
    50% {letter-spacing: 3px;}
    100% {letter-spacing: 0px;}
}
@-webkit-keyframes preloader {
    0% {letter-spacing: 1px;}
    50% {letter-spacing: 3px;}
    100% {letter-spacing: 0px;}
}

.cruise-detailed-page .cruise-top .map-container .toggle-full-screen{
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    display: inline-block;
    padding: 9px 8px 8px 25px;
    color: #000;
    text-transform: uppercase;
    font-family: "Roboto Condensed";
    font-weight: bold;
    background: #ffda0e url('../images/results-icon-pin.png') no-repeat 10px center;
}
.cruise-detailed-page .cruise-top .map-container .toggle-full-screen.active{
    background: #ffda0e url('../images/icon-cross.png') no-repeat right 10px center;
    padding: 9px 33px 7px 8px;
}
.cruise-detailed-page .cruise-top .map-container > em{
    display: block;
    font-size: 14px;
    line-height: 16px;
}
.cruise-detailed-page .cruise-top .map{
    height: 370px;
    margin-bottom: 4px;
}
.cruise-detailed-page .cruise-top .info{
    width: 585px;
}
.cruise-detailed-page .cruise-top .prices{
    color: #fff;
    background-color: #3ab8e1;
    padding: 20px 40px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    position: relative;
    overflow: hidden;
}
.cruise-detailed-page .cruise-top .prices ul{
    text-align: right;
    border-right: 1px solid #9ddcf0;
    padding: 10px 40px 10px 0;
    box-sizing: border-box;
    width: 50%;
}
.cruise-detailed-page .cruise-top .prices > div{
    width: 50%;
    box-sizing: border-box;
    padding-left: 40px;
}
.cruise-detailed-page .cruise-top .prices ul li{
    font-size: 15px;
}
.cruise-detailed-page .cruise-top .prices .price{
    text-align: center;
    border: none;
    padding-bottom: 0;
}
.cruise-detailed-page .cruise-top .prices .price strong{
    font-size: 60px;
    line-height: 60px;
}
.cruise-detailed-page .cruise-top .prices ul li strong{
    line-height: 20px;
    margin-left: 5px;
    font-family: "DaxPro-Bold";
    font-size: 19px;
}
.cruise-detailed-page .cruise-top .details{
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
    padding: 10px 0;
}
.cruise-detailed-page .cruise-top .details ul li{
    margin: 5px 0;
}
.cruise-detailed-page .cruise-top .details ul li a{
    color: #04a6db;
}
.cruise-detailed-page .cruise-top .details ul li a:hover{
    text-decoration: underline;
}
.cruise-tabs{
    margin-bottom: 50px;
}
/* .cabin-configurator */
.cabin-configurator .actions{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
.cabin-configurator .actions .actions-left{
    width: calc(100% - 260px);
}
.cabin-configurator .actions .actions-right{
    width: 230px;
}
.cabin-configurator .actions em{
    display: block;
}
.cabin-configurator .actions .btn:not(.confirm-button):not(:last-child){
    margin-right: 10px;
}
.cabin-configurator .disabled{
    opacity: 0.3;
    cursor: not-allowed;
}
.cabin-configurator .children-age-boxes.disabled{
    position: relative;
}
/* Prevent user to interact with select, but keep the select default value. (We loose the default value if we disable it)*/
.cabin-configurator .children-age-boxes.disabled:after{
    content: "";
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    z-index: 99;
}
.cabin-configurator .disabled .radio{
    cursor: not-allowed;
}
.cabin-row{
    margin-bottom: 20px;
}
.cabin-row .header{
    border: 1px solid #dbdbdb;
    border-bottom: none;
    background-color: #f3f3f3;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.cabin-row .header h3{
    margin-bottom: 0;
    text-transform: uppercase;
    font-weight: bold;
}
.cabin-row .header label b{
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 5px;
}
.children-age-boxes,
.children-age-boxes-inputs{
    display: inline-block;
    vertical-align: top;
}
.children-age-boxes > label,
.children-age-boxes-inputs label{
    display: none;
    vertical-align: top;
}
.children-age-boxes-inputs{
    margin-left: 7px;
}
.children-age-boxes-inputs > label{
    margin: 0 7px;
}
.children-age-boxes > label{
    display: inline-block;
}
.cabin-row .header .children-age-boxes select,
.cabin-row .header select{
    padding: 7px;
    border: 1px solid transparent;
    cursor: pointer;
    width: 150px;
}
.cabin-row .content{
    border: 1px solid #dbdbdb;
    padding: 20px;
}
.site-form fieldset .cabin-row{
    margin-bottom: 0;
}
.price-tag{
    font-family: "DaxPro-Bold";
    font-size: 22px;
    line-height: 22px;
    color: #154c7b;
}
.price-tag span{
    font-size: 18px;
    line-height: 18px;
    font-family: "DaxPro";
    margin-left: 5px;
    display: inline-block;
}
.price-tag_small{
    font-size: 19px;
}
.price-tag_small span{
    font-size: 16px;
}
.price-tag_smaller{
    font-size: 16px;
}
.price-tag_smaller span{
    font-size: 14px;
}
.cabin-configurator .price-tag{
    display: block;
}
.cabin-configurator .btn-sm{
    padding: 0 12px;
}
.cabin-configurator .btn:not(.confirm-button):after{
    display: none;
}
.cell-cabin-category{
    width: 200px;
}
.cell-extras{
    width: 200px;
}
.cabin-configurator .radios-select button{
    max-width: 200px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
/* .radios-select */
.radios-select{
    position: relative;
    text-align: left;
}
.radios-select button{
    display: inline-block;
    padding: 7px 25px 7px 15px;
    border: 1px solid #C9C9C9;
    background: url('../images/small-arrow-down.png') no-repeat right 7px center;
}
.radios-select ul{
    border: 1px solid #C9C9C9;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 100%;
    top: calc(100% - 1px);
    z-index: 1;
    white-space: nowrap;
    box-shadow: 1px 1px 1px #ccc;
    display: none;
}
.radios-select ul em{
    font-style: normal;
}
.radios-select ul li label{
    padding: 10px;
    display: block;
}
.radios-select ul li label:hover{
    background-color: #f7f7f7;
}
/* .quote */
.quote{
    border-left: 4px solid #154c7b;
    background: #fff9db;
    color: #0b3152;
    padding: 17px 21px 18px;
    margin: 20px 0;
}
/* checkout */
.payment-method .radio{
    margin-right: 20px;
}
.birthdate-fields [class^="col-"],
.birthdate-fields [class*=" col-"]{
    margin-top: 0;
}
/* .clipped-content */
.clipped-content{
    position: relative;
}
.clipped-content .container{
    /* max-height: 335px; */
    overflow: hidden;
}
.clipped-content-button{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9;
    display: none;
    border: none;
    width: 100%;
    padding: 80px 0 20px;
    text-shadow: 0 0 1px #fff;
    font-size: 17px;
    color: #0b3152;
    font-weight: bold;
    outline: none !important;
    background: #fff;
    background: linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255, 0.9) 60%, rgba(255,255,255,0) 100%);
}
.clipped-content-button:after{
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 7px solid #0b3152;
    position: relative;
    top: -2px;
    left: 7px;
}
.clipped-content.open .clipped-content-button{
    background: none;
    position: static;
}
.clipped-content.open .clipped-content-button:after{
    transform: rotate(180deg);
}
.clipped-content.open .container{
    max-height: none !important;;
}
/* .homepage-slider */
.homepage-slider{
    position: relative;
    background-color: #0b3152;
}
.homepage-slider .loader{
    position: absolute;
    z-index: 999;
    background: #0b3152 url('../images/preloader.svg') no-repeat center center;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.homepage-slider .slides,
.homepage-slider .slides li{
    height: 465px;
}
.homepage-slider .slides li{
    position: relative;
    float: left;
}
.homepage-slider .slides li .cover-link{
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 9999;
}
.homepage-slider .slides li .background{
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 1;
}
.homepage-slider .slides li .content{
    width: 600px;
    padding: 50px;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    color: #fff;
    z-index: 2;
}
.homepage-slider .slides li .text-link{
    display: block;
    margin-bottom: 25px;
}
.homepage-slider .slides li .text-link strong{
    display: block;
    margin-bottom: 10px;
    font-weight: normal;
    font-size: 25px;
    line-height: 1.15;
}
.homepage-slider .slides li .text-link,
.homepage-slider .slides li .prices{
    transition: opacity 250ms;
}
.homepage-slider .slides li .text-link:hover,
.homepage-slider .slides li .prices:hover{
    opacity: 0.8;
}
.homepage-slider .slides li .bottom{
    display: flex;
    align-items: center;
}
.homepage-slider .slides li .prices small{
    font-size: 65%;
    margin-right: 2px;
}
.homepage-slider .slides li .prices{
    margin-right: 20px;
    line-height: 1;
}
.homepage-slider .slides li .prices del{
    margin-right: 15px;
    text-decoration: none;
    position: relative;
}
.homepage-slider .slides li .prices del:after{
    content: "";
    display: block;
    left: -5px;
    top: 50%;
    right: -5px;
    height: 1px;
    transform: rotate(-13deg);
    position: absolute;
    opacity: 0.9;
    background-color: #fff;
}
.homepage-slider .slides li .button-link{
    color: #fff;
    text-shadow: 0 0 1px #ccc;
    padding-left: 35px;
}
.homepage-slider .slides li .button-link:hover{
    background: transparent;
}
.homepage-slider .slides li .button-link:after{
    background: url('../images/homepage-slider-button-arrow.png') no-repeat center center;
    width: 8px;
    height: 13px;
    top: 0;
}
.homepage-slider .controls{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    padding: 20px 0;
    background-color: #0b3152;
    background-color: rgba(11, 49, 82, 0.5);
}
.homepage-slider .controls .actions{
    text-align: center;
}
.homepage-slider .controls .actions .btn{
    margin: 0 30px;
}
.search-icon-button:after,
.toggle-search:after{
    background-image: url('../images/icon-search.svg');
    width: 24px;
    height: 24px;
}
.icon-filter:after{
    background-image: url('../images/icon-filter.svg');
    width: 24px;
    height: 24px;
    top: 3px;
}
.homepage-slider .controls .close-search{
    color: #fff;
}
.homepage-slider .controls .close-search:after{
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    position: relative;
    top: -2px;
    left: 8px;
}
.homepage-slider .controls .site-form{
    width: 1160px;
    margin: 0 auto;
    display: none;
}
.homepage-slider .controls .site-form fieldset{
    margin-bottom: 0;
}
/* Bigger default value */
.cruise-search-form option.default {
    font-size: 15px;
    font-weight: bold;
}
.cruise-search-form button[type="submit"] {
    height: 48px;
    line-height: 48px;
    font-size: 20px;
    width: 100%;
}
.site-form .btn-sm span{
    position: relative;
    top: -1px;
}
.homepage-slider .controls .site-form li[class^="col-"]:not(:last-child),
.homepage-slider .controls .site-form li[class^=" col-"]:not(:last-child) {
    margin-bottom: 5px;
}
.homepage-slider .close-search-x{
    position: absolute;
    right: 20px;
    top: 20px;
    display: block;
    width: 28px;
    height: 28px;
    text-indent: -9999px;
    background-image: url('../images/icon-cross.svg');
    background-size: cover;
}
.slider-pagination{
    position: absolute;
    left: 50px;
    top: -32px;
}
.slider-pagination li{
    text-indent: -9999px;
    display: inline-block;
    cursor: pointer;
    width: 13px;
    height: 13px;
    background-color: #fff;
    border: 5px solid #fff;
    margin-right: 10px;
}
.slider-pagination li.active{
    border-color: #ffda0e;
    background-color: #0970b8;
}
.ship-view-offers-arrow{
    position: relative;
    top: 5px;
    left: 5px;
}
/* .cruise-period-selector */
.cruise-period-selector{
    position: relative;
    z-index: 99;
}
.cruise-period-selector-wrapper{
    position: absolute;
    background-color: #fff;
    border: 1px solid #bbb;
    top: 45px;
    display: none;
    border-bottom: 4px solid #ffda0e;
}
.cruise-period-selector-tabs{
    text-align: center;
    margin-bottom: 10px;
    font-size: 0;
    position: relative;
    z-index: 2;
}
.cruise-period-selector-tabs > button{
    display: inline-block;
    color: #000;
    padding: 20px 0;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    width: 50%;
    box-sizing: border-box;
    background-color: #eee;
    font-size: 17px;
    line-height: 17px;
    border-bottom: 1px solid #bbb;
}
.cruise-period-selector-tabs > button:nth-child(1).active{
    border-right: 1px solid #bbb;
}
.cruise-period-selector-tabs > button:nth-child(2).active{
    border-left: 1px solid #bbb;
}
.cruise-period-selector-tabs > button.active{
    background-color: #fff;
    border-color: #fff;
    color: #0b3152;
    outline: none;
}
.cruise-period-selector-tabs > button.active span{
    border-bottom: 2px solid #0b3152;
    padding-bottom: 1px;
}
.cruise-period-selector-tabs > button:first-child:before,
.cruise-period-selector-tabs > button:first-child:after{
    content: "";
    display: block;
    position: absolute;
    height: 12px;
    background-color: inherit;
}
.cruise-period-selector-tabs > button:first-child:before{
    left: 8px;
    top: -7px;
    width: 12px;
    transform: rotate(45deg);
    z-index: 1;
    border: 1px solid #bbb;
}
.cruise-period-selector-tabs > button:first-child:after{
    left: 0;
    top: 0;
    width: 41px;
    z-index: 2;
}
.cruise-period-selector-whole-months-years-column ol li button.active{
    border-color: #83d9f5;
    background-color: #83d9f5;
}
.cruise-period-selector-whole-months-years-column ol li button{
    outline: none;
    display: inline-block;
    border: 1px solid #ddd;
    color: #111;
    padding: 10px 0;
    margin: 1px;
    width: 90px;
    text-align: center;
}
.cruise-period-selector-whole-months-years-column ol li button:disabled{
    cursor: not-allowed;
    opacity: 0.3;
}
.close-daterangepickers{
    margin: 10px 0;
}
.close-daterangepickers:after{
    display: none;
}
.cruise-search-form fieldset{
    overflow: visible;
}
.cruise-period-selector-specific-dates{
    display: none;
}
.cruise-period-selector-specific-dates{
    padding: 0 10px;
}
.cruise-period-selector-specific-dates .kalendae{
    padding-bottom: 0;
    margin-bottom: 0;
}
.cruise-period-selector-whole-months-years{
    overflow: hidden;
    width: 660px;
    padding: 10px 0;
    position: relative;
}
.cruise-period-selector-whole-months-years .prev-year,
.cruise-period-selector-whole-months-years .next-year{
    position: absolute;
    top: 10px;
    left: 7px;
    display: block;
    text-indent: -9999px;
    width: 22px;
    height: 22px;
    transition: opacity 250ms;
    background: url('../images/button-arrow-prev.png') no-repeat center center;
}
.cruise-period-selector-whole-months-years .next-year{
    background-image: url('../images/button-arrow.png');
    right: 7px;
    left: auto;
}
.cruise-period-selector-whole-months-years .prev-year:hover,
.cruise-period-selector-whole-months-years .next-year:hover{
    opacity: 0.8;
}
.cruise-period-selector-whole-months-years-column{
    float: left;
    width: 50%;
    box-sizing: border-box;
    padding: 0 10px;
    text-align: center;
    display: none;
}
.cruise-period-selector-whole-months-years-column.active{
    display: block;
}
.cruise-period-selector-whole-months-years-column > strong{
    font-size: 24px;
    line-height: 24px;
    display: block;
    margin-bottom: 7px;
}
.cruise-period-selector-whole-months-years-column ol {
    font-size: 0;
}
.cruise-period-selector-whole-months-years-column ol li{
    display: inline-block;
    font-size: 15px;
    line-height: 15px;
    margin: 2px;
}
.cruise-period-selector .info-text{
    text-align: center;
    margin: 0 5px 15px;
}
.search-results-form{
    background-color: #f3f3f3;
    padding: 20px 0;
}
.search-results-form .search-close-button-parent,
.search-results-form .close-search-x{
    display: none;
}
.search-results-form .cruise-search-form fieldset{
    margin-bottom: 0;
}
.cruise-search-form select,
.cruise-search-form input[type="text"]{
    border: 3px solid #fff;
    padding: 13px 13px 12px;
}
.cruise-search-form select{
    padding-right: 32px;
}
.cruise-search-form .price-per-person-filter{
    background-color: #fff;
    /* font-size: 13px; */
    text-align: center;
    height: 50px;
    padding-top: 3px;
}
.cruise-search-form .clear-filters{
    display: block;
    margin-top: 5px;
    text-decoration: underline;
}
.cruise-search-form .clear-filters:hover{
    color: #04a6db;
}
.cruise-search-form .price-per-person-filter input[type="number"]{
    width: 60px;
    padding: 3px;
    border: none;
    border-bottom: 1px dotted #ccc;
    outline: none;
    text-align: center;
    font-weight: bold;
}
.cruise-search-form .price-per-person-filter input[type="text"]:focus{
    border-bottom-style: solid;
    border-bottom-color: #333;
}
.cruise-search-form .price-per-person-filter > b{
    display: block;
    color: #555;
}
.cruise-search-form .price-per-person-filter label{
    display: inline-block;
    margin-bottom: 0;
    vertical-align: bottom;
    position: relative;
    bottom: -2px;
}
.cruise-search-form #pricePerPersonFrom{
    margin-right: 10px;
}
.cruise-search-form li:not(.search-close-button-parent){
    min-height: 48px;
}
.search-results-form .results-toggle-search{
    text-transform: uppercase;
    font-weight: bold;
    color: #0b3152;
}
.search-results-form .results-toggle-search:after{
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #0b3152;
    position: relative;
    top: -2px;
    left: 7px;
}
.search-results-form .results-toggle-search.active:after{
    transform: rotate(180deg);
}
.search-results-form .results-toggle-search .site-form .btn-sm span{
    top: -2px;
}
.cc-license{
    margin-bottom: 30px;
    color: #888;
    border: 1px solid #eee;
    padding: 10px;
    box-sizing: border-box;
    overflow: hidden;
}
.cc-license .license-icon,
.cc-license .license-icon img{
    display: block;
}
.cc-license .license-icon{
    float: left;
    margin: 2px 10px 0 0;
}
.cc-license a{
    color: #888;
}
/* .flight-search-form */
.flight-search-form{
    background-color: #f5f5f5;
    padding: 20px 30px 17px;
    clear: both;
    margin: 40px 0 0;
}
.flight-search-form > form{
    display: none;
}
.flight-search-form .toggle-form{
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    outline: none !important;
}
.flight-search-form .toggle-form:hover{
    opacity: 0.8;
}
.flight-search-form .toggle-form:before,
.flight-search-form .toggle-form:after{
    content: "";
    display: inline-block;
    position: relative;
}
.flight-search-form .toggle-form:before{
    background: url('../images/airplane-icon.png') no-repeat center center;
    width: 38px;
    height: 39px;
    margin-right: 18px;
    top: 10px;
}
.flight-search-form .toggle-form:after{
    background: url('../images/arrow-down.png') no-repeat center center;
    width: 22px;
    height: 22px;
    margin-left: 10px;
    position: relative;
    top: 2px;
    transition: transform 250ms;
}
.flight-search-form .toggle-form.active:after{
    transform: rotate(180deg);
}
.flight-search-form .site-form input,
.flight-search-form .site-form select{
    border-color: #ccc;
}
.flight-search-form .site-form fieldset {
    margin-bottom: 10px;
}
.flight-search-form .advanced-search-button{
    color: #0b3152;
    font-weight: bold;
}
.flight-search-form .advanced-search-button:after{
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #0b3152;
    position: relative;
    top: -2px;
    left: 7px;
}
.flight-search-form .advanced-search-button.active:after {
    transform: rotate(180deg);
}
.flight-search-form .visible-in-advanced-search,
.flight-search-form .advanced-search .visible-in-simple-search{
    display: none;
}
.flight-search-form .advanced-search .visible-in-advanced-search{
    display: block;
}
.flight-search-form hr{
    margin: 5px 2px 3px;
}
input.calendar-icon{
    background-image: url('../images/calendar-icon.png');
    background-repeat: no-repeat;
    background-position: right 10px center;
}
.autocomplete-list{
    display: none;
    position: absolute;
    z-index: 9;
    box-shadow: 1px 1px 2px #ccc;
}
.autocomplete-list > button,
.site-form .autocomplete-list > i{
    padding: 10px;
    background-color: #fff;
    display: block;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #ccc;
    text-align: left;
}
.autocomplete-list > button{
    margin-bottom: -1px;
}
.autocomplete-list > button:hover,
.autocomplete-list > button:focus{
    background-color: #eee;
}
.autocomplete-list > button img{
    position: relative;
    top: 1px;
    margin-right: 5px;
}
/* .site-notification */
.site-notification{
    padding: 20px 0;
    font-size: 15px;
    font-family: 'DaxPro';
    color: #143858;
}
/* .site-popup */
.site-popup{
    display: none;
    position: fixed;
    z-index: 9999999;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
}
.site-popup-overlay{
    position: absolute;
    background-color: rgba(0, 0, 0, 0.3);
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
}
.site-popup-close{
    position: absolute;
    top: 8px;
    right: 5px;
    width: 30px;
    height: 30px;
    display: block;
    background: #3ab8e1 url('../images/icon-close-white.svg') no-repeat center center;
}
.site-popup-heading{
    text-align: center;
    padding: 15px 30px;
    color: #fff;
    background-color: #3ab8e1;
}
.site-popup-heading h2{
    color: #fff;
    text-transform: uppercase;
}
.site-popup-content{
    padding: 20px;
    max-height: 80vh;
    overflow: auto;
}
.site-popup-type-image img,
.site-popup-content video,
.site-popup-content iframe{
    max-width: 100%;
    height: auto;
}
.site-popup-type-image .site-popup-content{
    padding: 0;
}
.site-popup-type-image img{
    display: block;
}
.site-popup-body{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50.2%);
    /* transform-style: preserve-3d; */
    background-color: #f7f7f7;
}
.site-popup-body.size-small{width: 300px;}
.site-popup-body.size-medium{width: 600px;}
.site-popup-body.size-big{width: 900px;}

/* subscribe popup */
.newsletter-popup .site-popup-content{
    padding: 0;
    outline: none;
}
.newsletter-popup .padded{
    padding: 20px;
}
.newsletter-popup .site-form fieldset{
    margin-bottom: 0;
}
.subscribe-popup-content{
    font-size: 14px;
}
.subscribe-popup-newsletter-form{
    padding: 20px;
    background-color: #e7e7e7;
}
.subscribe-popup-newsletter-form > span{
    display: block;
    padding: 10px 0 10px 90px;
    margin-bottom: 10px;
    background: url('../images/subscribe-popup-email-icon.png') no-repeat left center;
}
.newsletter-popup-close-button{
    display: none;
}
.subscribe-popup-newsletter-form .newsletter-popup-close-button{
    display: block;
    text-align: center;
    color: #3ab8e1;
    text-decoration: underline;
    margin-top: 3px;
}
.subscribe-popup-newsletter-form button[type="submit"]{
    width: 100%;
}
.subscribe-popup-group-link{
    display: block;
    padding: 30px 0 22px 70px;
    margin: 20px 0;
    background: url('../images/subscribe-popup-group-icon.png') no-repeat left center;
}
.subscribe-popup-group-link:hover{
    text-decoration: underline;
}
.subscribe-popup-newsletter-form.center {
    align-items: center;
    justify-content: center;
    display: grid;
}
.subscribe-popup-newsletter-form.center fieldset {
    align-items: center;
    justify-content: center;
    display: grid;
    width: 60%;
    margin-left: 20%;
}
.subscribe-popup-newsletter-form.center button[type="submit"]{
    width: 50%;
    margin-left: 25%;
}
.company-action-buttons{
    padding: 30px 0 50px;
}
.company-action-buttons .btn{
    margin: 0 15px;
}
/* Page specific */
.page-cruises-index .breadcrumbs{
    margin-bottom: 10px;
}
.list-page-search-from{
    padding: 50px 0;
}
/* Print */
@media print {
    #prophiler,
    .site-header .top,
    .primary-nav,
    .breadcrumbs,
    .company-highlights,
    .site-footer,
    .homepage-slider,
    .cruise-companies-logos,
    .hide-in-print,
    .clipped-content-button,
    .flight-search-form,
    .mosaic-slider .prev,
    .mosaic-slider .next,
    .mosaic-slider .frame > ul > li.featured,
    .share-tools {
        display: none !important;
    }
    .site-header .logo{
        margin: 0 auto;
    }
    .clipped-content .container{
        max-height: none !important;
    }
    .wrapper{
        width: auto;
    }
    .mosaic-slider .frame > ul > li,
    .mosaic-slider{
        height: auto !important;
    }
    .mosaic-slider .frame > ul{
        width: 100% !important;
    }
    .mosaic-slider .frame > ul > li{
        width: 50% !important;
    }
    .offices-list > li{
        width: 33.33%;
        margin: 0;
        padding: 10px;
    }
    h1, .h1{font-size: 24px;line-height: 24px;}
    h2, .h2{font-size: 20px; line-height: 20px;}
    h3, .h3{font-size: 18px; line-height: 18px;}
    h4, .h4, h5, .h5, h6, .h6{font-size: 16px; line-height: 16px;}
}

/* Media Queries */
@-moz-document url-prefix() {
    select,
    .cruise-search-form select,
    .site-form select {
        -moz-appearance: none;
        background-image: url('../images/small-arrow-down.png');
        background-repeat: no-repeat;
        background-position: right 10px center;
        padding-right: 34px;
    }
}
@media screen and (max-width: 1680px){
    .site-header .primary-nav > ul > li .supermenu {
        top: 50px;
    }
}
@media screen and (max-width: 1300px){
    .price-table tbody tr.row-date td div .promo-badge{
        position: static;
        transform: none;
        margin-top: 5px;
    }
    .page-cruises-view .featured .wrapper .disclaimer{
        margin-top: 30px;
    }
    .slides-prev,
    .slides-next{
        transform: none;
        top: initial;
        bottom: 45px;
    }
    .slides-next{
        right: 10px;
    }
    .slides-prev{
        left: 10px;
    }
}
@media screen and (max-width: 1250px){
    .scrollable-table-wrapper{
        overflow: auto;
    }
    .scrollable-table-wrapper::before{
        content: "\02190 \02192";
        font-size: 35px;
        line-height: 1;
        letter-spacing: 15px;
        display: block;
    }
    .site-footer .info span,
    .site-footer .info {
        display: block;
    }
    .wrapper {
        width: 96%;
    }
    .share-tools .tool-print,
    .site-header .primary-nav > ul{
        display: none;
    }
    .homepage-slider .controls .site-form{
        width: calc(100% - 10px);
    }
    .homepage-slider .close-search-x{
        display: none;
    }
    .cruise-search-form .price-per-person-filter input[type="number"] {
        width: 50px;
    }
    .cruise-search-form .price-per-person-filter {
        display: none;
    }
    .results:not(.grid-view) .info.in-promotion{
        padding-right: 10px;
    }
    .results.results-compact .preview {
        width: 100%;
    }
    .results .title{
        padding-right: 10px;
        font-size: 18px;
        line-height: 21px;
    }
    .results .badge{
        left: -15px;
        top: -44px;
    }
    .cruise-detailed-page-header {
        align-items: flex-start;
        margin-bottom: 10px;
    }
    .cruise-detailed-page-header h1 {
        padding-left: 45px;
        margin-bottom: 15px;
        min-height: 45px;
        font-size: 27px;
        line-height: 27px;
        /* max-width: 160px; */
    }
    .mobile-menu-button{
        position: relative;
        display: block !important;
        color: #0b3152;
        padding: 0 28px 0 15px;
        font-size: 18px;
        font-weight: 500;
        line-height: 18px;
        font-family: "Roboto Condensed";
    }
    .mobile-menu-button:after,
    .mobile-menu-button:before{
        content: "";
        display: block;
        position: absolute;
        width: 18px;
        top: 2px;
        right: 0;
    }
    .mobile-menu-button:before{
        height: 8px;
        border-top: 2px solid #0b3152;
        border-bottom: 2px solid #0b3152;
    }
    .mobile-menu-button:after{
        height: 2px;
        top: 7px;
        background-color: #0b3152;
    }
    .mobile-toggle-submenu{
        display: block !important;
        float: right;
        width: 25px;
        height: 25px;
        transition: transform 300ms;
        background: url('../images/arrow-down.png') no-repeat center center;
    }
    .mobile-toggle-submenu.active{
        transform: rotate(180deg);
    }
    .site-header .primary-nav > ul > li > a{
        text-align: left;
        float: left;
    }
    .site-header .primary-nav > ul > li > a.has-sub{
        width: calc(100% - 40px);
        padding-top: 5px;
    }
    .site-header .primary-nav > ul > li .supermenu{
        position: relative;
        left: 0;
        top: 0;
        transform: none;
        margin: 43px 0 0;
    }
    .site-header .primary-nav > ul > li .supermenu a{
        white-space: initial;
    }
    .site-header .primary-nav > ul > li .supermenu:after,
    .site-header .primary-nav > ul > li .supermenu:before{
        left: 20px;
        transform: translate(0) rotate(45deg);
    }
    .site-header .primary-nav{
        margin: 0;
    }
    .primary-nav.is-open > ul{
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        z-index: 9997;
        background-color: #fff;
    }
    .site-header .primary-nav > ul > li{
        display: block;
        padding: 15px 10px;
        margin: 0;
        overflow: hidden;
    }
    .site-header .primary-nav > ul > li:nth-child(odd){
        background-color: #f0f0f0;
    }
    .site-header .bottom {
        justify-content: space-between;
        padding: 10px;
        position: relative;
    }
    .site-header .logo img{
        width: 150px;
        height: auto;
    }
    .company-highlights > strong {
        font-size: 50px;
        line-height: 46px;
        width: 45%;
    }
    .company-highlights > ul {
        width: 40%;
    }
    .footer-nav{
        padding: 8px 0;
    }
    .footer-nav a {
        padding: 8px;
    }
    .site-footer .info span{
        margin: 0 0 15px;
    }
    .site-section {
        padding: 20px 0;
    }
    .site-section-title {
        font-size: 32px;
        line-height: 32px;
        margin-bottom: 20px;
    }
    .cruise-companies-logos ul li {
        margin: 0;
    }
    .cruise-companies-logos ul li a {
        width: 140px;
        height: 80px;
    }
    .articles-list li {
        margin-bottom: 35px;
    }
    .homepage-slider .slides,
    .homepage-slider .slides li {
        height: 360px;
    }
    .btn {
        padding: 0 15px;
        height: 45px;
        line-height: 40px;
        font-size: 18px;
    }
    .btn:after {
        left: 8px;
        top: 4px;
    }
    .homepage-slider .slides li .content {
        padding: 30px;
    }
    .site-section-title:before,
    .site-section-title img {
        top: 8px;
    }
    .site-header .top .sites-network a {
        padding: 0 10px;
    }
    .featured-list > li{
        flex-basis: 340px;
        flex-grow: 0;
        flex-shrink: 0;
    }
    .list-with-image.image-on-left .summary,
    .list-with-image .summary{
        float: none;
        width: auto;
        margin-bottom: 15px;
    }
    .list-with-image.image-on-left .preview,
    .list-with-image .preview{
        float: left;
    }
    .list-with-image .btn{
        clear: none;
        margin-top: 0;
    }
    .ships-list .info{
        width: 56%;
    }
    .ships-list .preview {
        width: 40%;
    }
    .ships-list .preview img{
        width: 100%;
        height: auto;
    }
    .cruise-detailed-page .cruise-top .info,
    .cruise-detailed-page .cruise-top .map-container{
        width: 49%;
    }
}
@media screen and (max-width: 960px){
    .mobile-toggle-price-info,
    .slider-pagination,
    .mosaic-slider .frame-desktop,
    .breadcrumbs,
    .site-tabs [role="tab"][aria-selected="true"]:after,
    .expandable-table .row-details td > div .close-button,
    .toggle-offer-prices-parent,
    .page-cruises-view .cruise-route-desktop,
    .page-cruises-view .price-table,
    .articles-list > li > div > p,
    .site-header .top .sites-network,
    .cruise-detailed-page .cruise-top .map-container .toggle-full-screen,
    .results .prices .btn,
    .results-header .change-view,
    .site-header .primary-nav > ul > li a:before,
    .site-header .primary-nav > ul > li:after,
    .primary-nav > ul{
        display: none;
    }
    .text img[style*="float:center;"],
    .text img[style*="float: center;"],
    .text img[style*="float:left;"],
    .text img[style*="float: left;"],
    .text img[style*="float:right;"],
    .text img[style*="float: right;"]{
        float: none !important;
        box-sizing: border-box;
        /* width: 100% !important; */
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }
    .text img:not(.ship-view-offers-arrow){
        margin: 5px 0 !important;
        /* width: 100% !important; */
        max-width: 100% !important;
        height: auto !important;
    }
    .price-type-options{
        margin-bottom: 15px;
    }
    .mobile-toggle-price-button{
        display: inline-block !important;
        position: relative;
        top: 5px;
    }
    .text .mobile-toggle-price-button img{
        margin: 0 !important;
    }
    .ships-list .company-logo img{
        max-height: 57px;
        width: auto;
    }
    .articles-list{
        margin-bottom: 0;
    }
    .cruise-prices{
        padding-top: 15px;
    }
    .results .top {
        align-items: center;
    }
    .results .preview img{
        width: 100%;
        display: block;
    }
    .articles-list .preview {
        margin-right: 10px;
        width: 100px;
    }
    .articles-list .preview img{
        width: 100%;
        height: auto;
    }
    .list-page-search-from{
        width: 96%;
        margin: 0 auto 10px;
    }
    .list-page-search-from .btn{
        width: 100%;
    }
    .articles-list > li.no-image{
        text-align: center;
    }
    .articles-list > li:not(.no-image) > div{
        width: calc(100% - 100px);
    }
    .articles-list .title {
        font-size: 18px;
        line-height: 22px;
    }
    .site-section-title {
        font-size: 23px;
        line-height: 27px;
    }
    .site-section-title img{
        width: 28px;
        height: 28px;
        top: 6px;
        margin-right: 2px;
    }
    .site-section-title:before,
    .flight-search-form .toggle-form:before{
        width: 26px;
        height: 26px;
        background-size: contain !important;
        margin-right: 0;
        top: 5px;
    }
    .flight-search-form .toggle-form:before{
        margin-right: 5px;
    }
    .flight-search-form .toggle-form{
        padding: 0;
        margin: 0 auto 10px;
    }
    .company-highlights {
        display: block;
        padding: 15px 15px 7px;
        margin-bottom: 20px;
    }
    .company-highlights > strong {
        font-size: 30px;
        line-height: 30px;
        width: 100%;
        margin-bottom: 10px;
    }
    .company-highlights > ul {
        width: 100%;
        padding-left: 0;
        border: none;
    }
    .site-header .top .secondary-nav a {
        padding: 0 8px 0 13px;
        height: 35px;
        line-height: 35px;
        font-size: 14px;
    }
    .site-header .top {
        position: relative;
        padding-bottom: 35px;
    }
    .site-header .top .secondary-nav a.newsletter{
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
    }
    .homepage-slider .controls{
        width: 96%;
        padding: 5px;
        margin: 0 auto;
        box-sizing: border-box;
        position: relative;
    }
    .homepage-slider .slides li .content{
        position: relative;
        width: auto;
        min-height: 190px;
    }
    .homepage-slider .slides,
    .homepage-slider .slides li {
        height: auto;
    }
    .homepage-slider .slides li .content {
        padding: 10px;
    }
    .homepage-slider .controls .actions .btn{
        width: 100%;
        margin: 5px 0;
        box-sizing: border-box;
    }
    .homepage-slider .close-search-x {
        right: 0;
        top: 10px;
    }
    .homepage-slider .slides li .text-link strong{
        font-size: 22px !important;
        line-height: 25px !important;
    }
    .homepage-slider .slides li .bottom strong{
        font-size: 40px !important;
        line-height: 40px !important;
    }
    .homepage-slider .slides li .text-link span,
    .homepage-slider .slides li .text-link strong,
    .homepage-slider .slides li .prices del,
    .homepage-slider .slides li .prices strong{
        color: #fff !important;
        text-shadow: 0 0 2px #333;
    }
    .homepage-slider .slides li .text-link span,
    .homepage-slider .slides li .text-link strong{
        max-width: 70%;
        display: block;
    }
    .homepage-slider .slides li .text-link span{
        font-size: 16px !important;
        line-height: 18px !important;
    }
    .homepage-slider .slides li .prices del{
        font-size: 27px !important;
        line-height: 27px !important;
    }
    .grid{
        margin: 0;
    }
    .grid [class^="col-"],
    .grid [class*=" col-"]{
        float: none;
        width: 100%;
        margin: 5px 0;
    }
    .site-popup-body{
        left: 5px;
        right: 5px;
        top: 5px;
        width: auto !important;
        transform: none;
    }
    /* Fatured as column */
    .featured-list{
        margin: 0;
    }
    .page-cruises-view .featured-list > li{
        width: 300px;
        flex-basis: 300px;
    }
    .featured-list > li{
        flex-basis: 100%;
        width: 100%;
    }
    .featured-list .info {
        padding: 9px 9px;
    }
    .featured-list .title {
        font-size: 18px;
        line-height: 20px;
        padding-right: 5px;
    }
    .featured-list .price strong {
        font-size: 32px;
        line-height: 35px;
    }
    .featured-list .bottom{
        position: relative;
        padding-bottom: 50px;
    }
    .featured-list .bottom .btn{
        padding: 0 9px;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        text-align: center;
        height: 40px;
        line-height: 37px;
    }
    .featured-list .bottom .btn:after {
        left: 5px;
        top: 5px;
    }
    .page-header {
        /* display: block; */
    }
    .share-tools {
        min-width: 0;
    }
    .related-offers .results-header h3{
        font-size: 19px;
        line-height: 21px;
    }
    .list-with-image .btn{
        margin: 15px auto 0;
        width: 180px;
        display: block;
        text-align: center;
        clear: both;
    }
    .list-with-image .btn,
    .list-with-image .preview {
        float: none;
    }
    .list-with-image .preview{
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 20px;
    }
    .filter-ship-form {
        text-align: left;
    }
    .filter-ship-form select{
        width: auto;
        margin-bottom: 10px;
    }
    .page-header-outer {
        padding: 10px 0 5px;
    }
    .ships-list {
        padding: 15px 0;
    }
    .ships-list > li {
        padding-bottom: 50px;
    }
    .ships-list .info,
    .ships-list .preview{
        width: 100%;
    }
    .ships-list .info{
        padding: 15px;
    }
    .ships-list .about{
        margin-bottom: 15px;
    }
    .ships-list .about, .ships-list .tech {
        padding-left: 45px;
    }
    .ship-details .tech li,
    .ships-list .tech li{
        float: none;
        width: 100%;
    }
    .ships-list .tech .btn{
        float: none;
    }
    h1, .h1,
    h2, .h2,
    h3, .h3,
    h4, .h4,
    h5, .h5,
    h6, .h6{
        font-size: 27px;
        line-height: 29px;
    }
    h2, .h2{font-size: 23px; line-height: 27px;}
    h3, .h3{font-size: 21px; line-height: 25px;}
    h4, .h4{font-size: 19px; line-height: 22px;}
    h5, .h5, h6, .h6{font-size: 16px; line-height: 18px;}

    .article .main-image{
        float: none;
        margin-right: 0;
        width: 100%;
        height: auto;
    }
    .company-action-buttons{
        padding-bottom: 0;
    }
    .company-action-buttons .btn:first-child{
        margin-bottom: 15px;
    }
    .company-action-buttons .btn{
        margin: 0;
        padding: 10px 15px 14px;
        height: auto;
        line-height: 20px;
        font-size: 18px;
        display: block;
    }
    .ship-details > li > img {
        max-width: 45px;
    }
    .ship-details > li > img.ship-offers-icon{
        max-width: 32px;
        padding: 5px;
    }
    .ship-details > li .tech, .ship-details > li .text {
        margin-left: 55px;
    }
    .ship-details > li {
        margin-bottom: 15px;
    }
    .mosaic-slider{
        margin-bottom: 20px;
    }
    .mosaic-slider,
    .mosaic-slider .frame > ul > li img,
    .mosaic-slider .frame > ul > li{
        height: 300px;
    }
    .mosaic-slider .frame > ul > li img{
        width: auto;
        border: none;
    }
    .mosaic-slider .prev{
        left: 0;
    }
    .flight-search-form {
        padding: 5px 10px;
    }
    .results .disclaimer{
        font-size: 13px;
        text-align: center;
    }
    .results .company{
        margin-top: 0;
    }
    .results .info {
        padding: 10px;
    }
    .results .title{
        margin-right: 0;
        margin-bottom: 0;
        max-width: none;
    }
    .results .bottom ul > li{
        padding-right: 0;
    }
    .results .bottom time{
        padding-right: 0;
    }
    .results .prices,
    .results .bottom ul > li.start,
    .results .bottom ul > li.end{
        width: 100%;
    }
    .results .preview{order: 0;}
    .results .prices{order: 1;}
    .results .info{order: 2;}
    .results .disclaimer{order: 3;}

    .results .prices {
        padding: 10px;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-around;
    }
    .results .prices ul {
        border-top: none;
        border-left: 1px solid #9ddcf0;
        margin: 0;
        padding-top: 0;
        padding-left: 20px;
    }
    .results.grid-view .prices ul{
        border-left: none;
    }
    .results .info .btn.mobile-only{
        display: block !important;
        text-align: center;
    }
    .cruise-detailed-page .cruise-top .prices .price strong,
    .results .prices .price strong {
        font-size: 36px;
        line-height: 41px;
    }
    .results.results-compact .prices .price{
        width: 100%;
        text-align: center;
    }
    .results .prices li no-margin {
        margin-left: 0px;
        margin-right: 0px;
    }
    .cruise-detailed-page-header {
        display: block;
    }
    .cruise-detailed-page-header h1 {
        max-width: none;
    }
    .cruise-detailed-page .cruise-top {
        flex-direction: column;
    }
    .cruise-detailed-page .cruise-top .map-container{
        width: 100%;
        margin-bottom: 10px;
    }
    .cruise-detailed-page .cruise-top .map {
        height: 270px;
    }
    .cruise-detailed-page .cruise-top .map-container > em{
        font-size: 12px;
        line-height: 13px;
    }
    .cruise-detailed-page .cruise-top .details {
        font-size: 16px;
    }
    .cruise-detailed-page .cruise-top .info{
        width: auto;
    }
    .cruise-detailed-page .cruise-top .prices {
        padding: 10px;
    }
    .cruise-detailed-page .cruise-top .prices.has-promo-label {
        padding-right: 30px;
    }
    .cruise-detailed-page .cruise-top .prices .label {
        right: -92px;
        top: 4px
    }
    .cruise-detailed-page .cruise-top .prices ul{
        padding: 0 10px 0 0;
        width: 65%;
        margin-right: 10px;
    }
    .cruise-detailed-page .cruise-top .prices ul li strong{
        font-size: 17px;
        line-height: 18px;
    }
    .cruise-detailed-page .cruise-top .prices > div{
        padding-left: 0;
    }
    .offices-list > li{
        margin-right: 0;
        margin-bottom: 20px;
        width: 100%;
    }
    .list-with-image.image-on-left .preview img{
        width: 100%;
        height: auto;
    }
    #contacts-map #map-container{
        height: 400px;
    }
    #contacts-map select[name="town-select"] {
        top: 10px;
        right: 10px;
    }
    .site-form fieldset{
        margin-bottom: 0;
    }
    .page-cruises-view .mobile-cruise-route,
    .page-cruises-view .mobile-cruise-prices{
        display: block !important;
    }
    .mobile-price-table-rows{
        display: flex;
        justify-content: space-around;
        align-items: flex-start;
    }
    .mobile-price-table-row{
        overflow: hidden;
        color: #023f6e;
        text-align: center;
    }
    .mobile-price-table-row span:first-child{
        display: block;
    }
    .mobile-price-table-row span:last-child{
        display: block;
    }
    .mobile-price-table-row span:first-child,
    .cruise-prices .mobile-price-table-row del{
        font-size: 11px;
    }
    .cruise-prices .mobile-price-table-row .price-tag{
        font-size: 18px;
        line-height: 18px;
    }
    .mobile-cruise-prices .expandable-table td.button-cell{
        padding: 0;
    }
    .mobile-cruise-prices .expandable-table .row-details-button {
        padding: 15px 50px 15px 10px;
        position: relative;
        width: 100%;
        display: block;
        overflow: hidden;
        box-sizing: border-box;
        background-color: #f9f9f9;
    }
    .mobile-cruise-prices .expandable-table .row-details-button > span:first-child{
        float: left;
        margin-top: 2px;
    }
    .mobile-cruise-prices .expandable-table .row-details-button > span:last-child{
        float: right;
    }
    .mobile-cruise-prices .expandable-table .row-details-button .promo-badge{
        position: relative;
        top: -1px;
        margin-right: 5px;
    }
    .mobile-cruise-prices .expandable-table .row-details td{
        padding: 0;
    }
    .mobile-cruise-prices .expandable-table .row-details td .btn{
        margin: 10px;
        width: calc(100% - 20px);
        text-align: center;
    }
    .mobile-cruise-prices .expandable-table .row-details-button:after{
        background-image: url('../images/arrow-down.png');
        width: 22px;
        height: 22px;
        top: 50%;
        right: 13px;
        margin-top: -11px;
        transition: transform 250ms;
        position: absolute;
    }
    .mobile-cruise-prices .expandable-table .row-details-button.active{
        background-color: #fff;
    }
    .mobile-cruise-prices .expandable-table .row-details-button.active:after{
        transform: rotate(180deg);
    }
    .site-tabs [role="tabpanel"]#tab-ship > h2,
    .site-tabs [role="tabpanel"]#tab-ship .ship-details,
    .decks-list li .zoom,
    .site-tabs [role="tabpanel"]{
        padding: 5px;
    }
    .cabins-list > li {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
    .expandable-table .row-details .preview,
    .cabins-list > li > img{
        float: none;
        max-width: 100%;
        height: auto;
        display: block;
        margin-bottom: 10px;
    }
.cabins-list > li > em{
        float: none;
        max-width: 100%;
        height: auto;
        display: block;
        margin-top: -10px;
    }
    .cabins-list > li .info{
        margin-left: 0;
margin-top: 60px;
    }
    .mobile-cruise-route .expandable-table td{
        padding: 15px 5px;
    }
    .expandable-table td button {
        white-space: initial;
        padding: 0;
    }
    .site-tabs [role="tablist"]{
        display: block;
    }
    .site-tabs [role="tablist"] a{
        display: none;
    }
    .site-tabs [role="tablist"] a.is-visible{
        display: block;
    }
    .site-tabs [role="tablist"] .mobile-tab-menu-button{
        display: block !important;
        border: 8px solid #0b3152;
        font-size: 18px;
        font-weight: 700;
        width: 100%;
        font-family: "Roboto Condensed";
        text-transform: uppercase;
        padding: 15px;
        box-sizing: border-box;
        background: #fff url('../images/arrow-down.png') no-repeat right 10px center;
    }
    /* Cabin configurator */
    .cabin-configurator-row tfoot,
    .cabin-configurator-row .header label,
    .cabin-configurator-row .children-age-boxes,
    .cabin-configurator-row .header,
    .cabin-configurator-row table,
    .cabin-configurator-row tbody,
    .cabin-configurator-row tr,
    .cabin-configurator-row td{
        display: block;
    }
    .cabin-configurator-row tr{
        overflow: hidden;
        border-bottom: 1px solid #dbdbdb;
    }
    .cabin-configurator .actions .actions-left{
        width: calc(100% - 200px);
    }
    .cabin-configurator .actions .actions-right{
        width: 180px;
    }
    .cabin-row .content,
    .cabin-configurator-row td,
    .cabin-configurator-row .header,
    .cabin-configurator-row .content{
        padding: 10px;
    }
    .cabin-configurator-row td{
        border: none;
    }
    .cabin-configurator-row table thead,
    .cabin-configurator-row .expandable-table .row-details-button:after{
        display: none;
    }
.cabin-configurator-row .expandable-table .row-details td > div > em {
        float: none;
        max-width: 100%;
        height: auto;
        display: block;
        margin-top: -10px;
margin-left: 0px;
position: absolute;
    }
.cabin-configurator-row .expandable-table .row-details td > div > h3 {
        margin-top: 60px;
    }
    .mosaic-slider .mobile-only,
    .cabin-configurator-row .mobile-only{
        display: block !important;
    }
    .cabin-configurator-row .header h3{
        margin-bottom: 15px;
    }
    .cabin-configurator-row .header .children-age-boxes select,
    .cabin-configurator-row .header select{
        width: 100%;
    }
    .cabin-configurator .children-age-boxes-inputs{
        margin: 0;
        padding: 10px 0 5px;
    }
    .cabin-configurator .children-age-boxes-inputs > label{
        margin-left: 0;
    }
    .cabins-configurator-cabin-types{
        clear: both;
    }
    .cabin-configurator-row .children-age-boxes,
    .cabins-configurator-adults-count{
        width: 49%;
        float: left;
    }
    .cabin-configurator-row .children-age-boxes-inputs > label{
        margin-right: 0;
        margin-bottom: 10px;
        width: 100%;
    }
    .cabin-configurator-row .children-age-boxes{
        float: right;
    }
    .cabin-configurator .btn-sm {
        padding: 0 10px;
        font-size: 14px;
        margin: 0 3px;
    }
    .cabin-configurator .actions > div:first-child em{
        max-width: 100%;
        font-size: 12px;
        margin-bottom: 10px;
        line-height: 15px;
    }
    .cabin-configurator-row tfoot td{
        text-align: center;
    }
    .cruise-period-selector-wrapper{
        left: 0;
        right: 0;
        box-shadow: 0 0 5px #111;
    }
    .cruise-period-selector-whole-months-years{
        width: auto !important;
    }
    .cruise-period-selector-specific-dates .kalendae{
        padding: 0;
        margin: 0 auto;
        display: block
    }
    .kalendae .k-title{
        position: static !important;
    }
    .cruise-period-selector-specific-dates .kalendae,
    .kalendae .k-calendar,
    .kalendae .k-title,
    .kalendae .k-header,
    .kalendae .k-days {
        width: 285px !important;
    }
    .kalendae .k-header span,
    .kalendae .k-days span {
        width: 36px !important;
        height: 36px !important;
        font-size: 16px !important;
        line-height: 32px !important;
    }
    .flight-form .kalendae{
        margin-left: -14px !important;
    }
    .cruise-period-selector-specific-dates {
        padding: 0 5px;
    }
    .results.grid-view > li{
        width: 100%;
    }
    .results.grid-view .info{
        padding-bottom: 10px;
    }
}
@media screen and (max-width: 800px){
    .openx-banner{
        display: none;
    }
    .cabin-configurator .actions .actions-right .confirm-button{
        height: 60px;
        padding: 0 30px;
    }
}
@media screen and (max-width: 700px){
    .results .preview{
        width: 100%;
    }
    .kalendae .k-calendar{
        display: block !important;
        margin: 0 auto !important;
    }
    .kalendae .k-separator{
        display: none !important;
    }
    .cruise-period-selector-specific-dates{
        padding: 0;
    }
    .kalendae .k-btn-next-month{
        right: 10px !important;
    }
    .kalendae .k-btn-previous-month{
        left: 10px !important;
    }
    .kalendae.k-floating{
        padding: 10px 0;
    }
}
@media screen and (max-width: 650px){
    .page-header{
        display: block;
    }
    .page-header h1{
        margin-bottom: 10px;
    }
}
@media screen and (max-width: 600px){
    .cabin-configurator .actions{
        display: block;
    }
    .cabin-configurator .actions .btn:not(.confirm-button):not(:last-child){
        margin-right: 3px;
    }
    .cabin-configurator .actions .actions-left{
        text-align: center;
    }
    .cabin-configurator .actions .actions-left,
    .cabin-configurator .actions .actions-right{
        width: 100%;
    }
    .cabin-configurator .actions .actions-right{
        text-align: center;
        padding-top: 20px;
    }
    .cabin-configurator .actions > div:first-child em{
        margin-bottom: 0;
    }
    .ships-list .company-logo{
        position: static;
        margin-left: 15px;
    }
    .ships-list .company-logo img{
        max-height: none;
        width: auto;
    }
}
@media screen and (max-width: 550px){
    .results.grid-view .preview,
    .results.grid-view .prices{
        width: 100%;
    }
}
@media screen and (max-width: 350px){
    .slides-prev,
    .slides-next{
        bottom: 60px;
    }
}