:root {
  --color-primary: #0a7b8e;
  --color-primary-dark: #085f6e;
  --color-accent: #e5004a;
  --color-accent-dark: #900431;
  --color-text: var(--color-text);
  --color-btn: #0063d2;
  --color-header-btn: rgb(10 123 142);
}

body {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  /* font-weight: 400; */
  line-height: 1.3;
  color: var(--color-text);
  text-align: left;
  background-color: #ffffff;
}

/*
  1. Use a more-intuitive box-sizing model.
*/
*, *::before, *::after {
  box-sizing: border-box;
}
/*
  2. Remove default margin
*/
* {
  margin: 0;
}
/*
  3. Allow percentage-based heights in the application
*/
html, body {
  height: 100%;
  overflow-x: hidden;
}
/*
  Typographic tweaks!
  4. Add accessible line-height
  5. Improve text rendering
*/
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
/*
  6. Improve media defaults
*/
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}
/*
  7. Remove built-in form typography styles
*/
input, button, textarea, select {
  font: inherit;
}
/*
  8. Avoid text overflows
*/
p{
  font-family: "Poppins", sans-serif;
}
h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: var(--color-text);
}
.underline{
  text-decoration: underline;
}

.back-guide{
  font-size: 0.8rem;
  color: black;
  font-weight: 600;
}
/*
  9. Create a root stacking context
*/
#root, #__next {
  isolation: isolate;
}

h1, .h1, .h2, h2 {
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--color-text);
  font-family: "Poppins", sans-serif;
  font-style: normal;
}

.h3, h3 {
  font-size: 1.7rem;
}

#group-cover, #family-cover {
  scroll-margin-top: 90px;
}

p {
  font-weight: 400;
  font-size: 18px;
}

b {
  font-weight: 600;
  font-size: 18px;
}

.text-large {
  font-size: 140%;
}

.sticky-top{
  z-index: 0;
}

.banner-bullets{
  font-size: 1.1rem;
  font-weight: 600;
}

.guide-bullets {
  font-size: inherit;
  font-weight: 600;
}

.border-left-cc {
  border-left:1px solid #dee2e6;
  padding-left: 20px!important;
}

.covid {
  font-size: 90%;
  font-weight: 500;
  color: rgb(179, 0, 0);
}

a{
  color: var(--color-primary);
  text-decoration: none;
}

a:hover{
  color: var(--color-accent);
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0,0,0,.1);
}

img.spots {
  width: 15px;
  margin-top: 2px;
  margin-right: 6px;
}

.hub-lower-section {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 5px;
  align-items: center;
}

.bg-white{
  background-color: #ffffff!important;
}

.bg-footer {
  background-color: #f7f7f7;
}

.text-black:hover {
  color: var(--color-primary) !important;
}

