@charset "utf-8";
/* CSS Document */
@import url("https://use.typekit.net/tew0dga.css");
html {
    scroll-behavior: smooth;
    font-size: 1rem;
}
body {
    font-family: century-gothic, sans-serif;
    font-weight: 500;
    font-style: normal;
}
/* h1, h2, h3, h4, h5 {
    text-transform: uppercase;
} */
a {
    text-decoration: none;
}
a:hover {
    color: #F8FF00;
    text-decoration: none;
}
.scrolly {
    transition: .2s;
    transition-timing-function: ease-out;
    background-color: rgba(0, 50, 60, 0.9);
}
#stick {
    /*    position: -webkit-sticky; 
    position: sticky; */
    top: 0px;
    z-index: 99;
}
#header {
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 110px;
}
#header.subpage {
    background-color: rgba(0, 50, 60, 0.9);
}
.logobox {
    padding: 20px 0px 20px 0px;
}
/* ----- Start Page Navigation CSS ----- */
.navbar {
    display: block;
}
nav a {
    text-transform: uppercase;
    color: #ffffff;
}
.navbar-light .navbar-nav .nav-link {
    color: #000000;
    font-weight: 700;
}
.subpage .navbar-light .navbar-nav .nav-link {
    color: #ffffff;
    font-weight: 700;
}
.nav-link:hover {
    color: #F8FF00 !important;
}
.navbar-toggler {
    border: 0px;
    color: #ffffff;
}
.burgertray {
    text-align: right;
    position: relative;
    right: -80px;
}
.scrolly * .topnav {
    padding-bottom: 30px;
}
/* .fa, .fas {
    font-size: 1.7rem;
    right: 40px;
    position: absolute;
    padding-top: 8px;
} */
.dropdown-item:active, .dropdown-item:hover {
    color: #ffffff;
}
.dropdown-item:focus, .dropdown-item:hover {
    color: #1e2125;
    background-color: unset;
}
.burgertray {
    overflow: visible;
    padding: 35px 0px 0px 30px;
    float: left;
}
.navbar-expand-xl .navbar-nav .dropdown-menu {
    border-radius: 8px;
    min-width: 400px;
    color: #ffffff;
    padding: 30px 20px;
}
.navbar-toggler {
    border-color: #ffffff;
}
.dropdown-menu {
    background-color: rgba(0, 18, 24, 0.9); /* transparent sea */
}
.nav_getaquote {
    padding: 0px;
    background-color: #F8FF00;
    ;
    border-radius: 4px;
    position: relative;
    margin-left: 10px;
    color: #000000;
}
.nav_getaquote .nav-link {
    color: #000000 !important;
}
.nav_getaquote:hover {
    background-color: #E9EF94;
    box-shadow: 0px 0px 0px 4px rgba(0, 175, 206, 0.7);
}
#header.scrolly a {
    color: #ffffff;
}
#header.scrolly a:hover {
    color: #D0FF00;
}
/* ----- End Page Navigation CSS ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Page Masthead CSS ----- */
#masthead-wrapper-home {
    background: url("../images/map_corner.png") no-repeat bottom left, url("../images/launch_banner.jpg");
    background-size: auto, cover;
    top: 0;
    position: relative;
    min-height: 820px;
}
#masthead-wrapper-sub {
    background-size: auto, cover;
    top: 0;
    position: relative;
    min-height: 820px;
}
.launch_banner {
    background: url("../images/big_map.png") no-repeat bottom right, url("../images/launch_banner.jpg");
}
.annual {
    background: url("../images/big_map.png") no-repeat bottom right, url("../images/family_running_on_beach.jpg");
}
.single {
    background: url("../images/big_map.png") no-repeat bottom right, url("../images/couple_gazing_at_stars.jpg");
}
.worldwide {
    background: url("../images/big_map.png") no-repeat bottom right, url("../images/woman_in_canyon.jpg");
}
.europe {
    background: url("../images/big_map.png") no-repeat bottom 0px right, url("../images/family_in_car.jpg");
}
.uk {
    background: url("../images/big_map.png") no-repeat bottom 0px right, url("../images/family_fishing_uk.jpg");
}
.longstay {
    background: url("../images/big_map.png") no-repeat bottom 0px right, url("../images/woman_floating_in_lagoon.jpg");
}
.cruise {
    background: url("../images/big_map.png") no-repeat bottom 0px right, url("../images/cruise_ship.jpg");
}
.wintersports {
    background: url("../images/big_map.png") no-repeat bottom 0px right, url("../images/family_ski_trip.jpg");
}
.over50s {
    background: url("../images/big_map.png") no-repeat bottom 0px right, url("../images/couple_on_bicycles.jpg");
}
.hero-overlay {
    psition: relative;
    width: auto;
    min-height: 820px;
}
#masthead-wrapper-sub.subpage-wrapper, .subpage-wrapper {
    min-height: 720px;
}
.hero-overlay-img {
    width: auto;
    min-height: 820px;
    position: absolute;
    top: 56%;
    -ms-transform: translateY(-44%);
    transform: translateY(-44%);
    padding-top: calc(20vh);
    padding-bottom: 40px;
}
#masthead {
    position: relative;
    min-height: 820px;
}
.masthead-button {
    margin-right: 20px;
    margin-top: 90px;
}
.CTA_button {
    padding: 18px;
    background-color: #F8FF00;
    border-radius: 4px;
    border: 0px;
    font-weight: 700;
    text-transform: uppercase;
    color: #000000;
}
.CTA_button:hover {
    background-color: #E9EF94;
    box-shadow: 0px 0px 0px 4px rgba(0, 175, 206, 0.7);
}
#hero {
    top: 0px;
    height: auto;
    width: 100%;
    z-index: 999;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-repeat: no-repeat;
    background-position: bottom;
}
.herobanner {
    position: relative;
    min-height: 820px;
}
.hero-strap {
    position: relative;
    top: 58%;
    -ms-transform: translateY(-42%);
    transform: translateY(-42%);
    text-align: right;
    padding-top: 20vh;
    padding-bottom: 40px;
}
.brandname {
    padding-right: 20px;
    font-size: 2.4rem;
    font-weight: 400;
    color: #ffffff;
}
.strapline h1 {
    font-size: 5.8rem;
    font-weight: 700;
    line-height: 0.9;
    padding-right: 20px;
    color: #F8FF00;
}
.subpage-wrapper .strapline h1 {
    font-size: 3.8rem;
    font-weight: 700;
    line-height: 0.9;
    padding-right: 20px;
    color: #F8FF00;
}
.strapline h2 {
    font-size: 3.8rem;
    font-weight: 700;
    padding-right: 20px;
    line-height: 0.9;
    color: #3DF5FF;
}
/* ----- End Page Masthead CSS ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Page Quickquote Form CSS ----- */
#substrap-ribbon {
    background-image: linear-gradient(45deg, rgba(0, 6, 15, 1), rgba(0, 6, 15, 1), rgba(0, 70, 70, 1));
    height: 110px;
    overflow: visible;
}
.quickquote-ribbon {
    position: relative;
    z-index: 997;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 0px;
    padding-right: 0px;
}
.quickquote-ribbon-subpage {
    position: relative;
    z-index: 997;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 0px;
    padding-right: 0px;
}
.quickquote {
    border-radius: 6px;
    border: 0.5px solid #010c0e;
    background: rgba(5, 35, 43, 0.9);
    padding: 20px 10px;
    position: relative;
    top: -90px;
}
.formfield {
    display: inline-block;
}
.formlabel {
    padding-bottom: 4px;
    color: #ffffff;
}
input {
    width: 100%;
    padding: 6px 6px 6px 6px;
    border: 0px;
    height: 51px;
    border-radius: 4px;
    background-color: #ECEBEB;
}
input, #countryInput, #duration1, #tripdate1, #medicalInput {
    /* min-width: 270px; */
    background-color: #C9D7CE;
}
select {
    width: 100%;
    padding: 6px 6px 6px 6px;
    border: 0px;
    height: 50px;
    border-radius: 4px;
    background-color: #ECEBEB;
}
.formlabel {
    padding-bottom: 10px;
}
.autocomplete-items {
    position: absolute;
    top: 103%; /* directly below the input */
    left: 0;
    right: 0;
    z-index: 9950; /* very high to ensure visibility */
    border: 0.5px solid #000000;
    border-top: 0px;
}
.autocomplete-item {
    padding: 10px;
    cursor: pointer;
    top: 6px;
    min-height: 40px;
    color: #000000;
    border-radius: 3px;
    background-color: #ffffff;
}
.autocomplete-item:hover {
    background-color: #F8FF00;
    color: #000000;
}
.autocomplete-wrapper {
    position: relative;
    overflow: visible; /* ✅ This ensures the dropdown can overflow */
}
.date-wrapper {
    width: 100%;
    display: flex;
}
input[type="date"] {
    flex: 1;
    font-size: 16px; /* avoids iOS zoom */
    padding: 0.5em;
    box-sizing: border-box;
    appearance: auto;
    -webkit-appearance: auto;
}
/* ----- End Page Quickquote Form CSS ----- */
/*
/
/
/
/
/
/
*/
/* Start Dummy Login Box Styles */
.dummy_login_box_outer {
    margin-bottom: 40px;
}
.dummy_login_box_inner {
    border: 1px solid #b4b4b4;
    border-radius: 3px;
    padding: 30px;
}
input[type=text] {
    width: 100%;
    padding: 12px 6px;
    outline: 0px;
}
.date-wrapper {
    width: 100%;
    display: flex;
}
input[type="date"] {
    flex: 1;
    font-size: 16px; /* avoids iOS zoom */
    padding: 0.5em;
    box-sizing: border-box;
    appearance: auto;
    -webkit-appearance: auto;
}
input[type=text]:focus-visible, .custom-button:focus-visible, .quickquote_button_quote:focus-visible, .quickquote_button_back:focus-visible, .add_country_button:focus-visible, .add_medical_button:focus-visible, .datepicker-icon:focus-visible, input[type=email]:focus-visible, input[type=date]:focus-visible, input[type=tel]:focus-visible, input[type=number]:focus-visible, select:focus-visible, .custom-toggle2:focus-visible, input[type=checkbox]:focus-visible, .custom-toggle .slider:focus-visible, .custom-toggle input[type="checkbox"]:focus-visible + .slider, input[type=range]:focus-visible, input[type=search]:focus-visible {
    outline: 6px solid #15fabc;
    border: 2px solid #ffffff;
    /* padding: 6px;
    margin-top: 6px; */
}
.dummy_login_submit_button {
    width: 100%;
    border: 0px;
    height: 50px;
    padding: 6px 12px;
    color: #000000;
    font-weight: 700;
    border-radius: 4px;
    background-color: #F8FF00;
    text-transform: uppercase;
}
.dummy_login_submit_button:hover {
    background-color: #F6FCC9;
    outline: 3px solid #60D5FF;
    transition: ease-in-out;
}
.dummy_login_submit_button:focus-visible {
    outline: 6px solid #15fabc;
    border: 2px solid #ffffff;
    padding: 6px;
    margin-top: 6px;
    height: 40px;
}
/* End Dummy Login Box Styles */
/*
/
/
/
/
/
/
*/
/* Start Customer Zone Styles */
.customer_zone_outer {
    height: 100%;
    margin-bottom: 10px;
}
.customer_zone_inner {
    background-color: #D1D1D1;
    height: 100%;
    padding: 30px;
}
.customer_zone_header h2 {
    font-size: 1.2rem;
    font-weight: 700;
}
.customer_zone_content {
    padding-top: 20px;
}
.customer_zone_box_footer {
    min-height: 70px;
    background-image: url("../images/background.png");
}
/* ----- End Customer Zone Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Standard Document Button ----- */
.standard_document_section {
    padding-top: 20px
}
.standard_document_button_box {
    width: 100%;
    text-align: center;
}
.standard_document_button_box_padding {
    padding-bottom: 20px;
}
.standard_document_button {
    width: 100%;
    border: 0px;
    padding: 12px;
    color: #ffffff;
    border-radius: 3px;
    background-color: #015C4D;
}
.standard_document_button:hover {
    color: #ffffff;
    background-color: #02826D;
    transition: ease-in-out;
}
.standard_document_button:focus-visible {
    outline: 6px solid #15fabc;
    border: 2px solid #ffffff;
    padding: 6px;
}
/* ----- End Standard Document Button ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Product Choice Section ----- */
.singletrip_box {
    min-height: 230px;
    padding: 60px;
    text-align: right;
    line-height: 1.3;
    background-image: url(../images/covertype-left.jpg);
    background-size: cover;
    color: #ffffff;
}
.amt_box {
    min-height: 230px;
    padding: 60px;
    text-align: left;
    line-height: 1.3;
    background-image: url(../images/covertype-right.jpg);
    background-size: cover;
    color: #ffffff;
}
/* ----- End Product Choice Section ------ */
/*
/
/
/
/
/
/
*/
/* ----- Start Button Styles ----- */
.quickquote_button {
    padding: 6px 10px 6px 10px;
    background-color: #F8FF00;
    min-width: 180px;
    border: 0.5px;
    border-radius: 4px;
    border-color: #ff890c;
    color: #000000;
    height: 51px;
    margin-top: 34px;
    text-transform: uppercase;
    font-weight: 700;
}
.quickquote_button_quote {
    padding: 6px 10px 6px 10px;
    background-image:linear-gradient(45deg, rgba(3, 118, 82, 1), rgba(96, 172, 6, 1));
    min-width: 180px;
    border: 0.5px;
    border-radius: 4px;
    border-color: #ff890c;
    color: #ffffff;
    height: 51px;
    margin-top: 34px;
    text-transform: uppercase;
    font-weight: 700;
}
.quickquote_button:hover {
    background-color: #E9EF94;
    box-shadow: 0px 0px 0px 4px rgba(0, 175, 206, 0.7);
}
.quickquote_button_quote:hover {
    background-image:linear-gradient(45deg, rgba(3, 118, 82, 1), rgba(96, 172, 6, 1));
    box-shadow: 0px 0px 0px 4px rgba(0, 175, 206, 0.7);
}
.quickquote_button_back {
    padding: 6px 10px 6px 10px;
    background-color: #121212;
    min-width: 180px;
    border: 0.5px;
    border-radius: 4px;
    border-color: #121212;
    color: #ffffff;
    height: 51px;
    margin-top: 34px;
    text-transform: uppercase;
    font-weight: 700;
}
.quickquote_button_back:hover {
    box-shadow: 0px 0px 0px 4px rgba(0, 175, 206, 0.7);
}
.button-tray {
    text-align: center;
}
.button-tray-fix {
    padding-top: 30px;
}
.button-tray-fix-lrg {
    padding-top: 60px;
}
/* ----- End Button Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Standard One Column Section Styles ----- */
.standard_one {
    padding: 110px 0px 110px 0px;
}
.standard_shaded {
    background-color: #134e5b;
}
.standard_red {
    background-color: #C10239;
}
.standard_heading {
    text-align: center;
}
.standard_one_column_heading h2 {
    text-transform: uppercase;
    font-size: 1.6rem;
    margin-bottom: 40px;
    color: #ffffff;
    display: inline-block;
    position: relative;
    padding-bottom: 10px;
}
.standard_one_column_heading h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; /* instead of width: 100% */
    height: 4px;
    background: linear-gradient(to right, #0189bc, #056559, #ccff00);
}
.col-lg-12 {
    margin-bottom: 10px;
}
.standard_one_column_card {
    height: 100%;
}
.one_column_card_outer {
    position: relative;
    height: 100%;
}
.one_column_card_inner {
    padding: 30px;
}
.one_column_card_heading {
    height: 100%;
    text-align: center;
}
.one_column_card_heading h1 {
    font-size: 2.2rem;
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #000000;
    display: inline-block;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 50px;
}
.one_column_card_heading h1::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; /* instead of width: 100% */
    height: 4px;
    background: linear-gradient(to right, #0189bc, #056559, #ccff00);
}
.one_column_card_heading h2 {
    font-size: 1.8rem;
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #000000;
}
.one_column_card_heading h3 {
    font-size: 1.8rem;
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #ffffff;
}
.one_column_card_content1, .one_column_card_content2, .one_column_card_content3 {
    text-align: center;
    color: #ffffff;
    margin: 0px 20px;
}
.one_column_white h3, .one_column_white {
    color: #000000;
}
.feature_image_control_outer {
    margin-bottom: 20px;
}
.featureimagecontrol {
    position: relative;
    margin-bottom: -200px;
    width: 100%;
}
.feature-card-image-frame {
    position: relative;
    z-index: 700;
    background-image: url("../images/bog-card-curve.png");
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
    height: 200px;
    width: 100%;
    text-align: center;
    bottom: 0px;
}
.feature-card-image {
    position: relative;
    z-index: 699;
    top: -200px;
    width: 100%;
}
.featurebox_mobilepush {
    height: 20px;
}
/* ----- End Standard One Column Section Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Standard Three Column Section Styles ----- */
.standard_three {
    padding: 110px 0px 110px 0px;
}
.standard_shaded {
    background-color: #134e5b;
}
.standard_heading {
    text-align: center;
}
.standard_three_column_heading h2 {
    display: inline-block;
    position: relative;
    padding-bottom: 10px;
}
.standard_three_column_heading h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; /* instead of width: 100% */
    height: 4px;
    background: linear-gradient(to right, #0189bc, #056559, #ccff00);
}
.standard_three_column_heading h2 {
    text-transform: uppercase;
    font-size: 1.6rem;
    margin-bottom: 40px;
    color: #19464F;
}
.standard_three_column_heading_white h2 {
    color: #ffffff;
}
.col-lg-12 {
    margin-bottom: 10px;
}
.standard_three_column_card {
    height: 100%;
}
.three_column_card_outer {
    position: relative;
    height: 100%;
    background-color: #ffffff;
}
.three_column_card_inner {
    padding: 30px;
    background-color: #ffffff;
}
.three_column_card_heading {
    height: 100%;
    background-color: #ffffff;
    text-align: center;
    color: #000000;
}
.three_column_card_heading h3 {
    font-size: 1.4rem;
    margin-bottom: 20px;
}
.three_column_card_content1, .three_column_card_content2, .three_column_card_content3 {
    text-align: center;
}
.three_column_card_outer_dark {
    position: relative;
    height: 100%;
}
.three_column_card_inner_dark {
    background-color: #003231;
    border: 0.5px solid #016857;
}
.three_column_card_heading_dark {
    height: 100%;
    background-color: #003231;
    text-align: center;
    padding: 20px 30px 0px 30px;
    position: relative;
}
.three_column_card_heading_inner_dark {
    background-color: #003231;
    text-align: center;
    padding: 20px 20px 20px 20px;
    position: relative;
    top: -80px;
    border-top: 8px solid #00FFF3;
    ;
}
.three_column_card_heading_dark h3 {
    font-size: 1.4rem;
    margin-bottom: 20px;
    color: #ffffff;
}
.three_column_card_content1_dark, .three_column_card_content2_dark, .three_column_card_content3_dark {
    text-align: center;
    padding: 0px 30px 0px 30px;
    color: #ffffff;
}
.three_column_card_content1_inner_dark {
    position: relative;
    margin-bottom: -100px;
    background-color: #003231;
    text-align: center;
    top: -100px;
}
/* ----- End Standard Three Column Section Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Standard Four Column Section Styles ----- */
.standard_four {
    padding: 110px 0px 110px 0px;
}
.shuffle_fix_top {
    padding-top: 40px;
}
.shuffle_fix_bottom {
    padding-bottom: 0px;
}
.standard_heading {
    text-align: center;
}
.standard_four_column_heading h2 {
    text-transform: uppercase;
    font-size: 1.6rem;
    margin-bottom: 40px;
    color: #19464F;
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}
.standard_four_column_heading h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; /* instead of width: 100% */
    height: 4px;
    background: linear-gradient(to right, #0189bc, #056559, #ccff00);
}
.col-lg-12 {
    margin-bottom: 10px;
}
.standard_four_column_card {
    height: 100%;
    background-color: #ffffff;
    border-radius: 3px;
}
.four_column_card_outer {
    position: relative;
    height: 100%;
    background-color: #ffffff;
}
.four_column_card_inner {
    background-color: #ffffff;
    border: 0.5px solid #e3e3e3;
}
.four_column_card_heading {
    height: 100%;
    background-color: #ffffff;
    text-align: center;
    padding: 20px 30px 0px 30px;
    border: 0.5px solid #e3e3e3;
    position: relative;
}
.four_column_card_heading_inner {
    background-color: #ffffff;
    text-align: center;
    padding: 20px 20px 20px 20px;
    position: relative;
    top: -80px;
    border-top: 8px solid #F8FF00;
}
.four_column_card_heading h3 {
    font-size: 1.4rem;
    margin-bottom: 20px;
}
.four_column_card_content1, .four_column_card_content2, .four_column_card_content3 {
    text-align: center;
    padding: 0px 30px 0px 30px;
}
.four_column_card_content1_inner {
    position: relative;
    margin-bottom: -100px;
}
.four_column_card_content1_inner {
    text-align: center;
    position: relative;
    top: -100px;
}
/* ----- End Standard Four Column Section Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Page FAQ Section CSS ----- */
#faqs {
    padding-top: 120px;
    padding-bottom: 80px;
    z-index: 3;
    background-image: url("../images/foliage.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}
#faqs a {
    color: #9C0345;
}
#faqs h3 {
    font-size: 1rem;
    margin-bottom: 0px;
}
.white_text {
    display: inline-block;
    color: #ffffff;
    margin-bottom: 30px;
}
.green_text {
    display: inline-block;
    color: #0E404A;
    margin-bottom: 30px;
}
.accordion {
    padding: 30px 90px 30px 90px;
}
.accordion-item {
    margin: 10px 0px 10px 0px;
    border-radius: 4px;
    border: 2px solid #F8FF00;
}
.accordion-button {
    background-color: #C8EDE3;
    ;
}
.accordion-button:not(.collapsed) {
    background-color: #00393B;
    color: #ffffff;
}
.accordion-button:focus {
    border-color: #A3E100 !important;
    box-shadow: 0 0 0 0.25rem rgb(186 255 0 / 25%) !important;
}
.accordion-body {
    color: #000000;
    text-align: left;
}
.accordion-item:not(:first-of-type) {
    border: 2px solid #F8FF00;
}
.accordion-button:not(.collapsed)::after {
    background-image: url("../images/uparrow.png")
}
/* ----- End Page FAQ Section CSS ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Product Table Styles ----- */
.cover_section {
    text-align: left;
}
.product_tick {
    color: green;
    text-align: right;
}
/* ----- End Product Table Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Subpage Styles ----- */
#top-subpage {
    padding-top: 45px;
}
.border_stripe {
    height: 5px;
    background-color: #F8FF00;
}
.img_icon {
    padding-bottom: 10px;
}
/* ----- End Subpage Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Footer Section Styles ----- */
#footer {
    padding-top: 90px;
    padding-bottom: 70px;
    height: 100%;
    background-color: #004647;
    border-top: 0.5px solid #00826F;
}
.regtext {
    font-size: 0.8rem;
    color: #ffffff;
}
.regtext img {
    padding-bottom: 20px;
}
.submenu {
    padding-top: 90px;
}
.submenu a {
    color: #ffffff;
}
.submenu a:hover {
    color: #C0FF00;
}
.social {
    color: #ffffff;
    font-size: 2.4rem;
    text-align: right;
}
.social .fa-facebook, .fa-tiktok {
    padding-right: 10px;
    display: none;
}
.fa-instagram {
    display: none;
}
/* ----- End Footer Section Styles ----- */
/*
/
/
/
/
/
/
*/
/* ----- Start Quote Styles ----- */

