.clearfix:after, .operator__header:after, .tabs:after, .row:after, .content:after {
    content: "";
    display: table;
    clear: both
}
@keyframes fadeIn {
    99% {
        visibility: hidden
    }
    100% {
        visibility: visible
    }
}
.u-block {
    display: block
}
.inline-block {
    display: inline-block
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, main, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {
    display: block
}
body {
    line-height: 1;
    font-size: 16px
}
html {
    font-size: 16px;
    box-sizing: border-box
}
ol, ul {
    list-style: none
}
blockquote, q {
    quotes: none
}
blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    content: none
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
button {
    font: inherit
}
*, *:before, *:after {
    box-sizing: inherit;
    margin: 0;
    padding: 0
}
.text-ad-links {
    display: none
}
.mb-4 {
    margin-bottom: .25rem
}
.mb-10 {
    margin-bottom: .625rem
}
.mb-20 {
    margin-bottom: 1.25rem
}
@media(min-width: 744px) {
    .mb-4-t {
        margin-bottom: .25rem
    }
    .mb-10-t {
        margin-bottom: .625rem
    }
    .mb-20-t {
        margin-bottom: 1.25rem
    }
}
b, strong, h1, h2, h3, h4, .strong {
    font-weight: 600
}
h1 {
    font-size: 1.5rem;
    line-height: 1.75rem
}
.serif {
    font-family: "Gentium Basic", serif
}
.sans {
    font-family: "Noto Sans", "Arial", sans-serif
}
a, .a {
    display: inline;
    background: none;
    border: none;
    color: #0378a0;
    text-decoration: none;
    cursor: pointer
}
.a {
    font-size: .9375rem;
    line-height: 1.25rem;
    font-weight: normal
}
.a:focus {
    outline: none;
    text-decoration: underline
}
a.txt--underline, .a--underlined {
    text-decoration: underline
}
.a--dashed {
    border-bottom: 1px dashed
}
.a--dotted {
    color: #444;
    border-bottom: 1px dotted
}
.sb-darkgrey {
    color: #444
}
.sb-grey {
    color: #b3b3b3
}
.sb-mediumgrey {
    color: #666
}
.sb-green {
    color: #2a7018
}
.sb-red {
    color: #006400
}
.sb-white {
    color: #fff
}
.strikethrough {
    text-decoration: line-through
}
.fs-12 {
    font-size: .75rem
}
.fs-13 {
    font-size: .8125rem
}
.fs-14 {
    font-size: .875rem
}
.fs-18 {
    font-size: 1.125rem
}
.fs-20 {
    font-size: 1.25rem
}
.fs-24 {
    font-size: 1.5rem;
    line-height: 1.875rem
}
.fs-34 {
    font-size: 2.125rem;
    line-height: 2.375rem
}
.weight-normal {
    font-weight: normal !important
}
.weight-bold {
    font-weight: bold !important
}
.nowrap {
    white-space: nowrap
}
.heading--anchor {
    padding-top: 2.5rem
}
.truncated {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100% !important;
    max-width: 100%;
    min-width: 0 !important;
    display: inline-block !important
}
.truncated--inline {
    width: auto !important
}
.center {
    text-align: center
}
.nowrap {
    white-space: nowrap
}
@media(min-width: 744px) {
    .fs-15-t {
        font-size: .9375rem
    }
}
@media(hover: hover) {
    a:not(.a--dashed):not(.a--dotted):not(.a--underlined):not(a.wildlife):hover, .a:not(.a--dashed):not(.a--dotted):not(.a--underlined):not(a.wildlife):hover {
        text-decoration: underline
    }
    .a--underlined:hover {
        text-decoration: none
    }
}
.shadowed-box, .card {
    box-shadow: 0px 2px 3px rgba(0, 0, 0, .18)
}
.shadowed-box--hover {
    transition: box-shadow .2s ease-in-out
}
.shadowed-box--hover:hover {
    box-shadow: 0px 2px 10px rgba(0, 0, 0, .4)
}
@-webkit-keyframes spin {
    from {
        -webkit-transform: rotate(0deg)
    }
    50% {
        -webkit-transform: rotate(180deg)
    }
    to {
        -webkit-transform: rotate(360deg)
    }
}
@keyframes spin {
    from {
        transform: rotate(0deg)
    }
    50% {
        transform: rotate(180deg)
    }
    to {
        transform: rotate(360deg)
    }
}
.loading {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    margin-left: -15px;
    border: 4px solid #048cba;
    border-right-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}
.loading--small {
    width: 1.25rem;
    height: 1.25rem;
    margin-top: -0.625rem;
    margin-left: -0.625rem;
    border-width: 3px
}
.loading--white {
    border-color: #fff;
    border-right-color: rgba(0, 0, 0, 0)
}
.expertbar {
    position: relative;
    display: block;
    padding: 2.5rem .625rem 1.25rem;
    border-top: 1px solid #d9d9d9;
    font-size: .8125rem;
    color: #444;
    background-color: #e9e9e9
}
.expertbar .container {
    margin-bottom: 1.25rem
}
.expertbar a {
    color: #0378a0;
    text-decoration: none
}
.expertbar a:hover {
    text-decoration: underline !important
}
.expertbar .expert p {
    line-height: 1rem
}
.expertbar__top {
    position: relative;
    margin-bottom: 1.875rem
}
.expertbar__heading {
    font-size: 1rem
}
.expertbar__subtext {
    display: block;
    line-height: 1.125rem
}
.expertbar__banner {
    display: block;
    width: 2.5rem;
    height: 2.8125rem;
    background-color: #006400;
    position: absolute;
    right: .9375rem;
    top: -2.6875rem
}
.expertbar__banner .expertbar__banner-mark {
    display: block;
    overflow: hidden;
    width: 1.5rem;
    margin-left: .5rem;
    margin-top: .3125rem
}
.expertbar__banner:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 1.25rem solid rgba(0, 0, 0, 0);
    border-right: 1.25rem solid rgba(0, 0, 0, 0);
    border-bottom: .875rem solid #e9e9e9;
    position: absolute;
    bottom: -0.03125rem;
    left: 0
}
.expertbar__experts {
    margin: 0 -0.625rem
}
@media(max-width: 743px) {
    .expertbar .expert p {
        margin-bottom: 1.25rem
    }
}
.footer {
    background-color: #3f3d3d;
    color: #fff;
    padding: .625rem 0;
    font-size: .8125rem;
    line-height: 1.5rem;
    z-index: 1;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important
}
.expertbar+.footer, .directory-extra+.footer {
    margin-top: 0
}
.footer .col-4 {
    padding-top: 1.25rem
}
.footer ul li {
    padding: .25rem 0
}
.footer ul li a {
    color: #cbc7c7;
    line-height: 1.375rem;
    width: 100%;
    height: 100%;
    display: block;
    white-space: nowrap
}
.footer p {
    margin-top: .625rem;
    padding-top: .625rem;
    border-top: 1px solid #999;
    color: #999
}
.footer .container {
    margin-bottom: 1.25rem
}
.footer .copyright {
    text-align: left;
    font-size: .75rem
}
.footer .copyright img {
    display: none
}
.footer .copyright .container {
    margin-bottom: 0
}
.footer .copyright--clean {
    padding: 0 .625rem !important
}
.footer .copyright--clean p {
    border-top: 0;
    margin-top: 0;
    padding-bottom: .625rem;
    text-align: left
}
.footer .copyright--clean .copyright__column {
    text-align: left;
    padding: 0;
    white-space: nowrap
}
.footer .copyright--clean .copyright__column--nav a {
    color: #999
}
.footer .currency-selector__button.btn {
    border: .0625rem solid #cbc7c7;
    text-align: left;
    padding-left: .9375rem;
    border-radius: 0
}
.footer .currency-selector--mobile {
    margin-bottom: .3125rem;
    margin-top: 1.25rem
}
.footer .mobile-socials {
    text-align: center;
    padding-top: 0
}
.footer .mobile-socials a {
    float: none;
    margin: 0;
    margin-top: .625rem;
    position: relative;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: .75rem
}
.footer .mobile-socials .social-icon:nth-child(1), .footer .mobile-socials .social-icon:nth-child(2) {
    margin-right: .5rem;
    margin-left: 0
}
body.has-floating-request-btn .footer .copyright {
    padding-bottom: 5.3125rem
}
@media(max-width: 743px) {
    .directory-extra {
        margin-top: 2.5rem;
        margin-bottom: -2.5rem
    }
}
@media(hover: hover) {
    html.no-touch .currency-selector__button.btn:hover {
        text-decoration: none;
        background-color: #cbc7c7;
        color: #fff
    }
    html.no-touch .currency-selector__button.btn:hover:before {
        border: 0 !important
    }
}
html, body {
    height: 100%;
    min-height: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: "Noto Sans", "Arial", sans-serif;
    color: #444;
    font-size: 16px
}
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}
body {
    background-color: #f2f2f2
}
body.reviewbox, body.whitebg {
    background-color: #fff
}
body.transparent {
    background-color: rgba(0, 0, 0, 0)
}
body.noscroll {
    overflow: hidden
}
body.hiddenscroll {
    overflow-y: scroll;
    position: fixed;
    width: 100%
}
.visuallyhidden {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0
}
.container {
    margin: 0 auto;
    display: block
}
.container--main {
    padding: .9375rem 0 1.875rem;
    width: auto;
    text-align: left
}
.container--main img {
    max-width: 100%
}
.container--main--white {
    background: #fff;
    position: relative;
    z-index: 2;
    padding: 0;
    margin: 0 .625rem 1.875rem;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, .18)
}
.container--wide {
    max-width: none !important
}
.container--padded {
    padding: 1.25rem .625rem
}
.container__unpad {
    margin: 0 -0.625rem
}
.container--form {
    padding: .3125rem 0
}
.container--form--content {
    padding: 1.25rem .625rem 2.5rem
}
.container--hero {
    position: relative;
    z-index: 1;
    margin-top: -0.9375rem
}
.container--hero:after {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    padding-bottom: 40%;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.9))
}
.container--hero__heading {
    position: relative;
    display: flex;
    align-items: flex-end;
    height: 40vw;
    z-index: 1;
    color: #fff;
    padding: 0 0 .625rem;
    text-shadow: 1px 1px 5px #000;
    font-family: "Gentium Basic", serif
}
.container--hero__text {
    position: relative;
    z-index: 1;
    display: block;
    padding: 1.25rem;
    margin-bottom: -1.25rem;
    background: #fff;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, .18)
}
.container--hero__text p:not(:last-child) {
    margin-bottom: 1.375rem
}
.container--hero__bg {
    position: absolute;
    z-index: -1;
    top: 0;
    height: 40vw;
    width: 100%;
    object-fit: cover
}
.container--shaded {
    position: relative
}
.container--shaded:before {
    content: "";
    background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0)) left top/100% .3125rem no-repeat;
    display: block;
    width: 100%;
    height: .3125rem;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 1
}
.content {
    background-color: #fff;
    display: block;
    color: #444;
    z-index: 10;
    padding: .625rem .625rem;
    box-shadow: 0 0 5px rgba(0, 0, 0, .18)
}
.content--tabbed {
    padding: 0 !important
}
.hide {
    display: none !important
}
.block {
    display: block !important
}
.wrapper {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-rows: 1fr auto;
    min-height: 100vh;
    width: 100%
}
.header {
    grid-row-end: 1
}
.main {
    max-width: 100vw;
    overflow: hidden;
    padding-bottom: 2.5rem
}
.wrapper, .overlay {
    font-size: .9375rem;
    line-height: 1.375rem
}
.wrapper--stickyfooter {
    padding-bottom: 7.5rem
}
.wrapper--stickyfooter footer {
    position: absolute;
    bottom: 0;
    width: 100%
}
.svg {
    display: none
}
.svg.replaced-svg {
    display: inline-block
}
svg.only-defs {
    width: 0;
    height: 0;
    visibility: hidden;
    position: absolute
}
.center-aligned {
    text-align: center
}
.right-aligned {
    text-align: right
}
.right-floated {
    float: right
}
.mirrored {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1)
}
.txt--darkgrey {
    color: #444
}
.txt--grey {
    color: #666
}
.txt--grey2 {
    color: #888
}
.txt--xgrey {
    color: #999
}
.txt--xsmall {
    font-size: .8125rem;
    line-height: 1rem
}
.txt--small {
    font-size: .875rem;
    line-height: 1.125rem
}
.txt--green {
    color: #2a7018
}
.txt--xgreen {
    color: #41922c
}
.txt--normal {
    font-weight: normal !important;
    font-style: normal !important
}
.txt--italic {
    font-style: italic
}
.txt--bold {
    font-weight: bold !important
}
.txt--center {
    text-align: center
}
.nowrap {
    display: inline-block;
    white-space: nowrap
}
.nowrap-inherit {
    white-space: nowrap
}
.width-full {
    width: 100% !important;
    min-width: 100% !important
}
body[data-show=sidebar] {
    overflow: hidden
}
body[data-show=sidebar] .slidepanel {
    transform: translateX(-100%)
}
body[data-show=sidebar] .slidepanel-overlay {
    opacity: 1;
    pointer-events: all
}
@media(max-width: 743px) {
    .swap-mobile {
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        flex-direction: column;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column
    }
    .swap-mobile>div {
        flex: 1
    }
    .swap-mobile>div:nth-child(1) {
        order: 3
    }
    .swap-mobile>div:nth-child(2) {
        order: 1
    }
}
@media(max-width: 743px) {
    .container__unpad-m {
        margin: 0 -0.625rem
    }
}
@media(min-width: 600px)and (max-width: 743px) {
    .show-mt {
        display: block !important
    }
}
@media screen {
    .hide-s {
        display: none !important
    }
}
@media(max-width: 449px) {
    .show-450 {
        display: none !important
    }
}
@media(min-width: 450px) {
    .show-450 {
        display: block !important
    }
    .hide-450 {
        display: none !important
    }
}
@media(max-width: 743px) {
    .container__unpad-m {
        margin: 0 -0.625rem
    }
}
@media(min-width: 430px) {
    .hide-430 {
        display: none
    }
    .show-430i {
        display: inline-block !important
    }
}
@media(min-width: 321px) {
    .show-320ii {
        display: inline !important
    }
}
.row {
    position: relative
}
.row .row-0 {
    display: none
}
.row--spaced {
    margin-bottom: .9375rem !important
}
.row--spaced-s {
    margin-bottom: .3125rem !important
}
.col {
    width: 100%;
    padding-left: .625rem;
    padding-right: .625rem;
    float: left;
    height: 100%
}
.col-0-5 {
    width: 4.1666666667%
}
.col-1 {
    width: 8.3333333333%
}
.col-1-5 {
    width: 12.5%
}
.col-2 {
    width: 16.6666666667%
}
.col-2-5 {
    width: 20.8333333333%
}
.col-3 {
    width: 25%
}
.col-3-5 {
    width: 29.1666666667%
}
.col-4 {
    width: 33.3333333333%
}
.col-4-5 {
    width: 37.5%
}
.col-5 {
    width: 41.6666666667%
}
.col-5-5 {
    width: 45.8333333333%
}
.col-6 {
    width: 50%
}
.col-6-5 {
    width: 54.1666666667%
}
.col-7 {
    width: 58.3333333333%
}
.col-8 {
    width: 66.6666666667%
}
.col-8-5 {
    width: 70.8333333333%
}
.col-9 {
    width: 75%
}
.col-9-5 {
    width: 79.1666666667%
}
.col-10 {
    width: 83.3333333333%
}
.col-11 {
    width: 91.6666666667%
}
.col-12 {
    width: 100%
}
.col--shrink {
    width: auto
}
.col--shrink-r {
    float: right
}
.col--grow {
    float: none;
    width: auto;
    overflow: hidden
}
.col-0 {
    display: none
}
.row--middle {
    display: table;
    table-layout: auto;
    width: 100%
}
.row--middle .col {
    float: none;
    display: table-cell;
    vertical-align: middle
}
.row--middle .col--grow {
    width: 100%
}
.row--spaced, .col--spaced {
    margin-bottom: .9375rem !important
}
.col--spaced-s {
    margin-bottom: .1875rem !important
}
.row--spaced-l {
    margin-bottom: 1.875rem !important
}
.row--unspaced {
    margin-bottom: 0 !important
}
.row--gutter {
    margin-left: -0.625rem;
    margin-right: -0.625rem
}
.no-gutter, .col--no-gutter, .row--no-gutter .col {
    padding-left: 0;
    padding-right: 0
}
.no-gutter-right, .col--no-gutter-right {
    padding-right: 0
}
.no-gutter-left, .col--no-gutter-left {
    padding-left: 0 !important
}
.flex {
    display: flex
}
.flex__item, .flex>* {
    display: flex;
    white-space: nowrap
}
.flex--center {
    justify-content: center
}
.flex--multiline, .flex--multiline__item, .flex--multiline>* {
    flex-wrap: wrap;
    white-space: normal
}
.flex--gutter {
    margin: 0 -0.625rem
}
.flex--gutter .flex__item, .flex--gutter>* {
    padding: 0 .625rem !important
}
.flex--gutter-2d {
    margin: 0 -0.625rem -0.9375rem;
    transform: translateY(-0.46875rem)
}
.flex--gutter-2d .flex__item, .flex--gutter-2d>* {
    padding: .46875rem .625rem
}
.flex--equal {
    justify-content: space-between
}
.flex--equal .flex__item {
    display: block
}
.flex__shrink {
    flex-grow: 0
}
.flex__grow {
    flex-grow: 1;
    min-width: 0
}
@media(max-width: 743px) {
    .row .col-m-0 {
        display: none
    }
}
@media(min-width: 600px)and (max-width: 743px) {
    .row--mt-spaced {
        margin: 0 -10
    }
    .row--mt-spaced .col {
        padding: 0 .625rem
    }
    .col-mt-6 {
        width: 50%
    }
}
@media print {
    .col-p-12 {
        width: 100%
    }
    .col-p-0 {
        display: none
    }
}
.header {
    position: relative;
    color: #fff;
    height: 2.5rem;
    z-index: 100;
    background-color: #006400;
    width: 100%;
    -webkit-transition: top .2s ease-out;
    transition: top .2s ease-out;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    flex-shrink: 0
}
.header~* {
    transition: transform .2s cubic-bezier(0.4, 0, 1, 1)
}
.header__nav {
    display: none
}
.container__head--main {
    position: relative;
    height: 100%;
    z-index: 11;
    background-color: #006400
}
.container__head--main .row {
    height: 100%
}
.container__head--main:after {
    content: "";
    width: 75%;
    height: 5px;
    background-color: #121212;
    position: absolute;
    bottom: -5px;
    left: -75%;
    transition: transform .2s cubic-bezier(0.4, 0, 1, 1)
}
.menu-open .container__head--main:after {
    transform: translate3d(100%, 0, 0)
}
.container__head--search {
    position: absolute;
    width: 100%;
    height: 3rem;
    background-color: #fff;
    z-index: 10;
    top: 0;
    opacity: 0;
    transition: opacity .2s cubic-bezier(0.4, 0, 1, 1), transform .2s cubic-bezier(0.4, 0, 1, 1)
}
.container__head--search .row {
    height: 100%
}
.container__head--search.visible {
    opacity: 1;
    transform: translateY(2.5rem);
    transition: opacity .25s cubic-bezier(0, 0, 0.2, 1), transform .25s cubic-bezier(0, 0, 0.2, 1)
}
.header__icon {
    text-align: center;
    line-height: 2.5rem;
    cursor: pointer;
    background: none;
    border: 0;
    color: #fff;
    outline: 0;
    font-size: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
.header__icon:active {
    background-color: #bd0b09;
    transition: none
}
.header__icon .halflings {
    position: relative;
    top: .1875rem;
    margin: 0 .25rem
}
.header__icon-link {
    color: #fff;
    display: block;
    width: 100%;
    height: 100%
}
.header__icon-img {
    position: relative;
    overflow: hidden
}
.header__icon-desc {
    position: relative;
    top: -0.0625rem;
    font-size: .9375rem
}
.header__icon--menu {
    border-right: 1px solid #b73b3a;
    white-space: nowrap;
    transition: background-color .2s cubic-bezier(0.4, 0, 0.2, 1)
}
.header__icon--menu .header__icon-img {
    margin-right: .3125rem;
    width: 1.125rem !important;
    top: .1875rem
}
.header__icon--search {
    border-left: 1px solid #b73b3a;
    white-space: nowrap;
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    padding: 0
}
.header__icon--search .header__icon-img {
    width: 1.25rem !important
}
.header__icon--search-open, .header__icon--search-close {
    pointer-events: none;
    transition: opacity .2s cubic-bezier(0.4, 0, 0.2, 1)
}
.header__icon--search-open .header__icon-img {
    vertical-align: middle;
    top: -0.0625rem
}
.header__icon--search-open .header__icon-txt {
    font-size: 0
}
.header__icon--search-close {
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: calc(200% + 0.125rem);
    height: 100%;
    white-space: nowrap;
    background-color: #006400
}
.header__icon--search-close .header__icon-img {
    width: .875rem !important;
    margin-right: .4375rem;
    top: .0625rem
}
.header__icon--search-close .header__icon-txt {
    position: relative;
    font-size: .9375rem;
    top: -0.0625rem
}
.header__fav {
    text-align: center;
    border-left: 1px solid #b73b3a
}
.header__fav-link {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 2.5rem;
    color: #fff;
    position: relative
}
.header__fav-count {
    font-size: .625rem;
    display: inline-block;
    background-color: #000;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    line-height: .875rem;
    position: absolute;
    text-align: center;
    z-index: 2;
    top: .125rem;
    margin-left: .8125rem;
    letter-spacing: -0.03125rem;
    font-weight: 600;
    transition: transform .15s cubic-bezier(0.4, 0, 0.2, 1)
}
.header__fav-count.active {
    transform: scale(1.5)
}
.header__fav-icon {
    position: relative;
    top: .125rem
}
.header__fav-desc {
    display: none
}
.header__search {
    height: 100%;
    padding: .5rem 0;
    position: relative
}
.header__search-inputlabel {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0
}
.header__search-input {
    width: calc(100vw - 7.8125rem);
    height: 100%;
    display: block;
    font-size: 1rem;
    border: 1px solid #999;
    padding: 0 .625rem .1875rem .625rem;
    box-sizing: border-box;
    -webkit-appearance: none
}
.header__search-submit {
    position: absolute;
    top: .5rem;
    right: .625rem;
    width: 5.9375rem !important;
    height: 2rem !important;
    vertical-align: middle !important;
    line-height: 1.375rem !important
}
.header__logo {
    display: block;
    overflow: hidden;
    width: 8.75rem;
    height: 1.375rem;
    margin: .5625rem auto 0 auto
}
.header__logo img {
    width: 10.8125rem;
    margin-left: -2.0625rem
}
.row--middle .header__logo {
    margin-top: 0
}
.header__aside {
    text-align: right
}
.header__aside, .header__aside .a {
    font-size: .75rem
}
.header.fixed {
    position: fixed;
    top: -2.5rem;
    z-index: 200
}
.header .skiplink {
    position: absolute;
    top: 0;
    left: -31.25rem;
    background-color: #006400;
    color: #fff
}
.header .skiplink:focus {
    width: 100%;
    left: 0;
    position: relative;
    display: block;
    text-align: center;
    border-bottom: .0625rem solid #fff
}
@media(hover: hover) {
    .header__icon--search a:hover {
        text-decoration: none
    }
}
@media(max-width: 743px) {
    .container__head--search .col {
        padding-left: 0;
        padding-right: 0
    }
    .header__search {
        box-shadow: 0 0 8px #000;
        padding: .5rem .625rem
    }
}
@media print {
    .header__aside {
        display: none
    }
}
@media(max-width: 743px) {
    body:after {
        content: "";
        background-color: rgba(0, 0, 0, .6);
        width: 0;
        height: 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 79;
        opacity: 0;
        pointer-events: none;
        transition: opacity .2s cubic-bezier(0.4, 0, 0.2, 1), width 0s .2s, height 0s .2s
    }
    html.menu-open, body.menu-open, html.search-open, body.search-open {
        overflow: hidden
    }
    body.menu-open .header, body.search-open .header {
        transition: margin-bottom .2s cubic-bezier(0.55, 0, 0.1, 1)
    }
    body.menu-open:after, body.search-open:after {
        width: 100%;
        height: 100%;
        opacity: 1;
        pointer-events: all;
        transition: opacity .25s cubic-bezier(0.4, 0, 0.2, 1), width 0s 0s, height 0s 0s
    }
    .header {
        transition: margin-bottom .2s cubic-bezier(0.4, 0, 1, 1), top .2s cubic-bezier(0.4, 0, 1, 1), transform .2s cubic-bezier(0.4, 0, 1, 1)
    }
    .header:after {
        content: "";
        background-color: rgba(0, 0, 0, .3);
        width: 75%;
        height: 0;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        z-index: 79;
        opacity: 0;
        pointer-events: none;
        transition: opacity .2s cubic-bezier(0.4, 0, 0.2, 1), height 0s .2s, left 0s .2s, right 0s .2s
    }
    .header--col-favorite, .header__icon--search {
        position: relative
    }
    .header__icon--search {
        z-index: 1;
        background-color: #006400;
        transition: z-index 0s .2s
    }
    body.menu-open .header:after {
        height: 100%;
        left: 25%;
        opacity: 1;
        pointer-events: all;
        transition: opacity .25s cubic-bezier(0.4, 0, 0.2, 1), height 0s 0s, left 0s 0s, right 0s 0s
    }
    body.menu-open .container__head--main:after {
        transition: transform .25s cubic-bezier(0, 0, 0.2, 1)
    }
    body.menu-open .header__icon--menu {
        background-color: #121212;
        border-right: 1px solid #121212;
        transition-duration: .25s
    }
    body.menu-open .header__icon--menu .header__icon-img {
        width: .875rem !important;
        margin-right: .4375rem;
        top: .0625rem
    }
    body.menu-open .container__head--search {
        transition: top .01s cubic-bezier(0, 0, 0.2, 1)
    }
    body.menu-open .container__head--search.visible {
        z-index: 12
    }
    body.top .header {
        transition: margin-bottom .2s cubic-bezier(0.4, 0, 1, 1)
    }
    body.scrolled {
        padding-top: 2.5rem
    }
    body.scrolled .header {
        position: fixed;
        top: -2.5rem
    }
}
@media print and (max-width: 743px) {
    body.scrolled .header {
        position: relative
    }
}
@media print and (max-width: 743px) {
    body.scrolled {
        padding-top: 0
    }
    body.scrolled header {
        top: 0
    }
}
@media(max-width: 743px) {
    body.menu-fixed, body.menu-open {
        padding-top: 2.5rem
    }
    body.menu-fixed .header, body.menu-open .header {
        position: fixed;
        top: -2.5rem;
        transform: translateY(2.5rem);
        transition-duration: .25s;
        transition-timing-function: cubic-bezier(0, 0, 0.2, 1)
    }
}
@media print and (max-width: 743px) {
    body.menu-fixed .header, body.menu-open .header {
        position: relative
    }
}
@media print and (max-width: 743px) {
    body.menu-fixed, body.menu-open {
        padding-top: 0
    }
}
@media(max-width: 743px) {
    body.search-open .header:after {
        height: 100%;
        right: auto;
        opacity: 1;
        pointer-events: all;
        transition: opacity .25s cubic-bezier(0.4, 0, 0.2, 1), height 0s 0s, left 0s 0s, right 0s 0s
    }
    body.search-open .header~* {
        transform: translateY(3rem);
        transition: transform .25s cubic-bezier(0, 0, 0.2, 1)
    }
    body.search-open .header__icon--search {
        border-left: 1px solid #006400;
        transition-delay: 0s
    }
    body.search-open .header__icon--search.col-1-5 {
        z-index: 2
    }
    body.search-open .header__icon--search-open, body.search-open .header__icon--search-close {
        transition-duration: .25s
    }
    body.search-open .header__icon--search-open {
        opacity: 0
    }
    body.search-open .header__icon--search-close {
        opacity: 1;
        pointer-events: all
    }
}
.nav-t {
    display: none
}
.nav-m {
    height: 100%;
    position: fixed;
    top: 0;
    width: 75%;
    left: -75%;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch
}
.nav-m {
    color: #fff;
    background-color: #121212;
    margin: 0 0;
    min-height: 100%;
    transition: transform .2s cubic-bezier(0.4, 0, 1, 1);
    z-index: 80;
    padding-top: 3.75rem
}
.nav-m.visible {
    transform: translate3d(100%, 0, 0);
    transition: transform .25s cubic-bezier(0, 0, 0.2, 1)
}
.nav-m__item:first-child {
    border-top: 1px solid #444
}
.nav-m__item.with-subs>.nav-m__link:focus {
    text-decoration: none
}
.nav-m__link {
    display: block;
    color: #fff;
    border-bottom: 1px solid #444;
    padding: .875rem 1.25rem;
    position: relative;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
.nav-m__link:active {
    background-color: #444
}
.nav-m__icon {
    font-size: 1.25rem;
    position: absolute;
    top: .875rem;
    right: .625rem;
    width: 1.25rem;
    height: 1.25rem;
    text-align: center;
    line-height: 1rem;
    transform: rotate(90deg);
    transition: transform .2s ease
}
.nav-m__item--level2 {
    padding-bottom: 0 !important;
    background-color: #292929;
    padding-left: 0;
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: opacity .2s ease, height .2s .2s ease
}
.nav-m__item--level2:before {
    left: 1.25rem;
    top: .5rem;
    display: none
}
.nav-m__item--level2:first-child {
    border-top: 0
}
.nav-m__item--level2 em {
    margin-right: .3125rem
}
.nav-m__item--level2.nav-m__item--has-sub {
    height: auto !important
}
.nav-m__item--level2.nav-m__item--has-sub>.nav-m__link {
    padding-left: 1.25rem !important
}
.nav-m__link--level2 {
    display: block;
    padding: .75rem 1.25rem .75rem 2.1875rem;
    color: #efefef
}
.nav-m__item--level3:first-child {
    border-top: 0
}
.nav-m__link--level3 {
    padding: .75rem 1.25rem .75rem 3.125rem
}
.nav-m__item.subs-opened {
    height: auto !important
}
.nav-m__item.subs-opened .nav-m__icon {
    transform: rotate(-90deg);
    transition: transform .25s ease
}
.nav-m__item.subs-opened .nav-m__item--level2 {
    opacity: 1;
    height: 2.9375rem;
    transition: height .25s ease, opacity .25s .25s ease
}
@media(hover: hover) {
    .nav-m__item.with-subs.subs-opened .nav-m__link--level2:hover {
        text-decoration: none !important
    }
    .nav-m__item.with-subs.subs-opened .nav-m__link--level2:hover em {
        text-decoration: underline
    }
}
@media print {
    .hide-p {
        display: none !important
    }
    .show-p {
        display: block !important
    }
    .avoid-break-p {
        page-break-inside: avoid
    }
}
.tabs {
    background-color: #f8f8f8;
    box-shadow: inset 0px -1px 2px rgba(0, 0, 0, .18);
    margin: 0;
    padding: 0;
    z-index: 36;
    position: relative;
    height: 2.4375rem;
    margin-bottom: .1875rem
}
.tabs.not-sticky {
    z-index: 20
}
.tabs a[role=tab] {
    display: inline-block;
    padding: .4375rem .25rem .5625rem;
    float: left;
    text-align: center;
    color: #666;
    font-size: .875rem;
    line-height: 1.25rem
}
.tabs a[role=tab]:nth-child(n+2) {
    border-left: 1px solid #d9d9d9
}
.tabs a[role=tab]:hover {
    text-decoration: underline
}
.tabs a[role=tab]:hover span {
    text-decoration: underline
}
.tabs a[role=tab].active {
    background-color: #fff;
    box-shadow: 1px -2px 12px rgba(0, 0, 0, .18);
    position: relative;
    top: -3px;
    padding: .6875rem .25rem .5625rem;
    color: #006400;
    cursor: default
}
.tabs a[role=tab].active:hover {
    text-decoration: none;
    cursor: default
}
.tabs a[role=tab].active:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.5rem;
    width: 100%;
    height: .5625rem;
    background-color: #fff
}
.tabs a[role=tab].inactive {
    background-color: #fafafa;
    position: relative;
    top: 0;
    padding: .5625rem .25rem .4375rem;
    color: #444;
    cursor: pointer;
    border: 1px solid #d9d9d9;
    border-bottom: 0
}
@media(min-width: 320px) {
    .tabs a[role=tab] {
        padding: .5rem .5rem .5rem .4375rem
    }
    .tabs a[role=tab].active {
        padding: .6875rem .5rem .625rem .4375rem
    }
    .tabs a[role=tab].inactive {
        padding: .5625rem .5rem .5rem .4375rem
    }
}
@media(min-width: 335px) {
    .tabs a[role=tab] {
        padding: .5rem .5rem .5rem
    }
    .tabs a[role=tab].active {
        padding: .6875rem .5rem .625rem
    }
    .tabs a[role=tab].inactive {
        padding: .5625rem .5rem .5rem
    }
}
@media(min-width: 367px) {
    .tabs a[role=tab] {
        font-size: .9375rem;
        padding: .5rem .625rem .5rem
    }
    .tabs a[role=tab].active {
        padding: .6875rem .625rem .625rem
    }
    .tabs a[role=tab].inactive {
        padding: .5625rem .625rem .5rem
    }
}
@media(min-width: 406px) {
    .tabs a[role=tab] {
        padding: .5rem .9375rem .5rem
    }
    .tabs a[role=tab].active {
        padding: .6875rem .9375rem .625rem
    }
    .tabs a[role=tab].inactive {
        padding: .5625rem .9375rem .5rem
    }
}
@media(min-width: 744px) {
    .tabs {
        height: 2.25rem
    }
    .tabs a[role=tab] {
        padding: .4375rem 1.25rem .5625rem
    }
    .tabs a[role=tab].active {
        padding: .625rem 1.25rem .5rem
    }
    .tabs a[role=tab].inactive {
        padding: .5rem 1.25rem .375rem
    }
}
@media(min-width: 970px) {
    .tabs {
        height: 2.5rem
    }
    .tabs a[role=tab] {
        padding: .5rem .8125rem .75rem
    }
    .tabs a[role=tab].active {
        padding: .6875rem .8125rem .6875rem
    }
    .tabs a[role=tab].inactive {
        padding: .5625rem .8125rem .5625rem
    }
}
@media(min-width: 1100px) {
    .tabs {
        height: 2.5rem
    }
    .tabs a[role=tab] {
        padding: .5rem 1.25rem .75rem
    }
    .tabs a[role=tab].active {
        padding: .6875rem 1.25rem .6875rem
    }
    .tabs a[role=tab].inactive {
        padding: .5625rem 1.25rem .5625rem
    }
}
.sticky .tabs:not(.not-sticky) {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 .625rem;
    box-shadow: 0 -2px 2px rgba(0, 0, 0, .18) inset;
    overflow: hidden
}
@media(max-width: 743px) {
    .sticky .tabs:not(.not-sticky) {
        transition: top .25s
    }
    body.menu-fixed .sticky .tabs:not(.not-sticky) {
        top: 2.5rem
    }
}
@media print and (max-width: 743px) {
    body.menu-fixed .sticky .tabs:not(.not-sticky) {
        top: 0
    }
}
.sticky .tabs:not(.not-sticky).tour__content__tabs {
    box-shadow: none;
    overflow: visible
}
.sticky .tabs:not(.not-sticky)>div {
    width: 100%;
    max-width: 73.75rem;
    margin: 0 auto
}
.sticky .tabs:not(.not-sticky) a[role=tab].active {
    display: inline-block
}
.sticky .tabs:not(.not-sticky) a[role=tab].active:after {
    display: none
}
@media print {
    .sticky .tabs:not(.not-sticky) {
        position: relative
    }
}
@media(min-width: 744px) {
    .sticky .tabs:not(.not-sticky) {
        padding: 0 1.5625rem
    }
}
.tabs--countriesparks a {
    width: 50%
}
.tourtabs {
    white-space: nowrap
}
.tourtabs a[role=tab] {
    position: relative;
    padding-top: .4375rem;
    padding-bottom: .5625rem
}
.tourtabs a[role=tab].active {
    padding-top: .625rem;
    padding-bottom: .5625rem;
    clip-path: inset(-12px -12px 0 -12px)
}
.tourtabs a[role=tab].active~a[role=tab]:after {
    left: -1px;
    width: calc(100% + 2px)
}
.tourtabs a[role=tab]:after, .tourtabs a[role=tab].active:after {
    content: "";
    position: absolute;
    pointer-events: none;
    bottom: 0;
    left: 0;
    height: .1875rem;
    width: calc(100% + 1px);
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.18));
    transform-origin: bottom
}
.tourtabs a[role=tab].active:after {
    left: -1px;
    width: 1px
}
.tourtabs:after {
    content: "";
    position: relative;
    top: 2.0625rem;
    left: 0;
    display: block;
    vertical-align: top;
    overflow: hidden;
    height: .1875rem;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.18));
    transform-origin: bottom
}
.sticky .tourtabs:not(.not-sticky) {
    margin-right: -0.625rem
}
.sticky .tourtabs:not(.not-sticky) a[role=tab]:after {
    content: none
}
.sticky .tourtabs:not(.not-sticky):after {
    position: absolute;
    left: 0;
    width: 100%;
    display: block;
    transform: scaleY(-1)
}
.sticky .tourtabs:not(.not-sticky)+.btn--reqquote {
    position: absolute;
    top: 0;
    right: 1.5625rem
}
.tabs--stepsheader {
    font-size: 1.125rem;
    display: block;
    margin-bottom: 1.875rem
}
.tabs--steps {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    counter-reset: signuptabs;
    justify-content: space-between;
    padding: 1.5625rem 0 .3125rem !important;
    height: auto !important;
    font-size: 0;
    list-style: decimal inside !important;
    background: #f2f2f2 !important;
    box-shadow: none !important;
    transition: background .3s ease, box-shadow .3s ease !important
}
.tabs--steps .tabs__item {
    position: relative;
    display: flex;
    font-size: .625rem;
    color: #0378a0
}
.tabs--steps .tabs__item:before {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 1rem;
    font-size: .5625rem;
    line-height: .875rem;
    border: 1px solid rgba(0, 0, 0, 0);
    border-radius: 50%;
    text-align: center;
    content: " "
}
.tabs--steps .tabs__item[data-complete=false]:not([data-state=current]):before, .tabs--steps .tabs__item[data-complete=true]:not([data-state=current]):before {
    opacity: 1
}
.tabs--steps .tabs__item[data-complete=true]:before {
    background: center/0.5rem no-repeat #fff;
    border: 1px solid #2a7018;
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
}
.tabs--steps .tabs__item[data-state=current] {
    font-weight: 600
}
.tabs--steps .tabs__item[data-state=current]:before {
    opacity: 1;
    border-color: rgba(0, 0, 0, 0);
    background: rgba(0, 0, 0, 0) center no-repeat;
    transform: translateX(-50%) rotate(90deg);
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-r.svg")
}
.tabs--steps .tabs__item[data-state=current], .tabs--steps .tabs__item[data-state=current] .tabs--steps__link {
    color: #444
}
.tabs--steps .tabs__item[data-state=current] .tabs--steps__warning {
    display: none !important
}
.tabs--steps .tabs__item span {
    display: none
}
.tabs--steps .tabs__link {
    position: relative;
    display: inline-block;
    background: rgba(0, 0, 0, 0);
    border: 0;
    outline: 0;
    line-height: .9375rem;
    white-space: nowrap;
    margin: -1.875rem auto 0;
    padding-top: 1.875rem;
    left: 50%;
    transform: translateX(-50%);
    text-decoration: none !important;
    cursor: pointer
}
.tabs--steps .tabs__link:before {
    counter-increment: signuptabs;
    content: counter(signuptabs) ".";
    display: inline;
    margin-right: .3125rem
}
.tabs--steps .tabs__link:hover {
    text-decoration: underline !important
}
.tabs--steps .tabs__item[data-complete=false]:not([data-state=current]):before {
    content: "!";
    text-indent: -0.03125rem;
    color: #e48901;
    background: #fff !important;
    font-weight: 600;
    border: 1px solid currentColor
}
.tabs--steps .tabs__item[data-complete=false]:not([data-state=current]) .tabs--steps__link {
    color: #e48901
}
.tabs--steps .tabs__warning {
    display: none !important
}
.sticky .tabs--steps {
    padding: 1.5625rem .625rem .3125rem !important;
    background: #fff !important;
    box-shadow: 0 0 5px rgba(0, 0, 0, .18) !important
}
.tabs--steps:after {
    content: none
}
@media(max-width: 743px) {
    .tourtabs a[data-ajax=gettingthere-tab], .tourtabs a[data-ajax=inclusions-tab] {
        display: none
    }
}
@media(max-width: 743px)and (max-width: 320px) {
    .tourtabs:after {
        background-repeat: no-repeat;
        background-position: 1px
    }
}
@media(max-width: 743px)and (min-width: 320px) {
    .tourtabs a[role=tab], .tourtabs a[role=tab].active {
        padding-left: calc(5vw - 9.5px);
        padding-right: calc(5vw - 9.5px)
    }
}
@media(max-width: 743px)and (min-width: 430px) {
    .tourtabs a[role=tab], .tourtabs a[role=tab].active {
        padding-left: calc(5.3vw - 16.8px);
        padding-right: calc(5.3vw - 16.8px)
    }
    .tourtabs a[data-ajax=inclusions-tab] {
        display: inline-block
    }
}
@media(max-width: 743px)and (min-width: 544px) {
    .tourtabs a[role=tab], .tourtabs a[role=tab].active {
        padding-left: calc(3.3vw - 11.95px);
        padding-right: calc(3.3vw - 11.95px)
    }
    .tourtabs a[data-ajax=gettingthere-tab] {
        display: inline-block
    }
}
@media(min-width: 744px) {
    .sticky .tourtabs:not(.not-sticky) {
        margin-right: -1.5625rem
    }
}
.titlebar {
    background-color: #fff;
    border-bottom: 1px solid #d9d9d9
}
.titlebar h1 {
    font-size: 1.5rem;
    position: relative;
    top: -0.125rem
}
.titlebar h2 {
    font-size: 1.125rem;
    position: relative;
    top: -0.25rem
}
.titlebar.no-white {
    background-color: rgba(0, 0, 0, 0);
    border-bottom: 0
}
.titlebar.no-white h1 {
    top: .375rem
}
.titlebar .row {
    padding: .625rem 0
}
.titlebar .row.breadcrumbs {
    display: none
}
.titlebar .row.row-d-0 {
    padding: .625rem 0
}
.titlebar--tour, .titlebar--operators {
    position: absolute;
    width: 100%;
    padding-top: 5rem
}
.titlebar--tour .btn--filter, .titlebar--operators .btn--filter {
    z-index: 20;
    position: relative;
    top: -0.625rem
}
.titlebar--grey {
    background-color: #e2e1e1
}
.favlist__titlebar {
    background-color: #f2f2f2
}
.titlebar--searchresults h1 {
    margin-top: .625rem
}
.titlebar--searchresults .row {
    padding-bottom: 0
}
@media(min-width: 744px) {
    .titlebar--searchresults .btn--filter {
        bottom: -1.125rem
    }
}
.titlebar__heading {
    top: 0 !important;
    font-size: 1.5rem !important;
    line-height: 1.5rem;
    margin-bottom: 1.25rem
}
.titlebar__sub {
    font-size: .8125rem;
    color: #666;
    text-align: left
}
.titlebar--form {
    box-shadow: 0 0 5px rgba(0, 0, 0, .18);
    margin-bottom: 1.5625rem;
    padding-top: .625rem
}
.titlebar--form-tabbed {
    padding-bottom: 3.125rem;
    box-shadow: none
}
.titlebar--form-tabbed p {
    font-size: 1rem
}
.titlebar--form-tabbed .titlebar--form__extratext {
    top: 2.8125rem !important
}
.titlebar--form-tabbed .titlebar--form__image {
    bottom: -3.5rem;
    height: 7.1875rem
}
h2.titlebar--form__heading {
    font-size: 1.5rem;
    line-height: 1.5rem;
    margin-bottom: 1.25rem
}
h2.titlebar--form__heading i.sbi {
    position: relative;
    top: .25rem;
    margin-right: .6875rem;
    width: 1.625rem
}
h2.titlebar--form__heading button.a {
    position: relative;
    top: -0.25rem
}
h2.titlebar--form__heading+p i.sbi {
    position: relative !important;
    top: .125rem
}
h2.titlebar--form__heading+p a {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 28.125rem;
    position: relative;
    top: .3125rem
}
.titlebar--form__link {
    display: block;
    position: absolute;
    z-index: 100;
    top: -2.375rem;
    right: .625rem;
    color: #fff
}
.titlebar--form__image {
    display: none
}
.titlebar-tabs {
    position: relative;
    top: -1.5625rem;
    height: 0;
    overflow: visible;
    padding: 0 .625rem;
    max-width: 81.25rem;
    margin: 0 auto;
    font-size: 0
}
.titlebar-tabs__tab {
    position: relative;
    display: inline-block;
    vertical-align: top;
    transform: translateY(-100%)
}
.titlebar-tabs__tab[data-state=active] {
    background-color: #f2f2f2
}
.titlebar-tabs__link {
    display: block;
    border: 1px solid #d9d9d9;
    border-bottom-color: rgba(0, 0, 0, 0);
    padding: .6875rem 2.1875rem .9375rem;
    font-size: 1rem;
    line-height: 1.25rem
}
.titlebar-tabs__tab+.titlebar-tabs__tab .titlebar-tabs__link {
    margin-left: -1px
}
.titlebar-tabs__tab[data-state=active] .titlebar-tabs__link {
    border-bottom-color: #f2f2f2;
    color: #444;
    font-weight: bold;
    padding-top: .9375rem
}
@media(max-width: 414px)and (max-height: 625px)and (orientation: portrait) {
    .titlebar .row {
        padding: .5rem 0
    }
}
@media(min-width: 744px) {
    .titlebar--searchresults .btn--filter {
        bottom: -1.125rem
    }
}
.accordion {
    padding: .625rem 0 1.25rem
}
.accordion__heading {
    padding: 0 1.5625rem .625rem
}
.accordion__item {
    clear: both;
    page-break-inside: avoid
}
.accordion__item:after {
    content: "";
    display: table;
    clear: both
}
.accordion:not(.accordion--collapsible) .accordion__item+.accordion__item {
    margin-top: 1.25rem
}
.accordion--collapsible .accordion__item {
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #d9d9d9
}
.accordion--collapsible .accordion__item[data-state=open] {
    padding-bottom: 1.25rem
}
.accordion--collapsible .accordion__item[data-state=open] .accordion__key {
    padding-bottom: .625rem
}
.accordion--collapsible .accordion__item[data-state=open] .accordion__key:after {
    content: "-";
    font-size: 1.625rem;
    top: .75rem;
    right: 1.8125rem
}
.accordion--collapsible .accordion__item[data-state=open] .accordion__value {
    display: block
}
.accordion--collapsible .accordion__item~.accordion__item {
    border-top: none
}
.accordion--collapsible .accordion__key {
    color: #0378a0;
    cursor: pointer;
    position: relative;
    padding: .9375rem 1.5625rem
}
.accordion--collapsible .accordion__key:after {
    content: "+";
    display: block;
    width: .9375rem;
    text-align: center;
    font-size: 1.375rem;
    position: absolute;
    top: .9375rem;
    right: 1.8125rem
}
.accordion--collapsible .accordion__value {
    display: none;
    padding: 0 1.5625rem
}
.accordion__key {
    display: block;
    padding-bottom: .625rem;
    padding-top: .9375rem
}
.accordion__col-head {
    font-size: .875rem;
    color: #666;
    text-align: right;
    font-weight: normal;
    display: block;
    padding-bottom: .1875rem
}
.accordion__subrow:after {
    content: "";
    display: table;
    clear: both
}
.accordion__subrow:nth-child(even) {
    background-color: #f2fafc
}
.accordion__col {
    width: 70%;
    float: left;
    padding: .375rem .625rem;
    line-height: 1.125rem
}
.accordion__col--rate {
    width: 30%;
    text-align: right;
    font-weight: bold
}
.accordion--chevrons .accordion__key {
    padding: .9375rem 1.875rem .9375rem .625rem
}
.accordion--chevrons .accordion__key:after {
    content: "";
    right: .625rem;
    top: 50%;
    width: .75rem;
    height: .75rem;
    margin-top: -0.375rem;
    background: url("data:image/svg+xml, %3Csvg viewBox='0 0 8 5' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon fill='%230378A0' stroke='none' points='4 5 0 1 1 0 4 3 7 0 8 1'%3E%3C/polygon%3E%3C/svg%3E") no-repeat center/contain
}
.accordion--chevrons .accordion__value {
    padding: 0 .625rem
}
.accordion--chevrons .accordion__item[data-state=open] .accordion__key:after {
    content: "";
    transform: scaleY(-1);
    right: .625rem;
    top: 50%
}
.accordion {
    padding: .625rem 0 1.25rem
}
@media(hover: hover) {
    .accordion--collapsible .accordion__key:hover .accordeon__hover-u {
        text-decoration: underline
    }
    .accordion--chevrons .accordion__item:not([data-state=open]) .accordion__key:hover {
        background-color: rgba(0, 0, 0, .025)
    }
}
@media print {
    .tour__content__block--rates .ratestablecurrencies {
        display: none
    }
}
.country_autocomplete_holder, .destination_autocomplete_holder, .accommodation_autocomplete_holder, .operator_autocomplete_holder {
    display: none
}
.autocomplete-show {
    display: block !important
}
.autocomplete-container {
    position: absolute;
    background-color: #fff !important;
    margin-top: .5625rem;
    border: 1px solid #d9d9d9;
    z-index: 999;
    width: 100%;
    box-shadow: 0px 0px 7px rgba(50, 50, 50, .4)
}
.autocomplete-container:before {
    position: absolute;
    top: -0.4375rem;
    left: 1.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #d9d9d9;
    background-color: #fff;
    z-index: 0
}
.autocomplete-container:after {
    background-color: #fff;
    position: absolute;
    top: .9375rem;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: 1rem
}
.autocomplete-container.with-title {
    padding-top: 1.875rem
}
.autocomplete-container.with-title:before {
    background-color: #efefef;
    border-color: #e2e1e1
}
.autocomplete-container.with-title:after {
    display: none
}
.autocomplete-container.with-title .detail__title {
    position: absolute;
    z-index: 11;
    width: 100%;
    line-height: 1.875rem;
    height: 1.875rem;
    background-color: #efefef;
    padding: 0 1.25rem;
    top: .9375rem;
    text-align: center;
    font-size: .875rem;
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #ccc;
    top: 0;
    border-top: 0
}
.autocomplete-container.with-title .detail__title a {
    position: absolute;
    top: -0.0625rem;
    right: -0.0625rem;
    width: 1.875rem;
    height: 1.875rem;
    background-color: rgba(0, 0, 0, 0)
}
.autocomplete-container.with-title .detail__title a:before {
    content: "";
    position: absolute;
    background-color: #444;
    border-radius: .1875rem;
    width: 1.125rem;
    height: 1.125rem
}
.autocomplete-container.with-title .detail__title a i {
    width: .625rem;
    position: absolute
}
.autocomplete-container.with-title .detail__title a:before, .autocomplete-container.with-title .detail__title a i {
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%)
}
.autocomplete-container.with-title .detail__title a:hover:before {
    background-color: #666
}
.autocomplete-container .autocomplete {
    z-index: 2
}
.autocomplete-container .autocomplete li {
    z-index: 10;
    position: relative;
    background-color: #fff;
    color: #0378a0;
    line-height: 2.125rem;
    cursor: pointer;
    padding: 0 .625rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}
.autocomplete-container .autocomplete li .autocomplete__item-name {
    background: none;
    color: #0378a0;
    pointer-events: none
}
.autocomplete-container .autocomplete li span {
    font-size: .75rem;
    display: inline-block;
    width: 2.8125rem;
    color: #666;
    position: relative;
    top: -0.0625rem;
    pointer-events: none
}
.autocomplete-container .autocomplete li span.capitalize {
    text-transform: capitalize
}
.autocomplete-container .autocomplete li span.amount {
    float: right;
    width: auto
}
.autocomplete-container .autocomplete li:hover, .autocomplete-container .autocomplete li.active {
    background-color: #f2f2f2
}
.autocomplete-container .autocomplete li.multiline {
    height: 2.875rem;
    line-height: 1.875rem;
    font-weight: bold;
    font-size: .875rem
}
.autocomplete-container .autocomplete li.multiline span.capitalize {
    position: absolute;
    font-weight: normal;
    top: 1rem;
    left: .625rem;
    float: none;
    width: auto
}
.autocomplete-container .autocomplete li+li {
    border-top: 1px solid #d9d9d9
}
.detail__destination .autocomplete li span.capitalize {
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    float: right;
    top: .0625rem
}
.save-layer, .load-layer, .alert-layer, .confirm-layer {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .4);
    z-index: 9999;
    display: none
}
.save-layer div, .load-layer div, .alert-layer div, .confirm-layer div {
    display: block;
    margin: 0 auto;
    background-color: #fff;
    width: 12.5rem;
    padding: 1.25rem;
    -webkit-border-radius: .3125rem;
    -moz-border-radius: .3125rem;
    border-radius: .3125rem;
    color: #535353;
    font-size: .875rem
}
.load-layer>div, .alert-layer>div, .confirm-layer>div {
    position: absolute;
    top: 50%;
    margin-top: 1.875rem;
    left: 50%;
    margin-left: 7.5rem
}
.load-layer>div h1, .alert-layer>div h1, .confirm-layer>div h1 {
    font-size: 15px;
    margin: 0 0 5px;
    padding: 0 0 10px 0;
    font-size: 18px;
    line-height: 1;
    color: #222;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 20px
}
.alert-layer h1, .confirm-layer h1 {
    margin-bottom: 20px
}
.alert-layer .warning, .confirm-layer .warning {
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 15px;
    background-position: 1px 5px;
    color: #ad2322
}
.alert-layer p, .confirm-layer p {
    margin-bottom: 20px;
    font-size: 13px;
    color: #222;
    line-height: 20px
}
.alert-layer p:last-of-type, .confirm-layer p:last-of-type {
    margin-bottom: 0
}
.alert-layer div, .confirm-layer div {
    width: auto;
    max-width: 28.125rem;
    min-width: 12.5rem;
    font-weight: normal;
    color: #222
}
.alert-layer div input, .confirm-layer div input {
    float: none;
    margin: 1.25rem .1875rem 0 .1875rem
}
.confirm-layer {
    z-index: 10004
}
.confirm-layer__close {
    position: absolute;
    background: rgba(0, 0, 0, 0);
    top: .625rem;
    right: .625rem;
    border: 0;
    font-size: 0;
    opacity: .5;
    cursor: pointer
}
.alert-layer {
    z-index: 10004
}
.alert-layer h1 {
    margin-bottom: 20px
}
.alert-layer .warning {
    font-weight: bold;
    font-size: 13px;
    margin-bottom: 15px;
    background-position: 0 3px;
    color: #ad2322
}
.alert-layer p {
    margin-bottom: 20px;
    font-size: 13px;
    color: #222;
    line-height: 20px
}
.alert-layer p:last-of-type {
    margin-bottom: 0
}
.alert-layer .warning {
    position: static;
    margin: 0 0 15px 0;
    padding: 0 0 0 20px;
    font-weight: bold;
    font-size: 13px;
    line-height: 18px;
    margin-bottom: 15px;
    background-position: 0 3px;
    color: #ad2322
}
.confirm-layer--l>div {
    padding: 2.5rem 5.625rem;
    max-width: 37.5rem;
    border-radius: 0
}
.confirm-layer__msg {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    font-size: .9375rem;
    line-height: 1.25rem;
    white-space: nowrap;
    margin: 0 auto 1.25rem;
    text-align: center;
    font-weight: bold
}
.confirm-layer__buttons {
    text-align: center;
    white-space: nowrap;
    padding: 0 !important
}
@media(hover: hover) {
    .confirm-layer__close:hover {
        opacity: .75
    }
}
.banner {
    position: relative;
    margin-bottom: .625rem
}
.banner__title {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0 -0.3125rem .3125rem;
    font-size: .8125rem;
    color: #999
}
.banner__title:before, .banner__title:after {
    content: "";
    display: block;
    flex-grow: 1;
    height: 0;
    margin: 0 .3125rem;
    border-bottom: 1px dotted #b3b3b3
}
.banner__image {
    background-color: #f2f2f2;
    display: block;
    position: relative;
    height: 0;
    padding: 0 0 34.15% 0
}
.banner__image img {
    width: 100%;
    max-width: 55.5rem;
    display: block;
    position: absolute;
    inset: 0;
    image-rendering: -webkit-optimize-contrast
}
@media(min-width: 328px) {
    .banner__image {
        padding: 0 0 24.28% 0
    }
}
@media(min-width: 490px) {
    .banner__image {
        padding: 0 0 18.29% 0
    }
}
@media(min-width: 741px) {
    .banner__image {
        padding: 0 0 16.04% 0
    }
}
@supports(-webkit-appearance: none) {
    .banner__title:before, .banner__title:after {
        border-bottom-width: thin
    }
}
.bg-red {
    background-color: #d83a39
}
.bg-orange {
    background-color: #f8a909
}
.bg-lightgreen {
    background-color: #5ab657
}
.bg-green {
    background-color: #0a8b05
}
.besttime-blocks .col-2, .besttime-blocks .col-1 {
    border-left: 1px solid #fff;
    text-align: center;
    font-weight: 600;
    color: #fff;
    line-height: 2rem;
    text-shadow: 1px 1px 1px #444;
    cursor: default
}
.besttime-blocks .col-2:nth-child(-n+6) {
    margin-bottom: .625rem
}
.besttime-blocks--big {
    margin-top: .625rem
}
.besttime-box {
    padding: .9375rem .9375rem 1.5625rem;
    border: 1px solid #f6d89a;
    background-color: #fefdf9
}
.besttime-box .besttime-blocks {
    margin-bottom: 1.25rem
}
.besttime-box__heading {
    font-size: 1rem !important;
    margin: 0 0 1.125rem !important
}
.besttime-box__heading:before {
    content: none !important
}
.besttime-box__separator {
    position: relative;
    top: 1.5625rem;
    width: 100%;
    margin-bottom: 2.5rem;
    height: 0;
    border: 0;
    border-bottom: 1px solid #f6d89a
}
li .besttime-blocks, .blog__sidebar .besttime-blocks {
    position: relative;
    top: -0.3125rem
}
li .besttime-blocks .col-1, li .besttime-blocks .col-2, .blog__sidebar .besttime-blocks .col-1, .blog__sidebar .besttime-blocks .col-2 {
    line-height: 1.75rem;
    font-size: .8125rem
}
.availability-legenda div {
    display: inline-block;
    font-size: .8125rem;
    margin-left: .625rem;
    margin-bottom: 0
}
.availability-legenda div:before {
    content: "";
    display: inline-block;
    width: .875rem;
    height: .875rem;
    background-color: #0a8b05;
    border-radius: 50%;
    margin-right: .25rem;
    position: relative;
    top: .1875rem
}
.availability-legenda div:first-child {
    margin-left: 0
}
.availability-legenda div.lightgreen:before {
    background-color: #5ab657
}
.availability-legenda div.red:before {
    background-color: #d83a39
}
.availability-legenda div.orange:before {
    background-color: #f8a909
}
.availability-legenda div.grey:before {
    background-color: #999
}
.availability-legenda.right-aligned {
    margin: 1.25rem 1.25rem .625rem .625rem;
    text-align: right
}
.availability-legenda--above {
    margin-bottom: .625rem !important
}
.col-12>.availability-legenda {
    margin-top: .1875rem;
    margin-bottom: 0;
    top: .4375rem;
    position: relative
}
@media(max-width: 743px) {
    div.besttime .list--icon li {
        padding-left: .75rem
    }
    div.besttime .list--icon li:before {
        left: 0
    }
    .besttime .availability-legenda.right-aligned {
        text-align: left;
        margin: .625rem 0 -0.625rem;
        position: relative;
        top: .3125rem
    }
    li .besttime-blocks--small, .blog__sidebar .besttime-blocks--small {
        top: 0;
        margin: .25rem -0.625rem .25rem -0.875rem
    }
}
.breadcrumbs {
    padding: .125rem 0 .125rem 7.1875rem;
    display: block;
    color: #666;
    font-size: .8125rem;
    line-height: 1.3125rem;
    white-space: nowrap;
    max-width: 100%
}
@media(min-width: 970px) {
    .breadcrumbs {
        padding: .625rem 0 .625rem 7.1875rem
    }
}
.breadcrumbs li {
    line-height: 1.3125rem;
    display: inline-block;
    float: left;
    height: 1.3125rem;
    position: relative
}
.breadcrumbs li:first-child {
    position: absolute;
    left: 1.5625rem
}
.breadcrumbs li a {
    display: inline-block
}
.breadcrumbs li:nth-child(2) {
    margin-right: .6875rem
}
.breadcrumbs li:nth-child(1n+3):not(.no-arrow) {
    margin-left: .6875rem;
    margin-right: .6875rem
}
.breadcrumbs li:nth-child(1n+3):not(.no-arrow):before {
    content: "›";
    position: absolute;
    left: -0.8125rem;
    top: .59375rem;
    line-height: .0625rem
}
.breadcrumbs__last {
    display: inline-block;
    cursor: default
}
.breadcrumbs__last:hover {
    text-decoration: none !important
}
.breadcrumbs__last span {
    color: #666
}
@keyframes floating-request-button {
    0% {
        transform: translateY(100%)
    }
    100% {
        transform: none
    }
}
.btn {
    border: 0;
    border-radius: .3125rem;
    font-weight: 600;
    font-size: 1rem;
    height: 2.25rem;
    line-height: 2.0625rem;
    width: 100%;
    color: #fff;
    padding-bottom: .3125rem;
    cursor: pointer;
    text-shadow: 1px 1px 1px #444;
    -webkit-appearance: none;
    vertical-align: top;
    white-space: nowrap;
    font-family: "Noto Sans", "Arial", sans-serif;
    transition: color .2s ease-in-out, opacity .2s ease-in-out, background .2s ease-in-out, border-color .2s ease-in-out
}
.btn .halflings {
    position: relative;
    left: -0.625rem;
    top: .1875rem
}
.btn i, .btn .btn__icon {
    position: absolute;
    margin-left: -1.875rem;
    margin-top: .125rem
}
.btn.behind-field {
    display: inline-block;
    height: 2.1875rem;
    margin-left: .625rem;
    line-height: 2.125rem
}
.btn span {
    font-weight: normal
}
.btn--orange {
    background-color: #e48901;
    border-bottom: 1px solid #ab6701;
    border-top: 1px solid #e48901
}
.btn--orange.inactive {
    background-color: #f2f2f2;
    color: #999;
    box-shadow: 0 0 0 rgba(0, 0, 0, .18);
    cursor: default;
    text-decoration: none;
    opacity: .5
}
.btn--orange.inactive:hover {
    opacity: .5 !important
}
.btn--orange:hover {
    color: #fff;
    border-top: 1px solid #ab6701
}
.btn--orange:visited {
    color: #fff
}
.btn--orange:active {
    border-color: #e48901;
    border-top: 1px solid #ab6701;
    line-height: 2.125rem
}
.btn--green {
    background-color: #41922c;
    border-bottom: 1px solid #2a7018;
    border-top: 1px solid #41922c
}
.btn--green:hover {
    color: #fff;
    border-top: 1px solid #2a7018
}
.btn--green:visited {
    color: #fff
}
.btn--green:active {
    border-color: #41922c;
    border-top: 1px solid #2a7018;
    line-height: 2.125rem
}
.btn--small {
    height: 1.625rem;
    line-height: 1.4375rem;
    padding-bottom: .125rem;
    font-size: .875rem
}
.btn--small:active {
    line-height: 1.5625rem
}
.btn--small.btn--next:after {
    font-size: 1.375rem;
    top: -0.0625rem
}
.btn--light {
    font-weight: normal !important
}
.btn--grey {
    background-color: #d9d9d9;
    border-bottom: 1px solid #999;
    cursor: default
}
.btn--mediumgreen {
    color: #444;
    text-shadow: none;
    background-color: #6fa838;
    border-bottom: 1px solid #2e5f1d
}
.btn--mediumgreen:active {
    border-color: #006400;
    line-height: 2.125rem
}
.btn--red {
    background-color: #006400;
    border-top: 1px solid #750f0e;
    border-bottom: 1px solid #750f0e
}
.btn--red:hover {
    color: #fff;
    border-top: 1px solid #750f0e
}
.btn--red:visited {
    color: #fff
}
.btn--red:active {
    border-color: #006400;
    border-top: 1px solid #750f0e;
    line-height: 2.125rem
}
.btn--mediumred {
    color: #444;
    text-shadow: none;
    background-color: #dc6060;
    border-bottom: 1px solid #7a1a1a
}
.btn--mediumred:active {
    border-color: #006400;
    line-height: 2.125rem
}
.btn--roundwhite {
    border: 1px solid #048cba;
    text-shadow: none;
    font-weight: bold;
    background-color: #fff;
    color: #048cba
}
.btn--roundwhite[data-state=disabled], .btn--roundwhite[data-state=disabled]:hover {
    opacity: .5 !important;
    cursor: initial;
    background-color: #fff !important;
    color: #048cba !important
}
.btn--roundwhite .sbi {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin: .4375rem .3125rem 0 0
}
.btn--roundwhite--transparent {
    background: rgba(0, 0, 0, 0)
}
.btn--arrow:after {
    content: "›";
    font-size: 1.75rem;
    margin: 0 .25rem;
    position: absolute;
    font-weight: normal;
    position: absolute;
    top: -0.1875rem;
    margin-left: .5rem
}
.btn--blue {
    background-color: #048cba;
    border-top: 1px solid #03698b
}
.btn--white {
    background-color: #fff;
    border: 1px solid #d9d9d9;
    border-radius: 0;
    color: #048cba;
    text-shadow: none;
    box-shadow: 0 0 6px rgba(0, 0, 0, .18)
}
.btn--white:active {
    box-shadow: 0 0 6px rgba(0, 0, 0, .18) inset
}
.btn--white.active {
    background-color: #f2f2f2;
    color: #006400;
    box-shadow: 0 0 0 rgba(0, 0, 0, .18);
    cursor: default;
    text-decoration: none
}
.btn--white.inactive {
    background-color: #f2f2f2;
    color: #999;
    box-shadow: 0 0 0 rgba(0, 0, 0, .18);
    cursor: default;
    text-decoration: none;
    opacity: .5
}
.btn--white.inactive:hover {
    opacity: .5 !important
}
.btn--multiline {
    height: auto;
    padding: .28125rem 1.25rem .34375rem;
    line-height: 1.5rem !important;
    white-space: normal
}
.btn--multiline.btn--next, .btn--multiline.btn--arrow {
    padding-right: 1.8125rem !important
}
.btn--multiline.btn--next:after, .btn--multiline.btn--arrow:after {
    position: relative !important;
    display: inline-block;
    vertical-align: top;
    width: .5625rem;
    margin: 0 -0.5625rem 0 0;
    transform: translateX(0.375rem)
}
.btn--prev, .btn--next, .btn--up {
    text-align: center;
    position: relative;
    width: 100%;
    display: block
}
.btn--prev .btn__content-truncate, .btn--next .btn__content-truncate, .btn--up .btn__content-truncate {
    max-width: calc(100% - 1.25rem);
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-left: -0.9375rem
}
.btn--prev:after, .btn--next:after, .btn--up:after {
    content: "‹";
    position: absolute;
    left: .75rem;
    top: -0.1875rem;
    font-size: 1.75rem;
    font-weight: normal
}
.btn--prev:active:after, .btn--next:active:after, .btn--up:active:after {
    top: -0.125rem
}
.btn--next:after {
    content: "›";
    left: auto;
    right: auto;
    margin-left: .4375rem
}
.btn--next-right:after {
    position: absolute;
    left: auto;
    margin-left: 0;
    right: .75rem;
    top: -0.1875rem;
    font-size: 1.75rem;
    font-weight: normal
}
.btn--next.btn--onlyarrow:after, .btn--prev.btn--onlyarrow:after {
    left: 0;
    right: 0;
    margin: 0
}
.btn--up:after {
    content: "›";
    left: auto;
    right: 1rem;
    top: 0;
    transform: rotate(-90deg)
}
.btn--autowidth {
    width: auto;
    padding-left: 1.25rem;
    padding-right: 1.25rem
}
.btn--autowidth.btn--next, .btn--autowidth.btn--up {
    padding-right: 1.875rem
}
.btn--autowidth.btn--next:after, .btn--autowidth.btn--up:after {
    left: auto;
    right: auto
}
.btn--autowidth.btn--nexttoinput {
    height: 2.1875rem !important;
    line-height: 1.875rem;
    margin-left: .625rem
}
.btn--autowidth.btn--nexttoinput:active {
    line-height: 1.9375rem
}
.btn--autowidth--wide {
    padding-left: 2.5rem;
    padding-right: 2.5rem
}
.btn--autowidth--wide.btn--next {
    padding-right: 3.125rem
}
.btn--right {
    float: right
}
.btn--transparent {
    margin: .3125rem .9375rem .3125rem 0;
    background-color: rgba(0, 0, 0, .55);
    border: 1px solid #ccc;
    color: #fff;
    padding: .5rem 1.875rem .5rem 1.25rem;
    line-height: 1rem;
    border-radius: .3125rem;
    position: relative;
    text-shadow: none;
    transition: opacity .2s ease-in-out, background .2s ease-in-out, color .2s ease-in-out
}
.btn--transparent:after {
    content: "›";
    display: block;
    font-size: 1.25rem;
    position: absolute;
    top: .4375rem;
    right: .625rem
}
.btn--transparent:hover {
    opacity: 1;
    background-color: #fff;
    color: #444;
    text-decoration: none;
    text-shadow: none
}
.btn--transparent:active {
    line-height: 1.0625rem
}
.btn--withsubtext {
    line-height: .875rem !important;
    padding-top: .25rem !important;
    padding-bottom: .25rem !important;
    height: 2.625rem !important
}
.btn--withsubtext>span {
    font-size: .75rem;
    font-weight: normal;
    display: block;
    position: relative;
    top: .1875rem
}
.btn--hover-icon i.sbi {
    top: .25rem;
    transition: filter .2s ease
}
.btn--hover-icon:hover i.sbi {
    filter: brightness(0) invert(1)
}
.btn--inlineblock {
    display: inline-block
}
a.btn {
    display: inline-block;
    text-align: center;
    position: relative
}
.btn--large {
    height: 4.125rem;
    width: 14.375rem;
    line-height: 3.9375rem;
    padding-bottom: .625rem;
    font-size: 1.625rem
}
.btn--large:active {
    line-height: 4.0625rem !important
}
.btn.busy {
    display: inline-block;
    position: relative;
    color: rgba(0, 0, 0, 0);
    text-shadow: none
}
.btn.busy:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.25rem;
    height: 1.25rem;
    margin-top: -0.6875rem;
    margin-left: -0.625rem;
    border: 4px solid #fff;
    border-right-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    animation: spin 1s linear infinite
}
.btn.busy:hover {
    color: rgba(0, 0, 0, 0)
}
.btn--facebook {
    background-color: #3c5a99;
    border-bottom: 1px solid #2d4373;
    border-top: 1px solid #3c5a99
}
.btn--facebook:hover {
    border-top: 1px solid #2d4373
}
.btn--facebook:active {
    border-color: #3c5a99;
    border-top: 1px solid #2d4373;
    line-height: 2.125rem
}
.btn--google {
    background-color: #fff;
    border: 1px solid #cfcdcd;
    color: #444;
    text-shadow: none
}
.btn--google:hover {
    border: 1px solid #444
}
.btn--google:active {
    border: 1px solid #bfbfbf;
    line-height: 2.125rem
}
.btn--facebook svg, .btn--google svg {
    width: 1.5rem;
    position: absolute;
    top: .375rem;
    left: .75rem
}
a.btn {
    display: inline-block;
    text-align: center;
    position: relative
}
html.no-touch .btn:not(.btn--orange):hover {
    opacity: .9
}
a.btn:hover, a.btn:active {
    text-decoration: none !important
}
.floating-request-btn {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    box-shadow: 0px -1px 10px rgba(0, 0, 0, .18);
    padding: .9375rem .625rem;
    padding-bottom: calc(env(safe-area-inset-bottom) + 25px);
    margin: 0;
    margin-bottom: calc(env(safe-area-inset-bottom)*-1);
    background-color: #fff;
    z-index: 78 !important
}
.floating-request-btn .col {
    padding: 0
}
.floating-request-btn--ani {
    top: auto !important;
    bottom: 0 !important;
    bottom: env(safe-area-inset-bottom) !important;
    transform: translateY(100%);
    animation: .2s ease-out 3s 1 forwards floating-request-button
}
.floating-request-btn--ani[data-state=loaded] {
    animation-delay: .8s
}
.floating-request-btn--narrow .btn {
    display: block;
    margin: 0 auto;
    width: 85%
}
.floating-request-btn--cookiebar {
    position: relative;
    top: calc(-1.5rem - 1px) !important;
    margin: 0 -1.875rem;
    width: calc(100% + 3.75rem);
    padding: .625rem;
    box-shadow: 0 0 .625rem rgba(0, 0, 0, .18);
    clip-path: inset(0 0 -0.625rem 0)
}
.uploadifive-button input[type=file]:hover {
    cursor: pointer
}
.btn+.btn--addtext {
    position: relative;
    top: .5rem
}
.clear-btn {
    position: absolute;
    width: .875rem;
    height: .875rem;
    display: inline-block;
    cursor: pointer
}
.clear-btn:before {
    content: "";
    width: .875rem;
    height: .875rem;
    border-radius: 50%;
    border: 1px solid #aaa;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%)
}
.clear-btn:after {
    content: "";
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center;
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/clear.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/clear.svg");
    height: .5rem;
    width: .5rem;
    position: absolute;
    opacity: .8;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%)
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .clear-btn:after {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/clear@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/clear.svg")
    }
}
.clear-btn:hover:before {
    background-color: #006400;
    border-color: #006400
}
.clear-btn:hover:after {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross.svg");
    opacity: 1
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .clear-btn:hover:after {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross.svg")
    }
}
@media(hover: hover) {
    .btn {
        outline: 0
    }
    .btn:focus:not(:active) {
        box-shadow: 0 0 .3125rem rgba(102, 102, 102, .5)
    }
    html.no-touch .btn--orange:not(:active):hover {
        background-color: #ab6701
    }
    html.no-touch .btn--green:not(:active):hover {
        background-color: #2a7018
    }
    html.no-touch .btn--facebook:not(:active):hover {
        background-color: #2d4373
    }
    html.no-touch .btn--google:not(:active):hover {
        background-color: #fff
    }
    html.no-touch .btn--white:hover {
        background-color: #f2f2f2
    }
    html.no-touch .btn--roundwhite:hover {
        background-color: #048cba;
        color: #fff
    }
    .btn__hover-icon {
        transition: filter .2s ease-in-out
    }
    .btn:hover .btn__hover-icon {
        filter: brightness(0%) invert(100%)
    }
}
@media(max-width: 320px) {
    .floating-request-btn--cookiebar {
        margin: 0 -1.25rem;
        width: calc(100% + 2.5rem)
    }
}
@media(max-width: 414px)and (max-height: 625px)and (orientation: portrait) {
    .floating-request-btn {
        padding: .625rem
    }
}
@media(max-width: 743px) {
    .btn--withsubtext-m {
        line-height: .875rem !important;
        padding-top: .25rem !important;
        padding-bottom: .25rem !important;
        height: 2.625rem !important
    }
    .btn--withsubtext-m>span {
        font-size: .75rem;
        font-weight: normal;
        display: block;
        position: relative;
        top: .1875rem
    }
}
.calendar {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
.calendar.rendered {
    padding: 0
}
.calendar.rendered .checkbox-lbl {
    margin-top: .625rem
}
.calendar__inner {
    background-color: #fff;
    text-align: center;
    position: relative
}
.calendar__inner:after {
    content: "";
    display: table;
    clear: both
}
.enquiryform .calendar__inner {
    background: rgba(0, 0, 0, 0)
}
.calendar__inner__top {
    font-size: 1rem;
    height: 2.25rem;
    font-weight: 600;
    line-height: 2.0625rem;
    margin-bottom: .5rem
}
.calendar__inner__top span {
    color: #444 !important
}
.calendar__inner__top a {
    border: 1px solid #d9d9d9;
    display: inline-block;
    height: 2.1875rem;
    width: 14.2857142857%;
    border-radius: .25rem;
    float: right;
    text-decoration: none;
    color: #0378a0;
    font-size: 1.5625rem;
    line-height: 1.6875rem;
    -webkit-transition: "all .2s ease-in-out";
    -moz-transition: "all .2s ease-in-out";
    -ms-transition: "all .2s ease-in-out";
    -o-transition: "all .2s ease-in-out";
    transition: all .2s ease-in-out
}
.calendar__inner__top a:nth-child(1) {
    float: left
}
.calendar__inner__top a.inactive {
    background-color: #fff;
    color: #ccc;
    cursor: default;
    border: 1px solid #d9d9d9
}
.enquiryform .calendar__inner__top a {
    background-color: #fff;
    border: 1px solid #0378a0
}
.enquiryform .calendar__inner__top a.inactive {
    background-color: rgba(0, 0, 0, 0);
    border: 1px solid #d9d9d9
}
html.no-touch .calendar__inner__top a:hover {
    background-color: #0378a0;
    color: #fff;
    border-color: #0378a0;
    text-decoration: none !important
}
html.no-touch .calendar__inner__top a.inactive {
    background-color: #fff;
    color: #ccc;
    cursor: default;
    border: 1px solid #d9d9d9
}
html.no-touch .calendar__inner__top a.inactive:hover {
    background-color: #fff;
    color: #ccc;
    border: 1px solid #d9d9d9
}
.calendar__inner__grid__row {
    display: block;
    height: 2.8125rem;
    line-height: 2.8125rem;
    font-size: .8125rem
}
.calendar__inner__grid__row div {
    display: inline-block;
    height: 2.8125rem;
    width: 14.2857142857%;
    float: left;
    text-align: center;
    border-right: .0625rem solid #d9d9d9;
    border-bottom: .0625rem solid #d9d9d9
}
.calendar__inner__grid__row div:first-child {
    border-left: .0625rem solid #d9d9d9
}
.calendar__inner__grid__row:first-child div {
    border-top: .0625rem solid #d9d9d9
}
.calendar__inner__grid__row:nth-child(n+2) div {
    cursor: pointer;
    background-color: #f2fafc;
    color: #0378a0;
    -webkit-transition: "all .2s ease-in-out";
    -moz-transition: "all .2s ease-in-out";
    -ms-transition: "all .2s ease-in-out";
    -o-transition: "all .2s ease-in-out";
    transition: all .2s ease-in-out
}
.calendar__inner__grid__row:nth-child(n+2) div.other_month {
    background-color: #fff;
    color: #61a7c1
}
.calendar__inner__grid__row:nth-child(n+2) div.selected {
    font-weight: 600;
    background-color: #2a7018;
    color: #fff
}
.calendar__inner__grid__row:nth-child(n+2) div.selected.other_month:not(.inactive) {
    background-color: rgba(0, 0, 0, 0)
}
.calendar__inner__grid__row:nth-child(n+2) div.inactive {
    background-color: #fff;
    color: #ccc;
    cursor: default
}
html.no-touch .calendar__inner__grid__row:nth-child(n+2) div:hover {
    font-weight: 600;
    background-color: #0378a0;
    color: #fff
}
html.no-touch .calendar__inner__grid__row:nth-child(n+2) div.inactive:hover {
    background-color: #fff;
    color: #ccc;
    cursor: default;
    font-weight: normal
}
.calendar .calendar__inner__grid__row:nth-child(n+2) div.other_month {
    pointer-events: none;
    background-color: #fff
}
.calendar .calendar__inner__grid__row:nth-child(n+2) div.other_month:before, .calendar .calendar__inner__grid__row:nth-child(n+2) div.other_month i {
    display: none;
    opacity: .15
}
.calendar__inner__grid__header {
    font-size: .6875rem;
    font-weight: 600;
    color: #444;
    background-color: #f2f2f2
}
.calendar__inner__year>b, .calendar__inner__month>b, .calendar__inner__day>b {
    font-weight: normal;
    display: block;
    margin-top: .625rem;
    margin-bottom: 1.25rem
}
.calendar__inner__year>b span, .calendar__inner__month>b span, .calendar__inner__day>b span {
    color: #999
}
.calendar__inner__year ul li, .calendar__inner__month ul li {
    display: inline-block;
    height: 2.8125rem;
    width: 100%;
    text-align: center;
    line-height: 2.6875rem;
    border: .0625rem solid #d9d9d9;
    cursor: pointer;
    font-size: .8125rem;
    -webkit-transition: "all .2s ease-in-out";
    -moz-transition: "all .2s ease-in-out";
    -ms-transition: "all .2s ease-in-out";
    -o-transition: "all .2s ease-in-out";
    transition: all .2s ease-in-out;
    background-color: #f2fafc;
    color: #0378a0
}
.calendar__inner__year ul li.other_month, .calendar__inner__month ul li.other_month {
    background-color: #fff;
    color: #61a7c1
}
.calendar__inner__year ul li.selected, .calendar__inner__month ul li.selected {
    font-weight: 600;
    background-color: #2a7018;
    color: #fff;
    position: relative
}
.calendar__inner__year ul li.inactive, .calendar__inner__month ul li.inactive {
    background-color: #fff;
    color: #ccc;
    cursor: default
}
.calendar__inner__year ul li:nth-child(2), .calendar__inner__month ul li:nth-child(2) {
    border-left: 0
}
.calendar__inner__year ul li:before, .calendar__inner__year ul li:after, .calendar__inner__month ul li:before, .calendar__inner__month ul li:after {
    -webkit-transition: "all .2s ease-in-out";
    -moz-transition: "all .2s ease-in-out";
    -ms-transition: "all .2s ease-in-out";
    -o-transition: "all .2s ease-in-out";
    transition: all .2s ease-in-out
}
html.no-touch .calendar__inner__year ul li:hover, html.no-touch .calendar__inner__month ul li:hover {
    font-weight: 600;
    background-color: #0378a0;
    color: #fff
}
html.no-touch .calendar__inner__year ul li:hover:before, html.no-touch .calendar__inner__year ul li:hover:after, html.no-touch .calendar__inner__month ul li:hover:before, html.no-touch .calendar__inner__month ul li:hover:after {
    border-left-color: #0378a0
}
html.no-touch .calendar__inner__year ul li.inactive, html.no-touch .calendar__inner__month ul li.inactive {
    background-color: #fff;
    color: #ccc;
    cursor: default
}
html.no-touch .calendar__inner__year ul li.inactive:hover, html.no-touch .calendar__inner__month ul li.inactive:hover {
    font-weight: normal
}
.calendar__inner__year ul {
    width: 100%
}
.calendar__inner__year ul li {
    float: left;
    width: 25%
}
.calendar__inner__year ul li.selected:after {
    content: "";
    width: 0;
    height: 0;
    border-top: 6px solid rgba(0, 0, 0, 0);
    border-bottom: 6px solid rgba(0, 0, 0, 0);
    border-left: 8px solid #2a7018;
    position: absolute;
    top: 2.5625rem;
    right: 50%;
    transform: rotate(90deg)
}
.calendar__inner__month ul li {
    width: 25%;
    border: .0625rem solid #d9d9d9;
    float: left
}
.calendar__inner__month ul li:nth-child(4n+2), .calendar__inner__month ul li:nth-child(4n+3), .calendar__inner__month ul li:nth-child(4n+4) {
    border-left: 0
}
.calendar__inner__month ul li:nth-child(n+5) {
    border-top: 0
}
.calendar__inner__disabled {
    position: absolute;
    top: 2.75rem;
    width: 100%;
    background-color: rgba(255, 255, 255, .9);
    border: .0625rem solid #d9d9d9
}
.calendar__inner__disabled span {
    display: inline-block;
    height: 1.25rem;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -0.625rem
}
.calendar__inner div.uncertain {
    position: relative;
    overflow: hidden;
    float: left
}
.calendar__inner div.uncertain:before {
    width: 1.25rem;
    height: 1.25rem;
    background-color: #e48901;
    content: "";
    position: absolute;
    right: -0.6875rem;
    top: -0.6875rem;
    display: block;
    transform: rotate(-45deg)
}
.calendar__inner div.limited {
    position: relative;
    overflow: hidden;
    float: left
}
.calendar__inner div.limited i {
    width: .75rem;
    height: .75rem;
    background-color: #e48901;
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    text-align: center;
    font-size: .6875rem;
    color: #fff;
    line-height: .6875rem;
    font-weight: bold
}
.calendar__inner li.inactive, .calendar__inner div.inactive {
    position: relative;
    overflow: hidden
}
.calendar__inner li.inactive:before, .calendar__inner div.inactive:before {
    content: "";
    display: block;
    left: 50%;
    top: 50%;
    width: 200%;
    height: 0;
    border-top: .0625rem solid #006400;
    opacity: .5;
    position: absolute;
    -ms-transform: translateX(-50%) translateY(-50%) rotate(-30deg);
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(-30deg);
    transform: translateX(-50%) translateY(-50%) rotate(-30deg)
}
.calendar__inner li.inactive i, .calendar__inner div.inactive i {
    width: .75rem;
    height: .75rem;
    background-color: #e48901;
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    text-align: center;
    font-size: .6875rem;
    color: #fff;
    line-height: .6875rem;
    font-weight: bold;
    opacity: .5
}
.calendar__legend {
    text-align: left;
    margin-bottom: .625rem;
    display: none
}
.calendar__legend div {
    margin: 0 .625rem 0 0;
    color: #666;
    display: inline-block;
    font-size: .8125rem
}
.calendar__legend div:after {
    content: "";
    display: table;
    clear: both
}
.calendar__legend div span {
    display: inline-block;
    width: 1.25rem;
    height: 1rem;
    line-height: .875rem;
    font-size: .625rem;
    border: 1px solid #d9d9d9;
    margin-right: .375rem;
    background-color: #f2fafc;
    color: #0378a0;
    position: relative;
    text-align: center;
    overflow: hidden;
    top: .125rem;
    float: left
}
.calendar__legend div span.limited:before {
    width: 1.25rem;
    height: 1.25rem;
    background-color: #e48901;
    content: "";
    position: absolute;
    right: -0.875rem;
    top: -0.875rem;
    display: block;
    transform: rotate(-45deg)
}
.calendar__legend div span.unavailable {
    background-color: #fff;
    color: #ccc
}
.calendar__legend div span.unavailable:before {
    content: "";
    display: block;
    left: 0;
    top: 5%;
    width: 200%;
    height: 100%;
    border-top: .0625rem solid #006400;
    opacity: .5;
    position: absolute;
    -ms-transform: rotate(-40deg);
    -webkit-transform: rotate(-40deg);
    transform: rotate(-40deg)
}
.calendar__legend div a.help {
    position: relative !important;
    float: right !important
}
@media(max-width: 743px) {
    .calendar__inner__month {
        padding-right: 0 !important
    }
}
.calendar+.calendar__legend {
    margin-top: .625rem
}
.calendar.stepped+.calendar__legend {
    margin-top: .9375rem
}
.card {
    padding: 1.25rem
}
.children-ages {
    overflow: hidden;
    height: 0;
    transition: height .225s ease-out
}
.children-ages[data-state=shrinking] {
    transition: height .175s ease-in
}
.children-ages[data-state=visible] {
    height: auto
}
.children-ages strong {
    display: block;
    margin-top: 1.25rem;
    margin-bottom: .3125rem;
    padding-bottom: .125rem;
    border-bottom: .0625rem solid #d9d9d9
}
.children-ages .messagebox {
    margin: 1.0625rem 0 0 0
}
.children-ages div.select--holder {
    width: 6.625rem;
    display: inline-block;
    float: right;
    margin-bottom: 0
}
.children-ages div.select--holder:before {
    border-top: .375rem solid #444;
    top: 1.3125rem;
    right: .625rem
}
.children-ages div.select--holder:hover:before {
    border-top-color: #444
}
.children-ages div.select--holder select {
    color: #000;
    border-color: #d9d9d9
}
.container--directory .children-ages div.select--holder {
    margin-right: .625rem
}
.enquiryform .children-ages {
    margin-left: 1.25rem
}
.enquiryform .children-ages label {
    display: inline-block;
    width: 11.25rem;
    margin: 0;
    min-height: 0;
    float: left;
    line-height: 2.25rem
}
.enquiryform .children-ages .select--holder {
    float: none;
    width: 6.625rem
}
.enquiryform .children-ages .row.datarow {
    padding: .5rem 0
}
.enquiryform--new .children-ages .select--holder {
    float: right
}
.enquiryform--new .children-ages label {
    width: 8.75rem
}
.enquiryform--new .children-ages .row.datarow {
    width: 17.875rem;
    margin-bottom: .25rem
}
.enquiryform--new .children-ages .row.datarow:after {
    content: "";
    display: table;
    clear: both
}
.climate {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    padding: .625rem;
    border: 1px solid #f6d89a;
    border-left-width: 0;
    border-right-width: 0;
    top: .625rem;
    margin: 0 -0.625rem .625rem
}
.climate:after {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
    background-color: #fefdf9;
    content: "";
    display: block
}
.climate[data-units-temperature=fahrenheit] .climate__chart--combined:before {
    content: "°F"
}
.climate[data-units-length=imperial] .climate__chart--combined:after {
    content: "in";
    left: calc(100% - 1.25rem)
}
.climate>img {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 100%;
    max-height: 100%;
    z-index: 1
}
.climate__heading {
    font-size: .9375rem !important;
    z-index: 3;
    margin: 0 !important
}
.climate__heading:before {
    content: none !important
}
.climate__heading span {
    font-size: .8125rem !important;
    font-weight: normal;
    padding-left: .0625rem;
    background-color: rgba(0, 0, 0, 0) !important
}
.climate__col {
    width: 100%
}
.climate__chart {
    min-height: 9.375rem;
    position: relative;
    margin: 3.125rem 0 1.25rem 0;
    z-index: 5
}
.climate__chart>div {
    z-index: 3
}
.climate__chart--combined {
    top: .375rem;
    margin-top: 0;
    margin-bottom: 2.4375rem
}
.climate__chart--combined:before, .climate__chart--combined:after {
    display: none;
    position: absolute;
    top: 0;
    font-weight: bold;
    font-size: .625rem;
    width: 1.3125rem
}
.climate__chart--combined:before {
    content: "°C";
    left: 0;
    text-align: right
}
.climate__chart--combined:after {
    content: "mm";
    left: calc(100% - 1.5rem)
}
.climate__chart--combined[data-legend=show]:before, .climate__chart--combined[data-legend=show]:after {
    display: block
}
.climate__separator {
    position: relative;
    z-index: 3;
    top: -0.9375rem;
    margin: 0 .25rem .375rem;
    width: 100%;
    height: 0;
    border: 0;
    border-bottom: 1px solid #f6d89a
}
.climate__legend {
    order: -1;
    margin-bottom: .9375rem;
    padding: 0 .25rem
}
.climate__legend-item {
    position: relative;
    z-index: 3;
    display: inline-block;
    padding-right: .625rem
}
.climate__legend-item, .climate__legend-item * {
    font-size: .6875rem
}
.climate__legend-item:before {
    content: "";
    position: relative;
    top: .0625rem;
    display: inline-block;
    width: .5625rem;
    height: .5625rem;
    background-color: #27448c;
    border-radius: 50%;
    margin-right: .125rem
}
.climate__legend-item--wide {
    display: block
}
.climate__legend-item--red:before {
    background-color: #006400
}
.climate__legend-item--yellow:before {
    background-color: #e07e00
}
.climate__footnote {
    position: relative;
    z-index: 3;
    display: block;
    width: 100%;
    top: -0.6875rem;
    background: rgba(0, 0, 0, 0);
    font-size: .6875rem;
    line-height: .9375rem;
    color: #999;
    text-align: center;
    font-weight: normal;
    font-style: normal
}
.climate__noscript {
    position: relative;
    z-index: 4
}
.climate__chartimg {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 100%;
    max-height: 100%;
    z-index: 1
}
.climate--narrow {
    margin: 0 -0.1875rem .875rem;
    border-left-width: 1px;
    border-right-width: 1px;
    top: .625rem;
    padding: .8125rem .5rem 0
}
.climate[data-units-temperature=celcius] .hide-celcius, .climate[data-units-temperature=fahrenheit] .hide-fahrenheit, .climate[data-units-length=metric] .hide-metric, .climate[data-units-length=imperial] .hide-imperial {
    display: none
}
@media(hover: hover) {
    rect[stroke="#ffffff"][stroke-width="1"], circle[stroke="#a50a09"][stroke-width="1"] {
        display: none
    }
}
@media(hover: none) {
    .climate__chart svg rect[stroke="#ffffff"][stroke-width="1"] {
        stroke-width: 5px !important;
        stroke: #5473b4;
        fill: #5473b4;
        fill-opacity: 1
    }
}
.color-white {
    color: #fff
}
.bg-white {
    background: #fff
}
.color-darkgrey {
    color: #444
}
.bg-darkgrey {
    background: #444
}
.color-mediumgrey {
    color: #666
}
.bg-mediumgrey {
    background: #666
}
.color-lightgrey {
    color: #999
}
.bg-lightgrey {
    background: #999
}
.color-red {
    color: #d83a39
}
.bg-red {
    background: #d83a39
}
.color-orange {
    color: #f8a909
}
.bg-orange {
    background: #f8a909
}
.color-lightgreen {
    color: #5ab657
}
.bg-lightgreen {
    background: #5ab657
}
.color-green {
    color: #0a8b05
}
.bg-green {
    background: #0a8b05
}
.color-lightblue {
    color: #f2fafc
}
.bg-lightblue {
    background: #f2fafc
}
.contact-operator-box {
    padding: 0;
    margin: 0;
    border: .0625rem solid #d9d9d9;
    background-color: #fff;
    box-shadow: 0px 0px 7px rgba(50, 50, 50, .4);
    position: absolute;
    top: 50px;
    left: 50px;
    z-index: 200;
    font-size: .875rem;
    line-height: 1.125rem;
    padding: 2.5rem .9375rem .9375rem .9375rem;
    width: 18.75rem
}
.contact-operator-box--header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #efefef;
    border-bottom: .0625rem solid #d9d9d9;
    height: 1.875rem
}
.contact-operator-box--header--pointer {
    position: absolute;
    top: -0.3125rem;
    left: 2.1875rem;
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #d9d9d9;
    background-color: #efefef
}
.contact-operator-box--header--pointer:after {
    position: absolute;
    content: "";
    display: block;
    width: 1.625rem;
    height: .9375rem;
    top: .1875rem;
    left: -0.5625rem;
    background-color: #efefef;
    z-index: 2;
    transform: rotate(45deg)
}
.contact-operator-box--header .detail__close {
    position: absolute;
    border: 0;
    top: -0.0625rem;
    right: -0.0625rem;
    width: 1.875rem;
    height: 1.875rem;
    background-color: rgba(0, 0, 0, 0);
    cursor: pointer
}
.contact-operator-box--header .detail__close:before {
    content: "";
    position: absolute;
    background-color: #444;
    border-radius: .1875rem;
    width: 1.125rem;
    height: 1.125rem
}
.contact-operator-box--header .detail__close i {
    width: .625rem;
    position: absolute
}
.contact-operator-box--header .detail__close:before, .contact-operator-box--header .detail__close i {
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%)
}
.contact-operator-box--header .detail__close:hover:before {
    background-color: #666
}
.contact-operator-box strong {
    display: block;
    margin-bottom: .625rem
}
body.scrolled .contact-operator-box {
    margin-top: -2.5rem
}
.conversionblock:after {
    content: "";
    display: table;
    clear: both
}
.conversionblock__intro {
    margin-bottom: .625rem
}
.conversionblock__intro h3 {
    font-size: 1.5rem;
    margin-top: .625rem;
    margin-bottom: .9375rem;
    margin-top: 1.5625rem
}
.conversionblock--unavailable .conversionblock__intro h3 {
    margin-top: .625rem
}
.conversionblock--unavailable .conversionblock__intro {
    opacity: .25;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}
.conversionblock__intro__header {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    padding: 0 1.25rem .9375rem;
    border-bottom: .0625rem solid #d9d9d9;
    position: relative
}
.conversionblock__intro__header:before, .conversionblock__intro__header:after {
    content: "";
    position: absolute;
    left: 2.5rem;
    bottom: -1.125rem;
    width: 0;
    height: 0;
    border-left: 0 solid rgba(0, 0, 0, 0);
    border-right: 1.5625rem solid rgba(0, 0, 0, 0)
}
.conversionblock__intro__header:before {
    border-top: 1.125rem solid #d9d9d9
}
.conversionblock__intro__header:after {
    border-top: 1.125rem solid #fff;
    transform-origin: top left;
    transform: translate(0.0625rem, -0.0625rem) scale(0.95)
}
.conversionblock__intro__header p {
    display: block;
    margin-top: .1875rem;
    margin-bottom: .3125rem
}
.conversionblock__intro__header a {
    font-size: .8125rem;
    text-decoration: underline;
    white-space: nowrap
}
.conversionblock__intro__header a:hover {
    text-decoration: none
}
.conversionblock__price.price {
    font-size: 1.125rem;
    line-height: 1.5rem;
    display: block;
    margin-bottom: .3125rem;
    transition: zoom .2s ease-in-out, margin .2s ease-in-out;
    -webkit-transition: "zoom .2s ease-in-out, margin .2s ease-in-out";
    -moz-transition: "zoom .2s ease-in-out, margin .2s ease-in-out";
    -ms-transition: "zoom .2s ease-in-out, margin .2s ease-in-out";
    -o-transition: "zoom .2s ease-in-out, margin .2s ease-in-out"
}
.conversionblock__price.price a {
    color: #2a7018;
    white-space: nowrap;
    text-decoration: underline
}
.conversionblock__price.price a:hover {
    text-decoration: none
}
.conversionblock__priceamount {
    font-weight: 600;
    letter-spacing: .03125rem
}
.conversionblock__pricetotal {
    color: inherit;
    text-decoration: underline;
    border: 0;
    background: none
}
.conversionblock__pricebullets {
    font-size: .8125rem;
    line-height: 1rem;
    margin-top: 0 !important;
    padding-top: .625rem
}
.conversionblock__pricebullets li {
    margin: 0 0 .3125rem 0 !important
}
.conversionblock__pricebullets li:before {
    position: relative !important;
    display: inline-block;
    margin-left: -0.5rem;
    vertical-align: top
}
.conversionblock__costbreakdown {
    background: #fff;
    position: absolute;
    z-index: 37;
    left: .9375rem;
    max-width: calc(100vw - 1.875rem);
    padding: 2.5rem .625rem .625rem;
    box-shadow: 0 0 7px rgba(50, 50, 50, .4)
}
.conversionblock__costbreakdown-arrow {
    position: absolute;
    background: #efefef;
    width: 1rem;
    height: 1rem;
    left: calc(50% - 0.5rem);
    top: -0.5rem;
    transform: rotate(-45deg);
    border: 1px solid #d9d9d9;
    border-bottom: 0;
    border-left: 0
}
.conversionblock__costbreakdown-title {
    position: absolute;
    z-index: 11;
    width: 100%;
    line-height: 1.875rem;
    height: 1.875rem;
    background-color: #efefef;
    padding: 0 1.25rem;
    top: .9375rem;
    text-align: center;
    font-size: .875rem;
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #ccc;
    top: 0;
    left: 0;
    border-top: 0
}
.conversionblock__costbreakdown-title a {
    position: absolute;
    top: -0.0625rem;
    right: -0.0625rem;
    width: 1.875rem;
    height: 1.875rem;
    background-color: rgba(0, 0, 0, 0)
}
.conversionblock__costbreakdown-title a:before {
    content: "";
    position: absolute;
    background-color: #444;
    border-radius: .1875rem;
    width: 1.125rem;
    height: 1.125rem
}
.conversionblock__costbreakdown-title a i {
    width: .625rem;
    position: absolute
}
.conversionblock__costbreakdown-title a:before, .conversionblock__costbreakdown-title a i {
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%)
}
.conversionblock__costbreakdown-title a:hover:before {
    background-color: #666
}
.conversionblock__prefs {
    white-space: nowrap;
    display: inline-block;
    margin-bottom: .625rem;
    font-size: 0
}
.conversionblock--unavailable .conversionblock__prefs {
    opacity: .25;
    pointer-events: none
}
.conversionblock--unavailable .conversionblock__prefs * {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}
.conversionblock__prefs span {
    font-size: .9375rem
}
.conversionblock__prefs a {
    color: #444;
    text-decoration: underline;
    display: inline-block
}
.conversionblock__prefs a i {
    position: relative;
    top: .1875rem;
    left: -0.0625rem;
    margin-right: .1875rem;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .75
}
.conversionblock__prefs a:hover {
    text-decoration: none
}
.conversionblock__prefs--form {
    width: 100%
}
.conversionblock__prefs--form>a {
    height: 2.1875rem;
    display: block;
    width: auto;
    text-decoration: none;
    border: .0625rem solid #ccc;
    padding: .1875rem .375rem .1875rem .625rem;
    margin-top: .625rem;
    position: relative;
    margin-left: 1.875rem
}
.conversionblock__prefs--form>a span {
    font-size: .9375rem;
    line-height: 1.625rem
}
.conversionblock__prefs--form>a:hover span {
    text-decoration: none
}
.conversionblock__prefs--form>a:hover {
    text-decoration: none !important;
    border: .0625rem solid #999
}
.conversionblock__prefs--form>a:before {
    content: "";
    border-top: .375rem solid #444;
    border-left: .375rem solid rgba(0, 0, 0, 0);
    border-right: .375rem solid rgba(0, 0, 0, 0);
    width: 0;
    height: 0;
    position: absolute;
    right: .875rem;
    top: .875rem
}
.conversionblock__prefs--form>a+a {
    margin-top: 1rem
}
.conversionblock__prefs--form>a i {
    -webkit-filter: none;
    filter: none;
    opacity: 1;
    width: 1.375rem;
    position: absolute;
    left: -1.9375rem;
    top: .3125rem
}
.conversionblock__prefs.error-both a {
    color: #ca4947;
    font-weight: bold
}
.conversionblock__prefs.error-both a i {
    -webkit-filter: none;
    filter: none;
    opacity: 1
}
.conversionblock__prefs.error-travelers a[data-open=travelers] {
    color: #ca4947;
    font-weight: bold
}
.conversionblock__prefs.error-travelers a[data-open=travelers] i {
    -webkit-filter: none;
    filter: none;
    opacity: 1
}
.conversionblock__prefs.error-date a[data-open=date] {
    color: #ca4947;
    font-weight: bold
}
.conversionblock__prefs.error-date a[data-open=date] i {
    -webkit-filter: none;
    filter: none;
    opacity: 1
}
.conversionblock__messagebox.messagebox {
    color: #ca4947;
    margin: 0 0 .625rem;
    width: auto;
    max-width: 21.875rem;
    line-height: 1rem;
    font-size: .8125rem;
    top: -0.4375rem;
    white-space: normal
}
.conversionblock__messagebox.messagebox:before {
    position: absolute;
    top: -0.25rem;
    left: 9.6875rem;
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: .5rem;
    height: .5rem;
    border: .0625rem solid #e88988;
    background-color: #f3e1e0
}
.conversionblock__messagebox.messagebox:after {
    background-color: #f3e1e0;
    position: absolute;
    top: 0;
    left: 9.5rem;
    content: "";
    display: block;
    width: .875rem;
    height: .4375rem
}
.conversionblock__messagebox--totravelers:before {
    left: 1.5625rem
}
.conversionblock__messagebox--totravelers:after {
    left: 1.375rem
}
.conversionblock__messagebox--tonone:before, .conversionblock__messagebox--tonone:after {
    display: none
}
.conversionblock__prefs--form .conversionblock__messagebox {
    top: 0;
    margin: .5rem 0 1.125rem 1.875rem
}
.conversionblock__prefs--form .conversionblock__messagebox:before {
    left: 3rem
}
.conversionblock__prefs--form .conversionblock__messagebox:after {
    left: 2.8125rem
}
.conversionblock__pricesub {
    margin-bottom: .625rem
}
.conversionblock__cta {
    margin-bottom: .9375rem
}
.conversionblock__cta a.email-tour-operator, .conversionblock__cta a.email-tour-operator-prepared {
    margin-top: .625rem
}
.conversionblock__usp {
    font-size: .85625rem;
    line-height: 1rem;
    margin-bottom: .5rem
}
.conversionblock__usp, .conversionblock__usp .conversionblock__usp-link, .conversionblock__usp .conversionblock__usp-link-inline {
    color: #444;
    font-style: italic
}
.conversionblock__usp .conversionblock__usp-link, .conversionblock__usp .conversionblock__usp-text {
    display: block;
    overflow: hidden
}
.conversionblock__usp .conversionblock__usp-link .a--dotted, .conversionblock__usp .conversionblock__usp-text .a--dotted {
    display: inline-block
}
.conversionblock__usp .conversionblock__usp-text {
    border-bottom: .125rem
}
.conversionblock__usp .conversionblock__usp-text .a--dotted {
    display: inline-block
}
.conversionblock__usp .conversionblock__usp-text .a--dotted:hover {
    border-bottom: 1px solid #fff
}
.conversionblock__usp-icon {
    float: left;
    font-size: 1.125rem;
    position: relative;
    top: .0625rem;
    margin-right: .3125rem
}
.conversionblock__usp-link, .conversionblock__usp-link-inline {
    text-decoration: underline
}
.conversionblock__usp-link:hover, .conversionblock__usp-link-inline:hover {
    text-decoration: none !important
}
#CybotCookiebotDialog *, #CybotCookiebotDialogBodyUnderlay * {
    font-family: "Noto Sans", "Arial", sans-serif !important
}
a#CybotCookiebotDialogPoweredbyCybot, div#CybotCookiebotDialogPoweredByText {
    display: none
}
#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-main-logo {
    display: none
}
#CybotCookiebotDialog {
    letter-spacing: 0 !important
}
#CybotCookiebotDialog h2 {
    font-size: 1.5rem;
    letter-spacing: 0 !important
}
#CybotCookiebotDialog a {
    text-decoration: underline !important
}
#CybotCookiebotDialog a:hover {
    text-decoration: none !important
}
#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText a, #CybotCookiebotDialog #CybotCookiebotDialogDetailBodyContentTextAbout a {
    color: inherit !important;
    font-weight: normal !important
}
#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a:after {
    border-color: #048cba !important
}
#CybotCookiebotDialogHeader {
    padding: 0 !important
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink {
    color: #999 !important
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
    border-bottom: 1px solid #999 !important;
    border-width: 1px !important
}
#CybotCookiebotDialogBodyContent {
    letter-spacing: 0 !important;
    padding-top: 3em !important
}
#CybotCookiebotDialogFooter {
    padding-bottom: 3em !important
}
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtons .CybotCookiebotDialogBodyButton {
    height: 57px !important;
    font-size: 17px !important;
    line-height: 19px !important
}
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonDecline, #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonCustomize, #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
    border-width: 1px !important
}
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonDecline div.CybotCookiebotDialogArrow, #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonCustomize div.CybotCookiebotDialogArrow, #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection div.CybotCookiebotDialogArrow {
    display: none !important
}
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:after {
    content: "";
    border-color: #fff;
    border-style: solid;
    border-width: .15em .15em 0 0;
    display: inline-block;
    height: .5em;
    margin-left: 1em;
    transform: rotate(45deg) translateY(-2px);
    vertical-align: baseline;
    width: .5em
}
#CybotCookiebotDialog.CybotEdge {
    box-shadow: 0 0 1.25rem rgba(0, 0, 0, .4) !important
}
#CookieDeclarationChangeConsentChange, #CookieDeclarationChangeConsentWithdraw {
    display: inline-block;
    border: 0;
    border-radius: .3125rem;
    font-weight: 600;
    color: #fff;
    cursor: pointer;
    text-shadow: 1px 1px 1px #444;
    -webkit-appearance: none;
    vertical-align: top;
    white-space: nowrap;
    transition: opacity .2s ease-in-out;
    background-color: #048cba;
    border-top: 1px solid #03698b;
    width: auto;
    padding: 0 1.25rem .1875rem;
    flex: 1 0 auto;
    font-size: 1.0625rem;
    line-height: 2.3125rem;
    height: auto;
    margin: 0 10px 10px 0
}
#CookieDeclarationChangeConsentChange:hover, #CookieDeclarationChangeConsentWithdraw:hover {
    opacity: .9;
    text-decoration: none
}
#CookieDeclarationUserStatusLabelWithdraw {
    font-size: 0;
    line-height: 0;
    vertical-align: top
}
body.has-cookiebar #CybotCookiebotDialogNav {
    display: none
}
body.has-cookiebar #CybotCookiebotDialogBodyContent, body.has-cookiebar #CybotCookiebotDialogDetailBody #CybotCookiebotDialogDetailBodyContentCookieContainerTypes>li:first-child {
    padding-top: 30px !important
}
@media screen and (max-width: 600px) {
    #CybotCookiebotDialogBodyContent {
        padding-bottom: 0 !important
    }
}
@media screen and (max-width: 399px) {
    #CookieDeclarationChangeConsentChange, #CookieDeclarationUserStatusLabelWithdraw, #CookieDeclarationChangeConsentWithdraw {
        text-align: center;
        width: 100%
    }
    #CybotCookiebotDialogBodyContent {
        padding-top: 0 !important
    }
}
@media(max-width: 820px) {
    .CookieDeclarationTable colgroup {
        display: none
    }
}
@media screen and (max-width: 1279px) {
    #CybotCookiebotDialog.CybotEdge {
        border: 1px solid #ccc
    }
    #CybotCookiebotDialog.CybotCookiebotDialogActive~.wrapper {
        pointer-events: none
    }
    #CybotCookiebotDialog.CybotCookiebotDialogActive~.wrapper:after {
        display: block;
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, .45);
        z-index: 200
    }
}
@media screen and (max-width: 599px), screen and (min-width: 1280px) {
    #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton:not(:first-of-type) {
        margin-bottom: 1.5em !important
    }
}
@media screen and (min-width: 1280px) {
    #CybotCookiebotDialog.CybotEdge {
        border-top: 1px solid #ccc;
        border-radius: 0;
        box-shadow: 0 0 .9375rem rgba(0, 0, 0, .18) !important
    }
    #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogHeader {
        width: 70px !important
    }
    #CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyContent {
        height: auto;
        padding: 0 40px 0 0 !important
    }
    #CybotCookiebotDialog.CybotEdge .CybotCookiebotDialogBodyBottomWrapper {
        margin: 0 0 1.5em !important
    }
    #CybotCookiebotDialog.CybotCookiebotDialogActive[data-template=popup]~.wrapper:after {
        display: block;
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, .45);
        z-index: 200
    }
}
.costbreakdown {
    margin-bottom: 1.25rem;
    font-size: .875rem;
    line-height: 1.25rem
}
.tour__content .costbreakdown, .costindication .costbreakdown {
    font-size: .9375rem;
    line-height: 1.5rem
}
.costindication .costbreakdown {
    max-width: 28.125rem
}
.costbreakdown.reload {
    opacity: .5;
    position: relative
}
.costbreakdown.reload:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    margin-left: -15px;
    border: 4px solid #048cba;
    border-right-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}
.costbreakdown, .costbreakdown td {
    width: 100%
}
.costbreakdown__row {
    line-height: 1.5rem
}
.tour__content .costbreakdown__row {
    line-height: 1.75rem
}
.costbreakdown__amount {
    text-align: right;
    width: 0;
    white-space: nowrap;
    padding-left: 10px
}
.costbreakdown__link {
    display: inline-block;
    color: #666;
    text-decoration: underline;
    margin-top: .75rem
}
.tour__content .costbreakdown__link {
    color: #0378a0;
    font-size: .8125rem
}
.costbreakdown__link:hover {
    text-decoration: none
}
.overlay .costbreakdown__link {
    padding-right: .9375rem;
    position: relative
}
.overlay .costbreakdown__link:after {
    position: absolute;
    right: 0;
    top: .375rem;
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-left: 5px solid rgba(0, 0, 0, 0);
    border-right: 5px solid rgba(0, 0, 0, 0);
    border-top: 5px solid #666;
    border-bottom: 0
}
.overlay .costbreakdown__link.open:after {
    border-left: 5px solid rgba(0, 0, 0, 0);
    border-right: 5px solid rgba(0, 0, 0, 0);
    border-bottom: 5px solid #666;
    border-top: 0
}
.costbreakdown__link--sec {
    color: #0378a0
}
.costbreakdown__line {
    border: 0;
    height: 1px;
    margin: .25rem 0;
    background: #d9d9d9
}
.costbreakdown-prefs {
    font-size: 0;
    margin-bottom: .9375rem
}
.costbreakdown-prefs span, .costbreakdown-prefs a {
    font-size: .9375rem
}
.costbreakdown-prefs a i {
    position: relative;
    top: .1875rem;
    left: -0.0625rem;
    margin-right: .1875rem;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .75
}
.costbreakdown-prefs a span {
    color: #444;
    text-decoration: underline
}
.costbreakdown-prefs a:hover, .costbreakdown-prefs a:hover span {
    text-decoration: none
}
@media(min-width: 744px) {
    .tour__content__block .costbreakdown {
        max-width: 23.75rem
    }
    .costindication .costbreakdown {
        margin-left: 1.25rem
    }
    .costbreakdown--wide-t {
        width: 100%;
        min-width: 0
    }
}
.countryselector {
    max-width: 73.75rem;
    margin: 0 auto
}
.countryselector ul {
    margin-bottom: 1.25rem;
    margin-top: 1.25rem
}
.countryselector ul:after {
    content: "";
    display: table;
    clear: both
}
.countryselector ul li {
    line-height: 2.5rem
}
.countryselector ul li a {
    line-height: 2.25rem;
    cursor: pointer;
    display: inline-block;
    height: 2.375rem;
    position: relative;
    top: -0.125rem;
    left: -0.5625rem;
    padding: 0 .625rem
}
.countryselector ul li.current a {
    background-color: #e2e1e1;
    color: #444;
    box-shadow: inset 0 0 .3125rem rgba(0, 0, 0, .18)
}
.countryselector ul li.current a:hover {
    text-decoration: none
}
.country-with-flag {
    display: inline-block;
    vertical-align: top;
    margin-right: 1.25rem
}
.country-with-flag.unavailable {
    opacity: .55;
    filter: grayscale(1) !important
}
.country-with-flag img, .country-with-flag__flag {
    width: 1rem;
    height: .6875rem;
    margin-right: .125rem;
    position: relative;
    opacity: .7;
    overflow: visible
}
svg.country-with-flag__flag {
    outline: 1px solid rgba(68, 68, 68, .25);
    outline-offset: -1px
}
.country-with-flag.small, .country-with-flag--small {
    font-size: .75rem;
    line-height: 1.125rem;
    margin-right: 1rem
}
.country-with-flag.small img, .country-with-flag__flag--small {
    height: .625rem;
    top: 0;
    opacity: .55
}
.country-with-flag__flag--big {
    width: 1.375rem;
    height: .9375rem;
    position: relative;
    top: 0;
    float: none;
    margin-left: 0;
    opacity: 1
}
.country-with-flag__flag-hidden {
    width: 1rem;
    height: .6875rem;
    margin-right: .125rem;
    position: relative;
    opacity: 0;
    pointer-events: none
}
@media(min-width: 744px) {
    .country-with-flag__flag--big {
        width: 1.875rem;
        height: 1.0625rem;
        top: .125rem;
        margin-right: 0
    }
}
@media(min-width: 970px) {
    .country-with-flag__flag--big {
        width: 2.125rem;
        height: 1.1875rem;
        top: 0
    }
}
.currencyselector {
    max-width: 73.75rem;
    margin: 0 auto
}
.currencyselector ul {
    margin-bottom: 1.25rem
}
.currencyselector ul:after {
    content: "";
    display: table;
    clear: both
}
.currencyselector ul li {
    line-height: 2.5rem
}
.currencyselector ul li a {
    line-height: 2.25rem;
    cursor: pointer;
    display: inline-block;
    height: 2.375rem;
    position: relative;
    top: -0.125rem;
    left: -0.5625rem;
    width: 7.625rem
}
.currencyselector ul li a img {
    width: 2.375rem;
    height: 1.3125rem;
    margin-right: .625rem;
    position: relative;
    top: .3125rem;
    margin-left: .5625rem
}
.currencyselector ul li.current a {
    background-color: #e2e1e1;
    color: #444;
    box-shadow: inset 0 0 .3125rem rgba(0, 0, 0, .18)
}
.currencyselector ul li.current a:hover {
    text-decoration: none
}
.currencyselector__header {
    padding: .625rem 0;
    background-color: #fff;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, .18);
    margin-bottom: 1rem
}
.currencyselector__continentheader {
    font-size: 1.125rem;
    line-height: 2.25rem;
    white-space: nowrap
}
.currencyselector .row>.col {
    padding-left: 1.25rem
}
.currencyselector__footer a.btn {
    margin-top: 1.25rem;
    margin-bottom: 1.875rem;
    font-weight: normal
}
.directory-content {
    background: #fff;
    padding: 1.875rem 0 1.25rem
}
.directory-content .box {
    border-top: 1px solid rgba(0, 0, 0, .18);
    border-bottom: 1px solid rgba(0, 0, 0, .18);
    margin-top: .875rem;
    margin-bottom: 1.5rem
}
.directory-content .expert {
    padding: 1.5625rem 0 2.1875rem;
    color: #666;
    font-size: .8125rem;
    line-height: 1.25rem;
    display: grid;
    grid-column-gap: .625rem;
    grid-template-columns: auto 1fr;
    align-items: start
}
.directory-content .expert h3, .directory-content .expert h5 {
    margin: .125rem 0 .375rem 0
}
.directory-content .expert h3 {
    display: inline-block;
    color: #444;
    font-size: 1.125rem
}
.directory-content .expert h5 {
    font-weight: normal;
    font-size: .9375rem;
    margin-bottom: 0;
    display: block
}
.directory-content .expert a {
    display: contents
}
.directory-content .expert__photo {
    margin-bottom: 1.125rem;
    top: .125rem;
    grid-column-start: 1;
    grid-row: 1/span 20
}
.directory-content h1 {
    font-size: 1.75rem;
    line-height: 1.875rem
}
.directory-content .questions {
    padding-left: 3.4375rem;
    position: relative
}
.directory-content .questions h2 {
    font-size: 1.125rem;
    line-height: 1.25rem;
    margin-bottom: .625rem
}
.directory-content .questions p {
    margin-bottom: .625rem;
    white-space: pre-wrap
}
.directory-content .questions:before, .directory-content .questions .line {
    content: "";
    border-left: 1px dotted #b3b3b3;
    position: absolute;
    top: 1.25rem;
    left: 1.0625rem;
    width: 0;
    height: 100%;
    opacity: .85;
    z-index: 1
}
.directory-content .questions .line {
    border-left: 1px solid #006400;
    height: 0;
    opacity: 1;
    z-index: 2
}
.directory-content .questions:after {
    content: "";
    border-left: 1px solid #fff;
    position: absolute;
    bottom: -4.0625rem;
    left: 1.375rem;
    width: 0;
    height: 3.125rem;
    z-index: 3
}
.directory-content .questions span {
    display: block;
    font-family: "Gentium Basic", serif;
    color: #444;
    width: 2.125rem;
    height: 2.125rem;
    border-radius: 50%;
    position: absolute;
    top: -0.25rem;
    left: -3.4375rem;
    background-color: #fff;
    box-shadow: 0px 0px 8px #b3b3b3;
    font-size: 1.375rem;
    text-align: center;
    line-height: 2.125rem;
    z-index: 2
}
.directory-content .questions span.active {
    background-color: #006400;
    color: #fff
}
.directory-content .questions .question {
    margin-bottom: 3.4375rem;
    position: relative
}
.directory-content .questions .question:last-child:before {
    content: "";
    position: absolute;
    top: 1.5625rem;
    left: -2.4375rem;
    width: .1875rem;
    background-color: #fff;
    height: 100%;
    z-index: 2
}
@media(max-width: 743px) {
    .directory-content .expert__photo a {
        display: inline-block;
        margin-top: .625rem
    }
    .directory-content .expert__photo__photo span, .directory-content .expert__photo__photo i {
        transform: scale(0.8)
    }
}
.directory-reviews {
    border-top: 1px solid #d9d9d9;
    padding-top: 1.875rem;
    padding-bottom: 3.4375rem;
    background-color: #fbfbfb
}
.directory-reviews h2 {
    font-size: 1.75rem;
    line-height: 1.875rem;
    display: inline;
    margin-right: .625rem
}
.directory-reviews h2+.reviews {
    display: block;
    position: relative;
    top: .5rem;
    margin-bottom: .625rem
}
.directory-reviews h2+.reviews strong {
    display: inline-block;
    border-radius: .3125rem;
    background-color: #d9d9d9;
    color: #444;
    line-height: 1.25rem;
    font-size: .875rem;
    font-weight: 600;
    padding: .1875rem .4375rem;
    margin-left: .375rem;
    position: relative;
    top: -0.0625rem
}
.directory-reviews .review--snippet {
    margin: 1.875rem 0 .625rem
}
.directory-reviews .review--snippet .review__person p {
    z-index: 3;
    position: relative
}
.directory-reviews .review__body {
    border-color: #d9d9d9;
    background-color: #fff
}
.directory-reviews .review__body:before, .directory-reviews .review__body:after {
    background-color: #fff;
    border-color: #d9d9d9
}
.directory-reviews .btn {
    margin-top: 1.875rem
}
.drawer {
    position: fixed;
    z-index: 101;
    top: 0;
    bottom: 0;
    right: -100%;
    width: 100%;
    padding: .625rem;
    background: #fff;
    transform: none;
    transition: transform .3s ease;
    overflow: auto
}
.drawer-overlay {
    font-size: 0;
    border: 0;
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    opacity: 0;
    pointer-events: none
}
.drawer__close {
    font-size: 0;
    border: 0;
    display: block;
    margin-left: auto;
    background: rgba(0, 0, 0, 0);
    cursor: pointer;
    outline: none
}
.drawer__close i {
    width: 1.5625rem;
    height: 1.5625rem
}
.drawer__image {
    max-width: 100%
}
body[data-showdrawer] {
    overflow: hidden
}
body[data-showdrawer] .drawer-overlay {
    opacity: 1;
    pointer-events: all
}
body[data-showdrawer=form] .drawer[data-drawerid=form] {
    transform: translateX(-100%)
}
body[data-showdrawer=example] .drawer[data-drawerid=example] {
    transform: translateX(-100%)
}
@media(min-width: 744px) {
    .drawer {
        right: -42.5rem;
        width: 42.5rem;
        padding: 2.5rem
    }
}
.enquiryform {
    display: none;
    padding-top: 1.25rem
}
.enquiryform.initialized {
    display: block
}
.enquiryform textarea, .enquiryform input {
    font-size: 1rem
}
.enquiryform__head {
    border-bottom: 1px solid #ddd;
    background-color: #fff;
    padding-top: .625rem
}
.enquiryform__header {
    position: relative;
    background-color: #fff;
    padding: .625rem .625rem .625rem 7.8125rem;
    margin-bottom: .625rem;
    min-height: 4.6875rem
}
.enquiryform__header img {
    width: 6rem;
    height: 3.3125rem;
    position: absolute;
    left: .625rem;
    outline: 1px solid #ccc;
    outline-offset: -1px;
    padding: .3125rem
}
.enquiryform__header h5 {
    font-weight: bold;
    font-size: 1.125rem;
    line-height: 1.375rem
}
.enquiryform__header h5 span {
    font-weight: normal
}
.enquiryform__header .price {
    font-size: 1rem
}
.enquiryform__header .price b {
    font-size: 1.125rem
}
.enquiryform__notes {
    clear: both;
    background-color: #fff;
    padding: 0 .625rem 0
}
.enquiryform__notes div.messagebox {
    margin-bottom: 10px
}
.enquiryform__notes div.messagebox:before, .enquiryform__notes div.messagebox:after {
    display: none
}
.enquiryform__notes div.messagebox ul.list--icon li b {
    font-style: italic
}
.enquiryform__notes__extra {
    margin: .625rem -0.625rem 0;
    background-color: #67a856;
    color: #fff;
    padding: .25rem .625rem .375rem;
    font-size: .875rem
}
.enquiryform__notes__extra a {
    color: #fff
}
.enquiryform__notes__extra b {
    font-style: italic
}
.enquiryform__notes__extra.red {
    background-color: #006400
}
.enquiryform__footer div#email-address-check {
    position: relative;
    display: none;
    opacity: 0;
    margin-bottom: 1.875rem;
    top: -0.625rem
}
.enquiryform__footer div#email-address-check h3 {
    margin-bottom: .625rem
}
.enquiryform__footer div#email-address-check #email-check {
    font-size: 1.25rem;
    color: #128a12;
    word-break: break-all
}
.enquiryform__footer div#email-address-check #email-check #edit-email {
    font-size: .8125rem
}
.enquiryform__footer div#enquirysubmit-container a#enquirysubmit {
    margin-left: .0625rem;
    margin-top: 0;
    margin-bottom: .625rem
}
.enquiryform__footer div#enquirysubmit-container #send-info {
    margin-left: .0625rem;
    margin-top: .3125rem
}
.enquiryform__verification {
    clear: both;
    padding: 1.5625rem 0 1.875rem
}
.enquiryform__verification>fieldset {
    margin: 0
}
.enquiryform__verification>fieldset>div {
    max-width: 45rem
}
.enquiryform__verification>fieldset.centered {
    max-width: 31.25rem;
    margin: 1.875rem auto 3.125rem
}
.enquiryform__verification>fieldset.explanation {
    display: none
}
.enquiryform__verification>fieldset>div#email_verification_code {
    text-align: left;
    width: 18.125rem
}
.enquiryform__verification>fieldset>div#email_verification_code form {
    text-align: center
}
.enquiryform__verification>fieldset>div#email_verification_code input[name=email_verification_code] {
    text-align: center
}
.enquiryform__verification>fieldset #verify-email {
    margin-top: .9375rem;
    margin-left: 0
}
.enquiryform__verification div.messagebox {
    text-align: center
}
.enquiryform__verification div.messagebox--greenfull, .enquiryform__verification div.messagebox--redfull {
    top: -30px;
    left: -20px;
    text-align: left
}
.enquiryform__verification div.messagebox--greenfull+.intro.message {
    margin-top: -0.625rem
}
.enquiryform__verification div.messagebox__title {
    margin-bottom: 0
}
@media(max-width: 743px) {
    .enquiryform__verification div.messagebox--greenfull, .enquiryform__verification div.messagebox--redfull {
        top: -40px
    }
}
.enquiryform--new .enquiryform__verification div.messagebox {
    font-family: "Gentium Basic", serif;
    text-align: left
}
.enquiryform--new .enquiryform__verification div.messagebox.messagebox--greenfull {
    font-family: "Noto Sans", "Arial", sans-serif;
    padding: 1.875rem 1.5625rem;
    left: -1.5625rem;
    top: -1.25rem
}
.enquiryform--new .enquiryform__verification div.messagebox.messagebox--center {
    text-align: center;
    font-size: 0
}
.enquiryform--new .enquiryform__verification div.messagebox.messagebox--center .sbi {
    position: relative;
    vertical-align: middle;
    left: 0;
    top: 0;
    margin: -0.5625rem 1.125rem -0.5625rem 0
}
.enquiryform--new .enquiryform__verification div.messagebox.messagebox--center b {
    display: inline-block;
    vertical-align: middle;
    padding-left: 0;
    font-size: 1.25rem
}
.enquiryform--new .enquiryform__verification div.messagebox.messagebox--orange {
    max-width: none
}
.enquiryform--new .enquiryform__verification div.messagebox .messagebox__title--l {
    font-size: 1.75rem
}
.enquiryform--new .enquiryform__verification div.intro {
    max-width: none !important
}
.enquiryform--new .enquiryform__verification .enquiryform__verification-form {
    margin: 0
}
.enquiryform__verification div.intro {
    margin-top: 2.5rem;
    text-align: center
}
.enquiryform--new .enquiryform__verification div.intro {
    margin-top: 1.25rem;
    text-align: left
}
.enquiryform__verification.enquiryform__verification-sent div.intro {
    text-align: center
}
.enquiryform__verification .enquiryform--new .messagebox--greenfull+div.intro {
    text-align: center
}
.enquiryform__verification-form {
    margin: 0 0 0 1.40625rem
}
.enquiryform__verification-resend {
    position: relative;
    padding: 0;
    margin-right: -1.25rem
}
.enquiryform__verification-resend[data-state=complete] {
    color: #2a7018
}
.enquiryform__verification-resend[data-state=complete]:after {
    content: "";
    display: inline-block;
    background: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg");
    width: .875rem;
    height: .75rem;
    margin-left: .3125rem
}
.enquiryform__verification-number {
    font-size: 1.375rem;
    width: 7.75rem;
    height: 2.5rem;
    border: 0 !important;
    background: url("https://cfstatic.safaribookings.com/img/svg/4digitinput.svg") left no-repeat rgba(0, 0, 0, 0);
    padding: .4375rem 0 .4375rem .5rem !important;
    text-indent: .4375rem !important;
    line-height: 1.625rem;
    letter-spacing: .75rem
}
.enquiryform__verification-number:focus {
    box-shadow: none !important
}
.enquiryform__verification-number.error {
    border: 0 !important;
    background-image: url("https://cfstatic.safaribookings.com/img/svg/4digitinput-error.svg")
}
.enquiryform__verification-verify.btn--nexttoinput {
    height: 2.5rem !important
}
.enquiryform__verification .verify-explain #cant-find-email {
    display: inline-block;
    margin-top: 1.25rem
}
.enquiryform__verification #cant-find-email-explanation {
    display: none;
    max-width: 43.75rem;
    padding: 3.125rem 0 0;
    border-top: 1px solid #d9d9d9
}
.enquiryform__verification #cant-find-email-explanation div.text-box {
    margin-bottom: 3.125rem
}
.enquiryform__verification #cant-find-email-explanation .steps-container>div.step>span {
    margin-top: .625rem
}
.enquiryform__verification #cant-find-email-explanation .steps-container>div.step>span.nr {
    float: left;
    font-weight: bold;
    color: #666;
    padding-right: .625rem
}
.enquiryform__verification #cant-find-email-explanation .steps-container>div.step>span.step {
    float: left;
    width: 80%
}
.enquiryform__verification #cant-find-email-explanation .resend-busy {
    display: none;
    padding-left: 1.25rem;
    background: url(https://cfstatic.safaribookings.com/images/load.gif) no-repeat 0;
    margin-top: .3125rem
}
.enquiryform__verification #cant-find-email-explanation .resend-ok {
    display: none;
    padding-left: 1.25rem;
    background: url(https://cfstatic.safaribookings.com/images/accept.png) no-repeat 0 4px;
    color: #135900;
    margin-top: .3125rem
}
.enquiryform fieldset>div #travelers-short, .enquiryform fieldset>div #date-short {
    margin-top: .625rem
}
.enquiryform fieldset>div .fixeddates {
    margin-top: .625rem;
    font-size: .875rem
}
.enquiryform fieldset>div .fixeddates div.row {
    font-weight: 600;
    background-color: #f8f8f8;
    border: 1px solid #ccc
}
.enquiryform fieldset>div .fixeddates div.row div:nth-child(1) {
    padding-left: 3.1875rem
}
.enquiryform fieldset>div .fixeddates div.row.pagination {
    background-color: #f8f8f8;
    border-top: 0;
    padding: .625rem 0
}
.enquiryform fieldset>div .fixeddates div.row.pagination div:nth-child(1), .enquiryform fieldset>div .fixeddates div.row.pagination div:nth-child(2) {
    padding-left: .625rem
}
.enquiryform fieldset>div .fixeddates div.row.pagination div:nth-child(1).select--holder, .enquiryform fieldset>div .fixeddates div.row.pagination div:nth-child(2).select--holder {
    padding-left: 0;
    margin: 0 auto;
    width: 100%;
    margin-top: .375rem
}
.enquiryform fieldset>div .fixeddates div.row.pagination .btn {
    margin-top: .3125rem
}
.enquiryform fieldset>div .fixeddates div.row.fixeddates-note {
    padding: .1875rem 0;
    border-top: 0;
    background-color: #f8f8f8
}
.enquiryform fieldset>div .fixeddates div.row.fixeddates-note div {
    padding: .5rem .9375rem;
    font-size: .8125rem;
    line-height: 1.0625rem;
    font-weight: normal
}
.enquiryform fieldset>div .fixeddates label.row {
    background-color: #fff;
    border: 1px solid #d9d9d9;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-top: 0;
    cursor: pointer;
    transition: all .2s ease-in-out
}
.enquiryform fieldset>div .fixeddates label.row:nth-child(odd) {
    background-color: #edf5f8
}
.enquiryform fieldset>div .fixeddates label.row div:nth-child(1), .enquiryform fieldset>div .fixeddates label.row div:nth-child(2) {
    color: #999
}
.enquiryform fieldset>div .fixeddates label.row div:nth-child(1) span, .enquiryform fieldset>div .fixeddates label.row div:nth-child(2) span {
    color: #444
}
.enquiryform fieldset>div .fixeddates label.row div:nth-child(1) {
    padding-left: 3.1875rem
}
.enquiryform fieldset>div .fixeddates label.row div:nth-child(1) input {
    margin-left: .9375rem;
    margin-top: .5rem;
    position: absolute
}
.enquiryform fieldset>div .fixeddates label.row:not(.inactive):hover {
    background-color: #048cba
}
.enquiryform fieldset>div .fixeddates label.row:not(.inactive):hover div {
    color: #fff !important;
    font-weight: 600
}
.enquiryform fieldset>div .fixeddates label.row:not(.inactive):hover div span {
    color: #fff !important
}
.enquiryform fieldset>div .fixeddates label.row:not(.inactive).checked {
    background-color: #41922c
}
.enquiryform fieldset>div .fixeddates label.row:not(.inactive).checked div {
    color: #fff !important;
    font-weight: 600
}
.enquiryform fieldset>div .fixeddates label.row:not(.inactive).checked div span {
    color: #fff !important
}
.enquiryform fieldset>div .fixeddates label.row.inactive {
    cursor: default
}
.enquiryform fieldset>div .fixeddates label.row.inactive .col:nth-child(1), .enquiryform fieldset>div .fixeddates label.row.inactive .col:nth-child(2) {
    opacity: .3
}
.enquiryform fieldset>div .fixeddates .row {
    margin: 0;
    line-height: 1.125rem;
    padding: 1rem 0
}
.enquiryform fieldset>div .fixeddates .row div span {
    display: inline-block;
    text-align: right;
    margin-right: .125rem
}
.enquiryform fieldset>div .fixeddates .row div span.personrate {
    width: auto;
    margin-right: 0;
    display: none
}
.enquiryform fieldset>div .fixeddates .row div span.limited {
    width: auto
}
.enquiryform fieldset>div .fixeddates .row div:nth-child(3) {
    text-align: right;
    position: relative
}
.enquiryform fieldset>div .fixeddates .row.uncertain .personrate {
    position: relative;
    top: -0.5rem
}
.enquiryform fieldset>div .fixeddates .row.uncertain .sb-red {
    display: block;
    text-align: left;
    font-weight: normal;
    white-space: nowrap
}
.enquiryform fieldset>div .numberinput_enhanced+span {
    display: block
}
.enquiryform fieldset>div .enquiryform-descriptionnote-adults, .enquiryform fieldset>div .enquiryform-descriptionnote-children, .enquiryform fieldset>div .enquiryform-descriptionnote-children-7, .enquiryform fieldset>div .enquiryform-descriptionnote-duration {
    display: none
}
.enquiryform fieldset>div .list--icon-descriptionnotes {
    margin-top: .25rem;
    margin-bottom: .3125rem
}
.enquiryform fieldset>div .list--icon-sendinfo li:before {
    top: 0
}
.enquiryform fieldset>div .country_autocomplete {
    margin-left: 0;
    width: 100%
}
.enquiryform fieldset #interest_countries:after {
    content: "";
    display: table;
    clear: both
}
.enquiryform fieldset #interest_countries p {
    margin-bottom: .625rem;
    display: block
}
.enquiryform fieldset #interest_countries input[type=checkbox]:checked+img+span {
    font-weight: bold;
    color: #2a7018
}
.enquiryform fieldset #interest_countries input[type=checkbox]:checked {
    border: .0625rem solid #41922c
}
.enquiryform fieldset #interest_countries img {
    opacity: .8
}
.enquiryform fieldset #interest_countries span {
    display: inline-block;
    margin-left: .625rem
}
@media(min-width: 430px) {
    .enquiryform fieldset #interest_countries div {
        width: 50%;
        float: left
    }
}
.enquiryform fieldset.personal input[type=tel]+span.txt--xsmall, .enquiryform fieldset.personal input[type=tel]+.error-balloon-container+span.txt--xsmall {
    font-size: .6875rem;
    display: inline-block;
    margin-top: .1875rem;
    line-height: .875rem
}
.enquiryform fieldset .duration label {
    display: inline-block;
    height: 2.125rem;
    width: 2.125rem;
    float: left;
    position: relative;
    cursor: pointer;
    clear: none;
    margin: 0 0 .625rem;
    background-color: #f2fafc
}
.enquiryform fieldset .duration label input {
    width: 100%;
    height: 100%;
    border-radius: 0px !important;
    top: 0;
    left: 0;
    background-color: #f2fafc;
    border-color: #d9d9d9;
    border: 0 !important;
    z-index: 0;
    -webkit-appearance: none;
    -moz-appearance: none
}
.enquiryform fieldset .duration label input:before {
    border-radius: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}
.enquiryform fieldset .duration label span {
    position: absolute;
    z-index: 1;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 2rem;
    color: #0378a0;
    font-size: .8125rem;
    border: 1px solid #d9d9d9
}
.enquiryform fieldset .duration label:hover {
    border: 0;
    background-color: #0378a0
}
.enquiryform fieldset .duration label input:checked+span, .enquiryform fieldset .duration label input:hover+span, .enquiryform fieldset .duration label:hover span {
    color: #fff
}
.enquiryform fieldset .duration label input:checked+span {
    background-color: #41922c
}
.enquiryform fieldset .duration label.blocked {
    background-color: #fff;
    cursor: default;
    overflow: hidden
}
.enquiryform fieldset .duration label.blocked span {
    color: #ccc
}
.enquiryform fieldset .duration label.blocked:before {
    content: "";
    display: block;
    left: 50%;
    top: 50%;
    width: 200%;
    height: 0;
    border-top: .0625rem solid #006400;
    opacity: .5;
    position: absolute;
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(-30deg);
    transform: translateX(-50%) translateY(-50%) rotate(-30deg)
}
.enquiryform fieldset .duration label+label span {
    border-left: 0
}
.enquiryform fieldset .duration label+label input {
    border-left: none
}
.enquiryform fieldset .duration div {
    line-height: 1.875rem;
    margin-left: .9375rem;
    display: inline-block
}
.enquiryform fieldset .tourtypes h4 {
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    position: relative
}
.enquiryform fieldset .tourtypes label {
    margin: .3125rem 0 .3125rem .625rem;
    padding: .125rem 0 .125rem 1.875rem;
    cursor: pointer;
    position: relative
}
.enquiryform fieldset .tourtypes label input {
    position: absolute;
    top: .1875rem;
    left: 0
}
.enquiryform fieldset .tourtypes label span {
    position: relative
}
.enquiryform fieldset .tourtypes label span em {
    display: block;
    color: #999;
    margin-top: .125rem
}
.enquiryform fieldset .tourtypes input:checked+span {
    color: #2a7018;
    font-weight: bold
}
.enquiryform fieldset .tourtypes input:checked+span em {
    color: #444;
    font-weight: bold
}
.enquiryform fieldset .costindication {
    position: relative;
    margin-bottom: .625rem
}
.enquiryform fieldset .costindication .price {
    font-size: 1rem
}
.enquiryform fieldset .costindication .price b {
    font-size: 1.125rem
}
.enquiryform fieldset .costindication h5 {
    font-size: .9375rem;
    font-weight: bold;
    color: #666;
    margin: 1.25rem 0 0 0
}
.enquiryform fieldset .costindication .list--icon {
    margin-top: 1.25rem
}
.enquiryform fieldset .costindication.reload>div, .enquiryform fieldset .costindication.reload>.costbreakdown, .enquiryform fieldset .costindication.reload>h5 {
    opacity: .5
}
.enquiryform fieldset .costindication.reload:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    margin-left: -15px;
    border: 4px solid #048cba;
    border-right-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}
@media(max-width: 743px) {
    .enquiryform .calendarstepped__inner .col.col-12 {
        padding-left: 0;
        padding-right: 0;
        margin-bottom: .625rem
    }
    .enquiryform .calendarstepped__inner .calendar__inner__year ul li.selected:before {
        display: none
    }
}
.enquiryform .calendar.rendered:not(.stepped) .checkbox-lbl {
    display: inline-block
}
.enquiryform .messagebox--note {
    margin-top: 1.25rem
}
.enquiryform .messagebox--note .harmonica-block.fixed {
    padding: 0;
    text-align: left
}
.enquiryform .messagebox--note:before, .enquiryform .messagebox--note:after {
    left: 15.625rem
}
.enquiryform .messagebox--note:after {
    left: 15.5rem
}
.enquiryform .messagebox--note p {
    padding-bottom: 0 !important
}
div.enquiry-count-warning {
    padding: .625rem .625rem 1.875rem
}
div.enquiry-count-warning h2 {
    font-size: 1.25rem;
    margin-top: .625rem;
    margin-bottom: .625rem;
    display: block
}
div.enquiry-count-warning p {
    margin-bottom: .625rem
}
.enquiryform--new .shadowed-box, .enquiryform--new .card {
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .18);
    background-color: #fff;
    margin-bottom: 1.25rem
}
.enquiryform--new div#email_verification_code input[type=text] {
    float: left;
    font-size: 1.375rem
}
.enquiryform--new .entercode {
    width: 37.5rem;
    margin: 0 0 0 1.3125rem;
    position: relative
}
.enquiryform--new .entercode.with-line:before {
    content: "";
    display: block;
    height: 0;
    width: 47.5rem;
    border-top: 1px solid #d9d9d9;
    position: absolute;
    top: 1.0625rem;
    left: -8.125rem
}
.enquiryform--new #cant-find-email-explanation {
    margin-top: 2.5rem;
    padding-top: 2.5rem !important
}
.enquiryform--new #email_verification_code-error {
    margin-left: 52px;
    position: relative;
    top: -15px
}
.enquiryform--new .other_tours {
    margin-top: 6.25rem
}
.enquiryform--new fieldset .costindication {
    margin-bottom: 0
}
.enquiryform--new fieldset .costindication .expl {
    display: block;
    font-size: .8125rem;
    line-height: 1rem;
    padding-left: .5625rem;
    position: relative;
    margin: .625rem 0
}
.enquiryform--new fieldset .costindication .expl:before {
    content: "*";
    font-size: .8125rem;
    position: absolute;
    top: .0625rem;
    left: 0
}
.enquiryform--new div#email-address-check {
    top: .9375rem
}
.enquiryform--new .dateblock.dateblock--nodate {
    padding-top: .9375rem !important
}
.enquiryform--new .dateblock.dateblock--nodate .fieldsettitle, .enquiryform--new .dateblock.dateblock--nodate .startdate, .enquiryform--new .dateblock.dateblock--nodate .arrow, .enquiryform--new .dateblock.dateblock--nodate .enddate {
    display: none
}
.enquiryform--new .dateblock.dateblock--nodate #calendar_reset_message {
    top: 0;
    margin-top: 0
}
.enquiryform--new .dateblock.dateblock--nodate #date {
    margin-top: .625rem
}
.enquiryform--new #date-error {
    top: -1.5625rem;
    font-size: .875rem
}
.enquiryform--new #message {
    margin-bottom: 0
}
.enquiryform--new #message+#message-error {
    top: -0.3125rem
}
.enquiryform--new #message+#message-error+label {
    margin-top: 0
}
.enquiryform__progress {
    position: relative;
    margin-bottom: 1.875rem;
    white-space: nowrap
}
.enquiryform__progress li {
    display: inline-block;
    width: 33%
}
.enquiryform__progress li div, .enquiryform__progress li a {
    display: inline-block;
    position: relative;
    z-index: 2;
    background-color: #f2f2f2;
    padding-right: .625rem;
    color: #666;
    text-decoration: none
}
.enquiryform__progress li span {
    width: 1.5rem;
    height: 1.5rem;
    display: block;
    float: left;
    background-color: #b3b3b3;
    text-align: center;
    line-height: 1.375rem;
    font-weight: bold;
    font-size: .8125rem;
    border-radius: 50%;
    color: #fff;
    position: relative;
    margin-right: .625rem
}
.enquiryform__progress li span svg {
    transform: scale(0.85);
    position: absolute;
    top: .375rem;
    left: .3125rem
}
.enquiryform__progress li.done div, .enquiryform__progress li.done a, .enquiryform__progress li.active div, .enquiryform__progress li.active a {
    color: #2a7018
}
.enquiryform__progress li.done span, .enquiryform__progress li.active span {
    background-color: #2a7018
}
.enquiryform__progress li.active {
    font-weight: bold
}
.enquiryform__progress li+li div {
    padding-left: .625rem
}
.enquiryform__progress:after {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-top: 1px solid #b3b3b3;
    position: absolute;
    top: .75rem;
    left: 0;
    z-index: 1
}
.enquiryform legend {
    margin-bottom: .9375rem;
    position: relative;
    width: 100%
}
.enquiryform legend:before {
    content: "";
    width: 94%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: 0;
    top: .75rem
}
.enquiryform legend:before {
    z-index: 1
}
.enquiryform legend span {
    font-weight: bold;
    background-color: #f2f2f2;
    padding-right: .9375rem;
    position: relative;
    z-index: 2;
    font-size: 1.0625rem;
    max-width: none;
    display: inline-block
}
.enquiryform legend span a.txt--small {
    font-weight: normal;
    margin-left: .625rem
}
.enquiryform legend span .txt--small {
    font-weight: normal;
    margin-left: .625rem
}
.enquiryform--new legend span {
    background-color: #fff
}
.enquiryform__form {
    padding: 1.25rem 1.25rem
}
.enquiryform__form h1 {
    font-size: 2.125rem
}
.enquiryform__form h4 {
    color: #ab6701;
    font-weight: normal
}
.inputform .enquiryform__form fieldset>div {
    max-width: none
}
.enquiryform__form fieldset {
    padding: 0 !important;
    max-width: 41.875rem;
    margin-bottom: 1.875rem
}
.inputform .enquiryform__form fieldset>div textarea, .inputform .enquiryform__form fieldset>div input[type=text]:not(.enhance):not(.width-full), .inputform .enquiryform__form fieldset>div input[type=email], .inputform .enquiryform__form fieldset>div input[type=tel] {
    min-width: 28.75rem !important;
    width: auto;
    float: right
}
.inputform .enquiryform__form fieldset>div textarea {
    margin-bottom: .625rem;
    min-height: 9.375rem
}
.enquiryform__form fieldset span.lbl {
    font-weight: bold
}
.enquiryform__form fieldset span.lbl+span.txt--xsmall, .enquiryform__form fieldset input[type=tel]+span.txt--xsmall {
    float: right;
    display: inline-block;
    width: 28.75rem;
    margin-top: .75rem;
    margin-bottom: .625rem;
    line-height: 1.25rem
}
.enquiryform__form fieldset input[type=tel]+span.txt--xsmall {
    margin-top: .3125rem;
    margin-bottom: 1.25rem
}
.enquiryform__form fieldset label.with-checkbox {
    width: 28.75rem;
    float: right
}
.enquiryform__form fieldset.enquiryform__footer {
    margin-top: 1.25rem
}
.enquiryform__form fieldset.enquiryform__footer #email-address-check, .enquiryform__form fieldset.enquiryform__footer #enquirysubmit-container {
    float: right;
    min-width: 28.75rem !important;
    width: auto;
    float: right
}
.enquiryform__form fieldset.enquiryform__footer div#enquirysubmit-container a#enquirysubmit {
    margin-bottom: 1.5625rem
}
.enquiryform__form fieldset.enquiryform__footer .txt--xsmall {
    font-size: .75rem
}
.enquiryform__tripdetails {
    padding: .9375rem 0 .3125rem 0;
    font-size: 1rem;
    margin-top: 3.375rem
}
.enquiryform__tripdetails.fixed {
    position: fixed;
    top: -2.1875rem
}
.enquiryform__tripdetails .messagebox--yellow {
    margin-top: .9375rem;
    position: relative;
    top: .3125rem
}
.enquiryform__tripdetails h3 {
    font-size: 1.1875rem;
    padding-left: 1.25rem;
    margin-bottom: .9375rem
}
.inputform .enquiryform__tripdetails fieldset {
    padding: 1.875rem .9375rem .625rem 3.75rem !important;
    margin: 0;
    border-top: .0625rem solid #d9d9d9;
    position: relative;
    min-height: 4.0625rem
}
.inputform .enquiryform__tripdetails fieldset .fieldseticon {
    position: absolute;
    top: .875rem;
    left: 1.0625rem;
    width: 1.625rem
}
.inputform .enquiryform__tripdetails fieldset .fieldsettitle {
    color: #999;
    font-size: .875rem;
    position: absolute;
    top: .5rem;
    left: 3.75rem
}
.inputform .enquiryform__tripdetails fieldset .fieldsettitle+.fieldsettitle {
    left: 55%
}
.inputform .enquiryform__tripdetails fieldset .edit {
    position: absolute;
    top: 1.875rem;
    right: .9375rem;
    font-size: .875rem
}
.inputform .enquiryform__tripdetails fieldset .startdate, .inputform .enquiryform__tripdetails fieldset .enddate {
    position: absolute;
    top: 1.875rem;
    left: 3.75rem
}
.inputform .enquiryform__tripdetails fieldset .enddate {
    left: 55%
}
.inputform .enquiryform__tripdetails fieldset .arrow {
    position: absolute;
    top: 2rem;
    left: 55%;
    margin-left: -2.1875rem
}
.inputform .enquiryform__tripdetails fieldset #date {
    margin-top: 2.8125rem;
    margin-bottom: 1.25rem
}
.inputform .enquiryform__tripdetails fieldset .travelers-inputholder {
    margin-bottom: 1.25rem
}
.inputform .enquiryform__tripdetails fieldset .costbreakdown {
    margin-left: 0
}
.inputform .enquiryform__tripdetails fieldset label.with-numberinput {
    margin: 0
}
.inputform .enquiryform__tripdetails fieldset .children-ages strong {
    margin-top: 0
}
.inputform .enquiryform__tripdetails fieldset .children-ages .row.datarow {
    padding: .125rem 0
}
.inputform .enquiryform__tripdetails fieldset .costbreakdown {
    margin-top: .1875rem;
    font-size: .875rem
}
.inputform .enquiryform__tripdetails fieldset .costbreakdown__line {
    margin: .75rem 0 .3125rem
}
.inputform .enquiryform__tripdetails fieldset tr[data-row=costbreakdown-total] {
    font-size: 1.125rem;
    line-height: 2.5rem
}
.inputform .enquiryform__tripdetails fieldset tr[data-role=costbreakdown-tourcur] td {
    color: #999;
    font-size: .875rem
}
.inputform .enquiryform__tripdetails fieldset .costbreakdown__link {
    color: #999;
    font-size: .875rem
}
.inputform .enquiryform__tripdetails fieldset .fixeddates {
    margin-bottom: .9375rem
}
.inputform .enquiryform__tripdetails fieldset .fixeddates-note {
    display: none !important
}
.inputform .enquiryform__tripdetails fieldset .fixeddates div.row div:nth-child(1) {
    padding-left: 1.0625rem !important
}
.inputform .enquiryform__tripdetails fieldset .messagebox--red {
    margin-top: .9375rem;
    padding: .3125rem .625rem
}
.inputform .enquiryform__tripdetails fieldset.dateblock .messagebox--red {
    position: relative;
    top: 1.375rem
}
.inputform .enquiryform__tripdetails fieldset .costindication--operator .price {
    margin: .3125rem 0;
    display: block
}
.inputform .enquiryform__tripdetails fieldset .costindication--operator .expl {
    font-size: .875rem;
    display: block
}
.inputform .enquiryform__tripdetails fieldset .costindication--operator+.costindication--warning {
    margin: 1.0625rem 0
}
.container.container--enquiryform.container--enquiryform--new {
    max-width: 76.875rem;
    min-width: 60.625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head {
    padding: 0
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox {
    padding-top: 1rem;
    padding-bottom: 1.1875rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox:before {
    top: -0.25rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox:after {
    height: .9375rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox.tour:before {
    left: 5rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox.tour:after {
    left: 4.6875rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox.operator:before {
    left: 70%
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox.operator:after {
    left: 70%;
    margin-left: -0.3125rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .messagebox i {
    margin-right: .625rem;
    position: relative;
    top: .1875rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .list__item--image__full {
    min-height: 12.5rem;
    border-radius: 0
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .list__item--image__full img {
    min-height: 12.5rem;
    top: 50%;
    left: 50%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    width: auto;
    max-width: none
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .list__item--image__full.operator img {
    width: 100%
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .operator-snippet__data {
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 50%
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .operator-snippet__data .stars {
    top: .1875rem;
    margin-left: .75rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .operator-snippet__data .stars+p {
    padding-top: 0
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .operator-snippet__data p:nth-child(2) {
    padding-top: .4375rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features {
    padding: .375rem 1.25rem 4.0625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features h4 {
    font-size: .875rem;
    margin-top: .25rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features p {
    font-size: .875rem;
    line-height: 1.125rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features p span.grey, .container.container--enquiryform.container--enquiryform--new .enquiryform__head .features p span:not(.nowrap) {
    display: none;
    color: #666
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features li {
    font-size: .875rem;
    line-height: 1.125rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features p+h4 {
    margin-top: .5rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features p+p {
    margin-top: .75rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features em {
    font-size: 1.25rem;
    line-height: .625rem;
    position: relative;
    top: .1875rem;
    margin: 0 .1875rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features-op {
    padding-top: 1rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__head .features-op li+li {
    margin-top: .625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form {
    padding: 1.25rem 1.5625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form h4 svg {
    position: relative;
    top: .375rem;
    margin-right: .375rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form #did-you-mean {
    border: 1px solid #f6b776;
    background-color: #fef4e7;
    padding: .25rem .5rem;
    margin-top: .5rem;
    display: inline-block
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset {
    margin-bottom: 0;
    max-width: none
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset+fieldset {
    margin-top: 0;
    margin-bottom: .625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form.enquiryform__form--operator fieldset+fieldset {
    margin-top: 2.8125rem;
    margin-bottom: .625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset.enquiryform__footer {
    margin-bottom: 2.1875rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset label.with-checkbox, .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset.enquiryform__footer #email-address-check, .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset.enquiryform__footer #enquirysubmit-container, .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset span.lbl+span.txt--xsmall, .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset input[type=tel]+span.txt--xsmall, .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset>div textarea, .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset>div input[type=text]:not(.enhance):not(.width-full), .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset>div input[type=email], .container.container--enquiryform.container--enquiryform--new .enquiryform__form fieldset>div input[type=tel] {
    float: none
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .row .col {
    margin-bottom: .3125rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .row .col+.col {
    margin-bottom: .9375rem
}
@media(max-width: 1174px) {
    .container.container--enquiryform.container--enquiryform--new .enquiryform__form .row .col+.col {
        margin-top: .25rem
    }
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .row h5 {
    font-weight: bold;
    font-size: .9375rem;
    position: relative
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .row h5+span {
    color: #666;
    font-size: .875rem;
    line-height: 1.0625rem;
    display: block;
    max-width: 90%
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form #message {
    margin-top: .625rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .duration {
    margin-top: .625rem
}
@media(max-width: 1150px) {
    .container.container--enquiryform.container--enquiryform--new .enquiryform__form .duration label {
        width: 1.75rem
    }
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .tourtypes h5 {
    margin-bottom: .9375rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .tourtypes label+h5 {
    margin-top: .9375rem
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .tourtypes label {
    margin-left: 0
}
@media(min-width: 1179px) {
    .container.container--enquiryform.container--enquiryform--new .enquiryform__form .row h5 {
        top: .375rem
    }
    .container.container--enquiryform.container--enquiryform--new .enquiryform__form .row h5+span {
        margin-top: .25rem
    }
}
.container.container--enquiryform.container--enquiryform--new .enquiryform__form .country_autocomplete {
    margin-left: 0
}
.expert {
    padding: 0 1.25rem .3125rem 4.6875rem;
    position: relative
}
.expert h3, .expert h5 {
    font-weight: bold;
    margin-right: .3125rem;
    font-size: .875rem;
    display: inline-block
}
.expert .country-with-flag {
    font-size: .8125rem
}
.expert .sbi--star, .expert .expert__star {
    width: .875rem;
    position: absolute;
    top: -0.0625rem;
    left: 0
}
.expert p {
    color: #444;
    margin-top: 0;
    line-height: 1.25rem;
    margin-bottom: .625rem;
    border: 0;
    padding-top: .625rem
}
.expert__photo {
    position: absolute;
    top: .3125rem;
    left: 0
}
.expert__photo div {
    position: relative;
    z-index: 3;
    width: 3.5rem;
    height: 3.5rem;
    background-color: #f2f2f2;
    border-radius: 50%;
    overflow: hidden
}
.expert__photo div img, .expert__photo div-image {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%)
}
.expert__photo:before {
    content: "";
    position: absolute;
    z-index: 3;
    bottom: 0.3125rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 1.3125rem 1.3125rem 1.3125rem;
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #666 rgba(0, 0, 0, 0);
    left: 50%;
    transform: translateX(-50%)
}
.expert__photo:after {
    content: "";
    position: absolute;
    bottom: -0.3125rem;
    z-index: 2;
    width: 2.6875rem;
    height: .8125rem;
    background: #d69425;
    left: 50%;
    transform: translateX(-50%)
}
.expert__photo span {
    position: absolute;
    bottom: -0.3125rem;
    display: block;
    width: 3.5rem;
    height: .8125rem;
    z-index: 2;
    background: linear-gradient(-45deg, #d69425 50%, transparent 50%) top left, linear-gradient(-135deg, #d69425 50%, transparent 50%) top left, linear-gradient(45deg, #d69425 50%, transparent 50%) top right, linear-gradient(135deg, #d69425 50%, transparent 50%) top right;
    background-size: .8125rem .8125rem;
    background-repeat: no-repeat
}
.expert__photo i {
    content: "Expert";
    display: block;
    width: 3.15rem;
    height: .975rem;
    line-height: .825rem;
    background-color: #ffb431;
    font-size: .75rem;
    color: #000;
    left: .4375rem;
    bottom: -.6rem;
    position: absolute;
    z-index: 4;
    text-align: center;
    transform: scale(0.8333333333);
    transform-origin: top left
}
.expert__photo--small div {
    width: 2.9375rem;
    height: 2.9375rem
}
.expert__photo--small span {
    width: 3.5625rem;
    left: -0.3125rem
}
.expert__photo--small i {
    width: 2.625rem;
    font-size: .5625rem;
    left: 0.15625rem
}
.expert__photo--medium {
    position: relative;
    width: 6rem;
    display: block;
    margin: 0 auto 1.25rem
}
.expert__photo--medium div {
    width: 4.375rem;
    height: 4.375rem;
    margin-left: 0.8125rem
}
.expert__photo--medium:before {
    bottom: 0.5rem;
    border-width: 0 1.875rem 1.875rem 1.875rem
}
.expert__photo--medium:after {
    bottom: -0.4375rem;
    width: 4.75rem;
    height: 1.25rem
}
.expert__photo--medium span {
    width: 6rem;
    height: 1.25rem;
    bottom: -0.4375rem;
    background-size: 1.25rem 1.25rem
}
.expert__photo--medium i {
    width: 3.75rem;
    height: 1.25rem;
    line-height: 1.125rem;
    font-size: .75rem;
    font-weight: bold;
    left: 1.125rem;
    bottom: -0.75rem;
    transform: none
}
.expert__photo--large {
    position: relative;
    width: 8.75rem;
    display: block;
    margin: .625rem auto 1.875rem
}
.expert__photo--large div {
    width: 8.75rem;
    height: 8.75rem
}
.expert__photo--large:before {
    bottom: 0.5rem;
    border-width: 0 2.625rem 2.625rem 2.625rem
}
.expert__photo--large:after {
    bottom: -0.4375rem;
    width: 7.5rem;
    height: 1.25rem
}
.expert__photo--large span {
    width: 8.75rem;
    height: 1.25rem;
    bottom: -0.4375rem;
    background-size: 1.25rem 1.25rem
}
.expert__photo--large i {
    width: 5.25rem;
    height: 1.25rem;
    line-height: 1.125rem;
    font-size: .875rem;
    font-weight: bold;
    left: 1.75rem;
    bottom: -0.75rem;
    transform: none
}
.expert__reviews {
    font-weight: bold;
    font-size: .75rem;
    line-height: .875rem;
    padding-left: 1.25rem;
    position: relative;
    top: .125rem
}
.expertdetail {
    padding-top: 0
}
.expertdetail h4 {
    font-size: 1.125rem;
    display: block;
    position: relative;
    margin-top: 1.875rem;
    margin-bottom: 1.25rem
}
.expertdetail h4 div {
    display: inline-block;
    background-color: #fff;
    position: relative;
    z-index: 2;
    padding-right: .625rem
}
.expertdetail h4 div i {
    display: inline-block;
    border-radius: .3125rem;
    background-color: #d9d9d9;
    color: #444;
    line-height: 1.125rem;
    font-size: .75rem;
    font-weight: 600;
    padding: 0 .3125rem;
    position: relative;
    top: -0.0625rem;
    margin-right: .3125rem;
    margin-left: .3125rem
}
.expertdetail h4 div em {
    font-size: 1rem;
    font-weight: normal
}
.expertdetail h4:before {
    border-top: 1px dotted #b3b3b3;
    content: "";
    width: 100%;
    height: 0;
    position: absolute;
    top: .75rem;
    left: 0;
    z-index: 1
}
.expertdetail h4.extra {
    margin-top: 5rem
}
.expertdetail__main {
    padding-bottom: 3.75rem
}
.expertdetail__main__details {
    position: relative;
    margin-top: .625rem
}
.expertdetail__main__details:after {
    content: "";
    display: table;
    clear: both
}
.expertdetail__main__details__inner {
    display: block;
    clear: both;
    text-align: center
}
.expertdetail__main__details__inner h1 {
    padding-bottom: .3125rem
}
.expertdetail__main__details__inner h3 {
    font-weight: normal;
    font-size: .8125rem
}
.expertdetail__main__details__inner dl {
    display: inline-block;
    text-align: left;
    margin: .625rem auto
}
.expertdetail__main__details__inner dl dt {
    width: 7.5rem;
    float: left;
    clear: both;
    margin-bottom: .3125rem
}
.expertdetail__main__details__inner dl dd {
    float: left;
    position: relative
}
.expertdetail__main__details__inner dl dd .sbi--star {
    position: absolute;
    top: .125rem;
    left: 0
}
.expertdetail__main__details__inner dl dd .sbi--star+span {
    padding-left: 1.375rem
}
.expertdetail__main__desc {
    margin-top: 1.875rem;
    clear: both
}
.expertdetail__main__desc p {
    padding-bottom: 1.25rem
}
.expertdetail__main__countryblock {
    margin-top: 1.875rem
}
.expertdetail__main__countryblock .country-with-flag span {
    font-weight: bold;
    position: relative;
    top: .0625rem;
    margin-left: .625rem
}
.expertdetail__main__countryblock ul {
    margin-left: -0.625rem;
    margin-top: .625rem
}
.expertdetail__main__countryblock ul li {
    font-size: .875rem
}
.expertdetail__main__countryblock ul li:before {
    top: .5625rem
}
.expertdetail__main__countryblock ul li a {
    font-size: 1rem;
    display: inline-block;
    width: 15.625rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    top: .25rem;
    margin-bottom: .125rem
}
.expertdetail__main__countryblock ul li .stars {
    margin-right: .25rem;
    position: relative;
    top: -0.0625rem
}
.expertdetail__main__countryblock ul li em {
    font-weight: bold
}
.expertdetail__main__countryblock ul li .txt--grey {
    margin-right: .5rem
}
.expertdetail__main__countryblock ul li p {
    display: block;
    position: relative;
    top: .3125rem;
    margin-bottom: .625rem
}
.expertdetail__main__countryblock+.expertdetail__main__countryblock {
    border-top: 1px dotted #b3b3b3;
    padding-top: 1.875rem
}
.expertdetail__sidebar {
    margin-top: 1.25rem;
    padding: 0
}
.expertdetail__sidebar.content {
    padding: 0
}
.expertdetail__sidebar h4 {
    margin-top: 0;
    padding-top: 1.25rem;
    margin-right: 1.25rem
}
.expertdetail__sidebar h4 div {
    padding-left: 1.25rem
}
.expertdetail__sidebar h4:before {
    top: 1.875rem
}
.expertdetail__sidebar .expert {
    padding: .9375rem 1.25rem 1.25rem 5.9375rem
}
.expertdetail__sidebar .expert .expert__photo {
    left: 1.25rem;
    top: 1.25rem
}
.expertdetail__sidebar .expert+.expert {
    border-top: 1px dotted #b3b3b3
}
.favorite-save {
    position: absolute;
    top: 0;
    right: 0;
    transition: transform .3s ease;
    width: 2.875rem;
    height: 2.875rem;
    text-align: center;
    z-index: 5;
    cursor: pointer
}
.reload .container--directory .favorite-save {
    display: none
}
.favorite-save img, .favorite-save svg {
    width: 1.875rem;
    height: 1.875rem
}
.favorite-save svg {
    margin-top: .4375rem;
    transition: transform .3s ease;
    overflow: visible
}
.favorite-save svg path {
    fill: #fff;
    fill-opacity: 1;
    stroke-width: 0
}
.favorite-save svg .heart {
    fill: #000;
    fill-opacity: .3;
    transform-origin: 50% 50%;
    transition: transform .3s ease, fill .3s ease
}
.favorite-save.saving svg .heart {
    transform: scale(1.35);
    fill: #d21218;
    fill-opacity: 1;
    transition: none
}
.favorite-save.saved:not(.saving) svg .heart {
    fill: #a30e13;
    fill-opacity: 1
}
.favorite-save:active {
    transform: scale(1)
}
.favorite-save--inline {
    position: relative;
    vertical-align: top;
    top: .125rem
}
.favorite-save--inline svg {
    margin: 0 .125rem;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    box-shadow: 0 .125rem .3125rem rgba(0, 0, 0, .5)
}
.favorite-delete {
    position: absolute;
    top: 0;
    right: 0;
    transition: transform .3s ease;
    width: 2.5rem;
    height: 2.5rem;
    text-align: center;
    z-index: 5;
    cursor: pointer;
    padding: 0;
    border: 1px solid #999;
    background-color: rgba(0, 0, 0, .7);
    display: block;
    overflow: hidden;
    text-shadow: none;
    cursor: pointer;
    top: .625rem;
    right: .625rem;
    border-radius: .3125rem
}
.favorite-delete i {
    width: 1.125rem;
    position: absolute;
    left: .625rem;
    top: .625rem
}
.favorite-delete:hover {
    background-color: #000;
    border: 1px solid #fff
}
.favorite-added {
    position: absolute !important;
    z-index: 20;
    flex: none;
    top: -100px;
    left: -100px;
    width: 9.75rem !important;
    display: none;
    font-size: .8125rem;
    padding: .1875rem 0 .25rem !important;
    text-align: center;
    color: #41922c;
    box-shadow: 1px 1px 1px #666
}
.favorite-added a {
    font-size: .75rem
}
.favorite-added:before {
    left: 4.4375rem;
    top: -0.1875rem
}
.favorite-added:after {
    left: 4.125rem
}
.favorite-added span {
    position: relative;
    z-index: 2
}
.favorite-added.left:before {
    left: 8.1875rem
}
.favorite-added.left:after {
    left: 7.875rem
}
.favimg {
    position: absolute;
    width: 9.375rem;
    display: none;
    transform-origin: top left
}
.favimg img {
    width: 100%
}
.favimg.tomove {
    display: block;
    transition: transform .6s ease-in-out;
    z-index: 400
}
@media(min-width: 500px)and (max-width: 743px) {
    .favorite-save {
        width: 4.125rem;
        height: 4.125rem
    }
    .favorite-save img, .favorite-save svg {
        margin-top: .875rem;
        width: 2.25rem;
        height: 2.25rem
    }
}
@media(min-width: 744px) {
    .imgpagehead--tour .favorite-save {
        width: 4.125rem;
        height: 4.125rem
    }
    .imgpagehead--tour .favorite-save img, .imgpagehead--tour .favorite-save svg {
        margin-top: .875rem;
        width: 2.25rem;
        height: 2.25rem
    }
    .operator__header .favorite-save {
        width: 3.875rem;
        height: 3.875rem
    }
    .operator__header .favorite-save img, .operator__header .favorite-save svg {
        margin-top: .875rem;
        width: 1.875rem;
        height: 1.875rem
    }
    .operator__header .favorite-save {
        top: -0.8125rem;
        right: -1.25rem
    }
    .imgpagehead--tour .favorite-save {
        top: .3125rem;
        right: .3125rem
    }
    .list--operators .favorite-save {
        top: .75rem
    }
}
@media print {
    .favorite-save {
        display: none
    }
}
@media(hover: hover) {
    .favorite-save:hover svg {
        transform: scale(1.1)
    }
}
.fieldset {
    margin: 0 !important;
    padding: 0;
    min-width: 0;
    width: 100%
}
.fieldset:not(:last-child) {
    margin-bottom: 3.75rem !important
}
.fieldset .row {
    max-width: none;
    margin-left: -0.625rem;
    margin-right: -0.625rem
}
aside .fieldset {
    padding-left: 0 !important
}
aside .fieldset button[type=submit] {
    margin-top: .625rem
}
.fieldset--noindent {
    padding: 0 !important
}
.fieldset--emphasis {
    position: relative;
    top: -1.5625rem;
    padding: 1.5625rem .625rem 1.875rem !important;
    margin: 0 -0.625rem -2.8125rem !important;
    width: calc(100% + 1.25rem) !important;
    background: rgba(245, 210, 143, .15) linear-gradient(#e6e6e6, #fff) left bottom/100% 5px no-repeat
}
.fieldset--emphasis:last-child {
    padding-bottom: 1.5625rem !important;
    background: rgba(245, 210, 143, .15);
    border-top: 1px dashed #d9d9d9
}
.fieldset--emphasis .fieldset {
    margin-bottom: 0 !important
}
.fieldset--emphasis .legend {
    margin-left: 0;
    margin-right: 0
}
.legend {
    display: flex !important;
    align-items: center;
    justify-content: space-between
}
.fieldset--noindent>.legend {
    margin-left: 0;
    width: 100% !important
}
.fieldset--emphasis .legend {
    float: left
}
.legend__text, .legend__link {
    position: relative;
    white-space: nowrap
}
.legend__text {
    max-width: none !important;
    padding-right: 1.25rem;
    margin: 0 !important;
    font-size: 0;
    white-space: nowrap
}
.legend--l .legend__text {
    font-size: 1.375rem;
    top: -0.3125rem
}
.legend__text-main, .legend__text-sub {
    position: relative;
    z-index: 1;
    font-size: 1.0625rem;
    padding-right: .25rem;
    display: inline-block !important;
    vertical-align: top;
    white-space: normal !important;
    margin: 0 !important
}
.legend__text-sub {
    font-weight: normal;
    color: #999
}
.legend__text-sub-s {
    font-size: .8125rem
}
.legend__link {
    font-size: .875rem;
    font-weight: normal;
    padding-left: .625rem;
    order: 3
}
.legend--heading {
    flex-wrap: wrap;
    justify-content: start
}
.legend--heading:before {
    margin-left: 1.25rem
}
.legend--heading span {
    display: inline !important;
    margin: 0 !important
}
.legend--sub:before {
    top: .75rem !important
}
.legend--sub .legend__text-main {
    float: left;
    font-size: 1.125rem
}
.legend--sub .legend__text-sub {
    font-size: .9375rem;
    padding-right: 0
}
.legend--l {
    top: .625rem
}
.legend--s .legend__text-main {
    font-size: .9375rem;
    top: -0.0625rem
}
.legend--s .legend__text-sub {
    font-size: .8125rem;
    top: -0.0625rem;
    max-width: none
}
.legend--line {
    font-size: 1rem;
    font-weight: 600;
    display: block;
    width: 100%;
    position: relative;
    margin-bottom: 1.25rem
}
.legend--line .legend__text {
    display: flex;
    flex-flow: row wrap
}
.legend--line span {
    display: block;
    max-width: 38.75rem;
    margin: 0 auto;
    white-space: nowrap
}
.legend--line span em {
    background-color: #f2f2f2;
    padding: 0 1.25rem;
    display: inline-block;
    position: relative;
    margin-left: -1.25rem
}
.legend--line span em a.clear {
    font-weight: normal;
    display: inline-block;
    margin-left: 1.25rem;
    display: none
}
.legend--line span em a.clear:before {
    content: "–";
    display: inline-block;
    color: #666;
    position: relative;
    font-size: .875rem;
    left: -0.625rem
}
.legend--line span em i {
    font-weight: normal;
    padding-left: .625rem
}
.legend--line.legend em {
    background-color: #fff;
    margin-left: 0;
    padding: 0 .3125rem;
    font-weight: normal;
    font-size: 90%;
    color: #999
}
.legend--line:before {
    content: "";
    display: block;
    height: 0;
    border-top: 1px dotted rgba(0, 0, 0, .2);
    top: .625rem;
    flex-grow: 1;
    order: 2
}
.filters h3.serif {
    font-size: 1.5rem
}
.filters h3.serif.filter-title {
    margin: 1.5625rem 0 .9375rem;
    padding-left: .625rem
}
.filters__block {
    padding-bottom: 1.25rem;
    padding-left: .625rem;
    padding-right: .625rem
}
.filters__block:nth-child(n+3) {
    padding-top: 1.25rem;
    border-top: 1px solid #d9d9d9
}
.filters__block[data-var=from] {
    width: 100%
}
.filters__block.disabled .slider, .filters__block.disabled .slider-val1, .filters__block.disabled .slider-val2 {
    opacity: .3
}
.filters__block.disabled .slider {
    position: relative
}
.filters__block.disabled .slider:after {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    content: "";
    padding: .9375rem;
    margin: -0.9375rem;
    z-index: 20;
    box-sizing: content-box
}
.filters__block h3 {
    margin-top: .25rem;
    position: relative
}
.filters__block h3 i {
    color: #999;
    font-weight: normal;
    position: absolute;
    top: -0.1875rem;
    font-size: 1.375rem;
    margin-left: .3125rem
}
.filters__block h3 span {
    font-size: .875rem;
    color: #666;
    font-weight: normal;
    display: inline-block;
    padding: 0 .125rem
}
.filters__block h3 a.currency-selector {
    font-size: .8125rem;
    font-weight: normal;
    display: inline-block;
    white-space: nowrap
}
.filters__block h3+span {
    display: block;
    margin-top: .375rem;
    font-size: .8125rem;
    line-height: 1rem;
    color: #666
}
.filters__block>ul:not(.autocomplete) {
    margin-top: .75rem
}
.filters__block>ul+ul:not(.autocomplete) {
    margin-top: 0
}
.filters__block>div.more {
    border-top: 1px solid #d9d9d9;
    width: 135px;
    height: 10px;
    margin: 10px 0 -12px 27px
}
.filters__block>a.more {
    margin-top: 10px;
    margin-bottom: -40px;
    display: block;
    overflow-anchor: none
}
.filters__block>a.more span {
    display: inline-block;
    width: 10px;
    text-align: right
}
.filters__block>a.more:hover span {
    text-decoration: underline
}
.filters__block>ul li {
    line-height: 1.125rem;
    padding: .375rem 0;
    position: relative;
    cursor: pointer
}
.filters__block>ul li.filters__block__stars {
    padding: .125rem 0
}
.filters__block>ul li:not(.inactive) label:hover, .filters__block>ul li:not(.inactive) span:hover {
    cursor: pointer
}
.filters__block>ul li label {
    display: block;
    width: 100%;
    height: 100%;
    padding-left: 1.6875rem;
    box-sizing: border-box;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none
}
.filters__block>ul li label+a.icon--listremove {
    top: -1.4375rem
}
.filters__block>ul li a.help:not(.textual) {
    float: none;
    margin-top: .1875rem
}
.filters__block>ul li a.dp {
    display: inline;
    color: #666
}
.filters__block>ul li span {
    color: #666;
    font-size: .875rem
}
.filters__block>ul li.with-hint span {
    padding-right: 1.25rem
}
.filters__block>ul li:not(.inactive) label:hover span {
    text-decoration: underline
}
.filters__block>ul li:not(.inactive) label:hover span span, .filters__block>ul li:not(.inactive) label:hover span+span {
    text-decoration: none
}
.filters__block>ul li span.filters__block__check__amount, .filters__block>ul li span.filters__block__from__amount {
    color: #999;
    font-size: .8125rem
}
.filters__block>ul li span.filters__block__radio__amount {
    color: #999;
    font-size: .8125rem
}
.filters__block>ul li span.filters__block__stars__amount span {
    color: #999;
    font-size: .8125rem
}
.filters__block>ul li a:not(.dp) {
    display: block;
    width: 100%;
    height: 100%
}
.filters__block>ul li ul {
    display: none;
    margin-top: 0;
    margin-bottom: .75rem;
    margin-left: 2rem
}
.filters__block>ul li input[type=checkbox]:checked+span {
    color: #006400
}
.filters__block>ul li input[type=checkbox]:checked+span span {
    color: #006400
}
.filters__block>ul li input[type=radio] {
    top: .125rem
}
.filters__block>ul li input[type=radio]:checked+span {
    color: #006400
}
.filters__block>ul li input[type=radio]:checked+span span {
    color: #006400
}
.filters__block>ul li input[type=radio]+span {
    position: relative;
    left: -0.1875rem;
    top: -0.25rem;
    text-decoration: none !important
}
.filters__block>ul li input[type=radio]+span+span {
    position: relative;
    top: -0.3125rem;
    text-decoration: none !important
}
.filters__block>ul li .stars {
    cursor: pointer
}
.filters__block>ul li .stars i {
    cursor: pointer
}
.filters__block>ul li.more--hidden {
    display: none
}
.filters__block>ul li.filters__more {
    cursor: default
}
.filters__block>ul li.filters__more a {
    margin-left: 2rem
}
.filters__block>ul li.inactive {
    opacity: .3
}
.filters__block>ul li.inactive input[type=checkbox], .filters__block>ul li.inactive input[type=checkbox]:hover {
    cursor: default;
    border-color: #999
}
.filters__block>ul li.inactive label:hover {
    cursor: default
}
.filters__block>ul li.inactive label:hover span {
    text-decoration: none !important;
    cursor: default
}
.filters__block>ul li.filters__block__stars label, .filters__block>ul li.filters__block__radio label {
    padding-left: 0
}
.filters__block .slider {
    width: auto;
    margin: 1.5625rem .9375rem 1.25rem .9375rem;
    height: 1.4375rem;
    position: relative
}
.filters__block .slider[data-breakdown] {
    margin-top: 2.1875rem;
    pointer-events: none
}
.filters__block .slider[data-breakdown] .noUi-origin, .filters__block .slider[data-breakdown] .noUi-connect {
    pointer-events: all
}
.filters__block .slider .noUi-base {
    width: 100%;
    height: .25rem;
    background-color: #d9d9d9;
    position: relative;
    top: .625rem
}
.filters__block .slider .noUi-base .noUi-connect {
    position: absolute;
    top: 0;
    height: .25rem;
    background-color: #006400
}
.filters__block .slider .noUi-base .noUi-origin {
    cursor: pointer;
    position: absolute;
    display: block;
    top: -0.75rem;
    margin-left: -1rem;
    border: 1px solid #d9d9d9;
    width: 1.75rem;
    height: 1.75rem;
    background-color: #fff;
    border-radius: 14px;
    transition: border-color .2s ease-in-out;
    z-index: 2
}
.filters__block .slider .noUi-base .noUi-origin:hover {
    cursor: pointer;
    border: 1px solid #006400
}
.filters__block .slider .noUi-base .noUi-origin.noUi-active {
    z-index: 3
}
.filters__block .slider .noUi-base .noUi-connect+.noUi-origin {
    margin-left: -0.75rem
}
.filters__block .slider .noUi-target, .filters__block .slider .noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 0
}
.filters__block .slider .noUi-target {
    position: relative;
    direction: ltr
}
.filters__block .slider-val1, .filters__block .slider-val2 {
    font-size: .875rem;
    color: #666;
    position: relative;
    top: -1rem
}
.filters__block .slider-val1 {
    float: left
}
.filters__block .slider-val2 {
    float: right
}
.filters__block .noUi-target, .filters__block .noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 0
}
.filters__block .noUi-target {
    position: relative;
    direction: ltr
}
.filters__block .noUi-base {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1
}
.filters__block .noUi-connect {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0
}
.filters__block .noUi-origin {
    position: absolute;
    height: 0;
    width: 0
}
.filters__block .noUi-handle {
    position: relative;
    z-index: 1
}
.filters__block .noUi-handle.noUi-active {
    z-index: 2
}
.filters__block .noUi-state-tap .noUi-connect, .filters__block .noUi-state-tap .noUi-origin {
    transition: top .3s, right .3s, bottom .3s, left .3s
}
.filters__block .noUi-state-drag * {
    cursor: inherit !important
}
.filters__block .noUi-base, .filters__block .noUi-handle {
    transform: translate3d(0, 0, 0)
}
.filters__block .noUi-horizontal {
    height: 28px
}
.filters__block .noUi-horizontal .noUi-handle {
    width: 28px;
    height: 28px;
    left: 0;
    top: 0;
    position: relative
}
.filters__block .noUi-horizontal .noUi-origin.right-indicator {
    z-index: 3
}
.filters__block .noUi-horizontal .noUi-origin.right-indicator .noUi-handle:after {
    position: absolute;
    top: 0;
    left: .5rem;
    content: "›";
    font-size: 1.875rem;
    color: #999
}
.filters__block .noUi-horizontal .noUi-origin.left-indicator {
    z-index: 3
}
.filters__block .noUi-horizontal .noUi-origin.left-indicator .noUi-handle:after {
    position: absolute;
    top: 0;
    left: .5rem;
    content: "‹";
    font-size: 1.875rem;
    color: #999
}
.filters__block .noUi-draggable {
    cursor: ew-resize
}
.filters__block .noUi-vertical .noUi-draggable {
    cursor: ns-resize
}
.filters__block [disabled] .noUi-connect {
    background: #b8b8b8
}
.filters__block [disabled].noUi-target, .filters__block [disabled].noUi-handle, .filters__block [disabled] .noUi-handle {
    cursor: not-allowed
}
.filters__block .noUi-pips, .filters__block .noUi-pips * {
    -moz-box-sizing: border-box;
    box-sizing: border-box
}
.filters__block .noUi-pips {
    position: absolute;
    color: #999
}
.filters__block .noUi-value {
    position: absolute;
    text-align: center
}
.filters__block .noUi-value-sub {
    color: #ccc;
    font-size: 10px
}
.filters__block .noUi-marker {
    position: absolute;
    background: #ccc
}
.filters__block .noUi-marker-sub {
    background: #aaa
}
.filters__block .noUi-marker-large {
    background: #aaa
}
.filters__block .noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%
}
.filters__block .noUi-value-horizontal {
    transform: translate3d(-50%, 50%, 0)
}
.filters__block .noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px
}
.filters__block .noUi-marker-horizontal.noUi-marker-sub {
    height: 10px
}
.filters__block .noUi-marker-horizontal.noUi-marker-large {
    height: 15px
}
.filters__block .noUi-pips-vertical {
    padding: 0 10px;
    height: 100%;
    top: 0;
    left: 100%
}
.filters__block .noUi-value-vertical {
    transform: translate3d(0, 50%, 0);
    padding-left: 25px
}
.filters__block .noUi-marker-vertical.noUi-marker {
    width: 5px;
    height: 2px;
    margin-top: -1px
}
.filters__block .noUi-marker-vertical.noUi-marker-sub {
    width: 10px
}
.filters__block .noUi-marker-vertical.noUi-marker-large {
    width: 15px
}
.filters__block .breakdown {
    width: 100%;
    height: 1.875rem;
    position: relative;
    top: -1.875rem
}
.filters__block .breakdown div {
    background-color: #c3c6c2;
    float: left;
    position: absolute;
    bottom: 0
}
.filters__block--tourpreferences h3 {
    font-size: 1.5rem
}
.filters__block--tourpreferences form {
    margin: .9375rem 0 .625rem
}
.filters__block--tourpreferences .col {
    width: 100% !important;
    padding: 0
}
.filters__block--tourpreferences .col.tourpreferences__block {
    border: 1px solid #d9d9d9 !important;
    height: auto
}
.filters__block--tourpreferences.messagebox--green {
    background-color: #effbef;
    border: 1px solid #67a856
}
.filters__block--tourpreferences.messagebox--green .sbi.row-icon {
    filter: grayscale(100%);
    opacity: .9
}
.filters__block--operator form {
    margin-top: .625rem
}
.filters__block--operator .col {
    position: relative
}
.filters__block--operator input[type=text] {
    width: 100%;
    height: 2.1875rem;
    line-height: 2rem;
    padding: 0 1.75rem 0 .625rem;
    border: 1px solid #ccc;
    box-sizing: border-box
}
.filters__block--operator input[type=text]:hover, .filters__block--operator input[type=text]:focus {
    border: 1px solid #e48901
}
.filters__block--operator .col .clear-btn {
    width: 1.5625rem;
    height: 2.125rem;
    right: 0;
    top: 0
}
.filters__block--operator input[type=submit] {
    border-radius: 0;
    background-color: #f2f9fb;
    color: #0378a0;
    height: 2.1875rem;
    line-height: 1.875rem;
    padding: 0;
    margin: 0;
    border: 1px solid #ccc;
    border-left: 0;
    display: block;
    width: 100%;
    -webkit-appearance: none;
    box-sizing: border-box;
    cursor: pointer
}
.filters__block--operator input[type=submit]:hover {
    border: 1px solid #999;
    border-left: 0
}
.filters__block--operator input[type=submit].reload {
    color: #f2f9fb
}
.filters__block--operator .autocomplete-holder {
    display: none;
    width: 100%;
    position: relative
}
.filters__block--operator .messagebox {
    margin-top: .625rem;
    padding: .5rem .625rem .25rem;
    z-index: 180
}
.filters__block--operator .messagebox ul {
    margin-top: .1875rem
}
.filters__block--operator .messagebox li {
    padding-top: .25rem;
    padding-bottom: .25rem;
    line-height: 1rem
}
.filters__block--operator .messagebox li:before {
    top: .1875rem
}
.filters__block--operator .messagebox li .icon--listremove {
    top: .375rem
}
.filters__block--operator .messagebox li:hover {
    color: #006400
}
.filters__block--accommodation form {
    margin-top: .625rem
}
.filters__block--accommodation .col {
    position: relative
}
.filters__block--accommodation .col .clear-btn {
    width: 1.5625rem;
    height: 2.125rem;
    right: 0;
    top: 0
}
.filters__block--accommodation input[type=text] {
    width: 100%;
    height: 2.1875rem;
    line-height: 2rem;
    padding: 0 1.75rem 0 .625rem;
    border: 1px solid #ccc;
    box-sizing: border-box
}
.filters__block--accommodation input[type=text]:hover, .filters__block--accommodation input[type=text]:focus {
    border: 1px solid #e48901
}
.filters__block--accommodation input[type=submit] {
    border-radius: 0;
    background-color: #f2f9fb;
    color: #0378a0;
    height: 2.1875rem;
    line-height: 1.875rem;
    padding: 0;
    margin: 0;
    border: 1px solid #ccc;
    border-left: 0;
    display: block;
    width: 100%;
    -webkit-appearance: none;
    box-sizing: border-box;
    cursor: pointer
}
.filters__block--accommodation input[type=submit]:hover {
    border: 1px solid #999;
    border-left: 0
}
.filters__block--accommodation input[type=submit].reload {
    color: #f2f9fb
}
.filters__block--accommodation .autocomplete-holder {
    display: none;
    width: 100%;
    position: relative
}
.filters__block--accommodation .messagebox {
    margin-top: .625rem;
    padding: .5rem .625rem .25rem;
    z-index: 180
}
.filters__block--accommodation .messagebox ul {
    margin-top: .1875rem
}
.filters__block--accommodation .messagebox li {
    padding-top: .25rem;
    padding-bottom: .25rem;
    line-height: 1rem
}
.filters__block--accommodation .messagebox li:before {
    top: .1875rem
}
.filters__block--accommodation .messagebox li .icon--listremove {
    top: .375rem
}
.filters__block--accommodation .messagebox li:hover {
    color: #006400
}
.filters-toggle-sticky .filters-toggle__inner {
    position: fixed;
    z-index: 5;
    top: 0;
    right: 0;
    width: auto;
    opacity: 0;
    pointer-events: none;
    text-align: right;
    background: rgba(0, 0, 0, 0);
    padding: .9375rem 1.25rem;
    height: auto;
    transition: transform .25s ease, opacity .25s ease;
    will-change: opacity
}
body[data-filterbuttons=sticky] .filters-toggle-sticky .filters-toggle__inner {
    opacity: 1;
    pointer-events: all
}
body[data-filterbuttons=sticky] .filters-toggle-sticky .filters-toggle__inner .btn--filter {
    box-shadow: 0 2px 3px rgba(0, 0, 0, .3);
    transition: box-shadow .25s .25s ease
}
body.menu-fixed .filters-toggle-sticky .filters-toggle__inner {
    transform: translateY(2.5rem)
}
.filters-toggle-sticky .btn--filter {
    margin: 0;
    box-shadow: none;
    transition: box-shadow 0s ease;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    outline: 0
}
.filters-toggle-sticky .btn--filter:active {
    background-color: #03698b
}
.btn--filter {
    margin-top: .625rem;
    width: 5.625rem;
    padding-left: 1.25rem;
    font-size: .875rem
}
.btn--filter i, .btn--filter .btn--filter__icon {
    margin-top: .5rem;
    margin-left: -1.25rem;
    pointer-events: none
}
.btn--filter+.btn--filter {
    margin-left: .125rem
}
.btn--filter-whereto {
    width: 5.625rem
}
.btn--filter-tourlength {
    width: 6.75rem
}
.btn--filter-whereto, .btn--filter-tourlength {
    padding-left: 0;
    background-color: #fff;
    color: #048cba;
    border: 1px solid silver;
    text-shadow: none
}
.btn--filter-whereto:hover, .btn--filter-tourlength:hover {
    border: 1px solid #048cba
}
.btn--filter-whereto i, .btn--filter-whereto .btn__icon, .btn--filter-tourlength i, .btn--filter-tourlength .btn__icon {
    display: none
}
.btn--filter--xl {
    display: none;
    width: auto !important;
    padding-right: .75rem;
    padding-left: 2.25rem !important
}
.container--search-directory .filters__block__radio__amount {
    top: -0.25rem !important
}
.container--directory .filters__block:nth-child(2) {
    padding-top: 1.25rem
}
.container--directory .list--numbers.reload, .container--directory .selected-filters.reload {
    visibility: hidden
}
@media(max-width: 969px) {
    body .filters__apply {
        transition: bottom .2s .2s ease-in-out
    }
    html.filters-open:not(.with-overlay) {
        height: 100%;
        overflow: hidden;
        width: 100%
    }
    body.filters-open:after {
        content: "";
        background-color: rgba(0, 0, 0, .35);
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 101;
        opacity: 1;
        pointer-events: all;
        transition: opacity .2s ease-out, width 0s, height 0s
    }
    html.filters-open:not(.with-overlay), body.filters-open:not(.with-overlay) {
        overflow: hidden
    }
    body.filters-open:not(.with-overlay) .filters__apply {
        left: 0;
        bottom: 0;
        transition: bottom .2s .8s ease-in-out
    }
    .filters {
        display: block;
        position: fixed;
        background-color: #fff;
        border-left: 1px solid #e2e1e1;
        z-index: 200;
        padding: 2.5rem 0 0 0;
        top: 0;
        margin-top: 0;
        overflow: hidden;
        height: 100%;
        left: 100%;
        width: 100%;
        transform: translate3d(0, 0, 0);
        will-change: transform;
        transition: transform .2s cubic-bezier(0.4, 0, 1, 1);
        backface-visibility: hidden
    }
    body.filters-open:not(.with-overlay) .filters {
        transform: translate3d(-100%, 0, 0);
        transition: transform .25s cubic-bezier(0, 0, 0.2, 1)
    }
    body.filters-open:not(.with-overlay) .filters__all {
        opacity: 1;
        transition: opacity .25s .25s cubic-bezier(0, 0, 0.2, 1)
    }
    body[data-filterbuttons=bottom] .filters {
        transform-origin: bottom;
        bottom: 3.5rem;
        transform: translateY(100%)
    }
    .filters:before, .filters .filters__apply:before {
        content: "";
        position: absolute;
        z-index: 21;
        pointer-events: none;
        left: 0;
        width: 100%;
        height: .625rem
    }
    .filters:before {
        background: linear-gradient(rgba(0, 0, 0, 0.25), transparent);
        transition: opacity .25s ease;
        top: 2.625rem
    }
    .filters .filters__apply:before {
        background: linear-gradient(transparent, rgba(0, 0, 0, 0.25));
        transition: opacity .25s ease, transform .2s .8s ease-in-out;
        bottom: 100%
    }
    .filters--top:before {
        opacity: 0
    }
    .filters--bottom .filters__apply:before {
        opacity: 0
    }
    .filters__all {
        opacity: 0;
        position: relative;
        overflow: auto;
        overflow-x: hidden;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        height: 100%;
        min-height: 100%;
        padding: 0 .625rem;
        padding-bottom: 5rem;
        z-index: 20;
        transition: opacity 0s
    }
    .filters__close {
        background-color: #e2e1e1;
        padding: .625rem 1.25rem;
        position: absolute;
        width: 100%;
        top: 0 !important;
        left: 0;
        box-sizing: border-box;
        font-size: 1.25rem;
        z-index: 200;
        box-shadow: 0px px 2px rgba(0, 0, 0, .18)
    }
    .filters__close a {
        position: absolute;
        top: .3125rem;
        right: 1.25rem;
        background-color: #444;
        border-radius: .3125rem;
        width: 1.875rem;
        height: 1.875rem
    }
    .filters__close a i {
        width: 1.25rem;
        margin-top: .3125rem;
        margin-left: .3125rem
    }
    .filters__close a:hover {
        background-color: #666
    }
    .filters__apply {
        background-color: #f2f2f2;
        box-shadow: 0px -1px 2px rgba(0, 0, 0, .18);
        border-top: 1px solid #e2e1e1;
        padding: .9375rem .625rem;
        position: absolute;
        bottom: -4.1875rem;
        left: 0;
        width: 100%;
        z-index: 200
    }
    .filters__block--accommodation .autocomplete-container {
        position: relative
    }
}
@media(min-width: 375px) {
    .btn--filter {
        font-size: .9375rem;
        width: 6rem;
        padding-left: 1.5rem
    }
    .btn--filter i {
        margin-left: -1.5rem
    }
    .btn--filter-whereto {
        width: 7rem
    }
    .btn--filter-tourlength {
        width: 8.1875rem
    }
    .btn--filter-whereto, .btn--filter-tourlength {
        padding-left: 1.5rem
    }
    .btn--filter-whereto i, .btn--filter-whereto .btn__icon, .btn--filter-tourlength i, .btn--filter-tourlength .btn__icon {
        display: inline-block;
        margin-top: .4375rem;
        margin-left: -1.5625rem
    }
    .btn--filter+.btn--filter {
        margin-left: .25rem
    }
}
@media(min-width: 410px) {
    .btn--filter {
        font-size: 1rem;
        width: 6.375rem
    }
    .btn--filter-whereto {
        width: 7.375rem
    }
    .btn--filter-tourlength {
        width: 8.75rem
    }
    .btn--filter+.btn--filter {
        margin-left: .5rem
    }
}
@media(max-width: 568px) {
    .filters__apply {
        bottom: -4.1875rem
    }
    .filters__apply .btn {
        margin: 0 2.5rem;
        width: calc(100% - 5rem);
        padding-right: .625rem
    }
}
@media(max-width: 359px) {
    .filters {
        width: 100%
    }
}
@media(max-width: 743px) {
    body.filters-open.tourpref-active .filters__apply {
        bottom: -4.1875rem;
        -webkit-transition: bottom .2s 0s ease-in-out;
        transition: bottom .2s 0s ease-in-out
    }
    body.video-fullscreen:after {
        content: "";
        background-color: rgba(0, 0, 0, .6);
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 101
    }
    .filters__block--tourpreferences.messagebox.messagebox--yellow, .filters__block--tourpreferences.messagebox.messagebox--green {
        margin-top: 0;
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        width: auto;
        border-left: 0;
        border-right: 0;
        padding-left: 1.25rem;
        padding-right: 1.25rem
    }
    .filters__block--tourpreferences.messagebox.messagebox--yellow form, .filters__block--tourpreferences.messagebox.messagebox--green form {
        margin-bottom: 0
    }
    .filters__block--accommodation input[type=text] {
        font-size: 1rem
    }
}
@keyframes form-toggled-expand {
    0% {
        height: 0;
        padding-top: 0;
        opacity: 0
    }
    33% {
        height: 0;
        padding-top: 0;
        opacity: 0
    }
    67% {
        height: 2.8125rem;
        padding-top: .3125rem;
        opacity: 0
    }
    100% {
        height: auto;
        padding-top: .3125rem;
        opacity: 1
    }
}
@keyframes form-toggled-collapse {
    0% {
        height: auto;
        padding-top: .3125rem;
        opacity: 1
    }
    33% {
        height: 2.8125rem;
        padding-top: .3125rem;
        opacity: 0
    }
    67% {
        height: 0;
        padding-top: 0;
        opacity: 0
    }
    100% {
        height: 0;
        padding-top: 0;
        opacity: 0
    }
}
.form__legend--line {
    font-size: 1rem;
    font-weight: 600;
    display: block;
    width: 100%;
    position: relative;
    margin-bottom: 1.25rem
}
.form__legend--line span {
    display: block;
    max-width: 37.5rem;
    margin: 0 auto
}
.form__legend--line span em {
    background-color: #f2f2f2;
    padding: 0 1.25rem;
    display: inline-block;
    position: relative;
    margin-left: -1.25rem
}
.form__legend--line span em a.clear {
    font-weight: normal;
    display: inline-block;
    margin-left: 1.25rem;
    display: none
}
.form__legend--line span em a.clear:before {
    content: "–";
    display: inline-block;
    color: #666;
    position: relative;
    font-size: .875rem;
    left: -0.625rem
}
.form__legend--line span em i {
    font-weight: normal;
    padding-left: .625rem
}
.form__legend--line:before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-top: .0625rem dotted #ccc;
    order: 2;
    top: .625rem
}
.inputform {
    margin: 0 .625rem;
    padding-bottom: .0625rem
}
.inputform fieldset {
    width: 100%;
    margin: 1.875rem 0 3.125rem;
    padding: 0 0
}
.inputform fieldset.dateblock.clearable a.clear {
    display: inline-block
}
.inputform fieldset.dateblock.clearable .date-selected {
    font-weight: normal;
    padding-left: 0;
    margin-left: 1.25rem
}
.inputform fieldset.dateblock.clearable .date-selected:before {
    content: "–";
    display: inline-block;
    color: #666;
    position: relative;
    font-size: .875rem;
    left: -0.625rem
}
.inputform fieldset.dateblock.clearable .date-selected nobr {
    font-weight: bold
}
.inputform fieldset .messagebox--red {
    margin-bottom: 1.25rem;
    color: #ca4947
}
.inputform fieldset .messagebox--red i.sbi--alert {
    position: relative;
    top: .125rem;
    margin-right: .3125rem
}
.inputform fieldset .messagebox--red a.help:not(.textual):not(.numberinput) {
    margin-top: .125rem
}
.inputform fieldset .date-selected {
    padding-left: 0
}
.inputform fieldset .field-counter {
    color: #666;
    margin-top: .4375rem
}
.inputform fieldset>div {
    max-width: 37.5rem;
    margin: 0 auto
}
.inputform fieldset>div label {
    display: block;
    position: relative;
    margin: .9375rem 0;
    min-height: 2.125rem;
    clear: both
}
.inputform fieldset>div label.with-numberinput {
    min-height: 2.9375rem
}
.inputform fieldset>div label.with-numberinput:first-child {
    margin-top: 0
}
.inputform fieldset>div label.with-numberinput+.with-numberinput {
    margin-bottom: 0
}
.inputform fieldset>div label span.lbl {
    display: block;
    width: 100%;
    margin-bottom: .3125rem
}
.inputform fieldset>div label span.sub {
    color: #999
}
.inputform fieldset>div label.with-checkbox, .inputform fieldset>div label.with-radio {
    min-height: 1.25rem;
    padding-left: 1.75rem;
    line-height: 1.1875rem;
    cursor: pointer
}
.inputform fieldset>div label.with-checkbox input, .inputform fieldset>div label.with-radio input {
    position: absolute;
    top: 0
}
.inputform fieldset>div label.with-checkbox:hover {
    text-decoration: underline
}
@media(max-width: 743px) {
    .inputform fieldset>div label .numberinput_enhanced {
        position: relative;
        margin-top: .3125rem;
        margin-bottom: .625rem;
        float: none
    }
}
.inputform fieldset>div .input--holder {
    display: inline-block;
    position: relative;
    width: 100%
}
.inputform fieldset>div .input--holder input {
    transition: margin-bottom .3s linear
}
.inputform fieldset>div .input--holder input.error {
    margin-bottom: 3.125rem
}
.inputform fieldset>div .input--holder .error-balloon-container {
    position: absolute;
    top: 2.3125rem
}
.inputform fieldset>div input[type=text]:not(.enhance), .inputform fieldset>div input[type=email], .inputform fieldset>div input[type=tel], .inputform fieldset>div input[type=password] {
    width: 100%
}
.inputform fieldset>div input[type=text]:not(.enhance).half-width, .inputform fieldset>div input[type=email].half-width, .inputform fieldset>div input[type=tel].half-width, .inputform fieldset>div input[type=password].half-width {
    width: 50%
}
.inputform fieldset>div input[type=number] {
    font-size: 1rem;
    font-weight: 600;
    padding: .1875rem .3125rem;
    border: 1px solid #d9d9d9;
    width: 7.25rem;
    height: 2.1875rem;
    line-height: 2.1875rem;
    text-align: center
}
.inputform fieldset>div .select--holder {
    width: 12.5rem;
    margin-bottom: 0;
    float: left
}
.inputform fieldset>div .select--holder:before {
    border-top: 6px solid #444;
    top: .875rem
}
.inputform fieldset>div .select--holder.inactive {
    opacity: .4
}
.inputform fieldset>div .select--holder select {
    color: #444;
    font-size: 1rem;
    border-color: #ccc;
    float: left
}
.inputform fieldset>div .select--holder--fullwidth {
    width: 100%
}
.inputform fieldset>div .select--holder--autowidth {
    width: auto
}
.inputform fieldset>div .btn+.txt--xsmall {
    white-space: normal
}
.inputform fieldset>div p {
    margin: .3125rem 0 .9375rem
}
.inputform fieldset>div#interest_countries p, .inputform fieldset>div#tour_type p {
    margin-top: -0.625rem
}
.inputform fieldset>div textarea {
    width: 100%;
    min-height: 12.5rem;
    max-height: 25rem
}
.inputform fieldset>div #request-warning {
    display: none
}
.inputform fieldset>div #request-warning>div {
    margin-top: .625rem
}
.inputform fieldset>div #request-warning>div>span {
    display: block;
    margin-bottom: .625rem
}
.inputform fieldset>div #request-warning>div>span:last-child {
    margin-bottom: 0
}
.inputform .cr-12-form {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}
.inputform .cr-12-form label {
    line-height: 1;
    padding: 0;
    min-height: auto
}
.inputform .cr-12-form .shareholders-more-info {
    font-size: 12px
}
.inputform.enquiryform__verification>fieldset .list--tours p {
    margin: 0
}
.inputform.subscribe input[type=text]:not(.enhance), .inputform.subscribe input[type=email], .inputform.subscribe input[type=tel], .inputform.subscribe input[type=password], .inputform.medialibrary input[type=text]:not(.enhance), .inputform.medialibrary input[type=email], .inputform.medialibrary input[type=tel], .inputform.medialibrary input[type=password] {
    top: 0
}
.inputform.reviewcontactform fieldset>div.messagebox.fullwidth {
    max-width: none
}
.inputform.reviewcontactform button[type=submit] {
    margin-bottom: .625rem;
    outline: 0
}
.inputform.reviewcontactform div.done-button {
    text-align: center;
    margin-top: 3.125rem
}
.container--main--white .inputform fieldset {
    padding: 0
}
div.error-balloon-container {
    clear: both;
    display: none;
    position: relative;
    margin: 0;
    padding: 0;
    overflow: visible;
    margin-bottom: .625rem
}
div.error-balloon-container div.error-balloon {
    border: 1px solid #e88988;
    overflow: visible;
    color: #ca4947;
    margin-top: 9px;
    display: inline-block
}
div.error-balloon-container div.error-balloon .inner {
    display: inline-block;
    position: relative;
    background-color: #f3e1e0;
    padding: .375rem .5rem;
    z-index: 1
}
div.error-balloon-container div.error-balloon:before {
    z-index: 0;
    position: absolute;
    top: .3125rem;
    left: 1.25rem;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: .9375rem;
    height: .9375rem;
    background-color: #f3e1e0;
    border: 1px solid #e88988
}
div.error-balloon-container--warning div.error-balloon {
    border: 1px solid #e48901;
    color: #e48901
}
div.error-balloon-container--warning div.error-balloon:before {
    border: 1px solid #e48901;
    background: #fff9ef
}
div.error-balloon-container--warning div.error-balloon .inner {
    font-size: .8125rem;
    background: #fff9ef
}
.form-holder {
    position: relative;
    transition: height .25s ease
}
.form {
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden;
    transition: opacity .25s ease
}
.form[data-formtype=accommodationprofile] {
    overflow: visible;
    width: 100%
}
.form[data-formtype=accommodationprofile] h1 {
    font-size: 2.125rem;
    font-family: "Gentium Basic", serif
}
.form[data-state=invisible] {
    opacity: 0;
    position: absolute;
    z-index: -1
}
.form[data-state=loading] {
    opacity: .4
}
.form[data-state=fadeout] {
    opacity: 0
}
.form[data-state=fadein] {
    opacity: 1
}
.form .txt-expl {
    margin-top: .5625rem;
    display: block;
    margin-bottom: .9375rem;
    line-height: 1.125rem
}
.form--invisible {
    opacity: 0
}
.form__fieldset {
    margin: 0 !important;
    padding: 0 1.25rem !important
}
.form__fieldset:not(:last-child) {
    margin-bottom: 2.8125rem !important
}
.form__fieldset .row {
    max-width: none;
    margin-left: -0.625rem;
    margin-right: -0.625rem
}
aside .form__fieldset {
    padding-left: 0 !important
}
aside .form__fieldset button[type=submit] {
    margin-top: .625rem
}
.form__fieldset-noindent {
    padding: 0 !important
}
.form__legend {
    display: flex !important;
    justify-content: space-between;
    margin: auto -1.25rem;
    width: calc(100% + 2.5rem) !important
}
.form__fieldset-noindent>.form__legend {
    margin-left: 0;
    width: 100% !important
}
.form__legend-l {
    top: .625rem
}
.form__legend-text, .form__legend-link {
    background-color: #fff;
    position: relative
}
.form__legend-text {
    max-width: none !important;
    padding-right: 1.25rem;
    margin: 0 !important;
    font-size: 0
}
.form__legend-text:before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-top: 1px dotted #ccc;
    position: absolute;
    z-index: 0;
    top: .625rem
}
.form__legend-l .form__legend-text {
    font-size: 1.375rem;
    top: -0.3125rem
}
.form__legend-text--bodybg, .form__legend-text--bodybg .form__legend-main {
    background-color: #f2f2f2
}
.form__legend-main, .form__legend-sub {
    position: relative;
    z-index: 1;
    font-size: 1.0625rem;
    padding-right: .25rem;
    background: #fff;
    display: inline-block !important
}
.form__legend-s .form__legend-main, .form__legend-s .form__legend-sub {
    font-size: .9375rem;
    top: -0.0625rem
}
.form__legend-sub {
    font-weight: normal;
    color: #999
}
.form__legend-link {
    font-size: .875rem;
    font-weight: normal;
    padding-left: .625rem
}
.form__label {
    position: relative;
    margin: 0 !important;
    line-height: 1.375rem;
    padding: .375rem 0;
    display: inline-block !important;
    vertical-align: top
}
.form__input[type=radio]+.form__label, .form__input[type=checkbox]+.form__label {
    line-height: 1.25rem;
    min-height: 1.25rem;
    padding: 0
}
.form__input[type=radio]+.form__label {
    top: .3125rem
}
.form__label[data-role=label-as-placeholder] {
    position: absolute !important;
    z-index: 1;
    color: #999;
    left: 1.25rem;
    transform-origin: left top;
    transform: translateY(0.25rem);
    transition: transform .2s ease
}
.form__label[data-role=label-as-placeholder][data-state=label] {
    transform: translateY(-0.125rem) scale(0.8)
}
.form__label--fullwidth {
    width: 100%
}
input[type=radio]+.form__label--fullwidth {
    width: calc(100% - 2.5rem)
}
.form__input {
    color: #444;
    padding: .625rem .5625rem !important
}
.form__input[type=radio], .form__input[type=checkbox] {
    position: relative;
    margin-bottom: .5625rem;
    padding: 0 !important
}
.form__input[type=checkbox] {
    top: auto;
    left: auto;
    margin-right: .625rem;
    float: left
}
.form__input[type=checkbox]+.form__label {
    display: table-cell !important
}
.form__input[type=number] {
    text-align: left !important;
    font-weight: 400 !important
}
.form__input[type=number]:not(.form__input--fullwidth) {
    width: 7.5rem !important
}
.form__input:not([type=radio]):not([type=checkbox]):not([type=number]) {
    width: 100% !important
}
.form__input:not([type=radio]):not([type=checkbox]):focus {
    border-color: #e48901
}
.form__input::placeholder {
    color: #888;
    font-style: normal !important
}
.form__input[data-role=label-as-placeholder] {
    padding: 1rem .5625rem .1875rem !important
}
.form__input[disabled] {
    background: #e9e9e9
}
.form__input--fullwidth {
    width: 100% !important
}
.fieldset .select--holder:before {
    top: 1.125rem
}
.fieldset .select--holder:hover:before {
    border-top-color: #999 !important
}
select.form__input {
    font-size: .9375rem
}
textarea.form__input {
    padding: .625rem;
    height: 4.875rem;
    min-height: 4.875rem !important
}
textarea.form__input-l {
    height: 10.3125rem
}
.form__card {
    position: relative;
    padding: .9375rem;
    margin-bottom: 1.25rem;
    outline: 1px solid #d9d9d9;
    background-color: #f7f7f7
}
.form__card-delete {
    margin-left: auto;
    display: block;
    padding-top: .625rem
}
.form__upload-removefile {
    position: relative;
    display: inline-block
}
.form__upload-removefile.upload-other {
    display: block
}
.form__upload-removefile .clear-btn {
    position: relative;
    margin: 0 .3125rem;
    top: .125rem
}
.form__upload-removefile+div {
    padding-top: .3125rem
}
.form__togglefields {
    display: block;
    max-width: none !important;
    overflow: hidden;
    transition: height .15s ease, opacity .15s .15s ease
}
.form__togglefields[data-state=invisible], .form__togglefields[data-state=inactive] {
    opacity: 0;
    transition: opacity .15s ease, height .15s .15s ease
}
.form__togglefields[data-animate=false] {
    transition: none !important
}
.form__togglefields--i {
    display: inline;
    transition: none
}
.form__togglefields--i[data-state=inactive] {
    display: none
}
.form__toggle-wrap {
    min-height: 10.8125rem
}
.form__toggled {
    overflow: hidden;
    height: 0;
    padding-top: 0;
    opacity: 0
}
.form__toggle[data-state=active]~* .form__toggled {
    height: auto;
    padding-top: .3125rem;
    opacity: 1;
    animation: form-toggled-expand .6s ease-in-out
}
.form__toggle[data-state=inactive]~* .form__toggled {
    animation: form-toggled-collapse .6s ease-in-out
}
.form__longtext {
    overflow: auto;
    width: 100%;
    height: 12.5rem;
    background: #fff;
    border: 1px solid #ccc
}
.form__longread-iframe {
    padding: 1.25rem;
    background: #fff
}
@supports(-ms-ime-align: auto) {
    .inputform fieldset legend span em {
        background-color: #fbfbfb
    }
}
.gallery__preview {
    width: 100%;
    border: 1px solid #d9d9d9;
    display: inline-block;
    text-align: center;
    line-height: 2.625rem;
    font-size: .875rem;
    box-shadow: 0 0 3px rgba(0, 0, 0, .18);
    border-radius: .3125rem
}
.gallery__preview div {
    overflow: hidden;
    width: 100%;
    position: relative;
    border-radius: calc(0.3125rem - 1px) calc(0.3125rem - 1px) 0 0
}
.gallery__preview div:before {
    content: "";
    display: block;
    padding-top: 62.5%;
    background-color: #f2f2f2
}
.gallery__preview div:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0);
    position: absolute;
    top: 0;
    left: 0
}
.gallery__preview div img {
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    border-radius: calc(0.3125rem - 1px) calc(0.3125rem - 1px) 0 0
}
.gallery__preview div img.lazyload {
    height: 100%
}
.gallery__preview span {
    color: #444
}
h3+.gallery__preview {
    margin-top: 1.125rem
}
.gallery__preview em {
    font-style: normal !important;
    font-weight: normal !important
}
.gallery__preview em i {
    position: relative;
    margin-right: .3125rem;
    top: .1875rem;
    font-size: 1.25rem
}
.gallery__preview--mobile, .gallery__preview--row {
    padding-top: .6875rem;
    margin-bottom: .625rem
}
.gallery__preview--mobile:after, .gallery__preview--row:after {
    content: "";
    display: table;
    clear: both
}
.gallery__preview--mobile a, .gallery__preview--row a {
    width: 33.3333333333%;
    float: left;
    position: relative
}
.gallery__preview--mobile a div, .gallery__preview--row a div {
    overflow: hidden;
    width: 100%;
    position: relative
}
.gallery__preview--mobile a div:before, .gallery__preview--row a div:before {
    content: "";
    display: block;
    padding-top: 50%;
    background-color: #f2f2f2
}
.gallery__preview--mobile a div:after, .gallery__preview--row a div:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0);
    position: absolute;
    top: 0;
    left: 0;
    border-right: 1px solid #fff
}
.gallery__preview--mobile a div img, .gallery__preview--row a div img {
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%
}
.gallery__preview--mobile a div img.map, .gallery__preview--row a div img.map {
    width: 120%;
    max-width: 120%;
    left: -10%
}
.gallery__preview--mobile a i.sbi--play-button-large, .gallery__preview--row a i.sbi--play-button-large {
    width: 2.5rem;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -1.25rem;
    margin-left: -1.25rem
}
.gallery__preview--mobile a.more-photos div, .gallery__preview--row a.more-photos div {
    color: #fff
}
.gallery__preview--mobile a.more-photos div:before, .gallery__preview--row a.more-photos div:before {
    background-color: #000
}
.gallery__preview--mobile a.more-photos div:after, .gallery__preview--row a.more-photos div:after {
    border-right: 0
}
.gallery__preview--mobile a.more-photos span, .gallery__preview--row a.more-photos span {
    position: absolute;
    text-align: center;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: .8125rem;
    line-height: 1rem;
    font-weight: normal
}
.gallery__preview--mobile a.more-photos span b, .gallery__preview--row a.more-photos span b {
    font-size: 1.125rem;
    display: block
}
.gallery__preview--row {
    margin: -0.3125rem 0 1.875rem
}
.gallery__preview--row a.more-photos img {
    opacity: .25
}
.gallery__preview--row a:nth-child(4), .gallery__preview--row a:nth-child(5) {
    display: none
}
html.no-touch .gallery__preview {
    transition: box-shadow .2s ease-in-out
}
html.no-touch .gallery__preview em {
    text-decoration: underline rgba(0, 0, 0, 0);
    transition: text-decoration .2s ease-in-out
}
html.no-touch .gallery__preview:hover {
    text-decoration: none;
    box-shadow: 0 0 6px rgba(0, 0, 0, .4)
}
html.no-touch .gallery__preview:hover em {
    text-decoration: underline;
    transition-duration: .25s
}
html.no-touch .gallery__preview--mobile a:hover {
    opacity: .9
}
.inline-gallery i.sbi {
    margin-right: .5rem;
    position: relative;
    top: .1875rem
}
.inline-gallery--floated {
    float: right;
    margin: .75rem 0 .625rem 1.25rem;
    padding: 0
}
.overlay img.map {
    max-width: 100%
}
.overlay .gallery {
    background-color: #000
}
.overlay .gallery__image {
    position: relative;
    overflow: hidden
}
.overlay .gallery__image:after {
    content: "";
    display: block;
    padding-top: 62.1%;
    position: relative;
    z-index: 2
}
.overlay .gallery__image:before {
    content: "";
    display: block;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    margin-left: -15px;
    border: 4px solid #048cba;
    border-right-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite;
    opacity: .3
}
.overlay .gallery__image img {
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1
}
.overlay .gallery__image img.lib {
    max-width: none;
    max-height: none;
    width: 100%
}
.overlay .gallery__image .btn {
    width: 4.125rem;
    height: 100%;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 1.75rem;
    box-shadow: none;
    z-index: 100;
    transition: opacity .3s;
    background-color: rgba(0, 0, 0, 0);
    border: 0;
    color: #fff
}
.overlay .gallery__image .btn:hover {
    background-color: rgba(0, 0, 0, 0)
}
.overlay .gallery__image .btn:before {
    z-index: 2;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 2.5rem;
    content: "";
    display: block;
    top: 50%;
    left: 50%;
    margin-left: -1.25rem;
    margin-top: -1.25rem;
    background-color: rgba(0, 0, 0, 0);
    border: 2px solid #fff;
    position: absolute;
    box-shadow: 0px 0px 5px #222;
    opacity: .7
}
.overlay .gallery__image .btn--next {
    left: auto;
    right: 0;
    position: absolute
}
.overlay .gallery__image .btn:after {
    font-size: 2.5rem;
    top: 50%;
    left: 50%;
    z-index: 3;
    margin-top: -1.1875rem;
    margin-left: -0.4375rem;
    text-shadow: 0px 0px 5px #222;
    opacity: .7
}
.overlay .gallery__image .btn--next:after {
    margin-left: -0.375rem
}
html.no-touch .overlay .gallery__image .btn {
    opacity: .6
}
html.no-touch .overlay .gallery__image .btn:hover {
    opacity: 1
}
html.no-touch .overlay .gallery__image .btn:hover:before, html.no-touch .overlay .gallery__image .btn:hover:after {
    opacity: 1
}
html.no-touch .overlay .gallery__image .btn:before {
    border: 2px solid #fff
}
html.no-touch .overlay .gallery__image:hover .btn {
    opacity: .65
}
html.no-touch .overlay .gallery__image:hover .btn:hover {
    opacity: 1
}
html.no-touch .overlay .gallery__image:hover .btn:hover:before, html.no-touch .overlay .gallery__image:hover .btn:hover:after {
    opacity: 1
}
html.no-touch .overlay .gallery__image:hover .btn:hover:before {
    border: 2px solid #fff
}
.overlay .gallery__image .btn.clicked {
    opacity: 1
}
.overlay .gallery--map .gallery__image:after {
    padding-top: 70%
}
.overlay .gallery__caption {
    text-align: center;
    color: #fff;
    padding: .3125rem 1.25rem .625rem 1.25rem
}
.overlay .gallery__caption h3 {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.5rem;
    margin-bottom: .3125rem
}
.overlay .gallery__caption h3 small {
    font-size: 70%;
    position: relative;
    top: -0.0625rem
}
@media(max-width: 743px) {
    .overlay .gallery__caption h3 {
        font-size: 1.125rem;
        line-height: 1.125rem;
        margin-bottom: 0
    }
}
.overlay .gallery__caption p {
    font-size: .8125rem;
    line-height: 1rem;
    color: #999
}
.overlay .gallery__caption p a {
    color: #999;
    text-decoration: underline;
    white-space: nowrap
}
.overlay .gallery__caption p a:hover {
    text-decoration: none
}
.overlay .gallery__thumbs:after {
    content: "";
    display: table;
    clear: both
}
.overlay .gallery__thumbs a {
    width: 14.2857%;
    display: inline-block;
    position: relative;
    overflow: hidden;
    float: left
}
.overlay .gallery__thumbs a:before {
    content: "";
    display: block;
    padding-top: 62.5%;
    position: relative;
    z-index: 3
}
.overlay .gallery__thumbs a img {
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    opacity: .55;
    transition: opacity .3s
}
@media screen and (min-width: 0px) {
    .overlay .gallery__thumbs a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center
    }
}
.overlay .gallery__thumbs a.active:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    border: 2px solid #006400
}
.overlay .gallery__thumbs a.active img, .overlay .gallery__thumbs a:hover img {
    opacity: .95
}
.overlay .gallery__thumbs a:not(.active)+a:not(.active):after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    border-left: 1px solid #000
}
@media(max-width: 743px) {
    .overlay .gallery__thumbs a {
        width: 20%
    }
}
.map.map--page {
    height: 100%
}
@media(max-width: 743px) {
    .overlay--gallery {
        background-color: #fff;
        padding-top: 0;
        transition: top 0s ease-out
    }
    .overlay--gallery .overlay__header {
        transition: top 0s ease-out;
        background-color: rgba(0, 0, 0, 0);
        width: 1.875rem;
        right: 0;
        box-shadow: none
    }
    .overlay--gallery .overlay__header h4 {
        display: none
    }
    .overlay--gallery .overlay__header a.close {
        border: 0;
        right: .5rem;
        top: .5rem;
        width: 3rem;
        height: 3rem;
        background: rgba(0, 0, 0, 0);
        display: flex;
        align-items: center;
        justify-content: center
    }
    .overlay--gallery .overlay__header a.close:hover {
        border: 0 !important
    }
    .overlay--gallery .overlay__header a.close i {
        position: relative;
        width: 2rem;
        left: 0;
        margin-left: 0;
        top: 0;
        margin-top: 0;
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey.svg")
    }
}
@media(max-width: 743px)and (-webkit-min-device-pixel-ratio: 2), (max-width: 743px)and (min-resolution: 192dpi) {
    .overlay--gallery .overlay__header a.close i {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey.svg")
    }
}
@media(max-width: 743px) {
    .overlay--gallery .gallery {
        background-color: rgba(0, 0, 0, 0)
    }
    .overlay--gallery .gallery__caption {
        color: #444
    }
    .overlay--gallery .gallery.mobile-landscape {
        margin: 0 auto;
        top: 0 !important;
        left: 0;
        transform: none;
        overflow: hidden;
        height: 100%
    }
    .overlay--gallery .gallery.mobile-landscape .gallery__image {
        margin: 0 auto;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%)
    }
    .overlay--gallery .gallery.mobile-landscape .gallery__image .btn {
        color: #666;
        width: 5rem
    }
    .overlay--gallery .gallery.mobile-landscape .gallery__image .btn:after {
        color: #fff;
        text-shadow: 0px 0px 5px #222
    }
    .overlay--gallery .gallery.mobile-landscape .gallery__caption {
        display: none
    }
    .overlay--gallery .gallery.mobile-landscape h3 {
        margin-bottom: 0
    }
    .overlay--gallery .gallery.mobile-landscape+.gallery__count {
        color: #fff;
        text-shadow: 0px 0px 5px #222
    }
    .overlay--gallery .gallery__count {
        font-size: 1.125rem;
        position: absolute;
        top: .3125rem;
        left: .625rem
    }
    .overlay--gallery .gallery__count small {
        font-size: .75rem;
        position: relative;
        top: -0.125rem
    }
}
@media(max-width: 743px)and (orientation: landscape) {
    .overlay--gallery .overlay__header a.close {
        right: 0;
        background: rgba(0, 0, 0, .25)
    }
    .overlay--gallery .overlay__header a.close i.sbi {
        filter: brightness(0) invert(1)
    }
}
@media(max-width: 430px)and (orientation: portrait) {
    .gallery__preview--row a div {
        height: 3.75rem
    }
    .gallery__preview--row a.more-photos div:before {
        height: 100%
    }
}
.list--harmonica h3 {
    display: block;
    color: #0378a0;
    font-size: 1rem;
    padding: .875rem .875rem .875rem 3.75rem;
    border-bottom: 1px solid #d9d9d9;
    position: relative
}
.list--harmonica h3:nth-child(1) {
    border-top: 1px solid #d9d9d9
}
.list--harmonica h3 span {
    font-weight: 400;
    font-size: .875rem
}
.list--harmonica h3:before {
    content: "";
    width: 0;
    height: 0;
    border-top: 6px solid rgba(0, 0, 0, 0);
    border-bottom: 6px solid rgba(0, 0, 0, 0);
    border-left: 6px solid #006400;
    display: block;
    position: absolute;
    top: 1.1875rem;
    left: 1.25rem;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg)
}
.list--harmonica h3:after {
    content: "";
    width: 0;
    height: 100%;
    border-right: 1px solid #d9d9d9;
    position: absolute;
    top: 0;
    left: 2.8125rem
}
.list--harmonica h3:hover {
    text-decoration: underline
}
.list--harmonica .harmonica-block {
    display: block;
    padding: .625rem 1.25rem 1.25rem 1.25rem;
    border-bottom: 1px solid #d9d9d9
}
.list--harmonica .harmonica-block.job {
    padding-bottom: 0
}
.list--harmonica .harmonica-block h4 {
    font-size: 1rem;
    margin-top: .625rem
}
.list--harmonica .harmonica-block p {
    padding-top: .625rem;
    padding-bottom: 1.25rem
}
.list--harmonica .harmonica-block.fixed {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    border-bottom: 0
}
.list--harmonica .harmonica-block.fixed+h3 {
    border-top: 1px solid #d9d9d9
}
.list--harmonica .harmonica-block.fixed p.single-p {
    padding-bottom: 0
}
.list--harmonica .harmonica-block li .sbi:not(.sbi--star) {
    position: relative;
    top: .4375rem;
    margin-right: .625rem
}
.list--harmonica.js-enabled h3 {
    cursor: pointer
}
.list--harmonica.js-enabled h3:before {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg)
}
.list--harmonica.js-enabled h3.open:before {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg)
}
.list--harmonica.js-enabled .harmonica-block:not(.fixed) {
    display: none
}
h2.with-icon, h3.with-icon {
    position: relative
}
h2.with-icon span, h3.with-icon span {
    padding-left: 1.8125rem
}
h2 i, h3 i {
    position: absolute;
    top: -0.0625rem;
    left: 0;
    margin-right: .3125rem
}
h2 i.sb-green, h3 i.sb-green {
    color: #2a7018
}
h2 i.sb-red, h3 i.sb-red {
    color: #006400
}
h2.with-icon i {
    width: 1.25rem;
    top: 0
}
h5 {
    font-size: .875rem
}
.metabox h5 {
    margin-bottom: .625rem
}
a.help:not(.textual):not(.numberinput) {
    display: inline-block;
    overflow: hidden;
    width: 1rem;
    height: 1rem;
    position: absolute;
    margin-left: .25rem;
    margin-top: .1875rem;
    float: left;
    cursor: default;
    line-height: 1rem
}
a.help:not(.textual):not(.numberinput):before {
    content: "";
    width: 1rem;
    height: 1rem;
    position: relative;
    top: 0;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center;
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/info.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    a.help:not(.textual):not(.numberinput):before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/info@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info.svg")
    }
}
a.wildlife, a.help.textonly {
    white-space: nowrap
}
.help--text {
    appearance: none;
    border: 0;
    background: 0;
    width: auto !important;
    height: auto !important;
    color: inherit;
    text-decoration: underline dotted;
    position: relative !important;
    cursor: default;
    float: none !important;
    display: inline !important;
    margin: 0 !important;
    line-height: inherit !important
}
.help--text:before {
    content: none !important
}
.help--text:hover {
    text-decoration: underline dotted !important
}
.help-balloon {
    display: none;
    position: absolute;
    background-color: #fefdf9;
    color: #444;
    padding: .5rem;
    text-align: left;
    border: 1px solid #f6d89a;
    box-shadow: 0 0 .4375rem silver;
    z-index: 38;
    font-size: .8125rem;
    line-height: 1rem
}
.help-balloon:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: .5625rem;
    background: rgba(0, 0, 0, 0)
}
.help-balloon--doc {
    background-color: #fff;
    border-color: #fff
}
.help-balloon--doc i:before {
    border-top-color: #e9e9e9 !important;
    border-bottom-color: #e9e9e9 !important
}
.help-balloon .balloon-content {
    min-width: 1.25rem;
    min-height: 1.0625rem;
    position: relative
}
.help-balloon .balloon-content ul.list--icon {
    margin-left: 0;
    margin-top: 0;
    margin-bottom: .9375rem
}
.help-balloon .balloon-content ul.list--icon:last-of-type {
    margin-bottom: 0
}
.help-balloon .balloon-content--overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1.5625rem .625rem .3125rem;
    line-height: 1.25rem;
    color: #fff;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
}
.help-balloon .balloon-content--overlay span {
    position: absolute;
    right: .625rem;
    display: inline-block
}
.help-balloon .balloon-content--overlay span:before {
    content: "";
    display: inline-block;
    width: .625rem;
    height: .625rem;
    background-color: #0a8b05;
    border-radius: 50%;
    margin-right: .3125rem;
    position: relative;
    top: .0625rem
}
.help-balloon .balloon-content--overlay span.lightgreen:before {
    background-color: #5ab657
}
.help-balloon .balloon-content--overlay span.red:before {
    background-color: #d83a39
}
.help-balloon .balloon-content--overlay span.orange:before {
    background-color: #f8a909
}
.help-balloon .balloon-content--overlay span.grey:before {
    background-color: #999
}
.help-balloon.with-ratetable {
    max-width: 31.25rem
}
.help-balloon.wide {
    max-width: 43.75rem
}
.help-balloon .help-close-container {
    padding: 8px;
    position: relative;
    margin-top: -16px;
    margin-right: -8px;
    float: right;
    top: 8px;
    cursor: pointer;
    background: rgba(0, 0, 0, 0);
    border: 0
}
.help-balloon .help-close-container.with-image {
    position: absolute;
    margin: 0;
    top: 0;
    right: 0;
    float: none
}
.help-balloon .help-close-container .help-close {
    display: block;
    background-color: #666;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: .1875rem
}
.help-balloon .help-close-container .help-close i.sbi {
    width: .625rem;
    height: .625rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%)
}
.help-balloon i:not(.sbi) {
    position: absolute;
    top: 0;
    left: 50%
}
.help-balloon i:not(.sbi):before {
    content: "";
    width: 0;
    height: 0;
    border-left: 7px solid rgba(0, 0, 0, 0);
    border-right: 7px solid rgba(0, 0, 0, 0);
    border-bottom: 7px solid #f6d89a;
    position: absolute;
    top: -7px;
    left: 50%;
    margin-left: -7px
}
.help-balloon i:not(.sbi):after {
    content: "";
    width: 0;
    height: 0;
    border-left: 5px solid rgba(0, 0, 0, 0);
    border-right: 5px solid rgba(0, 0, 0, 0);
    border-bottom: 5px solid #fefdf9;
    position: absolute;
    top: -5px;
    left: 50%;
    margin-left: -5px
}
.help-balloon.align-right i {
    top: 50%;
    left: 0
}
.help-balloon.align-right i:before {
    border-top: 7px solid rgba(0, 0, 0, 0);
    border-bottom: 7px solid rgba(0, 0, 0, 0);
    border-right: 7px solid #f6d89a;
    border-left: none
}
.help-balloon.align-right i:after {
    border-top: 5px solid rgba(0, 0, 0, 0);
    border-bottom: 5px solid rgba(0, 0, 0, 0);
    border-right: 5px solid #fefdf9;
    border-left: none
}
.help-balloon.align-left i {
    top: 50%;
    left: unset;
    right: 7px
}
.help-balloon.align-left i:before {
    border-top: 7px solid rgba(0, 0, 0, 0);
    border-bottom: 7px solid rgba(0, 0, 0, 0);
    border-left: 7px solid #f6d89a;
    border-right: none;
    right: 0;
    margin-left: 7px
}
.help-balloon.align-left i:after {
    border-top: 5px solid rgba(0, 0, 0, 0);
    border-bottom: 5px solid rgba(0, 0, 0, 0);
    border-left: 5px solid #fefdf9;
    border-right: none;
    right: 0;
    margin-left: 7px
}
.help-balloon .doc-image-preview {
    width: 100%
}
.help-balloon img {
    float: left
}
.help-balloon .rate-expl-balloon td {
    padding: 0 .3125rem .25rem
}
.help-balloon .rate-expl-balloon td.border-top {
    border-top: 1px solid #d9d9d9;
    padding-top: .25rem
}
.help-balloon .rate-expl-balloon tr:nth-child(1) td {
    padding-bottom: .625rem
}
.help-balloon span.divider {
    color: #999
}
.help-balloon span.copied {
    display: none;
    color: #6fa838
}
.help-balloon--above:before {
    bottom: auto;
    top: 100%
}
.help-balloon--above i:not(.sbi) {
    top: 100%
}
.help-balloon--above i:not(.sbi):before {
    border-top: 7px solid #f6d89a;
    border-bottom: 0;
    top: auto;
    bottom: -7px
}
.help-balloon--above i:not(.sbi):after {
    border-top: 5px solid #fefdf9;
    border-bottom: 0;
    top: auto;
    bottom: -5px
}
.help-balloon--light {
    background-color: #fff;
    border-color: #d6d6d6;
    padding: .6875rem .875rem .5rem;
    font-size: .875rem
}
.help-balloon--light i:not(.sbi):before {
    border-bottom-color: #d6d6d6
}
.help-balloon--light i:not(.sbi):after {
    border-bottom-color: #fff
}
.help-balloon--light.help-balloon--above i:not(.sbi):before {
    border-top-color: #d6d6d6
}
.help-balloon--light.help-balloon--above i:not(.sbi):after {
    border-top-color: #fff
}
.help-balloon--light .list--icon li {
    padding-left: 1.5rem
}
.help-balloon__heading {
    display: block;
    font-weight: bold;
    padding: .3125rem 0 .5625rem .5rem
}
@media(min-width: 970px) {
    .help-balloon--light .list--icon li {
        padding-left: 1.25rem
    }
    .help-balloon--light .list--icon li:before {
        left: .4375rem
    }
}
.sbi {
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center
}
.sbi:before {
    content: "";
    padding-top: 100%;
    display: block
}
.sbi--halfop {
    opacity: .5
}
.sbi--180deg {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}
.sbi--small {
    width: 1.125rem
}
.sbi--xmedium {
    width: 1.25rem
}
.sbi--medium {
    width: 1.5rem
}
.sbi--large {
    width: 2rem
}
.sbi--add {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/add.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/add.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--add {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/add@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/add.svg")
    }
}
.sbi--africa {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/africa.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/africa.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--africa {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/africa@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/africa.svg")
    }
}
.sbi--alert {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--alert {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert.svg")
    }
}
.sbi--alert-yellow {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--alert-yellow {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow.svg")
    }
}
.sbi--alert-new {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert-new.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert-new.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--alert-new {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert-new@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert-new.svg")
    }
}
.sbi--alert-yellow-new {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow-new.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow-new.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--alert-yellow-new {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow-new@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/alert-yellow-new.svg")
    }
}
.sbi--altitude {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/altitude.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/altitude.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--altitude {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/altitude@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/altitude.svg")
    }
}
.sbi--arrow-r {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/arrow-r.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-r.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--arrow-r {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/arrow-r@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-r.svg")
    }
}
.sbi--arrow-down-green {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-green.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-green.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--arrow-down-green {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-green@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-green.svg")
    }
}
.sbi--arrow-down-red {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--arrow-down-red {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/arrow-down-red.svg")
    }
}
.sbi--avatar-female {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/avatar-female.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/avatar-female.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--avatar-female {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/avatar-female@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/avatar-female.svg")
    }
}
.sbi--avatar-male {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/avatar-male.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/avatar-male.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--avatar-male {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/avatar-male@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/avatar-male.svg")
    }
}
.sbi--avatar-unisex {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/avatar-unisex.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/avatar-unisex.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--avatar-unisex {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/avatar-unisex@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/avatar-unisex.svg")
    }
}
.sbi--best-time {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/best-time.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/best-time.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--best-time {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/best-time@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/best-time.svg")
    }
}
.sbi--best-time-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/best-time-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/best-time-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--best-time-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/best-time-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/best-time-white.svg")
    }
}
.sbi--best-weather {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/best-weather.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/best-weather.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--best-weather {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/best-weather@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/best-weather.svg")
    }
}
.sbi--calendar {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/calendar.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/calendar.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--calendar {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/calendar@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/calendar.svg")
    }
}
.sbi--checkmark {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--checkmark {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
    }
}
.sbi--checkmark-red {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--checkmark-red {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.svg")
    }
}
.sbi--checkmark-blue {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--checkmark-blue {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue.svg")
    }
}
.sbi--copy-blue {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/copy-blue.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/copy-blue.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--copy-blue {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/copy-blue@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/copy-blue.svg")
    }
}
.sbi--copy-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/copy-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/copy-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--copy-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/copy-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/copy-white.svg")
    }
}
.sbi--clear {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/clear.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/clear.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--clear {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/clear@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/clear.svg")
    }
}
.sbi--cross {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--cross {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross.svg")
    }
}
.sbi--cross-grey {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--cross-grey {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/cross-grey.svg")
    }
}
.sbi--desktop {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/desktop.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/desktop.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--desktop {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/desktop@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/desktop.svg")
    }
}
.sbi--dislike {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dislike.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dislike.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--dislike {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dislike@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dislike.svg")
    }
}
.sbi--document {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/document.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/document.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--document {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/document@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/document.svg")
    }
}
.sbi--document-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/document-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/document-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--document-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/document-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/document-white.svg")
    }
}
.sbi--dollar-big {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--dollar-big {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big.svg")
    }
}
.sbi--dollar-big-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--dollar-big-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dollar-big-white.svg")
    }
}
.sbi--edit {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/edit.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/edit.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--edit {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/edit@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/edit.svg")
    }
}
.sbi--envelope {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/envelope.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/envelope.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--envelope {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/envelope@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/envelope.svg")
    }
}
.sbi--euro-big {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/euro-big.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/euro-big.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--euro-big {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/euro-big@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/euro-big.svg")
    }
}
.sbi--euro-big-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/euro-big-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/euro-big-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--euro-big-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/euro-big-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/euro-big-white.svg")
    }
}
.sbi--euro-small {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/euro-small.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/euro-small.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--euro-small {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/euro-small@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/euro-small.svg")
    }
}
.sbi--expand {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/expand.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/expand.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--expand {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/expand@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/expand.svg")
    }
}
.sbi--filter {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/filter.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/filter.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--filter {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/filter@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/filter.svg")
    }
}
.sbi--flag {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/flag.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/flag.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--flag {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/flag@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/flag.svg")
    }
}
.sbi--full-screen {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/full-screen.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/full-screen.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--full-screen {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/full-screen@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/full-screen.svg")
    }
}
.sbi--hamburger-icon {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/hamburger-icon.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/hamburger-icon.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--hamburger-icon {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/hamburger-icon@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/hamburger-icon.svg")
    }
}
.sbi--heart {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/heart.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--heart {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/heart@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart.svg")
    }
}
.sbi--heart-red {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/heart-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--heart-red {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/heart-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-red.svg")
    }
}
.sbi--high-season {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/high-season.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/high-season.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--high-season {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/high-season@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/high-season.svg")
    }
}
.sbi--high-season-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/high-season-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/high-season-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--high-season-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/high-season-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/high-season-white.svg")
    }
}
.sbi--info {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/info.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--info {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/info@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info.svg")
    }
}
.sbi--info-red {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/info-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--info-red {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/info-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info-red.svg")
    }
}
.sbi--like {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/like.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/like.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--like {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/like@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/like.svg")
    }
}
.sbi--link {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/link.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/link.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--link {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/link@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/link.svg")
    }
}
.sbi--low-season {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/low-season.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/low-season.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--low-season {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/low-season@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/low-season.svg")
    }
}
.sbi--map-pin {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/map-pin.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/map-pin.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--map-pin {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/map-pin@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/map-pin.svg")
    }
}
.sbi--medal {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/medal.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/medal.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--medal {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/medal@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/medal.svg")
    }
}
.sbi--medal-silver {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/medal-silver.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/medal-silver.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--medal-silver {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/medal-silver@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/medal-silver.svg")
    }
}
.sbi--medal-bronze {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/medal-bronze.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/medal-bronze.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--medal-bronze {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/medal-bronze@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/medal-bronze.svg")
    }
}
.sbi--minus {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/minus.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/minus.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--minus {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/minus@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/minus.svg")
    }
}
.sbi--mobile {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/mobile.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/mobile.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--mobile {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/mobile@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/mobile.svg")
    }
}
.sbi--photo {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/photo.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/photo.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--photo {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/photo@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/photo.svg")
    }
}
.sbi--photos {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/photos.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/photos.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--photos {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/photos@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/photos.svg")
    }
}
.sbi--play-button-large {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/play-button-large.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/play-button-large.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--play-button-large {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/play-button-large@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/play-button-large.svg")
    }
}
.sbi--play-button-small {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/play-button-small.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/play-button-small.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--play-button-small {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/play-button-small@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/play-button-small.svg")
    }
}
.sbi--plus {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/plus.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/plus.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--plus {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/plus@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/plus.svg")
    }
}
.sbi--plus-blue {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/plus-blue.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/plus-blue.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--plus-blue {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/plus-blue@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/plus-blue.svg")
    }
}
.sbi--pound-big {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/pound-big.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/pound-big.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--pound-big {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/pound-big@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/pound-big.svg")
    }
}
.sbi--pound-big-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/pound-big-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/pound-big-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--pound-big-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/pound-big-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/pound-big-white.svg")
    }
}
.sbi--search {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/search.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/search.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--search {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/search@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/search.svg")
    }
}
.sbi--search-grey {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/search-grey.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/search-grey.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--search-grey {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/search-grey@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/search-grey.svg")
    }
}
.sbi--share {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/share.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/share.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--share {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/share@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/share.svg")
    }
}
.sbi--share-red {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/share-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/share-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--share-red {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/share-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/share-red.svg")
    }
}
.sbi--size {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/size.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/size.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--size {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/size@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/size.svg")
    }
}
.sbi--travelers {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/travelers.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/travelers.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--travelers {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/travelers@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/travelers.svg")
    }
}
.sbi--usp-grey {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/usp-grey.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/usp-grey.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--usp-grey {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/usp-grey@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/usp-grey.svg")
    }
}
.sbi--usp-red {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/usp-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/usp-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--usp-red {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/usp-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/usp-red.svg")
    }
}
.sbi--weather {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/weather.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/weather.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--weather {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/weather@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/weather.svg")
    }
}
.sbi--worst-weather {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/worst-weather.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/worst-weather.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--worst-weather {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/worst-weather@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/worst-weather.svg")
    }
}
.sbi--zoom {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--zoom {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom.svg")
    }
}
.sbi--zoom-blue {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-blue.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-blue.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--zoom-blue {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-blue@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-blue.svg")
    }
}
.sbi--zoom-white {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--zoom-white {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.svg")
    }
}
.sbi--avatar-large {
    width: 3.125rem
}
.sbi--calendar-blue {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/calendar-blue.svg")
}
.sbi--checkmark-green {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-green.svg")
}
.sbi--checkmark-white {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-white.svg")
}
.sbi--checkmark-green-thin {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-green-thin.svg")
}
.sbi--checkmark-white-thin {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-white-thin.svg")
}
.sbi--dollar-small {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dollar.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dollar.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--dollar-small {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/dollar@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/dollar.svg")
    }
}
.sbi--heart-white {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-white.svg")
}
.sbi--heart-white-op {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-op.svg")
}
.sbi--heart-white-fill {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-fill.svg")
}
.sbi--heart-white-redfill {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-redfill.svg")
}
.sbi--heart-circled-white {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-circled-white.svg")
}
.sbi--info-blue {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/info-blue.svg")
}
.sbi--map-pin-blue {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/map-pin-blue.svg")
}
.sbi--nophoto {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/nophoto.svg")
}
.sbi--photo-white {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/photo-white.svg")
}
.sbi--pound-small {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/pound.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/pound.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--pound-small {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/pound@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/pound.svg")
    }
}
.sbi--star {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-full.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-full.svg");
    background-size: 105%
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--star {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-full@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-full.svg")
    }
}
.sbi--starbig {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-full.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-full.svg");
    width: 1.5rem;
    background-size: 105%
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--starbig {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-full@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-full.svg")
    }
}
.sbi--starhalf {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-half.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-half.svg");
    background-size: 105%
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--starhalf {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-half@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-half.svg")
    }
}
.sbi--starempty, .sbi--starcontrastempty {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-no.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-no.svg");
    background-size: 105%
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--starempty, .sbi--starcontrastempty {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-no@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-no.svg")
    }
}
.sbi--starcontrast {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-full-nb.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-full-nb.svg");
    background-size: 105%
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--starcontrast {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-full-nb@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-full-nb.svg")
    }
}
.sbi--starcontrasthalf {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-half.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-half.svg");
    background-size: 105%
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .sbi--starcontrasthalf {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/star-half@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/star-half.svg")
    }
}
.sbi--trash {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/trash.svg")
}
.sbi--untrash {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/untrash.svg")
}
.sbi--usp-green {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/usp-green.svg")
}
.sbi--usp-green-thin {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/usp-green-thin.svg")
}
.sbi--hoverhide, .sbi--hovershow {
    transition: opacity .2s ease-in-out
}
.sbi--hovershow {
    position: absolute;
    opacity: 0;
    margin-left: -21px !important
}
.sbi--bottom {
    display: inline-block;
    vertical-align: bottom
}
.sbi--middle {
    display: inline-block;
    vertical-align: middle
}
.icon.camera {
    cursor: pointer;
    display: inline-block;
    width: .875rem;
    height: .6875rem;
    border: .0625rem solid #ccc;
    position: relative;
    top: .0625rem;
    margin-left: .3125rem
}
.icon.camera:before {
    width: 2px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    left: 0;
    top: 2px;
    content: "";
    display: block
}
.icon.camera:after {
    width: .4375rem;
    height: .4375rem;
    border-radius: 50%;
    border: 1px solid #ccc;
    position: absolute;
    right: 1px;
    top: 1px;
    display: inline-block;
    content: ""
}
.icon.camera span {
    position: absolute;
    width: 40%;
    height: .125rem;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #fff;
    display: inline-block;
    top: -2px;
    right: 18%
}
.icon.camera:hover {
    border-color: #09c
}
.icon.camera:hover:before {
    background-color: #09c
}
.icon.camera:hover:after {
    border: 1px solid #09c
}
.icon.camera:hover span {
    border-top: 1px solid #09c
}
.icon--listremove {
    width: .875rem !important;
    height: .875rem !important;
    border-radius: .4375rem;
    display: inline-block !important;
    overflow: hidden;
    background-color: #006400;
    position: relative;
    float: right;
    top: .1875rem
}
.icon--listremove i {
    font-size: .875rem;
    line-height: .75rem;
    color: #fff;
    position: absolute;
    top: .0625rem;
    left: 0
}
.icon--listremove:hover {
    background-color: #e48901
}
.sbi--15 {
    width: .9375rem !important;
    height: .9375rem
}
.sbi--withtext {
    margin-right: .1875rem !important;
    vertical-align: baseline
}
.sbi--withtext+.sbi-text {
    font-size: .75rem
}
.icon--h22 {
    display: inline-block;
    height: 1.5rem;
    width: 1.5rem;
    vertical-align: sub;
    position: relative;
    top: .0625rem
}
.icon--h20 {
    display: inline-block;
    height: .9375rem;
    width: auto;
    vertical-align: sub;
    position: relative;
    top: -0.125rem
}
.icon--h20-sec {
    top: -0.0625rem
}
.icon--h18 {
    display: inline-block;
    height: 1.25rem;
    width: 1.25rem;
    vertical-align: sub;
    position: relative;
    top: .0625rem
}
.icon--round {
    display: inline-block;
    width: 1.6875rem;
    line-height: 1.6875rem !important;
    height: 1.6875rem !important;
    border-radius: 50%;
    border: 1px solid #2a7018;
    text-align: center
}
.icon--round i {
    width: .75rem !important;
    display: inline-block;
    vertical-align: middle;
    margin: 0 !important;
    float: none !important;
    position: relative;
    top: -0.125rem
}
.icon--round i.sbi--checkmark-green-thin {
    width: .875rem !important;
    top: -0.1875rem
}
.icon--round-sec {
    border-color: #0378a0
}
.icon--marginright {
    margin-right: .3125rem
}
@media(hover: hover) {
    *:hover>.sbi--hoverhide {
        opacity: 0
    }
    *:hover>.sbi--hovershow {
        opacity: 1
    }
}
.imgpagehead {
    width: 100%;
    max-width: 73.75rem;
    margin: 0 auto;
    position: relative;
    overflow: hidden
}
.imgpagehead picture {
    display: block;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}
.imgpagehead picture:before {
    content: "";
    display: block;
    padding-top: 50%;
    position: relative
}
.imgpagehead img:not(.country-with-flag__flag):not(.video-img) {
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    z-index: 1
}
.imgpagehead__overlay {
    display: none
}
.imgpagehead__overlay {
    width: 100%;
    height: auto;
    position: absolute;
    display: block;
    left: 0;
    bottom: 0;
    text-shadow: 1px 1px 5px #000;
    padding: 3.75rem 1.25rem .9375rem;
    z-index: 3
}
.imgpagehead__overlay, .imgpagehead__overlay h1, .imgpagehead__overlay a {
    color: #fff;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}
.imgpagehead__overlay__sub {
    white-space: nowrap;
    margin-top: .3125rem
}
.imgpagehead__overlay__sub__parklink {
    margin-right: 1.875rem
}
.imgpagehead__overlay__sub__parklink img {
    position: relative;
    top: .0625rem;
    margin-right: .3125rem;
    box-shadow: 0 1px 13px #666
}
.imgpagehead__overlay__sub .stars {
    position: relative;
    top: -0.125rem
}
.imgpagehead__overlay__sub .stars i {
    position: relative;
    top: .0625rem
}
.imgpagehead__overlay__sub .review-score {
    margin-left: .125rem
}
.imgpagehead__overlay__sub a {
    font-size: .875rem;
    text-decoration: underline
}
.imgpagehead__overlay__sub a:hover {
    text-decoration: none !important
}
.imgpagehead__overlay__video {
    background-color: #fff;
    border: 1px solid #fff;
    text-shadow: none;
    margin-top: .625rem;
    max-width: 23.75rem;
    position: relative;
    border-radius: .3125rem;
    transition: box-shadow .2s ease
}
.imgpagehead__overlay__video:hover {
    box-shadow: 0 0 5px #000;
    transition-duration: .25s
}
.imgpagehead__overlay__video .sbi {
    position: absolute;
    top: 1.125rem;
    left: 2.625rem;
    z-index: 1;
    width: 2.5rem
}
.imgpagehead__overlay__video a {
    color: #444;
    text-decoration: underline rgba(0, 0, 0, 0);
    transition: text-decoration .2s ease
}
.imgpagehead__overlay__video a:hover {
    text-decoration: underline #444;
    transition-duration: .25s
}
.imgpagehead__overlay__video a:hover .play-icon {
    text-shadow: 1px 1px 10px #000
}
.imgpagehead__overlay__video img {
    position: relative;
    width: 7.75rem;
    float: left;
    margin-right: 1.25rem;
    transform: none;
    border-radius: calc(0.3125rem - 1px) 0 0 calc(0.3125rem - 1px)
}
.imgpagehead__overlay__video div {
    font-size: .875rem
}
.imgpagehead__overlay__video div.video-overlay {
    min-height: 4.8125rem
}
.imgpagehead__overlay__video div p, .imgpagehead__overlay__video div b {
    position: relative;
    top: .875rem
}
.imgpagehead__overlay__video div p {
    top: 1rem
}
.imgpagehead__overlay__video div .video-time {
    background-color: #000;
    color: #fff;
    font-size: .6875rem;
    display: inline-block;
    padding: 0 .375rem;
    position: absolute;
    top: -0.0625rem;
    right: .625rem
}
.imgpagehead h2.imgpagehead__overlay__sub {
    font-size: 1.25rem
}
.imgpagehead:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2
}
.imgpagehead--parkcountry {
    overflow: visible;
    z-index: 4
}
.imgpagehead--parkcountry:before {
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 0.9) 100%)
}
.imgpagehead--parkcountry .picturediv {
    overflow: hidden;
    position: relative
}
.imgpagehead--parkcountry picture {
    overflow: hidden
}
.imgpagehead--parkcountry picture:before {
    padding-top: 50%
}
.imgpagehead--topratedoperators {
    width: auto;
    height: 9.375rem;
    overflow: hidden
}
.imgpagehead--parkcountry {
    width: auto
}
@media(max-width: 744px) {
    .imgpagehead--tour h1 {
        font-size: 1.625rem;
        line-height: 1.875rem
    }
}
.imgpagehead--tour .save {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    z-index: 3;
    cursor: pointer
}
.imgpagehead--tour .save:hover i {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-redfill.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-redfill.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .imgpagehead--tour .save:hover i {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-redfill@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/heart-white-redfill.svg")
    }
}
.imgpagehead .btn--orange {
    margin-top: .625rem
}
@media(max-width: 414px)and (max-height: 625px)and (orientation: portrait) {
    .imgpagehead--parkcountry .picturediv, .imgpagehead--parkcountry .picturediv picture {
        height: 7.5rem
    }
}
@media screen and (max-width: 743px) {
    .imgpagehead:not(.imgpagehead--parkcountry) .imgpagehead__overlay {
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
    }
}
@media(max-width: 743px) {
    .imgpagehead--parkcountry {
        transition: opacity .2s ease-in-out
    }
    .imgpagehead--parkcountry .imgpagehead__overlay__sub {
        margin-bottom: .3125rem;
        margin-top: .1875rem
    }
    .imgpagehead--parkcountry h1 {
        font-weight: normal;
        font-size: 1.5rem;
        line-height: 1.75rem
    }
    .imgpagehead--parkcountry h1.txt--bold {
        margin-bottom: .0625rem;
        font-size: 1.625rem
    }
    .imgpagehead--parkcountry h2 {
        font-size: 1.625rem;
        line-height: 1.875rem
    }
    .imgpagehead--topratedoperators--menu {
        margin-bottom: .625rem
    }
    .imgpagehead--parkcountry--menu {
        margin-bottom: .625rem
    }
    .imgpagehead--tour {
        transition: opacity .2s ease-in-out
    }
    .imgpagehead-btn {
        position: fixed;
        top: auto;
        bottom: 0;
        width: 100%;
        z-index: 14
    }
}
@media print {
    .imgpagehead picture:before {
        padding-top: 31.25%
    }
    .imgpagehead img:not(.country-with-flag__flag):not(.video-img) {
        width: auto;
        min-width: 100%;
        height: auto;
        min-height: 100%;
        transform: translate(-50%, -50%);
        left: 50%
    }
}
@keyframes onAutoFillStart {}
@keyframes onAutoFillCancel {}
@keyframes check-appear {
    0% {
        stroke-dashoffset: 20
    }
    100% {
        stroke-dashoffset: 40
    }
}
input, select, textarea, button {
    font-size: .9375rem;
    font-family: "Noto Sans", "Arial", sans-serif
}
input.error, select.error, textarea.error, button.error {
    border: 1px solid #b73b3a !important
}
input {
    outline: none
}
input[type=text], input[type=tel], input[type=email], input[type=date], input[type=password], input[type=number], input[type=search], input[type=url] {
    padding: .375rem .625rem;
    line-height: 1.3125rem;
    border: 1px solid #ccc;
    -webkit-appearance: none;
    border-radius: 0
}
input[type=text]:focus, input[type=tel]:focus, input[type=email]:focus, input[type=date]:focus, input[type=password]:focus, input[type=number]:focus, input[type=search]:focus, input[type=url]:focus {
    border: 1px solid #999;
    box-shadow: 0 0 1px #999
}
input[type=text]::-ms-clear, input[type=tel]::-ms-clear, input[type=email]::-ms-clear, input[type=url]::-ms-clear {
    display: none
}
input[type=checkbox], input[type=radio] {
    cursor: pointer;
    position: absolute;
    top: .375rem;
    left: 0;
    -webkit-appearance: none;
    border: 1px solid #999;
    width: 1.25rem;
    height: 1.25rem;
    font-size: 0;
    line-height: calc(1.25rem - 2px);
    background-color: #fff;
    border-radius: .1875rem;
    transition: border-color .2s ease-in-out
}
input[type=checkbox]:not([disabled]):hover, input[type=radio]:not([disabled]):hover {
    cursor: pointer;
    border: 1px solid #006400
}
input[type=checkbox]:before, input[type=radio]:before {
    opacity: 0;
    content: "";
    transition: opacity .2s ease-in-out
}
input[type=checkbox]:checked, input[type=radio]:checked {
    border: 1px solid #006400
}
input[type=checkbox]:checked:before, input[type=radio]:checked:before {
    opacity: 1
}
input[type=checkbox]:focus-visible, input[type=radio]:focus-visible {
    box-shadow: 0 0 0 2px rgba(3, 120, 160, .5)
}
input[type=checkbox].radio--green:not([disabled]):hover, input[type=checkbox].checkbox--green:not([disabled]):hover, input[type=radio].radio--green:not([disabled]):hover, input[type=radio].checkbox--green:not([disabled]):hover {
    border: 1px solid #2a7018
}
input[type=checkbox].radio--green:before, input[type=checkbox].checkbox--green:before, input[type=radio].radio--green:before, input[type=radio].checkbox--green:before {
    color: #2a7018
}
input[type=checkbox].radio--green:checked, input[type=checkbox].checkbox--green:checked, input[type=radio].radio--green:checked, input[type=radio].checkbox--green:checked {
    border: 1px solid #2a7018
}
input[type=checkbox].radio--blue:not([disabled]):hover, input[type=checkbox].checkbox--blue:not([disabled]):hover, input[type=radio].radio--blue:not([disabled]):hover, input[type=radio].checkbox--blue:not([disabled]):hover {
    border: 1px solid #0378a0
}
input[type=checkbox].radio--blue:before, input[type=checkbox].checkbox--blue:before, input[type=radio].radio--blue:before, input[type=radio].checkbox--blue:before {
    color: #0378a0
}
input[type=checkbox].radio--blue:checked, input[type=checkbox].checkbox--blue:checked, input[type=radio].radio--blue:checked, input[type=radio].checkbox--blue:checked {
    border: 1px solid #0378a0
}
input[type=checkbox].input-rel, input[type=radio].input-rel {
    position: relative
}
input[type=checkbox] {
    text-align: center
}
input[type=checkbox]:before {
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center;
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.svg");
    width: .75rem;
    height: .75rem;
    position: relative;
    vertical-align: middle
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    input[type=checkbox]:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.svg")
    }
}
input[type=checkbox].checkbox--green:before {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    input[type=checkbox].checkbox--green:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
    }
}
input[type=checkbox].checkbox--blue:before {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    input[type=checkbox].checkbox--blue:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-blue.svg")
    }
}
input[type=radio] {
    position: relative;
    border-radius: .625rem;
    top: .3125rem;
    margin-right: .625rem
}
input[type=radio]:before {
    content: "";
    top: .25rem;
    left: .25rem;
    width: .625rem;
    height: .625rem;
    border-radius: .3125rem;
    background-color: #006400;
    display: block;
    position: relative
}
input[type=radio].radio--green:before {
    background-color: #2a7018
}
input[type=radio].radio--blue:before {
    background-color: #0378a0
}
input[type=number].enhance, input[type=url].enhance {
    -webkit-appearance: none;
    -moz-appearance: textfield;
    margin: 0;
    display: inline-block;
    letter-spacing: .06875rem
}
input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none
}
input[placeholder]::-webkit-input-placeholder {
    font-style: italic;
    color: silver
}
input[placeholder]::-moz-placeholder {
    font-style: italic;
    color: silver
}
input[placeholder]:-ms-input-placeholder {
    font-style: italic;
    color: silver
}
input[placeholder]:-moz-placeholder {
    font-style: italic;
    color: silver
}
.input--fullwidth {
    min-width: 0 !important;
    width: 100% !important
}
.input--fauxtext {
    border: 0 !important;
    padding: 0 !important;
    display: inline
}
textarea {
    outline: none;
    overflow: auto;
    resize: vertical;
    padding: .25rem .625rem;
    border: 1px solid #ccc
}
textarea:focus {
    border: 1px solid #999;
    box-shadow: 0 0 1px #999
}
select {
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    border: 1px solid #999;
    background-color: rgba(0, 0, 0, 0);
    color: #f2f2f2;
    border-radius: 0;
    padding: .3125rem .5rem;
    cursor: pointer;
    line-height: 1.4375rem
}
select.select {
    font-size: 1rem
}
.select--holder {
    margin-bottom: 1.25rem;
    position: relative;
    background-color: #fff
}
.select--holder:before {
    content: "";
    width: 0;
    height: 0;
    border-left: 6px solid rgba(0, 0, 0, 0);
    border-right: 6px solid rgba(0, 0, 0, 0);
    border-top: 6px solid #999;
    position: absolute;
    right: .875rem;
    top: .8125rem;
    z-index: 3;
    pointer-events: none
}
.select--holder select {
    z-index: 2;
    position: relative
}
.select--holder .select {
    color: #444
}
.select--holder:hover:not(.select--holder-sec):before {
    border-top-color: #fff
}
.select--holder+p {
    padding-left: 1.25rem;
    display: inline-block;
    padding-top: .1875rem
}
.select--holder-sec select {
    border-color: #ccc
}
.select--holder-sec select:focus {
    border-color: #999
}
.select--holder--nomargin {
    margin-bottom: 0
}
.select--holder--125 {
    width: 7.8125rem !important;
    background: none
}
.select--holder--300 {
    width: 18.75rem !important;
    margin-top: .3125rem;
    margin-bottom: .3125rem !important
}
.numberinput_enhanced {
    display: inline-block;
    height: 2.625rem;
    width: 8.125rem;
    position: absolute;
    float: right
}
.numberinput_enhanced input {
    height: 2.625rem;
    border-radius: 0;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1rem;
    font-weight: 600;
    border: 1px solid #d9d9d9;
    line-height: 2.1875rem;
    text-align: center;
    width: 8.125rem;
    cursor: default
}
.numberinput_enhanced input:focus {
    border: 1px solid #d9d9d9;
    box-shadow: 0px 0px 0px #000
}
a.numberinput {
    position: absolute;
    width: 2.5rem;
    height: 2.5rem;
    outline: inherit !important;
    background-color: #f2fafc;
    color: #048cba !important;
    font-weight: 600;
    line-height: 2.25rem;
    text-align: center;
    display: inline-block;
    cursor: pointer;
    z-index: 2;
    font-size: 1.375rem;
    -webkit-touch-callout: none;
    user-select: none;
    top: .0625rem;
    left: .0625rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none
}
a.numberinput__plus {
    border-left: 1px solid #d9d9d9;
    left: auto;
    right: .0625rem
}
a.numberinput__min {
    border-right: 1px solid #d9d9d9;
    line-height: 2.125rem;
    font-size: 1.5625rem
}
a.numberinput.inactive {
    background-color: #f2f2f2;
    color: #ccc !important;
    cursor: default
}
a.numberinput:hover {
    text-decoration: none !important
}
input[type=checkbox].switch {
    display: none
}
input[type=checkbox].switch~.switch-label, input[type=checkbox].switch~* .switch-label {
    position: relative;
    display: block;
    font-size: 0;
    width: 5.5rem;
    height: 2.25rem;
    border-radius: 1.125rem;
    background: #fff;
    border: 1px solid #ccc;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .15s ease;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none
}
input[type=checkbox].switch:checked~.switch-label, input[type=checkbox].switch:checked~* .switch-label {
    background: #d1e9d4
}
input[type=checkbox].switch:checked~.switch-label .switch__text--inactive, input[type=checkbox].switch:checked~.switch-label .switch__icon--inactive, input[type=checkbox].switch:checked~* .switch-label .switch__text--inactive, input[type=checkbox].switch:checked~* .switch-label .switch__icon--inactive {
    opacity: 0
}
input[type=checkbox].switch:checked~.switch-label .switch__text--active, input[type=checkbox].switch:checked~.switch-label .switch__icon--active, input[type=checkbox].switch:checked~* .switch-label .switch__text--active, input[type=checkbox].switch:checked~* .switch-label .switch__icon--active {
    opacity: 1
}
input[type=checkbox].switch:checked~.switch-label .switch__inner, input[type=checkbox].switch:checked~* .switch-label .switch__inner {
    transform: translateX(3.25rem)
}
input[type=checkbox].switch:checked~.switch-label .switch__icon--active svg path, input[type=checkbox].switch:checked~* .switch-label .switch__icon--active svg path {
    animation: check-appear .25s .25s ease-in forwards
}
.switch__inner {
    content: "";
    position: absolute;
    top: .1875rem;
    left: .1875rem;
    background: #fff;
    border: 1px solid #999;
    border-radius: 50%;
    width: 1.75rem;
    height: 1.75rem;
    transition: transform .15s cubic-bezier(0, 0, 0.5, 1.5)
}
.switch__icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}
.switch__icon svg {
    display: block;
    height: .75rem
}
.switch__icon svg path {
    stroke-dasharray: 20;
    stroke-dashoffset: 20
}
.switch__icon--inactive svg {
    height: .625rem
}
.switch__icon--inactive svg path {
    stroke: #999;
    stroke-dashoffset: 40
}
.switch__icon--active {
    opacity: 0
}
.switch__icon--active svg path {
    stroke: #2a7018
}
.switch__text {
    display: inline-block;
    font-size: .875rem;
    font-weight: 600;
    width: 50%;
    transition: opacity .15s ease
}
.switch__text--active {
    color: #2a7018;
    opacity: 0;
    text-align: right
}
.switch__text--inactive {
    color: #ccc
}
input[type=checkbox].switch--medium~.switch-label, input[type=checkbox].switch--medium~* .switch-label {
    width: 3.5rem;
    height: 1.75rem;
    border-width: 2px
}
input[type=checkbox].switch--medium~.switch-label .switch__inner, input[type=checkbox].switch--medium~* .switch-label .switch__inner {
    top: -2px;
    left: -2px;
    width: 1.75rem;
    height: 1.75rem
}
input[type=checkbox].switch--medium~.switch-label .switch__text, input[type=checkbox].switch--medium~* .switch-label .switch__text {
    font-size: 1.25rem;
    line-height: calc(1.75rem - 4px)
}
input[type=checkbox].switch--medium~.switch-label .switch__icon svg, input[type=checkbox].switch--medium~* .switch-label .switch__icon svg {
    height: .625rem
}
input[type=checkbox].switch--medium~.switch-label .switch__icon--inactive svg, input[type=checkbox].switch--medium~* .switch-label .switch__icon--inactive svg {
    height: .5rem
}
input[type=checkbox].switch--medium:checked~.switch-label .switch__inner, input[type=checkbox].switch--medium:checked~* .switch-label .switch__inner {
    transform: translateX(1.75rem)
}
input[type=checkbox].switch--medium[disabled]~.switch-label, input[type=checkbox].switch--medium[disabled]~* .switch-label {
    width: 1.25rem
}
input[type=checkbox].switch--medium[disabled]:checked~.switch-label .switch__icon svg, input[type=checkbox].switch--medium[disabled]:checked~* .switch-label .switch__icon svg {
    height: .75rem
}
input[type=checkbox].switch--small~.switch-label, input[type=checkbox].switch--small~* .switch-label {
    width: 2.5625rem;
    height: 1.25rem;
    border-width: 1px
}
input[type=checkbox].switch--small~.switch-label .switch__inner, input[type=checkbox].switch--small~* .switch-label .switch__inner {
    top: -1px;
    left: -1px;
    width: 1.25rem;
    height: 1.25rem;
    border-width: 1px
}
input[type=checkbox].switch--small~.switch-label .switch__text, input[type=checkbox].switch--small~* .switch-label .switch__text {
    font-size: .8125rem;
    line-height: calc(1.25rem - 2px)
}
input[type=checkbox].switch--small~.switch-label .switch__icon svg, input[type=checkbox].switch--small~* .switch-label .switch__icon svg {
    height: .525rem
}
input[type=checkbox].switch--small~.switch-label .switch__icon--inactive svg, input[type=checkbox].switch--small~* .switch-label .switch__icon--inactive svg {
    height: .4375rem
}
input[type=checkbox].switch--small:checked~.switch-label .switch__inner, input[type=checkbox].switch--small:checked~* .switch-label .switch__inner {
    transform: translateX(1.3125rem)
}
input[type=checkbox].switch--small[disabled]~.switch-label, input[type=checkbox].switch--small[disabled]~* .switch-label {
    width: 1.25rem
}
input[type=checkbox].switch--small[disabled]:checked~.switch-label .switch__icon svg, input[type=checkbox].switch--small[disabled]:checked~* .switch-label .switch__icon svg {
    height: .625rem
}
input[type=checkbox].switch--sec~.switch-label, input[type=checkbox].switch--sec~* .switch-label {
    border-color: #999;
    background-color: #efefef
}
input[type=checkbox].switch--sec~.switch-label .switch__inner, input[type=checkbox].switch--sec~* .switch-label .switch__inner {
    border-color: #444
}
input[type=checkbox].switch--sec~.switch-label .switch__text, input[type=checkbox].switch--sec~* .switch-label .switch__text {
    position: absolute;
    right: calc(100% + 0.3125rem);
    width: auto;
    color: #444
}
input[type=checkbox].switch--sec:checked~.switch-label, input[type=checkbox].switch--sec:checked~* .switch-label {
    border-color: #2a7018;
    background-color: #41922c
}
input[type=checkbox].switch--sec:checked~.switch-label .switch__inner, input[type=checkbox].switch--sec:checked~* .switch-label .switch__inner {
    border-color: #2a7018
}
input[type=checkbox].switch--sec[disabled]~.switch-label, input[type=checkbox].switch--sec[disabled]~* .switch-label {
    cursor: auto
}
input[type=checkbox].switch--sec[disabled]:checked~.switch-label .switch__inner, input[type=checkbox].switch--sec[disabled]:checked~* .switch-label .switch__inner {
    transform: none
}
input[type=checkbox].switch--sec-r~.switch-label .switch__text, input[type=checkbox].switch--sec-r~* .switch-label .switch__text {
    right: auto;
    left: calc(100% + 0.3125rem)
}
.checklist {
    font-size: .8125rem
}
.checklist, .checklist+.error-balloon-container {
    margin: 0 .625rem
}
.checklist+.error-balloon-container {
    transform: translateY(-1.25rem)
}
.checklist__column {
    margin-bottom: 1.25rem
}
label.with-placeholder {
    display: block;
    position: relative
}
label.with-placeholder span.placeholder {
    color: #999;
    position: absolute;
    top: .4375rem;
    left: .6875rem;
    pointer-events: none
}
label.with-placeholder.active span.placeholder {
    font-size: .6875rem;
    top: -0.125rem
}
label.with-placeholder.active input[data-placeholder] {
    padding-top: .625rem;
    padding-bottom: .125rem
}
label.with-placeholder input[data-placeholder]:-webkit-autofill, label.with-placeholder input[placeholder]:-webkit-autofill {
    animation-name: onAutoFillStart
}
label.with-placeholder input[data-placeholder]:not(:-webkit-autofill), label.with-placeholder input[placeholder]:not(:-webkit-autofill) {
    animation-name: onAutoFillCancel
}
input.input-autoheight {
    height: auto
}
.list--operators .list__item a.unavailable {
    pointer-events: none;
    position: relative;
    top: 50px
}
.list--operators .list__item a.unavailable h2 {
    text-decoration: none;
    color: #999
}
.list--operators .list__item a.unavailable .logo-holder {
    top: -50px
}
.list--operators .list__item a.unavailable:hover h2 span:first-child {
    text-decoration: none !important
}
.list--recent-tours .list__item.unavailable {
    cursor: default;
    text-decoration: none !important
}
.list--recent-tours .list__item.unavailable .tourtitle, .list--recent-tours .list__item.unavailable .price {
    color: #999 !important
}
.list--recent-tours .list__item.unavailable img {
    filter: grayscale(1) !important;
    opacity: .5 !important
}
.list--tours .list__item, .list--operators .list__item {
    background-color: #fff;
    margin-bottom: 2.5rem;
    display: block;
    color: #444;
    position: relative;
    text-align: left;
    line-height: 1.25rem;
    transition: box-shadow .2s ease-in-out;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, .18);
    border-radius: .3125rem
}
.list--tours .list__item.deleted, .list--operators .list__item.deleted {
    transform: scale(0)
}
.list--tours .list__item:focus, .list--tours .list__item:active, .list--operators .list__item:focus, .list--operators .list__item:active {
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
.list--tours .list__item.unavailable, .list--tours .list__item.unavailable:hover, .list--operators .list__item.unavailable, .list--operators .list__item.unavailable:hover {
    cursor: default
}
.list--tours .list__item.unavailable h2, .list--tours .list__item.unavailable:hover h2, .list--operators .list__item.unavailable h2, .list--operators .list__item.unavailable:hover h2 {
    text-decoration: none !important;
    opacity: .7 !important
}
.list--tours .list__item.unavailable img, .list--tours .list__item.unavailable .sbi, .list--tours .list__item.unavailable:hover img, .list--tours .list__item.unavailable:hover .sbi, .list--operators .list__item.unavailable img, .list--operators .list__item.unavailable .sbi, .list--operators .list__item.unavailable:hover img, .list--operators .list__item.unavailable:hover .sbi {
    filter: grayscale(1) !important;
    opacity: .5 !important
}
.list--tours .list__item.unavailable .price, .list--tours .list__item.unavailable:hover .price, .list--operators .list__item.unavailable .price, .list--operators .list__item.unavailable:hover .price {
    color: #999
}
.list--tours .list__item.unavailable .unavailable-label, .list--tours .list__item.unavailable:hover .unavailable-label, .list--operators .list__item.unavailable .unavailable-label, .list--operators .list__item.unavailable:hover .unavailable-label {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #000;
    color: #fff;
    z-index: 3;
    font-size: .875rem;
    padding: .625rem 1.25rem
}
.list--tours .list__item .loading, .list--operators .list__item .loading {
    display: none
}
.list--tours .list__item.reload:before, .list--operators .list__item.reload:before {
    z-index: 2;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    background-color: rgba(255, 255, 255, .8);
    position: absolute;
    top: 0;
    left: 0
}
.list--tours .list__item.reload .loading, .list--operators .list__item.reload .loading {
    display: block;
    z-index: 3
}
.list--tours .list__item.reload img, .list--operators .list__item.reload img {
    visibility: hidden
}
.list--tours .list__item.reload .list__item--image__full h2, .list--tours .list__item.reload .list__item--image__full h3, .list--operators .list__item.reload .list__item--image__full h2, .list--operators .list__item.reload .list__item--image__full h3 {
    font-size: 0
}
.list--tours .list__item.reload .list__item--image__full .review-summary--oneline, .list--operators .list__item.reload .list__item--image__full .review-summary--oneline {
    visibility: hidden
}
.list--tours .list__item.reload .favorite-save, .list--tours .list__item.reload .promo, .list--operators .list__item.reload .favorite-save, .list--operators .list__item.reload .promo {
    visibility: hidden
}
.list--tours .list__item.reload .picture-holder .picture-frame, .list--operators .list__item.reload .picture-holder .picture-frame {
    box-shadow: none
}
.list--tours .list__item.reload .picture-holder .picture-frame:before, .list--operators .list__item.reload .picture-holder .picture-frame:before {
    display: none
}
.list--tours .list__item.reload .operator-snippet__data, .list--tours .list__item.reload .score_expl, .list--operators .list__item.reload .operator-snippet__data, .list--operators .list__item.reload .score_expl {
    visibility: hidden
}
.list--tours .list__item.reload .list__item--data p, .list--operators .list__item.reload .list__item--data p {
    display: inline-block;
    position: relative
}
.list--tours .list__item.reload .list__item--data p:after, .list--operators .list__item.reload .list__item--data p:after {
    content: "";
    width: 100%;
    height: 84%;
    background-color: #d9d9d9;
    position: absolute;
    top: 8%;
    left: 0;
    display: block
}
.list--tours .list__item.reload .data-holder h2, .list--tours .list__item.reload .data-holder .review-summary--oneline, .list--tours .list__item.reload .data-holder dd, .list--operators .list__item.reload .data-holder h2, .list--operators .list__item.reload .data-holder .review-summary--oneline, .list--operators .list__item.reload .data-holder dd {
    display: inline-block !important;
    position: relative;
    width: auto
}
.list--tours .list__item.reload .data-holder h2:after, .list--tours .list__item.reload .data-holder .review-summary--oneline:after, .list--tours .list__item.reload .data-holder dd:after, .list--operators .list__item.reload .data-holder h2:after, .list--operators .list__item.reload .data-holder .review-summary--oneline:after, .list--operators .list__item.reload .data-holder dd:after {
    content: "";
    width: 100%;
    height: 98%;
    background-color: #d9d9d9;
    position: absolute;
    top: 1%;
    left: 0;
    display: block
}
.list--tours .list__item.reload .data-holder .review-summary--oneline, .list--operators .list__item.reload .data-holder .review-summary--oneline {
    left: 0
}
.list--tours .list__item.reload .data-holder h2, .list--operators .list__item.reload .data-holder h2 {
    display: block !important
}
.list--tours .list__item.reload .data-holder h2:after, .list--operators .list__item.reload .data-holder h2:after {
    height: 120%;
    top: -10%
}
.list--tours .list__item.reload .logo-holder, .list--operators .list__item.reload .logo-holder {
    border-left: 0
}
.list--tours .list__item.reload div.row, .list--operators .list__item.reload div.row {
    border-top: 0;
    visibility: hidden
}
.list--tours .list__item.empty, .list--operators .list__item.empty {
    background-color: #e9e9e9;
    border: 1px dashed #b3b3b3;
    box-shadow: none !important;
    cursor: default !important
}
.list--tours .list__item.empty .list__item--data, .list--operators .list__item.empty .list__item--data {
    height: 3.1875rem
}
@media(max-width: 969px) {
    .list--tours .list__item.empty .list__item--data, .list--operators .list__item.empty .list__item--data {
        height: 4.125rem
    }
}
.list--tours .list__item.empty .operator-snippet__data, .list--operators .list__item.empty .operator-snippet__data {
    height: 3.5625rem;
    border-top: 0
}
.list--tours .list__item.empty .list__item--image__full, .list--operators .list__item.empty .list__item--image__full {
    background: none !important
}
.list--tours .list__item.empty .btn, .list--operators .list__item.empty .btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    color: #8e8e8e;
    border: 1px solid #bcbcbc;
    border-bottom: 2px solid #bcbcbc;
    text-shadow: none;
    font-size: .875rem;
    cursor: pointer !important
}
.list--tours .list__item.empty .btn:hover, .list--operators .list__item.empty .btn:hover {
    background-color: #e1e1e1
}
.list--tours .list__snippets li.list_tours_operators, .list--operators .list__snippets li.list_tours_operators {
    clear: both;
    padding: 1.25rem 0 3.125rem
}
.list--tours .list__snippets li.list_tours_operators h1.list--title, .list--operators .list__snippets li.list_tours_operators h1.list--title {
    margin-bottom: .625rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets, .list--operators .list__snippets li.list_tours_operators ul.list__snippets {
    margin-top: 1.875rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets .list__item, .list--operators .list__snippets li.list_tours_operators ul.list__snippets .list__item {
    margin-bottom: 1.25rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div {
    position: relative;
    right: auto
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder {
    padding-left: .625rem;
    border-left: 0
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder {
    padding: 1.375rem 0
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2 {
    margin: 0 .625rem 0 0;
    color: #0378a0
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder {
    padding-right: .625rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder img, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder img {
    display: block;
    padding: 1.3125rem .625rem;
    max-height: 5.625rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder {
    padding: 1.25rem 1.25rem .9375rem 0
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2 {
    font-size: 1.25rem;
    display: inline-block;
    margin-right: .625rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2:before, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2:before {
    content: none
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder .review-summary--oneline, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder .review-summary--oneline {
    display: inline-block !important;
    position: relative;
    top: -0.125rem
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder .tourtypes, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder .tourtypes {
    display: block
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li .button-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li .button-holder {
    padding: .9375rem 1.25rem 1.5rem 0
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li .button-holder--spacer, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li .button-holder--spacer {
    clear: both
}
.list--tours .list__snippets li.list_tours_operators ul.list__snippets li .button-holder>a.btn, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li .button-holder>a.btn {
    display: block;
    height: 2.625rem;
    width: 11.875rem;
    text-align: center
}
.list--tours .list__snippets li>h2, .list--operators .list__snippets li>h2 {
    font-size: 1.25rem;
    margin: -0.3125rem 0 1.25rem;
    border-top: 1px solid #ccc;
    padding-top: 1.875rem
}
.list--tours .list__snippets li>h2.list--split, .list--operators .list__snippets li>h2.list--split {
    margin-top: 5rem
}
.list--tours .col, .list--operators .col {
    padding-left: 0;
    padding-right: 0
}
.list--tours a#powered-by-logo, .list--operators a#powered-by-logo {
    float: right;
    color: #444;
    font-size: .75rem;
    position: relative;
    top: .125rem
}
.list--tours a#powered-by-logo img, .list--operators a#powered-by-logo img {
    margin-left: .3125rem;
    width: 9.875rem;
    height: .9375rem;
    position: relative;
    top: .125rem
}
.list--tours a#powered-by-logo:hover, .list--operators a#powered-by-logo:hover {
    text-decoration: none
}
@media(max-width: 743px) {
    .list--tours a#powered-by-logo, .list--operators a#powered-by-logo {
        float: none;
        margin: .9375rem 0;
        left: 50%;
        transform: translateX(-50%);
        position: relative;
        display: inline-block
    }
    .list--tours .btn--affiliate-footer, .list--operators .btn--affiliate-footer {
        width: 100%;
        height: 2.1875rem;
        line-height: 2rem
    }
}
.list--tours .list--title {
    font-size: 1.625rem;
    line-height: 1.875rem
}
.list--tours .list--subtitle {
    color: #666;
    margin-left: 1px;
    margin-top: -1px;
    margin-bottom: 23.5px;
    font-size: .9375rem
}
.list--tours .list__item h2, .list--tours .list__item h3 {
    display: block
}
.list--tours .list__item h2:before, .list--tours .list__item h3:before {
    content: "";
    position: relative;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(transparent 50%, #fff 50%);
    background-repeat: repeat-x
}
.list--tours .list__item--data {
    padding: .3125rem .625rem .625rem;
    position: relative
}
.list--tours .list__item--data p {
    padding: .1875rem 0;
    clear: both
}
.list--tours .list__item--data p.price {
    padding: .4375rem .625rem .4375rem 0;
    display: inline-block
}
.list--tours .list__item--data p.price b {
    font-size: 1.25rem
}
.list--tours .list__item--data p b {
    padding: 0;
    margin: 0;
    display: inline
}
.list--tours .list__item--data p span:not(.nowrap) {
    color: #999
}
.list--tours .list__item--data p sup {
    font-size: 1.875rem;
    line-height: .0625rem;
    font-weight: 600;
    position: relative;
    top: .375rem
}
.list--tours .list__item .visit.dsh em {
    display: none
}
.list--tours .list__item .desc span {
    width: 1.25rem;
    display: inline-block;
    height: 1.25rem;
    position: relative;
    margin-top: -0.25rem
}
.list--tours .list__item .desc span:after {
    content: "";
    display: inline-block;
    background-color: #444;
    width: .375rem;
    height: .375rem;
    border-radius: .1875rem;
    position: absolute;
    left: .4375rem;
    top: .8125rem
}
.list--tours-threecol>ul>li:not(.list_tours_operators) a {
    transition-property: box-shadow
}
.list--operators .list__item>a {
    display: block;
    color: #444
}
.list--operators .list__item>a .list__item--image__full.with-placeholder:before {
    background: #000
}
.list--operators .list__item>a .list__item--image__full .stars.notrated i {
    opacity: .6
}
.list--operators .list__item>a .list__item--image__full img {
    top: 0;
    min-height: 100%;
    min-width: 100%;
    width: auto;
    max-width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%)
}
.list--operators .list__item>a .list__item--image__full img.placeholder {
    min-width: initial;
    max-width: none;
    min-height: initial;
    max-height: none;
    left: 50%;
    transform: translateX(-50%);
    top: 20%
}
.list--operators .list__item>a .list__item--image__full h2, .list--operators .list__item>a .list__item--image__full h3 {
    padding-bottom: 2.1875rem
}
.list--operators .list__item>a .data-holder h2, .list--operators .list__item>a .data-holder h3 {
    margin-top: 1.25rem;
    margin-bottom: .75rem;
    line-height: 1.625rem
}
.list--operators .list__item>a .data-holder .country-with-flag {
    margin-right: .25rem;
    min-width: 2.375rem
}
.list--operators .list__item>a .data-holder dl {
    line-height: 1.125rem;
    margin-top: .3125rem;
    margin-bottom: .625rem
}
.list--operators .list__item>a .data-holder dl:after {
    content: "";
    display: table;
    clear: both
}
.list--operators .list__item>a .data-holder dl dt {
    width: 6.75rem;
    position: absolute;
    font-weight: 600
}
.list--operators .list__item>a .data-holder dl dd {
    width: 100%;
    margin-bottom: .5rem;
    padding-left: 6.75rem
}
.list--operators .list__item>a .data-holder dl dd b {
    font-weight: normal
}
.list--operators .list__item>a .data-holder dl dd.officesin .country-with-flag:not(:last-child) {
    padding-right: .3125rem
}
.list--operators .list__item>a .data-holder dl dd.officesin .country-with-flag:not(:last-child):after {
    content: "";
    display: inline-block;
    background-color: #444;
    width: .375rem;
    height: .375rem;
    border-radius: .1875rem;
    position: relative;
    right: -0.3125rem;
    top: -0.125rem
}
.list--operators .list__item div.row {
    border-top: .0625rem dotted #b3b3b3;
    padding: .3125rem 0;
    border-radius: 0 0 .3125rem .3125rem
}
.list--operators .list__item div.row span {
    display: none
}
.list--operators .list__item div.row a {
    margin-top: .625rem
}
.list--operators .list__item div.row img {
    max-height: 2.8125rem;
    max-width: 5.625rem
}
.list--operators .list__item div.row ul.list--icon {
    margin-bottom: .625rem
}
.list__item--image__full {
    border-radius: .3125rem .3125rem 0 0;
    position: relative;
    overflow: hidden;
    page-break-inside: avoid;
    background: linear-gradient(to bottom, #999, #fff)
}
.list__item--image__full:before {
    content: "";
    display: block;
    padding-top: 49%;
    background-color: #f2f2f2;
    position: absolute
}
.list__item--image__full:after {
    content: "";
    display: block;
    padding-top: 49%;
    background-color: rgba(0, 0, 0, 0);
    position: relative
}
.list__item--image__full .list__picture {
    position: static;
    width: 100%
}
.list__item--image__full img {
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}
.list__item--image__full img.holder {
    position: absolute
}
.list__item--image__full .holder-tourtitle {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%
}
.list__item--image__full h2, .list__item--image__full h3 {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 3.75rem .625rem .9375rem;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.75rem;
    text-shadow: 1px 1px 5px #000;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}
@media screen {
    .list__item--image__full h2, .list__item--image__full h3 {
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
    }
}
.list__noresults {
    text-align: center;
    font-weight: bold;
    position: relative;
    margin-top: 3.125rem
}
.list__noresults:before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    top: .75rem;
    z-index: 2
}
.list__noresults span {
    background-color: #f2f2f2;
    padding: .125rem 1.25rem;
    display: inline-block;
    position: relative;
    z-index: 3;
    font-size: 1.125rem
}
.list__scrolltoresults {
    text-align: center
}
.list__scrolltoresults a {
    font-weight: normal
}
.list__scrolltoresults a span {
    font-weight: bold
}
.list--numbered {
    list-style-type: decimal;
    margin: .3125rem 0
}
.list--numbered li {
    line-height: 1.375rem;
    padding-top: .125rem;
    padding-bottom: .125rem;
    margin-left: 1rem
}
.list--alphabetic {
    list-style-type: lower-alpha;
    margin: .3125rem 0
}
.list--alphabetic li {
    line-height: 1.375rem;
    padding-top: .125rem;
    padding-bottom: .125rem;
    margin-left: 1rem
}
.list--indent {
    padding-left: .375rem
}
.list--icon li {
    position: relative;
    padding: .375rem 0 .375rem 1.375rem
}
.list--icon li:before {
    content: "•";
    font-weight: normal;
    font-size: 1.5rem;
    position: absolute
}
.list--icon li strong {
    font-style: italic
}
.list--icon li:before {
    left: .375rem
}
.list--icon li.plus, .list--icon li.min {
    padding-left: 2.25rem
}
.list--icon li.plus:before, .list--icon li.min:before {
    content: "";
    width: 1rem;
    height: 1rem;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center;
    margin-top: .1875rem
}
.list--icon li.plus:before {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/plus.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/plus.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .list--icon li.plus:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/plus@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/plus.svg")
    }
}
.list--icon li.min:before {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/minus.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/minus.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .list--icon li.min:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/minus@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/minus.svg")
    }
}
.list--icon li.active {
    color: #006400
}
.list--icon li.active a {
    color: #006400
}
.list--icon li.indent {
    margin-left: 1rem
}
.messagebox .list--icon li:before {
    line-height: 1.1875rem
}
.list--icon-med {
    padding-top: .1875rem
}
.list--icon-med li {
    padding: 0 0 .3125rem 1rem !important;
    line-height: 1.375rem
}
.list--icon-compact li {
    padding: 0 0 0 1rem !important
}
.list--icon-compact li:before {
    left: 0 !important
}
.list--icon-arrow li:before {
    content: "›";
    font-weight: normal;
    font-size: .875rem;
    position: absolute;
    top: .375rem;
    left: .75rem
}
.list--icon-arrow li ul {
    padding-top: .375rem;
    margin-bottom: -0.375rem
}
.list--icon-arrow li ul li {
    margin-left: -0.875rem
}
.list--icon-arrow.list--icon-med li:before, .list--icon-arrow.list--icon-compact li:before {
    content: "›";
    font-weight: normal;
    font-size: .875rem;
    position: absolute;
    top: 0;
    left: 0
}
.list--icon-arrow-nest li ul li {
    margin-left: 0
}
.list--icon-check li {
    padding-left: 2.25rem
}
.list--icon-check li:before {
    left: .3125rem !important;
    content: "";
    width: 1rem;
    height: 1rem;
    margin-top: .125rem;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center;
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .list--icon-check li:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-red.svg")
    }
}
.list--icon-check-green li:before {
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .list--icon-check-green li:before {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/checkmark@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark.svg")
    }
}
.list--icon.indent li {
    padding-left: 1.375rem
}
.list--icon-sec {
    padding: .25rem 0 0 1.0625rem
}
.list--icon-sec li {
    position: relative
}
.list--icon-sec li:before {
    content: "•";
    font-weight: normal;
    font-size: 1.5rem;
    position: absolute
}
.list--icon-sec li:before {
    left: -1.0625rem
}
.list--icon-nopadding li {
    padding-top: 0;
    padding-bottom: .25rem;
    padding-left: .625rem
}
.list--icon-nopadding li:before {
    left: 0;
    top: -0.0625rem
}
.list--strikethrough input[type=checkbox]:not(:checked)+li {
    text-decoration: line-through;
    color: #b3b3b3
}
.container--tours-directory .intro__expand {
    display: inline !important
}
.container--tours-directory .intro__expand-toggle {
    list-style: none
}
.container--tours-directory .intro__expand-toggle::marker {
    display: none
}
.container--tours-directory .intro__expand[open] .intro__expand-toggle {
    display: none
}
.container--tours-directory .intro__expand-toggle-text {
    color: #0378a0
}
.list--icon-removable li {
    padding-right: 1.25rem
}
.list--icon-removable .icon--listremove {
    position: absolute;
    top: 0;
    right: 0
}
.container--tours-directory, .container--operators-directory {
    padding-top: 0;
    -webkit-overflow-scrolling: touch
}
.container--tours-directory .row-header, .container--operators-directory .row-header {
    background-color: #fff;
    border-bottom: 1px solid #d9d9d9;
    margin: -0.625rem -0.625rem 1.5625rem;
    padding: 1.25rem .625rem
}
.container--tours-directory .row-header h1, .container--operators-directory .row-header h1 {
    margin: .625rem 0
}
.container--tours-directory .row-header h1 span, .container--operators-directory .row-header h1 span {
    font-size: 1.5625rem;
    color: #666;
    font-weight: normal
}
.container--tours-directory .row-header .review-summary--oneline, .container--operators-directory .row-header .review-summary--oneline {
    display: inline-block;
    position: relative;
    margin-left: .125rem;
    top: -0.5rem;
    z-index: 3
}
.container--tours-directory .row-header .intro, .container--operators-directory .row-header .intro {
    font-size: .8125rem;
    line-height: 1.25rem;
    position: relative;
    top: -0.4375rem;
    z-index: 2
}
.container--tours-directory .row-header .intro p, .container--tours-directory .row-header .intro .intro__par, .container--operators-directory .row-header .intro p, .container--operators-directory .row-header .intro .intro__par {
    padding: .25rem 0
}
.container--tours-directory .row-header .intro__expand, .container--operators-directory .row-header .intro__expand {
    display: inline !important
}
.container--tours-directory .row-header .intro__expand-toggle, .container--operators-directory .row-header .intro__expand-toggle {
    list-style: none
}
.container--tours-directory .row-header .intro__expand-toggle::marker, .container--operators-directory .row-header .intro__expand-toggle::marker {
    display: none
}
body.transparent .container--tours-directory .row-header, body.transparent .container--operators-directory .row-header {
    background-color: rgba(0, 0, 0, 0)
}
.container--tours-directory .pagination, .container--operators-directory .pagination {
    margin-top: 0
}
.list--counter {
    counter-reset: item;
    list-style: none;
    padding-left: 1.875rem;
    margin-left: -1.875rem;
    margin-bottom: 2.5rem
}
.list--counter li {
    position: relative;
    counter-increment: item
}
.list--counter li:before {
    display: block;
    position: absolute;
    top: 0;
    left: -1.40625rem;
    content: counter(item) ".";
    text-align: right;
    width: .9375rem;
    font-weight: 600
}
.container--tours-directory--iframe {
    width: 100%;
    padding: 0
}
.titlebar__sub {
    line-height: .8125rem;
    margin-bottom: .4375rem
}
.list--zebra .list__item {
    line-height: 2.1875rem;
    border-bottom: 1px solid #d9d9d9
}
.list--zebra .list__item:nth-child(odd) {
    background-color: #f8f8f8
}
.list--zebra .list__item>label {
    padding: .625rem;
    display: block
}
.list--zebra .list__item .txt--small {
    position: relative;
    top: -0.25rem
}
.list--zebra .list__item .txt--xsmall[data-state=active] {
    display: block
}
.list--zebra .list__item .txt--xsmall[data-state=inactive] {
    display: none
}
.list--zebra-hover .list__item:hover {
    background-color: #eee
}
.list--zebra .list__label {
    display: block
}
.list--zebra .list__item--extra {
    background-color: rgba(0, 0, 0, 0) !important;
    border-bottom: 0 !important;
    padding: .625rem
}
.list--zebra .list__item--extra button {
    font-size: .875rem
}
.list--zebra .list__image {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-height: 6.25rem
}
.list--zebra-sec .list__item {
    padding: .625rem 1.25rem;
    border: 0
}
.list--zebra-sec .list__item:nth-child(odd) {
    background-color: rgba(153, 153, 153, .07)
}
.list--zebra-sec .list__item:last-child {
    border-bottom: 0
}
.list--commaseparated>*:nth-child(2):before {
    content: "("
}
.list--commaseparated>*:not(:last-child):after {
    content: ", "
}
.list--commaseparated>*:last-child:after {
    content: ")"
}
.list-head {
    margin-bottom: .625rem;
    font-size: .875rem
}
@media(max-width: 743px) {
    .list__item--image__full.with-placeholder--op {
        background: #f0eee8
    }
    .list__item--image__full.with-placeholder--op .placeholder {
        height: 100%;
        position: absolute;
        width: 100%;
        text-align: center;
        opacity: .5
    }
    .list__item--image__full.with-placeholder--op .placeholder i.sbi--nophoto {
        display: inline-block;
        width: 3.75rem;
        margin-top: .3125rem;
        opacity: .7
    }
    .list__item--image__full.with-placeholder--op .placeholder span {
        display: block
    }
    .list--operators .data-holder {
        padding: .625rem .625rem 0
    }
    .list--operators:not(.list__snippets) .btn--orange {
        margin-left: .625rem
    }
    .list--operators:not(.list__snippets) .review-summary--oneline {
        position: absolute;
        bottom: .875rem;
        left: .75rem;
        color: #fff
    }
    .list--operators:not(.list__snippets) .review-summary--oneline .review-score, .list--operators:not(.list__snippets) .review-summary--oneline .review-score em {
        color: #fff
    }
    .list--operators:not(.list__snippets) .operator-logo-m {
        margin-left: .3125rem;
        margin-top: .125rem
    }
    .list--operators:not(.list__snippets) .col-oplogo {
        padding-left: .625rem;
        padding-top: .125rem
    }
    .list--zebra-sec .list__label {
        font-size: .75rem;
        line-height: .9375rem;
        color: #999
    }
    .list--columns {
        display: none
    }
}
@media(min-width: 600px)and (max-width: 743px) {
    .list--tours-threecol .list__item {
        margin-bottom: 1.875rem
    }
    .list--tours-threecol>ul>li.list__snippet-offset {
        padding-top: 0
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(2n-1) {
        padding-right: .625rem
    }
    .container--tours-directory .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(2n-1), .tours-tab .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(2n-1), .other_tours .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(2n-1), .tour__content__block--operator .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(2n-1) {
        clear: both
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(2n) {
        padding-left: .625rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars+p {
        font-size: 0
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars+p .review-score {
        position: relative;
        top: -0.125rem;
        font-size: .6875rem;
        margin-left: .25rem
    }
}
@media(max-width: 350px) {
    .list--tours .list__snippet-offset, .list--operators .list__snippet-offset {
        padding-top: .9375rem
    }
}
@media(min-width: 351px)and (max-width: 743px) {
    .list--tours .list__snippet-offset, .list--operators .list__snippet-offset {
        padding-top: .3125rem
    }
}
@media(min-width: 500px)and (orientation: landscape) {
    .list--tours .list__item h2, .list--tours .list__item h3 {
        font-size: 1.625rem;
        line-height: 1.875rem
    }
    .list--tours .list__item--data p.price b {
        font-size: 1.375rem
    }
}
@media(hover: hover) {
    .list--tours .list__item:hover, .list--operators .list__item:hover {
        text-decoration: none !important;
        outline: none;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
    }
    html.no-touch .list--tours .list__item:hover:not(.reload):not(.unavailable), html.no-touch .list--operators .list__item:hover:not(.reload):not(.unavailable) {
        cursor: pointer;
        box-shadow: 0 1px 13px rgba(0, 0, 0, .6);
        transition-duration: .25s
    }
    html.no-touch .list--tours .list__item:hover:not(.reload) picture img {
        opacity: .95
    }
}
@media print {
    .list__item--image__full {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact
    }
    .list__item--image__full picture {
        display: none
    }
    .list__item--image__full .holder-tourtitle, .list__item--image__full h2, .list__item--image__full h3 {
        position: relative
    }
    .list__item--image__full h2, .list__item--image__full h3 {
        padding-top: .9375rem
    }
    .list__item--image__full:after {
        content: none
    }
}
#map-africa .country, #africa-map-large .country {
    fill: #cbc9ca;
    stroke: #fff;
    stroke-linecap: round;
    stroke-width: 1px
}
#map-africa circle.country, #africa-map-large circle.country {
    stroke-width: .75px
}
#map-africa .supported, #africa-map-large .supported {
    fill: #959595;
    stroke: #fff
}
#map-africa .active, #africa-map-large .active {
    fill: #a41e22
}
.map-africa-svg #dots circle.active, #map-africa #dots circle.active {
    r: 3.5;
    stroke-width: 1.5px
}
.map-africa-svg circle#rwanda-dot.active+#burundi-dot, #map-africa circle#rwanda-dot.active+#burundi-dot {
    opacity: .2
}
.map-africa-svg #dots circle#malawi-dot, #map-africa #dots circle#malawi-dot {
    opacity: 0
}
.map-africa-svg #dots circle#malawi-dot.active, #map-africa #dots circle#malawi-dot.active {
    r: 4.5;
    opacity: 1;
    stroke-width: 1.5px
}
#africa-map-large .country {
    stroke-width: 6px
}
.africa-outline {
    fill: none;
    stroke: none
}
#park-zoom-box #box, #park-zoom-box #country {
    fill: #f9f9f9;
    stroke: #d9d6d6
}
#park-zoom-box #information {
    font-size: 14px;
    font-weight: 600
}
#park-zoom-box #country-name {
    fill: #bbb
}
#park-zoom-box #park-name, #park-zoom-box #surface {
    fill: #a41e22
}
#park-zoom-box #park-name-outline {
    fill: #fff;
    stroke: #fff;
    stroke-width: 2px
}
#country-zoom-box .country {
    fill: #fff
}
#country-zoom-box .country-name {
    fill: #a41e22
}
#country-zoom-box .park-name-outline {
    fill: #d4ddc9;
    stroke: #d4ddc9;
    stroke-width: 2px
}
svg.zoom-box .box, svg.zoom-box .country {
    fill: #f9f9f9;
    stroke: #d9d6d6
}
svg.zoom-box .information {
    font-size: 14px;
    font-weight: 600;
    font-family: "Gentium Basic", serif
}
svg.zoom-box .country-name {
    fill: #bbb
}
svg.zoom-box .park-name, svg.zoom-box .surface {
    fill: #a41e22
}
svg.zoom-box .park-name-outline, svg.zoom-box .country-name-outline {
    fill: #fff;
    stroke: #fff;
    stroke-width: 2px
}
svg.zoom-box .arrow {
    fill: #006400
}
svg.zoom-box .line {
    stroke: #006400;
    stroke-width: 1px
}
svg.zoom-box .tip {
    stroke: #006400;
    stroke-width: .5px
}
#route-map .water * {
    fill: #bbd8e3
}
#route-map .parks * {
    fill: #dbe2d3
}
.routemap {
    width: 100%;
    position: relative
}
.routemap:before {
    content: "";
    width: 100%;
    padding-top: 86.1904761905%;
    position: relative;
    top: 0;
    display: block
}
.routemap .map-route-svg {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0
}
.routemap .map-africa-svg {
    width: 15.2380952381%;
    position: absolute;
    left: 0;
    top: 0
}
.routemap .map-africa-svg #map-africa .country, .routemap .map-africa-svg #map-africa .supported {
    fill: #f9f9f9;
    stroke: none
}
.routemap .map-africa-svg #map-africa .active {
    fill: #a41e22;
    z-index: 100
}
.routemap .map-africa-svg #map-africa #madagascar, .routemap .map-africa-svg #map-africa #seychelles, .routemap .map-africa-svg #map-africa #reunion, .routemap .map-africa-svg #map-africa #mauritius {
    stroke: #a09f9f;
    stroke-width: 1px
}
.routemap .map-africa-svg #map-africa #seychelles.active, .routemap .map-africa-svg #map-africa #reunion.active, .routemap .map-africa-svg #map-africa #mauritius.active {
    stroke: #a41e22;
    r: 3.5
}
.routemap .map-africa-svg #map-africa #seychelles, .routemap .map-africa-svg #map-africa #reunion, .routemap .map-africa-svg #map-africa #mauritius {
    display: none
}
.routemap .map-africa-svg #map-africa.with-islands #seychelles, .routemap .map-africa-svg #map-africa.with-islands #reunion, .routemap .map-africa-svg #map-africa.with-islands #mauritius {
    display: inline
}
.routemap .map-africa-svg .africa-outline {
    fill: none;
    stroke: #a09f9f;
    stroke-width: 2px
}
.routemap .map-africa-svg .africa-outline+.africa-outline {
    display: none
}
.map--mobile {
    max-width: 21.875rem;
    margin: 1.25rem auto
}
.map--mobile--extra {
    margin: 1.25rem auto 2.5rem
}
.map--mobile:after {
    content: "";
    display: table;
    clear: both
}
.map--google {
    position: relative;
    z-index: 1;
    pointer-events: none
}
.map--google .map__holder {
    position: relative;
    z-index: -1;
    height: 0;
    padding-bottom: 75%;
    pointer-events: all
}
.map__type {
    position: absolute;
    top: .625rem;
    left: .625rem;
    pointer-events: all;
    display: none
}
.map__card {
    outline: 1px solid #d9d9d9;
    outline-offset: -1px;
    margin-bottom: .9375rem;
    position: relative
}
.map__card[data-state=active] {
    outline-color: #e48901
}
.map__card[data-state=active] .map__type {
    display: block
}
.map__card .gm-bundled-control {
    display: none
}
.map__holder .warning {
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .6);
    width: 100%;
    height: 100%;
    z-index: 2
}
.map__holder .warning span {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    color: #fff;
    z-index: 3
}
.map__form .show-coordinates-fields {
    white-space: nowrap
}
.map__card[data-state=active] .gm-bundled-control {
    display: block
}
.map__pin {
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    padding-top: 37.5%;
    transform: translate(-50%, -3.9375rem)
}
.map__form-holder {
    position: relative;
    z-index: -2;
    height: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity .2s ease, height .2s .2s ease
}
.map__card[data-state=active] .map__form-holder {
    opacity: 1;
    height: 8.75rem;
    transition: height .2s .2s ease, opacity .2s .4s ease
}
.map__card.coords .gm-bundled-control, .map__card.coords [data-role=map-type-controls], .map__card.coords .map__pin, .map__card.coords .map__form {
    display: none !important
}
.map__card.coords .map__holder div {
    pointer-events: none
}
.map__form {
    padding: .9375rem .9375rem 0;
    pointer-events: all
}
.map--edittoggle {
    height: 2.5625rem;
    overflow: hidden;
    transition: height .2s .2s ease, opacity .2s .4s ease;
    pointer-events: all
}
.map__card[data-state=active]+.map--edittoggle {
    transition: opacity .2s ease, height .2s .2s ease;
    opacity: 0;
    height: 0
}
.map--editsave {
    margin-bottom: .625rem
}
.map--editsave+.map--editsave {
    padding: .5625rem .625rem
}
.coordinates-fields {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .6);
    z-index: 10
}
.coordinates-fields>.row {
    background-color: #fff;
    width: 30rem;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    padding: 1.25rem 1.25rem .625rem;
    border-radius: .625rem;
    pointer-events: auto
}
.coordinates-fields button+a {
    position: relative;
    top: .1875rem
}
.gallery-with-upload {
    position: relative;
    margin-top: 1.25rem;
    max-width: none !important
}
.gallery-with-upload ul.upload-gallery {
    counter-reset: image;
    margin-left: -1.25rem;
    width: calc(100% + 1.25rem);
    font-size: 0
}
.gallery-with-upload ul.upload-gallery li {
    position: relative;
    display: inline-block;
    width: calc(50% - 1.25rem);
    height: auto;
    border: 1px solid #d9d9d9;
    overflow: hidden;
    box-shadow: 0px 1px 5px rgba(0, 0, 0, .18);
    margin-bottom: 1.25rem;
    margin-left: 1.25rem;
    font-size: .9375rem
}
@media(max-width: 500px) {
    .gallery-with-upload ul.upload-gallery li {
        width: calc(100% - 1.25rem)
    }
    .gallery-with-upload ul.upload-gallery li:nth-child(n+2) {
        margin-top: 1.25rem
    }
    .gallery-with-upload ul.upload-gallery li:nth-child(even) {
        float: none
    }
}
.gallery-with-upload ul.upload-gallery li:after {
    content: "";
    position: relative;
    display: block;
    width: 100%;
    margin-top: 70%
}
.gallery-with-upload ul.upload-gallery li img {
    display: block;
    position: absolute;
    max-width: 100%;
    max-height: 100%;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    margin-top: -42px
}
.gallery-with-upload ul.upload-gallery li.landscape {
    background-color: #fff
}
.gallery-with-upload ul.upload-gallery li.landscape img {
    max-width: none;
    max-height: none;
    width: 100%;
    height: auto
}
.gallery-with-upload ul.upload-gallery li.portrait {
    background-color: #f8f8f8
}
.gallery-with-upload ul.upload-gallery li.portrait img {
    max-width: none;
    max-height: none;
    width: auto;
    height: calc(100% - 41px - 44px)
}
.gallery-with-upload ul.upload-gallery li .description {
    position: absolute;
    bottom: 2.5625rem;
    left: 0;
    width: 100%;
    padding: .25rem .5625rem .25rem;
    border-top: .0625rem solid #d9d9d9;
    background-color: #fff
}
.gallery-with-upload ul.upload-gallery li .description input[name="photos_descriptions[]"] {
    width: 100% !important;
    min-width: auto !important;
    display: block
}
.gallery-with-upload ul.upload-gallery li .actions {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    width: 100%;
    padding: .5625rem .625rem;
    z-index: 2;
    border-top: .0625rem solid #d9d9d9;
    background-color: #fff;
    justify-content: space-between
}
.gallery-with-upload ul.upload-gallery li .actions .action {
    display: inline-block
}
.gallery-with-upload ul.upload-gallery li .actions .action:not(:first-child) {
    margin-left: .9375rem
}
.gallery-with-upload ul.upload-gallery li .actions .action input[type=file] {
    display: none
}
.gallery-with-upload ul.upload-gallery li.deleted {
    display: none
}
.gallery-with-upload ul.upload-gallery.gallery__numbered {
    margin-top: 1.875rem
}
.gallery-with-upload ul.upload-gallery.gallery__numbered .gallery__item:before {
    counter-increment: image;
    content: counter(image);
    position: absolute;
    width: 1.875rem;
    height: 1.875rem;
    background-color: #fff;
    text-align: center;
    padding: .1875rem .0625rem 0 0;
    z-index: 2;
    border-right: .0625rem solid #d9d9d9;
    border-bottom: .0625rem solid #d9d9d9
}
.gallery-with-upload ul.upload-gallery.gallery__numbered .gallery__item.dragging:before {
    display: none
}
.gallery-with-upload ul.upload-gallery.gallery__numbered .gallery__item:after {
    content: "" !important
}
.gallery-with-upload[data-sortable] ul.upload-gallery {
    position: relative
}
.gallery-with-upload[data-sortable] ul.upload-gallery li {
    cursor: move;
    cursor: grab;
    cursor: -webkit-grab
}
.gallery-with-upload[data-sortable] ul.upload-gallery li:hover {
    border: .0625rem solid #e48901
}
.gallery-with-upload[data-sortable] ul.upload-gallery li.dragging {
    box-shadow: -5px 6px 10px rgba(0, 0, 0, .18);
    border: .0625rem solid #e48901;
    cursor: grabbing
}
.gallery-with-upload[data-sortable] ul.upload-gallery li.dragging a {
    display: none
}
.gallery-with-upload[data-sortable] ul.upload-gallery li.placeholder {
    border: .0625rem dashed #e48901;
    background-color: #efefef
}
.gallery-with-upload[data-sortable] ul.upload-gallery li.original {
    border: .0625rem solid #d9d9d9;
    opacity: .3
}
.gallery-with-upload[data-sortable] ul.upload-gallery li.clone {
    z-index: 20
}
.gallery-with-upload.gallery-with-upload--single {
    margin-top: 0
}
.gallery-with-upload.gallery-with-upload--single .upload-area-container {
    margin-top: .625rem
}
.gallery-with-upload.gallery-with-upload--single [data-role=gallery-drop-area] {
    border: 0;
    padding: 0;
    height: auto;
    width: auto;
    text-align: left;
    margin-top: .625rem
}
.gallery-with-upload.gallery-with-upload--single ul.upload-gallery li {
    width: calc(100% - 1.25rem);
    max-width: 25rem;
    border: 0;
    box-shadow: none;
    margin-bottom: 0
}
.gallery-with-upload.gallery-with-upload--single ul.upload-gallery li img {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    margin-top: 0;
    max-height: 15.625rem
}
.gallery-with-upload.gallery-with-upload--single ul.upload-gallery li:after {
    display: none
}
.gallery-with-upload.gallery-with-upload--single ul.upload-gallery li .actions {
    position: relative
}
.gallery-with-upload.gallery-with-upload--single ul.upload-gallery li .actions {
    border: 0;
    padding-left: 0
}
.gallery-with-upload .gallery__droparea {
    position: relative;
    border: 1px dashed #b3b3b3;
    color: #222;
    width: 100%;
    padding: 2.1875rem 1.25rem .9375rem;
    font-size: .9375rem;
    text-align: center;
    vertical-align: middle;
    margin-top: 1.875rem;
    line-height: 1.375rem
}
.gallery-with-upload .gallery__droparea .error-balloon {
    font-size: .9375rem;
    line-height: 1.375rem
}
.gallery-with-upload .gallery__droparea.not-advanced {
    border: px solid #b3b3b3;
    height: auto;
    padding: 1.25rem 1.25rem
}
.gallery-with-upload .gallery__droparea.not-advanced div.drag-txt {
    display: none
}
@media(max-width: 980px) {
    .gallery-with-upload .gallery__droparea:not(.not-advanced) {
        padding-bottom: 2.1875rem
    }
}
.gallery-with-upload .gallery__droparea.busy {
    padding: 0;
    height: auto;
    border: 0
}
.gallery-with-upload .gallery__droparea.busy button, .gallery-with-upload .gallery__droparea.busy div.drag-txt, .gallery-with-upload .gallery__droparea.busy .error-balloon-container {
    display: none !important
}
.gallery-with-upload .gallery__droparea div.drag-txt {
    margin-bottom: 1.25rem;
    margin-top: .3125rem
}
.gallery-with-upload .gallery__droparea button.upload-photo {
    margin-bottom: .3125rem
}
.gallery-with-upload .gallery__droparea button.upload-photo i {
    position: relative;
    top: .25rem
}
.gallery-with-upload .gallery__droparea span {
    font-size: .75rem
}
.gallery-with-upload .gallery__droparea input[type=file] {
    display: none
}
.gallery-with-upload .gallery__droparea.hover {
    background-color: #f7f7f7;
    border-color: green
}
.gallery-with-upload+hr {
    margin: 2.5rem 0 1.875rem
}
.gallery-with-upload h3 {
    margin: .625rem 0 1.875rem
}
.gallery-with-upload .upload-area-container {
    margin-top: 1.875rem
}
.gallery-with-upload .file {
    border-top: .0625rem solid #d9d9d9;
    border-bottom: .0625rem solid #d9d9d9;
    padding: .625rem 0;
    position: relative;
    text-align: left;
    min-height: 2.9375rem;
    display: flex;
    flex-flow: row wrap;
    align-items: baseline
}
.gallery-with-upload .file .progress {
    width: 15.625rem;
    height: .625rem;
    border-radius: .3125rem;
    background-color: #f2f2f2;
    overflow: hidden
}
.gallery-with-upload .file .progress .progress-ready {
    background-color: #2a7018;
    width: 0;
    height: 100%;
    position: relative;
    top: 0;
    left: 0
}
.gallery-with-upload .file .progresslabel {
    display: flex;
    position: relative;
    font-size: .8125rem;
    line-height: 1rem;
    flex-grow: 1;
    min-width: 0;
    flex-basis: calc(100% - 19.375rem);
    text-align: right;
    white-space: nowrap
}
.gallery-with-upload .file .progresslabel span {
    font-size: .8125rem
}
.gallery-with-upload .file .progresslabel .progresslabel-filename {
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    text-align: left;
    padding-right: .625rem;
    width: calc(100% - 6.25rem)
}
.gallery-with-upload .file .progresslabel .progresslabel-perc, .gallery-with-upload .file .progresslabel .progresslabel-status {
    display: inline-block;
    margin-left: .25rem
}
.gallery-with-upload .file .link {
    width: 3.75rem;
    text-align: right;
    padding-left: .625rem
}
.gallery-with-upload .file .link a {
    font-size: .875rem
}
.gallery-with-upload .file.small .progress {
    width: 100%;
    position: relative;
    top: 0;
    margin-top: 0
}
.gallery-with-upload .file.small .progresslabel {
    padding-left: 0
}
.gallery-with-upload .file.small .link {
    font-size: .8125rem;
    top: calc(50% + 0.625rem)
}
.gallery-with-upload .file .error-icon, .gallery-with-upload .file .error-text, .gallery-with-upload .file .success-icon, .gallery-with-upload .file .success-text {
    display: none
}
.gallery-with-upload .file.error .progress, .gallery-with-upload .file.ready .progress {
    display: none
}
.gallery-with-upload .file.error {
    padding: .625rem 0 1.625rem !important
}
.gallery-with-upload .file.error .progresslabel {
    color: #006400;
    display: flex;
    flex-flow: row wrap;
    order: 1;
    flex: 1 1 100%
}
.gallery-with-upload .file.error .progresslabel .progresslabel-filename {
    position: relative;
    flex-grow: 1
}
.gallery-with-upload .file.error .progresslabel .progresslabel-status {
    white-space: nowrap;
    margin: 0 0 -1rem 0;
    display: block;
    width: 100%;
    text-align: left
}
.gallery-with-upload .file.error .error-icon, .gallery-with-upload .file.error .error-text, .gallery-with-upload .file.ready .success-icon, .gallery-with-upload .file.ready .success-text {
    position: relative;
    display: block
}
.gallery-with-upload .file.error .error-icon, .gallery-with-upload .file.ready .success-icon {
    display: flex;
    align-items: center;
    justify-content: center
}
.gallery-with-upload .file.error .error-icon {
    width: 1.5rem;
    height: 1.5rem;
    margin-right: .625rem;
    border: 1px solid #b73b3a;
    border-radius: 50%
}
.gallery-with-upload .file.error .error-text {
    font-weight: bold;
    color: #b73b3a;
    font-size: .9375rem;
    white-space: nowrap;
    flex-grow: 1
}
.gallery-with-upload .file.ready .success-icon {
    width: 1.5rem;
    height: 1.5rem;
    margin-right: .625rem;
    border: 1px solid #2a7018;
    border-radius: 50%
}
.gallery-with-upload .file.ready .success-icon i, .gallery-with-upload .file.error .error-icon svg {
    display: inline-block;
    width: .875rem;
    height: .875rem;
    margin: 0 calc(0.3125rem - 1px)
}
.gallery-with-upload .file.ready .success-text {
    font-weight: bold;
    color: #2a7018;
    font-size: .9375rem;
    white-space: nowrap
}
.gallery-with-upload .file.small.error .error-icon, .gallery-with-upload .file.small.error .error-text, .gallery-with-upload .file.small.ready .success-icon, .gallery-with-upload .file.small.ready .success-text {
    transform: none
}
.gallery-with-upload .file {
    margin-top: 1.25rem
}
.gallery-with-upload .file+.file {
    margin-top: 0;
    border-top: 0
}
.gallery-with-upload .addphotos {
    display: inline-block
}
.gallery-with-upload .addphotos i {
    position: relative;
    top: .375rem;
    margin-right: .4375rem
}
.gallery__item:after {
    content: none !important
}
.gallery__item-image {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%
}
.gallery__item-image img {
    object-fit: cover;
    left: 0 !important;
    top: 0 !important;
    width: 100%;
    height: 100%;
    transform: none !important;
    margin: 0 !important
}
.gallery__item-meta {
    padding: .625rem
}
#videos .gallery__add-video .btn {
    line-height: 2.0625rem;
    height: 2.1875rem;
    font-weight: normal
}
.gallery__add-video p {
    margin-bottom: .625rem
}
.gallery__icon {
    position: relative;
    top: .125rem;
    margin-right: .25rem
}
.gallery__icon-m {
    position: relative;
    top: .375rem;
    margin-right: .4375rem
}
.messagebox {
    width: 100%;
    padding: .5625rem .625rem .625rem;
    display: block;
    font-size: .875rem;
    line-height: initial;
    position: relative
}
.messagebox--center {
    text-align: center
}
.messagebox--orange {
    background-color: #fef4e7;
    border: 1px solid #f6b776
}
.messagebox--orange--pointer:before {
    background-color: #fef4e7;
    border: 1px solid #f6b776
}
.messagebox--orange--pointer:after {
    background-color: #fef4e7
}
.messagebox--green {
    background-color: #f3f9f3;
    border: 1px solid #c2e4c2
}
.messagebox--green--pointer:before {
    border: .0625rem solid #c2e4c2;
    background-color: #f3f9f3
}
.messagebox--green--pointer:after {
    background-color: #f3f9f3
}
.messagebox--red {
    background-color: #f3e1e0;
    border: 1px solid #e88988
}
.messagebox--red--pointer:before {
    background-color: #f3e1e0;
    border: 1px solid #e88988
}
.messagebox--red--pointer:after {
    background-color: #f3e1e0
}
.messagebox--red a {
    color: #ca4947;
    text-decoration: underline
}
.messagebox--yellow {
    background-color: #fefdfa;
    border: 1px solid #f6d89f
}
.messagebox--yellow--pointer:before {
    background-color: #fefdfa;
    border: 1px solid #f6d89f
}
.messagebox--yellow--pointer:after {
    background-color: #fefdfa
}
.messagebox--blue {
    background-color: #fff;
    border: 1px solid #c0dde7
}
.messagebox--blue--pointer:before {
    background-color: #fff;
    border: 1px solid #c0dde7
}
.messagebox--blue--pointer:after {
    background-color: #fff
}
.messagebox--pointer:before {
    position: absolute;
    top: -0.5rem;
    left: 9.6875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem
}
.messagebox--pointer:after {
    position: absolute;
    top: 0;
    left: 9.375rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .8125rem
}
.messagebox--pointer--left:before {
    left: 2.5rem
}
.messagebox--pointer--left:after {
    left: 2.1875rem
}
.messagebox--greenfull {
    margin: -1.25rem;
    padding: 1.875rem 1.25rem 1.875rem 1.25rem;
    box-sizing: content-box;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    text-align: left;
    font-size: 1.25rem;
    line-height: 1.5rem
}
.messagebox--greenfull b {
    display: block;
    font-weight: normal;
    padding-left: 3.4375rem;
    color: #2a7018
}
.messagebox--greenfull b strong {
    font-weight: bold
}
.messagebox--greenfull .sbi {
    width: 2.5rem;
    height: 2.5rem;
    background-size: 60% 60%;
    position: absolute;
    border: 1px solid #67a856;
    border-radius: 50%;
    top: 50%;
    margin-top: -1.25rem;
    left: 1.25rem
}
.messagebox--redfull {
    margin: -1.25rem;
    padding: 1.875rem 1.25rem;
    box-sizing: content-box;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    text-align: left;
    font-size: 1.25rem;
    line-height: 1.5rem
}
.messagebox--redfull b {
    display: block;
    font-weight: normal;
    padding-left: 3.4375rem;
    color: #006400
}
.messagebox--redfull b strong {
    font-weight: bold
}
.messagebox--redfull .sbi {
    width: 2.5rem;
    height: 2.5rem;
    background-size: 60% 60%;
    position: absolute;
    border: 1px solid #750f0e;
    border-radius: 50%;
    top: 50%;
    margin-top: -1.25rem;
    left: 1.25rem
}
.messagebox--fraud {
    margin: 1.25rem 0 .625rem 0;
    width: auto;
    display: block;
    padding-left: 2.5rem;
    position: relative
}
.messagebox--fraud i {
    position: absolute;
    top: .625rem;
    left: .9375rem;
    float: left
}
.messagebox a.help:not(.textual):not(.numberinput) {
    margin-top: .0625rem
}
.messagebox--unavailable {
    text-align: center;
    font-size: 1rem;
    font-weight: bold;
    border: 1px solid #e48901;
    background-color: #fffaf3;
    margin-top: .3125rem;
    margin-bottom: 1.25rem;
    padding: 1.25rem 1.25rem
}
.messagebox--unavailable .btn {
    margin-top: .9375rem
}
.messagebox__title {
    display: block;
    font-weight: bold;
    font-size: 1rem;
    line-height: 1.25rem;
    margin-bottom: .3125rem
}
.messagebox__title--warning {
    color: #006400
}
.messagebox__title--warning i.sbi {
    float: left;
    margin-right: .4375rem;
    position: relative;
    top: -0.125rem
}
.messagebox__title--extramargin {
    margin: .625rem 0 1.25rem
}
.messagebox__title--l {
    font-size: 1.3125rem;
    padding: .625rem 0
}
.messagebox .a {
    font-size: 100%
}
.messagebox--bar {
    position: relative;
    z-index: 10;
    border-width: 0;
    border-bottom-width: 1px;
    font-size: .8125rem;
    line-height: 1.125rem;
    text-align: center
}
.metabox {
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9;
    padding: 1.25rem;
    position: relative
}
@media(max-width: 743px) {
    .metabox {
        border-left: 0;
        border-right: 0;
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        padding: .625rem
    }
}
.metabox:before {
    position: absolute;
    top: -0.5rem;
    left: 2.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9
}
.metabox:after {
    background-color: #fefdf9;
    position: absolute;
    top: 0;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .8125rem
}
.metabox--white {
    background-color: #fff
}
.metabox--notopborder {
    border-top: 0
}
@media(max-width: 743px) {
    .navigation-list {
        margin-top: 0;
        padding: 0 !important
    }
    .navigation-list b {
        display: none
    }
    .navigation-list:not(.navigation__sidebar) {
        border-top: .0625rem solid #d9d9d9;
        margin-top: .625rem
    }
    .navigation-list li {
        font-weight: 600;
        position: relative
    }
    .navigation-list li:nth-child(n+2) {
        border-top: .0625rem solid #d9d9d9
    }
    .navigation-list li>a {
        display: block;
        padding: .875rem .625rem;
        -webkit-transition: "background .2s ease-in-out";
        -moz-transition: "background .2s ease-in-out";
        -ms-transition: "background .2s ease-in-out";
        -o-transition: "background .2s ease-in-out";
        transition: background .2s ease-in-out
    }
    .navigation-list li>a:after {
        content: "›";
        float: right;
        right: 0;
        font-size: 1.5625rem;
        font-weight: normal;
        position: relative;
        top: -0.1875rem
    }
    .navigation-list li>a span {
        position: relative;
        right: auto
    }
    .navigation-list li>a:hover {
        background-color: #f8f8f8
    }
    .navigation-list li.more>a {
        display: none
    }
    .navigation-list li span {
        color: #666;
        font-weight: normal;
        position: absolute;
        top: 50%;
        margin-top: -0.625rem;
        right: 1.875rem;
        font-size: .8125rem;
        pointer-events: none
    }
    .navigation-list li span a {
        pointer-events: auto
    }
}
.navigation__sidebar {
    padding: 0 !important;
    margin-top: 0
}
.navigation__sidebar b {
    display: none
}
.navigation__sidebar a.btn {
    display: none
}
.navigation__sidebar ul:not(.more-items) li:first-child {
    border-top: 0
}
.navigation__sidebar ul li em {
    display: inline
}
.navigation__sidebar ul li.more {
    height: auto
}
.navigation__sidebar ul li.more>a {
    display: none
}
.navigation__sidebar ul li span {
    display: inline-block;
    border-radius: .3125rem;
    background-color: #d9d9d9;
    color: #444;
    line-height: 1.125rem;
    font-size: .75rem;
    font-weight: 600;
    padding: 0 .3125rem;
    margin-left: .625rem;
    position: relative;
    top: -0.0625rem
}
.navigation__sidebar ul ul.subs {
    display: none
}
@media(max-width: 969px) {
    .navigation__sidebar:not(.navigation-list) ul {
        background-color: #f8f8f8;
        box-shadow: inset 0px -1px 2px rgba(0, 0, 0, .18);
        margin: 0;
        padding: 0;
        z-index: 36;
        position: relative;
        height: 2.4375rem;
        margin-bottom: .1875rem;
        height: 2.25rem
    }
    .navigation__sidebar:not(.navigation-list) ul.not-sticky {
        z-index: 20
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        display: inline-block;
        padding: .4375rem .25rem .5625rem;
        float: left;
        text-align: center;
        color: #666;
        font-size: .875rem;
        line-height: 1.25rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab]:nth-child(n+2) {
        border-left: 1px solid #d9d9d9
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab]:hover {
        text-decoration: underline
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab]:hover span {
        text-decoration: underline
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        background-color: #fff;
        box-shadow: 1px -2px 12px rgba(0, 0, 0, .18);
        position: relative;
        top: -3px;
        padding: .6875rem .25rem .5625rem;
        color: #006400;
        cursor: default
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active:hover {
        text-decoration: none;
        cursor: default
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -0.5rem;
        width: 100%;
        height: .5625rem;
        background-color: #fff
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        background-color: #fafafa;
        position: relative;
        top: 0;
        padding: .5625rem .25rem .4375rem;
        color: #444;
        cursor: pointer;
        border: 1px solid #d9d9d9;
        border-bottom: 0
    }
}
@media(max-width: 969px)and (min-width: 320px) {
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        padding: .5rem .5rem .5rem .4375rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .6875rem .5rem .625rem .4375rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5625rem .5rem .5rem .4375rem
    }
}
@media(max-width: 969px)and (min-width: 335px) {
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        padding: .5rem .5rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .6875rem .5rem .625rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5625rem .5rem .5rem
    }
}
@media(max-width: 969px)and (min-width: 367px) {
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        font-size: .9375rem;
        padding: .5rem .625rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .6875rem .625rem .625rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5625rem .625rem .5rem
    }
}
@media(max-width: 969px)and (min-width: 406px) {
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        padding: .5rem .9375rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .6875rem .9375rem .625rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5625rem .9375rem .5rem
    }
}
@media(max-width: 969px)and (min-width: 744px) {
    .navigation__sidebar:not(.navigation-list) ul {
        height: 2.25rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        padding: .4375rem 1.25rem .5625rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .625rem 1.25rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5rem 1.25rem .375rem
    }
}
@media(max-width: 969px)and (min-width: 970px) {
    .navigation__sidebar:not(.navigation-list) ul {
        height: 2.5rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        padding: .5rem .8125rem .75rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .6875rem .8125rem .6875rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5625rem .8125rem .5625rem
    }
}
@media(max-width: 969px)and (min-width: 1100px) {
    .navigation__sidebar:not(.navigation-list) ul {
        height: 2.5rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab] {
        padding: .5rem 1.25rem .75rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].active {
        padding: .6875rem 1.25rem .6875rem
    }
    .navigation__sidebar:not(.navigation-list) ul a[role=tab].inactive {
        padding: .5625rem 1.25rem .5625rem
    }
}
@media(max-width: 969px) {
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab] {
        padding: .4375rem .6875rem .5625rem
    }
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab].active {
        padding: .625rem .75rem .5625rem;
        z-index: 2;
        clip-path: inset(-12px -12px 0 -12px)
    }
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab].active:after {
        content: none
    }
    .navigation__sidebar:not(.navigation-list) ul li:not(.more) a[role=tab].active:before {
        content: "";
        display: block;
        width: .0625rem;
        height: 100%;
        position: absolute;
        background-color: #fff;
        top: 0;
        right: -0.0625rem
    }
    .navigation__sidebar:not(.navigation-list) ul li:nth-child(n+2) a:not(.active) {
        border-left: 1px solid #d9d9d9
    }
    .navigation__sidebar:not(.navigation-list) ul li:nth-child(n+2) a.active {
        border-left: 1px solid #fff
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .navigation__sidebar:not(.navigation-list) ul li.last-t a:not(.active), .navigation__sidebar:not(.navigation-list) ul li:last-child a:not(.active) {
        border-right: 1px solid #d9d9d9
    }
}
@media(min-width: 920px)and (max-width: 969px) {
    .navigation__sidebar:not(.navigation-list) ul.park-country li a[role=tab] {
        padding: .4375rem 1.125rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul.park-country li a[role=tab].active {
        padding: .625rem 1.125rem .5625rem
    }
}
@media(max-width: 800px) {
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[role=tab], .navigation__sidebar:not(.navigation-list) ul.park-country li a[role=tab] {
        padding: .4375rem .4375rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[role=tab].active, .navigation__sidebar:not(.navigation-list) ul.park-country li a[role=tab].active {
        padding: .625rem .5rem .5625rem
    }
}
@media(max-width: 743px) {
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab] {
        padding: .4375rem 2.1875rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab].active {
        padding: .625rem 2.1875rem .5625rem
    }
    .navigation__sidebar:not(.navigation-list) ul li.last-m a:not(.active), .navigation__sidebar:not(.navigation-list) ul li:last-child a:not(.active) {
        border-right: 1px solid #d9d9d9
    }
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[role=tab] {
        padding: .4375rem .9375rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[role=tab].active {
        padding: .625rem .9375rem .5625rem
    }
}
@media(max-width: 585px) {
    .navigation__sidebar:not(.navigation-list) li a span {
        display: none
    }
}
@media(max-width: 560px) {
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab] {
        padding: .4375rem .75rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul li a[role=tab].active {
        padding: .625rem .75rem .5625rem
    }
}
@media(max-width: 520px) {
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[role=tab] {
        padding: .4375rem .625rem .5rem
    }
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[role=tab].active {
        padding: .625rem .625rem .5625rem
    }
}
@media(max-width: 460px) {
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a[data-ajax=profile-tab] em {
        display: none
    }
}
@media(max-width: 410px) {
    .navigation__sidebar:not(.navigation-list) ul li a[data-ajax=profile-tab] em {
        display: none
    }
}
@media(max-width: 395px) {
    .navigation__sidebar:not(.navigation-list) ul.tours-reviews li a em {
        display: none
    }
}
@media(max-width: 350px) {
    .navigation__sidebar:not(.navigation-list) ul li a em {
        display: none
    }
}
@media(max-width: 319px) {
    .navigation__sidebar:not(.navigation-list) ul {
        overflow: hidden
    }
}
@media(min-width: 970px) {
    .content--tabbed:not(.sticky) .sticky-side-nav>div {
        position: relative;
        top: 0
    }
    .content--tabbed.sticky .sticky-side-nav>div {
        position: fixed;
        top: 0
    }
    .content--tabbed.sticky .col-d-9-5 {
        margin-left: 20.8333333333%
    }
}
@media(max-width: 969px) {
    .content--tabbed.sticky {
        padding-top: 2.5625rem !important
    }
    .content--tabbed.sticky .sticky-side-nav {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        z-index: 10;
        height: 2.1875rem
    }
    .content--tabbed.sticky .sticky-side-nav>div {
        width: auto !important;
        position: relative !important;
        top: auto !important;
        left: auto !important
    }
    .content--tabbed.sticky .sticky-side-nav>ul {
        padding-left: 1.5625rem;
        box-shadow: 0 -2px 2px rgba(0, 0, 0, .18) inset
    }
    .content--tabbed.sticky .sticky-side-nav>ul a[role=tab].active {
        padding-bottom: .5rem !important
    }
    .content--tabbed.sticky .sticky-side-nav>ul a[role=tab].active:after {
        display: none
    }
    .content--tabbed.sticky .navigation__sidebar:not(.navigation-list).sticky-side-nav>div>ul {
        height: 2.1875rem;
        box-shadow: 0 2px 2px rgba(0, 0, 0, .18)
    }
    .content--tabbed.sticky .navigation__sidebar:not(.navigation-list).sticky-side-nav>div>ul>li:first-child a[role=tab] {
        margin-left: 1.5625rem
    }
    .content--tabbed.sticky .navigation__sidebar:not(.navigation-list).sticky-side-nav>div>ul a[role=tab].active {
        top: -0.25rem
    }
    .content--tabbed.sticky .navigation__sidebar:not(.navigation-list).sticky-side-nav>div>ul a[role=tab].active:after {
        display: none
    }
}
@media(max-width: 743px) {
    .content--tabbed.sticky {
        padding-top: 2.625rem !important
    }
    .content--tabbed.sticky .sticky-side-nav {
        height: 2.1875rem;
        transition: top .25s
    }
    .content--tabbed.sticky .sticky-side-nav>ul {
        padding-left: .625rem
    }
    body.menu-fixed .content--tabbed.sticky .sticky-side-nav {
        top: 2.5rem
    }
    .content--tabbed.sticky .navigation__sidebar:not(.navigation-list).sticky-side-nav>div>ul>li:first-child a[role=tab] {
        margin-left: .625rem
    }
}
.operator-snippet__data {
    display: block;
    border-top: 1px dotted #b3b3b3
}
.operator-snippet__data p {
    padding: .25rem .625rem .25rem 6.25rem;
    font-size: .8125rem
}
.operator-snippet__data p b {
    white-space: nowrap;
    overflow: hidden;
    line-height: .9375rem;
    text-overflow: ellipsis;
    display: block
}
.operator-snippet__data p b .flag {
    opacity: .6;
    width: 1rem;
    display: inline-block
}
.operator-snippet__data p:nth-child(2) {
    padding-top: .625rem;
    padding-bottom: .125rem
}
.operator-snippet__data p:nth-child(3) {
    padding-top: 0;
    color: #444 !important
}
.operator-snippet__data p:nth-child(3) .review-score {
    margin-left: 1.25rem
}
.operator-snippet__data p:nth-child(3).norating {
    padding-top: .3125rem
}
.operator-snippet__data p i {
    width: .875rem;
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-left: -0.1875rem;
    margin-top: .1875rem
}
.operator-snippet__data p em {
    padding-left: .0625rem
}
.operator-snippet__data p .rating {
    font-weight: 600;
    padding-right: .125rem
}
.operator-snippet__data p.norating span {
    padding-left: .875rem;
    color: #999
}
.operator-snippet__data .stars {
    float: left;
    margin-left: .625rem;
    top: .375rem
}
.operator-snippet__data .stars i {
    width: .875rem
}
.operator-snippet__data .opdata__image {
    width: 5.625rem;
    height: 3.5rem;
    padding: .5rem .625rem;
    border-right: 1px dotted #b3b3b3;
    box-sizing: border-box;
    display: inline-block;
    float: left;
    text-align: center;
    vertical-align: middle;
    position: relative
}
.operator-snippet__data .opdata__image img {
    max-height: 2.5rem;
    max-width: 4.375rem;
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto
}
.tour__head__container .operator-snippet__data p {
    white-space: nowrap
}
.tour__head__container .operator-snippet__data p em {
    padding-left: .25rem
}
.operator-snippet__data--inworkflow {
    border-top: 0;
    border-bottom: 1px dotted #b3b3b3
}
a.operator-snippet__data em {
    color: #444;
    text-decoration: none
}
a.operator-snippet__data p strong {
    font-weight: normal
}
a.operator-snippet__data:hover {
    text-decoration: none !important
}
a.operator-snippet__data:hover p b, a.operator-snippet__data:hover p strong {
    text-decoration: underline !important
}
@media(max-width: 360px) {
    .operator-snippet__data .stars {
        position: relative;
        margin-left: .5625rem;
        top: .4375rem
    }
    .operator-snippet__data .stars i, .operator-snippet__data .stars .stars__star {
        width: .75rem
    }
    .operator-snippet__data .review-score {
        margin-left: .125rem
    }
    .operator-snippet__data .review-score em {
        margin-right: .0625rem
    }
}
@media(hover: hover) {
    a.operator-snippet__data:hover {
        text-decoration: none !important
    }
    a.operator-snippet__data:hover p b, a.operator-snippet__data:hover p strong {
        text-decoration: underline !important
    }
}
.other_tours {
    text-align: left
}
.other_tours h3 {
    margin-top: 2.875rem;
    margin-bottom: 1.625rem;
    position: relative;
    font-size: 1.25rem
}
.other_tours h3 span {
    background-color: #fff;
    display: inline-block;
    padding-right: .625rem;
    position: relative
}
.other_tours h3:before {
    content: "";
    width: 94%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: 0;
    top: .6875rem
}
.overlay .other_tours h3 span {
    background-color: #f2f2f2
}
.overlay {
    display: block;
    margin: 0 auto;
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    background: #f2f2f2;
    z-index: 9000;
    display: none;
    font-size: .9375rem;
    padding-top: 2.5rem
}
.overlay__header {
    background-color: #006400;
    color: #fff;
    padding: .625rem .625rem;
    height: 3.375rem
}
.overlay__header h4 {
    float: left;
    font-size: 1.25rem;
    font-family: "Gentium Basic", serif;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 2.1875rem;
    height: 1.25rem;
    line-height: 1.25rem
}
.overlay__header h4 span {
    font-size: 1.125rem;
    margin-right: .625rem;
    float: left
}
.overlay__header a.close {
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 1px solid #c96c6b;
    background-color: #840807;
    display: block;
    overflow: hidden;
    position: absolute;
    text-shadow: none;
    cursor: pointer;
    top: .25rem;
    right: .625rem
}
.overlay__header a.close i {
    width: 1rem;
    left: 0;
    margin-left: .4375rem;
    margin-top: .4375rem
}
html.no-touch .overlay__header a.close:hover {
    border: 1px solid #fff
}
.overlay__buttonbar {
    padding: 1.25rem 1.25rem;
    background-color: #fff;
    box-shadow: 0px -1px 2px rgba(0, 0, 0, .18)
}
.overlay__buttonbar .btn {
    margin-right: .9375rem;
    height: 2.5625rem;
    line-height: 2.375rem;
    font-size: 1.0625rem;
    border-radius: .3125rem
}
.overlay__buttonbar .btn--ok {
    min-width: 7.8125rem
}
.overlay--small--m {
    overflow: hidden;
    padding-top: 0;
    max-height: calc(100% - 3.75rem) !important;
    overflow: auto;
    width: auto !important
}
.overlay--small--m, .overlay--small--m .overlay__header {
    top: 2.5rem !important;
    width: calc(100% - 2.5rem) !important
}
.overlay--small--m .overlay__header {
    position: relative;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important
}
.overlay--clean {
    padding-top: 0;
    padding-bottom: 1.25rem;
    max-height: calc(100% - 3.75rem) !important;
    overflow: auto;
    width: auto !important
}
.overlay--clean, .overlay--clean .overlay__header {
    top: 2.5rem !important;
    width: calc(100% - 2.5rem) !important
}
.overlay--clean .overlay__header {
    background: #fff;
    color: #444;
    padding: 2.1875rem 1.25rem 2.8125rem;
    position: relative;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important
}
.overlay--clean .overlay__header a.close {
    background: none;
    filter: invert(0.75)
}
.overlay--clean .overlay__header a.close, .overlay--clean .overlay__header a.close:hover {
    border: none !important
}
.wrapper.with-overlay {
    position: fixed;
    width: 100%
}
.wrapper.with-overlay:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .85);
    z-index: 8999
}
@supports(-ms-ime-align: auto) {
    .overlay {
        background-color: #fbfbfb
    }
}
@media(max-width: 743px) {
    .overlay {
        top: 100%;
        opacity: 0;
        transition: top 0s .2s, opacity .2s ease-out
    }
    .overlay:not(.overlay--small--m) {
        width: 100% !important
    }
    .overlay__header {
        position: fixed;
        width: 100%;
        z-index: 9001;
        top: 0;
        height: 2.5rem
    }
    .wrapper.with-overlay:after {
        top: 100%;
        transition: top 0s 0s, opacity .2s ease-out .2s
    }
    body.with-overlay .overlay {
        top: 0;
        opacity: 1
    }
    body.with-overlay .wrapper.with-overlay:after {
        top: 0
    }
    .overlay__header {
        top: 100%;
        transition: top .2s ease-out;
        box-shadow: 0 0 8px #000
    }
    body.with-overlay .overlay__header {
        top: 0
    }
    .gallery, .video {
        position: absolute !important;
        top: 50% !important;
        left: 50%;
        width: 100%;
        transform: translateX(-50%) translateY(-50%)
    }
}
@media(max-width: 969px) {
    .overlay:not(.overlay--small--m) {
        min-height: 100% !important
    }
}
.pagination {
    margin: 1.25rem 0
}
.pagination li {
    float: left
}
.pagination:not(.pagination--small) .col:nth-child(1) {
    padding-left: 0;
    padding-right: .625rem
}
.pagination:not(.pagination--small) .col:nth-child(4) {
    padding-right: 0;
    padding-left: .625rem
}
.pagination .col:nth-child(2) {
    text-align: center;
    padding-left: .625rem;
    padding-right: .625rem
}
.pagination .col.small a.btn, .pagination .col.small span.btn {
    font-size: .8125rem
}
.pagination .btn--prev span {
    display: none
}
.pagination .btn--prev:before {
    left: 50%;
    margin-left: -0.3125rem
}
.pagination.pagination--small .btn--next span {
    display: none
}
.pagination.pagination--small .btn--next:before {
    left: 50%;
    right: auto;
    margin-left: -0.125rem
}
.pagination__summary {
    display: block;
    font-size: .8125rem;
    line-height: 2.125rem;
    text-align: center
}
.pagination__nmbr, .pagination__dots {
    display: none
}
.preview {
    position: relative;
    width: 100%;
    padding: 1.5625rem;
    background: #fff
}
.preview--widget {
    padding: .625rem 0 1.875rem;
    background: #fff linear-gradient(rgba(204, 204, 204, 0.43), rgba(204, 204, 204, 0.43)) no-repeat top left/100% 3.125rem;
    text-align: center;
    font-size: 0;
    outline: 1px solid #d9d9d9
}
.preview--text {
    padding: 8.75rem 3.75rem 11.25rem;
    text-align: center;
    font-weight: bold
}
.preview--text:before, .preview--text:after {
    content: "";
    position: absolute;
    z-index: 0;
    left: 3.75rem;
    background: linear-gradient(transparent 50%, #fff 50%) repeat-y top left/100% 2.5rem, linear-gradient(90deg, #E8E8E8, #F5F5F5) no-repeat top left/100% 100%
}
.preview--text:before {
    top: 3.75rem;
    right: 3.75rem;
    height: 8.75rem
}
.preview--text:after {
    bottom: 3.75rem;
    right: 13.125rem;
    height: 3.75rem
}
.preview--text * {
    position: relative;
    z-index: 1;
    display: inline-block;
    vertical-align: top;
    padding: 0 1.375rem;
    background: #fff;
    line-height: 1.25rem
}
.preview__resize {
    display: none
}
.preview__resize-button {
    position: relative;
    z-index: 0;
    display: inline-block;
    padding: .3125rem 1.25rem;
    outline: 1px solid #b3b3b3;
    outline-offset: -1px;
    font-size: .8125rem;
    margin-bottom: .625rem;
    cursor: pointer;
    background: rgba(0, 0, 0, 0);
    color: #0378a0
}
.preview__resize-button .sbi {
    vertical-align: middle;
    margin-right: .3125rem;
    position: relative;
    top: -0.0625rem
}
.preview__resize-button:not(:first-child) {
    margin-left: -1px
}
.preview__resize:checked+.preview__resize-button {
    background: rgba(0, 0, 0, 0);
    outline-color: #b3b3b3;
    z-index: 1;
    pointer-events: none;
    background-color: #fff;
    color: #444;
    text-decoration: none
}
.preview__resize:checked+.preview__resize-button .sbi {
    filter: grayscale(100%)
}
.preview__resize--375:checked+.preview__resize-button {
    margin-bottom: 2.5rem
}
.preview__iframe {
    position: relative;
    background: #fff;
    display: block;
    margin: 0 auto;
    padding: .5rem;
    overflow: auto
}
.preview__iframe iframe {
    width: 100%;
    height: 100%
}
.preview__resize--fullwidth:checked~.preview__iframe {
    width: 100%;
    border-width: .5rem;
    margin-bottom: -1.875rem
}
.preview__resize--375:checked~.preview__iframe {
    width: 24.1875rem;
    height: 50.75rem;
    transform: translateX(0.375rem);
    overflow: scroll
}
.preview__resize--375:checked~.preview__iframe>div {
    width: 22.4375rem
}
.preview__iframe[data-state=hiding] iframe {
    opacity: 0
}
.preview__mobile {
    position: absolute;
    pointer-events: none;
    opacity: 0;
    display: block;
    z-index: 1;
    top: 5.125rem;
    left: 50%;
    border: .5rem solid #000;
    border-radius: 1.875rem;
    width: 23.4375rem;
    height: 50.75rem;
    transform: translateX(-50%)
}
.preview__mobile:before {
    content: "";
    z-index: -1;
    position: absolute;
    border: 1.875rem solid #fff;
    border-radius: 3.75rem;
    top: -2.375rem;
    left: -2.375rem;
    right: -2.375rem;
    bottom: -2.375rem
}
.preview__mobile:after {
    content: "";
    position: absolute;
    z-index: 2;
    display: block;
    width: 13.5rem;
    height: .5rem;
    border: 0;
    border-radius: 0 0 .5rem .5rem;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    background: #000
}
.preview__resize--375:checked~.preview__mobile {
    opacity: 1
}
.preview__noresults {
    padding: 3.75rem 0 2.5rem;
    text-align: center
}
.container--preview-banner {
    width: 20rem;
    height: 18rem;
    max-width: none !important;
    margin: 0 !important
}
@media screen and (min-width: 767px) {
    .container--preview-banner {
        width: 47.9375rem
    }
}
.price {
    padding-top: .4375rem;
    font-size: .875rem;
    color: #2a7018
}
.price b {
    font-size: 1.125rem
}
.price b span[dir] {
    color: #2a7018 !important
}
.promo--spotsleft, .promo--scheduled {
    font-size: .8125rem;
    min-height: 1.375rem;
    line-height: 1.25rem;
    z-index: 2;
    display: inline-block;
    position: relative;
    top: -0.0625rem
}
.list--tours .promo--spotsleft, .list--tours .promo--scheduled {
    display: none
}
.container--tours-directory .list--tours .promo--spotsleft, .container--tours-directory .list--tours .promo--scheduled {
    display: inline-block
}
.promo--spotsleft {
    background-color: #e10606;
    color: #fff;
    padding: 0 .875rem
}
.promo--spotsleft-un {
    padding: 0 .4375rem
}
.promo--scheduled {
    background-color: #f0f0f0;
    color: #444;
    padding: 0 .5rem;
    margin-bottom: .25rem
}
.promo--bestseller {
    top: -0.3125rem;
    left: .625rem;
    text-align: center;
    font-size: .75rem;
    color: #fff;
    line-height: .75rem;
    z-index: 2;
    width: 3.375rem;
    height: 4.25rem;
    border: 1px solid #cce0f5;
    border-bottom: 0;
    padding: 0;
    overflow: hidden;
    position: absolute
}
.promo--bestseller strong {
    position: relative;
    z-index: 3;
    width: 3.25rem;
    height: 3rem;
    display: block
}
.promo--bestseller strong em {
    position: relative;
    top: 1.125rem
}
.promo--bestseller strong svg {
    position: absolute;
    top: .25rem;
    left: 50%;
    transform: translateX(-50%)
}
.promo--bestseller strong:before {
    content: "";
    display: block;
    width: 1.625rem;
    height: 3rem;
    background-color: #1f79d2;
    position: absolute;
    top: 0;
    right: 0
}
.promo--bestseller span {
    z-index: 4;
    position: absolute;
    top: 2.0625rem;
    display: inline-block;
    left: 2.6875rem
}
.promo--bestseller span:before, .promo--bestseller span:after {
    border-top: 1px solid #cce0f5;
    background-color: rgba(0, 0, 0, 0);
    content: "";
    position: absolute;
    top: 1.75rem;
    left: -3.75rem;
    width: 4.375rem;
    height: 4.375rem;
    transform: rotate(-36deg)
}
.promo--bestseller span:after {
    transform: rotate(35deg);
    left: -2.75rem
}
.promo--bestseller:before, .promo--bestseller:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 5.8125rem solid rgba(0, 0, 0, 0);
    border-bottom: 2.8125rem solid rgba(0, 0, 0, 0);
    border-left: 3.8125rem solid #1f79d2;
    position: absolute;
    bottom: -0.8125rem;
    left: -0.3125rem;
    z-index: 2;
    transform: rotate(-55deg)
}
.promo--bestseller:after {
    border-top: 5.8125rem solid rgba(0, 0, 0, 0);
    border-bottom: 2.8125rem solid rgba(0, 0, 0, 0);
    border-right: 3.8125rem solid #06c;
    border-left: 0;
    transform: rotate(55deg)
}
.promo--toprated {
    z-index: 2;
    top: .625rem;
    left: -0.375rem;
    height: 1.6875rem;
    background-color: rgba(0, 0, 0, 0);
    border: 1px solid #fadcbd;
    box-shadow: 2px 2px 7px rgba(0, 0, 0, .2);
    position: absolute
}
.promo--toprated:before {
    content: "";
    width: 0;
    height: 0;
    border-left: .375rem solid rgba(0, 0, 0, 0);
    border-right: 0px solid rgba(0, 0, 0, 0);
    border-top: .1875rem solid #b05b04;
    position: absolute;
    bottom: -0.25rem;
    left: -0.0625rem
}
.promo--toprated div {
    width: 1.5625rem;
    height: 1.5625rem;
    background-color: #ea7a02;
    border-right: 1px solid rgba(255, 255, 255, .5);
    display: inline-block;
    position: relative
}
.promo--toprated div svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-64%)
}
.promo--toprated strong {
    background-color: #f78002;
    font-size: .75rem;
    padding: 0 .625rem;
    display: inline-block;
    height: 1.5625rem;
    color: #fff;
    top: 0;
    position: relative;
    float: right;
    line-height: 1.4375rem;
    text-shadow: 1px 1px #d06b01
}
.imgpagehead--tour .promo--bestseller {
    top: -0.0625rem
}
.imgpagehead--tour .promo--toprated {
    left: 0
}
@media(max-width: 350px) {
    .promo--bestseller {
        top: -0.9375rem
    }
}
@media(min-width: 744px) {
    .promo--bestseller {
        left: .9375rem
    }
}
@media(min-width: 970px) {
    .promo--bestseller {
        left: .625rem
    }
    .promo--toprated {
        top: .9375rem
    }
}
@media(min-width: 1175px) {
    .promo--bestseller {
        left: 1.25rem
    }
}
.proportional {
    position: relative;
    width: auto;
    display: inline-block;
    padding-bottom: 100%;
    height: 0;
    max-width: none !important
}
.proportional>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
.proportional--fullwidth {
    width: 100%
}
.proportional--16x9 {
    padding-bottom: 56.25%
}
.proportional--4x3 {
    padding-bottom: 75%
}
.quote-progress {
    width: 95%;
    max-width: 34.375rem;
    margin: 2.5rem auto
}
.quote-progress:after {
    content: "";
    display: table;
    clear: both
}
.quote-progress--titles {
    font-weight: bold
}
.quote-progress--titles div {
    width: 33.3333%;
    float: left
}
.quote-progress--titles .title1 {
    text-align: left
}
.quote-progress--titles .title2 {
    text-align: center
}
.quote-progress--titles .title3 {
    text-align: right
}
.quote-progress--flow {
    padding-top: 2.5rem;
    height: 6.25rem;
    position: relative
}
.quote-progress--flow:after {
    content: "";
    display: table;
    clear: both
}
.quote-progress--flow .circ {
    position: absolute;
    top: 2.5rem;
    left: 0;
    width: 3.75rem;
    height: 3.75rem;
    text-align: center;
    border-radius: 50%;
    background-color: #e6e6e6;
    -moz-box-shadow: inset 0 10px 20px #c1c1c1;
    -webkit-box-shadow: inset 0 10px 20px #c1c1c1;
    box-shadow: inset 0 10px 20px #c1c1c1
}
.quote-progress--flow .circ .ready {
    width: 3.25rem;
    height: 3.25rem;
    top: .25rem;
    left: .25rem;
    position: relative;
    border-radius: 50%;
    background-color: #41922c
}
.quote-progress--flow .circ .ready .sbi {
    position: relative;
    top: .75rem
}
.quote-progress--flow .circ+.circ {
    left: 50%;
    margin-left: -1.875rem
}
.quote-progress--flow .circ+.circ+.circ {
    left: auto;
    right: 0;
    margin-left: 0
}
.quote-progress--flow.ready1 .circ:after, .quote-progress--flow.ready1 .circ:before, .quote-progress--flow.ready2 .circ:after, .quote-progress--flow.ready2 .circ:before, .quote-progress--flow.ready3 .circ:after, .quote-progress--flow.ready3 .circ:before {
    display: block;
    content: "";
    width: .3125rem;
    height: .5rem;
    background-color: #41922c;
    position: absolute;
    top: 50%;
    margin-top: -0.25rem;
    display: none
}
.quote-progress--flow.ready1 .circ:before, .quote-progress--flow.ready2 .circ:before, .quote-progress--flow.ready3 .circ:before {
    left: auto;
    right: 0
}
.quote-progress--flow.ready1 .circ.ready1:before, .quote-progress--flow.ready2 .circ.ready1:before, .quote-progress--flow.ready3 .circ.ready1:before {
    display: block
}
.quote-progress--flow.ready1 .circ.ready2:before, .quote-progress--flow.ready1 .circ.ready2:after, .quote-progress--flow.ready2 .circ.ready2:before, .quote-progress--flow.ready2 .circ.ready2:after, .quote-progress--flow.ready3 .circ.ready2:before, .quote-progress--flow.ready3 .circ.ready2:after {
    display: block
}
.quote-progress--flow.ready1 .circ.ready3:after, .quote-progress--flow.ready2 .circ.ready3:after, .quote-progress--flow.ready3 .circ.ready3:after {
    display: block
}
.quote-progress--flow .bar {
    width: 90%;
    left: 5%;
    height: .625rem;
    position: absolute;
    top: 4.0625rem;
    background-color: #e6e6e6;
    -moz-box-shadow: inset 0 2px 6px #c1c1c1;
    -webkit-box-shadow: inset 0 2px 6px #c1c1c1;
    box-shadow: inset 0 2px 6px #c1c1c1
}
.quote-progress--flow .bar:before {
    display: block;
    content: "";
    width: 35%;
    height: .5rem;
    background-color: #41922c;
    position: absolute;
    top: .0625rem;
    left: 0
}
.quote-progress--flow .bar.ready1:before {
    background: -moz-linear-gradient(left, #41922c 0%, #41922c 80%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(left, #41922c 0%, #41922c 80%, rgba(0, 0, 0, 0) 100%);
    background: -o-linear-gradient(left, #41922c 0%, #41922c 80%, rgba(0, 0, 0, 0) 100%);
    background: -ms-linear-gradient(left, #41922c 0%, #41922c 80%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to right, #41922c 0%, #41922c 80%, rgba(0, 0, 0, 0) 100%)
}
.quote-progress--flow .bar.ready2:before {
    background: -moz-linear-gradient(left, #41922c 0%, #41922c 92%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(left, #41922c 0%, #41922c 92%, rgba(0, 0, 0, 0) 100%);
    background: -o-linear-gradient(left, #41922c 0%, #41922c 92%, rgba(0, 0, 0, 0) 100%);
    background: -ms-linear-gradient(left, #41922c 0%, #41922c 92%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to right, #41922c 0%, #41922c 92%, rgba(0, 0, 0, 0) 100%);
    width: 85%
}
.quote-progress--flow .bar.ready3:before {
    width: 100%
}
.overlay .quote-progress {
    margin-top: 0
}
.relatedlinks {
    background-color: #e9e9e9;
    color: #444;
    padding: 2.1875rem 0 .9375rem;
    border-top: 1px solid #d9d9d9;
    position: relative;
    display: block;
    border-bottom: 1px solid #d9d9d9;
    margin-top: 11.25rem
}
.relatedlinks .container {
    position: relative;
    margin-bottom: 1.25rem
}
.relatedlinks h3 {
    font-size: 1.75rem
}
.relatedlinks--sec {
    margin-top: 0;
    margin-bottom: -2.5rem
}
.relatedlinks--simple {
    background: none;
    border-bottom: 0
}
.relatedlinks--simple .container {
    margin-bottom: .625rem
}
.relatedlinks--simple h3 {
    font-size: 1.25rem
}
.relatedlinks__mark {
    display: block;
    width: 2.5rem;
    height: 2.8125rem;
    background-color: #006400;
    position: absolute;
    right: 1.5625rem;
    top: -2.375rem
}
.relatedlinks__mark .relatedlinks__mark-img {
    width: 1.5rem;
    margin-left: .5rem;
    margin-top: .3125rem
}
.relatedlinks__mark:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 1.25rem solid rgba(0, 0, 0, 0);
    border-right: 1.25rem solid rgba(0, 0, 0, 0);
    border-bottom: .875rem solid #e9e9e9;
    position: absolute;
    bottom: -0.03125rem;
    left: 0
}
.relatedlinks__top {
    margin-bottom: 1.125rem;
    padding: 0 .625rem
}
.relatedlinks__list {
    padding: 0 .625rem
}
.relatedlinks__list.flex {
    margin: 0
}
.relatedlinks__list.flex .relatedlinks__list-item {
    display: flex;
    flex-wrap: nowrap;
    padding: 0 !important;
    text-indent: 0
}
.relatedlinks__list.flex .relatedlinks__list-item:before {
    width: .5rem;
    flex-shrink: 0
}
.relatedlinks__list-item {
    display: block;
    margin-bottom: .5rem;
    width: 100%;
    text-indent: -0.5rem;
    padding-left: 1.125rem
}
.relatedlinks__list-item:before {
    content: "›";
    width: .625rem
}
.relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item:nth-child(3n) {
    margin-bottom: 1.5rem
}
.relatedlinks--blog {
    margin-top: 0;
    background: rgba(0, 0, 0, 0);
    border: 0;
    padding: 0
}
.relatedlinks--blog .relatedlinks__list {
    margin-bottom: 0;
    padding: 0
}
.relatedlinks--blog .relatedlinks__list-item {
    float: none;
    width: 100%;
    display: inline-flex;
    flex-flow: row nowrap;
    text-indent: 0;
    padding: .375rem 0;
    margin: 0
}
.relatedlinks--blog .relatedlinks__list-item:before {
    flex: 0 0 .625rem
}
.relatedlinks--blog .relatedlinks__list-item a {
    overflow: hidden;
    text-overflow: ellipsis
}
.relatedlinks__blog--2col .relatedlinks__list {
    columns: 2;
    column-gap: 1.25rem
}
.relatedlinks__blog--2col .relatedlinks__list-item {
    width: 100%;
    white-space: nowrap
}
@media(max-width: 743px) {
    .relatedlinks h3 {
        font-family: "Gentium Basic", serif
    }
}
@media(min-width: 550px) {
    .relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item {
        width: 50%
    }
    .relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item:nth-child(3n) {
        margin-bottom: .5rem
    }
    .relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item:nth-child(6n) {
        margin-bottom: 1.5rem
    }
}
@media(min-width: 800px) {
    .relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item {
        width: 33.3333333333%
    }
    .relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item:nth-child(6n) {
        margin-bottom: .5rem
    }
}
@media(min-width: 1000px) {
    .relatedlinks:not(.relatedlinks--blog) .relatedlinks__list-item {
        width: 25%
    }
}
@media(max-width: 743px) {
    .ajax-holder, .navigation__sidebar.navigation-list {
        -webkit-transition: "opacity .2s ease-in-out";
        -moz-transition: "opacity .2s ease-in-out";
        -ms-transition: "opacity .2s ease-in-out";
        -o-transition: "opacity .2s ease-in-out";
        transition: opacity .2s ease-in-out
    }
}
body.reload .ajax-holder {
    opacity: .4;
    position: relative
}
body.reload .ajax-holder:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    margin-left: -15px;
    border: 4px solid #048cba;
    border-right-color: rgba(0, 0, 0, 0);
    border-radius: 50%;
    -webkit-animation: fadeIn .4s forwards, spin 1s linear infinite;
    animation: fadeIn .4s forwards, spin 1s linear infinite;
    visibility: hidden;
    top: 9.375rem
}
@media(max-width: 743px) {
    body.reload .ajax-holder:before {
        top: 2.5rem
    }
}
@media(max-width: 743px) {
    body.reload .imgpagehead--parkcountry, body.reload .imgpagehead--tour, body.reload .tour__head__container, body.reload .operator__header {
        opacity: .1
    }
    body.reload .ajax-holder, body.reload .navigation__sidebar.navigation-list {
        opacity: .4
    }
}
.review-breakdown {
    margin-top: .625rem
}
.review-breakdown li {
    margin-top: .125rem
}
.review-breakdown span {
    position: relative;
    display: inline-block;
    width: 6.875rem;
    height: .625rem;
    background-color: #d9d9d9;
    margin: 0 .3125rem;
    top: .0625rem
}
.review-breakdown span em {
    display: inline-block;
    height: .625rem;
    display: block;
    position: absolute;
    background-color: #f2c058
}
@media(min-width: 970px)and (max-width: 1075px) {
    .review-breakdown span {
        width: 5.3125rem
    }
}
.review-breakdown i {
    color: #999
}
.review-breakdown+a {
    margin-top: 3.125rem
}
.reviewlist__sorting {
    font-size: .875rem
}
.reviewlist__sorting div {
    position: relative;
    margin-top: .625rem;
    margin-bottom: 1.875rem;
    border-bottom: .0625rem solid #d9d9d9;
    padding-bottom: 2.5rem
}
.reviewlist__sorting div a {
    margin: 0 .3125rem 0 .3125rem;
    display: inline-block;
    padding-right: .8125rem
}
.reviewlist__sorting div a.active-asc, .reviewlist__sorting div a.active-desc {
    position: relative
}
.reviewlist__sorting div a.active-asc:after, .reviewlist__sorting div a.active-desc:after {
    content: "";
    display: block;
    position: absolute;
    top: .5625rem;
    right: 0;
    width: 0;
    height: 0;
    border-left: 4px solid rgba(0, 0, 0, 0);
    border-right: 4px solid rgba(0, 0, 0, 0);
    border-bottom: 4px solid #006400
}
.reviewlist__sorting div a.active-desc:after {
    border-top: 4px solid #006400;
    border-bottom: none
}
.reviewlist__sorting div span {
    position: absolute;
    bottom: .625rem;
    left: 0
}
.review {
    margin: 0 0 .9375rem;
    page-break-inside: avoid
}
.review+.review {
    margin-top: 1.5625rem;
    padding-top: 1.5625rem
}
.review__reply {
    margin-top: 1.25rem
}
.review__reply h6 {
    font-weight: bold;
    padding-left: .3125rem;
    margin-bottom: .125rem;
    position: relative;
    padding-right: 10.625rem
}
.review__reply h6 span {
    font-weight: normal
}
.review__reply img {
    max-width: 6.25rem;
    float: right
}
.review__reply .txt--small {
    padding-left: .3125rem !important
}
.review__reply p {
    padding-left: .3125rem !important
}
.review--snippet span.review__person__reviewed {
    display: block
}
.review__person {
    position: relative;
    min-height: 3.125rem;
    padding-top: .25rem;
    padding-left: 3.125rem
}
.review__person i, .review__person img.avatar, .review__person .review__avatar {
    width: 2.625rem;
    position: absolute;
    top: .25rem;
    left: 0
}
.review__person img.avatar, .review__person .review__avatar {
    border-radius: 1.3125rem
}
.review__person .label {
    position: absolute;
    width: 2.625rem;
    height: 2.625rem;
    top: .125rem;
    left: 0
}
.review__person .label img {
    z-index: 4
}
.review__person .label span {
    position: absolute;
    bottom: -0.5rem;
    display: block;
    width: 120%;
    left: -10%;
    height: .8125rem;
    background: #d69425;
    z-index: 2
}
.review__person .label span:before, .review__person .label span:after {
    content: "";
    display: block;
    position: absolute;
    top: .09375rem;
    left: -0.3125rem;
    width: .625rem;
    height: .625rem;
    transform: rotate(45deg);
    background-color: #e9e9e9
}
.review__person .label span:after {
    left: auto;
    right: -0.3125rem
}
.content--tabbed .review__person .label span:before, .content--tabbed .review__person .label span:after {
    background-color: #fff
}
.review__person .label i {
    display: block;
    content: "Expert";
    width: 2.125rem;
    height: .8125rem;
    line-height: .6875rem;
    background-color: #ffb431;
    font-size: .625rem;
    color: #000;
    left: .25rem;
    bottom: -0.6875rem;
    top: auto;
    opacity: 1;
    position: absolute;
    z-index: 4;
    text-align: center
}
.review__person .label i:before, .review__person .label i:after {
    content: "";
    background-color: #666;
    width: .125rem;
    height: .0625rem;
    position: absolute;
    top: -0.0625rem;
    z-index: 2;
    left: .125rem
}
.review__person .label i:after {
    left: auto;
    right: .125rem
}
.directory-reviews .review__person .label span:before, .directory-reviews .review__person .label span:after {
    background-color: #fbfbfb
}
.review__person p {
    line-height: 1rem;
    font-style: italic;
    font-size: .8125rem;
    color: #999;
    display: block;
    padding-top: .125rem;
    padding-bottom: .625rem;
    padding-left: 0
}
.detail__content__block .review__person p {
    padding-top: .125rem !important;
    padding-left: 0 !important
}
.review__person p a {
    font-style: normal
}
.review__person p span {
    white-space: nowrap
}
.review__person p+p {
    padding-top: 0 !important;
    padding-bottom: .3125rem;
    position: relative;
    top: -0.3125rem;
    font-style: normal;
    color: #666
}
.review__person__name {
    display: inline-block
}
.review__person__when, .review__person__reviewed, .review__person__country {
    display: inline-block;
    font-size: .8125rem
}
.review__person__when, .review__person__reviewed {
    margin-right: .9375rem
}
.review__person__name+.review__person__when {
    margin-left: 1.5625rem
}
.review__body {
    padding: 1.25rem 1.5625rem;
    position: relative;
    margin-top: .625rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9;
    padding: 1.25rem;
    position: relative
}
@media(max-width: 743px) {
    .review__body {
        border-left: 0;
        border-right: 0;
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        padding: 1.25rem 1.25rem
    }
}
.review__body:before {
    position: absolute;
    top: -0.5rem;
    left: 2.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9
}
.review__body:after {
    background-color: #fefdf9;
    position: absolute;
    top: 0;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .8125rem
}
.review__body span {
    margin-left: .125rem;
    font-size: .75rem;
    color: #666;
    font-family: "Noto Sans", "Arial", sans-serif
}
.review__body span em {
    font-size: .875rem;
    font-weight: 600;
    color: #444;
    font-style: normal !important;
    letter-spacing: .03125rem;
    margin-right: .1875rem
}
.review__body span a {
    font-size: .875rem
}
.review__body .review-about {
    margin-bottom: 1.25rem;
    border-bottom: 1px solid #f6d89a;
    padding-bottom: 1.25rem
}
.review__body .review-about a {
    font-weight: bold
}
.review__body h5 {
    font-size: 1.375rem;
    line-height: 1.5625rem;
    margin-bottom: .5rem;
    position: relative;
    word-break: break-word;
    font-family: "Gentium Basic", serif
}
.review__body h5:before {
    content: "“";
    position: absolute;
    top: 0;
    left: -0.5rem
}
.review__body h5:after {
    content: "”";
    margin-left: .125rem
}
.review__body .stars.large {
    top: -0.1875rem
}
.review__body strong+.stars.large {
    margin-left: .25rem
}
.review__body .overallrating, .review__body .subratings {
    font-size: .8125rem
}
.review__body .subratings {
    margin: .625rem 0 1.25rem .75rem;
    max-width: 28.125rem
}
.review__body .subratings .subrating {
    display: inline-block
}
.review__body .subratings .subrating label {
    display: inline-block;
    width: 5.125rem
}
.review__body .subratings .subrating .stars {
    position: relative;
    top: -0.125rem;
    margin-right: 3.125rem
}
.review__body p {
    margin-top: .5rem
}
.detail__content__block .review__body p {
    padding-top: 0;
    padding-left: 0
}
.detail__content__block .review__body p em {
    font-weight: normal;
    font-style: normal
}
.review__body p em {
    display: none;
    font-weight: normal;
    font-style: normal
}
.review__body p sup, .review__body p sub {
    position: relative;
    vertical-align: top;
    font-size: x-small
}
.review__body p sup {
    top: -0.25rem
}
.review__body p sub {
    bottom: -0.25rem
}
.col-t-6 .review__body p {
    line-height: 1.25rem
}
.review__body:after {
    left: 4.0625rem
}
.review__body:before {
    left: 4.1875rem
}
.review__body--reviewform:before {
    left: 134px
}
.review__body--reviewform:after {
    left: 132px
}
.review__disclaimer {
    display: block;
    margin-bottom: 15px;
    color: #999
}
.review__body__footer {
    border-top: .0625rem solid #f6d89a;
    padding-top: 1.4375rem;
    margin-top: 1.875rem;
    font-size: .8125rem
}
.review__body__footer div {
    display: inline-block;
    position: relative
}
.review__body__footer div>span {
    display: inline-block;
    float: left;
    margin-right: .625rem
}
.review__body__footer div .review_helpful_link {
    position: relative;
    padding-left: 1.25rem;
    margin: 0 .375rem;
    top: .125rem
}
.review__body__footer div .review_helpful_link i {
    position: absolute;
    top: 0;
    left: 0;
    color: #666;
    width: 1rem;
    height: 1rem
}
.review__body__footer div .review_helpful_link span {
    position: relative;
    top: -0.1875rem
}
.review__body__footer div .review_helpful_link:hover span {
    text-decoration: underline
}
.review__body__footer div .review_helpful_no i {
    top: 0
}
.review__body__footer div .loading {
    left: auto;
    right: -1.25rem;
    top: .375rem;
    width: .75rem;
    height: .75rem;
    border: .125rem solid #048cba;
    border-right-color: rgba(0, 0, 0, 0)
}
.review__body__footer .link-to {
    float: right
}
.review__body__footer span {
    margin-left: 0
}
.review__body__photos {
    margin-top: .9375rem
}
.review__body__photos:after {
    content: "";
    display: table;
    clear: both
}
.review__body__photos img {
    float: left;
    margin-right: .3125rem;
    margin-top: .3125rem
}
.review-score {
    margin-left: .125rem;
    font-size: .75rem;
    color: #666;
    font-family: "Noto Sans", "Arial", sans-serif
}
.review-score em {
    font-size: .875rem;
    font-weight: 600;
    color: #444;
    font-style: normal !important;
    letter-spacing: .03125rem;
    margin-right: .1875rem
}
.review-score a {
    font-size: .875rem
}
.review-score--white, .review-score--white em {
    color: #fff
}
.stars.large+.review-score {
    position: relative;
    margin-left: 0
}
.review-more a.reviews-all-link {
    position: relative;
    padding-left: .625rem;
    display: inline-block
}
.review-more a.reviews-all-link:before {
    content: "›";
    font-weight: normal;
    font-size: .875rem;
    position: absolute;
    top: 0;
    left: 0
}
.review-more a.reviews-all-link:before {
    color: #444
}
.review-more--write {
    margin-top: .625rem;
    padding-top: .625rem
}
.review-more--write a.btn {
    top: -0.375rem
}
@media(max-width: 743px) {
    .review__body--reviewform {
        margin-left: 0;
        margin-right: 0;
        border: 1px solid #f6d89a !important
    }
    .review__body--reviewform:before, .review__body--reviewform:after {
        display: none
    }
}
@media(min-width: 744px) {
    .review__reply {
        margin-left: 1.875rem
    }
    .review-score--tabletwhite {
        color: #fff
    }
    .review-score--tabletwhite em {
        color: #fff
    }
}
@media(min-width: 744px)and (max-width: 810px), (min-width: 970px)and (max-width: 1110px) {
    .review-more--write {
        padding-top: 0
    }
    .review-more--write a.btn {
        float: none;
        top: 0
    }
    .review-more--write a.reviews-all-link {
        display: block;
        margin-bottom: .875rem
    }
}
.review-summary {
    margin: .625rem 0 .625rem 0
}
.review-summary ul:nth-child(1) {
    position: relative;
    top: .0625rem;
    margin-bottom: .4375rem
}
.review-summary ul:nth-child(1) span {
    margin-left: .125rem;
    font-size: .75rem;
    color: #666;
    font-family: "Noto Sans", "Arial", sans-serif
}
.review-summary ul:nth-child(1) span em {
    font-size: .875rem;
    font-weight: 600;
    color: #444;
    font-style: normal !important;
    letter-spacing: .03125rem;
    margin-right: .1875rem
}
.review-summary ul:nth-child(1) span a {
    font-size: .875rem
}
.review-summary ul:nth-child(1) b {
    display: inline-block;
    width: 6.5625rem
}
.review-summary ul:nth-child(1) a, .review-summary ul:nth-child(1) span {
    margin-left: .0625rem;
    font-size: .8125rem
}
.review-summary ul:nth-child(1) li>div .score-count {
    display: inline-block
}
.review-summary ul:nth-child(1) .stars.large {
    position: relative;
    top: -0.125rem
}
.review-summary ul:nth-child(2) li {
    line-height: 1.5rem;
    position: relative;
    padding-left: .75rem
}
.review-summary ul:nth-child(2) li span {
    display: inline-block;
    width: 5.875rem
}
.col-d-3 .review-summary ul:nth-child(2) li span {
    width: 4.625rem
}
.review-summary:not(.review-summary--subtype):not(.review-summary--hidetitle) ul:nth-child(1) b {
    position: absolute
}
.review-summary:not(.review-summary--subtype):not(.review-summary--hidetitle) ul:nth-child(1) li>div {
    padding-left: 6.875rem;
    display: inline-block
}
.review-summary:not(.review-summary--subtype):not(.review-summary--hidetitle) ul:nth-child(1) li>div .stars {
    margin-right: .1875rem
}
.review-summary:not(.review-summary--subtype):not(.review-summary--hidetitle) ul:nth-child(1) li>div .score-count {
    display: inline-block;
    white-space: nowrap
}
.review-summary:not(.review-summary--subtype):not(.review-summary--hidetitle) ul:nth-child(1) li>div .score-count .review-score {
    margin-left: 0
}
.review-summary .btn {
    margin: 1.5625rem 0 0 .75rem
}
.review-summary+.review-summary {
    margin-top: .9375rem
}
.review-summary--indent {
    padding: 0 !important;
    padding-left: .75rem !important
}
.review-summary--subtype b {
    display: block !important;
    margin-bottom: .625rem
}
.review-summary--subtype a {
    white-space: nowrap;
    margin-left: 0;
    margin-top: .25rem;
    display: inline-block
}
.review-summary--subtype+.review-summary--subtype {
    margin-top: 0
}
.review-summary--oneline {
    font-size: .8125rem
}
.review-summary--oneline .stars {
    position: relative;
    left: -0.125rem
}
.review-summary--oneline .stars.large {
    top: -0.1875rem
}
.review-summary--oneline .stars.large+.review-score {
    position: relative;
    top: 0
}
.review-summaries {
    padding-left: .75rem;
    padding-top: .3125rem
}
.review-summaries li {
    padding-bottom: .3125rem
}
.review-summaries b {
    display: inline-block;
    width: 35%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    top: .25rem;
    font-weight: normal
}
.review-summaries b.strong {
    font-weight: bold
}
.review-summaries span {
    margin-left: .125rem;
    font-size: .75rem;
    color: #666;
    font-family: "Noto Sans", "Arial", sans-serif
}
.review-summaries span em {
    font-size: .875rem;
    font-weight: 600;
    color: #444;
    font-style: normal !important;
    letter-spacing: .03125rem;
    margin-right: .1875rem
}
.review-summaries span a {
    font-size: .875rem
}
.review-summaries .stars {
    position: relative;
    top: -0.125rem
}
.review-summaries a {
    white-space: nowrap
}
@media(max-width: 400px) {
    .review-summaries b {
        width: 70%
    }
    .review-summaries .stars .sbi+.sbi {
        display: none
    }
}
@media(max-width: 743px) {
    .park__content .review-summary ul:nth-child(1) a, .country__content .review-summary ul:nth-child(1) a {
        font-size: .875rem
    }
    .review-summaries li {
        position: relative;
        padding-left: .625rem
    }
    .review-summaries li:before {
        content: "›";
        font-weight: normal;
        font-size: .875rem;
        position: absolute;
        top: .25rem;
        left: 0
    }
    .review-summaries b {
        width: 58%;
        max-width: 13.75rem
    }
}
@media(min-width: 744px) {
    .review-summary {
        margin: 1.4375rem 0 .625rem 0
    }
    .review-summaries {
        padding-left: 1.25rem
    }
    .review-summaries .review-score {
        padding-right: 1.875rem
    }
}
@media(min-width: 744px)and (max-width: 1150px) {
    .review-summaries li b {
        width: 45%
    }
    .review-summaries li a i {
        display: none
    }
    .review-summaries li .review-score {
        padding-right: 1.25rem
    }
    .review-summary--indent+.review-summary--indent {
        margin-top: 1.4375rem
    }
}
@media(min-width: 744px)and (max-width: 920px) {
    .review-summaries li .stars .sbi+.sbi {
        display: none
    }
}
@media(min-width: 970px)and (max-width: 1100px) {
    .review-summaries li b {
        width: 50%
    }
    .review-summaries li .stars .sbi+.sbi {
        display: none
    }
}
.review-summary--sidebar .stars.large {
    margin: 0 0 0 -0.175rem !important
}
.review-summary--sidebar .review-score em {
    margin-right: 0 !important
}
.score_expl {
    overflow: hidden;
    width: 4.0625rem;
    height: 1.5625rem;
    float: right;
    transition: height .3s ease-in-out;
    padding-top: 3.125rem;
    position: absolute;
    bottom: 0;
    right: 0
}
.score_expl b {
    display: block;
    width: 4.0625rem;
    height: 1.5625rem;
    position: absolute;
    font-size: .625rem;
    font-weight: normal;
    text-align: right;
    padding-right: .3125rem;
    background-color: #2a7018;
    top: 1.5625rem;
    left: 0;
    line-height: 1.5625rem;
    color: #fff;
    border-radius: 1.25rem 0 0 0
}
.score_expl.hovered {
    position: relative;
    bottom: 3.125rem;
    right: auto;
    padding: 1.25rem;
    width: 100%;
    height: auto;
    font-size: .6875rem;
    padding-top: 5rem;
    line-height: 1rem;
    padding-bottom: 0
}
.score_expl.hovered:before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    top: 3.125rem;
    left: 0
}
.score_expl.hovered hr {
    border: 0;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    margin: .3125rem 0
}
.score_expl.hovered .green {
    color: #2a7018
}
.score_expl.hovered .red {
    color: #006400
}
.score_expl.hovered b {
    display: inline-block;
    width: auto;
    height: auto;
    border-radius: inherit;
    position: relative;
    color: #2a7018;
    line-height: normal;
    background-color: rgba(0, 0, 0, 0);
    top: 0
}
.score_expl.hovered b:before {
    display: none
}
.selected-filters {
    font-size: .875rem;
    line-height: 1.875rem;
    margin-bottom: -0.3125rem;
    position: relative;
    margin-top: 0;
    top: -0.9375rem
}
.selected-filters span {
    position: relative;
    left: 0;
    display: block;
    margin-right: .3125rem
}
.selected-filters.autoheight {
    height: auto !important
}
.selected-filters__item {
    display: inline-block;
    color: #0378a0;
    background-color: #fff;
    padding: 0 1.5625rem 0 .625rem;
    border: 1px solid #0378a0;
    margin-right: .5rem;
    margin-bottom: .4375rem;
    line-height: 1.75rem;
    position: relative
}
.selected-filters__item .clear-btn {
    top: 0;
    left: auto;
    right: 0;
    height: 100%;
    width: 1.5625rem
}
.selected-filters__item--clear {
    color: #006400;
    border: 1px solid #006400;
    padding-right: .625rem
}
.row .col-12.selected-filters {
    padding-right: 0;
    padding-left: 0
}
@media(max-width: 743px) {
    .selected-filters.short {
        margin-top: .3125rem;
        margin-bottom: -0.5rem
    }
    .selected-filters.short span {
        display: inline-block
    }
    .selected-filters.short .selected-filters__item--clear {
        display: none
    }
}
@media(hover: hover) {
    .selected-filters__item:hover {
        cursor: pointer
    }
    .selected-filters__item:hover a:before {
        background-color: #006400;
        border-color: #006400
    }
    .selected-filters__item:hover a:after {
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/clear-white.svg")
    }
    .selected-filters__item--clear:hover {
        color: #fff;
        background-color: #006400;
        cursor: pointer
    }
}
.sidebar__block {
    background-color: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, .18);
    display: block;
    color: #444;
    padding: 1.25rem;
    margin-bottom: 1.25rem
}
.sidebar__block.sidebar__block--map, .sidebar__block.sidebar__block--photo {
    padding: 0;
    display: block;
    cursor: pointer;
    text-align: center;
    color: #0378a0;
    border-radius: .3125rem
}
.sidebar__block.sidebar__block--map>div, .sidebar__block.sidebar__block--photo>div {
    content: "";
    width: 100%;
    height: 100%;
    padding-top: 50%;
    position: relative;
    overflow: hidden
}
.sidebar__block.sidebar__block--map>div img, .sidebar__block.sidebar__block--photo>div img {
    position: absolute;
    width: 100%;
    height: 100%;
    max-width: none;
    top: 0;
    left: 0;
    object-fit: cover;
    z-index: 1;
    border-radius: .3125rem .3125rem 0 0
}
.sidebar__block.sidebar__block--map>div:after, .sidebar__block.sidebar__block--photo>div:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    z-index: 2
}
.sidebar__block.sidebar__block--map span, .sidebar__block.sidebar__block--photo span {
    display: block;
    line-height: 2.5rem;
    color: #0378a0
}
.sidebar__block.sidebar__block--map span i, .sidebar__block.sidebar__block--photo span i {
    color: #666
}
.sidebar__block.sidebar__block--map span i.sbi, .sidebar__block.sidebar__block--photo span i.sbi {
    position: relative;
    margin-right: .3125rem;
    top: .1875rem;
    font-size: 1.25rem
}
*:not(.tour__sidebar)>.sidebar__block.sidebar__block--map {
    border-radius: .3125rem;
    text-decoration: underline rgba(0, 0, 0, 0);
    transition: text-decoration .2s ease-in-out, box-shadow .2s ease-in-out
}
*:not(.tour__sidebar)>.sidebar__block.sidebar__block--map img {
    border-radius: .3125rem .3125rem 0 0
}
*:not(.tour__sidebar)>.sidebar__block.sidebar__block--map:hover {
    box-shadow: 0 0 5px rgba(0, 0, 0, .4);
    text-decoration: underline;
    transition-duration: .25s
}
.sidebar__block.sidebar__block--photo>div {
    padding-top: 62.5%
}
.sidebar__block.sidebar__block--photo>div img {
    width: 100%
}
.social-icon {
    display: inline-block;
    vertical-align: top;
    width: 1.5625rem;
    height: 1.5625rem;
    border-radius: 50%;
    background-color: #cbc7c7;
    cursor: pointer;
    float: right;
    margin-top: .75rem;
    position: relative
}
.social-icon:nth-child(1), .social-icon:nth-child(2) {
    margin-left: .9375rem
}
.social-icon svg, .social-icon *:not(.social-icon__image)>img, .social-icon .social-icon__image {
    width: 70%;
    height: 70%;
    margin-top: 15%;
    margin-left: 15%
}
.social-icon svg {
    position: absolute;
    top: 0;
    left: 0
}
.social-icon path, .social-icon circle {
    fill: #3f3d3d
}
.social-icon--twitter svg, .social-icon--twitter *:not(.social-icon__image)>img, .social-icon--twitter .social-icon__image {
    width: 60%;
    height: 60%;
    margin-top: 20%;
    margin-left: 20%
}
.social-icon--instagram svg, .social-icon--instagram *:not(.social-icon__image)>img, .social-icon--instagram .social-icon__image {
    margin-top: 8%;
    margin-left: 9.2%;
    width: 90%;
    height: 90%
}
.social-icon--facebook svg, .social-icon--facebook *:not(.social-icon__image)>img, .social-icon--facebook .social-icon__image {
    width: 100%;
    height: 100%;
    margin-top: 0;
    margin-left: 0
}
@media(hover: hover) {
    .social-icon:hover {
        background-color: #006400
    }
    .social-icon:hover svg path, .social-icon:hover svg circle {
        fill: #fff
    }
}
.stars {
    display: inline-block;
    position: relative;
    font-size: 1.125rem;
    cursor: default;
    vertical-align: middle;
    top: -0.125rem
}
.stars i {
    float: left
}
.stars.large, .stars--l {
    top: -0.125rem
}
.stars.large i, .stars--l i {
    width: 1.375rem;
    height: 1.375rem;
    margin-right: .0625rem
}
.stars.small {
    top: -0.125rem
}
.stars.small i {
    width: .875rem;
    height: .875rem;
    margin-right: .03125rem
}
.stars.select i, .stars--select i {
    width: 2.25rem;
    padding: .125rem;
    position: relative;
    top: .125rem
}
.stars.select.small i, .stars--select.stars--small i {
    width: 1.5rem;
    height: 1.5rem;
    margin-bottom: -0.5rem;
    top: -0.25rem
}
.stars.notrated i, .stars--notrated i {
    opacity: .1
}
.stars.notrated:after, .stars--notrated:after {
    width: 100%;
    height: 100%;
    margin: 0;
    content: "Not rated";
    font-size: .625rem;
    display: block;
    position: absolute;
    text-align: center;
    line-height: .875rem;
    text-shadow: none;
    top: .0625rem
}
.stars.onestar i+i, .stars--onestar i+i {
    display: none !important
}
.stars__star {
    float: left
}
@media(max-width: 320px) {
    .stars i {
        margin-right: 0
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .stars.onestar-t i+i, .stars--onestar-t i+i {
        display: none !important
    }
}
.table, .table th, .table td {
    border: 1px solid #999
}
.table th, .table td {
    padding: .625rem
}
.table th {
    font-weight: bold
}
.table--sec {
    width: 100%;
    margin: 1.25rem 0;
    border: 0
}
.table--sec th, .table--sec td {
    padding: .625rem;
    font-size: .875rem;
    text-align: center;
    border: 1px solid #d9d9d9
}
.table--sec th a, .table--sec td a {
    text-align: center;
    cursor: pointer;
    max-width: 12.5rem;
    margin: 0 auto
}
.table--sec th a[href="#"].textual, .table--sec td a[href="#"].textual {
    color: #666;
    border-bottom: 1px dashed #666
}
.table--sec th a[href="#"].textual:hover, .table--sec td a[href="#"].textual:hover {
    text-decoration: none !important
}
.table--sec th a.disabled, .table--sec td a.disabled {
    cursor: default
}
.table--sec th a.disabled, .table--sec th a.disabled:hover, .table--sec td a.disabled, .table--sec td a.disabled:hover {
    color: #666
}
.table--sec th.center, .table--sec td.center {
    text-align: center
}
.table--sec th:first-child {
    text-align: left
}
.table--sec tr.cells-8 th, .table--sec tr.cells-8 td {
    padding: .625rem .1875rem;
    font-size: .8125rem
}
.table--sec tr.cells-8 th:first-child, .table--sec tr.cells-8 td:first-child {
    padding: .625rem
}
.table--sec thead tr {
    border-bottom: 1px solid #d9d9d9
}
.table--sec thead tr th {
    font-weight: bold;
    line-height: 1.125rem;
    text-align: center;
    background-color: #f9f9f9
}
.table--sec thead tr th span {
    font-weight: normal;
    display: block;
    color: #999;
    font-size: .8125rem
}
.table--sec tbody th:first-child {
    font-weight: normal
}
.table--sec .sb-green {
    text-align: center
}
.table--sec .sb-green i {
    position: relative;
    top: .125rem
}
.table__footer td {
    border: 0
}
.table__heading {
    border: 0 !important;
    background: rgba(0, 0, 0, 0) !important;
    padding: 0 0 .625rem !important;
    margin: 0 !important
}
.table__heading-txt {
    display: flex;
    align-items: center;
    font-size: .9375rem !important
}
.table__heading-txt:before {
    content: none !important
}
.table__heading-txt:after {
    content: "";
    display: inline-block;
    height: 0px;
    border-bottom: 1px dotted #b3b3b3;
    flex-grow: 1;
    min-width: 0;
    margin-left: .875rem
}
.table__empty-cell {
    padding: 0px !important;
    font-size: 0px !important;
    line-height: 1.25rem;
    border: 0 !important
}
.table--besttime th, .table--besttime td {
    text-align: left;
    vertical-align: top;
    line-height: 1.25rem;
    padding-top: .8125rem
}
.table--besttime .grey {
    color: #999
}
.table__head-icon {
    display: flex;
    align-items: start
}
.table__head-icon .sbi {
    flex: 0 0 1.5625rem;
    position: relative;
    margin: 0 .3125rem .3125rem -0.3125rem;
    top: -0.1875rem
}
.table__head-icon .sbi--best-time {
    flex: 0 0 1.25rem;
    margin: 0 .4375rem .3125rem -0.1875rem;
    top: -0.0625rem
}
.tourpreferences .col {
    padding: 0 !important;
    color: #444;
    position: relative;
    text-decoration: none;
    height: 3.125rem;
    margin-bottom: .8125rem
}
.tourpreferences .col .clear-btn {
    z-index: 3;
    cursor: pointer;
    width: 1.5625rem;
    height: 3rem;
    position: absolute;
    top: -0.0625rem;
    right: 0
}
.tourpreferences .col.tourpreferences__date:not(.filled) .clear-btn {
    display: none !important
}
.tourpreferences .col .open-sign {
    z-index: 3;
    top: .5625rem;
    right: .5625rem;
    font-size: 1.5625rem;
    position: absolute;
    color: #999;
    line-height: 1.25rem
}
.tourpreferences .col .open-sign--arrow {
    pointer-events: none
}
.tourpreferences .col .open-sign--search {
    width: 1.5625rem;
    top: .8125rem;
    right: 0;
    cursor: pointer
}
.tourpreferences .col .open-sign--search i {
    opacity: .6;
    width: .875rem;
    position: relative;
    top: -0.25rem;
    left: .3125rem
}
.tourpreferences .col .open-sign--search:hover i {
    opacity: 1
}
.tourpreferences .col.tourpreferences__block {
    background-color: #fff;
    position: relative;
    line-height: 3rem;
    padding-left: 2.625rem !important;
    cursor: default
}
.tourpreferences .col.tourpreferences__block svg {
    opacity: .8
}
.tourpreferences .col.tourpreferences__block div.placeholder {
    padding-left: 0 !important;
    border: 0;
    line-height: 2.875rem;
    font-size: 1rem
}
.tourpreferences .col.tourpreferences__block span.lbl {
    font-size: 1rem;
    position: relative;
    top: 0;
    color: #999
}
.tourpreferences .col.tourpreferences__block span.lbl.filled {
    position: relative;
    color: #444
}
.tourpreferences .col.tourpreferences__block span.lbl.filled:before {
    content: "Start Date";
    font-size: .8125rem;
    color: #888;
    position: absolute;
    top: -0.3125rem;
    left: 0;
    line-height: .625rem
}
.tourpreferences .col.tourpreferences__block span.lbl.filled span {
    position: relative;
    top: .5625rem
}
.tourpreferences .col.tourpreferences__block span.lbl.lbl-persons.filled {
    color: #444
}
.tourpreferences .col.tourpreferences__block span.lbl.lbl-persons.filled:before {
    content: "Travelers"
}
.tourpreferences .col.tourpreferences__date, .tourpreferences .col.tourpreferences__persons {
    cursor: pointer
}
.tourpreferences .col.tourpreferences__destination {
    padding-left: 0 !important
}
.tourpreferences .col.tourpreferences__destination .clear-btn {
    display: none
}
.tourpreferences .col.tourpreferences__destination label {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0
}
.tourpreferences .col.tourpreferences__destination input {
    border: 0;
    background-color: rgba(0, 0, 0, 0);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 3;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0 1.5625rem 0 .625rem;
    font-size: 1rem;
    -webkit-appearance: none;
    -moz-appearance: textfield;
    display: block;
    color: #444;
    height: 3.125rem;
    -webkit-box-shadow: "none";
    -moz-box-shadow: "none";
    -ms-box-shadow: "none";
    -o-box-shadow: "none";
    box-shadow: none
}
.tourpreferences .col .tourpreferences__destination__row {
    position: relative
}
.tourpreferences .col .tourpreferences__destination__row:after {
    content: "";
    display: table;
    clear: both
}
.tourpreferences .col .tourpreferences__destination__row .placeholder {
    margin-left: 2.625rem;
    color: #999
}
.tourpreferences .col .tourpreferences__destination__row.filled div.placeholder {
    font-size: .8125rem !important;
    position: relative;
    line-height: 1rem;
    top: .375rem;
    margin-bottom: 1.75rem;
    z-index: 2;
    color: #888
}
.tourpreferences .col .tourpreferences__destination__row.filled input[name=destination] {
    padding-top: .75rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}
.tourpreferences .col .tourpreferences__destination__row input[name=destination]:focus {
    padding-top: .75rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}
.tourpreferences .col .tourpreferences__destination__row input[name=destination]:focus+div.placeholder {
    font-size: .8125rem;
    position: relative;
    line-height: 1rem;
    top: .25rem;
    margin-bottom: 1.75rem;
    z-index: 2;
    color: #888
}
.tourpreferences .col:hover {
    text-decoration: none
}
.tourpreferences .tourpreferences__destination__add {
    font-size: .8125rem;
    line-height: 1rem;
    margin-top: .3125rem;
    position: relative
}
.tourpreferences .tourpreferences__destination__add span {
    padding-left: .75rem;
    display: inline-block;
    position: relative
}
.tourpreferences .tourpreferences__destination__add i {
    position: absolute;
    left: 0;
    top: -0.0625rem;
    font-size: 1rem
}
.tourpreferences .tourpreferences__destination__suggestions {
    margin-left: .9375rem;
    margin-bottom: 1.25rem;
    display: none
}
.tourpreferences .tourpreferences__destination__suggestions b {
    margin-top: .9375rem;
    display: block;
    margin-bottom: .125rem;
    position: relative
}
.tourpreferences .tourpreferences__destination__suggestions li {
    padding: .125rem 0
}
.tourpreferences a.search {
    height: 100%;
    line-height: 3rem;
    font-size: 1.125rem
}
.tourpreferences i.row-icon {
    position: absolute;
    top: .875rem;
    left: .75rem;
    z-index: 4;
    width: 1.375rem
}
.tourpreferences .col.tourpreferences__date .tourpreferences__date__extraflex {
    display: none
}
.tourpreferences .col.tourpreferences__date .tourpreferences__date__extraflex span {
    display: inline-block;
    line-height: .9375rem
}
.tourpreferences .col.tourpreferences__date.filled {
    position: relative
}
.tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex {
    display: block !important;
    background-color: #fff;
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    border: 0;
    margin-top: .375rem;
    line-height: 1.375rem;
    box-sizing: content-box
}
.tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex label {
    display: block;
    font-size: .8125rem;
    cursor: pointer;
    position: relative;
    color: #0378a0;
    padding-left: 2.1875rem;
    padding-bottom: .6875rem;
    padding-top: .25rem
}
.tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex label:hover {
    text-decoration: underline
}
.tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex label input[type=checkbox] {
    width: 1rem;
    height: 1rem;
    line-height: calc(1rem - 2px);
    position: absolute;
    top: .5rem;
    left: .875rem;
    text-align: center;
    box-sizing: border-box
}
.tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex label input[type=checkbox]:before {
    width: .625rem;
    height: .625rem
}
.tourpreferences .detail {
    display: none;
    background-color: rgba(0, 0, 0, 0) !important;
    position: absolute;
    left: 0;
    cursor: default;
    width: 100%;
    z-index: 10;
    overflow: visible
}
.tourpreferences .detail__title {
    position: absolute;
    z-index: 11;
    width: 100%;
    line-height: 1.875rem;
    height: 1.875rem;
    background-color: #efefef;
    padding: 0 1.25rem;
    text-align: center;
    font-size: .875rem;
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #ccc;
    top: 0;
    border-top: 0
}
.tourpreferences .detail__close {
    position: absolute;
    border: 0;
    top: -0.0625rem;
    right: -0.0625rem;
    width: 1.875rem;
    height: 1.875rem;
    background-color: rgba(0, 0, 0, 0);
    cursor: pointer
}
.tourpreferences .detail__close:before {
    content: "";
    position: absolute;
    background-color: #444;
    border-radius: .1875rem;
    width: 1.125rem;
    height: 1.125rem
}
.tourpreferences .detail__close i {
    width: .625rem;
    position: absolute
}
.tourpreferences .detail__close:before, .tourpreferences .detail__close i {
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%)
}
.tourpreferences .detail__close:hover:before {
    background-color: #666
}
.tourpreferences .detail span {
    color: #999
}
.tourpreferences .detail label {
    display: inline-block;
    line-height: 3.75rem
}
.tourpreferences .detail .children-ages label {
    line-height: 3rem
}
.tourpreferences .detail input[type=date] {
    font-size: 1rem;
    font-weight: 600;
    padding: .1875rem .3125rem;
    border: 1px solid #d9d9d9;
    height: 2.1875rem;
    line-height: 2.1875rem;
    text-align: center;
    width: 10.375rem
}
.tourpreferences .detail .inner {
    padding: 1.875rem .625rem .625rem !important;
    background-color: #fff !important;
    margin-top: .9375rem;
    border: 1px solid #d9d9d9
}
.tourpreferences .detail .inner:before {
    position: absolute;
    top: .5625rem;
    left: 2.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #d9d9d9;
    background-color: #efefef
}
.tourpreferences .detail .inner:after {
    background-color: #efefef;
    position: absolute;
    top: 1rem;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .875rem
}
.tourpreferences .detail .inner.calendar.rendered {
    padding: 2.5rem 1.25rem .9375rem !important
}
@media(max-width: 743px) {
    .tourpreferences .detail .inner.calendar.rendered {
        padding: 2.5rem .625rem .9375rem !important
    }
}
.tourpreferences .detail__destination {
    margin-top: .4375rem
}
.tourpreferences .detail__destination .inner {
    padding: 0 !important
}
.tourpreferences .detail__persons .inner {
    box-shadow: 0px 0px 7px rgba(50, 50, 50, .4);
    padding-bottom: 4.375rem !important
}
.tourpreferences .detail__persons .btn {
    width: 8.125rem;
    float: right;
    margin-top: .625rem
}
.tourpreferences .detail__persons .numberinput_enhanced {
    margin-top: .625rem
}
.tourpreferences .detail__date .inner {
    box-shadow: 0px 0px 7px rgba(50, 50, 50, .4)
}
.tourpreferences .detail__date label {
    width: 7.8125rem
}
.tourpreferences .detail__date label.checkbox-lbl {
    width: auto;
    position: relative;
    line-height: 2rem;
    padding-left: 1.75rem;
    cursor: pointer;
    float: left;
    font-size: .875rem
}
.tourpreferences .detail__date .btn {
    width: 4.375rem;
    margin-left: 0;
    margin-top: .625rem;
    display: inline-block;
    float: right
}
.container--directory .tourpreferences .col {
    background-color: rgba(0, 0, 0, 0);
    border: 0 !important;
    cursor: default
}
.container--directory .tourpreferences .col i.row-icon {
    left: 0;
    top: .75rem
}
.container--directory .tourpreferences .col .tourpreferences__destination__row {
    position: relative
}
.container--directory .tourpreferences .col .tourpreferences__destination__row__inner {
    overflow: hidden;
    width: 100%;
    height: 2.875rem;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: #fff;
    border: 1px solid #d9d9d9
}
.container--directory .tourpreferences .col .tourpreferences__destination__row .placeholder {
    margin-left: 0;
    font-size: 1rem;
    padding-left: .5625rem !important;
    line-height: 2.6875rem;
    padding-bottom: .3125rem;
    position: relative;
    z-index: 2;
    pointer-events: none
}
.container--directory .tourpreferences .col .tourpreferences__destination__row input {
    height: 2.875rem;
    padding-left: .5625rem
}
.container--directory .tourpreferences .col .tourpreferences__destination__row.filled .placeholder {
    padding-bottom: .25rem;
    top: .25rem
}
.container--directory .tourpreferences .col .tourpreferences__destination__row+.tourpreferences__destination__row {
    margin-top: .3125rem
}
.container--directory .tourpreferences .col.tourpreferences__date.filled {
    height: auto;
    padding-bottom: 1.75rem !important
}
.container--directory .tourpreferences .col.tourpreferences__date.filled .open-sign, .container--directory .tourpreferences .col.tourpreferences__persons.filled .open-sign {
    display: none
}
.container--directory .tourpreferences .col.active, .container--directory .tourpreferences .col:hover {
    background-color: rgba(0, 0, 0, 0)
}
.container--directory .tourpreferences .col.tourpreferences__block {
    padding-left: 1.875rem !important
}
.container--directory .tourpreferences .col.tourpreferences__block .inputholder {
    display: block;
    background-color: #fff;
    height: 2.875rem;
    top: 0;
    left: 0;
    border: 1px solid #d9d9d9;
    cursor: pointer
}
.container--directory .tourpreferences .col.tourpreferences__block span.lbl {
    position: absolute;
    margin-left: .625rem;
    line-height: 2.625rem;
    padding-bottom: .125rem;
    cursor: pointer;
    pointer-events: none
}
.container--directory .tourpreferences .col.tourpreferences__block span.lbl:before {
    top: .4375rem
}
.container--directory .tourpreferences .col .tourpreferences__destination__row:hover .tourpreferences__destination__row__inner, .container--directory .tourpreferences .col.tourpreferences__block .inputholder:hover, .container--directory .tourpreferences .col.tourpreferences__block.active .inputholder, .container--directory .tourpreferences .col .tourpreferences__destination__row.active .tourpreferences__destination__row__inner {
    border: 1px solid #e48901
}
.container--directory .tourpreferences .col.tourpreferences__date, .container--directory .tourpreferences .col.tourpreferences__persons {
    margin-top: .625rem
}
.container--directory .tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex {
    background-color: rgba(0, 0, 0, 0);
    margin-left: 1.875rem;
    width: auto
}
.container--directory .tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex label {
    padding: 0 0 0 1.375rem
}
.container--directory .tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex input[type=checkbox] {
    left: 0;
    top: .1875rem
}
.container--directory .messagebox--green .tourpreferences .col .tourpreferences__destination__row:hover .tourpreferences__destination__row__inner, .container--directory .messagebox--green .tourpreferences .col.tourpreferences__block .inputholder:hover, .container--directory .messagebox--green .tourpreferences .col.tourpreferences__block.active .inputholder, .container--directory .messagebox--green .tourpreferences .col .tourpreferences__destination__row.active .tourpreferences__destination__row__inner {
    border: 1px solid #67a856
}
@media(max-width: 969px) {
    .tourpreferences .col .open-sign--arrow {
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        top: .8125rem;
        right: .375rem
    }
    .tourpreferences .col.active .open-sign--arrow {
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        top: .8125rem;
        right: .8125rem
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active.tourpreferences__date {
        padding-bottom: .625rem !important
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active .detail {
        display: block;
        position: relative
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner {
        margin-top: .625rem
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner:before {
        top: -0.375rem;
        left: 1.3125rem
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner:after {
        top: 0;
        left: 1rem
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner .numberinput_enhanced {
        position: relative
    }
    .container--directory .tourpreferences__block:not(.tourpreferences__destination).active .tourpreferences__date__extraflex {
        display: none !important
    }
    .container--directory .tourpreferences__destination__row.active .detail {
        display: block;
        position: relative;
        top: .5rem;
        margin-bottom: .9375rem
    }
    .container--directory .tourpreferences__destination__row.active .detail .autocomplete-container {
        position: relative
    }
}
@media(max-width: 743px) {
    .tourpreferences .col.tourpreferences__block {
        border: .125rem solid #fff;
        height: auto;
        min-height: 3.25rem
    }
    .tourpreferences .col .tourpreferences__destination__row i.row-icon {
        top: .75rem
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active.tourpreferences__date {
        padding-bottom: .625rem !important
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active .detail {
        display: block;
        position: relative
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner {
        margin-top: .625rem
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner:before {
        top: -0.375rem;
        left: 1.3125rem
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner:after {
        top: 0;
        left: 1rem
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner .numberinput_enhanced {
        position: relative
    }
    .container--tourpref .tourpreferences__block:not(.tourpreferences__destination).active .tourpreferences__date__extraflex {
        display: none !important
    }
    .container--tourpref .tourpreferences__destination__row.active .detail {
        display: block;
        position: relative;
        top: .5rem;
        margin-bottom: .9375rem
    }
    .container--tourpref .tourpreferences__destination__row.active .detail .autocomplete-container {
        position: relative
    }
    .container--tourpref .tourpreferences__destination {
        border: 0 !important
    }
    .container--tourpref .tourpreferences__destination .tourpreferences__destination__row {
        border: 0 solid #fff
    }
    .container--tourpref .tourpreferences__destination .tourpreferences__destination__row input {
        padding-left: 2.75rem
    }
    .container--tourpref .tourpreferences__destination .tourpreferences__destination__row div.placeholder {
        line-height: 3rem
    }
    .container--tourpref .tourpreferences__destination .detail {
        padding: 0 .625rem
    }
    .container--tourpref .tourpreferences__destination__row .tourpreferences__destination__row__inner {
        border: 2px solid #fff;
        height: 3.25rem
    }
    .container--tourpref .tourpreferences__destination__row div.placeholder {
        top: .25rem !important
    }
    .container--tourpref .tourpreferences__destination__row+.tourpreferences__destination__row {
        border-top: 1px solid #d9d9d9
    }
    .container--tourpref .tourpreferences__destination__row+.tourpreferences__destination__row:hover, .container--tourpref .tourpreferences__destination__row+.tourpreferences__destination__row.active {
        border-top: 1px solid #fff
    }
    .container--tourpref .tourpreferences__destination__add {
        border-top: .0625rem solid #d9d9d9;
        margin: 0
    }
    .container--tourpref .tourpreferences__destination__add a {
        padding: .625rem .9375rem;
        display: block
    }
    .container--tourpref .autocomplete-container.with-title {
        margin-bottom: 2.5rem
    }
    .container--tourpref .tourpreferences__destination__row:hover+.tourpreferences__destination__add, .container--tourpref .tourpreferences__destination__row.active+.tourpreferences__destination__add {
        border-top: .0625rem solid #fff
    }
    .container--tourpref .tourpreferences__destination__row:hover .tourpreferences__destination__row__inner, .container--tourpref .tourpreferences__destination__row.active .tourpreferences__destination__row__inner {
        border: 2px solid #e48901
    }
    .container--tourpref .tourpreferences__destination__row:hover .tourpreferences__destination__row__inner div.placeholder, .container--tourpref .tourpreferences__destination__row.active .tourpreferences__destination__row__inner div.placeholder {
        margin-left: 2.625rem
    }
    .container--tourpref .tourpreferences__destination__row:hover .tourpreferences__destination__row__inner input, .container--tourpref .tourpreferences__destination__row.active .tourpreferences__destination__row__inner input {
        padding-left: 2.75rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons {
        position: relative;
        display: block;
        border: 0 !important;
        padding-left: 0 !important
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .detail, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons .detail {
        padding: 0;
        margin: 1.25rem .625rem 1.875rem;
        width: auto
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .detail .inner, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons .detail .inner {
        margin-left: 0
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .detail .detail__title, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons .detail .detail__title {
        box-sizing: border-box;
        margin-left: 0
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date span.lbl, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons span.lbl {
        padding-left: 2.75rem;
        display: block;
        border: 2px solid #fff
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date span.lbl:before, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons span.lbl:before {
        left: 2.75rem;
        top: .4375rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date.active span.lbl, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date span.lbl:hover, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons.active span.lbl, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons span.lbl:hover {
        border: 2px solid #e48901
    }
    .container--tourpref .tourpreferences .col .tourpreferences__destination__row.filled input[name=destination] {
        padding-top: .875rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .tourpreferences__date__extraflex {
        position: relative;
        border-top: 1px solid #d9d9d9;
        margin-top: 0
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .tourpreferences__date__extraflex label {
        padding-top: .625rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .tourpreferences__date__extraflex label input {
        top: .8125rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date.filled span.lbl, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons.filled span.lbl {
        line-height: 2.75rem;
        padding-bottom: .25rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date.filled .open-sign, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons.filled .open-sign {
        display: none
    }
    .container--tourpref .tourpreferences .col .open-sign--search i {
        width: 1.125rem;
        top: .125rem;
        left: 0
    }
    .container--tourpref .tourpreferences .col .clear-btn {
        top: 0;
        height: 3.25rem;
        width: 2.5rem
    }
    .container--tourpref .tourpreferences .col .clear-btn:before, .container--tourpref .tourpreferences .col .clear-btn:after {
        margin-left: .28125rem;
        margin-top: -0.0625rem
    }
    .container--tourpref .tourpreferences .col .clear-btn:before {
        width: 1.25rem;
        height: 1.25rem
    }
    .container--tourpref .tourpreferences .col .clear-btn:after {
        width: .5rem;
        height: .5rem
    }
    .container--tourpref .tourpreferences .col .open-sign--arrow {
        font-size: 2.25rem;
        overflow: hidden;
        top: .9375rem
    }
    .tourpreferences__block:not(.tourpreferences__destination).active .detail .inner {
        margin-left: -1.875rem
    }
    .tourpreferences__block:not(.tourpreferences__destination).active .detail .detail__title {
        box-sizing: content-box;
        margin-left: -1.8125rem;
        padding: 0 .875rem
    }
}
.tourpromo h2 {
    font-size: 1.125rem
}
.toursnippet--small {
    padding-left: 6.625rem;
    min-height: 3.5rem;
    position: relative
}
.toursnippet--small picture {
    display: block;
    width: 6rem;
    height: 3.5rem;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    float: left;
    margin-right: .625rem
}
.toursnippet--small picture img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
    max-width: none;
    height: 3.5rem
}
.toursnippet--small h4 {
    margin: 0 !important;
    padding: 0 !important;
    font-size: .875rem !important;
    line-height: 1.0625rem
}
.toursnippet--small .price {
    margin-top: .25rem;
    padding-top: 0;
    font-size: .75rem;
    line-height: 1.125rem
}
.toursnippet--small .price b {
    font-size: .875rem
}
.toursnippet--small a:hover {
    text-decoration: none !important
}
.toursnippet--small a:hover h4 {
    text-decoration: underline !important
}
.toursnippet--small:after {
    content: "";
    display: table;
    clear: both
}
.animals {
    text-align: center
}
.animals.with-box {
    margin-top: .9375rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9;
    padding: 1.25rem;
    position: relative
}
@media(max-width: 743px) {
    .animals.with-box {
        border-left: 0;
        border-right: 0;
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        padding: .625rem
    }
}
.animals.with-box:before {
    position: absolute;
    top: -0.5rem;
    left: 2.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9
}
.animals.with-box:after {
    background-color: #fefdf9;
    position: absolute;
    top: 0;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .8125rem
}
.animals .availability-legenda {
    text-align: left;
    margin-bottom: .3125rem
}
.animals .animal {
    display: inline-block;
    position: relative;
    min-width: 5.9375rem;
    width: 30%;
    margin: .3125rem 0 .625rem;
    padding: 0 .9375rem 2.1875rem
}
.animals .animal a.wildlife {
    color: #666;
    text-decoration: none;
    display: inline;
    position: relative;
    cursor: default;
    background: rgba(0, 0, 0, 0) linear-gradient(to right, #666 50%, transparent 50%) repeat-x bottom left/2px 1px
}
.animals .animal a.wildlife:before {
    content: none
}
.animals .animal a.wildlife:hover {
    background: none
}
.animals .animal .wildlife-no-image {
    color: #666
}
.animals .animal img {
    opacity: .75
}
.animals .animal img.dynamic {
    width: 5.4375rem
}
@media(min-width: 744px) {
    .animals .animal.blackrhino img {
        width: 7.5rem
    }
    .animals .animal.buffalo img {
        width: 5.5rem
    }
    .animals .animal.cheetah img {
        width: 4rem
    }
    .animals .animal.chimpanzee img {
        width: 2.4375rem
    }
    .animals .animal.elephant img {
        width: 11rem
    }
    .animals .animal.giraffe img {
        width: 6rem
    }
    .animals .animal.gorilla img {
        width: 3.4375rem
    }
    .animals .animal.hippo img {
        width: 6.125rem
    }
    .animals .animal.hyena img {
        width: 3.0625rem
    }
    .animals .animal.leopard img {
        width: 3.75rem
    }
    .animals .animal.lion img {
        width: 5.25rem
    }
    .animals .animal.whiterhino img {
        width: 7.1875rem
    }
    .animals .animal.wilddog img {
        width: 2.125rem
    }
    .animals .animal.wildebeest img {
        width: 5.9375rem
    }
    .animals .animal.zebra img {
        width: 4.9375rem
    }
}
@media(max-width: 743px) {
    .animals .animal {
        margin-top: .9375rem;
        padding-bottom: 2rem
    }
    .animals .animal.blackrhino img {
        width: 3.75rem
    }
    .animals .animal.buffalo img {
        width: 2.75rem
    }
    .animals .animal.cheetah img {
        width: 2rem
    }
    .animals .animal.chimpanzee img {
        width: 1.21875rem
    }
    .animals .animal.elephant img {
        width: 5.5rem
    }
    .animals .animal.giraffe img {
        width: 3rem
    }
    .animals .animal.gorilla img {
        width: 1.71875rem
    }
    .animals .animal.hippo img {
        width: 3.0625rem
    }
    .animals .animal.hyena img {
        width: 1.53125rem
    }
    .animals .animal.leopard img {
        width: 1.875rem
    }
    .animals .animal.lion img {
        width: 2.625rem
    }
    .animals .animal.whiterhino img {
        width: 3.59375rem
    }
    .animals .animal.wilddog img {
        width: 1.0625rem
    }
    .animals .animal.wildebeest img {
        width: 2.96875rem
    }
    .animals .animal.zebra img {
        width: 2.46875rem
    }
}
.animals .animal--l {
    padding-bottom: 3rem
}
.animals--daybyday {
    margin-left: -0.625rem;
    margin-right: -0.625rem
}
.animals--daybyday .animal {
    margin-bottom: 0;
    min-width: 5.625rem;
    margin-top: .625rem
}
@media(min-width: 744px) {
    .animals--daybyday .animal {
        width: auto
    }
    .animals--daybyday .animal.blackrhino img {
        width: 4.875rem
    }
    .animals--daybyday .animal.buffalo img {
        width: 3.575rem
    }
    .animals--daybyday .animal.cheetah img {
        width: 2.6rem
    }
    .animals--daybyday .animal.chimpanzee img {
        width: 1.584375rem
    }
    .animals--daybyday .animal.elephant img {
        width: 7.15rem
    }
    .animals--daybyday .animal.giraffe img {
        width: 3.9rem
    }
    .animals--daybyday .animal.gorilla img {
        width: 2.234375rem
    }
    .animals--daybyday .animal.hippo img {
        width: 3.98125rem
    }
    .animals--daybyday .animal.hyena img {
        width: 1.990625rem
    }
    .animals--daybyday .animal.leopard img {
        width: 2.4375rem
    }
    .animals--daybyday .animal.lion img {
        width: 3.4125rem
    }
    .animals--daybyday .animal.whiterhino img {
        width: 4.671875rem
    }
    .animals--daybyday .animal.wilddog img {
        width: 1.38125rem
    }
    .animals--daybyday .animal.wildebeest img {
        width: 3.859375rem
    }
    .animals--daybyday .animal.zebra img {
        width: 3.209375rem
    }
}
@media(max-width: 743px) {
    .animals--daybyday .animal {
        width: 30%;
        margin-top: 1.25rem
    }
}
.animals--daybyday a.animals-detail-link {
    font-size: .8125rem
}
.animals--daybyday a.more {
    display: block;
    position: relative;
    margin: 2.1875rem .625rem 1.25rem
}
@media(min-width: 744px) {
    .animals--daybyday a.more {
        margin: 1.5625rem .625rem .625rem
    }
}
@media print {
    .animals--daybyday a.more {
        display: none
    }
}
.animals--daybyday a.more:before {
    position: absolute;
    top: .75rem;
    left: 0;
    content: "";
    width: 100%;
    height: 0;
    border-top: 1px solid #fbf0d8;
    z-index: 1
}
.animals--daybyday a.more span {
    position: relative;
    z-index: 2;
    background-color: #fefdf9;
    padding: 0 .9375rem
}
.animals--daybyday a.more span svg {
    width: 1.125rem;
    height: 1.125rem;
    padding: .1875rem;
    border: 1px solid #0378a0;
    border-radius: 50%;
    background-color: #fff;
    position: relative;
    margin-left: 8px;
    top: 3px
}
.animals--daybyday div[class^=sil] {
    margin-top: .9375rem
}
.animals.show-all .animal:nth-child(n+8) {
    display: inline-block
}
.animals div[class^=txt] {
    text-align: center;
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    white-space: nowrap;
    font-weight: bold;
    font-size: .8125rem;
    line-height: 1rem
}
.animals div[class^=txt] span {
    display: block;
    font-weight: normal;
    color: #666
}
.animals div[class^=txt] span:before {
    content: "";
    display: inline-block;
    width: .5rem;
    height: .5rem;
    background-color: #0a8b05;
    border-radius: 50%;
    margin-right: .25rem;
    position: relative;
    top: 0;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}
.animals div[class^=txt].lightgreen span:before {
    background-color: #5ab657
}
.animals div[class^=txt].red span:before {
    background-color: #d83a39
}
.animals div[class^=txt].orange span:before {
    background-color: #f8a909
}
.animals div[class^=txt].grey span:before {
    background-color: #999
}
.animals .bottom-row {
    clear: both
}
@media screen {
    .animals .animal:nth-child(n+14) {
        display: none
    }
    .animals--max10 .animal:nth-child(n+11) {
        display: none
    }
}
.accommodations_profile hr {
    border: 0;
    height: 1px;
    border-top: 1px solid #d9d9d9;
    color: #d9d9d9
}
.accommodations_profile ul.disc {
    list-style-type: disc;
    margin-top: .1875rem;
    margin-left: 1.25rem
}
.accommodations_profile h2 span {
    font-weight: normal
}
.accommodations_profile button {
    outline: none
}
.accommodations_profile .photo-preview {
    position: relative
}
.accommodations_profile .photo-preview .inner {
    border: 1px solid #d9d9d9;
    overflow: hidden;
    box-shadow: 0px 1px 5px rgba(0, 0, 0, .18);
    position: relative
}
.accommodations_profile .photo-preview .inner:after {
    content: "";
    position: relative;
    display: block;
    width: 100%;
    margin-top: 48.5%
}
.accommodations_profile .photo-preview .inner img {
    display: block;
    position: absolute;
    max-width: 100%;
    max-height: 100%;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%)
}
.accommodations_profile .photo-preview .inner.landscape img {
    max-width: none;
    max-height: none;
    width: 100%;
    height: auto
}
.accommodations_profile .photo-preview .inner.portrait {
    background-color: #f8f8f8
}
.accommodations_profile .photo-preview .inner.portrait img {
    max-width: none;
    max-height: none;
    width: auto;
    height: 100%
}
.accommodations_profile .map--google {
    max-width: none !important
}
#sidebar-terms ol.acco-terms-main {
    list-style-type: decimal;
    margin-left: 1.25rem;
    margin-top: 1.25rem;
    counter-reset: item
}
#sidebar-terms ol.acco-terms-main>li {
    padding-bottom: 1.25rem;
    counter-increment: item
}
#sidebar-terms ol.acco-terms-main>li span {
    font-size: 1rem
}
#sidebar-terms ol.acco-terms-main>li ol.acco-terms-main-sub {
    list-style-type: decimal;
    margin-top: 1.25rem;
    margin-left: 1.875rem;
    counter-reset: item
}
#sidebar-terms ol.acco-terms-main>li ol.acco-terms-main-sub.roman {
    list-style-type: lower-roman
}
#sidebar-terms ol.acco-terms-main>li ol.acco-terms-main-sub:not(.roman)>li {
    padding-bottom: .625rem;
    display: block
}
#sidebar-terms ol.acco-terms-main>li ol.acco-terms-main-sub:not(.roman)>li:before {
    content: counters(item, ".") ". ";
    counter-increment: item;
    margin-left: -1.875rem
}
#sidebar-terms ul.acco-terms-li {
    list-style-type: disc;
    margin-left: 1.25rem
}
#sidebar-terms ul.acco-terms-li li {
    padding-bottom: .625rem
}
#sidebar-terms ul.acco-terms-li-sub {
    list-style-type: circle;
    margin-left: 1.25rem;
    margin-top: .3125rem
}
#sidebar-terms ul.acco-terms-li-sub li {
    padding-bottom: .3125rem
}
.sidebarform__panel button {
    outline: none
}
.sidebarform__panel p.contact__success__p {
    margin-top: 1.25rem
}
.accountmodal__email {
    background-color: #fff;
    padding: .625rem 0 1.875rem
}
.accountmodal__email p {
    margin: 1.25rem 0
}
.accountmodal__email h3 {
    margin: .625rem 0;
    font-size: 1rem
}
.accountmodal__email h3 span {
    background-color: #fff;
    display: inline-block;
    padding-right: .625rem;
    position: relative;
    padding-left: .625rem;
    left: -0.625rem
}
.accountmodal__email h3:before {
    content: "";
    width: 100%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    left: 0;
    top: 1.9375rem
}
.accountmodal__email form {
    margin: .3125rem 0
}
.accountmodal__email form input {
    width: 100%;
    margin-bottom: .9375rem
}
.accountmodal__email form .btn {
    width: 100%;
    margin-top: .625rem
}
.accountmodal__email form .btn+a {
    margin-left: 0;
    position: relative;
    top: .625rem;
    margin-bottom: .625rem;
    display: inline-block
}
.accountmodal__email form .messagebox {
    margin-bottom: 1.25rem
}
.accountmodal__email form input[type=submit] {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    margin-bottom: .625rem
}
.accountmodal__togglepassword {
    float: right;
    position: relative;
    top: -0.625rem;
    color: #0378a0;
    border: 0;
    background: rgba(0, 0, 0, 0)
}
.accountmodal__social {
    background-color: #fff;
    border-top: 1px solid #d9d9d9;
    box-shadow: 0px -1px 2px rgba(0, 0, 0, .18)
}
.accountmodal__social .col {
    padding: 1.25rem .625rem .625rem
}
.accountmodal__social .col+.col {
    padding: .625rem .625rem 1.25rem
}
.accountmodal__extra {
    background-color: #fbfbfb;
    border-top: 1px dotted #d9d9d9
}
.accountmodal__extra .col {
    padding: 1.25rem .625rem
}
@media(max-width: 359px) {
    .accountmodal__email {
        padding-bottom: .625rem
    }
    .accountmodal__extra .col {
        padding: .625rem
    }
}
.affiliate-stats {
    background-color: #fff;
    padding: 1.25rem;
    margin-top: 1.25rem;
    min-width: 50rem;
    box-shadow: 0px 0px 3px rgba(0, 0, 0, .18)
}
.affiliate-stats h1 {
    font-size: 1.5rem
}
.affiliate-stats a.admin-link {
    float: right;
    margin-top: .625rem
}
.affiliate-stats h3 {
    margin: 2.5rem 0 .625rem;
    font-size: 1.125rem
}
.affiliate-stats .select--holder {
    width: 18.75rem;
    margin: 1.25rem auto
}
.affiliate-stats select {
    color: #444
}
.affiliate-stats table {
    width: 100%
}
.affiliate-stats table td, .affiliate-stats table th {
    padding: .25rem .5rem
}
.affiliate-stats table td.right, .affiliate-stats table th.right {
    text-align: right
}
.affiliate-stats table tr.inactive {
    opacity: .3
}
.affiliate-stats table tr th {
    background-color: #444;
    color: #fff;
    font-weight: bold
}
.affiliate-stats table tr:not(:first-child):hover td {
    background-color: #efefef
}
.affiliate-stats table tr[id]:hover td {
    cursor: pointer
}
.affiliate-stats table tr.strong td {
    font-weight: bold
}
.detail__title__block {
    position: relative
}
.detail__title__block .col-12 {
    padding-left: 0
}
.detail__title__block h2 {
    font-size: 1.25rem;
    line-height: 1.5rem;
    margin-top: 1.375rem;
    margin-bottom: 1.25rem;
    display: inline-block;
    background-color: #fff;
    position: relative;
    padding-right: .625rem
}
.detail__title__block:before {
    content: "";
    width: 94%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: 0;
    top: 2.1875rem
}
.detail__title__block em.txt--small {
    font-weight: normal
}
.detail__content__block {
    padding-bottom: 2.5rem
}
.detail__content__block.all-reviews-list {
    margin-top: .625rem
}
.detail__content__block .intro {
    margin-bottom: 1.5625rem
}
.detail__content__block .disclaimer {
    font-style: italic;
    display: block;
    margin-top: .75rem;
    color: #999
}
.detail__content__block>.col:first-child p:first-child, .detail__content__block>.col:first-child .inline-gallery:first-child+p {
    padding-top: 0
}
.detail__content__block h3, .detail__content__block h4 {
    margin-top: 2.25rem;
    margin-bottom: .5rem;
    position: relative;
    font-size: 0
}
.detail__content__block h3.first-title, .detail__content__block h4.first-title {
    margin-top: 1.25rem
}
.detail__content__block h3 span, .detail__content__block h4 span {
    font-size: .9375rem;
    background-color: #fff;
    display: inline-block;
    vertical-align: top;
    padding-right: .625rem;
    position: relative
}
.detail__content__block h3 span.grey, .detail__content__block h4 span.grey {
    font-size: .875rem;
    color: #999;
    font-weight: normal;
    display: block;
    position: relative;
    top: -0.0625rem
}
.detail__content__block h3 span.number, .detail__content__block h4 span.number {
    display: inline-block;
    border-radius: .3125rem;
    background-color: #d9d9d9;
    color: #444;
    line-height: 1.125rem;
    font-size: .8125rem;
    font-weight: 600;
    padding: 0 .3125rem;
    position: relative;
    top: -0.0625rem;
    margin-right: .625rem
}
.detail__content__block h3 span.number:before, .detail__content__block h4 span.number:before {
    content: "";
    display: block;
    height: .25rem;
    width: .625rem;
    background-color: #fff;
    position: absolute;
    top: .5rem;
    right: -0.625rem
}
.detail__content__block h3:before, .detail__content__block h4:before {
    content: "";
    width: 94%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: 0;
    top: .625rem
}
.detail__content__block h3+.list--icon, .detail__content__block h4+.list--icon {
    padding-top: .375rem
}
.detail__content__block .extra-top-margin {
    margin-top: 1.25rem
}
.detail__content__block h5.subtitle {
    font-weight: bold;
    font-size: .9375rem;
    margin-top: .3125rem;
    margin-bottom: .5rem
}
.detail__content__block h5.subtitle.extramargin {
    margin-top: 1.5625rem
}
.detail__content__block p {
    padding-top: .625rem;
    padding-left: .75rem
}
.detail__content__block p b {
    padding: 0;
    margin-top: 1.5625rem;
    margin-bottom: .3125rem;
    display: block
}
.detail__content__block small {
    font-size: .8125rem
}
.detail__content__block dl {
    margin: 1.25rem 0
}
.detail__content__block dl dt {
    float: left;
    font-style: italic
}
.detail__content__block dl dd {
    margin-bottom: .3125rem
}
.detail__content__block a.wildlife {
    color: #666;
    text-decoration: none;
    position: relative;
    cursor: default
}
.detail__content__block a.wildlife:before {
    border-bottom: 1px dotted #666;
    position: absolute;
    bottom: .0625rem;
    left: 0;
    width: 100%;
    height: 0;
    display: block;
    content: ""
}
.detail__content__block a.wildlife:hover {
    text-decoration: none
}
.detail__content__block ul.list--icon a.wildlife, .detail__content__block p a.wildlife {
    color: #444
}
.detail__content__block--wildlife .intro {
    margin-bottom: .9375rem
}
.detail__content__block--wildlife p a.wildlife {
    font-style: italic;
    font-weight: bold;
    color: #444
}
.detail__content__block--wildlife p a.wildlife.local {
    font-weight: normal !important;
    font-style: normal !important
}
.detail__content__block--author {
    padding-top: .3125rem;
    padding-bottom: 0;
    margin-bottom: .9375rem
}
.detail__content__block--author-line {
    position: relative
}
.detail__content__block--author-line .author-content:before, .detail__content__block--author-line .author-content:after {
    content: "";
    position: absolute;
    border-bottom: 1px solid #d9d9d9
}
.detail__content__block--author-line .author-content:before {
    bottom: -1.0625rem;
    left: 2.8125rem;
    transform: rotate(-45deg);
    display: block;
    width: .75rem;
    height: .75rem;
    border-left: 1px solid #d9d9d9;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    background-color: #fff;
    z-index: 2
}
.detail__content__block--author-line .author-content:after {
    width: 100%;
    height: 0;
    bottom: -0.75rem;
    left: 0
}
.detail__content__block--author .author-content {
    position: relative;
    white-space: nowrap;
    min-height: 5.5rem;
    margin: .625rem 0;
    font-size: 0
}
.detail__content__block--author .author-content h5, .detail__content__block--author .author-content .author-content__heading {
    padding: 0 0 0;
    margin: 0;
    font-weight: bold
}
.detail__content__block--author .author-content p {
    padding: 0;
    background-color: #fff;
    line-height: 1.25rem
}
.detail__content__block--author .author-content h5, .detail__content__block--author .author-content .author-content__heading, .detail__content__block--author .author-content p {
    font-size: .9375rem
}
.detail__content__block--author .author-content .expert__photo, .detail__content__block--author .author-content .expert__blurb {
    position: relative;
    display: inline-block;
    vertical-align: middle
}
.detail__content__block--author .author-content .expert__photo {
    margin-top: -0.3125rem;
    left: .1875rem;
    z-index: 1;
    font-size: 1rem
}
.detail__content__block--author .author-content .expert__blurb {
    margin-top: -0.1875rem;
    white-space: normal;
    width: calc(100% - 6.875rem);
    padding-left: .875rem
}
.detail__content__block--author .author-content .expert__blurb i {
    font-style: italic
}
.detail__content__block .col-12 em {
    font-weight: 600;
    font-style: italic
}
.detail__content__block .list--tours .col-12 em {
    font-weight: normal;
    font-style: normal
}
.detail__content__block .svg-map-col {
    margin-top: 1.875rem
}
.detail__content__block .svg-map-col>div {
    max-width: 25rem;
    margin: 0 auto
}
.detail__content__block .svg-map-col--country {
    margin-top: 0;
    margin-bottom: 0
}
.detail__content__block ul.list--icon.indent {
    padding-left: .5rem
}
.detail__content__block ul.list--icon.list--icon-arrow {
    padding-left: 0
}
.detail__content__block ul.list--icon.list-with-flags {
    font-size: .875rem;
    color: #666
}
.detail__content__block ul.list--icon.list-with-flags span {
    font-size: .9375rem;
    color: #444;
    display: inline-block;
    vertical-align: top
}
.detail__content__block ul.list--icon.books li em {
    font-weight: normal
}
.detail__content__block ul.list--icon.books li em span {
    font-style: normal
}
.detail__content__block ul.list--icon.books li>span {
    color: #999;
    font-size: .8125rem
}
.detail__content__block ul.list--icon li>.row>div {
    padding-left: 0
}
.detail__content__block--addressblock {
    padding-top: .625rem;
    padding-bottom: 1.25rem;
    padding-left: 0 !important;
    padding-right: 0 !important
}
.detail__content__block .col-12 {
    padding-left: 0;
    padding-right: 0
}
.detail__content__block .col-12>p {
    padding-left: 0
}
.detail__content__block .col-12>p.indent {
    padding-left: .75rem
}
.detail__content__block .col-12.fullwidth {
    margin-left: -0.625rem;
    margin-right: -0.625rem;
    width: auto;
    min-width: 100%
}
.detail__content__block .col-4 img {
    max-width: 100%
}
.detail__content__block .col-t-6 h3 {
    margin-top: 1.25rem
}
.detail__content__block .col-t-6:nth-child(n+3) h3 {
    margin-top: 3.125rem
}
.detail__content__block .col-4:not(:first-child) {
    text-align: right
}
.detail__content__block .besttime-intro {
    margin-top: 1.25rem
}
.detail__content__block .detail__numbers {
    margin: 1.875rem 0 2.5rem 0
}
.detail__content__block .detail__numbers .row {
    border-top: .0625rem dotted #b3b3b3;
    padding-top: .3125rem
}
.detail__content__block .detail__numbers .col-12 {
    padding: 1.25rem 1.25rem 0 2.1875rem !important;
    position: relative;
    line-height: 1rem
}
.detail__content__block .detail__numbers .col-12 .detail__numbers__icon {
    width: 1.5625rem;
    float: left;
    position: absolute;
    top: 1.3125rem;
    left: 0
}
.detail__content__block .detail__numbers .col-12 .detail__numbers__icon.sbi--best-time {
    width: 1.375rem
}
.detail__content__block .detail__numbers .col-12 i.sbi--info {
    position: relative;
    top: .1875rem;
    width: .875rem
}
.detail__content__block .detail__numbers b {
    font-size: .875rem;
    display: block;
    margin-bottom: .125rem;
    position: relative
}
.detail__content__block .detail__numbers b a {
    top: 0
}
.detail__content__block .detail__numbers b a.help:not(.textual) {
    top: -0.1875rem
}
.detail__content__block .detail__numbers b span {
    font-weight: normal
}
.detail__content__block .detail__numbers em {
    color: #666;
    font-weight: normal;
    font-style: normal;
    font-size: .875rem
}
.detail__content__block .detail__numbers em span.grey {
    color: #999
}
.detail__content__block .detail__numbers-l b {
    margin-bottom: .125rem
}
.detail__content__block .detail__numbers-l b, .detail__content__block .detail__numbers-l em {
    font-size: .875rem
}
.detail__content__block .detail__numbers-footnote {
    float: left;
    width: 100%;
    padding: .625rem 0 0 !important;
    color: #666;
    font-size: .8125rem
}
.detail__content__block .show-all-animals {
    display: block;
    padding-top: .625rem;
    padding-bottom: 1.25rem
}
.detail__content__block .subtype-reviews .review-summary {
    width: 50%;
    float: left;
    margin-top: .5625rem;
    padding-left: .75rem
}
.detail__content__block .subtype-reviews .review-summary a {
    display: block
}
.detail__content__block .subtype-reviews .review-summary+.review-summary {
    margin-bottom: .625rem
}
.detail__content__block .subtype-reviews:after {
    content: "";
    display: table;
    clear: both
}
.detail__content__block .notable-birds, .detail__content__block .bird-facts {
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9;
    padding: 1.25rem;
    position: relative;
    text-align: center
}
@media(max-width: 743px) {
    .detail__content__block .notable-birds, .detail__content__block .bird-facts {
        border-left: 0;
        border-right: 0;
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        padding: .625rem
    }
}
.detail__content__block .notable-birds:before, .detail__content__block .bird-facts:before {
    position: absolute;
    top: -0.5rem;
    left: 2.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9
}
.detail__content__block .notable-birds:after, .detail__content__block .bird-facts:after {
    background-color: #fefdf9;
    position: absolute;
    top: 0;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .8125rem
}
.detail__content__block .notable-birds h5, .detail__content__block .bird-facts h5 {
    font-weight: 600;
    display: block;
    margin-bottom: 1.25rem
}
.detail__content__block .bird-facts {
    margin-left: 0;
    margin-right: 0;
    border: .0625rem solid #f6d89a
}
.detail__content__block .notable-birds {
    margin-top: 1.875rem
}
.detail__content__block .notable-birds:before, .detail__content__block .notable-birds:after {
    display: none
}
.detail__content__block .notable-birds-items {
    width: 100%;
    padding-bottom: .625rem
}
.detail__content__block .notable-birds-items:after {
    content: "";
    display: table;
    clear: both
}
.detail__content__block .notable-birds-items>div {
    width: 9.375rem;
    margin: 0 auto;
    display: inline-block;
    cursor: pointer;
    position: relative
}
.detail__content__block .notable-birds-items>div img {
    margin: 0 auto;
    width: 9.375rem;
    border-radius: 50%;
    margin-bottom: .3125rem;
    position: relative;
    z-index: 1
}
.detail__content__block .notable-birds-items>div:hover:before {
    content: "";
    display: block;
    width: 9.375rem;
    padding-top: 100%;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, .6);
    position: absolute;
    top: 0;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 2
}
.detail__content__block .notable-birds-items>div:hover:after {
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
    background-repeat: no-repeat;
    width: 1rem;
    background-size: contain;
    background-position: center;
    content: "";
    width: 2rem;
    height: 2rem;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1rem;
    padding-top: 100%;
    display: block;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.png");
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.svg");
    z-index: 4;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1)
}
@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .detail__content__block .notable-birds-items>div:hover:after {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.svg")
    }
}
.detail__content__block .notable-birds-items>div div {
    display: block;
    text-align: center;
    line-height: 1.125rem
}
.detail__content__block .notable-birds-items>div div i {
    display: block;
    margin: 0 auto .1875rem auto;
    position: relative;
    top: -0.125rem
}
.detail__content__block .notable-birds .browse {
    position: absolute;
    font-size: 3.75rem;
    display: inline-block;
    width: 3.125rem;
    text-align: center;
    height: 9.375rem;
    line-height: 8.375rem
}
.detail__content__block .notable-birds .browse-prev {
    margin-left: -9.0625rem
}
.detail__content__block .notable-birds .browse-next {
    margin-left: 5.9375rem
}
.detail__content__block .notable-birds .browse:hover {
    text-decoration: none
}
.detail__content__block .endemic-extra {
    margin-bottom: .75rem
}
.detail__content__block .bird-facts {
    margin-top: 1.8125rem;
    text-align: left;
    font-weight: 600;
    padding-bottom: 1.875rem;
    font-family: "Gentium Basic", serif
}
@media(max-width: 743px) {
    .detail__content__block .bird-facts {
        margin-top: 1.125rem;
        padding-bottom: 1.25rem
    }
    .detail__content__block .bird-facts h5 {
        font-size: 1.0625rem;
        position: relative;
        top: .1875rem
    }
}
.detail__content__block .bird-facts:before, .detail__content__block .bird-facts:after {
    display: none
}
.detail__content__block .bird-facts h5 {
    color: #999;
    margin-bottom: .3125rem
}
.detail__content__block .bird-facts h6 {
    color: #666;
    font-size: 1.75rem
}
.detail__content__block .bird-facts h6 span {
    font-size: 1.125rem
}
.detail__content__block .bird-facts h6+h5 {
    margin-top: .9375rem
}
.detail__content__block .bird-facts img, .detail__content__block .bird-facts svg {
    position: absolute;
    top: 1.25rem;
    right: 0
}
@media(max-width: 743px) {
    .detail__content__block .bird-facts img, .detail__content__block .bird-facts svg {
        max-width: 6.875rem
    }
}
@media(max-width: 400px) {
    .detail__content__block .bird-facts .col {
        width: 100%
    }
    .detail__content__block .bird-facts .col+.col {
        margin-top: .9375rem
    }
}
@media(min-width: 401px) {
    .detail__content__block .bird-facts .col {
        margin-top: 1.25rem
    }
}
@media(min-width: 401px)and (max-width: 743px) {
    .detail__content__block .bird-facts {
        padding-bottom: 1.875rem
    }
    .detail__content__block .bird-facts img, .detail__content__block .bird-facts svg {
        max-width: 5.9375rem
    }
}
.detail__content__block p+.list--icon, .detail__content__block li>.list--icon {
    margin-top: .625rem
}
.detail__content__block .route-map {
    display: block;
    margin: .625rem auto 0;
    max-width: 100%
}
.detail__content__block .route-map-backup {
    display: block;
    width: 85%;
    margin: 0 auto
}
.detail__content__block--routes img.svg, .detail__content__block--routes svg {
    border: 1px solid #e9e9e9
}
.detail__content__block--routes img.svg.hide-t, .detail__content__block--routes svg.hide-t {
    margin-left: -0.875rem;
    margin-bottom: .625rem
}
.detail__content__block .galleryitems h3 {
    margin-top: 1.875rem;
    margin-bottom: 1.25rem
}
.detail__content__block .countryoutline {
    margin: 0 auto
}
.detail__content__block .countryoutline svg, .detail__content__block .countryoutline img {
    width: 66%;
    margin: 0 17%
}
.detail__content__block .map-africa-svg {
    width: 45%;
    float: left
}
.detail__content__block .map-africa-svg--marginbottom {
    margin-bottom: 1.25rem
}
.detail__content__block .map-park-svg {
    width: 55%;
    float: right;
    position: relative;
    top: 10px;
    left: -10px
}
.detail__content__block .map-park-svg polygon.star {
    fill: #006400
}
.detail__content__block .inline-photoblock {
    position: relative;
    margin: 1.25rem 0 .625rem 1.25rem;
    width: 25%;
    max-width: 13.125rem;
    z-index: 3
}
.detail__content__block .park-list--ranked {
    margin-top: .625rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9;
    padding: 1.25rem;
    position: relative
}
@media(max-width: 743px) {
    .detail__content__block .park-list--ranked {
        border-left: 0;
        border-right: 0;
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        padding: .625rem
    }
}
.detail__content__block .park-list--ranked:before {
    position: absolute;
    top: -0.5rem;
    left: 2.1875rem;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border: .0625rem solid #f6d89a;
    background-color: #fefdf9
}
.detail__content__block .park-list--ranked:after {
    background-color: #fefdf9;
    position: absolute;
    top: 0;
    left: 1.875rem;
    content: "";
    display: block;
    width: 1.625rem;
    height: .8125rem
}
.detail__content__block .park-list--ranked a {
    font-weight: 600
}
.detail__content__block .park-list--legend {
    margin: .3125rem 0 .9375rem
}
.detail__content__block .park-list--legend__item {
    display: block;
    margin: 0 1.25rem .3125rem 0;
    color: #666;
    font-size: .875rem;
    line-height: 1.125rem
}
.detail__content__block .park-list--legend__item i {
    margin-left: -0.125rem;
    position: relative;
    top: .125rem
}
.detail__content__block .park-list--alphabet:not(.navigation-list) {
    margin-top: 1.25rem
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li {
    display: block;
    position: relative;
    box-shadow: 0px 0px 3px rgba(0, 0, 0, .18);
    margin-bottom: 2.1875rem
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li:after {
    content: "";
    display: table;
    clear: both
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li:hover {
    box-shadow: 0px 0px 10px #999
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li img {
    width: 100%;
    float: left
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li>a {
    display: block;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-family: "Gentium Basic", serif;
    font-weight: normal;
    font-size: 1.1875rem;
    color: #fff;
    text-decoration: underline;
    padding-bottom: 50%;
    z-index: 1
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li>a p {
    bottom: 2.5rem;
    left: .625rem;
    padding: 0;
    display: inline;
    position: absolute;
    text-decoration: underline
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li>a:hover {
    text-decoration: none
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li>a:hover p {
    text-decoration: none
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li:before {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    padding-bottom: 50%;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%);
    opacity: .8
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li .review-summary--oneline {
    position: absolute;
    left: .625rem;
    color: #fff;
    display: inline-block;
    margin-top: -2.1875rem
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li .review-summary--oneline em {
    color: #fff
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li ul {
    display: none
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li p {
    padding: .625rem
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li p a {
    color: #444
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li p b {
    display: inline;
    font-size: inherit
}
.detail__content__block .park-list--alphabet:not(.navigation-list)>li .park__ensign {
    right: auto;
    left: .9375rem;
    top: -0.125rem
}
@media(max-width: 743px) {
    .detail__content__block .park-list--alphabet.navigation-list {
        margin: .625rem -0.625rem;
        border-bottom: 1px solid #d9d9d9
    }
    .detail__content__block .park-list--alphabet.navigation-list img, .detail__content__block .park-list--alphabet.navigation-list .review-summary--oneline, .detail__content__block .park-list--alphabet.navigation-list>li>p, .detail__content__block .park-list--alphabet.navigation-list ul, .detail__content__block .park-list--alphabet.navigation-list .park__ensign {
        display: none
    }
    .detail__content__block .park-list--alphabet.navigation-list li {
        box-shadow: none;
        margin-bottom: 0;
        line-height: .8125rem
    }
    .detail__content__block .park-list--alphabet.navigation-list li a {
        font-family: "Noto Sans", "Arial", sans-serif;
        font-size: .9375rem;
        display: block;
        margin-top: 0
    }
    .detail__content__block .park-list--alphabet.navigation-list li a:after {
        top: -1.1875rem
    }
    .detail__content__block .park-list--alphabet.navigation-list li a p {
        padding: .25rem 0 .1875rem
    }
    .detail__content__block .park-list--alphabet.navigation-list li a p .sbi {
        margin-left: -0.1875rem
    }
    .detail__content__block .park-list--alphabet.navigation-list li:first-child {
        border-top: 0
    }
    .detail__content__block .park-list--alphabet.navigation-list li span {
        line-height: .8125rem
    }
}
.detail__content__block img.svg {
    display: none
}
.detail__content__block svg.rank {
    width: .6875rem;
    height: .9375rem;
    position: relative;
    top: .125rem;
    left: .125rem
}
.detail__content__block svg.rank path {
    fill: #d69425
}
.detail__content__block svg.rank-silver path {
    fill: #a19f9c
}
.detail__content__block a.photothumb .photothumb-div {
    display: block;
    pointer-events: none
}
.detail__content__block a.photothumb .photopage-caption {
    padding: 0;
    font-size: .75rem;
    line-height: .9375rem;
    margin-bottom: .9375rem;
    color: #999
}
.detail__content__block a.photothumb:hover {
    text-decoration: none !important
}
.detail__content__block a.photothumb:hover .photopage-caption {
    color: #444
}
.detail__content__block .city-map {
    max-width: 22.8125rem;
    margin: .3125rem 0 1.25rem 1.25rem
}
.detail__content__block .besttime p.indent {
    padding-left: 0;
    margin-bottom: .3125rem;
    padding-top: .1875rem
}
.detail__heading {
    font-size: 0 !important;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap
}
.detail__heading:before {
    content: none !important
}
.detail__heading:after {
    content: "";
    display: block;
    flex-grow: 1;
    overflow: hidden;
    width: auto;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: relative;
    top: .75rem
}
.detail__heading-main {
    font-size: .9375rem
}
.detail__heading-number {
    top: .1875rem !important
}
.detail__heading-number:before {
    content: none !important
}
.detail__heading-separator {
    top: .0625rem !important;
    padding-right: .5rem !important
}
.detail__heading-extra {
    top: .0625rem !important;
    white-space: nowrap;
    order: 100;
    width: 100% !important
}
.parkcountry__tourpromo {
    margin-top: 5rem
}
.parkcountry__tourpromo h5 {
    font-weight: bold
}
.parkcountry__tourpromo .list--tours {
    margin-top: 1.875rem
}
.parkcountry__tourpromo .list--tours li {
    width: 100%;
    padding-left: .625rem;
    padding-right: .625rem
}
.parkcountry__tourpromo .button-holder {
    padding-left: .625rem;
    padding-right: .625rem;
    margin: .625rem auto 1.875rem
}
@media(max-width: 743px) {
    .country__content, .park__content {
        padding-top: .625rem
    }
    .country__content .write-btn, .park__content .write-btn {
        margin: .9375rem 0 1.875rem
    }
    .container--with-navigation-list .navigation__sidebar+.col {
        padding: 0
    }
    .container--with-navigation-list .navigation__sidebar+.col ul:not(.more-items) {
        border-top: 0
    }
    .container--with-navigation-list .navigation__sidebar+.col ul:not(.more-items) li a:after {
        top: -1.25rem
    }
    .container--with-navigation-list .navigation__sidebar+.col ul:not(.more-items) li a p {
        padding: 0;
        font-size: .9375rem;
        line-height: 1.25rem
    }
}
@media(max-width: 969px) {
    .country__content .write-btn, .park__content .write-btn {
        margin: 1.5625rem 0 1.875rem
    }
}
html.noscript .climate .climate__chart, html.noscript .climate h3, html.noscript .climate em {
    display: none
}
@media(max-width: 414px)and (max-height: 625px)and (orientation: portrait) {
    .detail__content__block--author .author-content {
        margin: 0
    }
    .detail__content__block--author .author-content:before {
        bottom: -0.75rem
    }
    .detail__content__block--author .author-content:after {
        bottom: -0.4375rem
    }
}
.container--countriesparks h2 {
    display: inline-block;
    background-color: #fff;
    padding-right: .625rem;
    margin-bottom: .625rem;
    position: relative;
    padding-top: .625rem
}
.container--countriesparks p {
    font-size: .8125rem;
    line-height: 1.125rem;
    padding-bottom: .625rem
}
.container--countriesparks .countriesparks-intro:before {
    content: "";
    width: 94%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: .625rem;
    top: 1.25rem
}
.container--countriesparks #jwplayer-countrydir:not(.showplay) .jw-display-icon-container.jw-display-icon-display {
    display: none
}
.container--countriesparks .country-video {
    margin: .625rem 0;
    position: relative;
    display: block;
    overflow: hidden;
    padding-top: 56.25%;
    background-color: #f2f2f2
}
.container--countriesparks .country-video .video-overlay {
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: "background .2s ease-in-out";
    -moz-transition: "background .2s ease-in-out";
    -ms-transition: "background .2s ease-in-out";
    -o-transition: "background .2s ease-in-out";
    transition: background .2s ease-in-out;
    pointer-events: none
}
.container--countriesparks .country-video .video-overlay div {
    color: #fff;
    text-align: center;
    position: absolute;
    width: 100%;
    top: 50%;
    margin-top: -3.875rem
}
.container--countriesparks .country-video .video-overlay div i {
    display: block;
    width: 3.75rem;
    margin: .625rem auto
}
.container--countriesparks .country-video #jwplayer-countrydir {
    position: absolute;
    top: 0;
    left: 0
}
.container--countriesparks .country-video.showcontrols .video-overlay {
    display: block
}
.container--countriesparks .country-video:hover .video-overlay {
    background-color: rgba(0, 0, 0, .4)
}
.container--countriesparks .country-video:after {
    content: "";
    display: table;
    clear: both
}
@media(max-width: 743px) {
    .parks-tab--quicknav .park-list--ranked, .parks-tab--quicknav .detail__title__block {
        display: none
    }
    .parks-tab--quicknav .detail__content__block {
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
        line-height: .8125rem
    }
    .parks-tab--quicknav .detail__content__block h3 {
        display: none
    }
}
.country__content__block__alert {
    margin-top: .625rem
}
.country__content__block__alert>div {
    border: 1px solid #e88988;
    background-color: #faf3f2;
    padding: 1.25rem 1.25rem;
    margin-bottom: 1.25rem;
    min-height: 3.75rem
}
.country__content__block__alert>div>b {
    color: #006400
}
.country__content__block__alert>div .travel-alert {
    display: none
}
.country__content__block__alert>div p {
    padding: 0
}
.country__content__block__alert>div p b, .country__content__block__alert>div p em {
    display: inline;
    padding: 0;
    margin: 0
}
.country__content__block__alert>div p em {
    font-style: normal;
    font-weight: normal;
    color: #2a7018
}
.delete-account__subtext {
    font-size: .8125rem;
    padding-top: 2.5rem
}
.favlist__titlebar {
    position: relative
}
.favlist__auth {
    margin-bottom: 1.25rem;
    margin-right: .9375rem;
    position: relative;
    top: .375rem;
    z-index: 2
}
.favlist__auth .favlist__auth-signout {
    font-weight: bold
}
.favlist__messagebox {
    position: relative;
    top: -1.25rem;
    width: auto;
    margin: 1.875rem 0 0;
    display: inline-block;
    padding: .625rem .625rem .625rem 2rem
}
.favlist__messagebox a {
    font-weight: bold
}
.favlist__messagebox i {
    margin-right: .3125rem;
    position: absolute;
    top: .75rem;
    left: .625rem
}
.favlist__tabs {
    background: rgba(0, 0, 0, 0);
    box-shadow: none;
    margin: 0 .625rem;
    padding: 0 !important;
    top: .625rem;
    width: auto;
    clear: both
}
.favlist__tabs:hover .favlist__tab-counter {
    text-decoration: none !important
}
.favlist__tab-counter {
    display: inline-block;
    border-radius: .3125rem;
    background-color: #d9d9d9;
    color: #444;
    line-height: 1.125rem;
    font-size: .75rem;
    font-weight: 600;
    padding: 0 .3125rem;
    margin-left: .625rem;
    position: relative;
    top: -0.0625rem;
    text-decoration: none
}
.favlist__container {
    position: relative;
    min-height: 18.75rem
}
.favlist__container .messagebox {
    margin-top: 0;
    width: auto;
    display: inline-block;
    font-size: .875rem;
    padding-bottom: .75rem;
    margin-bottom: 1.875rem
}
.favlist__container .messagebox .sbi {
    position: relative;
    top: .25rem;
    margin-left: .1875rem;
    margin-right: .1875rem
}
.favlist__container .favlist__operators a.list__item .list__item--image__full.with-placeholder--op {
    background: #f0eee8
}
.favlist__container .favlist__operators a.list__item .list__item--image__full.with-placeholder--op .placeholder {
    height: 100%;
    position: absolute;
    width: 100%;
    text-align: center;
    opacity: .5
}
.favlist__container .favlist__operators a.list__item .list__item--image__full.with-placeholder--op .placeholder i.sbi--nophoto {
    display: inline-block;
    width: 3.75rem;
    margin-top: .3125rem;
    opacity: .7
}
.favlist__container .favlist__operators a.list__item .list__item--image__full.with-placeholder--op .placeholder span {
    display: block
}
.favlist__container .favlist__operators a.list__item h2 {
    color: #fff;
    font-size: 1.5rem
}
.favlist__container .favlist__operators a.list__item .stars {
    margin-top: .875rem
}
.favlist__container .favlist__operators a.list__item p {
    margin-top: 1.125rem
}
.favlist__container .favlist__operators a.list__item p .review-score {
    margin-left: .25rem
}
.favlist__heading {
    font-size: 1.375rem;
    line-height: 1.75rem;
    margin-bottom: 1.25rem
}
.favlist__outdated {
    position: relative;
    display: block;
    width: 18.75rem;
    font-size: .8125rem;
    text-align: center;
    margin: 0 auto 1.5625rem;
    left: 0;
    right: 0;
    background-color: #fefdfa;
    border: 1px solid #f6d89f;
    border-radius: .375rem;
    padding: .1875rem .3125rem;
    top: .3125rem;
    box-shadow: 2px 2px 4px #444
}
.favlist__outdated.fixed {
    position: fixed;
    z-index: 30
}
.favlist__clear {
    float: right;
    display: inline-block;
    padding: 0 .625rem;
    position: relative;
    color: #006400;
    background-color: #fff;
    border: 1px solid #006400;
    text-decoration: none;
    top: .25rem;
    line-height: 1.3125rem
}
.favlist__clear:hover {
    color: #fff;
    background-color: #006400;
    border: 1px solid #006400;
    text-decoration: none
}
.favlist-modal--delete p {
    padding: 1.25rem .625rem
}
.favlist-modal--added {
    background-color: #fff;
    padding-top: 1.25rem
}
.favlist-modal--added p {
    padding: 1.875rem .625rem
}
.favlist-modal--added .messagebox {
    width: auto;
    display: block;
    margin: .625rem .625rem 1.875rem;
    color: #2a7018;
    padding-top: .9375rem;
    padding-bottom: .9375rem
}
.favlist-modal--added .messagebox svg {
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid #2a7018;
    border-radius: 50%;
    padding: .1875rem;
    margin-right: .3125rem;
    float: left;
    margin-bottom: .625rem
}
.favlist-modal__detail {
    margin: 0 .625rem 1.25rem
}
.favlist-modal__detail:after {
    content: "";
    display: table;
    clear: both
}
.favlist-modal__detail img {
    max-width: 8.75rem;
    float: left;
    margin-right: .625rem
}
.favlist-modal__detail h5 {
    font-weight: bold
}
.favlist-modal__buttons {
    padding: 1.25rem .625rem;
    box-shadow: 0px -1px 2px rgba(0, 0, 0, .18);
    border-top: 1px solid #e2e1e1
}
.favlist-modal__buttons label {
    position: relative;
    padding-left: 1.6875rem;
    top: .5rem;
    cursor: pointer
}
.favlist-modal__buttons label input {
    top: .0625rem
}
.favlist-modal__buttons label:hover {
    text-decoration: underline
}
.favlist-modal--delete .favlist-modal__buttons .btn {
    margin-bottom: .9375rem;
    width: 100%
}
.favlist-modal--delete .favlist-modal__buttons label {
    margin-left: 0
}
.favlist-modal--added .favlist-modal__buttons .btn {
    margin-right: 1.25rem
}
.favlist-modal--added .favlist-modal__buttons label {
    margin-left: .625rem
}
@media(min-width: 744px) {
    .favlist-modal--added .favlist-modal__buttons span {
        position: relative;
        top: .625rem
    }
}
@media(max-width: 743px) {
    .favlist__container .favlist__outdated.fixed {
        margin-top: .875rem
    }
    .favlist__container .favlist__outdated.fixed+.row {
        margin-top: 3.125rem
    }
    .favlist-modal--added .favlist-modal__buttons .btn {
        margin-right: 0;
        width: 100%
    }
    .favlist-modal--added .favlist-modal__buttons .btn+.btn {
        margin-top: 1.875rem
    }
    .favlist-modal--added .favlist-modal__buttons span {
        text-align: center;
        display: block;
        margin: .125rem 0 .625rem
    }
}
@media(max-width: 414px)and (max-height: 625px)and (orientation: portrait) {
    .favlist__tabs {
        top: auto;
        bottom: -0.5625rem
    }
}
.container--home {
    max-width: 100% !important;
    position: relative;
    padding: 0
}
.container--home:after {
    content: "";
    background: rgba(0, 0, 0, .45) linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0)) left top/100% .3125rem no-repeat;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 1
}
.container--home>.img-holder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}
.container--home>.img-holder img {
    position: absolute;
    width: 46.4375rem;
    max-width: none;
    top: 0;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}
@media(max-width: 414px) {
    .container--home>.img-holder img {
        width: 25.875rem
    }
}
.container--home .opener {
    width: 55.625rem;
    max-width: 100%;
    position: relative;
    margin: 0 auto;
    padding: 1.875rem .625rem;
    left: 0;
    right: 0;
    z-index: 6;
    text-align: center
}
.container--home .opener a.firstsafari {
    background-color: rgba(0, 0, 0, .4);
    display: inline-block;
    border: 1px solid #fff;
    opacity: .85;
    color: #fff;
    padding: .6875rem 2.1875rem .6875rem 1.5625rem;
    font-weight: 600;
    border-radius: .3125rem;
    width: auto;
    min-width: 11.25rem;
    left: 0;
    right: 0;
    margin: 2.3125rem auto 1.5625rem;
    text-align: center;
    transition: opacity .2s ease-in-out, background .2s ease-in-out, color .2s ease-in-out;
    position: relative
}
.container--home .opener a.firstsafari:hover {
    opacity: 1;
    background-color: #fff;
    color: #444;
    text-decoration: none
}
.container--home .opener a.firstsafari span {
    font-weight: normal;
    font-size: 1.75rem;
    position: absolute;
    margin-top: -0.1875rem
}
.container--home .opener h1, .container--home .opener h2 {
    color: #fff;
    text-align: center;
    padding-bottom: .5rem;
    font-size: 2.375rem;
    font-weight: 600;
    padding-left: .625rem;
    padding-right: .625rem;
    line-height: 2.5rem;
    text-shadow: 2px 2px 5px #000
}
.container--home .opener h2 {
    font-size: 1.375rem;
    font-weight: normal;
    padding-bottom: 1.8125rem;
    line-height: 1.5rem;
    text-shadow: 1px 1px 4px #000
}
@media(min-width: 415px)and (max-width: 743px) {
    .container--home .opener h2 span {
        display: block
    }
}
@media(max-width: 743px) {
    .container--home .opener a.search {
        margin-top: .9375rem
    }
    .container--home .opener a.firstsafari {
        margin: 4.1875rem auto .9375rem
    }
}
.container--home .opener h1 span {
    font-size: 1.625rem
}
.container--home .opener form {
    text-align: left
}
.container--home .opener form .tourpreferences__block {
    visibility: visible !important
}
@media(max-width: 743px) {
    .container--home .opener form {
        margin-bottom: .625rem
    }
}
.container--home-numbers {
    display: none;
    background-color: #fff;
    max-width: none !important;
    padding: 1.25rem 0
}
.container--home-numbers .inner {
    max-width: 75rem;
    margin: 0 auto;
    text-align: center
}
.container--home-numbers .inner div {
    display: inline-block;
    color: #444;
    margin: 0 .875rem;
    line-height: 1.5rem
}
.container--home-numbers .inner div i {
    float: left;
    margin-right: .625rem;
    width: 1.5rem
}
.container--home-numbers .inner div a {
    color: #444;
    display: inline-block;
    position: relative;
    text-decoration: underline 1px #999;
    text-underline-offset: 2.5px
}
.container--home-numbers .inner div a:hover {
    text-decoration: none !important
}
.container--home-numbers--partneroptions .inner {
    text-align: left
}
.container--home__heading {
    font-size: 1.25rem;
    line-height: 1.375rem;
    margin-bottom: .875rem
}
.container--home-recent {
    position: relative;
    padding-top: 5rem;
    padding-bottom: 0;
    margin-bottom: -2.5rem
}
.container--home-toprated {
    padding-top: 5rem;
    position: relative
}
.container--home-toprated .shadowed-box, .container--home-toprated .card {
    margin: 0 .625rem;
    background-color: #fff
}
.container--home-toprated .shadowed-box:after, .container--home-toprated .card:after {
    content: "";
    display: table;
    clear: both
}
.container--home-toprated__content {
    padding-right: 0 !important;
    padding-left: 0 !important;
    min-height: 31.25rem
}
.container--home-toprated__mobnav {
    position: absolute;
    top: 0;
    right: .625rem;
    width: 13.125rem;
    z-index: 13;
    padding-top: 50%
}
.container--home-toprated__mobnav__buttons {
    position: absolute;
    bottom: 1.125rem;
    width: 100%
}
.container--home-toprated__mobnav__buttons a {
    float: right;
    background-color: rgba(0, 0, 0, .4);
    display: inline-block;
    border: 1px solid #ccc;
    color: #fff;
    padding: 0 1.5625rem 0 .625rem;
    margin-right: .4375rem;
    border-radius: .3125rem;
    transition: opacity .2s ease-in-out, background .2s ease-in-out, color .2s ease-in-out;
    width: auto;
    font-weight: normal;
    text-underline: none
}
html.no-touch .container--home-toprated__mobnav__buttons a:hover {
    opacity: 1;
    background-color: #fff;
    color: #444;
    text-decoration: none
}
.container--home-toprated__mobnav__buttons a:active {
    opacity: 1;
    background-color: #fff;
    color: #444;
    text-decoration: none
}
.container--home-toprated__mobnav__buttons a:active, .container--home-toprated__mobnav__buttons a:hover {
    text-underline: none
}
@media(max-width: 335px) {
    .container--home-toprated__mobnav__buttons a.btn--next:after {
        margin-left: .25rem
    }
    .container--home-toprated__mobnav__buttons a span {
        display: none
    }
}
@media(max-width: 400px) {
    .container--home-toprated__mobnav__buttons a span+span {
        display: none
    }
}
.container--home-toprated__mobnav__buttons a+a {
    padding-left: 1.5625rem;
    padding-right: .625rem
}
.container--home-toprated__info {
    position: relative;
    width: 100%;
    height: 100%;
    display: none;
    background-color: #fff
}
.container--home-toprated__info.active {
    display: block
}
.container--home-toprated__info__bg {
    position: absolute;
    overflow: hidden;
    width: 100%;
    z-index: 2
}
.container--home-toprated__info__bg:before {
    content: "";
    display: block;
    padding-top: 50%;
    width: 100%
}
.container--home-toprated__info__bg img {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0
}
.container--home-toprated__info__content {
    top: 0;
    position: relative;
    z-index: 10;
    padding-bottom: 1.25rem
}
.container--home-toprated__info__content:before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    margin-top: 25%;
    padding-top: 25%;
    pointer-events: none;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
}
.container--home-toprated__info__content h3 {
    font-size: 1.75rem;
    display: inline-block;
    width: 100%;
    padding-top: 50%;
    position: relative;
    text-align: left;
    font-weight: 600
}
.container--home-toprated__info__content h3 a {
    position: absolute;
    line-height: .9375rem;
    text-align: left;
    color: #fff;
    width: auto;
    margin-left: .9375rem;
    bottom: 1.0625rem;
    display: inline;
    text-decoration: underline;
    z-index: 10
}
.container--home-toprated__info__content h3 a:hover {
    text-decoration: none
}
.container--home-toprated__info__content h3 a i {
    position: relative
}
.container--home-toprated__info__content div.txt--grey {
    padding-left: .9375rem;
    margin-top: .3125rem
}
.container--home-toprated__info__content ul li {
    margin: .3125rem 0 .3125rem 0;
    position: relative;
    color: #666;
    padding-left: 1.75rem
}
.container--home-toprated__info__content ul li b {
    color: #444;
    padding-right: .3125rem
}
.container--home-toprated__info__content ul li b span {
    color: #666;
    font-weight: normal
}
.container--home-toprated__info__content ul li i {
    width: 1.125rem;
    margin-right: .625rem;
    position: absolute;
    top: .125rem;
    left: 0
}
.container--home-toprated__info__content .btn--white {
    border-radius: .3125rem;
    width: auto;
    display: block;
    margin: .9375rem .9375rem 1.25rem;
    font-weight: normal
}
.container--home-toprated__info__content .btn--white:last-child {
    margin-bottom: 0
}
.container--home-toprated__info__content .review-summary--oneline, .container--home-toprated__info__content ul, .container--home-toprated__info__content p {
    margin: .9375rem
}
.container--home-toprated__info__content a[href="#"] {
    color: #444;
    text-underline-offset: 2.5px;
    border-bottom: 0
}
.container--home-toprated__info__content a[href="#"], .container--home-toprated__info__content a[href="#"]:hover {
    text-decoration: underline dotted 1px !important;
    cursor: default
}
.container--home-toprated__info__content .toprated-sign {
    width: 3.6875rem;
    position: absolute;
    right: .625rem;
    top: .625rem
}
.container--home-toprated .pagination {
    clear: both;
    padding-top: 1.25rem;
    padding-left: .3125rem;
    padding-right: .3125rem
}
.container--home-toprated .pagination span {
    color: #999;
    line-height: 1.75rem;
    text-align: center;
    display: block
}
.container--home-trendingtours .list--recent-tours, .container--home-recent .list--recent-tours {
    padding-left: .625rem;
    padding-right: .625rem
}
.container--home-trendingtours .list--recent-tours .row, .container--home-recent .list--recent-tours .row {
    display: flex;
    align-items: stretch;
    flex-flow: column
}
.container--home-trendingtours .list--recent-tours .recent-col, .container--home-recent .list--recent-tours .recent-col {
    padding: .75rem .9375rem;
    border: solid 1px #dcdcdc;
    background-color: #fff;
    flex: 1;
    margin-top: .75rem;
    position: relative
}
.container--home-trendingtours .list--recent-tours .recent-col:first-child, .container--home-recent .list--recent-tours .recent-col:first-child {
    margin-top: 0
}
.container--home-trendingtours .list--recent-tours picture, .container--home-recent .list--recent-tours picture {
    flex: 95px;
    margin: 3px 0;
    flex-shrink: 0;
    max-width: 95px;
    height: 60px
}
.container--home-trendingtours .list--recent-tours picture img, .container--home-recent .list--recent-tours picture img {
    display: block;
    object-fit: cover;
    height: 100%;
    object-position: center
}
.container--home-trendingtours .list--recent-tours .tour-details, .container--home-recent .list--recent-tours .tour-details {
    flex-flow: column;
    display: flex;
    flex-flow: column
}
.container--home-trendingtours .list--recent-tours .tour-details .tourtitle, .container--home-recent .list--recent-tours .tour-details .tourtitle {
    font-size: .875rem;
    color: #007aa7;
    line-height: 1.29
}
.container--home-trendingtours .list--recent-tours .tour-details .price, .container--home-recent .list--recent-tours .tour-details .price {
    padding-top: .5rem;
    line-height: 1
}
.container--home-trendingtours .list--recent-tours .tour-details .price, .container--home-trendingtours .list--recent-tours .tour-details .price b, .container--home-recent .list--recent-tours .tour-details .price, .container--home-recent .list--recent-tours .tour-details .price b {
    font-size: .8125rem
}
.container--home-trendingtours .list--recent-tours .list__item, .container--home-recent .list--recent-tours .list__item {
    display: flex;
    gap: 10px;
    height: 100%
}
.container--home-trendingtours {
    padding-top: 3.125rem;
    padding-bottom: 1.875rem
}
.container--home-trendingtours .list--tours {
    padding-left: .625rem;
    padding-right: .625rem
}
.container--home-trendingtours .list--tours .col:nth-child(3) {
    display: none
}
.container--home-topratedoperators {
    padding-top: 3.125rem;
    padding-bottom: 1.875rem;
    position: relative
}
.container--home-topratedoperators__title {
    margin-bottom: 1.5rem
}
.container--home-topratedoperators .topratedoperators__snippet {
    margin-bottom: 2.5rem;
    display: block;
    color: #444;
    position: relative;
    border-radius: .3125rem
}
.container--home-topratedoperators .topratedoperators__snippet:after {
    content: "";
    display: table;
    clear: both
}
.container--home-topratedoperators .topratedoperators__snippet:hover .operator_name h2 {
    text-decoration: underline;
    transition-duration: .25s
}
.container--home-topratedoperators .topratedoperators__snippet__rank {
    position: absolute;
    top: -0.0625rem;
    left: .9375rem;
    z-index: 2;
    color: #000;
    width: 2.8125rem;
    height: 3.4375rem;
    text-align: center;
    overflow: hidden;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff
}
.container--home-topratedoperators .topratedoperators__snippet__rank span {
    z-index: 3;
    position: relative;
    display: inline-block;
    font-size: 1.4375rem;
    font-weight: bold;
    padding-top: .4375rem;
    width: 100%;
    font-family: "Gentium Basic", serif
}
.container--home-topratedoperators .topratedoperators__snippet__rank span:before {
    background-color: rgba(0, 0, 0, 0);
    content: "";
    position: absolute;
    top: 2.4375rem;
    left: .3125rem;
    width: 2.0625rem;
    height: 2.0625rem;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff
}
.container--home-topratedoperators .topratedoperators__snippet__rank:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 2.8125rem solid rgba(0, 0, 0, 0);
    border-bottom: 2.8125rem solid rgba(0, 0, 0, 0);
    border-left: 2.8125rem solid #f2c058;
    position: absolute;
    bottom: 0;
    left: .4375rem;
    z-index: 2;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}
.container--home-topratedoperators .topratedoperators__snippet__rank:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 1.5rem solid rgba(0, 0, 0, 0);
    border-bottom: 1.5rem solid rgba(0, 0, 0, 0);
    border-left: 1.5rem solid #f2c058;
    position: absolute;
    bottom: 0;
    left: 0
}
.container--home-topratedoperators .topratedoperators__snippet__mobilehead {
    background-color: #fff;
    padding-left: 4.6875rem;
    padding-bottom: .9375rem;
    border-bottom: 1px dotted #b3b3b3;
    min-height: 3.75rem;
    border-radius: .3125rem .3125rem 0 0
}
.container--home-topratedoperators .topratedoperators__snippet__mobilehead h2 {
    color: #0378a0;
    padding-top: .9375rem;
    font-size: 1.125rem;
    line-height: 1.375rem
}
.container--home-topratedoperators .topratedoperators__snippet__head {
    padding-top: 50%;
    position: relative;
    overflow: hidden;
    height: 8.75rem;
    border-radius: .3125rem .3125rem 0 0
}
.container--home-topratedoperators .topratedoperators__snippet__head .operator_name {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    width: 100%
}
.container--home-topratedoperators .topratedoperators__snippet__head .operator_name h2 {
    font-size: 1.4375rem;
    padding: 1.5625rem .625rem .625rem;
    text-decoration: underline rgba(0, 0, 0, 0);
    transition: text-decoration .2s ease-in-out;
    font-family: "Gentium Basic", serif;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
}
.container--home-topratedoperators .topratedoperators__snippet__head img:not(.svg) {
    display: block;
    top: 0;
    min-height: 100%;
    min-width: 100%;
    width: auto;
    max-width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}
.container--home-topratedoperators .topratedoperators__snippet__body {
    display: block;
    background-color: #fff;
    height: 3.5rem;
    border-radius: 0 0 .3125rem .3125rem
}
.container--home-topratedoperators .topratedoperators__snippet__body div.operator_logo {
    position: absolute;
    border-right: 1px dotted #b3b3b3;
    padding-top: .3125rem;
    height: 3.5rem;
    width: 6.25rem
}
.container--home-topratedoperators .topratedoperators__snippet__body div.operator_logo img {
    position: absolute;
    max-width: 6.25rem;
    max-height: 2.8125rem
}
.container--home-topratedoperators .topratedoperators__snippet__body div.reviews {
    padding-top: .5625rem;
    padding-left: 6.875rem;
    line-height: 1.25rem
}
.container--home-topratedoperators .topratedoperators__snippet__body div.reviews .medal {
    position: relative;
    top: .1875rem
}
@media(max-width: 335px) {
    .container--home-topratedoperators .topratedoperators__snippet__body div.reviews .medal {
        display: none
    }
}
.container--home-topratedoperators .topratedoperators__snippet__body div.reviews .stars i {
    width: .875rem
}
@media(max-width: 360px) {
    .container--home-topratedoperators .topratedoperators__snippet__body div.reviews {
        font-size: .8125rem
    }
    .container--home-topratedoperators .topratedoperators__snippet__body div.reviews .stars i {
        width: .75rem
    }
}
.container--home-blog {
    padding-top: 3.125rem;
    padding-bottom: 0
}
.container--home-blog h2 {
    margin-bottom: 1.4375rem
}
.container--home-blog .col {
    position: relative;
    margin-bottom: 2.5rem
}
.container--home-blog .col.blockheader {
    margin-bottom: 0
}
.container--home-blog .col a.post {
    display: block;
    position: relative;
    width: 100%;
    padding-top: 50%;
    background-color: #999;
    overflow: hidden;
    border-radius: .3125rem
}
.container--home-blog .col a.post:after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none
}
.container--home-blog .col a.post img {
    min-height: 100%;
    position: absolute;
    top: 50% !important;
    left: 50%;
    transition: all .5s ease-in-out;
    -ms-transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%)
}
.container--home-blog .col a.post h4 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    font-size: 1.625rem;
    line-height: 1.875rem;
    padding: 1.875rem 1.25rem 1.25rem;
    color: #fff;
    text-decoration: underline rgba(0, 0, 0, 0);
    transition: text-decoration .2s ease-in-out;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
}
.container--home-blog .col a.post:hover {
    box-shadow: 0 .0625rem .8125rem #666
}
.container--home-blog .col a.post:hover h4 {
    text-decoration: underline;
    transition-duration: .25s
}
.container--home-blog .list--posts {
    padding-left: .625rem;
    padding-right: .625rem
}
.container--home-blog .list--posts .col {
    padding-left: 0;
    padding-right: 0
}
.container--home-blog .list--posts .col:nth-child(3) {
    display: none
}
.container--tourpref-directory+.container--home-numbers:not(.hide) {
    display: block;
    border-bottom: 1px solid #444
}
.container--tourpref-directory+.container--home-numbers:not(.hide)+.container--directory {
    padding-top: .625rem
}
@media(max-width: 500px) {
    .container--tourpref-directory+.container--home-numbers:not(.hide) div+div {
        margin-top: .625rem
    }
}
.operator__header {
    position: relative;
    margin: 0;
    overflow: hidden;
    min-height: inherit
}
.operator__header>img, .operator__header>picture img {
    position: relative;
    width: 100%;
    float: left
}
.operator__header picture {
    overflow: hidden
}
.operator__header .row {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 2;
    top: 0
}
.operator__header h1 {
    position: relative;
    color: #fff;
    padding: 3.75rem .8125rem 1.0625rem;
    line-height: 1.625rem;
    font-size: 1.5rem;
    text-shadow: .0625rem .0625rem .3125rem #000;
    bottom: 0;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
}
.operator__header .op-reviews {
    line-height: 1.625rem
}
.operator__header .operator-data {
    color: #fff
}
.operator__header .operator-data.col-9 {
    padding-left: 1.875rem
}
.operator__header .operator-data .op-reviews {
    white-space: nowrap;
    font-size: .8125rem;
    display: inline-block
}
.operator__header .operator-data .country-with-flag img, .operator__header .operator-data .country-with-flag svg {
    opacity: 1
}
.operator__header .operator-data dl {
    margin-bottom: 2.5rem
}
.operator__header .operator-data dl:after {
    content: "";
    display: table;
    clear: both
}
.operator__header .operator-data dl dt {
    width: 32%;
    float: left;
    clear: both
}
.operator__header .operator-data dl dd {
    width: 68%;
    margin-bottom: .375rem;
    float: left
}
.operator__header .operator-data dl dd:nth-child(6) {
    margin-bottom: 1.5625rem
}
.operator__header .operator-data dl dd.destinations {
    margin-bottom: .4375rem
}
.operator__header .operator-data dl dd.destinations .country-with-flag.small {
    margin-right: .375rem
}
.operator__header .operator-data dl dd.destinations .country-with-flag.small span {
    color: #444
}
.operator__header--noimage .bg-img {
    height: 0;
    padding-bottom: 75%;
    background: linear-gradient(#7A7777, #000000)
}
.operator__header--noimage h1 {
    background: rgba(0, 0, 0, 0)
}
.operator__content .overview-tab .review-summary--oneline {
    margin-top: .625rem;
    margin-bottom: 1.25rem
}
.operator__content .overview-tab .list--tours ul {
    margin-bottom: 1.25rem
}
.operator__content .overview-tab .short-companyprofile {
    padding-top: 1.25rem
}
.operator__content .overview-tab .short-companyprofile+div {
    margin-top: .625rem
}
.operator__content .overview-tab dl {
    margin-top: 1.875rem;
    margin-bottom: 1.25rem
}
.operator__content .overview-tab dl:after {
    content: "";
    display: table;
    clear: both
}
.operator__content .overview-tab dl dt {
    width: 6.25rem;
    float: left;
    clear: both;
    font-style: normal
}
.operator__content .overview-tab dl dd {
    width: calc(100% - 100px);
    margin-bottom: .375rem;
    float: left
}
.operator__content .overview-tab dl dd:nth-child(6) {
    margin-bottom: 1.5625rem
}
.operator__content .overview-tab dl dd.destinations {
    margin-bottom: .4375rem
}
.operator__content .overview-tab dl dd.destinations .country-with-flag.small {
    margin-right: .375rem
}
.operator__content .overview-tab dl dd.destinations .country-with-flag.small span {
    color: #444
}
.operator__content .destinations-tab ul {
    margin-top: 1.25rem
}
.operator__content .destinations-tab ul li {
    padding-left: .75rem;
    margin-bottom: .625rem
}
.operator__content .destinations-tab ul li:before {
    top: .0625rem
}
.operator__content .destinations-tab ul li .country-with-flag {
    display: inline-block;
    margin-right: .1875rem
}
.operator__content .destinations-tab ul li .country-with-flag img {
    margin-right: .25rem
}
.operator__content .destinations-tab ul li span {
    display: inline-block
}
.operator__content .contact-tab h5 {
    margin-bottom: .9375rem;
    font-weight: bold
}
.operator__content .contact-tab .detail__content__block {
    padding-bottom: 0
}
.operator__terms {
    padding: 1.875rem 1.25rem;
    line-height: 1.375rem
}
.operator_disclaimer {
    padding: 0;
    margin: 0 0 1.875rem;
    margin-top: 2.5rem
}
.operator_disclaimer h3 {
    font-size: .8125rem;
    color: #666
}
.operator_disclaimer a {
    color: #666;
    text-decoration: underline
}
.operator_disclaimer a:hover {
    text-decoration: none !important
}
@media(max-width: 743px) {
    .operator__header {
        transition: opacity .2s ease-in-out
    }
    .operator__header .row {
        position: relative;
        width: auto;
        box-shadow: 0 .125rem .1875rem rgba(0, 0, 0, .18);
        margin: 0 .625rem 1.25rem;
        background-color: #fff
    }
    .operator__header .row div.operator-data {
        position: absolute;
        top: -7.1875rem;
        bottom: 0;
        padding: 0
    }
    .operator__header .row div.operator-data h1 {
        padding: 1.25rem 1.25rem 2.8125rem;
        margin: 0 -0.625rem;
        box-sizing: content-box;
        top: 1.5rem
    }
    .operator__header .row div.operator-data h1.multiline {
        padding: 0 1.25rem 2.4375rem;
        margin-bottom: -0.3125rem
    }
    .operator__header .row div.operator-data .op-reviews {
        position: absolute;
        margin-top: -0.9375rem;
        margin-left: .625rem
    }
    .operator__header .row div.operator-data h1.multiline+.op-reviews {
        margin-top: -0.3125rem
    }
    .operator__header .row div.operator-data dl {
        background-color: #fff;
        color: #444;
        margin-bottom: 0;
        padding: 0 .625rem;
        position: relative;
        top: 2.8125rem
    }
    .operator__header .row div.operator-data a.reviews-link {
        color: #fff;
        text-decoration: underline
    }
    .operator__header .row div.operator-data a.reviews-link:hover {
        text-decoration: none
    }
    .operator__header .row div.logo-block {
        position: relative;
        background-color: #fff;
        text-align: center;
        bottom: 0;
        height: auto;
        padding: 0;
        padding-bottom: .625rem
    }
    .operator__header .row div.logo-block.logo-block--withoutlogo {
        padding-bottom: 0
    }
    .operator__header .row div.logo-block.logo-block--withoutlogo .btn--reqquote {
        margin-top: 1.5625rem
    }
    .operator__header .row div.logo-block>div {
        padding: .3125rem .625rem 0 .625rem;
        background-color: #f8f8f8;
        border-bottom: .0625rem dotted #b3b3b3;
        margin-bottom: .9375rem
    }
    .operator__header .row div.logo-block .btn--reqquote {
        width: calc(100% - 20px);
        margin-bottom: .9375rem
    }
    .operator__header .row div.logo-block img {
        width: 6.25rem
    }
    .operator__header .row div.logo-block p {
        text-align: left;
        font-size: .8125rem;
        padding-left: 1.875rem;
        line-height: .9375rem;
        font-style: italic;
        display: block;
        position: relative
    }
    .operator__header .row div.logo-block p i {
        position: absolute;
        top: 0;
        left: .625rem
    }
    .operator__header .row div.logo-block p a {
        color: #444;
        text-decoration: underline
    }
    .operator__header .row div.logo-block p a:hover {
        text-decoration: none !important
    }
    .operator__header .row div.logo-block p {
        margin-bottom: .25rem
    }
    .operator__header .row div.logo-block p+p {
        margin-top: .4375rem
    }
    .operator__header picture {
        display: block;
        content: "";
        padding-top: 50%;
        background-color: #f2f2f2;
        position: relative
    }
    .operator__header picture img {
        width: 100%;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%)
    }
}
.park__ensign {
    position: absolute;
    top: -0.125rem;
    left: 1.5625rem;
    z-index: 2;
    color: #000;
    width: 2.5rem;
    height: 2.8125rem;
    text-align: center;
    font-size: .6875rem;
    padding-top: .0625rem;
    overflow: hidden;
    line-height: .625rem;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff
}
.park__ensign span {
    z-index: 3;
    position: relative;
    top: .0625rem;
    display: inline-block
}
.park__ensign span:after {
    content: "Best Park"
}
.park__ensign span:before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    background-color: rgba(0, 0, 0, 0);
    content: "";
    position: absolute;
    top: 1.8125rem;
    left: .25rem;
    width: 1.875rem;
    height: 1.875rem;
    transform: rotate(-45deg)
}
.park__ensign:before, .park__ensign:after {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    left: 0
}
.park__ensign:before {
    border-top: 2.8125rem solid rgba(0, 0, 0, 0);
    border-bottom: 2.8125rem solid rgba(0, 0, 0, 0);
    border-left: 2.8125rem solid #ffb431;
    bottom: .1875rem;
    transform: rotate(-45deg);
    z-index: 2
}
.park__ensign:after {
    border-top: 1.3125rem solid rgba(0, 0, 0, 0);
    border-bottom: 1.3125rem solid rgba(0, 0, 0, 0);
    border-left: 1.3125rem solid #d69425;
    bottom: 0
}
.park__ensign--silver span:after {
    content: "Great Park"
}
.park__ensign--silver:before {
    border-left: 2.8125rem solid #bcbbbb
}
.park__ensign--silver:after {
    border-left: 1.3125rem solid #a19f9c
}
.park__content__block__inprogress>div {
    border: 1px solid #c2e4c2;
    background-color: #f3f9f3;
    padding: 1.25rem 9.375rem 1.25rem 1.25rem;
    margin-bottom: 1.875rem;
    min-height: 3.75rem
}
.park__content__block__inprogress>div p {
    padding: 0
}
.park__content__block__inprogress>div .coming-soon {
    width: 7.5rem;
    height: 2.1875rem;
    display: inline-block;
    float: right;
    padding: 0;
    margin: 0;
    position: absolute;
    top: 2.5rem;
    right: .9375rem;
    transform: rotate(-4deg)
}
.park__content__block__inprogress>div .coming-soon:before, .park__content__block__inprogress>div .coming-soon:after {
    content: "";
    display: block;
    width: 1.875rem;
    height: 0;
    border-top: 1px solid #999;
    transform: rotate(-55deg);
    position: absolute;
    left: 2.6875rem;
    top: -0.25rem
}
.park__content__block__inprogress>div .coming-soon:after {
    transform: rotate(55deg);
    left: 3.5625rem
}
.park__content__block__inprogress>div .coming-soon span {
    z-index: 2;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 7.5rem;
    height: 2.1875rem;
    line-height: 2.0625rem;
    color: #0a920a;
    font-size: .875rem;
    background-color: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, .18);
    display: inline-block;
    text-align: center
}
.park__content__block__inprogress>div .coming-soon span:before {
    background-color: #999;
    width: .375rem;
    height: .375rem;
    border-radius: .375rem;
    position: absolute;
    left: 3.875rem;
    top: -1.0625rem;
    content: "";
    display: block
}
@media(max-width: 414px)and (max-height: 625px)and (orientation: portrait) {
    .park__ensign--r\@xs {
        left: auto;
        right: 1.5625rem
    }
    .park__ensign--r\@xs~.imgpagehead__overlay h1 {
        padding-right: 3.125rem
    }
}
.partneroptions__heading {
    font-size: 1.25rem;
    line-height: 1.25rem;
    padding-top: 1.5625rem;
    margin-bottom: 0
}
.sidebarform__panel {
    position: fixed;
    z-index: 101;
    top: 0;
    bottom: 0;
    right: -100%;
    width: 100%;
    padding: .625rem;
    background: #fff;
    transform: none;
    transition: transform .3s ease;
    overflow: auto
}
.sidebarform__overlay {
    font-size: 0;
    border: 0;
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    opacity: 0;
    pointer-events: none
}
.sidebarform__close {
    font-size: 0;
    border: 0;
    display: block;
    margin-left: auto;
    background: rgba(0, 0, 0, 0);
    cursor: pointer
}
.sidebarform__close i {
    width: 1.5625rem;
    height: 1.5625rem
}
body[data-show=sidebarform] {
    overflow: hidden
}
body[data-show=sidebarform] .sidebarform__overlay {
    opacity: 1;
    pointer-events: all
}
body[data-show=sidebarform] .sidebarform__panel {
    transform: translateX(-100%)
}
form.signup__accommodation input[type=text], form.signup__accommodation input[type=email] {
    min-width: 100% !important
}
form.signup__accommodation .accommodation_autocomplete_holder {
    position: relative;
    min-width: 100% !important;
    width: 100% !important
}
form.signup__accommodation .acc-chain a.help {
    margin-top: 8px
}
form.signup__accommodation .acc-chain div.checkbox {
    margin-top: -7px
}
.signup_help__accommodation_chain {
    z-index: 1000
}
@media(min-width: 744px) {
    .sidebarform__panel {
        right: -42.5rem;
        width: 42.5rem;
        padding: 2.5rem
    }
}
.signup__content {
    padding: 1.25rem .625rem
}
.signup__content h3:not(:last-child), .signup__content p:not(:last-child) {
    margin-bottom: 1.375rem
}
.signup__heading--sec {
    margin-bottom: .625rem;
    margin-top: .9375rem
}
.signup__heading-toggle {
    display: none
}
.signup__heading-toggle[data-state=active] {
    display: inline
}
.signup__success__h {
    font-size: 1.125rem;
    margin-bottom: .625rem
}
.signup__success__p {
    margin-bottom: .625rem
}
.signup__container .filename, .signup__container .fileinfo {
    display: inline-block;
    margin-right: .9375rem
}
.signup__container .uploadifive-queue-item.error .fileinfo {
    color: #006400
}
.signup__removefile {
    position: relative;
    display: inline-block
}
.signup__removefile .clear-btn {
    position: relative;
    margin-right: .3125rem;
    top: .125rem
}
.signup__removefile+div {
    padding-top: .3125rem
}
.signup__nav {
    position: relative;
    counter-reset: signuptabs;
    margin-bottom: 1.25rem
}
.signup__nav:after {
    content: "";
    position: absolute;
    z-index: -1;
    display: block;
    background: #b3b3b3;
    left: -0.625rem;
    right: -0.625rem;
    top: .9375rem;
    height: 1px
}
.signup__nav-item {
    position: relative;
    display: inline-block;
    width: 33.3333333333%
}
.signup__nav-item:before {
    display: block;
    margin: 0 auto;
    counter-increment: signuptabs;
    content: counter(signuptabs);
    width: 1.875rem;
    line-height: 1.875rem;
    color: #fff;
    background: #999;
    text-align: center;
    border-radius: 50%;
    font-weight: 600
}
.signup__nav-item[data-state=complete]:before {
    background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/checkmark-white.svg");
    background-size: 40%;
    background-repeat: no-repeat;
    background-position: center center;
    color: #2a7018;
    text-indent: 1.25rem
}
.signup__nav-link {
    position: relative;
    display: inline-block;
    font-size: .625rem;
    line-height: 1.875rem;
    color: #666;
    white-space: nowrap;
    margin: -1.875rem auto 0;
    padding-top: 1.875rem;
    left: 50%;
    transform: translateX(-50%);
    text-decoration: none !important;
    cursor: default
}
.signup__nav-item[data-state=current]:before, .signup__nav-item[data-state=complete]:before {
    background-color: #2a7018
}
.signup__nav-item[data-state=current] .signup__nav-link, .signup__nav-item[data-state=complete] .signup__nav-link {
    color: #2a7018
}
.signup__nav-item[data-state=current] .signup__nav-link {
    font-weight: 600
}
.signup__nav-item[data-state=current] .signup__nav-link, .signup__nav-item[data-state=complete] .signup__nav-link, .signup__nav-item[data-state=incomplete] .signup__nav-link {
    cursor: pointer
}
.signup__nav-item[data-state=current] .signup__nav-link:hover, .signup__nav-item[data-state=complete] .signup__nav-link:hover, .signup__nav-item[data-state=incomplete] .signup__nav-link:hover {
    text-decoration: underline !important
}
.signup__btn {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    margin-bottom: .625rem
}
.signup__btn--yes {
    margin-right: .625rem
}
.signup__prefill {
    display: inline-block;
    margin-top: .375rem
}
.signup__link_change {
    display: inline-block;
    margin-left: .625rem
}
.signup__form__isnotowner .legend__text__t1 {
    display: inline !important
}
.signup__form__isnotowner .legend__text__t2 {
    display: none !important
}
.signup__form__isowner .legend__text__t1 {
    display: none !important
}
.signup__form__isowner .legend__text__t2 {
    display: inline !important
}
.signup__form__isowner .fieldset__first {
    margin-bottom: 0 !important
}
.signup__form__isowner .fieldset__second legend {
    display: none !important
}
.select--holder--signup {
    width: 18.75rem !important;
    margin-top: .3125rem;
    margin-bottom: .3125rem !important
}
.signup__form .txt-expl {
    margin-top: .5625rem;
    display: block;
    margin-bottom: .9375rem;
    line-height: 1.125rem
}
.signup__form__isnotowner .shareholder__label {
    padding: 0
}
.signup__form__isnotowner .signup__form__shareholders .form__label {
    padding: 0;
    line-height: 1
}
.signup__form__shareholders {
    max-width: 100% !important
}
.signup__form__shareholders .signup__form__shareholder {
    margin-top: 1.875rem
}
.signup-form .col {
    height: auto
}
.signup-info {
    display: none
}
.signup-form-table {
    max-width: 100% !important;
    border: 1px solid #ccc
}
.signup-form-table .tick-circle {
    position: relative;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid #2a7017;
    display: none;
    margin-left: 10px;
    margin-top: -2px
}
.signup-form-table .tick-circle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 5px;
    border: solid #2a7017;
    border-width: 1px 1px 0 0;
    transform: translate(-50%, -50%) rotate(130deg)
}
.signup-form-table--upload .tick-circle {
    display: inline-block
}
.signup-form-table--upload .signup-form-table__label {
    color: #2a7017
}
.signup-form-table--upload .signup-form-table__delete__document {
    color: #ca4947;
    cursor: pointer
}
.signup-form-table a {
    display: block;
    line-height: 1;
    font-size: .875rem;
    text-decoration: underline;
    text-decoration-style: dotted
}
.signup-form-table a:hover {
    text-decoration-style: dotted !important
}
.signup-form-table__grid {
    display: flex;
    flex-wrap: wrap
}
.signup-form-table__grid>:nth-child(3) {
    flex-basis: 100%
}
.signup-form-table__row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ccc;
    padding: 12px
}
.signup-form-table__row:last-child {
    border-bottom: none
}
.signup-form-table__col--left {
    display: flex;
    gap: 10px;
    width: 60%
}
.signup-form-table__col--right .uploadifive-button span {
    color: #0378a0
}
.signup-form-table__col--right .filename-preview {
    font-size: .75rem;
    text-align: right
}
.signup-form-table__col--right .uploadifive-button, .signup-form-table__col--right .signup-form-table__delete__document {
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: end
}
.signup-form-table__col--right .uploadifive-button .signup-form-table__document_icon, .signup-form-table__col--right .signup-form-table__delete__document .signup-form-table__document_icon {
    background-repeat: no-repeat;
    width: 12px;
    height: 15px
}
.signup-form-table__label {
    padding: 0;
    line-height: 1;
    min-height: auto !important;
    margin-bottom: 5px !important;
    margin-top: 0 !important
}
.signup-form-table__document_icon {
    --svg: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 21"><g><path d="M15 16h-3v3l3-3zm-4 4v-5h5V1H1v19h10zm.7 1H0V0h17v15.7L11.7 21z"/><path d="M13 5H4v1h9zM13 8H4v1h9zM13 11H4v1h9zM8 15H4v1h4z"/></g></svg>');
    -webkit-mask: var(--svg);
    mask: var(--svg);
    height: 20px;
    aspect-ratio: 17/21
}
.signup-form-table__document_icon--grey {
    background-color: #666
}
.signup-form-table__document_icon--blue {
    background-color: #0378a0
}
.signup-form-table__trash_icon {
    --svg: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 14"%3E%3Cg fill="none" stroke="%23000" stroke-width=".8"%3E%3Cpolyline stroke-linecap="square" points="11 2.5 11 12.5 1 12.5 1 2.5"/%3E%3Cpath stroke-linecap="square" d="M6 5.5L6 9.5M4 5.5L4 9.5M8 5.5L8 9.5"/%3E%3Cpolyline points="4 2 4 0 8 0 8 2"/%3E%3Cpath stroke-linecap="square" d="M0.375,2 L11.625,2"/%3E%3C/g%3E%3C/svg%3E');
    -webkit-mask: var(--svg);
    mask: var(--svg);
    height: 18px;
    aspect-ratio: 6/7;
    cursor: pointer
}
.signup-form-table__trash_icon--red {
    background-color: #ca4947
}
@media(min-width: 768px)and (max-width: 1024px) {
    .signup__form__shareholders .signup__form__shareholder:first-child {
        margin-top: 3.125rem
    }
}
@media(max-width: 767px) {
    .signup__form__shareholders .signup__form__shareholder:first-child {
        margin-top: 4.375rem
    }
    .signup-form-table__row {
        flex-flow: column;
        gap: 10px
    }
    .signup-form-table__col--left {
        width: 100%
    }
    .signup-form-table__col--left .signup-form-table__document_icon {
        display: none
    }
    .signup-form-table__col--right {
        width: 100%
    }
    .signup-form-table__col--right .uploadifive-button, .signup-form-table__col--right .signup-form-table__delete__document {
        justify-content: normal
    }
}
.tour__header {
    margin: 0 auto;
    width: 100%;
    overflow: hidden;
    display: block;
    height: auto;
    position: relative
}
.tour__header h1 {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 3.75rem .625rem .9375rem;
    color: #fff;
    line-height: 2rem;
    font-size: 1.625rem;
    text-shadow: 1px 1px 5px #000;
    z-index: 3;
    background: rgba(0, 0, 0, .4);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
}
.tour__header img {
    float: none;
    position: absolute;
    left: 0;
    top: -15%;
    z-index: 1;
    width: 100%
}
.tour__header:before {
    content: "";
    display: block;
    padding-top: 50%;
    position: relative;
    z-index: 3
}
.tour__head {
    padding-top: 0;
    padding-bottom: .3125rem
}
.tour__head__container {
    background-color: #fff;
    overflow: hidden;
    display: block;
    color: #444;
    position: relative;
    top: -0.9375rem;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, .18)
}
@media(max-width: 743px) {
    .tour__head__container {
        transition: opacity .2s ease-in-out
    }
}
.tour__head__container .operator-snippet__data {
    border-bottom: 1px dotted #b3b3b3;
    border-top: 0;
    min-height: 3.5rem
}
.tour__head__container .messagebox--red {
    color: #ca4947;
    width: auto;
    line-height: 1rem;
    padding: .4375rem .625rem;
    font-size: .8125rem;
    margin-top: .625rem
}
.tour__head__container .messagebox--red.todate:before, .tour__head__container .messagebox--red.totravelers:before {
    position: absolute;
    top: -0.25rem;
    left: 9.6875rem;
    transform: rotate(-45deg);
    content: "";
    display: block;
    width: .5rem;
    height: .5rem;
    border: .0625rem solid #e88988;
    background-color: #f3e1e0
}
.tour__head__container .messagebox--red.todate:after, .tour__head__container .messagebox--red.totravelers:after {
    background-color: #f3e1e0;
    position: absolute;
    top: 0;
    left: 9.5rem;
    content: "";
    display: block;
    width: .875rem;
    height: .4375rem
}
.tour__head__container .messagebox--red.totravelers:before {
    left: 1.5625rem
}
.tour__head__container .messagebox--red.totravelers:after {
    left: 1.375rem
}
.tour__head__container div.buttondiv {
    margin-top: .9375rem;
    margin-bottom: .625rem
}
.tour__head__container div.buttondiv .conversionblock__usp {
    font-size: .8125rem;
    margin-bottom: .25rem
}
.tour__head__container div.buttondiv .conversionblock__usp+.conversionblock__usp {
    margin-top: .4375rem
}
.tour__head__container div.buttondiv .btn--reqquote {
    margin-bottom: .9375rem
}
.tour__head__container div.pricediv {
    margin-top: .9375rem;
    margin-bottom: .3125rem
}
.tour__head__container div.pricediv .txt--xsmall {
    margin-top: .375rem;
    margin-bottom: .625rem;
    display: inline-block
}
.tour__head__container .price-holder {
    font-size: .875rem;
    display: inline-block;
    margin-right: .625rem;
    padding-top: 0;
    padding-bottom: .3125rem
}
.tour__head__container .price-holder b {
    font-size: 1.4375rem
}
.tour__head__container .price-holder a {
    white-space: nowrap;
    text-decoration: underline;
    color: #2a7018
}
.tour__head__container .price-holder a:hover {
    text-decoration: none
}
.tour__head__container .price-holder a[rel=overlay], .tour__head__container .price-holder a[data-toggle-item] {
    color: #0378a0;
    font-size: .8125rem;
    line-height: 1rem;
    text-decoration: none
}
.tour__head__container .price-holder a[rel=overlay]:hover, .tour__head__container .price-holder a[data-toggle-item]:hover {
    text-decoration: underline
}
.tour__head__container .price-holder+.preferences {
    display: block;
    color: #444;
    white-space: nowrap;
    margin-right: .625rem
}
.tour__head__container .price-holder+.preferences a {
    color: #444;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    font-size: 0
}
.tour__head__container .price-holder+.preferences a:hover {
    text-decoration: none
}
.tour__head__container .price-holder+.preferences a i {
    position: relative;
    top: .1875rem;
    left: -0.0625rem;
    margin-right: .1875rem;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .75
}
@media print {
    .tour__head__container .price-holder+.preferences a i {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact
    }
}
.tour__head__container .price-holder+.preferences a span {
    font-size: .9375rem
}
.tour__head__container .btn--reqquote {
    margin-right: .625rem
}
.tour__content__tabs {
    margin-top: 1.25rem;
    height: 2.25rem;
    box-shadow: none;
    overflow: visible
}
.tour__content__tabs a[role=tab]:last-child {
    border-right: 1px solid #d9d9d9
}
@media(max-width: 320px) {
    .tour__content__tabs a[role=tab]:last-child {
        border-right: 0
    }
}
.tour__content.sticky {
    padding-top: 4.125rem !important
}
.tour__content.sticky .tour__content__tabs {
    margin-top: 0
}
@media print {
    .tour__content.sticky {
        padding-top: 0 !important
    }
}
.tour__content__block {
    padding: .625rem;
    margin: .3125rem 0 .3125rem;
    position: relative
}
.tour__content__block h2:not(.tourtitle) {
    display: inline-block;
    background-color: #fff;
    padding-right: .625rem;
    margin-bottom: .625rem;
    position: relative;
    font-size: 1.0625rem
}
.tour__content__block:before {
    content: "";
    width: calc(100% - 1.25rem);
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: .625rem;
    top: 1.375rem
}
.tour__content__block--notitle:before {
    display: none
}
.tour__content__block--routemap {
    page-break-inside: avoid
}
.tour__content__block--activities ul, .tour__content__block--gettingthere ul {
    list-style: none;
    margin-top: .9375rem
}
.tour__content__block--activities ul li, .tour__content__block--gettingthere ul li {
    padding: 0 .9375rem 1.875rem 3.4375rem;
    position: relative
}
.tour__content__block--activities ul li:before, .tour__content__block--gettingthere ul li:before {
    display: none
}
.tour__content__block--activities ul li b, .tour__content__block--gettingthere ul li b {
    font-style: italic
}
.tour__content__block--activities ul li>div, .tour__content__block--gettingthere ul li>div {
    position: absolute;
    top: 0;
    left: 0;
    width: 3.125rem;
    text-align: center
}
.tour__content__block--activities ul li>div picture, .tour__content__block--gettingthere ul li>div picture {
    display: block;
    position: relative;
    top: .3125rem;
    left: 50%;
    transform: scale(0.75) translateX(-75%) translateY(-27%)
}
.tour__content__block--activities ul li>div picture img, .tour__content__block--gettingthere ul li>div picture img {
    float: left
}
.tour__content__block--inclusions ul {
    margin-top: .625rem
}
.tour__content__block--inclusions ul li {
    padding-bottom: .625rem
}
.tour__content__block--rates ul b {
    font-style: italic
}
.tour__content__block--operator .operator__header {
    margin-top: .625rem;
    margin-left: -0.625rem;
    margin-right: -0.625rem
}
.tour__content__block--operator .operator__header p {
    color: #666;
    text-align: center;
    padding: .5rem 0 .375rem;
    line-height: .8125rem;
    font-size: .875rem;
    font-family: "Gentium Basic", serif
}
.tour__content__block--operator .review+.review {
    margin-top: 0;
    padding-top: .9375rem
}
.tour__content__block--operator .review--snippet span.review__person__reviewed {
    display: inline-block
}
.tour__content__block--operator .operator__reviews+.list__paginator {
    margin-top: 2.1875rem;
    clear: both
}
.tour__content__block--operator .review__person__info {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}
.tour__content__block--operator .row {
    margin-top: 1.5625rem
}
.tour__content__block--operator .row+.row {
    margin-top: 1.5625rem;
    margin-bottom: 1.25rem
}
.tour__content__block--operator h3 {
    font-size: 1.375rem;
    line-height: 1.625rem
}
.tour__content__block--operator .logo {
    float: right;
    width: 9.375rem;
    margin-left: 1.25rem
}
.tour__content__block--operator .picture-frame {
    margin: 0;
    width: 90%;
    margin-right: 10%;
    margin-top: .375rem;
    transform: rotate(-2deg);
    position: relative;
    left: .3125rem
}
.tour__content__block--operator .operator__tours {
    margin-top: 1.25rem
}
.tour__content__block--operator .operator__tours .pagination {
    margin-top: 0
}
.tour__content__block--operator h4 {
    margin-top: 1.625rem;
    margin-bottom: .5rem;
    position: relative
}
.tour__content__block--operator h4.first-title {
    margin-top: 1.25rem
}
.tour__content__block--operator h4 span {
    background-color: #fff;
    display: inline-block;
    padding-right: .625rem;
    position: relative
}
.tour__content__block--operator h4 span.grey {
    font-size: .875rem;
    color: #999;
    font-weight: normal;
    display: block;
    position: relative;
    top: -0.0625rem
}
.tour__content__block--operator h4 span.number {
    display: inline-block;
    border-radius: .3125rem;
    background-color: #d9d9d9;
    color: #444;
    line-height: 1.125rem;
    font-size: .8125rem;
    font-weight: 600;
    padding: 0 .3125rem;
    position: relative;
    top: -0.0625rem;
    margin-right: .625rem
}
.tour__content__block--operator h4 span.number:before {
    content: "";
    display: block;
    height: .25rem;
    width: .625rem;
    background-color: #fff;
    position: absolute;
    top: .5rem;
    right: -0.625rem
}
.tour__content__block--operator h4:before {
    content: "";
    width: 94%;
    height: 0;
    border-top: 1px dotted #b3b3b3;
    position: absolute;
    right: 0;
    top: .6875rem
}
.tour__content__block--operator h4+.list--icon {
    padding-top: .375rem
}
.tour__content__block--operator .operator-data .op-reviews {
    font-size: .8125rem;
    display: block;
    color: #444;
    margin: .75rem 0 0 0
}
.tour__content__block--operator .operator-data .op-reviews a {
    white-space: nowrap
}
.tour__content__block--operator .operator-data .country-with-flag img {
    opacity: 1
}
.tour__content__block--operator .operator-data dl {
    margin-bottom: .625rem;
    margin-top: 1.25rem
}
.tour__content__block--operator .operator-data dl:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--operator .operator-data dl dt {
    width: 7.1875rem;
    position: absolute
}
.tour__content__block--operator .operator-data dl dd {
    width: 100%;
    padding-left: 7.1875rem;
    margin-bottom: .375rem
}
.tour__content__block--operator .operator-data dl dd.destinations {
    margin-bottom: .4375rem
}
.tour__content__block--operator .operator-data dl dd.destinations .country-with-flag.small {
    margin-right: .375rem
}
.tour__content__block--operator .operator-data dl dd.destinations .country-with-flag.small span {
    color: #444
}
.tour__content__block--operator .operator-data dl dd .help {
    display: inline-block;
    line-height: 1rem;
    border-bottom: .0625rem dotted #444
}
.tour__content__block--operator .short-companyprofile+div {
    margin-top: .625rem
}
.tour__content__block--quotereq {
    clear: both
}
.tour__content__block--quotereq .btn {
    margin: .9375rem 0 .9375rem 0
}
.tour__content__block--quotereq ul {
    margin-left: 0
}
.tour__content__block--quotereq ul li {
    padding-top: .0625rem;
    padding-bottom: .0625rem
}
.tour__content__block--quotereq .contact-operator-link {
    color: #666;
    text-decoration: underline
}
.tour__content__block--quotereq .contact-operator-link:hover {
    text-decoration: none
}
.tour__quotebtn {
    margin-top: 1.25rem
}
.tour__disclaimer {
    padding: 1.875rem 0 1.25rem;
    color: #666
}
.tour__disclaimer h3 {
    font-size: .8125rem;
    margin-bottom: .625rem
}
.tour__disclaimer a {
    color: #666;
    text-decoration: underline
}
.tour__disclaimer a:hover {
    text-decoration: none !important
}
.row .tour__quotebtn, .row .tour__disclaimer {
    padding-left: 0;
    padding-right: 0
}
.container--main--tour .tourpreferences {
    position: absolute
}
.container--main--tour .tourpreferences .col.tourpreferences__block {
    padding: 0 !important;
    height: 0 !important;
    background-color: rgba(0, 0, 0, 0);
    margin: 0 !important;
    width: 0 !important;
    border: 0 !important;
    cursor: default !important
}
.container--main--tour .tourpreferences .col .detail {
    width: 21.25rem
}
@media(max-width: 743px) {
    .container--main--tour .tourpreferences .col .detail {
        width: 18.75rem
    }
}
.container--main--tour .tourpreferences .col .detail.hide {
    display: none !important
}
.container--main--tour .tourpreferences .col .detail:not(.hide) {
    display: block;
    z-index: 37
}
.container--main--tour .tourpreferences .col .detail label:not(.checkbox-lbl) {
    width: 12rem
}
.container--main--tour .tourpreferences .col .detail .inner {
    margin-top: 0
}
.container--main--tour .tourpreferences .col .detail .inner:before {
    top: -0.3125rem
}
.container--main--tour .tourpreferences .col .detail .inner.calendar {
    padding-bottom: 1.875rem !important
}
.container--main--tour .tourpreferences .col .detail .inner+.calendar__legend {
    position: relative;
    top: -2.1875rem;
    margin: 0 .625rem;
    line-height: 1.125rem
}
.container--main--tour .tourpreferences .col .detail__persons .inner {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important
}
@media(max-width: 743px) {
    .container--main--tour .tourpreferences .col .detail__persons .inner:before {
        left: 3.125rem
    }
    .container--main--tour .tourpreferences .col .detail__date .inner:before {
        left: 11.875rem
    }
    .container--main--tour .tourpreferences .col .detail label:not(.checkbox-lbl) {
        width: 7.9375rem
    }
}
@media(min-width: 970px) {
    .container--main--tour .tourpreferences .col .detail__persons .inner:before {
        left: 7.5rem
    }
    .container--main--tour .tourpreferences .col .detail__date .inner:before {
        left: 10.625rem
    }
}
@media(min-width: 1050px) {
    .container--main--tour .tourpreferences .col .detail__persons .inner:before {
        left: 3.125rem
    }
    .container--main--tour .tourpreferences .col .detail__date .inner:before {
        left: 10.625rem
    }
}
@media(min-width: 1180px) {
    .container--main--tour .tourpreferences .col .detail__persons .inner:before {
        left: 3.125rem
    }
    .container--main--tour .tourpreferences .col .detail__date .inner:before {
        left: 11.25rem
    }
}
@media(min-width: 970px) {
    .container--main--tour .tourpreferences .col .detail__date.form .inner:before {
        left: 7.5rem
    }
}
@media(min-width: 1050px) {
    .container--main--tour .tourpreferences .col .detail__date.form .inner:before {
        left: 3.125rem
    }
}
@media(min-width: 1180px) {
    .container--main--tour .tourpreferences .col .detail__date.form .inner:before {
        left: 3.125rem
    }
}
.container--main--tour .tourpreferences .children-expl {
    clear: both;
    position: relative;
    top: .9375rem
}
.container--main--tour .tourpreferences .col .detail__persons .inner.inner-with-note {
    padding-bottom: 1.875rem !important
}
@media(max-width: 743px) {
    .container--main--tour .content--tabbed div[role=tabpanel] {
        padding-top: .625rem
    }
    .container--main--tour .tour-next {
        margin-top: 1.875rem
    }
    .container--main--tour .tour-next a.btn {
        display: none
    }
    .container--main--tour .tour-next a.active.btn+a.btn {
        display: block
    }
}
@media(min-width: 544px) {
    .container--main--tour .hide-544 {
        display: none
    }
}
.rates-mob-tab {
    margin-bottom: .9375rem
}
.rates-mob-tab a[role=tab]:not(.active) {
    border-top: 1px solid #efefef
}
@media(min-width: 544px) {
    .tour-next a.active.btn+.show-544.btn {
        display: block !important
    }
}
@media(min-width: 430px)and (max-width: 543px) {
    .container--main--tour .tour-next a.active.btn+a.show-544.btn+a.btn {
        display: block !important
    }
}
@media(max-width: 429px) {
    .show-430.btn {
        display: none !important
    }
}
@media(min-width: 430px) {
    .tour-next a.active.btn+.show-430.btn {
        display: block !important
    }
    .hide-430.btn {
        display: none
    }
    .show-430.btn {
        display: block
    }
}
@media(max-width: 430px) {
    .container--main--tour .tour-next a.active.btn+a.show-430.btn+a.show-544.btn+a.btn {
        display: block !important
    }
}
.tour__content__block--daybyday {
    margin-top: 0;
    position: relative;
    padding: 0
}
.tour__content__block--daybyday:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--daybyday .day {
    margin-top: .4375rem;
    margin-bottom: 2.5rem
}
.tour__content__block--daybyday .day+.tour__content__block--daybyday .day {
    margin-top: 2.5rem
}
.tour__content__block--daybyday .day__header--photo {
    background-color: #666;
    color: #fff;
    position: relative;
    overflow: hidden;
    page-break-inside: avoid;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}
.tour__content__block--daybyday .day__header--photo:before {
    content: "";
    border-left: 1px dotted #d9d9d9;
    height: 100%;
    width: 0;
    position: absolute;
    top: 0;
    left: .625rem;
    z-index: 30
}
.tour__content__block--daybyday .day__header--photo div.photos {
    overflow: hidden;
    width: 100%;
    position: relative
}
.tour__content__block--daybyday .day__header--photo div.photos:before {
    content: "";
    display: block;
    padding-top: 31.25%;
    background-color: #f2f2f2
}
.tour__content__block--daybyday .day__header--photo div.photos.placeholder:before {
    background-color: #006400;
    padding-top: 20%
}
.tour__content__block--daybyday .day__header--photo div.photos:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    z-index: 2
}
.tour__content__block--daybyday .day__header--photo div.photos img {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1
}
.tour__content__block--daybyday .day__header--photo div.photos.illustration:before {
    background-color: #791111;
    padding-top: 15%
}
.tour__content__block--daybyday .day__header--photo div.caption {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding-top: 1.875rem;
    z-index: 10
}
@media screen {
    .tour__content__block--daybyday .day__header--photo div.caption--photo {
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
    }
}
.tour__content__block--daybyday .day__header--photo h3 {
    background-color: rgba(0, 0, 0, 0);
    padding-left: 1.25rem;
    font-size: 1.25rem;
    margin-bottom: .625rem;
    left: 0;
    z-index: 4;
    position: relative;
    text-shadow: 1px 1px 5px #000
}
.tour__content__block--daybyday .day__header--photo h3:before {
    display: none;
    content: ""
}
.tour__content__block--daybyday .day__header--photo h3:after {
    clear: both;
    content: "";
    display: block;
    width: .4375rem;
    height: .4375rem;
    border-radius: .21875rem;
    background-color: #fff;
    border: 0;
    position: absolute;
    top: .4375rem;
    left: .4375rem;
    z-index: 11
}
.tour__content__block--daybyday .day__header--photo h3.no-title:after {
    top: .625rem
}
.tour__content__block--daybyday .day__header--photo h3 span.txt--small {
    font-size: 75%
}
.tour__content__block--daybyday .day__header--photo h3 a {
    color: #fff;
    text-decoration: underline
}
.tour__content__block--daybyday .day__header--photo h3 a:hover {
    text-decoration: none
}
@media print {
    .tour__content__block--daybyday .day__header--photo {
        background: rgba(0, 0, 0, 0)
    }
    .tour__content__block--daybyday .day__header--photo h3 {
        text-shadow: none;
        color: #444;
        margin: 0
    }
    .tour__content__block--daybyday .day__header--photo h3:after {
        background-color: #006400
    }
    .tour__content__block--daybyday .day__header--photo .photos {
        display: none
    }
    .tour__content__block--daybyday .day__header--photo div.caption {
        position: relative;
        padding-top: .625rem;
        z-index: 31
    }
}
.tour__content__block--daybyday .day__header--text {
    color: #444;
    font-size: 1.375rem;
    position: relative;
    margin-left: 1.25rem;
    padding-bottom: .625rem;
    line-height: 1.875rem
}
.tour__content__block--daybyday .day__header--text:after {
    clear: both;
    content: "";
    display: block;
    width: .4375rem;
    height: .4375rem;
    border-radius: .21875rem;
    background-color: #444;
    border: 0;
    position: absolute;
    top: .9375rem;
    left: -0.8125rem;
    z-index: 31
}
.tour__content__block--daybyday .day__header--text h2, .tour__content__block--daybyday .day__header--text h3 {
    display: inline
}
.tour__content__block--daybyday .day__header--text h3 {
    font-size: 1.25rem;
    position: relative;
    display: block
}
.tour__content__block--daybyday .day__header--text h3 i.sbi {
    width: .875rem;
    position: absolute;
    top: .625rem;
    left: -1.0625rem;
    z-index: 34;
    display: block;
    background-color: #fff;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact
}
.tour__content__block--daybyday .day__header--text h3:before {
    content: "";
    width: 100%;
    height: 0;
    position: absolute;
    top: 1.125rem;
    left: 0;
    border-top: 1px dotted #b3b3b3
}
.tour__content__block--daybyday .day__header--text h3 span {
    padding-right: .625rem;
    background-color: #fff;
    position: relative;
    top: .125rem
}
.tour__content__block--daybyday .day__header--text h2 span.txt--grey {
    font-size: 80%
}
.tour__content__block--daybyday .day__header--text h2.startend {
    z-index: 33
}
.tour__content__block--daybyday .day__header--text h2.startend i.sbi {
    width: 1.5rem;
    height: 30px;
    position: absolute;
    top: .1875rem;
    left: -2.0625rem;
    z-index: 34;
    display: block;
    background-color: #fff
}
.tour__content__block--daybyday .day__inner {
    padding: .625rem 1.25rem 0
}
.tour__content__block--daybyday .day__inner__block {
    padding: .625rem 0
}
.tour__content__block--daybyday .day__inner__block h2 {
    font-size: 1.4375rem !important;
    line-height: 1.5625rem;
    font-weight: normal;
    margin-bottom: .375rem
}
.tour__content__block--daybyday .day__inner__block dl {
    margin-top: 1.25rem
}
.tour__content__block--daybyday .day__inner__block dl:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--daybyday .day__inner__block dl.no-top-margin {
    margin-top: 0
}
.tour__content__block--daybyday .day__inner__block dl dt {
    display: block;
    float: none;
    clear: both;
    font-weight: 600;
    position: relative;
    margin-bottom: .625rem
}
.tour__content__block--daybyday .day__inner__block dl dd {
    padding-left: 1.25rem;
    width: auto;
    display: block;
    margin-bottom: 1.25rem;
    position: relative
}
.tour__content__block--daybyday .day__inner__block dl dd small, .tour__content__block--daybyday .day__inner__block dl dd i {
    color: #999
}
@media(max-width: 743px) {
    .tour__content__block--daybyday .day__inner__block dl dd:not(.with-bullet):before {
        content: "›";
        font-weight: normal;
        font-size: .875rem;
        position: absolute;
        top: 0;
        left: .625rem
    }
    .tour__content__block--daybyday .day__inner__block dl dd:not(.with-bullet) b {
        font-weight: normal
    }
    .tour__content__block--daybyday .day__inner__block dl dd:not(.with-bullet) .list--icon-arrow li {
        padding-left: 0
    }
    .tour__content__block--daybyday .day__inner__block dl dd:not(.with-bullet) .list--icon-arrow li:before {
        display: none
    }
    .tour__content__block--daybyday .day__inner__block dl dd.with-bullet {
        padding-left: .625rem
    }
}
.tour__content__block--daybyday .day__inner__block .metabox {
    clear: both;
    position: relative;
    top: 0;
    margin-bottom: 1.25rem;
    margin-right: -1.25rem;
    padding: 1.25rem .9375rem;
    padding-bottom: .625rem
}
.tour__content__block--daybyday .day__inner__block .metabox:before, .tour__content__block--daybyday .day__inner__block .metabox:after {
    margin-left: 7.8125rem
}
.tour__content__block--daybyday .day__inner__block .metabox .row div {
    padding-left: 0;
    padding-right: .9375rem
}
.tour__content__block--daybyday .day__inner__block .metabox .row div span {
    color: #999;
    display: block
}
.tour__content__block--daybyday .day__inner__block .metabox h4 {
    clear: both;
    border-top: .0625rem solid #fbf0d8;
    font-weight: bold;
    text-align: center;
    padding-top: .9375rem;
    margin-bottom: 0;
    font-size: .875rem
}
@media(max-width: 743px) {
    .tour__content__block--daybyday .day__inner__block .metabox h4 {
        margin-top: .625rem;
        padding-top: 1.5625rem
    }
}
.tour__content__block--daybyday .day .day__header--text+.day__inner {
    padding-top: 0
}
.tour__content__block--daybyday .day .day__header--text+.day__inner .day__inner__block {
    padding-top: 0
}
.tour__content__block--daybyday .day .detail__numbers .col {
    padding: 0 .625rem 0 2.5rem !important;
    position: relative;
    line-height: 1rem
}
.tour__content__block--daybyday .day .detail__numbers .col .detail__numbers__icon {
    width: 1.875rem;
    float: left;
    position: absolute;
    top: .0625rem;
    left: 0;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    opacity: .75
}
.tour__content__block--daybyday .day .detail__numbers .col .detail__numbers__icon.sbi--best-time {
    width: 1.75rem
}
.tour__content__block--daybyday .day .detail__numbers .col i.sbi--info {
    position: relative;
    top: .1875rem;
    width: .875rem
}
.tour__content__block--daybyday .day .detail__numbers b {
    font-size: .875rem;
    display: block;
    color: #444;
    margin-bottom: .125rem;
    position: relative
}
.tour__content__block--daybyday .day .detail__numbers b a {
    top: 0
}
.tour__content__block--daybyday .day .detail__numbers em {
    color: #666;
    font-weight: normal;
    font-style: normal;
    font-size: .875rem
}
.tour__content__block--daybyday:before {
    position: absolute;
    top: -1.25rem;
    left: .625rem;
    content: "";
    width: 0;
    height: 100%;
    border-left: 1px dotted #b3b3b3;
    z-index: 1
}
#inclusions-tab .tour__content__block--inclusions li span {
    display: block
}
.tour__content__block--summary:after, .tour__content__block--routemap:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--summary ul, .tour__content__block--routemap ul {
    background-color: #f8f8f8;
    border: .0625rem solid #f6e7e7;
    margin-top: .75rem;
    padding: .625rem 0
}
.tour__content__block--summary ul li, .tour__content__block--routemap ul li {
    padding: .875rem .3125rem .5rem 3.125rem;
    position: relative
}
.tour__content__block--summary ul li:after, .tour__content__block--routemap ul li:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--summary ul li div, .tour__content__block--routemap ul li div {
    position: absolute;
    top: .9375rem;
    left: .625rem;
    width: 2.5rem;
    text-align: center
}
.tour__content__block--summary ul li div i, .tour__content__block--routemap ul li div i {
    width: 1.25rem
}
.tour__content__block--summary ul li b, .tour__content__block--routemap ul li b {
    font-style: italic
}
.tour__content__block--summary ul li b span, .tour__content__block--routemap ul li b span {
    font-style: normal
}
.tour__content__block--summary .countryoutline, .tour__content__block--routemap .countryoutline {
    margin-top: .5rem;
    position: relative;
    padding-top: 60%
}
.tour__content__block--summary .countryoutline--withroutemap, .tour__content__block--routemap .countryoutline--withroutemap {
    padding-top: 0;
    margin-bottom: .8125rem
}
.tour__content__block--summary .countryoutline--withroutemap .routemap, .tour__content__block--routemap .countryoutline--withroutemap .routemap {
    border: 1px solid #e9e9e9;
    overflow: hidden
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-svg {
    background-color: #deeff9
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-svg .active .country, .tour__content__block--summary .countryoutline--withroutemap .map-route-svg .active .water, .tour__content__block--summary .countryoutline--withroutemap .map-route-svg .active g, .tour__content__block--summary .countryoutline--withroutemap .map-route-svg .active path, .tour__content__block--routemap .countryoutline--withroutemap .map-route-svg .active .country, .tour__content__block--routemap .countryoutline--withroutemap .map-route-svg .active .water, .tour__content__block--routemap .countryoutline--withroutemap .map-route-svg .active g, .tour__content__block--routemap .countryoutline--withroutemap .map-route-svg .active path {
    fill: #a41e22
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-svg .active .st3small, .tour__content__block--routemap .countryoutline--withroutemap .map-route-svg .active .st3small {
    stroke: #a41e22
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa {
    background-color: rgba(255, 255, 255, .8);
    border: 1px solid #e9e9e9;
    position: absolute;
    width: 21%;
    height: 24.4%
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa .map-africa-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa .map-africa-svg {
    width: 85%;
    left: 10%;
    top: 8%
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa .map-africa-svg #map-africa path.country, .tour__content__block--summary .countryoutline--withroutemap .map-route-africa .map-africa-svg #map-africa circle.country, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa .map-africa-svg #map-africa path.country, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa .map-africa-svg #map-africa circle.country {
    stroke: #d9d9d9
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa .arrow-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa .arrow-svg {
    width: 60%;
    position: absolute
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa .arrow-svg #arrow, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa .arrow-svg #arrow {
    fill: #666
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa.top-right .arrow-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa.top-right .arrow-svg {
    right: 69%;
    bottom: 21%;
    -moz-transform: scaleY(-1);
    -o-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    -webkit-transform: scaleY(-1);
    transform: scaleY(-1)
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa.bottom-right .arrow-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa.bottom-right .arrow-svg {
    right: 75%;
    bottom: 35%
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa.top-left .arrow-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa.top-left .arrow-svg {
    left: 80%;
    bottom: 17%;
    -moz-transform: scaleX(-1) scaleY(-1);
    -o-transform: scaleX(-1) scaleY(-1);
    -ms-transform: scaleX(-1) scaleY(-1);
    -webkit-transform: scaleX(-1) scaleY(-1);
    transform: scaleX(-1) scaleY(-1)
}
.tour__content__block--summary .countryoutline--withroutemap .map-route-africa.bottom-left .arrow-svg, .tour__content__block--routemap .countryoutline--withroutemap .map-route-africa.bottom-left .arrow-svg {
    left: 80%;
    bottom: 35%
}
.tour__content__block--summary .countryoutline .map-africa-large-svg, .tour__content__block--routemap .countryoutline .map-africa-large-svg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg {
    position: absolute;
    width: 22%;
    top: 53%;
    left: 35%;
    -webkit-transform: rotate(10deg) scaleX(-1);
    transform: rotate(10deg) scaleX(-1)
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg .cls-1, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg .cls-1 {
    fill: #006400
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-seychelles, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-seychelles {
    top: 32%;
    left: 73%;
    -webkit-transform: rotate(-110deg);
    transform: rotate(-110deg)
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-reunion, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-reunion {
    top: 74%;
    left: 80%;
    width: 8%;
    -webkit-transform: rotate(-81deg);
    transform: rotate(-81deg)
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-lesotho, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-lesotho {
    top: 93%;
    left: 61%;
    width: 13%;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg)
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-swaziland, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-swaziland {
    top: 88%;
    left: 62.7%;
    width: 11%;
    -webkit-transform: rotate(-9deg);
    transform: rotate(-9deg)
}
.tour__content__block--summary .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-mauritius, .tour__content__block--routemap .countryoutline:not(.countryoutline--withroutemap) .arrow-svg-mauritius {
    top: 71%;
    left: 84%;
    width: 12%;
    -webkit-transform: rotate(-73deg);
    transform: rotate(-73deg)
}
.tour__content__block--summary .countryoutline b.rwanda-lbl, .tour__content__block--summary .countryoutline b.seychelles-lbl, .tour__content__block--summary .countryoutline b.mauritius-lbl, .tour__content__block--summary .countryoutline b.lesotho-lbl, .tour__content__block--summary .countryoutline b.swaziland-lbl, .tour__content__block--summary .countryoutline b.reunion-lbl, .tour__content__block--routemap .countryoutline b.rwanda-lbl, .tour__content__block--routemap .countryoutline b.seychelles-lbl, .tour__content__block--routemap .countryoutline b.mauritius-lbl, .tour__content__block--routemap .countryoutline b.lesotho-lbl, .tour__content__block--routemap .countryoutline b.swaziland-lbl, .tour__content__block--routemap .countryoutline b.reunion-lbl {
    position: absolute;
    top: 56%;
    left: 18%;
    font-size: 1rem;
    color: #006400
}
.tour__content__block--summary .countryoutline b.seychelles-lbl, .tour__content__block--routemap .countryoutline b.seychelles-lbl {
    top: 12%;
    left: 74%
}
.tour__content__block--summary .countryoutline b.mauritius-lbl, .tour__content__block--routemap .countryoutline b.mauritius-lbl {
    top: 59%;
    left: 82%
}
.tour__content__block--summary .countryoutline b.lesotho-lbl, .tour__content__block--routemap .countryoutline b.lesotho-lbl {
    top: 93%;
    left: 76%
}
.tour__content__block--summary .countryoutline b.swaziland-lbl, .tour__content__block--routemap .countryoutline b.swaziland-lbl {
    top: 88%;
    left: 74.5%
}
.tour__content__block--summary .countryoutline b.reunion-lbl, .tour__content__block--routemap .countryoutline b.reunion-lbl {
    top: 64%;
    left: 74%
}
.tour__content__block--routemap:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--routemap .route__flow {
    width: 100%;
    padding: 0 .9375rem;
    margin-bottom: 1.25rem
}
.tour__content__block--routemap .route__flow:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--routemap .route__flow td {
    padding: .1875rem 0;
    overflow: hidden
}
.tour__content__block--routemap .route__flow td span {
    color: #666
}
.tour__content__block--routemap .route__flow td:first-child {
    width: .0625rem;
    white-space: nowrap;
    padding-right: .9375rem;
    font-weight: bold
}
.tour__content__block--routemap .route__flow tr:not(.country) {
    font-size: .875rem
}
.tour__content__block--routemap .route__flow tr:not(.country) td:first-child {
    position: relative;
    padding-left: 1.125rem
}
.tour__content__block--routemap .route__flow tr:not(.country) td:first-child:before, .tour__content__block--routemap .route__flow tr:not(.country) td:first-child:after {
    position: absolute;
    content: ""
}
.tour__content__block--routemap .route__flow tr:not(.country) td:first-child:after {
    top: .6875rem;
    left: .3125rem;
    background-color: #006400;
    width: .4375rem;
    height: .4375rem;
    border-radius: 50%
}
.tour__content__block--routemap .route__flow tr:not(.country) td:first-child:before {
    top: -0.0625rem;
    left: .5rem;
    width: 0;
    height: 100%;
    border-left: .0625rem dotted #b3b3b3
}
.tour__content__block--routemap .route__flow tr.country+tr td:first-child:before {
    top: .8125rem
}
.tour__content__block--routemap .route__flow tr.last td:first-child:before {
    height: .75rem
}
.tour__content__block--routemap .route__flow tr.country+tr.last td:first-child:before {
    display: none
}
.tour__content__block--routemap .route__flow tr.country td a {
    color: #444
}
.tour__content__block--routemap .route__flow tr.country td a:hover {
    text-decoration: underline
}
.tour__content__block--routemap .route__flow tr.country td img {
    margin-left: .3125rem
}
.tour__content__block--routemap .route__flow tr.country:not(:first-child) td {
    padding-top: 1.5rem
}
.tour__content__block--dates {
    position: relative
}
.tour__content__block--dates ul {
    list-style: none;
    height: 2.8125rem;
    overflow: hidden;
    margin-top: 1.1875rem;
    margin-right: 5.625rem;
    margin-bottom: 1.25rem
}
.tour__content__block--dates ul li {
    padding: 0;
    margin: 0;
    width: 4.375rem;
    height: 2.8125rem;
    font-size: .8125rem;
    line-height: .9375rem;
    border: 1px solid #d9d6d6;
    text-align: center;
    padding-top: .4375rem;
    display: inline-block;
    float: left
}
.tour__content__block--dates ul li strong {
    font-size: .8125rem;
    display: block
}
.tour__content__block--dates ul li:before {
    display: none
}
.tour__content__block--dates ul li:not(:first-child) {
    border-left: 0
}
.tour__content__block--dates a {
    position: absolute;
    right: .625rem;
    top: 3.6875rem;
    display: inline-block;
    width: 5rem;
    height: 2.8125rem;
    line-height: 2.625rem;
    text-align: center;
    font-weight: 600;
    font-size: .9375rem
}
.tour__content__block--dates a span {
    margin-right: .625rem
}
.tour__content__block--dates a span.lbl1 {
    display: none
}
.tour__content__block--dates a span.lbl2 {
    display: inline
}
.tour__content__block--dates a b {
    font-size: 1.5625rem;
    font-weight: normal;
    position: absolute;
    top: -0.125rem;
    right: .75rem
}
.tour__content__block--dates a:hover {
    text-decoration: none !important
}
.tour__content__block--dates a:hover span {
    text-decoration: underline
}
.tour__content__block--consider .row {
    margin-top: 1.25rem
}
.tour__content__block--consider .row div.item {
    text-align: left;
    padding-left: 3.4375rem;
    position: relative;
    margin-bottom: 1.875rem
}
.tour__content__block--consider .row div.item .svg-box {
    width: 2.25rem;
    height: 2.25rem;
    position: absolute;
    top: 0;
    left: .1875rem
}
.tour__content__block--consider .row div.item .svg-box img {
    max-width: none;
    width: 2.25rem;
    height: 2.25rem;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}
.tour__content__block--consider .row div.item .svg-box span {
    width: 2.25rem;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -0.6875rem;
    font-weight: 600;
    color: #006400;
    font-size: .875rem;
    text-align: center
}
.tour__content__block--consider .row div.item h4 {
    font-style: italic;
    line-height: 1.25rem;
    margin-bottom: .1875rem
}
.tour__content__block--consider .row div.item p {
    line-height: 1.125rem;
    font-size: .875rem;
    color: #666
}
.tour__content__block--activities ul li a.image {
    color: #444;
    text-decoration: none;
    display: inline-block;
    position: relative;
    cursor: default
}
.tour__content__block--activities ul li a.image:before {
    border-bottom: 1px dotted #666;
    position: absolute;
    bottom: .0625rem;
    left: 0;
    width: 100%;
    height: 0;
    display: block;
    content: ""
}
.tour__content__block--activities ul li a.image:hover {
    text-decoration: none
}
.tour__content__block--accommodations ul {
    margin-top: .3125rem;
    list-style: none
}
.tour__content__block--accommodations ul li {
    padding: .625rem 0;
    position: relative
}
.tour__content__block--accommodations ul li.heading {
    font-weight: 600
}
.tour__content__block--accommodations ul li:not(.tour__content__block--accommodations ul li.heading)>div:nth-child(2) {
    line-height: 18px
}
.tour__content__block--accommodations ul li:before {
    display: none
}
.tour__content__block--accommodations ul li>div {
    display: inline-block;
    float: left;
    box-sizing: border-box;
    padding: 0 .9375rem;
    margin-top: 0
}
.tour__content__block--accommodations ul li>div:nth-child(1) {
    font-weight: 600;
    white-space: nowrap;
    position: absolute;
    width: 4.0625rem;
    top: .5625rem;
    left: 0
}
.tour__content__block--accommodations ul li>div:nth-child(2) {
    width: 100%;
    font-weight: 600;
    display: block;
    padding-left: 4.375rem
}
.tour__content__block--accommodations ul li>div:nth-child(2)>span {
    font-weight: normal;
    display: block
}
.tour__content__block--accommodations ul li>div:nth-child(2)>span.no-accommodation, .tour__content__block--accommodations ul li>div:nth-child(2)>span.no-accommodation+span {
    display: inline
}
.tour__content__block--accommodations ul li>div:nth-child(2) i {
    font-weight: normal
}
.tour__content__block--accommodations ul li>div:nth-child(2) div.gallery__preview--row {
    margin-bottom: .625rem
}
.tour__content__block--accommodations ul li>div:nth-child(3) {
    width: 100%;
    padding-left: 4.375rem;
    display: block;
    font-style: italic
}
.tour__content__block--accommodations ul li:nth-child(even) {
    background-color: #f2fafc
}
.tour__content__block--accommodations ul li.footnote {
    padding-top: 0;
    margin-bottom: .9375rem;
    background-color: rgba(0, 0, 0, 0);
    position: relative
}
.tour__content__block--accommodations ul li.footnote div:nth-child(1) {
    width: 100%;
    font-weight: normal;
    position: relative;
    white-space: normal;
    padding-left: 1.3125rem
}
.tour__content__block--accommodations ul li.footnote div:nth-child(1) i {
    position: absolute;
    top: .0625rem;
    left: 0
}
.tour__content__block--accommodations ul li:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block .gallery__preview--mobile {
    margin: 1.25rem 0 1.875rem
}
.tour__route-map {
    margin-top: .5rem !important
}
.tour__route-list {
    display: flex;
    position: relative;
    max-height: 20.1875rem;
    overflow-y: hidden;
    flex-direction: column;
    margin-top: .875rem;
    margin-bottom: .1875rem;
    padding-left: .9375rem;
    transition: height .3s ease-in-out
}
.tour__route-list:after {
    content: "";
    position: absolute;
    z-index: 1;
    opacity: 1;
    display: none;
    background: linear-gradient(transparent, #fff calc(100% - 1.375rem));
    bottom: 0;
    left: 0;
    right: 0;
    height: 150px;
    transition: opacity .3s ease-in-out
}
.tour__route-list[data-state=expandable]:after {
    display: block
}
.tour__route-list[data-state=expandable] .tour__route-list-toggle {
    display: flex
}
.tour__route-list[data-state=collapsing] {
    max-height: none
}
.tour__route-list[data-state=collapsing]:after {
    display: block;
    opacity: 1
}
.tour__route-list[data-state=expanding], .tour__route-list[data-state=expanded] {
    max-height: none;
    display: block
}
.tour__route-list[data-state=expanding]:after, .tour__route-list[data-state=expanded]:after {
    display: block;
    opacity: 0
}
.tour__route-list[data-state=expanding] .tour__route-list-toggle, .tour__route-list[data-state=expanded] .tour__route-list-toggle {
    display: flex
}
.tour__route-list[data-state=expanded] {
    max-height: none
}
.tour__route-list[data-state=expanded] .tour__route-list-toggle-arrow {
    transform: translateY(2px) rotate(-135deg)
}
.tour__route-list-inner {
    width: 100%;
    overflow-y: hidden
}
.tour__route-list-toggle {
    position: relative;
    z-index: 2;
    display: none;
    width: 100%;
    align-items: center;
    border: 0;
    background: none;
    font-size: .875rem;
    white-space: nowrap;
    color: #0378a0;
    outline: 0;
    transition: opacity .3s ease-in-out;
    cursor: pointer
}
.tour__route-list-toggle:before, .tour__route-list-toggle:after {
    content: "";
    display: block;
    border-bottom: 1px dotted #b3b3b3;
    height: 0;
    flex-grow: 1
}
.tour__route-list-toggle:before {
    margin: 0 .9375rem 0 .3125rem
}
.tour__route-list-toggle:after {
    margin: 0 0 0 .9375rem
}
.tour__route-list-toggle-arrow {
    display: inline-block;
    vertical-align: middle;
    width: .4375rem;
    height: .4375rem;
    font-size: 0;
    transform: translateY(-2px) rotate(45deg);
    margin-left: .625rem;
    border: 1px solid rgba(0, 0, 0, 0);
    border-right-color: #0378a0;
    border-bottom-color: #0378a0
}
.tour__content__block--rates ul.list--icon {
    margin-bottom: 1.875rem
}
.tour__content__block--rates .ratestablecurrencies {
    text-align: left;
    width: auto;
    position: relative;
    min-height: 1.25rem;
    background-color: #fff;
    margin-bottom: 1.25rem
}
.tour__content__block--rates .ratestablecurrencies label {
    font-weight: bold;
    margin-left: .9375rem;
    position: relative;
    cursor: pointer
}
.tour__content__block--rates .ratestablecurrencies label input {
    margin-right: .1875rem
}
.tour__content__block--rates .ratestablecurrencies .select--holder {
    padding: 0 .9375rem;
    border-left: 0;
    position: relative;
    margin-top: .625rem
}
.tour__content__block--rates .ratestablecurrencies .select--holder:before {
    right: 1.5625rem
}
.tour__content__block--rates .ratestablecurrencies .select--holder:hover:before {
    border-top-color: #444
}
.tour__content__block--rates .ratestablecurrencies .select--holder select {
    color: #444;
    width: 100%
}
@media print {
    .tour__content__block--rates .ratestablecurrencies {
        display: none
    }
}
.tour__content__block--rates .click-rate-mention {
    text-align: center;
    margin-bottom: .25rem
}
.tour__content__block--rates .click-rate-mention i {
    font-size: .8125rem;
    position: relative;
    top: .125rem
}
.tour__content__block--rates .rates-table-block-m {
    padding: .625rem 0 1.25rem;
    margin: 0 -0.625rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day {
    clear: both;
    padding: 0 1.5625rem;
    page-break-inside: avoid
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day b {
    display: block;
    padding-bottom: .625rem;
    padding-top: .9375rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day em {
    font-size: .875rem;
    color: #666;
    text-align: right;
    font-weight: normal;
    padding: 0;
    display: block;
    padding-bottom: .1875rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day div.ratecol {
    width: 70%;
    float: left;
    padding: .375rem .625rem;
    line-height: 1.125rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day div.ratecol.rate {
    width: 30%;
    text-align: right;
    font-weight: bold
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day div.odd:after, .tour__content__block--rates .rates-table-block-m .rates-table-block__day div.even:after {
    content: "";
    display: table;
    clear: both
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day div.even {
    background-color: #f2fafc
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse {
    border-bottom: .0625rem solid #d9d9d9;
    padding-left: 0;
    padding-right: 0
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse b {
    color: #0378a0;
    cursor: pointer;
    position: relative;
    padding-bottom: .9375rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse b:after {
    content: "+";
    font-size: 1.375rem;
    position: absolute;
    top: .9375rem;
    right: 1.125rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse b:hover {
    text-decoration: underline
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse em {
    display: none
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse:first-child {
    border-top: .0625rem solid #d9d9d9
}
@media screen {
    .tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse div.odd, .tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse div.even {
        display: none
    }
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse.open {
    padding-bottom: 1.25rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse.open b:after {
    content: "-";
    font-size: 1.625rem;
    top: .75rem;
    right: 1.25rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse.open b {
    padding-bottom: .625rem
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse.open em {
    display: block
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse.open div.odd, .tour__content__block--rates .rates-table-block-m .rates-table-block__day--collapse.open div.even {
    display: block
}
.tour__content__block--rates .rates-table-block-m .rates-table-block__day:not(.rates-table-block__day--collapse)+.rates-table-block__day:not(.rates-table-block__day--collapse) {
    margin-top: 1.25rem
}
@media(min-width: 744px) {
    @keyframes fadeIn {
        99% {
            visibility: hidden
        }
        100% {
            visibility: visible
        }
    }
    h1 {
        font-size: 1.875rem;
        line-height: 2.125rem
    }
    h3 {
        font-size: .9375rem
    }
    .cols-t-2 {
        columns: 2 auto;
        margin-bottom: 2.5rem
    }
    .cols-t-2+ul {
        position: relative;
        top: -2.5rem
    }
}
@media(min-width: 744px)and (max-width: 970px) {
    .oneline-t br {
        display: none
    }
}
@media(min-width: 744px) {
    body.workflow .wrapper {
        padding: 2.5rem 0
    }
    .wrapper .container--main[role=main]:not(.container--withsidebar), .wrapper>.main>.container--main:not(.container--home):not(.safaricosts), .wrapper>footer>.container, .wrapper>footer>.copyright, .wrapper .container.tourpromo, .wrapper .relatedlinks .container, .wrapper .directory-content .container, .wrapper .directory-reviews .container {
        padding-left: .9375rem;
        padding-right: .9375rem
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .wrapper .container--main[role=main].container--withsidebar, .wrapper>.main>.container--main--white {
        margin-left: 1.5625rem;
        margin-right: 1.5625rem
    }
}
@media(min-width: 744px) {
    .wrapper .container--main[role=main].container--withsidebar, .wrapper>.main>.container--main--white {
        padding-left: 0 !important;
        padding-right: 0 !important
    }
    .container--onlymob {
        display: none !important
    }
    .container--withsidebar {
        margin-top: 1.25rem
    }
    .wrapper>.main>.container--padded {
        padding: 1.875rem 2.1875rem !important
    }
    .wrapper>.main>.container--padded .container__unpad {
        margin: 0 -2.1875rem
    }
    .container--hero {
        margin: -0.9375rem -0.9375rem -1.875rem;
        height: auto;
        overflow: hidden;
        padding: .9375rem
    }
    .container--hero:after {
        background: linear-gradient(to right, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.5) 50%, transparent);
        padding: 0;
        height: 100%
    }
    .container--hero__heading {
        padding: .625rem 0 1.25rem;
        height: auto
    }
    .container--hero__text {
        margin-bottom: .9375rem;
        color: #fff;
        background: rgba(0, 0, 0, 0);
        padding: 0;
        box-shadow: none
    }
    .container--hero__textlink {
        color: #fff;
        text-decoration: underline
    }
    .container--hero__bg {
        height: 100%;
        left: 0
    }
    .onlymob {
        display: none !important
    }
    .show-t {
        display: block !important
    }
    .show-ti {
        display: inline-block !important
    }
    .show-tii {
        display: inline !important
    }
    .hide-t {
        display: none !important
    }
    .content {
        padding: .625rem 1.875rem
    }
    .nowrap-t {
        white-space: nowrap
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .swap-tablet {
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        flex-direction: column;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column
    }
    .swap-tablet>div {
        flex: 1
    }
    .swap-tablet>div:nth-child(1) {
        order: 3
    }
    .swap-tablet>div:nth-child(2) {
        order: 1
    }
}
@media(min-width: 744px) {
    .col {
        display: block
    }
    .col.col-t-0 {
        display: none
    }
    .col-t-1 {
        width: 8.3333333333%
    }
    .col-t-1-5 {
        width: 12.5%
    }
    .col-t-2 {
        width: 16.6666666667%
    }
    .col-t-2-5 {
        width: 20.8333333333%
    }
    .col-t-3 {
        width: 25%
    }
    .col-t-3-5 {
        width: 29.1666666667%
    }
    .col-t-4 {
        width: 33.3333333333%
    }
    .col-t-4-5 {
        width: 37.5%
    }
    .col-t-5 {
        width: 41.6666666667%
    }
    .col-t-5-5 {
        width: 45.8333333333%
    }
    .col-t-6 {
        width: 50%
    }
    .col-t-6-5 {
        width: 54.1666666667%
    }
    .col-t-7 {
        width: 58.3333333333%
    }
    .col-t-7-5 {
        width: 62.5%
    }
    .col-t-8 {
        width: 66.6666666667%
    }
    .col-t-8-5 {
        width: 70.8333333333%
    }
    .col-t-9 {
        width: 75%
    }
    .col-t-9-5 {
        width: 79.1666666667%
    }
    .col-t-10 {
        width: 83.3333333333%
    }
    .col-t-11 {
        width: 91.6666666667%
    }
    .col-t-12 {
        width: 100%
    }
    .col--t-shrink {
        width: auto
    }
    .col--t-grow {
        float: none;
        width: auto;
        overflow: hidden
    }
    .row-t-0 {
        display: none
    }
    .flex-t {
        display: flex
    }
    .flex-t>* {
        white-space: nowrap
    }
    .flex-t .flex__shrink {
        flex-grow: 0
    }
    .flex-t .flex__grow {
        flex-grow: 1;
        min-width: 0
    }
    .header {
        height: 3.125rem;
        box-shadow: none
    }
    .header .nav-tours span, .header .nav-operators span {
        display: none
    }
    .container__head--main {
        padding: 0 .9375rem;
        box-shadow: none
    }
    .menu-open .container__head--main:after {
        display: none
    }
    .container__head--main .header--col-nav, .container__head--main .header--col-search {
        transition: width .2s ease-in-out
    }
    .container__head--search {
        display: none !important
    }
    .header--col-nav {
        text-align: center
    }
    .header__fav {
        border-left: 0
    }
    .header__fav-link {
        line-height: 3.125rem
    }
    .header__fav-icon {
        width: 1.375rem;
        top: .3125rem !important;
        left: -0.25rem
    }
    .header__fav-count {
        top: .625rem;
        margin-left: .8125rem
    }
    .header--col-search {
        float: right
    }
    .header__search {
        margin: 0
    }
    .header__search:before {
        content: "Search";
        display: block;
        position: absolute;
        top: .9375rem;
        left: .625rem;
        z-index: 2;
        opacity: .7;
        pointer-events: none
    }
    .header__search-input {
        background-color: #791111;
        border: .0625rem solid #771a1a !important;
        color: #fff;
        padding: 0 2.5rem .0625rem .625rem !important;
        z-index: 1;
        position: relative;
        width: 100%;
        font-size: .9375rem;
        line-height: 1.9375rem;
        box-shadow: 2px 2px 3px #771a1a inset
    }
    .header__search-input:focus, .header__search-input:valid {
        z-index: 3
    }
    .header__search-submit {
        border: 0;
        background: rgba(0, 0, 0, 0);
        color: #fff;
        position: absolute;
        top: .5625rem;
        right: .0625rem;
        width: 2rem !important;
        height: 2rem !important;
        cursor: pointer;
        opacity: 1;
        z-index: 4
    }
    .header__search-submit i {
        margin-top: .125rem
    }
    .header__logo {
        width: 10.8125rem;
        margin: .875rem 0 0 0
    }
    .header__logo img {
        width: 100%;
        margin-left: 0
    }
}
@media(min-width: 744px)and (hover: hover) {
    .header__nav>ul li .header__subnav ul li a:hover em {
        text-decoration: underline
    }
    .header__search button:hover {
        opacity: .8
    }
}
@media(min-width: 744px) {
    .nav-t {
        height: 100%;
        width: auto;
        display: inline-block;
        font-size: 0;
        text-align: left
    }
    .nav-t.grey-arrow .active a:before {
        border-bottom: .4375rem solid #f2f2f2
    }
    .nav-t__list {
        height: 100%;
        white-space: nowrap
    }
    .nav-t__item {
        display: inline-block;
        height: 100%;
        position: relative;
        font-size: .9375rem
    }
    .nav-t__item.active {
        position: relative
    }
    .nav-t__item.active>.nav-t__link {
        color: #fff
    }
    .nav-t__item.active>.nav-t__link:before {
        content: "";
        overflow: hidden;
        border: .4375rem solid rgba(0, 0, 0, 0);
        border-bottom-color: #fff;
        display: block;
        position: absolute;
        left: 50%;
        bottom: 0;
        transform: translateX(-50%)
    }
    .nav-t__item:hover .header__subnav, .nav-t__item:focus .header__subnav {
        transition: 0s top .1s;
        top: 3.125rem;
        z-index: 2
    }
    .nav-t__item--has-sub:before {
        content: "";
        position: absolute;
        bottom: 31.25rem;
        left: 50%;
        border: .4375rem solid rgba(0, 0, 0, 0);
        border-bottom-color: #fff;
        display: block;
        z-index: 4;
        transition: 0s bottom .25s;
        transform: translateX(-50%)
    }
    .nav-t__item--has-sub:hover:before, .nav-t__item--has-sub:focus:before {
        bottom: 0;
        transition: 0s bottom .1s
    }
    .nav-t__link {
        display: block;
        width: 100%;
        height: 100%;
        color: #fff;
        text-decoration: none;
        padding: 0 .625rem;
        line-height: 3.125rem
    }
    .nav-t__link:focus+.header__subnav {
        transition: 0s top .1s;
        top: 3.125rem
    }
    .nav-t__sub-list {
        height: auto;
        transition: 0s top .25s;
        position: absolute;
        top: -31.25rem;
        left: 0;
        color: #444;
        width: 26.25rem;
        display: block;
        background-color: #fff;
        border-top: 0;
        columns: 180px 2;
        column-gap: 10px;
        padding: .625rem 2.5rem .625rem .625rem;
        white-space: normal
    }
    .nav-t__sub-list:after {
        content: "";
        position: absolute;
        bottom: 100%;
        left: 0;
        display: block;
        width: 100%;
        height: .5rem;
        background-color: #006400;
        z-index: 3
    }
    .wrapper--error .nav-t__sub-list:after {
        background-color: #640000
    }
    .nav-t__sub-item {
        float: none;
        display: inline-block;
        width: 100%;
        white-space: nowrap
    }
    .nav-t__sub-item:before {
        left: .5rem !important;
        top: .125rem !important;
        font-size: 1rem;
        color: #666
    }
    .nav-t__sub-link {
        display: inline;
        color: #0378a0;
        line-height: 1.625rem;
        text-decoration: none;
        padding: 0 .3125rem 0 .625rem
    }
    .nav-t__sub-link:before {
        display: none
    }
    .nav-t__sub-count {
        float: none;
        position: relative;
        top: 0
    }
    .titlebar__sub {
        margin-top: .4375rem;
        padding-top: .625rem;
        font-size: .875rem
    }
    .titlebar--grey {
        background-color: rgba(0, 0, 0, 0);
        border-bottom: 0;
        padding-bottom: .3125rem
    }
    .titlebar--tour, .titlebar--operators {
        display: block;
        min-height: 1.5625rem;
        padding-top: 0;
        position: relative
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .titlebar--tour, .titlebar--operators {
        border-bottom: 0
    }
}
@media(min-width: 744px) {
    .titlebar--tour .btn--filter, .titlebar--operators .btn--filter {
        position: relative;
        top: 1.75rem
    }
    .titlebar--operator, .titlebar--tour {
        padding-bottom: 0
    }
    .titlebar h1 {
        font-size: 2.125rem;
        margin: .3125rem .9375rem
    }
    .titlebar--searchresults {
        padding: 0 .9375rem
    }
    .titlebar__heading {
        top: -0.25rem !important;
        font-size: 2.125rem !important;
        line-height: 2.375rem;
        margin-bottom: -0.0625rem
    }
    h2.titlebar--form__heading {
        font-size: 2.125rem;
        line-height: 2.375rem
    }
    h2.titlebar--form__heading i {
        top: .125rem
    }
    h2.titlebar--form__heading.serif {
        margin-bottom: -0.0625rem
    }
    .drawer h2.titlebar--form__heading.serif {
        margin-bottom: 1.25rem
    }
    .partneroptions__panel h2.titlebar--form__heading.serif {
        margin-bottom: 1.25rem
    }
    .titlebar--form__extra {
        padding-left: 1.875rem;
        text-align: right
    }
    .titlebar--form__extratext {
        display: inline-block;
        text-align: left;
        padding-right: 6.25rem;
        position: relative;
        top: .9375rem
    }
    .titlebar--form__link {
        display: inline;
        position: relative;
        top: auto;
        right: auto;
        color: #0378a0
    }
    .titlebar--form__image {
        display: block;
        position: absolute;
        bottom: -0.375rem;
        right: .625rem;
        height: 5rem
    }
    .footer {
        color: #999
    }
    .footer p {
        padding-top: .625rem
    }
    .footer:not(.expertbar) h2, .footer:not(.expertbar) h3 {
        color: #cbc7c7;
        margin-bottom: .625rem;
        font-size: .875rem
    }
    .footer:not(.expertbar) a {
        color: #999;
        position: relative;
        white-space: normal
    }
    .footer:not(.expertbar) a:not(.social-icon):not(.currency-selector__button) {
        white-space: nowrap;
        text-decoration: underline;
        text-decoration-color: #999
    }
    .footer ul li {
        padding: .1875rem 0;
        line-height: 1.25rem
    }
    .footer ul li a {
        line-height: inherit;
        color: #999;
        display: inline
    }
    .footer ul.nav li {
        display: inline-block;
        margin-right: 1.875rem
    }
    .footer ul.nav--footertablet {
        margin-top: .625rem;
        margin-bottom: .625rem
    }
    .footer .copyright--clean img {
        width: 1.5625rem;
        display: inherit;
        position: relative;
        top: .3125rem;
        margin-right: .625rem
    }
    .footer .general-links {
        margin-top: 1.25rem
    }
    .footer .currency-selector {
        padding: 1.25rem 0;
        line-height: 2rem
    }
    .footer .currency-selector+.row {
        overflow: hidden
    }
    .footer .currency-selector+.row .socials {
        width: 100%
    }
    .footer .currency-selector a.btn--next {
        margin-left: 1.25rem;
        padding-left: 1.875rem;
        padding-right: 2.5rem
    }
    .footer .tablet-socials a {
        margin-top: 1.25rem
    }
    .footer .copyright--clean {
        padding: 0 1.5625rem !important
    }
    .footer .copyright--clean img {
        width: 1.5625rem;
        display: inherit;
        position: relative;
        top: .3125rem;
        margin-right: .625rem
    }
    .footer .copyright--clean .copyright__column--nav {
        text-align: right;
        line-height: 3.3125rem
    }
    body.has-floating-request-btn .footer .copyright {
        padding-bottom: 0
    }
}
@media(min-width: 744px)and (hover: hover) {
    .footer:not(.expertbar) a:not(.social-icon):not(.currency-selector__button):hover {
        text-decoration: none !important
    }
}
@media(min-width: 744px) {
    .expertbar__banner {
        right: .9375rem
    }
    .numberinput_enhanced {
        height: 2.1875rem;
        width: 106px
    }
    .numberinput_enhanced input {
        height: 2.1875rem;
        width: 6.625rem;
        line-height: 2.1875rem;
        width: 106px
    }
    a.numberinput {
        width: 2.0625rem;
        height: 2.0625rem;
        line-height: 1.875rem
    }
    a.numberinput__min {
        line-height: 1.75rem
    }
    .checklist {
        font-size: 0
    }
    .checklist, .checklist+.error-balloon-container {
        margin: 0 1.25rem
    }
    .checklist__column {
        width: 50%;
        display: inline-block;
        vertical-align: top;
        font-size: .8125rem
    }
    .besttime-box {
        display: flex;
        flex-flow: row nowrap;
        padding: 1.5625rem 1.875rem
    }
    .besttime-box .besttime-blocks {
        margin-bottom: .625rem !important
    }
    .besttime-box .besttime-blocks .col {
        margin-bottom: .625rem !important;
        line-height: 2.1875rem !important
    }
    .besttime-box__col {
        width: 50%
    }
    .besttime-box__separator {
        width: 0;
        height: auto;
        border: 0;
        border-right: 1px solid #f6d89a;
        top: 0;
        margin: -1.5625rem 1.875rem
    }
    .btn--autowidth-t {
        width: auto;
        padding-left: 1.25rem;
        padding-right: 1.25rem
    }
    .btn--autowidth-t span {
        font-weight: inherit
    }
    .btn--autowidth-t.btn--next, .btn--autowidth-t.btn--up {
        padding-right: 1.875rem
    }
    .btn--autowidth-t.btn--nexttoinput {
        height: 2.1875rem !important;
        line-height: 1.875rem;
        margin-left: .625rem
    }
    .btn--autowidth-t.btn--nexttoinput:active {
        line-height: 1.9375rem
    }
    .btn--autowidth-t--wide {
        padding-left: 2.5rem;
        padding-right: 2.5rem
    }
    .btn--autowidth-t--wide.btn--next {
        padding-right: 3.125rem
    }
    .calendar__inner__grid__row {
        height: 2.1875rem;
        line-height: 2.1875rem
    }
    .calendar__inner__grid__row div {
        height: 2.1875rem
    }
    .calendar__inner__year ul li, .calendar__inner__month ul li {
        height: 2.1875rem;
        line-height: 2.0625rem;
        overflow: visible
    }
    .calendar__inner__year ul li:nth-child(2), .calendar__inner__month ul li:nth-child(2) {
        border-top: 0;
        border-left: .0625rem solid #d9d9d9
    }
    .calendar__inner__month ul li {
        width: 33.3333333333%;
        border-top: .0625rem solid #d9d9d9 !important;
        border-left: .0625rem solid #d9d9d9 !important
    }
    .calendar__inner__month ul li:nth-child(3n+2), .calendar__inner__month ul li:nth-child(3n+3) {
        border-left: 0 !important
    }
    .calendar__inner__month ul li:nth-child(n+4) {
        border-top: 0 !important
    }
    .calendar__inner__year ul li {
        width: 100%
    }
    .calendar__inner__year ul li.selected:before {
        content: "";
        width: 0;
        height: 0;
        border-top: 4px solid rgba(0, 0, 0, 0);
        border-bottom: 4px solid rgba(0, 0, 0, 0);
        border-left: 5px solid #2a7018;
        position: absolute;
        top: .75rem;
        right: -0.3125rem
    }
    .calendar__inner__year ul li.selected:after {
        content: none
    }
    .calendar__inner ul.years {
        width: auto
    }
    .calendar__inner__disabled {
        top: 2.125rem
    }
    .calendar__legend {
        text-align: center
    }
    .calendar__legend div {
        margin: 0 .625rem
    }
    .calendar.twomonths .calendar__inner__top span {
        width: 48%;
        position: absolute;
        left: 0;
        text-align: center;
        font-weight: normal
    }
    .calendar.twomonths .calendar__inner__top span+span {
        left: auto;
        right: 0
    }
    .calendar.twomonths .calendar__inner__top a {
        z-index: 3;
        position: relative;
        width: 6.8571428571%
    }
    .calendar.twomonths .calendar__inner__grid {
        width: 48%;
        float: left
    }
    .calendar.twomonths .calendar__inner__grid+.calendar__inner__grid {
        float: right
    }
    .climate {
        padding: 1.25rem 0;
        border-left-width: 1px;
        border-right-width: 1px;
        margin: 0
    }
    .climate__heading span {
        font-size: .8125rem !important
    }
    .climate__col {
        width: 50%;
        padding: 0 1.25rem
    }
    .climate__col-wide {
        width: 100%
    }
    .climate__chart--combined {
        margin-bottom: 1.875rem
    }
    .climate__separator {
        display: none
    }
    .climate__legend {
        text-align: center;
        order: 0;
        margin-bottom: .125rem
    }
    .climate__legend-item {
        padding-right: 1rem
    }
    .climate__legend-item:first-child {
        display: inline-block
    }
    .climate__footnote {
        top: .1875rem
    }
    .climate--narrow {
        margin: 0 .6875rem .625rem -0.6875rem;
        top: .4375rem;
        padding: .9375rem 0 1.625rem .0625rem
    }
    .climate--narrow .climate__heading {
        padding-bottom: 0;
        margin-bottom: .4375rem
    }
    .climate--narrow .climate__col~.climate__col:not(.climate__col-wide) {
        padding-right: 0
    }
    .cookiebar {
        padding: 2.5625rem 19.875rem 3.75rem 2.1875rem;
        max-width: 64.3125rem;
        margin: 0 auto
    }
    .cookiebar .cookiebar__buttons {
        position: absolute;
        flex-flow: column;
        width: 10.625rem;
        top: 50%;
        right: 2.1875rem;
        transform: translateY(-50%)
    }
    .cookiebar__heading {
        margin-bottom: .5rem
    }
    .cookiebar__txt {
        margin-bottom: 0;
        line-height: 1.4375rem
    }
    .cookiebar__details summary {
        display: none
    }
    .cookiebar__details[open] {
        padding: .0625rem 8rem 0 0
    }
    .cookiebar__buttons, .cookiebar__btn {
        width: 100%
    }
    .cookiebar__buttons {
        align-self: end;
        text-align: center
    }
    .cookiebar__buttons .cookiebar__btn:first-child {
        order: initial;
        margin-bottom: 1.3125rem
    }
    .cookiebar__linkbutton {
        margin: 0;
        line-height: 1.4375rem;
        cursor: pointer
    }
    .cookiebar--settings {
        display: flex !important;
        flex-flow: column nowrap;
        overflow: visible;
        transform: translateY(100%);
        height: auto;
        bottom: 0;
        top: auto;
        padding: 1.5rem 2.1875rem 1.25rem;
        max-height: 100vh;
        border-top: 1px solid #ccc
    }
    .cookiebar--settings .cookiebar__heading {
        position: relative;
        padding: 0
    }
    .cookiebar--settings .cookiebar__content {
        padding: 0;
        background: none
    }
    .cookiebar--settings .cookiebar__content:before, .cookiebar--settings .cookiebar__content:after {
        content: none
    }
    .cookiebar--settings .cookiebar__buttons {
        display: flex;
        flex-flow: row;
        position: relative;
        padding: 0;
        margin: 0 -0.625rem;
        width: calc(100% + 1.25rem);
        top: auto;
        right: auto;
        transform: none
    }
    .cookiebar--settings .cookiebar__buttons button {
        margin: 0 .625rem
    }
    body[data-state=cookiesettings] .cookiebar--settings {
        transform: none
    }
}
@media(min-width: 744px)and (hover: hover) {
    .cookiebar__txt a:hover {
        text-decoration: none !important
    }
    .cookiebar__linkbutton:hover {
        text-decoration: underline
    }
}
@media(min-width: 744px) {
    .list--tours .list--title {
        font-size: 2.25rem;
        line-height: 2.25rem
    }
    .list--tours .list--subtitle {
        font-size: 1.0625rem
    }
    .list--tours:not(.list--tours-threecol)>ul>li:not(.list_tours_operators).col:nth-child(odd) {
        padding-right: .625rem
    }
    .container--tours-directory .list--tours:not(.list--tours-threecol)>ul>li:not(.list_tours_operators).col:nth-child(odd), .tours-tab .list--tours:not(.list--tours-threecol)>ul>li:not(.list_tours_operators).col:nth-child(odd), .other_tours .list--tours:not(.list--tours-threecol)>ul>li:not(.list_tours_operators).col:nth-child(odd), .tour__content__block--operator .list--tours:not(.list--tours-threecol)>ul>li:not(.list_tours_operators).col:nth-child(odd) {
        clear: both
    }
    .list--tours:not(.list--tours-threecol)>ul>li:not(.list_tours_operators).col:nth-child(even) {
        padding-left: .625rem
    }
    .list--tours:not(.list--tours-threecol) .list--tours--small .col-12:nth-child(odd), .list--tours:not(.list--tours-threecol) .list--tours--small .col-12:nth-child(even) {
        padding-right: 0 !important;
        padding-left: 0 !important
    }
    .list--tours:not(.list--tours-threecol) .list--tours--small .col-12:nth-child(odd) {
        clear: both;
        padding-right: .625rem !important
    }
    .list--tours:not(.list--tours-threecol) .list--tours--small .col-12:nth-child(even) {
        padding-left: .625rem !important
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n+1) {
        padding-right: .8333333333rem
    }
    .container--tours-directory .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n+1), .tours-tab .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n+1), .other_tours .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n+1), .tour__content__block--operator .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n+1) {
        clear: both
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n-1) {
        padding-left: .4166666667rem;
        padding-right: .4166666667rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators).col:nth-child(3n) {
        padding-left: .8333333333rem
    }
    .list--operators-grid .col:nth-child(odd) {
        padding-right: .625rem
    }
    .list--operators-grid .col:nth-child(even) {
        padding-left: .625rem
    }
    .list--tours .list__item--data {
        padding: .625rem .9375rem 1.25rem
    }
    .list--tours .list__item--data p.price b {
        font-size: 1.375rem
    }
    .list--tours .list__item--data p .halflings-star {
        font-size: 1rem;
        width: 1rem
    }
    .list--tours, .list--operators {
        margin-top: 0
    }
    .list--tours .col.titlebar__sub, .list--operators .col.titlebar__sub {
        padding-left: .625rem
    }
    .list--tours .col.titlebar__sub.titlebar__sub, .list--operators .col.titlebar__sub.titlebar__sub {
        padding-left: 0;
        margin-top: 0;
        padding-top: 0;
        margin-bottom: .625rem
    }
    .list--tours h1, .list--operators h1 {
        font-size: 2.125rem;
        line-height: 2.125rem;
        margin-top: 0;
        margin-bottom: 1.25rem
    }
    .list--tours .list__snippets, .list--operators .list__snippets {
        margin-top: .3125rem
    }
    .list--tours .list__snippets.list--operators, .list--operators .list__snippets.list--operators {
        margin-top: 2.5rem
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div {
        position: relative;
        right: auto
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder {
        padding-left: .625rem;
        border-left: 0
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder .operator-logo, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.logo-holder .operator-logo {
        margin-top: 0
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder {
        padding: 1.375rem 0
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li>a>div.data-holder h2 {
        margin: 0 .625rem 0 0
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li .button-holder, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li .button-holder {
        padding: 1.5rem 1.25rem 1.5rem .625rem
    }
    .list--tours .list__snippets li.list_tours_operators ul.list__snippets li .button-holder>a.btn, .list--operators .list__snippets li.list_tours_operators ul.list__snippets li .button-holder>a.btn {
        display: block;
        height: 2.625rem;
        width: auto;
        text-align: center
    }
    .list--tours .list__snippets li.list_tours_operators .btn--next, .list--operators .list__snippets li.list_tours_operators .btn--next {
        margin-top: 1.875rem
    }
    .list--tours .list__snippets--promostart, .list--operators .list__snippets--promostart {
        padding-top: 0
    }
    .list--operators .list__item>a h2 {
        text-decoration: none;
        font-size: 1.375rem;
        color: #0378a0
    }
    .list--operators .list__item>a h2.with-save-btn {
        line-height: 1.875rem;
        padding-right: 3rem
    }
    html.no-touch .list--operators .list__item>a:hover h2 {
        text-decoration: underline
    }
    .list--operators .list__item>a .picture-holder {
        padding: 1.5625rem .5rem .9375rem
    }
    .list--operators .list__item>a .picture-holder .picture-frame {
        box-shadow: 0px 2px 3px rgba(0, 0, 0, .18)
    }
    .list--operators .list__item>a .picture-holder .picture-frame p {
        font-size: .4375rem;
        padding: .1875rem 0
    }
    .list--operators .list__item>a .picture-holder .picture-frame:before {
        width: 4rem;
        height: 1.1875rem;
        margin-left: -2rem;
        top: -0.5625rem
    }
    .list--operators .list__item>a .picture-holder .picture-frame img.placeholder {
        height: 50%;
        top: 25%
    }
    .list--operators .list__item>a .data-holder {
        position: relative
    }
    .list--operators .list__item>a .logo-holder {
        border-left: .0625rem dotted #b3b3b3;
        text-align: center;
        position: absolute;
        top: 0;
        right: 0;
        height: 100%
    }
    .list--operators .list__item>a .logo-holder .operator-logo {
        width: 9.375rem;
        max-height: 4.6875rem;
        top: 50%;
        position: relative;
        margin-top: -2.3125rem
    }
    .list--operators .list__item>a .data-holder {
        position: relative
    }
    .list--operators .list__item>a .data-holder .country-with-flag {
        margin-right: .625rem
    }
    .list--operators .list__item>a .data-holder dl {
        margin-top: 1.125rem
    }
    .list--operators .list__item>a .data-holder dl dt {
        font-weight: normal;
        width: 6.5625rem
    }
    .list--operators .list__item>a .data-holder dl dd {
        padding-left: 6.5625rem;
        padding-right: .625rem
    }
    .list--operators .list__item>a .data-holder dl dd.officesin .country-with-flag:not(:last-child) {
        padding-right: 0
    }
    .list--operators .list__item>a .data-holder dl dd.officesin .country-with-flag:not(:last-child):after {
        display: none
    }
    .list--operators .list__item>a .data-holder dl dd span {
        display: inline-block
    }
    .list--operators .list__item>a .data-holder dl dd span[dir] {
        color: #444
    }
    .list--operators .list__item div.row {
        background-color: #f8f8f8;
        cursor: default;
        padding: .8125rem 0;
        color: #999
    }
    .list--operators .list__item div.row a {
        margin-top: 0;
        margin-right: .25rem
    }
    .list--operators .list__item div.row span {
        display: inline-block;
        margin-left: .25rem
    }
    .list--operators .list__item div.row span.behind-btn {
        margin-top: .1875rem
    }
    .list__item--image__full h2, .list__item--image__full h3 {
        padding: 4.375rem .9375rem .9375rem
    }
    .list--harmonica h3 {
        padding: 1.25rem 1.25rem 1.25rem 5.625rem
    }
    .list--harmonica h3:before {
        top: 1.5625rem;
        left: 1.875rem
    }
    .list--harmonica h3:after {
        left: 4.0625rem
    }
    .list--harmonica .harmonica-block {
        padding: 1.25rem 2.5rem 1.875rem 5.625rem
    }
    .list--harmonica .harmonica-block h4 {
        font-size: 1.0625rem
    }
    .list--harmonica.js-enabled h3 {
        cursor: pointer
    }
    .list--harmonica.js-enabled h3:before {
        transform: rotate(0deg)
    }
    .list--harmonica.js-enabled h3.open:before {
        transform: rotate(90deg)
    }
    .list--harmonica.js-enabled .harmonica-block:not(.fixed) {
        display: none
    }
    .list--icon-sec {
        padding-left: 2rem
    }
    .list--indent-t {
        padding-left: .5625rem
    }
    .container--tours-directory .row-header, .container--operators-directory .row-header {
        margin: -0.625rem -1.5625rem 2.1875rem;
        padding: 0 1.5625rem 1.5625rem
    }
    .container--tours-directory .row-header h1, .container--operators-directory .row-header h1 {
        display: inline-block
    }
    .container--tours-directory .row-header h1 span, .container--operators-directory .row-header h1 span {
        font-size: 2.125rem
    }
    .container--tours-directory .row-header--withintro h1, .container--operators-directory .row-header--withintro h1 {
        margin: .625rem .625rem .3125rem 0
    }
    .container--tours-directory .row-header .intro, .container--operators-directory .row-header .intro {
        margin-top: .4375rem
    }
    .container--tours-directory .row-header .review-summary--oneline, .container--operators-directory .row-header .review-summary--oneline {
        margin-left: 0;
        top: -0.1875rem
    }
    .container--tours-directory--iframe .row-header h1 {
        display: block
    }
    .container--tours-directory .top-searches {
        margin: 1.25rem 0;
        border-bottom: 1px dotted #b3b3b3;
        padding-bottom: 1.5625rem
    }
    .container--tours-directory .top-searches .list--icon-nopadding li {
        padding-left: .9375rem
    }
    .container--tours-directory .top-searches .list--nopadding li {
        padding-left: 0
    }
    .container--tours-directory .top-searches .list--nopadding li img {
        margin-right: .375rem;
        opacity: 1
    }
    .container--tours-directory .top-searches strong {
        font-size: 1rem;
        display: block;
        overflow: hidden;
        position: relative;
        margin-bottom: .625rem
    }
    .container--tours-directory .top-searches strong:before {
        content: "";
        display: block;
        width: 100%;
        height: 0;
        border-bottom: 1px dotted #b3b3b3;
        position: absolute;
        top: .75rem;
        left: -1.25rem
    }
    .container--tours-directory .top-searches strong span {
        display: inline-block;
        padding-right: .625rem;
        background-color: #f2f2f2;
        position: relative
    }
    .container--tours-directory .top-searches .col-4-5 strong:before {
        left: 0
    }
    .list-head {
        padding-left: .9375rem !important;
        font-size: .9375rem
    }
    .list--columns {
        display: grid;
        grid-template-columns: repeat(2, 1fr)
    }
    .list--columns.list--icon li {
        padding-left: 15px;
        padding-right: 10px
    }
    .list--columns.list--icon li:before {
        left: -1px
    }
}
@media(min-width: 744px)and (max-width: 1000px) {
    .list--tours-threecol>ul>li:not(.list_tours_operators) .list__item {
        margin-bottom: 1.875rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .list__item .list__item--image__full h2 {
        padding: 3.125rem .625rem .3125rem;
        font-size: 1.125rem;
        line-height: 1.375rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .list__item--data {
        padding: .3125rem .625rem .625rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .list__item--data .price {
        font-size: .75rem;
        line-height: 1rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .list__item--data .price b {
        font-size: 1rem;
        line-height: 1rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .list__item--data p {
        font-size: .8125rem;
        line-height: 1rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .operator-snippet__data .opdata__image {
        padding: .125rem .3125rem;
        width: 4.6875rem;
        height: 3rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .operator-snippet__data .opdata__image img {
        max-width: 3.75rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .operator-snippet__data p {
        padding-top: 0;
        padding-bottom: 0
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .operator-snippet__data p:nth-child(2) {
        font-size: .75rem;
        padding: .375rem .3125rem .1875rem 5.375rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars {
        top: .0625rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars i {
        width: .8125rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars+p {
        font-size: 0
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars+p .review-score {
        position: relative;
        top: -0.125rem;
        font-size: .6875rem;
        margin-left: .25rem
    }
    .list--tours-threecol>ul>li:not(.list_tours_operators) .stars+p .review-score em {
        font-size: .75rem
    }
}
@media(min-width: 744px) {
    .filters {
        width: 70%
    }
    .filters__block--tourpreferences.messagebox {
        padding: .75rem .9375rem .3125rem;
        margin-top: 1.25rem;
        margin-left: .625rem;
        margin-right: .625rem;
        width: auto
    }
    .filters-toggle[data-state=fixing] .filters-toggle__inner, .filters-toggle[data-state=fixed] .filters-toggle__inner {
        padding: 0 1.5625rem .625rem
    }
    .pagination {
        margin-top: 2.5rem
    }
    .pagination__nmbr {
        display: inline-block;
        width: 2.375rem;
        text-align: center;
        margin: 0 .125rem
    }
    .pagination__dots {
        display: inline;
        font-size: .6875rem;
        margin: 0;
        position: relative;
        top: .625rem
    }
    .pagination__summary {
        display: none
    }
    .pagination .btn--prev span {
        display: inherit
    }
    .pagination .btn--prev:before {
        left: .75rem;
        margin-left: 0
    }
    .operator-snippet__data p {
        padding: .25rem .9375rem .25rem 7.1875rem;
        font-size: .8125rem
    }
    .operator-snippet__data .opdata__image {
        width: 6.375rem
    }
    .operator-snippet__data .opdata__image img {
        max-width: 4.6875rem
    }
    .tour__head__container .operator-snippet__data p em {
        padding-left: .3125rem
    }
    .selected-filters {
        margin-top: .3125rem;
        margin-bottom: .5rem;
        top: 0
    }
    .selected-filters span {
        position: absolute;
        left: 0;
        display: inline
    }
    .selected-filters--spaced {
        margin-bottom: 1.375rem
    }
    .row .col-12.selected-filters {
        padding-left: 7.1875rem
    }
    .price {
        padding-top: .5rem
    }
    .price b {
        font-size: 1.25rem
    }
    .picture-frame {
        margin: 0 auto;
        width: 85%;
        background-color: #f0eee8;
        text-align: center;
        padding: .1875rem;
        position: relative
    }
    .picture-frame:before {
        content: "";
        background-image: url("https://cfstatic.safaribookings.com/img/tape.png");
        width: 5.625rem;
        height: 1.6875rem;
        background-position: center;
        display: block;
        position: absolute;
        left: 50%;
        z-index: 2;
        margin-left: -2.8125rem;
        top: -0.875rem;
        transform: rotate(-2deg)
    }
    .picture-frame div, .picture-frame a {
        overflow: hidden;
        position: relative;
        display: block
    }
    .picture-frame div:before, .picture-frame a:before {
        content: "";
        display: block;
        padding-top: 80%;
        opacity: .9
    }
    .picture-frame div img, .picture-frame a img {
        max-height: 100%;
        max-width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%)
    }
    .picture-frame div img.placeholder, .picture-frame a img.placeholder {
        height: 50%;
        top: 25%
    }
    .picture-frame div.placeholder, .picture-frame a.placeholder {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        text-align: center;
        opacity: .4
    }
    .picture-frame div.placeholder .sbi, .picture-frame a.placeholder .sbi {
        width: 50px;
        top: 50%;
        position: absolute;
        left: 50%;
        margin-left: -25px;
        margin-top: -25px;
        opacity: .5;
        background-size: 80%
    }
    .picture-frame div.placeholder .sbi:after, .picture-frame a.placeholder .sbi:after {
        content: "";
        width: 80%;
        height: 80%;
        border: 2px solid #000;
        border-radius: 5px;
        position: absolute;
        top: 10%;
        left: 17%
    }
    .picture-frame div.placeholder span, .picture-frame a.placeholder span {
        top: 50%;
        left: 0;
        position: absolute;
        width: 100%;
        margin-top: 30px;
        color: #000;
        font-size: .8125rem
    }
    .picture-frame p {
        color: #666;
        text-align: center;
        padding: .5rem 0 .375rem;
        line-height: .8125rem;
        font-size: .875rem;
        font-family: "Gentium Basic", serif
    }
    .picture-frame a.enlarge:hover {
        cursor: pointer
    }
    .picture-frame a.enlarge:hover:before {
        background-color: rgba(0, 0, 0, .6);
        position: relative;
        z-index: 2
    }
    .picture-frame a.enlarge:hover:after {
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        white-space: nowrap;
        word-wrap: normal;
        direction: ltr;
        -webkit-font-feature-settings: "liga";
        -webkit-font-smoothing: antialiased;
        overflow: hidden;
        background-repeat: no-repeat;
        width: 1rem;
        background-size: contain;
        background-position: center;
        content: "";
        width: 2rem;
        height: 2rem;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-left: -1rem;
        margin-top: -1rem;
        display: block;
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg);
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.svg");
        z-index: 4;
        -moz-transform: scaleX(-1);
        -o-transform: scaleX(-1);
        -webkit-transform: scaleX(-1);
        transform: scaleX(-1)
    }
}
@media(min-width: 744px)and (-webkit-min-device-pixel-ratio: 2), (min-width: 744px)and (min-resolution: 192dpi) {
    .picture-frame a.enlarge:hover:after {
        background-image: url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white@2x.png");
        background-image: linear-gradient(transparent, transparent), url("https://cfstatic.safaribookings.com/img/sbicons/zoom-white.svg")
    }
}
@media(min-width: 744px) {
    .overlay {
        padding-top: 0;
        width: 100% !important
    }
    .overlay__header {
        height: 3.375rem;
        padding: .625rem 1.25rem
    }
    .overlay__header h4 {
        font-size: 1.75rem;
        height: 2rem;
        line-height: 2rem
    }
    .overlay__header h4 span {
        float: none;
        font-size: 1.25rem;
        margin-right: 0;
        margin-left: .625rem
    }
    .overlay__header a.close {
        width: 2.5rem;
        height: 2.5rem;
        top: .375rem;
        right: .375rem
    }
    .overlay__header a.close i {
        width: 1.25rem;
        margin-left: .5rem;
        margin-top: .5rem
    }
    .overlay--small--m {
        top: 2.8125rem !important;
        display: block;
        max-width: 40rem;
        min-height: auto !important
    }
    .overlay--small--m .overlay__header {
        width: 100% !important
    }
    .overlay--clean {
        top: 2.8125rem !important;
        display: block;
        max-width: 40rem;
        min-height: auto !important
    }
    .overlay--clean .overlay__header {
        width: 100% !important
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .navigation__sidebar ul {
        height: 2.25rem !important
    }
    .navigation__sidebar ul a[role=tab] {
        line-height: 1.25rem;
        padding: .4375rem .75rem .5625rem
    }
}
@media(min-width: 744px) {
    .navigation__sidebar ul li {
        display: inline-block;
        float: left
    }
    .navigation__sidebar ul li em {
        display: none
    }
    .navigation__sidebar ul li.more {
        position: relative
    }
    .navigation__sidebar ul li.more>a {
        display: block;
        padding-top: .4375rem;
        padding-bottom: .5625rem;
        padding-left: .8125rem !important;
        padding-right: 1.875rem !important;
        border-right: 1px solid #d9d9d9
    }
    .navigation__sidebar ul li.more>a:before {
        content: "›";
        display: block;
        position: absolute;
        text-align: center;
        width: .875rem;
        height: .875rem;
        line-height: .6875rem;
        font-size: 1.0625rem;
        top: .6875rem;
        right: .625rem;
        left: auto;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transition: "transform .2s ease-in-out";
        -moz-transition: "transform .2s ease-in-out";
        -ms-transition: "transform .2s ease-in-out";
        -o-transition: "transform .2s ease-in-out";
        transition: transform .2s ease-in-out
    }
    .navigation__sidebar ul li.more>a.active:before {
        top: .875rem
    }
    .navigation__sidebar ul li.more:hover>a:before {
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg)
    }
    .navigation__sidebar ul li.more:hover a+ul {
        display: block;
        position: absolute;
        top: 2.1875rem
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .navigation__sidebar ul li.more:hover a+ul {
        right: .0625rem;
        background-color: #fff;
        height: auto;
        box-shadow: 0px 2px 3px rgba(0, 0, 0, .18);
        border-top: .0625rem solid rgba(0, 0, 0, .18)
    }
    .navigation__sidebar ul li.more:hover a+ul li {
        display: block;
        width: 12.5rem;
        float: none
    }
    .navigation__sidebar ul li.more:hover a+ul li a {
        display: block;
        width: 100%;
        height: 100%;
        float: none;
        text-align: left;
        border-left: 0;
        border-right: 0;
        border-top: 1px solid #d9d9d9;
        padding-top: .5rem !important;
        padding-bottom: .5rem !important
    }
    .navigation__sidebar ul li.more:hover a+ul li a:hover, .navigation__sidebar ul li.more:hover a+ul li a.active {
        -webkit-box-shadow: "none";
        -moz-box-shadow: "none";
        -ms-box-shadow: "none";
        -o-box-shadow: "none";
        box-shadow: none;
        padding-top: .5rem !important;
        padding-bottom: .5rem !important;
        position: static;
        top: 0 !important;
        border-left: .0625rem solid #d9d9d9;
        border-right: .0625rem solid #d9d9d9
    }
    .navigation__sidebar ul li.more:hover a+ul li a:hover:before, .navigation__sidebar ul li.more:hover a+ul li a:hover:after, .navigation__sidebar ul li.more:hover a+ul li a.active:before, .navigation__sidebar ul li.more:hover a+ul li a.active:after {
        display: none;
        width: 0 !important;
        height: 0 !important
    }
    .navigation__sidebar ul li.more:hover a+ul li:first-child a {
        border-top: 0
    }
    .navigation__sidebar ul li.more:hover a+ul:after:after {
        content: "";
        display: table;
        clear: both
    }
}
@media(min-width: 744px) {
    .navigation__sidebar ul li a:hover em.show-ti {
        text-decoration: underline
    }
    .navigation__sidebar ul.more-items {
        display: none;
        height: auto !important
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .navigation__sidebar--operator ul li a[role=tab] {
        padding: .4375rem 1.25rem .5625rem
    }
}
@media(min-width: 744px) {
    .navigation__sidebar--operator ul li a[role=tab] em {
        display: inline
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .navigation__sidebar.navigation-list {
        background-color: #f8f8f8;
        box-shadow: inset 0px -1px 2px rgba(0, 0, 0, .18);
        margin: 0;
        padding: 0;
        z-index: 36;
        position: relative;
        height: 2.4375rem;
        margin-bottom: .1875rem;
        height: 2.875rem
    }
    .navigation__sidebar.navigation-list.not-sticky {
        z-index: 20
    }
    .navigation__sidebar.navigation-list a[role=tab] {
        display: inline-block;
        padding: .4375rem .25rem .5625rem;
        float: left;
        text-align: center;
        color: #666;
        font-size: .875rem;
        line-height: 1.25rem
    }
    .navigation__sidebar.navigation-list a[role=tab]:nth-child(n+2) {
        border-left: 1px solid #d9d9d9
    }
    .navigation__sidebar.navigation-list a[role=tab]:hover {
        text-decoration: underline
    }
    .navigation__sidebar.navigation-list a[role=tab]:hover span {
        text-decoration: underline
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        background-color: #fff;
        box-shadow: 1px -2px 12px rgba(0, 0, 0, .18);
        position: relative;
        top: -3px;
        padding: .6875rem .25rem .5625rem;
        color: #006400;
        cursor: default
    }
    .navigation__sidebar.navigation-list a[role=tab].active:hover {
        text-decoration: none;
        cursor: default
    }
    .navigation__sidebar.navigation-list a[role=tab].active:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -0.5rem;
        width: 100%;
        height: .5625rem;
        background-color: #fff
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        background-color: #fafafa;
        position: relative;
        top: 0;
        padding: .5625rem .25rem .4375rem;
        color: #444;
        cursor: pointer;
        border: 1px solid #d9d9d9;
        border-bottom: 0
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 320px) {
    .navigation__sidebar.navigation-list a[role=tab] {
        padding: .5rem .5rem .5rem .4375rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .6875rem .5rem .625rem .4375rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5625rem .5rem .5rem .4375rem
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 335px) {
    .navigation__sidebar.navigation-list a[role=tab] {
        padding: .5rem .5rem .5rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .6875rem .5rem .625rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5625rem .5rem .5rem
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 367px) {
    .navigation__sidebar.navigation-list a[role=tab] {
        font-size: .9375rem;
        padding: .5rem .625rem .5rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .6875rem .625rem .625rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5625rem .625rem .5rem
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 406px) {
    .navigation__sidebar.navigation-list a[role=tab] {
        padding: .5rem .9375rem .5rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .6875rem .9375rem .625rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5625rem .9375rem .5rem
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 744px) {
    .navigation__sidebar.navigation-list {
        height: 2.25rem
    }
    .navigation__sidebar.navigation-list a[role=tab] {
        padding: .4375rem 1.25rem .5625rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .625rem 1.25rem .5rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5rem 1.25rem .375rem
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 970px) {
    .navigation__sidebar.navigation-list {
        height: 2.5rem
    }
    .navigation__sidebar.navigation-list a[role=tab] {
        padding: .5rem .8125rem .75rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .6875rem .8125rem .6875rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5625rem .8125rem .5625rem
    }
}
@media(min-width: 744px)and (max-width: 969px)and (min-width: 1100px) {
    .navigation__sidebar.navigation-list {
        height: 2.5rem
    }
    .navigation__sidebar.navigation-list a[role=tab] {
        padding: .5rem 1.25rem .75rem
    }
    .navigation__sidebar.navigation-list a[role=tab].active {
        padding: .6875rem 1.25rem .6875rem
    }
    .navigation__sidebar.navigation-list a[role=tab].inactive {
        padding: .5625rem 1.25rem .5625rem
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .navigation__sidebar.navigation-list a[role=tab].active:before {
        content: "";
        display: block;
        width: .0625rem;
        height: 100%;
        position: absolute;
        background-color: #fff;
        top: 0;
        right: -0.0625rem
    }
    .navigation__sidebar.navigation-list li:nth-child(n+2) a[role=tab]:not(.active) {
        border-left: 1px solid #d9d9d9
    }
    .navigation__sidebar.navigation-list li:nth-child(n+2) a[role=tab].active {
        background-color: #fff;
        border-left: 1px solid #fff
    }
    .navigation__sidebar.navigation-list li:last-child a[role=tab]:not(.active) {
        border-right: 1px solid #d9d9d9
    }
}
@media(min-width: 744px)and (max-width: 875px) {
    .navigation__sidebar.navigation-list ul li a[role=tab] {
        padding: .4375rem .4375rem .5625rem
    }
    .navigation__sidebar.navigation-list ul li a[role=tab].active {
        padding: .625rem .5rem .5625rem
    }
}
@media(min-width: 744px) {
    .inputform {
        margin: 0
    }
    .inputform fieldset {
        padding: 0 1.25rem
    }
    .inputform fieldset>div label span.lbl {
        display: inline-block;
        width: 12.5rem;
        margin-top: .625rem
    }
    .inputform fieldset>div .input--holder {
        width: auto
    }
    .inputform fieldset>div input[type=text]:not(.enhance):not(.width-full), .inputform fieldset>div input[type=email], .inputform fieldset>div input[type=tel], .inputform fieldset>div input[type=url], .inputform fieldset>div input[type=password] {
        width: auto;
        position: relative
    }
    .inputform.enquiryform input[type=text]:not(.enhance), .inputform.enquiryform input[type=email], .inputform.enquiryform input[type=tel], .inputform.enquiryform input[type=password] {
        float: right
    }
    .inputform:not(.affiliate__form) fieldset>div .input--holder {
        min-width: 25rem
    }
    .inputform:not(.affiliate__form) fieldset>div input[type=text]:not(.enhance):not(.width-full), .inputform:not(.affiliate__form) fieldset>div input[type=email], .inputform:not(.affiliate__form) fieldset>div input[type=tel], .inputform:not(.affiliate__form) fieldset>div input[type=url], .inputform:not(.affiliate__form) fieldset>div input[type=password] {
        min-width: 25rem
    }
    div.error-balloon-container div.error-balloon:not(.error-balloon--fullwidth) {
        white-space: nowrap
    }
    .form[data-state=invisible] {
        height: 0;
        padding: 0 !important
    }
    .fieldset:not(.fieldset--noindent) {
        padding: 0 1.25rem !important
    }
    .legend {
        margin: auto -1.25rem 1.25rem;
        width: calc(100% + 2.5rem) !important
    }
    .legend--nomargin {
        margin-bottom: 0
    }
    .legend--heading {
        font-size: 1rem;
        margin-left: 0;
        margin-right: 0;
        width: 100% !important
    }
    .legend--sub:before {
        top: .6875rem !important
    }
    .fieldset--emphasis:not(.fieldset--noindent) {
        padding: 1.5625rem 1.875rem 1.875rem !important;
        margin: 0 -1.875rem !important;
        width: calc(100% + 3.75rem) !important
    }
    .fieldset--emphasis:not(.fieldset--noindent):last-child {
        padding-bottom: 1.5625rem !important;
        margin-bottom: -3.125rem !important
    }
    .fieldset--emphasis:not(.fieldset--noindent) .legend {
        width: 100% !important
    }
    .list--operators .row:not(.hide-t)+.score_expl b:before {
        background-color: #f8f8f8
    }
    .featuredbar {
        margin-top: 1.625rem;
        margin-bottom: .3125rem
    }
    .featuredbar .inner {
        margin: .625rem;
        border: .0625rem solid #d9d9d9;
        text-align: center;
        position: relative;
        padding: 1.25rem
    }
    .featuredbar .inner b {
        position: absolute;
        padding: 0 .625rem;
        background-color: #f2f2f2;
        top: -0.75rem;
        font-weight: normal;
        color: #999;
        display: inline-block;
        width: 8.125rem;
        left: 0;
        right: 0;
        margin: 0 auto
    }
    .featuredbar .inner .logos {
        height: 3.125rem;
        overflow: hidden
    }
    .featuredbar .inner .logos img {
        height: 3.125rem;
        margin: 0 0 0 4.0625rem
    }
    .featuredbar .inner .logos img:first-child {
        margin: 0
    }
    footer .featuredbar {
        width: 100%;
        max-width: none;
        padding-left: 0 !important;
        padding-right: 0 !important
    }
    footer .featuredbar .inner {
        border: 0;
        border-top: 1px solid #666;
        padding-bottom: 0;
        margin: .625rem 0
    }
    footer .featuredbar .inner b {
        background-color: #3f3d3d
    }
    footer .featuredbar .inner .logos {
        position: relative;
        top: .9375rem
    }
    .imgpagehead {
        margin: .625rem 1.5625rem;
        width: auto
    }
    .imgpagehead--margin {
        margin: .625rem auto
    }
    .imgpagehead--margin-bottom {
        margin: 0 auto .625rem
    }
    .imgpagehead--margin-top {
        margin-top: .625rem;
        margin-bottom: 0
    }
    .imgpagehead picture:before {
        padding-top: 31.25%
    }
    .imgpagehead:not(.imgpagehead--parkcountry):not(.imgpagehead--topratedoperators):not(.job-offer):before {
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to right, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 45%, rgba(0, 0, 0, 0) 80%)
    }
    .imgpagehead.job-offer:before {
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to right, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 20%, rgba(0, 0, 0, 0) 40%)
    }
    .imgpagehead--topratedoperators:before {
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.9) 100%)
    }
    .imgpagehead--tour {
        margin-top: 0
    }
    .imgpagehead--tour h1 {
        font-size: 1.75rem;
        line-height: 2rem
    }
    .imgpagehead__extragrad {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 9.375rem;
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to right, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
        z-index: 2
    }
    .imgpagehead__overlay {
        width: 60%;
        height: auto;
        bottom: .9375rem;
        padding: 0 1.25rem .9375rem 1.5625rem
    }
    .imgpagehead__overlay p {
        padding-top: .9375rem
    }
    .imgpagehead__overlay--countrydir {
        width: 65%
    }
    .imgpagehead__overlay--countrydir p {
        padding-top: 0;
        padding-bottom: .3125rem
    }
    .imgpagehead__overlay__sub {
        margin-top: 0;
        position: relative;
        height: 1.625rem;
        top: .875rem;
        z-index: 4;
        opacity: .9;
        font-size: 1.125rem
    }
    .imgpagehead__overlay__sub strong+.stars {
        margin-left: 1.25rem
    }
    .imgpagehead__overlay__sub .stars i+i {
        display: inline-block
    }
    .imgpagehead__overlay__sub span {
        opacity: 1
    }
    .imgpagehead__overlay__sub .stars {
        position: relative
    }
    .imgpagehead__overlay__sub strong a {
        font-size: 1.125rem
    }
    .imgpagehead h2.imgpagehead__overlay__sub {
        font-size: 1.375rem
    }
    .imgpagehead--parkcountry, .imgpagehead--topratedoperators {
        margin: 0 auto;
        width: 100%
    }
    .imgpagehead--parkcountry picture:before, .imgpagehead--topratedoperators picture:before {
        padding-top: 25%
    }
    .imgpagehead--parkcountry .imgpagehead__overlay, .imgpagehead--topratedoperators .imgpagehead__overlay {
        bottom: .3125rem
    }
    .imgpagehead--parkcountry .imgpagehead__overlay__sub, .imgpagehead--topratedoperators .imgpagehead__overlay__sub {
        top: 0;
        margin-top: .3125rem
    }
    .imgpagehead--topratedoperators {
        margin: auto 0;
        height: 11.5rem
    }
    .imgpagehead--topratedoperators .imgpagehead__overlay {
        padding-bottom: 1.875rem;
        bottom: 0
    }
    .imgpagehead .btn--orange {
        position: absolute;
        bottom: 1.375rem;
        left: 1.5625rem;
        z-index: 4;
        bottom: 1.5625rem;
        left: auto;
        right: 1.5625rem
    }
    .imgpagehead .btn--orange.btn--withsubtext {
        min-width: 12.5rem
    }
    .container--tourpref .tourpreferences .col {
        height: 100%;
        margin-bottom: 0
    }
    .container--tourpref .tourpreferences .col .detail__destination {
        width: 20rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block div.placeholder {
        line-height: 3.125rem;
        font-size: .9375rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block span.lbl {
        margin-top: 0;
        top: .0625rem;
        font-size: .9375rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block span.lbl.filled span {
        top: .4375rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__date .open-sign, .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons .open-sign {
        display: none !important
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block .tourpreferences__destination__row:not(.filled) .open-sign {
        display: none !important
    }
    .container--tourpref .tourpreferences .col .clear-btn {
        height: 3.125rem
    }
    .container--tourpref .tourpreferences .col .open-sign--search {
        top: .875rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block {
        border-right: 2px solid #5c5d58
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons {
        border-right: 0
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block.tourpreferences__persons+.col {
        padding-left: .625rem !important
    }
    .container--tourpref .tourpreferences .col.tourpreferences__block span.lbl.filled:before {
        top: -0.25rem
    }
    .container--tourpref .tourpreferences .col.active .detail:not(.detail__destination) {
        display: block !important;
        top: 4rem;
        min-width: 20rem
    }
    .container--tourpref .tourpreferences .col.active .detail:not(.detail__destination):before {
        position: absolute;
        top: -0.4375rem;
        left: 1.1875rem;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
        content: "";
        display: block;
        width: 1rem;
        height: 1rem;
        border: .0625rem solid #e2e1e1;
        z-index: 0;
        background-color: #efefef
    }
    .container--tourpref .tourpreferences .col.active .detail:not(.detail__destination) .numberinput_enhanced {
        right: 0
    }
    .container--tourpref .tourpreferences .col.active .detail:not(.detail__destination).detail__persons {
        width: 19.375rem;
        min-width: 19.375rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__date.filled {
        margin-bottom: .8125rem;
        padding-bottom: 0 !important
    }
    .container--tourpref .tourpreferences .col.tourpreferences__date.filled .tourpreferences__date__extraflex {
        display: none !important
    }
    .container--tourpref .tourpreferences .col.tourpreferences__destination input {
        font-size: .9375rem;
        padding-left: 2.625rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__destination input:focus {
        padding-top: .875rem
    }
    .container--tourpref .tourpreferences .col.tourpreferences__destination input:focus+div.placeholder {
        line-height: 1.25rem;
        margin-bottom: 1.625rem;
        font-size: .8125rem;
        top: .375rem
    }
    .container--tourpref .tourpreferences .col .tourpreferences__destination__row div.placeholder {
        font-size: .9375rem
    }
    .container--tourpref .tourpreferences .col .tourpreferences__destination__row.filled input {
        padding-top: .875rem
    }
    .container--tourpref .tourpreferences .col .tourpreferences__destination__row.filled div.placeholder {
        line-height: 1.25rem;
        margin-bottom: 1.625rem;
        font-size: .8125rem
    }
    .container--tourpref .tourpreferences a.search {
        border: 0;
        padding-right: .625rem
    }
    .container--tourpref .tourpreferences a.search:before {
        font-size: 1.875rem;
        top: -0.0625rem
    }
    .tourpreferences .detail__persons .btn {
        width: 6.625rem
    }
    .tourpreferences .detail__persons .children-ages label {
        width: 11.375rem !important
    }
    .container--directory .tourpreferences .col.tourpreferences__block div.placeholder {
        font-size: .9375rem
    }
    .container--directory .tourpreferences .col.tourpreferences__block span.lbl {
        font-size: .9375rem
    }
    .container--directory .tourpreferences .col.tourpreferences__destination input {
        font-size: .9375rem
    }
    .container--directory .tourpreferences .col .tourpreferences__destination__row div.placeholder {
        font-size: .9375rem
    }
    .map--google .map__holder {
        padding-bottom: 50%
    }
    .map__pin {
        padding-top: 25%
    }
    .map__card[data-state=active] .map__form-holder {
        height: 4.8125rem
    }
    .map--editsave+.map--editsave {
        padding: 0 .625rem
    }
    .expert__photo--large {
        display: inline-block;
        float: left;
        margin: 0 2.1875rem 1.25rem 0
    }
    .expertdetail__main.content {
        padding-bottom: 3.125rem
    }
    .expertdetail__main__details__inner {
        display: inline-block;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        text-align: left
    }
    .expertdetail__main__details__inner dl dt {
        width: 8.125rem
    }
    .expertdetail__main__countryblock ul {
        margin-left: .75rem
    }
    .expertdetail__main__countryblock ul li a {
        width: 16.875rem
    }
    .expertdetail__main__countryblock ul li p {
        display: inline-block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        width: 15.625rem;
        margin-bottom: 0
    }
    .reviewlist__list {
        padding-right: 0 !important
    }
    .reviewlist__sorting div {
        padding-bottom: .625rem
    }
    .reviewlist__sorting div a {
        margin: 0 .625rem 0 1.25rem
    }
    .reviewlist__sorting div span {
        position: relative;
        float: right;
        bottom: auto;
        left: auto;
        margin-top: 0
    }
    .messagebox {
        padding: .5625rem 1.25rem .625rem
    }
    .messagebox--greenfull, .messagebox--redfull {
        max-width: none !important;
        padding: 1.875rem 1.25rem
    }
    .messagebox--fraud {
        margin: 1.25rem .625rem .9375rem .9375rem;
        padding-left: 2.5rem
    }
    .messagebox--unavailable {
        margin-bottom: 1.5625rem;
        padding: 1.5625rem 1.25rem;
        font-size: 1.125rem
    }
    .messagebox--unavailable a {
        margin-left: 1.25rem;
        font-weight: normal
    }
    .conversionblock--unavailable .messagebox--unavailable {
        margin-top: .625rem;
        padding: .5rem .625rem .5625rem;
        font-size: .9375rem
    }
    .messagebox--bar {
        cursor: auto
    }
    .enquiryform textarea, .enquiryform input:not([type=checkbox]) {
        font-size: inherit
    }
    .enquiryform__header {
        padding-left: 8.4375rem
    }
    .enquiryform__header img {
        left: 1.25rem
    }
    .enquiryform__notes {
        padding: 0 1.25rem .625rem
    }
    .enquiryform__notes div.messagebox:before, .enquiryform__notes div.messagebox:after {
        display: block
    }
    .enquiryform__notes__extra {
        text-align: center;
        padding: .5rem .625rem .5625rem;
        margin: 1.25rem -1.25rem -1.25rem
    }
    .enquiryform__verification {
        padding: 1.5625rem 3.75rem 1.875rem
    }
    .enquiryform--new .enquiryform__verification {
        padding: 0
    }
    .enquiryform__verification.ready {
        padding: 1.875rem 0 1.875rem
    }
    .enquiryform__verification>fieldset:first-child {
        margin-top: 0
    }
    .enquiryform__verification>fieldset>div#email_verification_code {
        width: 25rem
    }
    .enquiryform__verification>fieldset>div#email_verification_code form {
        text-align: left
    }
    .enquiryform__verification>fieldset>div#email_verification_code input[name=email_verification_code] {
        text-align: left;
        width: 18.125rem;
        min-width: 18.125rem
    }
    .enquiryform__verification>fieldset #verify-email {
        margin-top: 0;
        margin-left: .625rem
    }
    .enquiryform__verification div.intro {
        margin: 1.875rem 0 1.875rem
    }
    .enquiryform__verification-form {
        margin: 0 9.375rem
    }
    a.btn+.enquiryform__verification-resend {
        margin: 0 -0.625rem 0 1.25rem;
        top: .5rem
    }
    .enquiryform #cant-find-email-explanation .steps-container>div.step>span.step {
        width: 85%
    }
    .enquiryform fieldset.personal .error-balloon-container {
        margin-left: 12.5rem
    }
    .enquiryform fieldset.personal input[type=tel]+span.txt--xsmall, .enquiryform fieldset.personal input[type=tel]+.error-balloon-container+span.txt--xsmall {
        margin-left: 13.125rem
    }
    .enquiryform fieldset>div .country_autocomplete {
        margin-left: 12.5rem;
        position: relative;
        width: 25rem
    }
    .enquiryform fieldset>div .numberinput_enhanced+span {
        display: inline;
        margin-left: 7.5rem
    }
    .enquiryform fieldset>div .fixeddates .fixeddates__headingrow {
        padding: .625rem 0
    }
    .enquiryform fieldset>div .fixeddates .fixeddates__headingrow div:nth-child(3).with-sub {
        line-height: .75rem
    }
    .enquiryform fieldset>div .fixeddates .fixeddates__headingrow div:nth-child(3).with-sub i {
        font-weight: normal
    }
    .enquiryform fieldset .tourtypes label span em {
        display: inline;
        margin-left: 1.875rem;
        margin-top: 0
    }
    .enquiryform fieldset #interest_countries div {
        width: 33.3%;
        float: left
    }
    .enquiryform fieldset .costindication h5 {
        margin-left: 1.25rem
    }
    .enquiryform__footer div#email-address-check #email-check {
        font-size: 1.5rem
    }
    div.enquiry-count-warning {
        padding: 1.25rem
    }
    .titlebar--enquiryform .container, .container.container--enquiryform {
        max-width: 51.25rem
    }
    .animals.with-box {
        margin-top: .3125rem;
        margin-bottom: 0
    }
    .animals.with-box .animal {
        width: auto;
        margin-bottom: 1.25rem
    }
    .animals.with-box .animal:nth-child(n+14) {
        display: inline-block
    }
    .relatedlinks h3 {
        margin-top: .625rem;
        font-size: 1.25rem
    }
    .relatedlinks__top {
        margin-bottom: 1.875rem
    }
    .relatedlinks__list {
        margin-bottom: 2.1875rem
    }
    .relatedlinks__list li {
        width: 50%;
        float: left
    }
    .relatedlinks__list.flex {
        padding-right: 0
    }
    .relatedlinks__list.flex .relatedlinks__list-item {
        padding-right: .625rem !important
    }
    .relatedlinks__mark {
        top: -3rem
    }
    .directory-content {
        padding: 6.25rem 0 3.125rem
    }
    .directory-content h1 {
        font-size: 2.125rem;
        line-height: 2.5rem
    }
    .directory-content .box {
        border: 1px solid rgba(0, 0, 0, .18);
        margin-top: .875rem;
        margin-bottom: .875rem
    }
    .directory-content .box .expert {
        border-bottom: 1px solid rgba(0, 0, 0, .18);
        padding: 1.25rem 1.875rem;
        background-color: #fbfbfb;
        grid-column-gap: .9375rem
    }
    .directory-content .box .expert .expert__photo--medium span:before, .directory-content .box .expert .expert__photo--medium span:after {
        background-color: #fbfbfb
    }
    .directory-content .box .question {
        margin-bottom: 1.25rem
    }
    .directory-content .box .question a {
        display: inline-block;
        padding-left: 1.25rem;
        position: relative
    }
    .directory-content .box .question a span {
        position: absolute;
        left: 0
    }
    .directory-content .box .questions-links {
        padding: 1.25rem 1.875rem
    }
    .directory-content .questions {
        margin-top: 2.1875rem;
        padding-left: 3.75rem
    }
    .directory-content .questions h2 {
        font-size: 1.25rem;
        line-height: 1.5rem;
        margin-bottom: .9375rem
    }
    .directory-content .questions:before, .directory-content .questions .line {
        left: 1.375rem
    }
    .directory-content .questions p {
        margin-bottom: 1.5625rem
    }
    .directory-content .questions .question {
        margin-bottom: 3.125rem
    }
    .directory-content .questions span {
        width: 2.5rem;
        height: 2.5rem;
        top: -0.5rem;
        left: -3.5625rem;
        font-size: 1.5rem;
        line-height: 2.5rem
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .directory-content .box .expert {
        grid-column-gap: 1.5rem
    }
    .directory-content .box .expert__photo {
        top: .3125rem
    }
    .directory-content .box .questions-links {
        padding-left: 3.625rem
    }
}
@media(min-width: 744px) {
    .directory-reviews {
        padding-top: 4.375rem;
        padding-bottom: 4.375rem
    }
    .directory-reviews h2 {
        font-size: 2.125rem;
        line-height: 2.375rem
    }
    .directory-reviews h2+.reviews {
        display: inline-block;
        top: -0.1875rem;
        margin-bottom: 0
    }
    .directory-reviews .btn {
        margin-top: 3.125rem
    }
    .directory-reviews .all-btn {
        padding-bottom: 1.5625rem
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .directory-reviews .all-btn {
        padding-bottom: 2.8125rem;
        text-align: center
    }
}
@media(min-width: 744px) {
    .conversionblock__price.price {
        padding-top: .25rem;
        margin-bottom: .5rem
    }
    .conversionblock__price b, .conversionblock__priceamount {
        font-size: 1.75rem
    }
    .conversionblock__price.smaller {
        font-size: 1rem
    }
    .conversionblock__price.smaller b {
        font-size: 1.375rem
    }
    .conversionblock__messagebox {
        padding: .4375rem .625rem
    }
    .conversionblock__comparabletours {
        margin-left: -1.25rem;
        margin-right: -1.25rem;
        padding: 0 1.25rem .9375rem;
        position: relative;
        margin-top: .3125rem;
        border-top: .0625rem solid #d9d9d9
    }
    .conversionblock__comparabletours:before, .conversionblock__comparabletours:after {
        content: "";
        position: absolute;
        left: 2.5rem;
        top: 0;
        width: 0;
        height: 0;
        border-left: 0 solid rgba(0, 0, 0, 0);
        border-right: 1.5625rem solid rgba(0, 0, 0, 0)
    }
    .conversionblock__comparabletours:before {
        border-top: 1.125rem solid #d9d9d9
    }
    .conversionblock__comparabletours:after {
        border-top: 1.125rem solid #fff;
        transform-origin: top left;
        transform: translate(0.0625rem, -0.0625rem) scale(0.95)
    }
    .conversionblock__comparabletours h3 {
        padding-top: 1.875rem;
        font-size: 1.5rem
    }
    .conversionblock .related-item {
        padding: .9375rem 0;
        border-bottom: 1px solid #d9d9d9
    }
    .conversionblock .related-item:after {
        content: "";
        display: table;
        clear: both
    }
    .conversionblock .related {
        margin-bottom: 1.25rem
    }
    .banner {
        padding: .625rem .625rem 0
    }
}
@media(min-width: 744px)and (min-width: 889px) {
    .banner__image {
        padding: 0 0 14.41% 0
    }
}
@media(min-width: 744px) {
    .accordion--chevrons {
        padding: 0;
        border-left: 1px solid #d9d9d9;
        border-right: 1px solid #d9d9d9
    }
    .accordion--chevrons .accordion__key {
        margin: 0;
        padding: .9375rem 2.8125rem .9375rem 1.5625rem
    }
    .accordion--chevrons .accordion__key:after {
        right: 1.5625rem
    }
    .accordion--chevrons .accordion__value {
        padding: 0 1.5625rem
    }
    .accordion--chevrons .accordion__item[data-state=open] .accordion__key:after {
        right: 1.5625rem
    }
    .accordion.container__unpad .accordion__item {
        padding-left: 0 !important
    }
    .accordion.container__unpad .accordion__item .accordion__key, .accordion.container__unpad .accordion__item .accordion__value {
        padding-left: 2.1875rem !important
    }
    .gallery__preview--row {
        padding-top: .6875rem;
        margin-bottom: -4px
    }
    .gallery__preview--row a {
        width: 25%
    }
    .gallery__preview--row a div:before {
        padding-top: 58.25%
    }
    .gallery__preview--row a:nth-child(3) div:before {
        background: rgba(0, 0, 0, 0)
    }
    .gallery__preview--row a:nth-child(3) span {
        display: none
    }
    .gallery__preview--row a:nth-child(3) img {
        opacity: 1
    }
    .gallery__preview--row a:nth-child(4), .gallery__preview--row a:nth-child(5) {
        display: block
    }
    .table--besttime tbody {
        display: grid;
        grid-auto-flow: column;
        grid-template-columns: 1fr 2fr 2fr;
        grid-template-rows: repeat(4, auto);
        border-left: 1px solid #d9d9d9 !important;
        border-top: 1px solid #d9d9d9 !important
    }
    .table--besttime tbody:before {
        content: "";
        border-right: 1px solid #d9d9d9 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        background-color: #f9f9f9 !important
    }
    .table--besttime th, .table--besttime td {
        display: block;
        padding: .8125rem 1.25rem .625rem !important;
        height: 100%;
        border-top: 0 !important;
        border-left: 0 !important
    }
    .table__heading {
        border: 1px solid #d9d9d9 !important;
        background-color: #f9f9f9 !important
    }
    .table__heading-txt {
        margin: 0 !important
    }
    .table__heading-txt:after {
        content: none
    }
    .table__head-icon .sbi {
        flex: 0 0 1.875rem
    }
    .table__head-icon .sbi--best-time {
        flex: 0 0 1.5625rem
    }
    .detail__title__block {
        margin-left: .625rem;
        margin-right: .625rem
    }
    .detail__title__block .btn--orange {
        position: relative;
        top: 1.125rem;
        right: -0.625rem
    }
    .detail__content__block {
        padding-left: .625rem;
        padding-right: .625rem
    }
    .detail__content__block .intro {
        margin-bottom: 2.1875rem
    }
    .detail__content__block .col-t-7, .detail__content__block .col-d-7, .detail__content__block .col-t-9, .detail__content__block .col-d-9 {
        padding-right: 1.25rem
    }
    .detail__content__block .col-t-6:nth-child(even) {
        padding-left: .625rem;
        padding-right: .625rem
    }
    .detail__content__block .col-t-6:nth-child(odd) {
        padding-left: .625rem;
        padding-right: .625rem
    }
    .detail__content__block .col-t-5, .detail__content__block .col-d-5, .detail__content__block .col-t-3, .detail__content__block .col-d-3 {
        padding-right: 0
    }
    .detail__content__block .col-12.fullwidth {
        margin-left: 0;
        margin-right: 0
    }
    .detail__content__block .col-12>p.indent-t {
        padding-left: 1.25rem
    }
    .detail__content__block .col-12>p.indent15-t {
        padding-left: .9375rem
    }
    .detail__content__block--wildlife .intro {
        margin-bottom: 1.25rem
    }
    .detail__content__block--author {
        padding-top: 0;
        padding-bottom: 0;
        top: -0.4375rem
    }
    .detail__content__block--author .author-content {
        margin-right: 0
    }
    .detail__content__block--author-line .author-content:before {
        left: 8.75rem
    }
    .detail__content__block .notable-birds-items>div {
        float: left;
        display: inline-block;
        width: 20%;
        margin: 0;
        padding: 0 1.5%
    }
    .detail__content__block .notable-birds-items>div img {
        width: 100%
    }
    .detail__content__block .notable-birds-items>div:hover:before, .detail__content__block .notable-birds-items>div:hover:after {
        padding-top: 85%
    }
    .detail__content__block .notable-birds-items>div:hover:before {
        width: 85%
    }
    .detail__content__block ul.list--icon.list--withflags span {
        display: inline-block
    }
    .detail__content__block .detail__numbers {
        margin-bottom: .625rem
    }
    .detail__content__block .detail__numbers .col-12 {
        padding-left: 2.5rem !important
    }
    .detail__content__block .detail__numbers .col-12 .detail__numbers__icon {
        width: 1.875rem
    }
    .detail__content__block .detail__numbers .col-12 .detail__numbers__icon.sbi--best-time {
        width: 1.75rem
    }
    .detail__content__block .subtype-reviews .review-summary {
        width: 50%;
        padding-left: 0
    }
    .detail__content__block .countryoutline svg, .detail__content__block .countryoutline img {
        margin: 0 7%;
        width: 86%
    }
    .detail__content__block .park-list--legend__item {
        display: inline-block;
        margin-bottom: 0;
        padding-top: .3125rem
    }
    .detail__content__block .park-list--alphabet {
        margin-top: 1.5625rem
    }
    .detail__content__block .park-list--alphabet>li {
        display: block;
        position: relative;
        margin-bottom: 1.5625rem;
        box-shadow: 0 0 .1875rem rgba(0, 0, 0, .18)
    }
    .detail__content__block .park-list--alphabet>li:after {
        content: "";
        display: table;
        clear: both
    }
    .detail__content__block .park-list--alphabet>li:hover {
        box-shadow: 0 0 .625rem #999
    }
    .detail__content__block .park-list--alphabet>li:before {
        display: none
    }
    .detail__content__block .park-list--alphabet>li picture {
        display: block;
        width: 11rem;
        height: 6.875rem;
        background-color: #f2f2f2;
        float: left;
        margin-right: 1.25rem;
        overflow: hidden
    }
    .detail__content__block .park-list--alphabet>li picture img {
        height: 100%;
        max-width: none;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        left: 50%;
        position: relative
    }
    .detail__content__block .park-list--alphabet>li>p {
        position: relative;
        display: inherit;
        bottom: auto;
        left: auto;
        text-decoration: none;
        padding-left: 0
    }
    .detail__content__block .park-list--alphabet>li>p a.serif {
        display: inline-block;
        font-weight: 600;
        font-size: 1.375rem;
        margin-top: .625rem;
        margin-bottom: .25rem;
        color: #0378a0;
        text-decoration: none;
        width: auto;
        height: auto;
        padding-bottom: 0
    }
    .detail__content__block .park-list--alphabet>li>p a.serif:hover {
        text-decoration: underline
    }
    .detail__content__block .park-list--alphabet>li .review-summary--oneline {
        position: relative;
        left: auto;
        color: #444;
        display: block;
        margin-top: 0;
        margin-bottom: .25rem
    }
    .detail__content__block .park-list--alphabet>li .review-summary--oneline em {
        color: #444
    }
    .detail__content__block .park-list--alphabet>li ul {
        display: none
    }
    .detail__content__block .park-list--alphabet>li p {
        padding-top: .125rem;
        padding-bottom: .1875rem
    }
    .detail__content__block .park-list--alphabet>li .park__ensign {
        right: auto;
        left: .9375rem;
        top: -0.125rem
    }
    .detail__content__block .park-list__icon {
        display: inline;
        position: relative;
        top: .125rem;
        margin-left: -0.15625rem;
        white-space: nowrap
    }
    .detail__content__block .besttime-blocks .col-2 {
        line-height: 3.25rem
    }
    .detail__content__block .besttime-blocks .col-2:nth-child(-n+6) {
        margin-bottom: 0
    }
    #overview-tab .park__content__block .gallery__preview div:before {
        padding-top: 50%
    }
    #overview-tab .park__content__block .parkmap-holder {
        position: relative
    }
    #overview-tab .park__content__block .parkmap-holder .map-africa-svg {
        width: 46%;
        position: relative;
        left: -10px
    }
    #overview-tab .park__content__block .parkmap-holder .map-park-svg {
        position: absolute;
        width: 58%;
        top: 0;
        right: 10px;
        left: auto
    }
    #overview-tab .country__content__block .countrymap-holder {
        position: relative
    }
    #overview-tab .country__content__block .countrymap-holder .map-africa-svg {
        width: 46%;
        position: relative;
        left: -10px
    }
    #overview-tab .country__content__block .countrymap-holder .map-park-svg {
        position: absolute;
        width: 58%;
        top: 0;
        right: 10px;
        left: auto
    }
    .parkcountry__tourpromo .list--tours li {
        width: 50%
    }
    .parkcountry__tourpromo .list--tours li:nth-child(3) {
        display: none
    }
    .parkcountry__tourpromo .button-holder {
        width: 50%
    }
    .operator__header {
        overflow: hidden;
        min-height: inherit;
        margin: 0 1.5625rem 1.25rem
    }
    .operator__header .bg-img {
        width: 102%;
        margin-left: -1%;
        overflow: hidden;
        -webkit-filter: blur(4px);
        filter: blur(4px)
    }
    .operator__header>.row {
        position: relative
    }
    .operator__header>img, .operator__header>picture img {
        float: none;
        position: absolute;
        left: 0;
        top: -50%;
        z-index: 1
    }
    .operator__header:before {
        content: "";
        width: 100%;
        height: 100%;
        background-color: #000;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        opacity: .75
    }
    .operator__header .logo-block {
        text-align: center;
        position: relative;
        padding-right: 1.25rem
    }
    .operator__header .logo-block div {
        display: inline-block;
        background-color: #fff;
        padding: .9375rem 2.0625rem;
        border-radius: .3125rem;
        margin-bottom: .9375rem;
        margin-top: 1.875rem;
        height: 5rem;
        width: 100%;
        position: relative
    }
    .operator__header .logo-block div img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        width: 7.5rem;
        max-height: 4.6875rem
    }
    .operator__header .logo-block .btn {
        margin: 0;
        width: 100%;
        padding-left: 0;
        padding-right: 0
    }
    .operator__header .logo-block--withoutlogo {
        padding-top: 2.1875rem
    }
    .operator__header .logo-block p {
        color: #fff;
        width: 100%;
        margin: .625rem auto 0;
        text-align: left;
        display: inline-block;
        font-size: .8125rem;
        padding-left: .625rem;
        line-height: .9375rem;
        position: relative
    }
    .operator__header .logo-block p i {
        display: none
    }
    .operator__header .logo-block p a {
        color: #fff;
        text-decoration: underline
    }
    .operator__header .logo-block p a:hover {
        text-decoration: none !important
    }
    .operator__header .logo-block p:before {
        content: "›";
        display: inline-block;
        color: #fff;
        position: absolute;
        top: -0.0625rem;
        left: 0
    }
    .operator__header .operator-data {
        color: #fff;
        padding-top: 1.875rem;
        position: relative
    }
    .operator__header .operator-data.col-t-8-5 {
        padding-left: 1.25rem
    }
    .operator__header .operator-data h1 {
        padding: 0;
        display: inline;
        background: none;
        font-size: 2.125rem;
        margin-right: .625rem
    }
    .operator__header .operator-data h1.with-save-btn {
        display: block;
        line-height: 2rem;
        padding-right: 2.8125rem
    }
    .operator__header .operator-data .favorite-save+.op-reviews {
        display: block
    }
    .operator__header .operator-data a {
        color: #fff;
        text-decoration: underline
    }
    .operator__header .operator-data a:hover {
        text-decoration: none
    }
    .operator__header .operator-data dl {
        margin-top: 1.25rem
    }
    .operator__header .operator-data dl dt {
        width: 22%
    }
    .operator__header .operator-data dl dd {
        width: 78%
    }
    .operator__header .operator-data dl dd.destinations .country-with-flag.small {
        margin-right: .625rem
    }
    .operator__header .operator-data dl dd.destinations .country-with-flag.small span {
        color: #fff
    }
    .operator__header .operator-data dl dd .help {
        display: inline-block;
        line-height: 1rem;
        border-bottom: 1px dotted #fff
    }
    .operator__header--noimage .bg-img {
        height: auto;
        padding-bottom: 0
    }
    .operator__content .picture-frame {
        margin-top: 1.25rem;
        position: relative;
        left: -0.9375rem;
        transform: rotate(-2deg);
        box-shadow: 0 .125rem .1875rem rgba(0, 0, 0, .18)
    }
    .operator__content .tours-tab .list--tours {
        padding: .625rem .625rem 1.875rem
    }
    .operator__content .profile-tab .profile-desc {
        max-width: 45.625rem
    }
    .operator__content .contact-tab .detail__content__block {
        padding-bottom: 1.5625rem
    }
    .operator__content .contact-tab .detail__content__block:last-child {
        padding-bottom: 0
    }
    .operator__content .contact-tab .detail__content__block--addressblock {
        padding-bottom: 0
    }
    .operator_disclaimer {
        padding: 0 .625rem
    }
    .container--home:before {
        content: "";
        display: block;
        padding-top: 60%;
        pointer-events: none
    }
    .container--home:after {
        background-color: rgba(0, 0, 0, .25)
    }
    .container--home>.img-holder {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden
    }
    .container--home>.img-holder img {
        position: absolute;
        height: 100.5%;
        width: auto;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%)
    }
    .container--home.container--tourpref-directory {
        max-height: 11.25rem !important
    }
    .container--home.container--tourpref-directory:after {
        background-color: rgba(0, 0, 0, .45)
    }
    .container--home.container--tourpref-directory>.img-holder img {
        width: 100%;
        height: auto
    }
    .container--home.container--tourpref-directory .opener {
        margin-top: -2.375rem
    }
    .container--home .opener {
        position: absolute;
        top: 50%;
        margin-top: -7.125rem;
        margin-bottom: 0;
        padding: 0
    }
    .container--home .opener h1 {
        font-size: 2.375rem;
        line-height: 2.375rem;
        padding-bottom: .625rem
    }
    .container--home .opener h2 {
        font-size: 1.5rem;
        padding-bottom: 1.125rem;
        line-height: 1.25rem
    }
    .container--home .opener form {
        padding: .8125rem;
        background-color: rgba(0, 0, 0, .45);
        height: 4.75rem;
        margin: 0 .75rem;
        border-radius: 0 .625rem .625rem 0
    }
}
@media(min-width: 744px)and (min-width: 769px) {
    .container--home .opener {
        margin-top: -6rem
    }
    .container--home .opener h1 {
        font-size: 2.6875rem
    }
}
@media(min-width: 744px) {
    .container--home-numbers {
        display: block
    }
    .container--home__heading {
        margin-bottom: 1.4375rem
    }
    .container--home-recent {
        margin-bottom: 0
    }
    .container--home-recent .list__item {
        margin-bottom: 0
    }
    .container--home-recent .list--recent-tours .row {
        flex-flow: row
    }
    .container--home-recent .list--recent-tours .recent-col {
        margin-top: 0
    }
    .container--home-recent .list--recent-tours .recent-col:nth-child(2) {
        border-left: 0
    }
    .container--home-recent .list--recent-tours .recent-col:nth-child(3) {
        display: none;
        border-left: 0
    }
    .container--home-toprated {
        padding-top: 0;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
    }
    .container--home-toprated__list {
        padding: 0 !important
    }
    .container--home-toprated__list ul {
        background-color: #fff
    }
    .container--home-toprated__list ul li {
        line-height: 3rem;
        border-top: 1px solid #fff;
        cursor: pointer;
        position: relative;
        border-top: 1px solid #e2e1e1;
        transition: background .2s ease-in-out, opacity .2s ease-in-out;
        padding-left: .9375rem;
        color: #444
    }
    .container--home-toprated__list ul li:last-child {
        border-bottom: 1px solid #fff;
        line-height: 2.9375rem
    }
    .container--home-toprated__list ul li span {
        margin-right: .3125rem
    }
    .container--home-toprated__list ul li b {
        color: #0378a0;
        text-decoration: underline rgba(0, 0, 0, 0);
        transition: text-decoration .2s ease-in-out
    }
    .container--home-toprated__list ul li:before {
        display: block;
        content: "";
        width: 0;
        height: 0;
        border-top: 10px solid rgba(0, 0, 0, 0);
        border-bottom: 10px solid rgba(0, 0, 0, 0);
        border-left: 10px solid #f8f8f8;
        position: absolute;
        top: .875rem;
        right: .3125rem;
        opacity: 0;
        z-index: 3
    }
    .container--home-toprated__list ul li:hover {
        background-color: #f8f8f8
    }
    .container--home-toprated__list ul li:hover b {
        text-decoration: underline
    }
    .container--home-toprated__list ul li.active {
        background-color: #f8f8f8;
        border-color: #e2e1e1
    }
    .container--home-toprated__list ul li.active:last-child {
        border-bottom: 1px solid #e2e1e1
    }
    .container--home-toprated__list ul li.active:before {
        opacity: 1
    }
    .container--home-toprated__content {
        background-color: #666;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        margin-right: .625rem;
        overflow: hidden;
        min-height: 6.25rem
    }
    .container--home-toprated__content h3 a {
        margin-left: 0
    }
    .container--home-toprated__info {
        position: absolute
    }
    .container--home-toprated__info__bg {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: visible;
        z-index: 2
    }
    .container--home-toprated__info__bg:before {
        display: none
    }
    .container--home-toprated__info__bg img {
        width: auto;
        max-width: none;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 1
    }
    .container--home-toprated__info__content {
        z-index: 2;
        position: absolute;
        padding: .625rem .625rem .625rem 1.5625rem;
        color: #fff;
        min-height: 100%;
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 60%, rgba(0, 0, 0, 0.9) 100%)
    }
    .container--home-toprated__info__content ul, .container--home-toprated__info__content p {
        margin: 0;
        font-size: .875rem;
        line-height: 1.125rem
    }
    .container--home-toprated__info__content:before {
        display: none
    }
    .container--home-toprated__info__content div {
        display: inline-block
    }
    .container--home-toprated__info__content h3 {
        display: inline-block;
        width: auto;
        margin-right: .75rem;
        padding-top: 0;
        padding-bottom: 0
    }
    .container--home-toprated__info__content h3 a {
        position: relative;
        top: 0;
        left: 0;
        line-height: 0;
        padding-left: 0;
        width: 100%
    }
    .container--home-toprated__info__content h3 a i {
        display: none
    }
    .container--home-toprated__info__content h3:before, .container--home-toprated__info__content h3:after {
        display: none
    }
    .container--home-toprated__info__content .nr-of {
        padding-bottom: .625rem;
        position: relative;
        top: -0.625rem
    }
    .container--home-toprated__info__content__extrapaddingtablet {
        padding-right: 8.125rem
    }
    .container--home-toprated__info__content ul {
        margin-top: 1.25rem;
        margin-bottom: 1.5625rem
    }
    .container--home-toprated__info__content ul li {
        display: inline-block;
        color: #ccc;
        margin: 0;
        padding-left: 2.5rem;
        padding-right: 1.25rem;
        line-height: .9375rem;
        font-size: .8125rem
    }
    .container--home-toprated__info__content ul li b {
        display: block;
        font-weight: bold;
        color: #fff;
        position: relative;
        margin-bottom: .125rem;
        font-size: .875rem
    }
    .container--home-toprated__info__content ul li b span {
        color: #fff;
        font-weight: bold
    }
    .container--home-toprated__info__content ul li b span.sub {
        color: #ccc;
        font-weight: normal
    }
    .container--home-toprated__info__content ul li i {
        position: absolute;
        top: 0;
        left: 0;
        width: 1.875rem
    }
    .container--home-toprated__info__content ul li:nth-child(3) i {
        width: 2.0625rem
    }
    .container--home-toprated__info__content p a, .container--home-toprated__info__content .review-summary--oneline a {
        color: #fff;
        text-decoration: underline
    }
    .container--home-toprated__info__content p em, .container--home-toprated__info__content .review-summary--oneline em {
        color: #fff
    }
    .container--home-toprated__info__content p a {
        white-space: nowrap
    }
    .container--home-toprated__info__content a[href="#"] {
        color: #fff
    }
    .container--home-toprated__info__content .toprated-sign {
        width: 4.9375rem;
        right: 1.875rem;
        top: 4.375rem
    }
    .container--home-trendingtours, .container--home-recent {
        padding-top: 2.5rem;
        padding-bottom: 0
    }
    .container--home-trendingtours .list--tours, .container--home-recent .list--tours {
        margin-top: 0
    }
    .container--home-trendingtours .list--tours .col:nth-child(odd), .container--home-recent .list--tours .col:nth-child(odd) {
        padding-right: .3125rem !important
    }
    .container--home-trendingtours .list--tours .col:nth-child(even), .container--home-recent .list--tours .col:nth-child(even) {
        padding-left: .3125rem !important
    }
    .container--home-topratedoperators {
        padding-top: 2.5rem;
        padding-bottom: 0
    }
    .container--home-topratedoperators .topratedoperators__snippet__rank {
        left: .625rem
    }
    .container--home-topratedoperators .topratedoperators__snippet__body div.reviews {
        padding-top: .625rem
    }
    .container--home-blog .list--posts {
        margin-top: 0
    }
    .container--home-blog .list--posts .col:nth-child(odd) {
        padding-left: 0;
        padding-right: .3125rem
    }
    .container--home-blog .list--posts .col:nth-child(even) {
        padding-right: 0;
        padding-left: .3125rem
    }
    .container--tourpref-directory+.container--home-numbers:not(.hide)+.container--directory {
        border-top: 15px solid #fff
    }
}
@media(min-width: 744px)and (hover: hover) {
    .container--home-toprated__info__content h3 a:hover, .container--home-toprated__info__content p a:hover, .container--home-toprated__info__content .review-summary--oneline a:hover {
        text-decoration: none !important
    }
}
@media(min-width: 744px) {
    .park__ensign {
        left: auto;
        right: 1.5625rem
    }
    .park__content__block__inprogress>div {
        padding-right: 12.5rem
    }
    .park__content__block__inprogress>div .coming-soon {
        top: 1.75rem;
        right: 3.125rem
    }
    .signup__content {
        padding: 1.5625rem 1.875rem
    }
    h2.signup__heading {
        font-size: 2.125rem;
        line-height: 2.375rem
    }
    h2.signup__heading i {
        top: .125rem
    }
    h2.signup__heading.serif {
        margin-bottom: -0.0625rem
    }
    .drawer h2.signup__heading.serif {
        margin-bottom: 1.25rem
    }
    .signup__heading-extra {
        padding-left: 1.875rem;
        text-align: right
    }
    .signup__heading-extratext {
        display: inline-block;
        text-align: left;
        padding-right: 6.25rem;
        position: relative;
        top: .9375rem
    }
    .signup__heading-link {
        display: inline;
        position: relative;
        top: auto;
        right: auto;
        color: #0378a0
    }
    .signup__heading-image {
        display: block;
        position: absolute;
        bottom: -0.375rem;
        right: .625rem;
        height: 5rem
    }
    .signup__form {
        padding: .625rem 0 !important
    }
    .signup__form[data-state=invisible] {
        height: 0;
        padding: 0 !important
    }
    .tour__header:before {
        padding-top: 31.25%;
        background-color: #f2f2f2;
        background: rgba(0, 0, 0, .4);
        background: linear-gradient(to right, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 45%, rgba(0, 0, 0, 0) 80%)
    }
    .tour__header h1 {
        font-size: 2.25rem;
        line-height: 2.5rem;
        padding-top: 0;
        padding-left: .9375rem;
        background: none;
        bottom: .9375rem;
        max-width: 50%;
        z-index: 5
    }
    .tour__header img {
        top: -45%
    }
    .tour__head__container {
        top: -1.5625rem
    }
    .tour__head__container .btn--reqquote {
        padding: 0;
        font-size: 1.0625rem
    }
    .tour__head__container .btn--reqquote.sticky {
        position: fixed;
        right: .3125rem;
        top: .1875rem;
        z-index: 40;
        height: 1.875rem;
        line-height: 1.75rem
    }
}
@media(min-width: 744px)and (max-width: 969px) {
    .tour__head__container .btn--reqquote.sticky {
        font-size: .9375rem;
        width: 10.3125rem
    }
}
@media(min-width: 744px) {
    .tour__head__container div.buttondiv {
        width: 21.5625rem;
        margin-top: .9375rem;
        margin-bottom: .625rem;
        padding-right: 1.25rem
    }
    .tour__head__container div.buttondiv .btn--reqquote {
        margin-bottom: .625rem
    }
    .tour__head__container div.pricediv {
        width: calc(100% - 345px);
        margin-top: .9375rem;
        margin-bottom: .625rem
    }
    .tour__head__container div.pricediv .txt--xsmall {
        margin-bottom: .4375rem
    }
    .tour__head__container div.pricediv>* {
        margin-left: .9375rem
    }
    .tour__head__container p.price {
        font-size: 1rem;
        padding-top: .5rem
    }
    .tour__head__container p.price b {
        font-size: 1.375rem
    }
    .tour__head__container p.price a {
        color: #2a7018
    }
    .tour__content__tabs {
        margin-top: 0
    }
    .tour__content.sticky {
        padding-top: 2.625rem !important
    }
    .tour__content div[role=tabpanel] {
        padding-bottom: 1.5625rem
    }
    .tour__content__block--activities ul li, .tour__content__block--gettingthere ul li {
        padding: .875rem .9375rem .875rem 3.75rem
    }
    .tour__content__block--activities ul li>span, .tour__content__block--gettingthere ul li>span {
        position: relative
    }
    .tour__content__block--activities ul li>div, .tour__content__block--gettingthere ul li>div {
        height: 3.125rem;
        top: 50%;
        left: 0;
        transform: translateY(-50%)
    }
    .tour__content__block--activities ul li>div picture, .tour__content__block--gettingthere ul li>div picture {
        top: 50%;
        transform: scale(0.75) translateX(-65%) translateY(-60%)
    }
    .tour__content__block--activities ul li>div picture img, .tour__content__block--gettingthere ul li>div picture img {
        float: none
    }
    .tour__content__block--operator h4 {
        margin-top: 1.875rem;
        margin-bottom: .75rem;
        font-size: 1.125rem
    }
    .tour__content__block--operator h4 span.grey {
        display: inline;
        top: 0;
        margin-left: -0.3125rem
    }
    .tour__content__block--operator h4 span.number {
        margin-right: .9375rem
    }
}
@media(min-width: 744px)and (max-width: 840px) {
    .tour__content.sticky .tabs a[role=tab] {
        padding-left: .5rem;
        padding-right: .5rem;
        font-size: .8125rem
    }
}
@media(min-width: 744px)and (min-width: 841px)and (max-width: 910px) {
    .tour__content.sticky .tabs a[role=tab] {
        padding-left: .9375rem;
        padding-right: .9375rem
    }
}
@media(min-width: 744px) {
    .tour__content__block--summary ul {
        width: 47%;
        float: left
    }
    .tour__content__block--summary ul li {
        padding-right: .9375rem
    }
    .tour__content__block--summary .countryoutline {
        width: 50%;
        margin-left: 3%;
        margin-top: .75rem;
        float: left;
        padding-top: 35%
    }
    .tour__content__block--summary .countryoutline--withroutemap {
        padding-top: 0
    }
    .tour__content__block--consider .row {
        margin-top: 1.25rem;
        display: flex;
        flex-wrap: wrap
    }
    .tour__content__block--consider .row div.item {
        padding-right: .625rem;
        width: 50%;
        flex-grow: 1;
        padding-left: 3.75rem
    }
    .tour__content__block--consider .row div.item .svg-box {
        left: .625rem
    }
    .tour__content__block--consider .row div.item:nth-child(1) {
        order: 1
    }
    .tour__content__block--consider .row div.item:nth-child(2) {
        order: 3
    }
    .tour__content__block--consider .row div.item:nth-child(3) {
        order: 5
    }
    .tour__content__block--consider .row div.item:nth-child(4) {
        order: 2;
        padding-right: 0
    }
    .tour__content__block--consider .row div.item:nth-child(5) {
        order: 4;
        padding-right: 0
    }
    .tour__content__block--consider .row div.item:nth-child(6) {
        order: 6;
        padding-right: 0
    }
    .tour__content__block--accommodations ul li>div:nth-child(1) {
        width: 10%;
        position: relative;
        left: auto;
        top: auto
    }
    .tour__content__block--accommodations ul li>div:nth-child(2) {
        width: 55%;
        padding-left: .9375rem
    }
    .tour__content__block--accommodations ul li>div:nth-child(3) {
        width: 35%;
        float: none;
        display: inline-block;
        font-style: normal;
        margin-left: 0;
        padding-left: .9375rem
    }
    .tour__route-map-list {
        display: flex
    }
    .tour__route-map {
        width: 57%;
        margin-top: .75rem !important;
        padding-top: 35%
    }
    .tour__route-map svg {
        width: 100%
    }
    .tour__route-map--withroutemap {
        padding-top: 0;
        margin-bottom: 0
    }
    .tour__route-list {
        width: 43%;
        max-height: none
    }
    .tour__route-list-inner {
        flex: 1 1 0px
    }
    .tour__content__block--daybyday {
        overflow: hidden
    }
    .tour__content__block--daybyday .day {
        margin-top: 1.25rem
    }
    .tour__content__block--daybyday .day+.tour__content__block--daybyday .day {
        margin-top: 2.5rem
    }
    .tour__content__block--daybyday .day__header--photo {
        overflow: hidden
    }
    .tour__content__block--daybyday .day__header--photo:before {
        left: 1.125rem
    }
    .tour__content__block--daybyday .day__header--photo div.caption {
        background: none
    }
    .tour__content__block--daybyday .day__header--photo div.photos.illustration:before {
        padding-top: 15%
    }
    .tour__content__block--daybyday .day__header--photo h3 {
        padding-left: 2.5rem;
        font-size: 1.375rem;
        margin-bottom: .1875rem;
        z-index: 20
    }
    .tour__content__block--daybyday .day__header--photo h3:after {
        width: .5625rem;
        height: .5625rem;
        border-radius: .28125rem;
        left: .875rem;
        top: .375rem;
        z-index: 2
    }
    .tour__content__block--daybyday .day__header--photo h3:before {
        clear: both;
        content: "";
        display: block;
        width: .5625rem;
        height: 0;
        border: 0;
        position: absolute;
        top: .625rem;
        left: 1.5rem;
        z-index: 32;
        border-top: 1px dotted #b3b3b3
    }
    .tour__content__block--daybyday .day__header--photo h3.no-title:after {
        top: .9375rem
    }
    .tour__content__block--daybyday .day__header--photo h3 span {
        position: relative;
        top: -0.125rem
    }
    .tour__content__block--daybyday .day__header--photo h2 {
        padding-left: 1.25rem;
        font-size: 1.25rem !important;
        line-height: 1.25rem;
        font-weight: normal;
        z-index: 4;
        padding-bottom: .1875rem;
        padding-top: .1875rem;
        background-color: rgba(0, 0, 0, 0);
        text-shadow: 1px 1px 5px #000;
        font-family: "Gentium Basic", serif
    }
    .tour__content__block--daybyday .day__header--photo h2.dot:after {
        clear: both;
        content: "";
        display: block;
        width: .5625rem;
        height: .5625rem;
        border-radius: .28125rem;
        background-color: #fff;
        border: 0;
        position: absolute;
        top: .625rem;
        left: .875rem;
        z-index: 11
    }
    .tour__content__block--daybyday .day__header--photo h2 span.txt--small {
        font-size: 70%
    }
    .tour__content__block--daybyday .day__header--photo h2 a {
        color: #fff;
        text-decoration: underline
    }
    .tour__content__block--daybyday .day__header--photo h2 a:hover {
        text-decoration: none
    }
    .tour__content__block--daybyday .day__header--photo h2 {
        padding-left: 2.5rem;
        font-size: 1.5rem !important;
        line-height: 1.5rem;
        padding-top: .3125rem;
        padding-bottom: .9375rem
    }
    .tour__content__block--daybyday .day__header--photo h2 span {
        z-index: 25;
        position: relative;
        padding-right: .9375rem
    }
    .tour__content__block--daybyday .day__header--photo div.caption--photo h2 {
        max-width: 50%
    }
    .tour__content__block--daybyday .day__header--photo div.caption--photo h2:before {
        content: "";
        width: 100%;
        height: 100%;
        border-radius: 1.875rem;
        display: block;
        background-color: #006400;
        position: absolute;
        right: 34.375rem;
        bottom: 0;
        box-shadow: 530px 150px 160px 222px rgba(0, 0, 0, .8);
        z-index: 1
    }
    .tour__content__block--daybyday .day__header--text {
        margin-right: .625rem;
        margin-left: 2.5rem;
        color: #444;
        font-size: 1.375rem;
        padding-bottom: 0
    }
    .tour__content__block--daybyday .day__header--text:before {
        clear: both;
        content: "";
        display: block;
        width: .5625rem;
        height: 0;
        border: 0;
        position: absolute;
        top: 1rem;
        left: -1rem;
        z-index: 32;
        border-top: 1px dotted #b3b3b3
    }
    .tour__content__block--daybyday .day__header--text.startend:before {
        display: none
    }
    .tour__content__block--daybyday .day__header--text:after {
        left: -1.625rem;
        top: .75rem;
        width: .5625rem;
        height: .5625rem;
        border-radius: .28125rem
    }
    .tour__content__block--daybyday .day__header--text .caption {
        position: relative;
        top: -0.125rem
    }
    .tour__content__block--daybyday .day__header--text h3 {
        font-size: 1.375rem;
        margin-bottom: .1875rem;
        z-index: 20
    }
    .tour__content__block--daybyday .day__header--text h3:after {
        left: .875rem;
        top: .375rem;
        z-index: 2
    }
    .tour__content__block--daybyday .day__header--text h3.no-title:after {
        top: .9375rem
    }
    .tour__content__block--daybyday .day__header--text h2 {
        font-size: 1.25rem !important;
        line-height: 1.5rem;
        padding-top: .3125rem;
        padding-bottom: .3125rem;
        font-weight: bold;
        z-index: 4;
        background-color: rgba(0, 0, 0, 0)
    }
    .tour__content__block--daybyday .day__header--text h2:not(.startend) {
        font-size: 1.5rem !important;
        font-weight: normal;
        position: relative;
        top: 1.0625rem;
        padding-top: 0;
        padding-bottom: 0;
        margin-bottom: .3125rem;
        font-family: "Gentium Basic", serif
    }
    .tour__content__block--daybyday .day__header--text h2:not(.startend) span.txt--small {
        font-size: 70%
    }
    .tour__content__block--daybyday .day__header--text h2 span {
        z-index: 25;
        position: relative;
        background-color: #fff
    }
    .tour__content__block--daybyday .day__header--text h2>span {
        padding-right: .625rem
    }
    .tour__content__block--daybyday .day__header--text h2.startend .txt--small {
        font-size: 1rem;
        font-weight: normal
    }
    .tour__content__block--daybyday .day__inner {
        padding: .625rem 2.5rem 0
    }
    .tour__content__block--daybyday .day__inner__block dl:after {
        content: "";
        display: table;
        clear: both
    }
    .tour__content__block--daybyday .day__inner__block dl dt {
        display: inline-block;
        float: left;
        clear: both
    }
    .tour__content__block--daybyday .day__inner__block dl dd {
        padding-left: 9.0625rem;
        display: block
    }
    .tour__content__block--daybyday .day__inner__block .metabox {
        padding-bottom: 1.25rem
    }
    .tour__content__block--daybyday .day .day__header--text+.day__inner {
        padding-top: .9375rem
    }
    .tour__content__block--daybyday .day .day__header--text.startend+.day__inner {
        padding-top: .3125rem
    }
    .tour__content__block--daybyday .day .detail__numbers--wildlife {
        margin-bottom: .625rem
    }
    .tour__content__block--daybyday .day .detail__numbers--wildlife div {
        margin-bottom: .9375rem
    }
    .tour__content__block--daybyday:before {
        left: 1.125rem;
        top: 0;
        padding-bottom: 2.1875rem;
        box-sizing: content-box
    }
    #inclusions-tab .tour__content__block--inclusions li span {
        display: inline
    }
    .tour__content__block--rates .ratestablecurrencies {
        display: inline-block;
        margin-top: -0.1875rem;
        float: right
    }
    .tour__content__block--rates .ratestablecurrencies .select--holder {
        padding: 0;
        border-left: 1.25rem solid #fff;
        position: relative;
        top: -0.125rem;
        margin-top: 0
    }
    .tour__content__block--rates .ratestablecurrencies .select--holder select {
        width: 6.875rem
    }
    .tour__content__block--rates .ratestablecurrencies .select--holder:before {
        right: .875rem
    }
    .countriesparks-list {
        margin: 0 .9375rem
    }
    .countriesparks-list .container--main {
        margin-bottom: 1.25rem;
        padding: 1.5625rem .9375rem
    }
    .countriesparks-list .container--main .video-thumb {
        display: block;
        position: relative;
        box-shadow: 0 0 5px #999;
        max-width: 13.5rem;
        width: 100%;
        transition: box-shadow .25s ease-in-out
    }
    .countriesparks-list .container--main .video-thumb .video-time {
        background-color: #000;
        color: #fff;
        font-size: .6875rem;
        display: inline-block;
        padding: 0 .375rem;
        position: absolute;
        top: 0;
        right: .3125rem;
        z-index: 3
    }
    .countriesparks-list .container--main .video-thumb i.sbi--play-button-large {
        width: 2.5rem;
        color: #fff;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -2.1875rem;
        margin-left: -1.25rem;
        z-index: 3
    }
    .countriesparks-list .container--main .video-thumb span {
        position: absolute;
        width: 100%;
        text-align: center;
        color: #fff;
        font-size: .9375rem;
        top: 50%;
        left: 0;
        margin-top: .625rem;
        z-index: 3;
        text-shadow: 1px 1px 5px #000;
        text-decoration: underline rgba(0, 0, 0, 0);
        transition: text-decoration-color .2s ease-in-out
    }
    .countriesparks-list .container--main .video-thumb:before {
        background-color: rgba(0, 0, 0, .5);
        opacity: .6;
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 0;
        padding-top: 62.5%;
        content: "";
        display: block;
        z-index: 2;
        transition: opacity .2s ease-in-out
    }
    .countriesparks-list .container--main .video-thumb img {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1
    }
    .countriesparks-list .container--main a.video-thumb:hover {
        box-shadow: 0 1px 10px #999;
        transition-duration: .2s
    }
    .countriesparks-list .container--main a.video-thumb:hover:before {
        transition-duration: .25s;
        opacity: 1
    }
    .countriesparks-list .container--main a.video-thumb:hover span {
        text-decoration: underline #fff;
        transition-duration: .25s
    }
    .countriesparks-list .container--main h2 {
        font-size: 1.25rem;
        margin-bottom: .25rem
    }
    .countriesparks-list .container--main .review-summary--oneline {
        display: inline-block;
        margin-left: .1875rem
    }
    .countriesparks-list .container--main .ranktxt {
        margin-right: 1.5625rem;
        margin-bottom: .3125rem;
        display: inline-block
    }
    .countriesparks-list .container--main p {
        margin: .9375rem 0 1.25rem
    }
    .countriesparks-list .container--main .info {
        font-size: .8125rem;
        line-height: 1rem;
        margin-bottom: 1.875rem;
        color: #666
    }
    .countriesparks-list .container--main .info li {
        position: relative;
        padding-left: 1.875rem;
        padding-right: .625rem
    }
    .countriesparks-list .container--main .info i {
        position: absolute;
        top: .1875rem;
        left: 0;
        width: 1.375rem
    }
    .countriesparks-list .container--main .info i.sbi--high-season {
        width: 1.625rem;
        top: .0625rem
    }
    .countriesparks-list .container--main .info b {
        display: block;
        color: #444
    }
    .countriesparks-list .container--main .btn--roundwhite {
        margin-right: .9375rem;
        margin-bottom: 1.25rem
    }
    .countriesparks-list .container--main .btn--roundwhite+.btn--roundwhite {
        margin-right: 0
    }
    .countriesparks-list .container--main .countriesparks-list--parks {
        border-top: 1px solid #d9d9d9;
        margin-top: 1.25rem
    }
    .countriesparks-list .container--main .countriesparks-list--parks li a {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        display: inline-block;
        max-width: 100%
    }
    .countriesparks-list .container--main h4 {
        margin-top: 1.25rem;
        margin-bottom: .625rem
    }
    .countriesparks-list .container--main .list--icon-arrow+a {
        margin-left: 0;
        margin-top: 1.25rem
    }
    .countriesparks-list .container--main .list--icon-arrow li {
        padding-top: .125rem;
        padding-bottom: .0625rem;
        display: inline-block;
        width: 33.333%;
        float: left
    }
    .countriesparks-list .container--main .list--icon-arrow li:before {
        top: .125rem
    }
    .countriesparks-list .container--main i.medal {
        position: relative;
        top: .125rem;
        left: -0.0625rem;
        margin-right: .25rem
    }
    .countriesparks-list .countriesparks-list--content a.wildlife {
        color: #666;
        text-decoration: none;
        position: relative;
        cursor: default
    }
    .countriesparks-list .countriesparks-list--content a.wildlife:before {
        border-bottom: 1px dotted #666;
        position: absolute;
        bottom: .0625rem;
        left: 0;
        width: 100%;
        height: 0;
        display: block;
        content: ""
    }
    .countriesparks-list .countriesparks-list--content a.wildlife:hover {
        text-decoration: none
    }
    .countriesparks-title {
        padding-top: 2.1875rem;
        padding-bottom: 0
    }
    .countriesparks-title h2 {
        font-size: 1.5rem;
        margin-bottom: 1.4375rem
    }
    .favlist__titlebar .messagebox {
        margin: 2.1875rem .9375rem 0;
        padding: .9375rem 1.25rem;
        padding-left: 2.3125rem
    }
    .favlist__titlebar .messagebox i {
        top: 1.0625rem;
        left: .9375rem
    }
    .favlist__auth {
        float: right;
        margin-bottom: 0
    }
    .favlist__tabs {
        margin: 0 1.5625rem
    }
    .favlist__container {
        padding: .9375rem .9375rem 1.875rem
    }
    .favlist__heading {
        line-height: 2.125rem
    }
    .favlist__outdated {
        position: absolute;
        margin-bottom: 0;
        left: 0;
        right: 0;
        top: .9375rem;
        z-index: 10
    }
    .favlist-modal p {
        padding: 1.875rem 1.25rem
    }
    .favlist-modal--delete .favlist-modal__buttons .btn {
        margin-right: 1.25rem;
        width: auto
    }
    .favlist-modal--delete .favlist-modal__buttons label {
        margin-left: .625rem;
        float: right
    }
    .favlist-modal--added .messagebox {
        margin: .625rem 1.25rem 1.875rem;
        padding-top: 1.875rem;
        padding-bottom: 1.875rem
    }
    .favlist-modal--added .favlist-modal__buttons .btn--orange {
        margin-right: .625rem
    }
    .favlist-modal__detail {
        margin: 0 1.25rem 1.25rem
    }
    .favlist-modal__buttons {
        padding: 1.25rem
    }
    .accountmodal__email p {
        margin: 1.25rem 1.25rem
    }
    .accountmodal__email h3 {
        margin: 1.25rem 0
    }
    .accountmodal__email h3 span {
        left: .625rem
    }
    .accountmodal__email h3:before {
        top: 2.5625rem
    }
    .accountmodal__email form {
        margin: .3125rem 1.25rem
    }
    .accountmodal__email form input {
        max-width: 21.875rem;
        margin-bottom: 1.25rem
    }
    .accountmodal__email form .btn {
        width: auto
    }
    .accountmodal__email form .btn+a {
        margin-left: .9375rem;
        position: relative;
        top: 1.125rem;
        margin-bottom: 0;
        display: inline-block
    }
    .accountmodal__email form input[type=submit] {
        margin-bottom: 1.25rem
    }
    .accountmodal__togglepassword {
        margin-left: .9375rem;
        float: none;
        top: .5rem;
        position: absolute
    }
    .accountmodal__confirm {
        display: inline-block !important
    }
    .accountmodal__social .col, .accountmodal__social .col+.col {
        padding: 2.5rem 1.875rem
    }
    .accountmodal__extra .col {
        padding: 1.25rem 1.875rem
    }
}
@media(min-width: 970px) {
    @keyframes fadeIn {
        99% {
            visibility: hidden
        }
        100% {
            visibility: visible
        }
    }
    h1 {
        font-size: 2.375rem;
        line-height: 2.5rem
    }
    .cols-d-3 {
        columns: 3 auto;
        column-fill: balance;
        margin-bottom: 2.5rem
    }
    .cols-d-3+ul {
        position: relative;
        top: -2.5rem
    }
    body {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        min-height: 100vh
    }
    .main {
        flex: 1 0 auto;
        flex-grow: 1;
        max-width: 100vw;
        overflow: visible
    }
    .wrapper {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        flex-basis: 100%;
        min-height: 100vh;
        width: 100%;
        overflow: visible
    }
    .container {
        max-width: 76.875rem
    }
    .container--main--white {
        max-width: 73.75rem;
        margin: 0 auto
    }
    .container--withsidebar>div.row {
        position: relative;
        overflow: hidden
    }
    .container--withsidebar>div.row:before {
        content: "";
        width: 20.8333333333%;
        height: 100%;
        display: block;
        background-color: #f8f8f8;
        box-shadow: -1px 0px 2px rgba(0, 0, 0, .18) inset;
        position: absolute
    }
    body.body-wide .container {
        max-width: 83.125rem
    }
    .container--d-narrow {
        max-width: 50rem
    }
    .container--form {
        padding: .3125rem .9375rem
    }
    .container--form--content {
        max-width: 73.75rem;
        padding-left: 0;
        padding-right: 0;
        margin-top: 2.1875rem
    }
    .container--affiliate {
        max-width: 81.875rem;
        padding-left: .9375rem;
        padding-right: .9375rem;
        margin-top: 0
    }
    .container--hero {
        max-width: none;
        padding: 3.125rem .9375rem 7.5rem
    }
    .container--hero .row {
        max-width: 75rem !important;
        margin: 0 auto
    }
    .container--hero__text {
        font-size: 1rem;
        line-height: 1.625rem
    }
    .show-d {
        display: block !important
    }
    .show-di {
        display: inline-block !important
    }
    .show-dii {
        display: inline !important
    }
    .show-dtr {
        display: table-row !important
    }
    .hide-d {
        display: none !important
    }
    .content-d-noshadow {
        -webkit-box-shadow: none;
        box-shadow: none
    }
}
@media(min-width: 970px)and (hover: hover) {
    .container--hero__textlink:hover {
        text-decoration: none !important
    }
}
@media(min-width: 970px) {
    .col {
        display: block
    }
    .col-d-0-5 {
        width: 4.1666666667%
    }
    .col-d-1 {
        width: 8.3333333333%
    }
    .col-d-1-5 {
        width: 12.5%
    }
    .col-d-2 {
        width: 16.6666666667%
    }
    .col-d-2-5 {
        width: 20.8333333333%
    }
    .col-d-3 {
        width: 25%
    }
    .col-d-3-5 {
        width: 29.1666666667%
    }
    .col-d-4 {
        width: 33.3333333333%
    }
    .col-d-4-5 {
        width: 37.5%
    }
    .col-d-5 {
        width: 41.6666666667%
    }
    .col-d-5-5 {
        width: 45.8333333333%
    }
    .col-d-6 {
        width: 50%
    }
    .col-d-6-5 {
        width: 54.1666666667%
    }
    .col-d-7 {
        width: 58.3333333333%
    }
    .col-d-7-5 {
        width: 62.5%
    }
    .col-d-8 {
        width: 66.6666666667%
    }
    .col-d-8-5 {
        width: 70.8333333333%
    }
    .col-d-9 {
        width: 75%
    }
    .col-d-9-5 {
        width: 79.1666666667%
    }
    .col-d-10 {
        width: 83.3333333333%
    }
    .col-d-11 {
        width: 91.6666666667%
    }
    .col-d-12 {
        width: 100%
    }
    .col.col-d-0 {
        display: none
    }
    .col-d-auto {
        width: auto
    }
    .col-d-split {
        columns: 2;
        column-gap: .75rem
    }
    .row-d-0 {
        display: none
    }
    .row--spaced-l-d {
        margin-bottom: 1.875rem !important
    }
    .no-gutter-d {
        padding-left: 0 !important;
        padding-right: 0 !important
    }
    .push-d-4-5 {
        margin-left: 37.5%
    }
    .header {
        height: 3.4375rem
    }
    .header .nav-tours span, .header .nav-operators span {
        display: inline
    }
    .container__head--main:after {
        display: none
    }
    .container__head--main .header--col-favorite a {
        line-height: 3.4375rem;
        text-align: right
    }
    .container__head--main .header--col-favorite a i {
        top: .25rem;
        margin-right: .625rem
    }
    .container__head--main .header--col-favorite a span {
        top: .625rem;
        margin-left: .8125rem
    }
    .container__head--main .header--col-favorite a span.hide+i {
        margin-right: .3125rem
    }
    .container__head--main .header--col-favorite a em {
        display: inline
    }
    .header__search input[type=search] {
        padding-bottom: .125rem
    }
    .header__search button {
        width: 2.3125rem !important;
        height: 2.3125rem !important
    }
    .header__search:before {
        top: 1.0625rem
    }
    .header__search-submit {
        line-height: normal !important
    }
    .header__fav-link {
        font-size: 0
    }
    .header__fav-desc {
        font-size: .9375rem
    }
    .header__logo {
        width: 15rem;
        height: 2.1875rem;
        margin-top: .5rem
    }
    .row--middle .header__logo {
        transform: translateY(-2px)
    }
    .header__logo img {
        height: 2.1875rem
    }
    .header__logo, .header__logo .a {
        font-size: .9375rem
    }
}
@media(min-width: 970px)and (hover: hover) {
    .header__fav-link:hover {
        text-decoration: none !important
    }
    .header__fav-link:hover .header__fav-desc {
        text-decoration: underline
    }
}
@media(min-width: 970px) {
    .nav-t {
        margin-left: .9375rem
    }
    .nav-t__item:hover .nav-t__sub-list, .nav-t__item:focus .nav-t__sub-list {
        top: 3.4375rem
    }
    .nav-t__link {
        line-height: 3.4375rem
    }
    .nav-t__link:focus+.nav-t__list, .nav-t__item:focus-within .nav-t__list {
        top: 3.4375rem
    }
    .nav-t__sub-list:before {
        left: 3.75rem
    }
    .nav-t__sub-link {
        line-height: 1.625rem
    }
}
@media(min-width: 970px)and (min-width: 1175px) {
    .nav-t {
        margin-left: 0
    }
}
@media(min-width: 970px) {
    .tourtabs a[role=tab] {
        padding-top: .5rem;
        padding-bottom: .75rem
    }
    .tourtabs a[role=tab].active {
        padding-top: .6875rem;
        padding-bottom: .75rem
    }
    .tourtabs:after {
        top: 2.3125rem
    }
    .tabs--steps {
        flex-flow: column nowrap;
        background: rgba(0, 0, 0, 0) !important;
        padding: 10px !important
    }
    .tabs--steps:after {
        width: 1px;
        top: 1px;
        bottom: 0;
        left: .875rem;
        right: auto;
        height: auto
    }
    .tabs--steps .tabs__item {
        margin-bottom: 1.875rem;
        width: auto !important;
        display: block
    }
    .tabs--steps .tabs__item:before {
        content: "";
        position: absolute !important;
        display: block;
        left: -2.5rem;
        top: -1px;
        width: 1.25rem;
        height: 1.25rem;
        font-size: .75rem;
        line-height: 1.125rem;
        border-radius: 50%;
        opacity: 0;
        text-align: center;
        background-color: #fff;
        transform: none;
        transition: opacity .25s ease-in-out
    }
    .tabs--steps .tabs__item[data-complete=true]:before {
        background-size: .625rem
    }
    .tabs--steps .tabs__item[data-state=current]:before {
        transform: none;
        background-size: initial
    }
    .tabs--steps .tabs__item[data-state=current] .tabs__warning {
        display: none !important
    }
    .tabs--steps .tabs__warning {
        display: block !important;
        opacity: 0;
        height: 0;
        transition: opacity .15s ease, height .15s .15s ease
    }
    .tabs--steps .tabs__link {
        font-size: .9375rem;
        margin: 0 0 0 -2.5rem;
        padding: 0 0 0 2.5rem;
        left: auto;
        transform: none;
        color: #0378a0
    }
    .tabs--steps .tabs__item[data-complete=false]:not([data-state=current]) .tabs__link {
        color: #0378a0 !important
    }
    .tabs--steps .tabs__item[data-complete=false]:not([data-state=current]) .tabs__warning {
        opacity: 1;
        height: 2.8125rem;
        transition: height .15s ease, opacity .15s .15s ease
    }
}
@media(min-width: 970px)and (max-width: 1230px) {
    .tabs--steps {
        margin-left: .625rem
    }
}
@media(min-width: 970px)and (min-width: 1231px) {
    .sticky .tourtabs:not(.not-sticky)+.btn--reqquote {
        right: calc(50vw - 36.875rem)
    }
}
@media(min-width: 970px) {
    .titlebar .row:first-child {
        padding: 0 0
    }
    .titlebar .row:first-child>div {
        padding: 1.25rem .625rem
    }
    .titlebar__sub {
        margin-top: .625rem
    }
    .titlebar--park, .titlebar--country {
        padding-bottom: .3125rem
    }
    .titlebar--park .container, .titlebar--country .container {
        display: block
    }
    .titlebar--tour, .titlebar--operators {
        position: relative;
        padding-top: 0
    }
    .titlebar h1 {
        margin: 0 .9375rem
    }
    .titlebar--form__image {
        right: 0;
        height: 6.3125rem
    }
    .titlebar--form__heading__text {
        font-size: 1.125rem;
        line-height: 1.625rem
    }
    .footer {
        font-size: .8125rem;
        line-height: 1.25rem
    }
    .expertbar+.footer {
        padding-bottom: .625rem
    }
    .footer .container {
        margin-bottom: .625rem
    }
    .footer .container:nth-child(1) {
        padding-top: 1.875rem;
        padding-bottom: 0
    }
    .footer .copyright {
        border-top: 1px solid #666;
        text-align: center
    }
    .footer .copyright p {
        display: inline-block;
        padding-bottom: .9375rem
    }
    .footer .copyright img {
        width: 1.5625rem;
        display: inherit;
        position: relative;
        top: .3125rem;
        margin-right: .625rem
    }
    .footer .copyright .container {
        margin-bottom: .625rem
    }
    .footer .copyright--clean {
        border-top: 0
    }
    .footer .copyright--clean .container {
        padding-top: .75rem
    }
    .footer .copyright--clean {
        border-top: 0
    }
    .footer .copyright--clean .container {
        padding-top: .75rem
    }
    .footer .copyright--clean .copyright__column {
        padding-left: 1.5625rem
    }
    .footer .copyright--clean .copyright__column--nav {
        padding-right: 1.5625rem;
        line-height: 2.75rem
    }
    .footer p {
        border-top: 0;
        padding-top: 0
    }
    .footer .row .currency-selector {
        float: none;
        margin-top: 1.5625rem
    }
    .footer .row .currency-selector strong {
        float: left;
        display: inline-block;
        line-height: 1.9375rem;
        margin-right: .9375rem;
        color: #cbc7c7
    }
    .footer .row .currency-selector a.btn--next {
        margin-left: 0;
        padding-left: .9375rem;
        padding-right: 1.875rem;
        position: relative;
        top: -0.125rem
    }
    .footer .row .currency-selector a.btn--next:active {
        padding-top: .0625rem
    }
    .footer .row .col-4 {
        padding-top: 0
    }
    .footer .row .mark {
        margin-top: .3125rem
    }
    .footer .general-links {
        margin-top: 0
    }
    .footer select {
        padding-left: .625rem;
        padding-right: .625rem
    }
    .footer .select--holder {
        float: left;
        width: 5rem
    }
    .footer .select--holder:before {
        right: .5rem
    }
    .footer .socials {
        float: left;
        margin-top: .625rem
    }
    .footer .socials .social-icon {
        margin-top: .25rem
    }
    .footer ul li {
        padding: 0
    }
    .footer ul.nav li {
        display: block;
        margin-right: 0
    }
}
@media(min-width: 970px)and (max-width: 1003px) {
    .footer__spacer {
        display: none !important
    }
}
@media(min-width: 970px) {
    .expertbar {
        padding: 1.875rem 0;
        font-size: .8125rem;
        line-height: 1.25rem
    }
    .expertbar .container:nth-child(1) {
        margin-bottom: 0
    }
    .expertbar h3 {
        color: #444;
        margin-bottom: 0
    }
    .expertbar .expertbar--expert {
        padding-bottom: .3125rem;
        padding-right: .9375rem
    }
    .expertbar__top {
        padding: 0 calc(16.6666666667% + 0.625rem) 0 .625rem
    }
    .expertbar__heading {
        display: inline-block;
        font-size: 1rem;
        color: #444;
        margin-bottom: 0
    }
    .expertbar__subtext {
        display: inline-block;
        position: relative;
        padding-left: 1.25rem;
        font-size: .8125rem
    }
    .expertbar__subtext:before {
        content: "–";
        display: block;
        position: absolute;
        left: .4375rem;
        top: -0.0625rem
    }
    .expertbar__banner {
        flex: none;
        right: 1.5625rem;
        top: -2.6875rem
    }
    .expertbar__experts {
        margin: 0
    }
    .btn--orange, .btn--blue, .btn--red, .btn--roundwhite, .btn--grey, .btn--green, .btn--facebook, .btn--google {
        height: 2.5625rem;
        line-height: 2.375rem;
        font-size: .9375rem
    }
    .btn--orange:active, .btn--blue:active, .btn--red:active, .btn--roundwhite:active, .btn--grey:active, .btn--green:active, .btn--facebook:active, .btn--google:active {
        line-height: 2.3125rem
    }
    .btn--orange, .btn--grey, .btn--green, .btn--facebook, .btn--google {
        font-size: 1.0625rem
    }
    .btn--blue.btn--reqquote {
        font-size: 1.0625rem
    }
    .btn--small {
        height: 1.9375rem;
        line-height: 1.5rem;
        font-size: .875rem
    }
    .btn--large {
        border-bottom-width: 2px
    }
    .btn--orange {
        border-top: 2px solid #e48901;
        border-bottom: 2px solid #ab6701
    }
    .btn--orange:active {
        border-top: 2px solid #ab6701;
        line-height: 2.3125rem
    }
    .btn--orange:hover {
        border-top: 2px solid #ab6701
    }
    .btn--facebook {
        border-top: 2px solid #3c5a99;
        border-bottom: 2px solid #2d4373
    }
    .btn--facebook:active {
        border-top: 2px solid #2d4373;
        line-height: 2.3125rem
    }
    .btn--facebook:hover {
        border-top: 2px solid #2d4373
    }
    .btn--green {
        border-top: 2px solid #41922c;
        border-bottom: 2px solid #2a7018
    }
    .btn--green:active {
        border-top: 2px solid #2a7018;
        line-height: 2.3125rem
    }
    .btn--green:hover {
        border-top: 2px solid #2a7018
    }
    .btn--small:active {
        line-height: 1.5625rem
    }
    .btn--red {
        border-top: 2px solid #006400;
        border-bottom: 2px solid #750f0e
    }
    .btn--red:active {
        border-top: 2px solid #750f0e;
        line-height: 2.3125rem
    }
    .btn--red:hover {
        border-top: 2px solid #750f0e
    }
    .btn--blue {
        border-top: 2px solid #03698b
    }
    .climate__heading span {
        transform: none !important
    }
    @keyframes cookiebar-slidein-d {
        0% {
            transform: translate(-50%, 100%)
        }
        100% {
            transform: translateX(-50%)
        }
    }
    .cookiebar {
        left: 50%;
        transform: translate(-50%, 100%);
        width: 68.0625rem;
        max-width: 100%;
        box-shadow: none;
        border: 0
    }
    .cookiebar[data-state=ready] {
        animation-name: cookiebar-slidein-d
    }
    .cookiebar hr {
        margin-bottom: .875rem
    }
    .cookiebar:after {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        height: 100%;
        z-index: -1;
        width: 100vw;
        transform: translateX(-50%);
        background: #f2f2f2;
        border-top: 1px solid #ccc;
        box-shadow: 0 0 .9375rem rgba(0, 0, 0, .18)
    }
    .cookiebar--settings .cookiebar__txt {
        margin-bottom: 1.625rem
    }
    .cookiebar--settings .cookiebar__buttons {
        flex-flow: row nowrap;
        align-items: center;
        padding: 1.25rem 0 5.25rem;
        margin: 0;
        width: 100%
    }
    .cookiebar--settings .cookiebar__buttons:before {
        content: "";
        order: 2;
        flex-grow: 1
    }
    .cookiebar--settings .cookiebar__buttons a {
        order: 1;
        text-align: left
    }
    .cookiebar--settings .cookiebar__buttons button {
        order: 4;
        width: auto;
        margin: 0 0 0 2.5rem;
        padding: 0 2.5rem .1875rem
    }
    .cookiebar--settings .cookiebar__buttons button:last-child {
        order: 3;
        padding: 0 1.25rem .1875rem
    }
    .cookiebar__close {
        top: .9375rem;
        right: 1.875rem
    }
    body[data-state=cookiesettings] .cookiebar--settings {
        transform: translateX(-50%)
    }
    body.has-cookiebar.with-overlay .overlay {
        background-color: rgba(0, 0, 0, 0)
    }
    body.has-cookiebar.with-overlay .overlay:before {
        content: "";
        display: block;
        width: 100%;
        height: calc(100% - 16.0625rem);
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        background: #f2f2f2
    }
    body.has-cookiebar.with-overlay .overlay>* {
        z-index: 2;
        position: relative
    }
    h5 {
        font-size: 1rem
    }
    .list--tours .list__item--data {
        padding: .3125rem .625rem .625rem
    }
    .list--tours .list__snippets, .list--operators .list__snippets {
        margin-top: 0
    }
    .list--tours h1, .list--operators h1 {
        margin-top: .625rem
    }
    .list--tours--small .col-12:nth-child(odd), .list--tours--small .col-12:nth-child(even) {
        padding-right: 0 !important;
        padding-left: 0 !important;
        clear: both;
        width: 100%
    }
    .list--operators .list__item>a .picture-holder .picture-frame:before {
        width: 4.75rem;
        height: 1.4375rem;
        margin-left: -2.375rem;
        top: -0.75rem
    }
    .list__item--image__full h2, .list__item--image__full h3 {
        padding: 3.125rem .625rem .9375rem
    }
    .list--indent {
        padding-left: .5625rem
    }
    .list--icon li {
        padding-left: 1.875rem
    }
    .list--icon li:before {
        left: .75rem
    }
    .list--icon.indent li {
        padding-left: 1.875rem
    }
    .list--icon-arrow li:before {
        content: "›";
        font-weight: normal;
        font-size: .875rem;
        position: absolute;
        top: .375rem;
        left: 1.25rem
    }
    .list--icon-arrow-nest li ul li {
        margin-left: -0.875rem
    }
    .list--icon-3spaced li:nth-child(3n) {
        margin-bottom: 1.25rem
    }
    .list--icon-3spaced li:last-child {
        margin-bottom: 0
    }
    .list--icon-nopadding li {
        padding-top: 0;
        padding-bottom: .25rem;
        padding-left: .625rem
    }
    .list--icon-nopadding li:before {
        left: 0;
        top: -0.0625rem
    }
    .container--tours-directory .list--tours .list__item {
        margin-bottom: 3.125rem
    }
    .container--tours-directory .pagination {
        margin-top: 0
    }
    .container--tours-directory, .container--operators-directory {
        margin-top: .9375rem
    }
    .container--tours-directory .row-header, .container--operators-directory .row-header {
        background: none;
        padding: 0;
        margin: 0 0 .625rem;
        border: 0
    }
    .list-head {
        padding-left: 1.25rem !important
    }
    .list--columns {
        grid-template-columns: repeat(3, 1fr)
    }
}
@media(min-width: 970px)and (hover: hover) {
    .list--tours .list__item:not(.unavailable) h2:after, .list--tours .list__item:not(.unavailable) h3:after {
        content: attr(data-txt);
        opacity: 0;
        position: absolute;
        top: 3.125rem;
        left: .625rem;
        right: .625rem;
        text-decoration: underline;
        text-decoration-color: #fff;
        color: rgba(0, 0, 0, 0);
        text-shadow: none;
        transition: opacity .2s ease-in-out
    }
    .list--tours .list__item:not(.unavailable):hover h2:after, .list--tours .list__item:not(.unavailable):hover h3:after {
        opacity: 1;
        transition-duration: .25s
    }
    .list--operators .list__item:not(.unavailable)>a h2 {
        text-decoration: underline;
        text-decoration-color: rgba(0, 0, 0, 0);
        transition: text-decoration-color ease-in-out .2s
    }
    .list--operators .list__item:not(.unavailable)>a:hover h2 {
        text-decoration-color: #0378a0;
        transition-duration: .25s
    }
}
@media(min-width: 970px)and (hover: hover)and (min-width: 1175px) {
    .list--tours .list__item:not(.unavailable) h2:after, .list--tours .list__item:not(.unavailable) h3:after {
        top: 4.375rem;
        left: 1.25rem;
        right: 1.25rem
    }
}
@media(min-width: 970px) {
    .selected-filters {
        top: 0;
        margin-top: 0
    }
    .filters__block {
        padding-left: 0;
        padding-right: 0
    }
    .filters__close {
        display: none
    }
    .filters__all {
        margin-top: .625rem
    }
    .filters.filters--box {
        background-color: #fff;
        border: 1px solid #d9d9d9;
        padding-left: .9375rem;
        padding-right: .9375rem;
        width: 24%;
        margin-right: 1%;
        margin-top: .875rem
    }
    .filters h3.serif.filter-title {
        padding-left: 0
    }
    .filters__block--tourpreferences.messagebox {
        margin-top: 0;
        margin-left: 0;
        margin-right: 0
    }
    .filters--box .filters__block--tourpreferences.messagebox {
        margin-top: -11px;
        margin-left: -16px;
        margin-right: -16px
    }
    .filters--box+.list--tours .row-header--withintro {
        margin-top: .75rem
    }
    .form__label[data-role=label-as-placeholder] {
        position: relative !important;
        color: #444;
        left: 0
    }
    .form__label[data-role=label-as-placeholder], .form__label[data-role=label-as-placeholder][data-state=label] {
        transform: none
    }
    .form__input, .form__input[data-role=label-as-placeholder] {
        padding: .375rem .625rem !important
    }
}
@media(min-width: 970px)and (max-width: 1035px) {
    .pagination__nmbr {
        width: 2.25rem
    }
    .pagination .col:nth-child(1) {
        padding-right: 0 !important
    }
    .pagination .col:nth-child(2) {
        padding-left: 0 !important;
        padding-right: 0 !important
    }
    .pagination .col:nth-child(4) {
        padding-left: 0 !important
    }
}
@media(min-width: 970px) {
    .operator-snippet__data p {
        padding: .25rem .625rem .25rem 7.25rem
    }
}
@media(min-width: 970px)and (min-width: 970px)and (max-width: 1000px) {
    .operator-snippet__data p em {
        padding-left: .375rem
    }
}
@media(min-width: 970px) {
    .operator-snippet__data .opdata__image {
        width: 6.4375rem
    }
    .operator-snippet__data .opdata__image img {
        max-width: 4.0625rem
    }
}
@media(min-width: 970px)and (min-width: 970px)and (max-width: 1050px) {
    .col-d-4 .operator-snippet__data p {
        padding-left: 5.625rem
    }
    .col-d-4 .operator-snippet__data .opdata__image {
        width: 4.875rem
    }
}
@media(min-width: 970px) {
    .price {
        padding-top: .75rem
    }
    .picture-frame {
        padding: .3125rem
    }
    .picture-frame:before {
        width: 7.125rem;
        height: 2.125rem;
        margin-left: -3.5625rem;
        top: -1.25rem
    }
    .picture-frame--notape:before {
        content: none
    }
    .navigation__sidebar {
        padding: 0 1.25rem !important;
        position: relative;
        z-index: 3
    }
    .navigation__sidebar b {
        display: block;
        background-color: #006400;
        color: #fff;
        padding: .375rem 1.25rem .4375rem;
        box-sizing: content-box;
        width: 100%;
        margin-left: -1.25rem;
        margin-top: 1.25rem
    }
    .navigation__sidebar ul {
        margin: .625rem 0 3.125rem 0
    }
    .navigation__sidebar ul.more-items {
        margin-bottom: .625rem;
        margin-top: 0;
        display: block
    }
    .navigation__sidebar ul li {
        display: block;
        height: auto;
        float: none
    }
    .navigation__sidebar ul li a {
        font-size: .9375rem;
        display: block;
        width: 100%;
        height: 100%;
        padding: .5rem 0 .5rem .875rem;
        line-height: 1.125rem;
        position: relative;
        color: #666
    }
    .navigation__sidebar ul li a:before {
        content: "›";
        font-weight: normal;
        font-size: .875rem;
        position: absolute;
        top: .5rem;
        left: 0
    }
    .navigation__sidebar ul li a:hover, .navigation__sidebar ul li a.active {
        color: #006400;
        text-decoration: none
    }
    .navigation__sidebar ul li a:hover em, .navigation__sidebar ul li a.active em {
        color: #006400;
        text-decoration: none !important
    }
    .navigation__sidebar ul li a.active {
        font-weight: 600
    }
    .navigation__sidebar ul li em {
        display: inline
    }
    .navigation__sidebar ul li.more {
        height: auto
    }
    .navigation__sidebar ul li.more>a {
        display: none
    }
    .navigation__sidebar ul li.more:hover a+ul {
        display: block;
        position: relative;
        top: auto
    }
    .navigation__sidebar ul .subs {
        display: none;
        margin-left: 1.25rem;
        margin-top: 0;
        margin-bottom: .625rem
    }
    .navigation__sidebar ul .subs label {
        font-size: .875rem;
        display: block;
        width: 100%;
        height: 100%;
        padding: .5rem 0 .5rem 1.75rem;
        line-height: 1.125rem;
        position: relative;
        cursor: pointer
    }
    .navigation__sidebar ul .subs label i {
        font-style: normal;
        color: #666
    }
    .navigation__sidebar ul .subs label:hover i {
        text-decoration: underline
    }
    .navigation__sidebar ul .subs label input {
        position: absolute;
        left: 0;
        top: .4375rem
    }
    .navigation__sidebar ul .subs label input:checked+i {
        color: #006400
    }
    .navigation__sidebar ul .subs li.inactive {
        opacity: .3;
        cursor: default
    }
    .navigation__sidebar ul .subs li.inactive label {
        cursor: default
    }
    .navigation__sidebar ul .subs li.inactive input {
        cursor: default;
        border-color: #999
    }
    .navigation__sidebar ul .subs li.inactive:hover i {
        text-decoration: none
    }
    .navigation__sidebar ul a.active+.subs {
        display: block
    }
    .navigation__sidebar a.btn {
        margin: 1.25rem 0 1.875rem
    }
    .overlay {
        max-width: 47.5rem;
        width: 90% !important;
        margin-top: 3.4375rem;
        margin-bottom: 3.4375rem
    }
    .overlay.video {
        max-width: 60rem
    }
    .overlay.map {
        max-width: 56.25rem;
        text-align: center
    }
    .overlay.map .overlay__header {
        text-align: left
    }
    .overlay.map img {
        display: block;
        margin: 0 auto
    }
    .overlay.overlay--700 {
        max-width: 43.75rem
    }
    .overlay.wide {
        max-width: 62.5rem
    }
    .overlay.xwide {
        max-width: 72.8125rem;
        width: 96% !important
    }
    .overlay--small--m {
        top: 0 !important
    }
    .imgpagehead {
        margin: 0 auto
    }
    .imgpagehead--margin {
        margin: 1.5625rem auto
    }
    .imgpagehead--margin-bottom {
        margin: 0 auto 1.5625rem
    }
    .imgpagehead--margin-top {
        margin: 1.5625rem auto 0
    }
    .imgpagehead picture:before {
        padding-top: 21.875%
    }
    .imgpagehead--parkcountry, .imgpagehead--topratedoperators {
        margin-top: 0
    }
    .imgpagehead--parkcountry picture:before, .imgpagehead--topratedoperators picture:before {
        padding-top: 15.594%
    }
    .imgpagehead--parkcountry .country-with-flag__flag--big, .imgpagehead--topratedoperators .country-with-flag__flag--big {
        width: 2.125rem;
        top: 0
    }
    .imgpagehead--topratedoperators .imgpagehead__overlay {
        padding-bottom: 2.1875rem;
        bottom: 0
    }
    .imgpagehead--topratedoperators img:not(.country-with-flag__flag):not(.video-img) {
        width: auto;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        height: 100%
    }
    .imgpagehead--tour h1 {
        font-size: 2.375rem;
        line-height: 2.5rem
    }
    .imgpagehead__overlay {
        padding-left: 2.1875rem
    }
    .imgpagehead__overlay__sub {
        position: relative;
        height: 1.625rem;
        top: .875rem;
        z-index: 4;
        opacity: .9;
        font-size: 1.125rem
    }
    .imgpagehead__overlay__sub span {
        opacity: 1
    }
    .imgpagehead__overlay__sub .stars {
        position: relative
    }
    .imgpagehead__overlay__sub .stars.notrated i {
        opacity: .6
    }
    .imgpagehead__overlay__sub .stars:after {
        top: .125rem;
        font-family: "Noto Sans", "Arial", sans-serif
    }
    .imgpagehead__overlay__sub strong a {
        font-size: 1.125rem
    }
}
@media(min-width: 970px)and (max-width: 1030px) {
    .imgpagehead__overlay--countrydir {
        padding-bottom: .3125rem
    }
}
@media(min-width: 970px) {
    .imgpagehead .btn--orange {
        right: 2.1875rem
    }
    .imgpagehead--d-narrow {
        max-width: 50rem
    }
    .tourpreferences .col .detail {
        width: 21.75rem
    }
    .tourpreferences .col .detail .inner {
        padding: 2.5rem 1.25rem 1.25rem !important;
        margin-top: .3125rem
    }
    .tourpreferences .col .detail label:not(.checkbox-lbl) {
        width: 10.9375rem;
        line-height: 3.25rem
    }
    .tourpreferences .col .detail .children-ages label:not(.checkbox-lbl) {
        width: 9.1875rem !important;
        line-height: 3rem
    }
    .tourpreferences .col .detail:not(.detail__destination) {
        display: block !important;
        top: -625rem
    }
    .tourpreferences .col .detail__destination {
        width: 100%
    }
    .tourpreferences .col .detail__date .btn {
        display: none
    }
    .tourpreferences .col .detail__persons .inner {
        padding-top: 1.875rem !important;
        padding-bottom: 3.75rem !important
    }
    .tourpreferences i.row-icon {
        top: .875rem
    }
    .container--directory .tourpreferences .col .detail:not(.detail__destination) {
        margin-left: -250rem;
        left: 100%;
        top: .4375rem;
        padding-left: .9375rem
    }
    .container--directory .tourpreferences .col .detail:not(.detail__destination) .inner {
        margin-top: 0
    }
    .container--directory .tourpreferences .col .detail:not(.detail__destination) .inner:before {
        top: .4375rem;
        left: .625rem
    }
    .container--directory .tourpreferences .col .detail:not(.detail__destination) .inner:after {
        display: none
    }
    .container--directory .tourpreferences .col .detail:not(.detail__destination) .detail__title {
        top: 0;
        right: .0625rem;
        width: 20.6875rem
    }
    .container--directory .tourpreferences .col .detail:not(.detail__destination) .homepersons-ok {
        margin-left: 11rem;
        width: 6.625rem;
        float: left
    }
    .container--directory .tourpreferences .col .detail.detail__destination {
        margin-top: .125rem;
        left: .5rem;
        width: 20rem
    }
    .container--directory .tourpreferences .col.active .detail:not(.detail__destination) {
        margin-left: -0.1875rem
    }
    .expertdetail__sidebar {
        margin-top: 0
    }
    .reviewlist__list {
        padding-right: 1.25rem !important
    }
    .sidebar__block {
        background-color: #fff;
        box-shadow: 0px 0px 5px rgba(0, 0, 0, .18);
        display: block;
        color: #444;
        padding: 1.25rem;
        margin-bottom: 1.25rem
    }
    .sidebar__block.sidebar__block--map span, .sidebar__block.sidebar__block--photo span {
        line-height: 3.125rem
    }
    .sidebar__block ul.bulletlist {
        margin-top: .625rem
    }
    .sidebar__block ul.bulletlist li {
        margin: .0625rem 0;
        padding-left: .5rem;
        position: relative
    }
    .sidebar__block ul.bulletlist li:before {
        content: "›";
        left: 0;
        top: -0.0625rem;
        position: absolute
    }
    .sidebar__block.operator-block {
        padding-left: 0;
        padding-right: 0
    }
    .sidebar__block.operator-block .operator__logo {
        border-bottom: .0625rem solid #d9d9d9;
        padding-bottom: 1.25rem
    }
    .sidebar__block.operator-block .operator__logo img {
        margin: 0 auto;
        display: block;
        width: 9.375rem
    }
    .sidebar__block.operator-block .operator__logo strong {
        display: none
    }
    .sidebar__block.operator-block .operator__info {
        padding: 1.25rem;
        line-height: 1rem
    }
    .sidebar__block.operator-block .operator__info dl dt {
        width: 35%;
        float: left;
        clear: both;
        padding: .25rem 0
    }
    .sidebar__block.operator-block .operator__info dl dd {
        width: 65%;
        float: right;
        padding: .25rem 0
    }
    .sidebar__block.operator-block .operator__info dl .country-with-flag {
        display: block
    }
    .sidebar__block.operator-block .operator__info dl .country-with-flag+.country-with-flag {
        margin-top: .1875rem
    }
    .sidebar__block.operator-block .operator__info dl:after {
        content: "";
        display: table;
        clear: both
    }
    .sidebar__block.operator-block .operator__info .rating {
        font-weight: 600;
        font-size: .875rem;
        margin-left: .125rem
    }
    .sidebar__block.operator-block .operator__info .stars {
        left: -0.1875rem
    }
    .sidebar__block.operator-block .operator__info .reviews-link {
        position: relative;
        display: inline-block;
        margin-top: .3125rem;
        margin-bottom: .5rem
    }
    .sidebar__block.operator-block .operator__reviews {
        margin: 2.5rem 1.25rem 0;
        padding: 0;
        position: relative
    }
    .sidebar__block.operator-block .operator__reviews:before {
        right: 0;
        top: .75rem
    }
    .sidebar__block.operator-block .operator__reviews .pagination {
        margin-top: .625rem;
        margin-bottom: 0
    }
    .sidebar__block.operator-block .operator__reviews .pagination .col-4 {
        padding: 0;
        line-height: 1.875rem;
        font-size: .875rem
    }
    .sidebar__block.operator-block .operator__reviews .pagination .col-4:nth-child(1) .btn {
        float: right
    }
    .sidebar__block.operator-block .operator__reviews .pagination .col-4 .btn {
        width: 2.5rem
    }
    .sidebar__block.operator-block--min .operator__logo {
        border-bottom: 0
    }
    .sidebar__block.operator-block--min .operator__logo strong {
        display: block;
        text-align: center;
        font-size: 1.0625rem;
        margin-top: .3125rem;
        position: relative;
        top: .9375rem;
        padding: 0 1.25rem
    }
    .sidebar__block.operator-block--min .operator__info {
        display: none
    }
    .sidebar__block.operator-block--min .operator__reviews {
        display: none
    }
}
@media(min-width: 970px)and (hover: hover) {
    .sidebar__block.sidebar__block--map, .sidebar__block.sidebar__block--photo {
        text-decoration: underline rgba(0, 0, 0, 0);
        transition: text-decoration .2s ease-in-out, box-shadow .2s ease-in-out
    }
    .sidebar__block.sidebar__block--map:hover, .sidebar__block.sidebar__block--photo:hover {
        box-shadow: 0 1px 13px rgba(0, 0, 0, .4)
    }
}
@media(min-width: 970px) {
    .tourpromo h2 {
        font-size: 1.5rem
    }
    .relatedlinks h3 {
        margin-top: 1.875rem
    }
    .relatedlinks__list {
        margin-bottom: 2.8125rem
    }
    .relatedlinks__list li {
        width: 25%;
        float: left
    }
    .relatedlinks__mark {
        right: 2.5rem;
        top: -5rem
    }
    .directory-content .box {
        margin-top: .4375rem;
        margin-bottom: 1.5rem
    }
    .directory-content .box .expert__photo {
        top: 0
    }
    .directory-content .answered-by {
        font-size: 1rem;
        position: relative;
        top: -0.625rem;
        color: #666
    }
    .directory-content .answered-by img {
        width: 2.625rem;
        height: 2.625rem;
        border-radius: 1.3125rem;
        margin: 0 .3125rem;
        position: relative;
        top: .9375rem
    }
    .directory-content .answered-by b {
        color: #444
    }
    .directory-content .questions .question {
        margin-bottom: 4.375rem
    }
    .conversionblock {
        padding: .625rem 1.25rem 1.25rem
    }
    .conversionblock__price {
        padding-top: .5rem
    }
    .conversionblock__price b, .conversionblock__priceamount {
        line-height: 2rem
    }
    .gallery-with-upload .file {
        flex-flow: row nowrap
    }
    .gallery-with-upload .file .progresslabel .progresslabel-filename {
        padding-left: .625rem
    }
    .gallery-with-upload .file.small .progress {
        width: 9.375rem
    }
    .gallery-with-upload .file.error .error-text {
        flex-grow: 0
    }
    .gallery-with-upload .file.error .progresslabel {
        order: initial;
        flex: 1 0 auto
    }
    .gallery-with-upload .file.error .progresslabel .progresslabel-status {
        padding: 0 .625rem
    }
    .banner {
        padding: 1.25rem .625rem 0 .9375rem
    }
    .detail__title__block {
        padding-left: .3125rem;
        padding-right: 0
    }
    .detail__title__block h2 {
        font-size: 1.5rem;
        line-height: 1.25rem;
        margin-bottom: 1.25rem;
        margin-top: 1.625rem
    }
    .detail__title__block:before {
        top: 2.375rem
    }
    .detail__content__block {
        padding-left: .3125rem
    }
    .detail__content__block .intro {
        margin-bottom: 1.875rem
    }
    .detail__content__block h3, .detail__content__block h4 {
        margin-top: 3.125rem;
        margin-bottom: .75rem;
        font-size: 0;
        transform: translateY(2px);
        padding-bottom: 2px
    }
    .detail__content__block h3>span:first-child, .detail__content__block h4>span:first-child {
        font-size: 1.125rem;
        transform: translateY(-2px)
    }
    .detail__content__block h3 span.grey, .detail__content__block h4 span.grey {
        display: inline;
        top: 0
    }
    .detail__content__block h3 span.number, .detail__content__block h4 span.number {
        margin-right: .625rem
    }
    .detail__content__block h5.subtitle.extramargin {
        margin-top: 3.125rem
    }
    .detail__content__block .extra-top-margin {
        margin-top: 2.1875rem
    }
    .detail__content__block .col-3 h4:first-child, .detail__content__block .col-d-3 h4:first-child {
        margin-top: .25rem
    }
    .detail__content__block p, .detail__content__block .first-elem {
        padding-top: .625rem
    }
    .detail__content__block--addressblock {
        padding-left: .625rem !important;
        padding-right: .625rem !important
    }
    .detail__content__block .col-12 {
        padding-left: .625rem
    }
    .detail__content__block .col-12>p {
        padding-left: 0
    }
    .detail__content__block .col-12>p.indent {
        padding-left: 1.25rem
    }
    .detail__content__block .col-12.fullwidth {
        margin-left: 0;
        margin-right: 0;
        width: 100%
    }
    .detail__content__block .detail__numbers b, .detail__content__block .detail__numbers em {
        font-size: .8125rem
    }
    .detail__content__block--wildlife .intro {
        margin-bottom: 1.25rem
    }
    .detail__content__block--author .author-content p {
        max-width: 32.5rem
    }
    .detail__content__block .park-list--alphabet>li picture {
        width: 13rem;
        height: 8.125rem;
        margin-right: 1.875rem;
        position: relative;
        display: block
    }
    .detail__content__block .park-list--alphabet>li picture img {
        z-index: 1
    }
    .detail__content__block .park-list--alphabet>li picture:after {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0);
        z-index: 2
    }
    .detail__content__block .park-list--alphabet>li ul {
        display: block;
        margin-top: .0625rem
    }
    .detail__content__block .park-list--alphabet>li ul li {
        display: inline-block;
        padding-left: .625rem;
        margin-right: 1.25rem
    }
    .detail__content__block .park-list--alphabet>li ul li:before {
        left: -0.0625rem
    }
    .detail__content__block .park-list--alphabet>a {
        margin-top: .875rem
    }
    .detail__content__block .park-list--alphabet .review-summary--oneline {
        margin-bottom: .375rem
    }
    .detail__heading-main {
        font-size: 1.125rem
    }
    .detail__heading-extra {
        order: initial;
        width: auto !important;
        margin-left: 0 !important
    }
    .parkcountry__tourpromo .list--tours li {
        width: 33.3333333333%
    }
    .parkcountry__tourpromo .list--tours li:nth-child(1n+2) {
        display: block
    }
    .parkcountry__tourpromo .button-holder {
        width: 33.3333333333%
    }
    .park__ensign {
        right: 2.1875rem
    }
    .country__content__block__alert>div {
        padding-right: 11.25rem
    }
    .country__content__block__alert>div .travel-alert {
        width: 7.5rem;
        height: 2.1875rem;
        display: inline-block;
        float: right;
        padding: 0;
        margin: 0;
        position: absolute;
        top: 2.5rem;
        right: 2.1875rem;
        -webkit-transform: rotate(-4deg);
        -moz-transform: rotate(-4deg);
        -ms-transform: rotate(-4deg);
        -o-transform: rotate(-4deg);
        transform: rotate(-4deg)
    }
    .country__content__block__alert>div .travel-alert:before, .country__content__block__alert>div .travel-alert:after {
        content: "";
        display: block;
        width: 1.875rem;
        height: 0;
        border-top: 1px solid #999;
        -webkit-transform: rotate(-55deg);
        -moz-transform: rotate(-55deg);
        -ms-transform: rotate(-55deg);
        -o-transform: rotate(-55deg);
        transform: rotate(-55deg);
        position: absolute;
        left: 2.6875rem;
        top: -0.25rem
    }
    .country__content__block__alert>div .travel-alert:after {
        -webkit-transform: rotate(55deg);
        -moz-transform: rotate(55deg);
        -ms-transform: rotate(55deg);
        -o-transform: rotate(55deg);
        transform: rotate(55deg);
        left: 3.5625rem
    }
    .country__content__block__alert>div .travel-alert span {
        z-index: 2;
        position: absolute;
        bottom: 0;
        right: 0;
        width: 7.5rem;
        height: 2.1875rem;
        line-height: 2.0625rem;
        color: #006400;
        font-size: .875rem;
        background-color: #fff;
        box-shadow: 0px 0px 5px rgba(0, 0, 0, .18);
        display: inline-block;
        text-align: center
    }
    .country__content__block__alert>div .travel-alert span:before {
        background-color: #999;
        width: .375rem;
        height: .375rem;
        border-radius: .375rem;
        position: absolute;
        left: 3.875rem;
        top: -1.0625rem;
        content: "";
        display: block
    }
    .operator__header {
        min-height: 18.4375rem;
        width: 100%;
        max-width: 73.75rem;
        margin: 0 auto
    }
    .operator__header .picture-frame {
        top: 50%;
        transform: translateY(-50%) rotate(-2deg)
    }
    .operator__header .operator-photo {
        position: absolute
    }
    .operator__header .operator-data {
        margin-left: 25%;
        min-height: 18.125rem
    }
    .operator__header .logo-block {
        position: absolute;
        right: 0;
        top: 0
    }
    .operator__header .logo-block div {
        height: 6.5625rem;
        width: 13.5rem
    }
    .operator__header .logo-block div img {
        width: 9.375rem
    }
    .operator__header .logo-block:before {
        content: "";
        display: block;
        height: 90%;
        width: 0;
        border-left: 1px dotted #999;
        position: absolute;
        top: 5%;
        left: 0
    }
    .operator__header .logo-block .btn {
        width: 13.5rem;
        padding-left: 1.25rem;
        padding-right: 1.25rem
    }
    .operator__header .logo-block p {
        width: 13.5rem
    }
    .operator__header .operator-data h1 {
        padding-bottom: .1875rem;
        line-height: 1.875rem
    }
    .operator__content .tours-tab .list--tours {
        padding: .625rem .625rem 1.875rem .9375rem
    }
    .operator_disclaimer {
        margin-left: .3125rem;
        margin-right: .3125rem
    }
    .tour__content div[role=tabpanel] {
        padding-bottom: 1.875rem
    }
    .tour__content__tabs {
        height: 2.5rem
    }
    .tour__content__block {
        padding: 1.25rem 1.25rem 2.5rem
    }
    .tour__content__block:before {
        top: 2rem;
        right: 1.25rem
    }
    .tour__content__block--dates a {
        right: 1.25rem
    }
    .tour__content__block:not(.tour__content__block--daybyday):before {
        width: calc(100% - 2.5rem)
    }
    .tour__content.stickybtn .tour__content__tabs .btn--orange, .tour__content.stickybtn .tour__content__tabs .btn--blue, .tour__content.stickybtn .tour__content__tabs .btn--green {
        display: inline-block !important;
        height: 1.9375rem;
        margin-top: .25rem;
        line-height: 1.5rem;
        width: 15rem
    }
    .tour__content__block--dates ul {
        margin-bottom: 0
    }
    .tour__content__block--dates a {
        top: 4.3125rem
    }
    .tour__content__block--consider .row div.item:nth-child(3), .tour__content__block--consider .row div.item:nth-child(6) {
        margin-bottom: 0
    }
    .tour__content__block--daybyday:before {
        left: 2.375rem;
        top: -0.125rem
    }
    .tour__content__block--daybyday .day__header--text {
        margin-right: 0;
        margin-left: 2.5rem
    }
    .tour__content__block--daybyday .day .detail__numbers b, .tour__content__block--daybyday .day .detail__numbers em {
        font-size: .8125rem
    }
    #inclusions-tab .tour__content__block--inclusions {
        width: 50%;
        float: left
    }
    #inclusions-tab .tour__content__block--inclusions:before {
        width: 75%
    }
    #inclusions-tab .tour__content__block--inclusions li span {
        display: block
    }
    #inclusions-tab:after {
        content: "";
        display: table;
        clear: both
    }
    .tour__content__block--rates ul.list--icon {
        margin-bottom: .625rem
    }
}
@media(min-width: 970px)and (min-width: 1050px) {
    .tour__content__block--rates .rates-table-block-t .rates-table tr.cells-8 td:nth-child(1) {
        font-size: .8125rem
    }
}
@media(min-width: 970px) {
    .container--home {
        max-height: 62.5rem
    }
    .container--home.recent-tours {
        max-height: 25rem
    }
    .container--home.container--tourpref-directory {
        max-height: 11.25rem !important
    }
    .container--home:before {
        padding-top: 40%
    }
    .container--home>.img-holder img {
        width: 100%;
        height: 100%;
        top: auto;
        left: auto;
        transform: none;
        object-fit: cover
    }
    .container--home>.img-holder .img__3 {
        object-position: 0 5%
    }
    .container--home>.img-holder .img__4 {
        object-position: 0 80%
    }
    .container--home>.img-holder .img__6 {
        object-position: 0 85%
    }
    .container--home>.img-holder .img__7 {
        object-position: 0 30%
    }
    .container--home>.img-holder .img__8 {
        object-position: 0 65%
    }
    .container--home>.img-holder .img__16 {
        object-position: 0 65%
    }
    .container--home>.img-holder .img__17 {
        object-position: 0 80%
    }
    .container--home>.img-holder .img__18 {
        object-position: 0 70%
    }
    .container--home .opener {
        max-width: 90%;
        padding: 0;
        margin-top: -8.1875rem
    }
    .container--home .opener h1 {
        font-size: 2.6875rem;
        line-height: 2.6875rem;
        margin-bottom: .25rem;
        padding-bottom: .3125rem
    }
    .container--home .opener h2 {
        font-size: 1.625rem;
        line-height: 1.375rem;
        margin-bottom: 0
    }
    .container--home.recent-tours .opener {
        margin-top: -5.9375rem
    }
    .container--home.container--tourpref-directory .opener {
        margin-top: -2.375rem
    }
}
@media(min-width: 970px)and (min-width: 1440px) {
    .container--home .opener {
        margin-top: -8.8125rem
    }
    .container--home .opener h1 {
        font-size: 3rem;
        line-height: 3rem
    }
    .container--home .opener h2 {
        font-size: 1.75rem;
        line-height: 1.5rem
    }
    .container--home.recent-tours .opener {
        margin-top: -6.5625rem
    }
}
@media(min-width: 970px)and (min-width: 1920px) {
    .container--home:not(.container--tourpref-directory) .opener {
        margin-top: -9.125rem
    }
    .container--home:not(.container--tourpref-directory) .opener h1 {
        font-size: 3.3125rem;
        line-height: 3.3125rem
    }
    .container--home:not(.container--tourpref-directory) .opener h2 {
        font-size: 1.875rem;
        line-height: 1.625rem
    }
    .container--home:not(.container--tourpref-directory).recent-tours .opener {
        margin-top: -6.875rem
    }
}
@media(min-width: 970px) {
    .container--home__heading {
        font-size: 1.375rem
    }
    .container--home-recent .list--recent-tours .recent-col:nth-child(3) {
        display: block
    }
    .container--home-toprated__list ul li {
        line-height: 3.0625rem;
        padding-bottom: .1875rem
    }
    .container--home-toprated__list ul li:before {
        border-top: 26px solid rgba(0, 0, 0, 0);
        border-bottom: 26px solid rgba(0, 0, 0, 0);
        border-left: 26px solid #f8f8f8;
        top: 0;
        right: .1875rem
    }
    .container--home-toprated__list ul li a {
        padding-left: 1.5625rem
    }
    .container--home-toprated__list ul li a span {
        margin-right: .625rem
    }
    .container--home-toprated__list ul li:last-child {
        line-height: 3rem
    }
    .container--home-toprated__info__content {
        padding: 1.25rem 3.75rem 1.875rem
    }
    .container--home-toprated__info__content a.bt {
        display: block;
        margin-top: .625rem
    }
    .container--home-toprated__info__content .toprated-sign {
        top: 1.25rem
    }
    .container--home-trendingtours, .container--home-recent {
        padding-top: 3.4375rem;
        padding-bottom: 1.5625rem
    }
    .container--home-trendingtours .list--tours .col:nth-child(1), .container--home-recent .list--tours .col:nth-child(1) {
        padding-left: 0;
        padding-right: .625rem !important
    }
    .container--home-trendingtours .list--tours .col:nth-child(2), .container--home-recent .list--tours .col:nth-child(2) {
        padding-left: .3125rem !important;
        padding-right: .3125rem !important
    }
    .container--home-trendingtours .list--tours .col:nth-child(3), .container--home-recent .list--tours .col:nth-child(3) {
        padding-right: 0 !important;
        padding-left: .625rem !important;
        display: inline-block
    }
    .container--home-recent {
        padding-top: 2.1875rem;
        padding-bottom: 1.25rem
    }
    .container--home-topratedoperators {
        padding-top: 3.4375rem;
        padding-bottom: 1.5625rem
    }
    .container--home-blog {
        padding-top: 3.4375rem;
        padding-bottom: 1.5625rem
    }
    .container--home-blog .list--posts .col:nth-child(1) {
        padding-left: 0;
        padding-right: .625rem
    }
    .container--home-blog .list--posts .col:nth-child(2) {
        padding-left: .3125rem;
        padding-right: .3125rem
    }
    .container--home-blog .list--posts .col:nth-child(3) {
        padding-right: 0;
        padding-left: .625rem;
        display: inline-block
    }
}
@media(min-width: 970px)and (max-width: 980px) {
    .container--home-blog .list--posts .col a.post h4 {
        font-size: 1.5rem
    }
}
@media(min-width: 970px) {
    .container--tourpref-directory .opener {
        top: 50% !important;
        margin-top: 0 !important;
        transform: translateY(-50%)
    }
    .container--tourpref-directory+.container--home-numbers:not(.hide) {
        border-bottom: 0
    }
    .container--tourpref-directory+.container--home-numbers:not(.hide)+.container--directory {
        padding-top: 0;
        border-top: 0
    }
}
@media screen and (min-width: 970px)and (-ms-high-contrast: active), (min-width: 970px)and (-ms-high-contrast: none) {
    .container--home>.img-holder img {
        width: 100.5%;
        height: auto;
        top: 50%;
        left: 50%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%)
    }
}
@media(min-width: 970px) {
    .countriesparks-list {
        margin: 0 1.5625rem
    }
    .countriesparks-list .container--main {
        padding: 1.875rem .625rem .625rem .625rem
    }
    .countriesparks-list .container--main .countriesparks-list--content {
        border-right: 1px solid #d9d9d9;
        padding-right: 1.25rem;
        padding-left: .9375rem
    }
    .countriesparks-list .container--main .countriesparks-list--content span.italic {
        font-style: italic
    }
    .countriesparks-list .container--main .countriesparks-list--content.no-parks {
        border-right: none
    }
    .countriesparks-list .container--main .countriesparks-list--parks {
        border-top: none;
        margin-top: 0
    }
    .countriesparks-list .container--main h4 {
        margin-top: 0;
        margin-left: 1.25rem;
        margin-bottom: 1rem
    }
    .countriesparks-list .container--main .list--icon-arrow li {
        display: block;
        width: 100%;
        float: none
    }
    .countriesparks-list .container--main .list--icon-arrow+a {
        margin-left: 1.25rem;
        margin-top: 1.875rem
    }
    .contactus .container--main--white .contactus--show-contact-details {
        margin: .625rem 0 .625rem 0 !important
    }
    .contactus .container--main--white .contact-details {
        margin-top: 0 !important
    }
    .favlist__titlebar .tabs {
        top: 0
    }
    .favlist__titlebar .messagebox {
        margin-top: 0
    }
    .favlist__container .list--tours>ul>li:not(.list_tours_operators).col:nth-child(3n+1), .favlist__container .list--operators-grid>ul>li:not(.list_tours_operators).col:nth-child(3n+1) {
        padding-left: 0;
        padding-right: .625rem
    }
    .favlist__container .list--tours>ul>li:not(.list_tours_operators).col:nth-child(3n+2), .favlist__container .list--operators-grid>ul>li:not(.list_tours_operators).col:nth-child(3n+2) {
        padding-left: .3125rem;
        padding-right: .3125rem
    }
    .favlist__container .list--tours>ul>li:not(.list_tours_operators).col:nth-child(3n+3), .favlist__container .list--operators-grid>ul>li:not(.list_tours_operators).col:nth-child(3n+3) {
        padding-right: 0;
        padding-left: .625rem;
        display: inline-block
    }
    .favlist__outdated {
        top: 1.4375rem
    }
    .favlist__clear {
        top: .75rem
    }
}
@media(min-width: 970px)and (hover: hover) {
    .favlist__tab:hover span {
        text-decoration: none
    }
}
@media(min-width: 1175px) {
    @keyframes fadeIn {
        99% {
            visibility: hidden
        }
        100% {
            visibility: visible
        }
    }
    .col {
        display: block
    }
    .col.col-w-0 {
        display: none
    }
    .col-w-1 {
        width: 8.3333333333%
    }
    .col-w-2 {
        width: 16.6666666667%
    }
    .col-w-3 {
        width: 25%
    }
    .col-w-3-5 {
        width: 29.1666666667%
    }
    .col-w-4 {
        width: 33.3333333333%
    }
    .col-w-4-5 {
        width: 37.5%
    }
    .col-w-5 {
        width: 41.6666666667%
    }
    .col-w-5-5 {
        width: 45.8333333333%
    }
    .col-w-6 {
        width: 50%
    }
    .col-w-7 {
        width: 58.3333333333%
    }
    .col-w-8 {
        width: 66.6666666667%
    }
    .col-w-8-5 {
        width: 70.8333333333%
    }
    .col-w-9 {
        width: 75%
    }
    .col-w-10 {
        width: 83.3333333333%
    }
    .col-w-11 {
        width: 91.6666666667%
    }
    .col-w-12 {
        width: 100%
    }
    .row-w-0 {
        display: none
    }
    .show-w {
        display: block !important
    }
    .show-wi {
        display: inline-block !important
    }
    .show-wii {
        display: inline !important
    }
    .hide-w {
        display: none !important
    }
    .list--tours .list__item--data {
        padding: .3125rem 1.25rem .625rem;
        font-size: .875rem
    }
    .list__item--image__full h2, .list__item--image__full h3 {
        padding: 4.375rem 1.25rem 1.0625rem
    }
    #workflow .list--tours .list__item--data {
        padding: .3125rem .625rem .625rem
    }
    #workflow .list--tours .list__item--image__full h2 {
        padding: 4.375rem .625rem 1.0625rem
    }
    .selected-filters {
        line-height: 1.625rem
    }
    .selected-filters__item {
        line-height: 1.5rem
    }
    .operator-snippet__data p {
        padding: .25rem 1.25rem .25rem 8rem
    }
    .operator-snippet__data p i {
        width: .875rem;
        margin-top: .125rem
    }
    .operator-snippet__data p .rating {
        padding-left: 1.25rem
    }
    .operator-snippet__data .opdata__image {
        width: 7.1875rem
    }
    .operator-snippet__data .opdata__image img {
        max-width: 5.9375rem
    }
    .price {
        padding-top: .3125rem
    }
}