.border-cc {
  border: none;
  border-radius: 22px;
  height: 100%;
  padding: 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.border-cc-lower {
  border: none;
  border-radius: 22px;
  padding: 20px;
  height: 100%;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.border-cc-lower-pet {
  border: none;
  border-radius: 22px;
  padding: 20px;
  min-height: 505px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.border-cc-travel, .border-cc-travel-sub {
  border: none;
  border-radius: 22px;
  padding: 20px;
  box-shadow: 0 10px 30px rgba(10, 123, 142, 0.25);
}

.border-cc-pet, .border-cc-pet-sub {
  border: none;
  border-radius: 22px;
  padding: 20px;
  box-shadow: 0 10px 30px rgba(229, 0, 74, 0.25);
}

.bg-black-cc {
  background-color: #000000;
  border-radius: 22px;
  padding: 40px;
  background-image: url(/images/crossroad.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: -50px;
}

.bg-black {
  background-color: #000000;
  border-radius: 22px;
  padding: 40px;
}

.bg-grey {
  background-color: #f7f7f7;
  border-radius: 22px;
  padding: 40px;
}

img.w-guides-banner {
  width: 55%;
}

.no-underline{
  text-decoration: none;
}

.btn{
  text-decoration: none;
}

.btn-cc {
  color: #fff;
  background-color: var(--color-header-btn);
  border: 1px solid transparent;
  border-radius: 32px;
  padding: 10px 45px 10px 45px;
  font-weight: 600;
  font-size: 1.2rem;
}

.btn-cc:hover {
  color: var(--color-header-btn);
  background-color: #fff;
  border: 1px solid var(--color-header-btn);
}

.btn-cc-banner {
  color: #fff;
  background-color: var(--color-btn);
  border-color: var(--color-btn);
  border-radius: 32px;
  padding: 14px 55px 14px 55px;
  font-weight: 600;
  font-size: 1.3rem;
  box-shadow: #6c747d 0px 10px 27px -10px;
}


.btn-cc-rev {
  color: var(--color-primary);
  background-color: #fff;
  border-color: var(--color-primary);
  border-radius: 32px;
  padding: 5px 45px 5px 45px;
  font-weight: 600;
  font-size: 1.2rem;
}

.btn-cc-rev:hover, .btn-cc-banner:hover {
  color: #fff;
  background-color: #2253ad;
}

.btn:hover{
  transition: all 250ms linear;
}

img.banner-icon {
  width: 40%;
  margin: 0 auto;
  display: block;
}

.margin-sect{
  margin: 30px 0px
}

p.card-guide {
  font-size: 0.8rem;
  font-weight: 600;
  text-align: left;
  color: #4f4f4f;
}

.footer-logo {
  width: 65%
}

ul.banner-bullets-travel, ul.banner-bullets-pet
{
list-style-type: none;
padding: 0;
margin: 0;
}

li.banner-bullets-travel {
  background-image: url(/images/green-spot.svg);
  background-size: 25px;
  background-repeat: no-repeat;
  background-position: 0 0.4em;
  padding-left: 2.2em;
  padding-top: 7px;
  height: 44px;
  font-size: 1rem;
  font-weight: 600;
}

li.banner-bullets-pet {
  background-image: url(/images/pink-spot.svg);
  background-size: 25px;
  background-repeat: no-repeat;
  background-position: 0 0.4em;
  padding-left: 2.2em;
  padding-top: 7px;
  height: 44px;
  font-size: 1rem;
  font-weight: 600;
}

p.card-text {
  font-size: 1rem;
}

img.ticks {
  width: 25px;
  margin-top: 2px;
  margin-right: 7px;
}

.w-logo-strip{
  width:90%;
  margin:0 auto;
  display: block
}

.logo-partner {
  max-height: 80px;
  width: auto;
}

.pet-height {
  min-height: 396px;
}

/* #Navigation
================================================== */

.start-header {
	opacity: 1;
	transform: translateY(0);
	padding: 20px 0;
	/*box-shadow: 0 10px 30px 0 rgba(138, 155, 165, 0.15);
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;*/
}
.start-header.scroll-on {
	box-shadow: 0 5px 10px 0 rgba(138, 155, 165, 0.15);
	padding: 10px 0;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.start-header.scroll-on .navbar-brand img{
	height: 24px;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.navigation-wrap{
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1000;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.navbar{
	padding: 0;
}
.navbar-brand img{
	height: 22px;
	width: auto;
	display: block;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
/*.navbar-toggler {
	float: right;
	border: none;
	padding-right: 0;
}
.navbar-toggler:active,
.navbar-toggler:focus {
	outline: none;
}
.navbar-light .navbar-toggler-icon {
	width: 24px;
	height: 17px;
	background-image: none;
	position: relative;
	border-bottom: 1px solid #000;
    transition: all 300ms linear;
}
.navbar-light .navbar-toggler-icon:after, 
.navbar-light .navbar-toggler-icon:before{
	width: 24px;
	position: absolute;
	height: 1px;
	background-color: #000;
	top: 0;
	left: 0;
	content: '';
	z-index: 2;
    transition: all 300ms linear;
}
.navbar-light .navbar-toggler-icon:after{
	top: 8px;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
	transform: rotate(45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
	transform: translateY(8px) rotate(-45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	border-color: transparent;
}*/
.navbar-light .navbar-toggler {
  color: rgba(0,0,0,.5);
  border: none;
}

.nav-link{
	color: var(--color-text) !important;
	font-weight: 500;
  transition: all 200ms linear;
  text-decoration: none;
}
.nav-item:hover .nav-link{
	color: var(--color-primary) !important;
}
.nav-item.active .nav-link{
	color: var(--color-primary) !important;
}
.nav-link {
	position: relative;
	padding: 5px 0 !important;
	display: inline-block;
}
/*.nav-item:after{
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 2px;
	content: '';
	background-color: #0B4B6E;
	opacity: 0;
    transition: all 200ms linear;
}*/
.nav-item:hover:after{
	bottom: 0;
	opacity: 1;
}
.nav-item.active:hover:after{
	opacity: 0;
}
.nav-item{
	position: relative;
    transition: all 200ms linear;
}
a.nav-link.btn-login {
  border: 1px solid var(--color-primary);
  border-radius: 40px;
  padding-top: 10px!important;
  padding-bottom: 10px!important;
  padding-right: 45px!important;
  padding-left: 45px!important;
  margin-top: -6px;
}

a.nav-link.btn-login:hover {
  border: 1px solid var(--color-primary);
  background-color: var(--color-primary);
  color:white!important;
  transition: all 250ms linear;
}

a.nav-link.btn-login:hover:after{
	bottom: 0;
	opacity: 1;
}
a.nav-link.btn-login:hover:hover:after{
	opacity: 0;
}

.dropdown-item {
    font-weight: 600;
    text-align: center;
}

.dropdown-menu {
  border: 1px solid var(--color-primary);
  border-radius: 0.75rem;
  max-width: 15rem
}

.no-gutters {
  padding: 0px;
}

img.guides {
  width: 45px;
  margin-top: 3px;
  margin-right: 8px;
}

img.rounded-guide {
  border-radius: 10px 0px 0px 10px;
}

/* #Banner-Section
================================================== */

.margin-start {
  padding: 50px 0px;
}

.margin-guides {
  padding-top: 50px;
}

.card.border {
  border-radius: 25px;
}

.card-footer {
  background: transparent;
  border-top: 0px;
}

.card.border.bg-life {
  min-height: 560px;
}

.bg-life {
  background-image: url(/images/life-ins.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
}

.card-block {
  padding: 25px;
}

.horizontal-offset-box-shadow {
  box-shadow: 0 10px 30px rgba(10, 123, 142, 0.25);
}

a.btn-box {
  width: 90%;
  text-align: center;
  margin: 20px auto;
  margin-bottom: 30px;
  padding: 20px 40px;
  background-color: #ffffff;
  color: var(--color-primary);
  border: 1px solid var(--color-primary);
  border-radius: 35px;
  font-size: 1.8rem;
  font-weight: 600;
  display: block;
}

a.btn-box:hover{
  background-color: var(--color-primary);
  color: white;
  text-decoration: none;
  transition: all 150ms linear;
}

.horizontal-offset-box-shadow:hover {
  /*box-shadow: 10px 10px #00ABDD;*/
  box-shadow: none;
  transition: all 300ms linear;
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-initialized .slick-slide {
  display: table-cell;
  vertical-align: middle;
}
.slick-slide {
  height: 100%;
  min-height: 1px;
  outline: 0 !important;
  display: none;
}

#providers .provider.pad {
  padding: 10px;
}

.types {
  min-height: 140px;
}

.types-pet {
  min-height: 160px;
}

.height-types {
  min-height: 460px;
}

.bg-yellow {
  background-color: #FFFAEB;
  background-image: url(/images/yellow-circle.svg);
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: right -90px top -180px;
}

.bg-green {
  background-color: #e6ffdf;
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: left -90px top -180px;
}

.bg-pink {
  background-color: #FFF4F6;
  background-image: url(/images/pink-circle.svg);
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: right -90px top -180px;
}

.padding-section {
  padding: 60px 0px;
  border-bottom: 1px solid #dee2e6;
}

.padding-section.no-border {
  border-bottom: none;
}

.text-base {
  display: table-cell; 
  vertical-align: middle;
}

.text-base {
  display: table-cell;
  width: auto;
  height: 335px;
  vertical-align: middle;
}

.border-radius-guides{
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
  border: none;
  padding: 20px
}

.border-radius-general{
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}

.border-radius-travel{
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(10, 123, 142, 0.25);
}

.border-radius-pet{
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(229, 0, 74, 0.25);
}

a.btn-lower {
  width: 70%;
  text-align: center;
  padding: 15px 25px;
  background-color: var(--color-primary);
  color: #ffffff;
  border-radius: 35px;
  font-size: 1.4rem;
  font-weight: 600;
  display: block;
}

a.btn-lower:hover{
  background-color: var(--color-primary-dark);
  color: white;
  text-decoration: none;
  transition: all 150ms linear;
}

.horizontal-lower-box-shadow {
  box-shadow: 0 10px 30px rgba(10, 123, 142, 0.25);
}

.horizontal-lower-box-shadow:hover {
  /*box-shadow: 10px 10px #00ABDD;*/
  box-shadow: none;
  transition: all 300ms linear;
}

.border-lower {
  border: 1px solid grey!important
}

.rounded {
  border-radius: 22px!important;
}

.extra-cover {
  min-height: 400px;
}

@media screen and (max-width: 1200px) {

  .border-cc-lower-pet {
    min-height: 587px;
  }

  .height-types {
    min-height: 490px;
  }

  .border-cc-travel, .border-cc-pet {
    min-height: 395px;
  }

  .banner-mobile {
    width: 80%;
    float:right
  }

  .extra-cover {
    min-height: 450px;
  }

  .pet-height {
    min-height: 445px;
  }

}

@media screen and (min-width: 991px) {
  .dropdown-item {
    text-align: left;
  }

  .pet-types {
    min-height: 490px;
  }

  .pet-types-top {
    min-height: 353px;
  }

  .dropdown-menu{
    min-width: 10rem
  }

  .why-should-height {
    min-height: 492px;
  }

}

@media screen and (max-width: 991px) {

  .types, .border-cc-lower, .border-cc-lower-pet, .pet-height {
    min-height: auto;
  }

  .mob-width {
    width: 50%;
    margin-bottom: 20px
  }

  .h2, h2 {
    font-size: 2.3rem;
  }

  .border-cc-travel-sub, .border-cc-pet-sub {
    padding: 0px;
  }

  .height-types{
    min-height: auto;
  }

  .bg-black-cc {
    background-image: none
  }

  .border-cc-travel, .border-cc-pet {
    min-height: 410px;
  }

  .border-left-cc {
    border-left:none;
    padding-left: 0px!important
  }

  .banner-mobile {
    width: 100%;
    float:right
  }

  .extra-cover {
    min-height: auto;
  }

  .pet-height {
    min-height: auto;
  }

}

@media screen and (min-width: 1200px) {

  .banner-mobile {
    width: 80%;
    float: right;
  }

  .why-should-height {
    min-height: 419px;
  }

}
@media screen and (min-width: 768px) and (max-width: 991px) {

  .why-should-height {
    min-height: 365px;
  }

  .p-cc{
    padding-top: 14px!important
  }
  
  .footer-logo {
    width: 45%;
  }

  .w-logo-strip{
    width:100%;
    margin:0 auto;
    display: block
  }

  .border-cc {
    padding: 5px;
  }

  .pet-types {
    min-height: 680px;
  }
  .pet-types-top {
    min-height: 496px;
  }


}

@media screen and (max-width: 767px) {

  .height-types {
    min-height: auto;
  }

  .h2, h2 {
    font-size: 2rem;
  }

  .img-mob{
    width: 75%;
    margin: 0 auto
  }

  a.btn-box {
    width: 90%;
    text-align: center;
    margin: 20px auto;
    margin-bottom: 30px;
    padding: 10px 40px;
    background-color: #ffffff;
    color: #0B4B6E;
    border-radius: 15px;
    font-size: 1.5rem;
    font-weight: 800;
    display: block;
  }

  .card.border.bg-life {
    min-height: 230px;
  }

  .border-cc-travel, .border-cc-pet {
    min-height: 360px;
  }
}

@media screen and (max-width: 575px) {

  .bg-footer {
    padding-top: 20px !important;
  }

  .btn-cc-banner, .btn-cc {
    font-size: 1.2rem;
    width: 100%;
  }

  .margin-start, .padding-secrtion {
    padding: 40px 0px;
  }

  .border-cc {
    padding: 5px;
  }

 
  .banner-bullets {
    font-size: 1rem;
    font-weight: 600;
}

  .banner-mobile{
    width: 70%;
    margin: 0 auto;
    padding-top: 20px;
    float:none
  }

  .padding-section, .margin-start, .margin-sect {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0px;
  }

  .bg-black-cc {
    padding: 20px;
  }

  .border-cc-travel, .border-cc-pet {
    min-height: 120px;
    padding: 8px
}

.mobile-banner-link{
  font-size: 2rem;
  font-weight: 900;
  color: black;
  text-align: left;
}

img.banner-icon{
  width:100%
}

.mob-banner-hover:hover{
  border-color: #00ABDD;
}

}

@media screen and (min-width: 385px) and (max-width: 575px) {

  .p-cc{
    padding-top: 14px!important
  }

}

@media screen and (max-width: 440px) {

li.banner-bullets-travel, li.banner-bullets-pet {
  height: 57px;
}

.mobile-banner-link{
  font-size: 1.7rem;
}

img.w-guides-banner {
  width: 90%;
}

}

/*
 * Override Cookie Consent Defaults
*/
.cookieconsent-footer-area {
  text-align: center;
  padding-top: 20px;
}
.cookieconsent-popup, .cookieconsent-ui-button, .cookieconsent-dialog-content, .cookieconsent-level-changer a {
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji" !important;
  border-radius: 0px !important;
}
a.cookieconsent-policy-link {
  text-decoration: none !important;
  color: lightgrey !important;
  border-bottom: 1px solid lightgrey;
}

a.cookieconsent-policy-link:hover {
  color: white !important;
  border-bottom: 1px solid white;
}

a#view-cookie-policy {
  color: #000000 !important;
}

a#edit-cookieconsent-settings {
  margin-top: -11px !important;
  color: #000000 !important;
}

/* "What does travel insurance cover?" full-width light-grey section */
.bg-cover-section {
  background-color: #f8f9fa !important;
}

/* Footer links and headings */
.footer-heading {
  color: var(--color-text);
  font-size: 16px;
  margin-bottom: 20px;
}

.footer-links li {
  margin-bottom: 10px;
}

.footer-links li a {
  color: var(--color-text);
  text-decoration: none;
  font-size: 1rem;
  font-weight: 400;
}

.footer-links li a:hover {
  color: var(--color-primary);
}

.border-cc-lower .card-body {
  display: flex;
  flex-direction: column;
}

.border-cc-lower .card-body > hr:last-of-type,
.border-cc-lower .card-body > .btn {
  flex-shrink: 0;
}

.border-cc-lower .card-body > hr:last-of-type {
  margin-top: auto;
}

@media (max-width: 767px) {
  .border-cc .card-body,
  .border-cc-lower .card-body {
    height: auto;
    max-height: none;
  }

  .border-cc-lower .card-body > p.card-text {
    flex: none;
    max-height: none;
    display: block;
    -webkit-line-clamp: none;
    overflow: visible;
  }

  .border-cc-lower .card-body > hr:last-of-type {
    margin-top: 1rem;
  }
}

/* Footer bottom doc links */
a.footer-doc-link {
  color: var(--color-text);
  text-decoration: none;
  font-size: 1rem;
  font-weight: 400;
}

a.footer-doc-link:hover {
  color: var(--color-primary);
}

/* Override global 18px p size inside footer to match annuity-ready's 16px body */
.bg-footer p,
.bg-footer b {
  font-size: 1rem;
}

/* Let .small contents shrink to 12.8px (0.8rem) as annuity does */
.bg-footer .small p,
.bg-footer .small b {
  font-size: 0.8rem;
}