.quote_form_container {
	min-height:70vh;
}

.quote_tray_outer_left {
	border:0.5px solid #187D84;
	border-radius:4px;
	padding:20px 20px 50px 20px;
	min-height:600px;
	width:100%;
	margin-bottom:10px;
}

.quote_tray_outer_right {
	border:0.5px solid #187D84;
	border-radius:4px;
	padding:20px;
	min-height:600px;
	background-color:#187D84;
	width:100%;
	margin-bottom:10px;
	height:99%;
}

.breadcrumbs {
	min-height:50px;
	margin:10px 0px 10px 0px;
	text-align:center;
	
}

.quote_stage_left_title legend { /* Remove */
	padding:10px 90px 20px 90px;
	text-align:center;
	font-size:1.4rem;
	color:#187D84;
	float:none;
}

.quote_stage_left_title h1 {
	padding:10px 90px 20px 90px;
	text-align:center;
	font-size:1.4rem;
	color:#187D84;
	float:none;
}

.question_box_center {
	text-align:center;
}

.quote_button_tray {
	padding-top:30px;
	width:100%;
	text-align:center;
}

 fieldset { display: none; border: none; }
    fieldset.active { display: block; }
    .custom-button { display: inline-block; padding: 10px 20px; border: 1px solid #333; cursor: pointer; border-radius: 5px; user-select: none; width:100%; text-align:center; min-height:180px; margin-bottom:6px; position:relative; overflow: visible;}
    .custom-button.selected { background-color: #333; color: #fff; }
    .horizontal-group { display: flex; gap: 10px; align-items: center; }
    .range-group { align-items: center; gap: 10px; margin: 10px 0; }

input[type="text"], input[type="email"], input[type="search"], input[type="date"], input[type="number"],  input[type="tel"], select {
	background-color:#DCF1E9;
}

input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 3px; /* fallback height */
  background: transparent; /* so track styles apply */
  margin: 20px 0; /* enough space for large thumb */
}

/* Track */
input[type="range"]::-webkit-slider-runnable-track {
  height: 3px;
  background: linear-gradient(90deg, #4caf50 0%, #8bc34a 100%);
  border-radius: 4px;
}

input[type="range"]::-moz-range-track {
  height: 3px;
  background: linear-gradient(90deg, #4caf50 0%, #8bc34a 100%);
  border-radius: 4px;
}

input[type="range"]::-ms-track {
  height: 3px;
  background: transparent;
  border-color: transparent;
  color: transparent;
}

/* Thumb */
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 40px;
  height: 40px;
  background: #F8FF00;
  border-radius: 50%;
  border: 5px solid #187D84;
  cursor: pointer;
  margin-top: -19px; /* half thumb height - half track height */
  position: relative;
  z-index: 3;
  box-shadow: 0 0 2px rgba(0,0,0,0.5);
  transition: background 0.3s ease;
}

input[type="range"]::-webkit-slider-thumb:hover {
  background: #50FFAA;
}

input[type="range"]::-moz-range-thumb {
  width: 40px;
  height: 40px;
  background: #F8FF00;
  border-radius: 50%;
  border: 5px solid #187D84;
  cursor: pointer;
  box-shadow: 0 0 2px rgba(0,0,0,0.5);
  transition: background 0.3s ease;
}

input[type="range"]::-moz-range-thumb:hover {
  background: #FF8F20;
}

input[type="range"]::-ms-thumb {
  width: 40px;
  height: 40px;
  background: #F8FF00;
  border-radius: 50%;
  border: 5px solid #187D84;
  cursor: pointer;
  box-shadow: 0 0 2px rgba(0,0,0,0.5);
  transition: background 0.3s ease;
}

input[type="range"]:focus::-webkit-slider-thumb {
  outline: 6px solid #187D84;
}

/* Start Toottip Styles */
/* Tooltip container */
.modaltooltip_outer {
	position: relative;
	width:100%;
	text-align:right;

}

.modaltooltip {
    position: relative;
    display: inline-block;
	color:#000000;
	font-size:1.3rem;
	z-index:1;
}
/* Tooltip text */
.modaltooltip .modaltooltiptext {
    visibility: hidden;
    width: 170px;
    background-color: #0d0d0d;
    color: #fff;
    text-align: center;
    padding: 16px;
    border-radius: 4px;
    font-size: 0.8rem;
    /* Position the tooltip text */
    position: absolute;
    z-index: 800;
    bottom: 125%;
    left: 50%;
    margin-left: -85px;
    /* Fade in tooltip */
    opacity: 0;
    transition: opacity 0.3s;
}
.modaltooltiptext.landing_tooltip {
    width: 300px;
    margin-left: -150px;
}
/* Tooltip arrow */
.modaltooltip .modaltooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #0d0d0d transparent transparent transparent;
	z-index:800;
}
.modaltooltiptext.landing_tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #0d0d0d transparent transparent transparent;
	z-index:800;
}
/* Show the tooltip text when you mouse over the tooltip container */
.modaltooltip:hover .modaltooltiptext {
    visibility: visible;
    opacity: 1;
	z-index:800;
}

/* End Toottip Styles */

.calendar_icon {
	position:relative;
	margin:0px;text-align:center;
}

.calendar_icon i {
	font-size:2.2rem;
	color:#19464F;
	margin-top:5px;
	cursor:pointer;
}

.custom-toggle {
  /* display: flex; */
  align-items: center;
  gap: 10px;
  flex-direction: column;
  margin: 20px 0 40px 0px;
}
.custom-toggle::after {
		background-color:#606060;
}

.toggle-switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;

}

.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
		
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: #606060;
  transition: 0.4s;
  border-radius: 34px;
}

/* The round knob */
.slider::before {
  position: absolute;
  content: "";
  height: 26px; width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  transition: 0.4s;
  border-radius: 50%;
}

/* When checked, move the knob and change background */
.toggle-switch input:checked + .slider {
  background-color: #009E96;
}

.toggle-switch input:checked + .slider::before {
  transform: translateX(26px);
}

.custom_bullet {
max-width:40px;
	color:#187D84;

}
input[type="checkbox"].standard  {
	width:30px;
	height:30px;
}

.checkbox_label_standard {
	align-content:center;
	padding-left:10px;
	display:inline-block;
}
input[type="checkbox"].standard  {
	width:30px;
	height:30px;
}
input[type="checkbox"].standard:checked  {
	appearance: none;
	-webkit-appearance: none;
	background-color:#070707;
	color:#ffffff;
}
input[type="checkbox"].standard:checked::after {
  content: "✓";
  color: white;
  display: block;
  text-align: center;
  font-size: 18px;
	font-weight:700;
	padding-top:5px;
}
/*.slider {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  border-radius: 34px;
  transition: 0.4s;
  cursor: pointer;
}

.slider::before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  border-radius: 50%;
  transition: 0.4s;
} */

/* .toggle-switch input:checked + .slider {
  background-color: #4caf50;
}

.toggle-switch input:checked + .slider::before {
  transform: translateX(26px);
} */

.toggle-labels {
  display: flex;
  justify-content: space-between;
  width: 60px;
  font-size: 0.9em;
}

.option_toggle_box {
	text-align:right;
}
.option_toggle_label {
	display:inline;
	padding-right:10px;
	position:relative;
	top:-5px;
}

.optional_extra_row {
	padding-bottom:10px;
	border-bottom:0.5px solid #187D84;
	margin-bottom:14px;
}
#option1Selected, #option2Selected, #option3Selected, #option4Selected, #option5Selected, #option6Selected, #option7Selected, #option8Selected, #option9Selected, #option10Selected  {
	display:block;
	color:#187D84;
	font-weight:700;
	
}

.custom-toggle2 {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: none;
  background-image:linear-gradient(45deg, rgba(3, 118, 82, 1), rgba(96, 172, 6, 1));
  color: #ffffff;
  font-size: 2rem;
  font-weight: bold;
  cursor: pointer;
  user-select: none;
  transition: background-color 0.2s, color 0.2s;
}

.custom-toggle2::before {
  content: "+";
}

.custom-toggle2[data-selected="true"] {
  background-color: #007bff;
  color: #fff;
}

.custom-toggle2[data-selected="true"] {
	background-image:linear-gradient(45deg, rgba(38,38,38,1), rgba(38,38,38,1));
}

.custom-toggle2[data-selected="true"]::before {
  content: "×";
}


.question_title {
	padding:20px 0px 10px 0px;
	text-align:left;
}

.remove_traveller_tray {
	padding:30px 0px 10px 0px;
	width:100%;
}

hr {
	color:#232323;
}

.add_traveller_tray {
	padding:10px 0px 6px 0px;
	width:100%;
}

.remove_traveller_tray .option_toggle_box {
	width:100%;
}

.remove_traveller_tray .custom-toggle2 {
	position:relative;
	right:0px;
}

.price_outer {
	padding-bottom:30px;
	margin-left:-20px;
	margin-right:-20px;
	border-bottom:0.5px solid #000000;
	margin-bottom:20px;
}

.price_top {
	font-size:3.8rem;
	width:100%;
	text-align:center;
	font-weight:700;
	color:#187D84;
	margin-top:-30px;
}

.ipt_top {
	width:100%;
	text-align:center;
margin-top:-20px;
}

.slider_container {
	border:0.5px solid #535353;
	width:100%;
	border-radius:2px;
	margin-bottom:6px;
}

.slider_container_top1, .slider_container_top2, .slider_container_top3 {
	min-height:50px;
	text-align:center;
	font-weight:700;
	color:#064f54;
	font-size:1.1rem;
	padding-top:10px;
}
.slider_container_top1 {
	background-color:#F6FFE8;

}.slider_container_top2 {
	background-color:#E8FFF6;

}
.slider_container_top3 {
	background-color:#E8F7FF;

}

.slider_container_descriptor {
	color:#187D84;
	padding:20px 110px 10px 110px;
	text-align:center;
}

.range_left {
	width:50%;
	font-weight:700;
	text-align:left;
	font-size:1.2rem;
}
.range_right {
	width:50%;
	font-weight:700;
	text-align:right;
	font-size:1.2rem;
}

.manual_input_row {
	padding:30px 0px 30px 0px;
}
.manual_input_label {
	text-align:right;
	align-content: center;
}

.optional_extra_title {
	color:#187D84;
	text-align:center;
	padding:20px 0px 50px 0px;
	font-size:1.3rem;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


.country-tag, .medical-tag {
  background-image:linear-gradient(45deg, rgba(3, 118, 82, 1), rgba(96, 172, 6, 1));
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 1rem;
color:#ffffff;
	font-weight:700;
}
.country-tag .btn-close, .medical-tag .btn-close {
    margin-left: 8px;
    font-size: 10px;
    width: 30px;
    height: 30px;
    padding: 0;
    background-color: #ffffff;
    border: none;
    border-radius: 50%;
    color: #ffffff;
    position: relative;
    right: -8px;
}


.add_country_button, .add_medical_button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50% !important;
  border: none;
  background-image:linear-gradient(45deg, rgba(3, 118, 82, 1), rgba(96, 172, 6, 1));
  color: #ffffff;
  font-size: 2rem;
  font-weight: bold;
  cursor: pointer;
  user-select: none;
	
	align-content: center;
	margin-left:20px !important;
}


.decline_explanation {
	padding:10px 110px 0px 110px;
	text-align:center;
}

.avatar_container {
	text-align:center;
	padding-top:10px;

}
.avatar_messaging_outer {
	position:relative;
	height: 70%;
	margin-top:60px;

}
.avatar_messaging {
  position: sticky;
  top: 30%;
  transform: translateY(-30%);
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
color:#ffffff;
	font-size:1.1rem;
}

.form_subtitle {
	font-size:1.2rem;
	padding-bottom:10px;
	padding-top:30px;
}

.marketing_consent_body {
	padding-bottom:20px;
}

.toggle-labels {
	padding-top:12px;
}

.quote_summary_upper {
	padding:30px;
	background-color:#e3e9d5;
	margin-bottom:10px;
}

.quote_summary_middle {
	padding:30px;
	background-color:#51CCBC;
	margin-bottom:10px;
}

.quote_summary_bottom {
	padding:30px;
	background-color:#d5e9e2;
	margin-bottom:10px;
}

.quote_summary_upper .form_subtitle, .quote_summary_middle .form_subtitle, .quote_summary_bottom .form_subtitle {
	padding-top:0px;
	font-weight:700;
}

.quote_summary_line_right {
	font-weight:700;
	text-align:right;
}

.qsr_1 {
	background-color:#ffffff;
	padding:6px 0px;
}
.qsr_2 {
	background-color:#e3e9d5;
	padding:6px 0px;
}
.qsr_3 {
	background-color:#d5e9e2;
	padding:6px 0px;
}
.quote_summary_row i {
	color:#009E48;
} 

.policy_info_accordion {
	padding:0px;
}

.cover_detail_accordion {
	padding:0px;
}

.cover_detail_line {
	padding:6px 0px;
}

.cover_detail_left {
	margin-bottom:3px;
	border-bottom:0.5px solid #000000;
}
.cover_detail_right {
	text-align:right;
	margin-bottom:3px;
	border-bottom:0.5px solid #000000;
}

.quote_stage_left_title {
    /* min-height: 100px; */
}
.policy_documents_inner {
	padding: 20px 0px;
	border-bottom:0.5px solid #000000;
}
.policy_documents_inner a {
color:#000000;
}
.policy_documents_inner a:hover {
text-decoration:underline;
}
.policy_documents_icon  {
	text-align:right;
}
.policy_documents_icon i {
	color:#187D84;
	font-size:1.6rem;
}
.important_information_outer {
	background-color:#e6f5f0;
	margin-top:40px;
	padding:20px;
}
.important_information_outer .form_subtitle {
	padding-top:0px;
}

.amt_upgrade legend {
	font-weight:700;
	color:hsla(92,100%,31%,1.00);
}
.amt_upgrade_inner {
	text-align:center;
}
.amt_upgrade_price {
	font-weight:700;
	/* color:#187D84; */
	font-size:1.1rem;
}
/* ----- End Quote Styles ----- */
/*
/
/
/
/
/
/
/
*/
/* ----- Start Media Queries ----- */
@media only screen and (max-width:1700px) {
    .launch_banner {
        background: url("../images/big_map.png") no-repeat bottom right -220px, url("../images/launch_banner.jpg") no-repeat;
        background-size: auto, cover;
    }
}
@media only screen and (max-width:1400px) {
    #masthead-wrapper-sub .subpage-wrapper {
        background-size: cover;
        background-position: top left;
    }
    .launch_banner .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/launch_banner.jpg);
        background-size: cover;
        background-position: top left;
    }
    .annual .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/family_running_on_beach.jpg);
        background-size: cover;
        background-position: top left;
    }
    .single .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/couple_gazing_at_stars.jpg);
        background-size: cover;
        background-position: top left;
    }
    .worldwide .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/woman_in_canyon.jpg);
        background-size: cover;
        background-position: top left;
    }
    .europe .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/family_in_car.jpg);
        background-size: cover;
        background-position: bottom left;
    }
    .uk .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/family_fishing_uk.jpg);
        background-size: cover;
        background-position: bottom left;
    }
    .longstay .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/woman_floating_in_lagoon.jpg);
        background-size: cover;
        background-position: bottom left;
    }
    .cruise .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/cruise_ship.jpg);
        background-size: cover;
        background-position: bottom left;
    }
    .wintersports .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/family_ski_trip.jpg);
        background-size: cover;
        background-position: bottom left;
    }
    .over50s .subpage-wrapper {
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/couple_on_bicycles.jpg);
        background-size: cover;
        background-position: bottom left;
    }
}
@media only screen and (max-width:1400px) {
    #masthead-wrapper-home {
        background: url(../images/map_corner.png) no-repeat bottom left, url(../images/launch_banner.jpg);
    }
}
@media only screen and (max-width: 1240px) {
    .col-sm-1 {
        margin-bottom: 10px;
    }
    .topnav.responsive {
        position: absolute;
        right: 0px;
        width: 45%;
        height: 100vh;
        padding-top: 70px;
        padding-bottom: 40px;
        background-color: rgba(0, 45, 50, 0.8);
    }
    .topnav {
        top: 0px;
        padding: 0px;
    }
    .topnav a {
        padding: 9px 30px;
    }
    .topnav.responsive .icon {
        position: absolute;
        top: 9px;
        left: 0px;
        width: 100%;
        height: auto;
    }
    .topnav.responsive a {
        float: none;
        display: block;
        text-align: left;
        padding: 0px 30px;
        width: 70%;
    }
    /* .fa, .fas, #burger {
        font-size: 1.7rem;
        float: right;
        padding-top: 35px;
    } */
    .topnav.responsive a .fa, .fas {
        padding-top: 14px;
    }
    .topnav a {
        display: none;
    }
    .topnav a.icon {
        float: right;
        display: block;
    }
    .contentblockright {
        border-left-color: #C9022D;
        border-left-style: solid;
        border-left-width: 0.5;
        border-right-width: 0px;
    }
    .contentblockright h2 {
        padding: 0px 0px 30px 90px;
    }
    .contentblockright p {
        padding-bottom: 10px;
        color: #000000;
        padding-left: 90px;
        line-height: 1.4;
    }
    .contentblockright_buttontray {
        width: 100%;
        text-align: left;
        padding-left: 90px;
    }
    ul {
        padding-left: 90px;
    }
    #masthead-wrapper-home {
        background: url("../images/map_corner.png") no-repeat bottom left, url("../images/launch_banner.jpg");
        background-size: auto, auto, cover;
    }
}
@media only screen and (min-width:1200px) {
    .subpage-wrapper .hero-box {
        position: relative;
        height: 720px;
    }
    .subpage-wrapper .hero-strap {
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        text-align: right;
        /* padding-top: 20vh; */
        /* padding-bottom: 40px; */
        right: 0px;
        padding: 0px;
    }
}
@media (max-width: 1199.98px) { /* XL and below */
    .navbar-collapse {
        position: fixed;
        top: 0;
        right: 0;
        width: 45%;
        height: 100vh;
        background-color: rgba(0, 12, 24, 0.8); /* transparent sea */
        padding-top: 60px; /* to avoid overlap with navbar brand/toggler */
        z-index: 1050;
        transition: transform 0.2s ease-in-out;
    }
    .navbar-toggler {
        position: relative;
        z-index: 1100; /* higher than .navbar-collapse */
    }
    .navbar-collapse {
        z-index: 1050;
    }
    #burger {
        color: #F8FF00;
        font-size: 1.8rem;
    }
    .navbar-collapse:not(.show) {
        transform: translateX(100%);
    }
    .navbar-collapse.show {
        transform: translateX(0);
    }
    .navbar-nav {
        flex-direction: column;
        padding-left: 1rem;
    }
    .dropdown-menu {
        background-color: transparent;
        border: none;
    }
    .burgerlink, .nav-link {
        color: #fff !important;
    }
    .navbar-toggler {
        z-index: 1060; /* ensure it's above the menu */
    }
    .navbar-toggler:focus {
        box-shadow: unset;
    }
    .nav_getaquote {
        padding: 0px;
        background-color: unset;
        border-radius: 0px;
        margin-left: 0px;
        color: rgba(0, 0, 0, .55);
        padding-right: 20px;
    }
    .nav_getaquote .nav-link {
        color: #ffffff !important;
    }
    .nav_getaquote:hover {
        box-shadow: 0px 0px 0px 0px;
        color: #F8FF00;
        background-color: unset;
    }
}
@media only screen and (max-width:1199px) {
    li {
        list-style-position: inside;
    }
    .burgertray {
        padding-left: 20px;
        padding-right: 20px;
    }
    .nav-item:active, .nav-item:hover {
        color: #F8FF00;
    }
    .navbar-toggler-icon i {
        color: #F8FF00;
    }
    .navbar-toggler-icon i:hover {
        color: #F8FF00;
    }
    .dropdown-menu.show, .nav-item {
        padding-right: 70px;
    }
    .nav-item.dropdown {
        color: #000000;
    }
    a.burgerlink:hover {
        color: #F8FF00 !important;
    }
    .burgertray {
        position: absolute;
        right: 40px;
    }
    .formlabel {
        margin-top: 10px;
    }
    #substrap-ribbon {
        height: 450px;
    }
    #masthead-wrapper-sub.subpage-wrapper, .subpage-wrapper {
        min-height: 620px;
    }
    #masthead-wrapper-sub.subpage-wrapper, .subpage-wrapper {
        height: 620px;
    }
    .three_column_card_inner_dark, .four_column_card_inner {
        /* position: relative; */
        display: inline-block;
        width: 100%;
    }
    .button-tray-fix-lrg {
        padding-top: 0px;
        padding-bottom: 30px;
    }
	.range-group {
    padding: 0px 30px;
}
}
@media only screen and (max-width:768px) {
    .topnav.responsive {
        position: absolute;
        left: 0px;
        width: 100%;
        height: auto;
        padding-top: 70px;
    }
    .logobox {
        padding-left: 20px;
    }
    #masthead-wrapper-home {
        min-height: 500px;
        background-image:
            linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url(../images/launch_banner.jpg);
        background-size: cover;
        background-position: left;
    }
    .hero-overlay {
        min-height: 500px;
    }
    .hero-strap {
        padding-top: 10vh;
    }
    .strapline h1 {
        font-size: 4.2rem;
    }
    .strapline h2 {
        font-size: 2.6rem;
    }
    .content-block-heading h2 {
        font-size: 1.4rem;
    }
    .productfeature-heading h3 {
        font-size: 1.2rem;
    }
    .accordion {
        padding: 30px 30px 30px 30px;
    }
    .covid-statement-line1 {
        font-size: 1.3rem;
        line-height: 1;
        padding-top: 10px;
    }
    .blogsquare-sml {
        width: 100%;
        padding: 60px 60px 60px 60px;
        text-align: right;
        position: relative;
        min-height: 200px;
    }
    .dropdown-menu.show {
        text-align: left;
    }
    .navbar-collapse {
        width: 100%;
        height: auto;
        padding-bottom: 60px;
    }
    .amt_box {
        text-align: right;
    }
    .standard_three_column_heading h2, .standard_four_column_heading h2, .standard_one_column_heading h2 {
        font-size: 1.2rem;
        margin-left: 30px;
        margin-right: 30px;
    }
    .standard_three {
        padding: 60px 0px 80px 0px;
    }
    .standard_four, .standard_one {
        padding: 90px 0px 30px 0px;
    }
    .three_column_card_inner {
        padding-top: 10px;
    }
    .three_column_card_heading h3, .four_column_card_heading h3, .one_column_card_heading h3 {
        font-size: 1.1rem;
    }
    .singletrip_box {
        background-image: linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url("../images/covertype-left.jpg");
    }
    .amt_box {
        background-image: linear-gradient(rgba(0, 35, 35, 0.9), rgba(0, 35, 35, 0.3)), url("../images/covertype-right.jpg");
    }
    .singletrip_box h2, .amt_box h2 {
        font-size: 1.2rem;
    }
    #faqs h3 {
        font-size: 0.8rem;
    }
    .submenu {
        padding-top: 0px;
    }
    p {
        font-size: 0.8rem;
    }
    #masthead-wrapper-sub.subpage-wrapper, .subpage-wrapper {
        min-height: 520px;
    }
    #masthead-wrapper-sub.subpage-wrapper, .subpage-wrapper {
        height: 520px;
    }
    .subpage-wrapper .strapline h1 {
        font-size: 2.8rem;
    }
    .subpage-wrapper .hero-strap {
        position: absolute;
        padding-top: 0px;
        top: 50%;
        transform: translateY(-50%);
        padding: 0px 30px;
    }
    .one_column_card_heading h1 {
        font-size: 1.6rem;
    }
	.breadcrumbs img {
		width:80%;
		height:auto;
	}
	.quickquote_button, .quickquote_button_quote, .quickquote_button_back {
		width:100%;
		min-width:100px;
		margin-top:0px;
		margin-bottom:10px;
	}
	.quote_stage_left_title legend {
	padding:10px 0px 20px 0px;
}
	.quote_tray_outer_right {
    position: fixed;
    bottom: 0;
    left: 0;
		height:160px;
    /* width: 100vw; /* full viewport width */
    z-index: 1000; /* ensure it's above other content */
		margin-bottom:0px;
		border-radius:0px;
		margin-left:auto;
		margin-right:auto;
		padding:6px;
		min-height:0px;
}
	.avatar_messaging_outer {
		margin-top:0px;
		height:100%;
		margin-bottom:10px;
	}
	.avatar_messaging {
		font-size:0.9rem;
		transform:translateY(0%);
		top:0;
		margin:10px 0px;
	}
	.custom-button {
		 max-width:240px; 
	}
	.avatar_container img {
		width:12%;
		height:auto;
	}
	.quote_stage_left_title legend, .optional_extra_title {
    font-size: 1.1rem;
		padding-bottom:10px;

}
	.question_title, .option_toggle_label, .manual_input_label, .marketing_consent_body, .custom_bullet_text, .important_information_body, .policy_documents_label {
		font-size:0.9rem;
	}
	.price_top {
		font-size:2.4rem;
		padding-bottom:6px;
		padding-top:15px;
	}
	.slider_container_descriptor, .decline_explanation {
		padding:10px 10px 20px 10px;
		font-size:0.9rem;
	}
	.manual_input_row {
		padding: 20px 0px;
	}
	.range-group {
		padding:0px 22px;
	}
	.slider_container_top1, .slider_container_top2, .slider_container_top3 {
		font-size:1rem;
		padding:10px 12px;
	}
	.form_subtitle {
		font-size:1rem;
		font-weight:700;
	}
	.calendar_icon .fas {
		padding-top:0px;
	}
	.quote_summary_line_left, .quote_summary_line_right {
	text-align:left;
}
		.quote_summary_line_left {
	font-weight:700;
}
	.quote_summary_line_right {
	font-weight:500;
}
		.cover_detail_left {
	text-align:left;
	margin-bottom:3px;
	border-bottom:0px;
			padding-top:6px;
}
	.cover_detail_right {
	text-align:left;
		padding-bottom:6px;

}
	.quote_stage_left_title h1 {
    padding: 10px 10px 20px 10px;
	font-size: 1.2rem;

}
}
@media only screen and (max-width:576px) {
    .logobox {
        padding-left: 20px;
    }
    .footerdec {
        padding: 0px 0px 0px 20px;
    }
    .herotext {
        padding-top: 20vh;
    }
    .strapline h1 {
        font-size: 3.6rem;
    }
    .strapline h2 {
        font-size: 2.4rem;
    }
    .burgertray {
        right: 20px;
    }
    .nav a {
        font-size: 0.9rem;
    }
    .dropdown-item {
        padding: 6px 10px 6px 0px;
    }
    .quickquote {
        margin-left: 20px;
        margin-right: 20px;
    }
    input, #countryInput, #duration1, #tripdate1 {
        min-width: 0px;
    }
    .subpage-wrapper .strapline h1 {
        font-size: 2.1rem;
    }
	

}
@media only screen and (min-width:577px) {
    .herotext {
        margin: 0;
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}
@media only screen and (min-width:575px) {
    .logobox {
        padding-left: 20px;
        position: relative;
    }
    .dropdown-item {
        white-space: unset;
    }
}
@media only screen and (max-height:400px) {
    .herotext {
        padding-top: 20vh;
    }
}
@media only screen and (max-width:388px) {
    .brandname {
        font-size: 1.6rem;
        padding-right: 0px;
    }
    .hero-strap {
        padding-top: 10vh;
        padding-right: 30px;
    }
    .strapline h1 {
        font-size: 2.4rem;
        padding-right: 0px;
    }
    .strapline h2 {
        font-size: 2rem;
        padding-right: 0px;
    }
    .masthead-button {
        margin-right: 0px;
    }
    #masthead-wrapper-home, #masthead-wrapper-sub {
        height: 400px;
        min-height: 0px;
    }
    .submenu a {
        font-size: 0.8rem;
    }
    .four_column_card_outer {
        margin-bottom: -60px;
    }
}
/* ----- End Media Queries ----- */


/* ----- Start Focus Styles ----- */
a:focus-visible, .accordion-button:focus-visible {
    outline: 6px solid #15fabc;
}
.quickquote_button:focus-visible {
    outline: 6px solid #15fabc;
}
.quickquote_content_button:focus-visible {
    outline: 6px solid #15fabc;
}
input[type=text]:focus-visible, input[type=date]:focus-visible, select:focus-visible {
    outline: 6px solid #15fabc;
}
.navbar-toggler:focus-visible {
    outline: 6px solid #15fabc;
}
.CTA_button {
	outline: 0px;
}


/* Ensure the dropdown only appears when the parent link is hovered or clicked */
.navbar .dropdown-menu {
    display: none; /* Initially hidden */
}

/* Dropdown visibility when the 'show' class is added */
.navbar .dropdown-menu.show {
    display: block; /* Show when 'show' class is added */
}
/* ----- End Focus Styles ----- */


/* ----- start Dot Styles ----- */
/* .dot_tray {
    width: 100%;
    position: relative;
}
.dot_col {
    width: 100%;
    position: relative;
    text-align: center;
}
.dot1 {
    width: 15px;
  height: 15px;
background-color:#F8FF00;
	 transform: rotate(45deg);
	border-radius:1px;
    display: inline-block;
    position: absolute;
    top: -7px;
	left:calc(50% - 8px);
} */
/* ----- End Dot Styles ----- */



.quote_content_wrapper {
  position: relative;
  /* height: 100vh; */
  /* display: flex; */
  flex-direction: column;
}

/* Sticky top wrapper */
.quote_fixed_wrapper {
  position: sticky;
  top: 60px; /* Adjust this to your desired offset from viewport top */
  background: white; /* Ensure it covers content behind */
  z-index: 10; /* Stays on top */
  flex-shrink: 0; /* Don't shrink */
}

/* Scrollable area fills remaining space and scrolls internally */
.scrollable_area {
  flex-grow: 1;      /* Take all remaining vertical space */
  overflow-y: auto;  /* Enable vertical scrolling */
  scrollbar-width: none;          /* Firefox */
  -ms-overflow-style: none;       /* Internet Explorer 10+ */
}

.scrollable_area::-webkit-scrollbar {
  display: none;                  /* Safari and Chrome */
}






/* Base custom button style */
.custom-button {
  display: inline-block;
  padding: 10px 16px;
  border: 2px solid #ccc;
  border-radius: 6px;
  background-color: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: center;
  font-weight: 500;
  user-select: none;
}

/* Hover state */
.custom-button:hover {
  border-color: #999;
  background-color: #f9f9f9;
}

/* Active/selected state */
.custom-button.active {
  border-color: #187D84;     /* Bootstrap blue border */
  background-image:linear-gradient(45deg, rgba(3, 118, 82, 1), rgba(96, 172, 6, 1));
  color: #fff;                 /* White text */
  box-shadow: 0 0 6px rgba(0, 123, 255, 0.6);
}

/* Keep icons and tooltips inside active buttons readable */
/* .custom-button.active .fa-circle-info {
  color: #fff;
} */

/* .custom-button .modaltooltiptext {
  color: #000; 
} */


/* Rail wraps the input and hosts the end dots */
.range-rail {
  position: relative;
  width: 100%;
}
/* END DOTS drawn on the wrapper so they align with the rail, not the container */
.range-rail::before,
.range-rail::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #187D84;        /* dot color */
  transform: translate(-50%, -50%);
  pointer-events: none;        /* don’t block dragging */
  z-index: 1;                  /* under the thumb */
}

/* left end */
.range-rail::before {
  left: 10px;
}

/* right end (use left:100% so translate centers it on the edge) */
.range-rail::after {
  right: -10px;
}

.destination_title {
	padding-top:10px;
}





/* Keep the checkbox in the tab order but visually hidden */
.toggle-switch input {
  position: absolute;
  opacity: 0;        /* invisible but focusable */
  width: 1px;
  height: 1px;
  margin: 0;
}

/* The slider becomes the visual toggle */
.toggle-switch .slider {
  display: inline-block;
  width: 50px;
  height: 24px;
  background-color: #ccc;
  border-radius: 34px;
  position: relative;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

/* The circle inside the slider */
.toggle-switch .slider::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 4px;
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
  transition: transform 0.3s ease;
}

/* Checked (ON) state */
.toggle-switch input:checked + .slider {
  background-color: #262626; /* dark grey, WCAG AA contrast */
}

.toggle-switch input:checked + .slider::before {
  transform: translateX(26px);
}

/* Keyboard focus visible */
.toggle-switch input:focus + .slider {
  outline: 2px solid #005fcc; /* accessible focus color */
  outline-offset: 2px;
}


.custom-toggle {
  position: relative;
  display: inline-block; /* Keep toggle inline with its container */
  width: 60px;           /* Slider track width */
  height: 34px;          /* Slider track height */
}

.custom-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
}

.custom-toggle .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;              /* Keep full width of .custom-toggle container */
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: 34px;   /* Rounded slider */
}

.custom-toggle .slider::before {
  content: "";
  position: absolute;
  left: 2px;   /* starting at left = No */
  transition: 0.2s;
}

.custom-toggle input:checked + .slider::before {
  transform: translateX(26px); /* move right = Yes */
}


.custom-toggle input:checked + .slider {
  background-color: #4DA116;
}

