:root {
  --fw-xlt: 200;
  --fw-lt: 250;
  --fw-r: 380;
  --fw-md: 500;
  --fw-sb: 550;
  --fw-b: 650;

  --fs-xxs: .75rem;
  --fs-xs:.95rem;
  --fs-sm: 1rem;
  --fs-r: 1.25rem;
  --fs-lg: 1.45rem;
  --fs-xl: 2.25rem;

  --hd-fs-xxs: .85rem;
  --hd-fs-xs: .95rem;
  --hd-fs-r: 1rem;
  --hd-fs-md: 1.25rem;
  --hd-fs-lg: 2.25rem;
  --hd-fs-xl: 3.35rem;

  --clr-blue-dk: #040961;
  --clr-blue: #2D789A;
  --clr-red: #EF3340;
  --clr-red-200: hsl(356 85% 57% / 0.2);
  --clr-gray: #D9D9D6;
  --clr-gray-100: hsl(60 4% 85% / 0.1);
  --clr-gray-200: hsla(60 4% 85% / 0.2);
  --clr-brown-lt: #F1EEE7;
  --clr-brown-lt-200:hsl(42 26% 93% / 0.2);
  --clr-brown-lt-500: hsla(42 26% 93% / 0.5);
  --clr-brown: #CBB094;
  --clr-brown-600:rgba(204, 177, 148, 0.6);

  --br-100: .15rem;
  --br-120: .3rem;
  --br-150: .5rem;
  --br-200: 1rem;
  --br-300: 1.5rem;

  --shw-1: 0 3px 5px hsl(0 0% 0% / 0.25);
  --shw-1-inset: 0 3px 5px hsl(0 0% 0% / 0.25) inset;

  --trn-1: .15s ease-in-out;
}

html {
  scroll-behavior: smooth;
}

body {
  color: var(--clr-blue-dk);
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: var(--fw-lt);
  font-style: normal;
  font-variation-settings:
    "slnt" 0;
  font-size: var(--fs-r);
}

h1 {
  color: var(--clr-blue-dk);
  font-size: var(--hd-fs-xl);
  font-weight: var(--fw-b);
}

h1 span {
  color: var(--clr-blue);
}

a {
  color: var(--clr-blue);
  transition: color var(--trn-1);
}

a:is(:hover, :active, :focus) {
  color: black;
}

.txt-blue {
  color: var(--clr-blue) !important;
}

.form small {
  font-size: var(--fs-xs);
}

.form-control {
  padding-inline: 1.5rem !important;
  font-size: var(--fs-sm);
  font-weight: var(--fw-lt);
  background-color: var(--clr-brown-lt-500);
  border: none;
  border-radius: var(--br-200);
  box-shadow: var(--shw-1-inset);
}

.form-floating > label {
  height: auto;
  padding: 0;
  position: absolute;
  top: 1.9rem;
  left: 2.2rem;
  z-index: 2;
  translate: 0 -50%;
  font-size: var(--fs-sm);
  font-weight: var(--fw-md);
  opacity: .2;
}

.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
  transform: scale(.85) translateY(-.75rem);
  opacity: .6;
}

.form-floating > label::after {
  display: none;
}

.btn {
  padding-inline: 1rem;
  box-shadow: var(--shw-1);
  white-space: nowrap;
}

.btn-primary {
  color: white;
  border-color: transparent;
  background-color: var(--clr-brown);
}

.btn-primary:is(:hover, :active, :focus) {
  color: var(--clr-brown) !important;
  border-color: var(--clr-brown) !important;
  background-color: white !important;
}

.btn-secondary {
  color: var(--clr-blue-dk);
  border-color: transparent;
  background-color: var(--clr-brown-lt);
}

.btn-secondary:is(:hover, :active, :focus) {
  color: var(--clr-blue-dk) !important;
  border-color: var(--clr-brown) !important;
  background-color: white !important;
}

.btn-secondary-alt {
  color: white;
  border-radius: var(--br-200);
  background-color: var(--clr-blue-dk);
}

.btn-secondary-alt:is(:hover, :active, :focus) {
  border-color: var(--clr-blue-dk) !important;
}

/* Header */
.navbar-brand svg {
    width: auto;
    height: 40px;
}

.navbar-brand svg #text {
  fill: var(--clr-blue-dk);
}

header .navbar-nav {
  position: relative;
}

header .nav-link {
  font-size: var(--fs-sm);
  font-weight: var(--fw-sb);
}

header .nav-link {
  color: black;
}

header .nav-link:is(:hover, :active, :focus) {
  color: var(--clr-blue) !important;
}

header .navbar-toggler {
  border: none;
}

header .dropdown {
  position: static;
}

header .dropdown-toggle::after {
  display: none;
}

header .dropdown-menu[data-bs-popper] {
  left: 15px;
  top: calc(100% + 10px);
  border: none;
  border-radius: 0;
  background-color: var(--clr-blue-dk);
}

header .dropdown-menu ul {
  padding: 0;
  display: grid;
  grid-template-columns: 50% 50%;
  list-style-type: none;
}

header .dropdown-menu li {
  width: 255px;
  padding: 2rem 2.5rem;
}

header .dropdown-menu li:nth-child(odd) {
  border-right: 1px solid white;
}

header .dropdown-menu li:first-child,
header .dropdown-menu li:nth-child(2) {
  border-bottom: 1px solid white;
}

header .link-why + .dropdown-menu li,
header .link-who + .dropdown-menu li {
  border-bottom: none;
}

header .dropdown-menu a {
  padding: 0;
  color: white;
  font-size: var(--fs-xs);
  font-weight: var(--fw-sb);
  line-height: 1.2em;
  white-space: normal;
}

header .dropdown-menu a:is(:hover, :active, :focus){
  color: var(--clr-blue);
  background-color: transparent;
}

header .dropdown-menu li span {
  display: block !important;
  margin-top: 1ch;
  font-size: var(--fs-xxs);
  font-weight: var(--fw-lt);
  line-height: 1.3;
}

header .link-login {
  padding-inline: 1rem !important;
  color: white;
  border: 1px solid var(--clr-blue-dk);
  background-color: var(--clr-blue-dk);
}

header .link-login:is(:hover, :active, :focus) {
  color: var(--clr-blue-dk) !important;
  border: 1px solid var(--clr-blue-dk) !important;
  background-color: white !important;
}

.contact-us header .navbar-brand .logo{
  display: none!important;
}

.contact-us header .navbar-brand .logo.d-none{
  display: inline-block!important;
}


/* Footer */
footer {
  color: white;
  font-size: var(--fs-xs);
  background-color: var(--clr-blue-dk);
}

footer h2 {
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-md);
}

footer h2 ~ a i:is(.far, .fab) {
  margin-right: 1rem;
  width: 1.6rem;
  aspect-ratio: 1;
  color: var(--clr-blue-dk);
  font-size: var(--fs-xs);
  line-height: 1.5rem;
  text-align: center;
  background-color: white;
  border-radius: var(--br-100);
}

footer h2 ~ a i:is(.far, .fab)::before {
  vertical-align: -0.1rem;
}

footer h3 {
  margin-bottom: 1.25rem;
  font-size: var(--hd-fs-xxs);
  font-weight: var(--fw-lt);
  text-transform: uppercase;
}

footer a {
  margin-bottom: .5rem;
  display: inline-block;
  color: white;
  font-weight: var(--fw-r);
  text-decoration: none;
  opacity: .6;
  transition: opacity var(--trn-1);
}

footer a:is(:hover, :active, :focus) {
  color: white;
  opacity: 1;
}

footer .dropdown-toggle::after {
  display: none;
}

footer .dropdown-menu {
  display: block;
  position: static !important;
  background-color: transparent;
  border: none;
  border-radius: 0;
  transform: none !important;
  translate: 0;
}


/* Home */
.home .hero {
  min-height: 866px;
  background: url(../img/bg-hero.jpg) bottom center no-repeat;
}

.home .hero-text {
  width: 50%;
}

.home .hero h1 span {
  color: var(--clr-blue);
}

.home .hero p:first-of-type {
  font-size: var(--fs-sm);
}

.home .medals img {
  width: 198px;
}

.home-facts h2 {
  color: var(--clr-blue);
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-lt);
  text-wrap: balance
}

.home-facts .numbers {
  font-size: var(--hd-fs-lg);
}

.home-facts h3 {
  color: var(--clr-blue);
  font-size: var(--hd-fs-xs);
  font-weight: var(--fw-sb);
  text-transform: uppercase;
}

.home-facts p {
  font-size: var(--fs-sm);
  line-height: 1.3;
}

.home-products h2 {
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-lt);
  text-wrap: balance
  
}

.home-products h2 b {
  font-weight: var(--fw-b);
}

.home-products img {
  border-radius: var(--br-200);
}

.home-products h3 {
  color: var(--clr-blue);
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-lt);
  text-transform: uppercase;
}

.home-products h3 span {
  display: block;
  color: var(--clr-brown);
  font-size: var(--fs-r);
}

.home-life {
  background-color: var(--clr-gray-100);
}

.policy-type .life-highlight {
  color: var(--clr-brown);
  font-size: var(--fs-lg);
  line-height: 1.25;
}


/* Pages */
.intro-text {
  font-size: var(--fs-lg);
  line-height: 1.3;
}

.intro-text ~ p {
  font-weight: var(--fw-r);
}

.intro-text + p span {
  color: var(--clr-brown);
}

.page-intro .img-fluid {
  height: 100%;
  object-fit: cover;
}

.page-catch {
  color: var(--clr-blue);
  font-size: var(--hd-fs-lg);
  text-wrap: balance;
}

.wide-catch {
  color: white;
  background-color: var(--clr-blue);
  text-wrap: balance;
}

.wide-catch h2 {
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-sb);
}

.wide-catch p {
  font-size: var(--fs-lg);
  font-weight: var(--fw-xlt);
}

.image-catch {
  position: relative;
}

.image-catch::after {
  content: '';
  position: absolute;
  inset: 2rem 2.5rem;
  border: 2px solid var(--clr-brown);
}

.image-catch p {
  padding: 0 3rem;
  color: var(--clr-blue);
  font-size: var(--fs-xl);
}

.simple-box {
  padding: 2.5rem;
  border-radius: var(--br-200);
  box-shadow: var(--shw-1);
}

.form-terms-business h2 {
  color: var(--clr-blue-dk);
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-b);
}
.intro-points .icon-top {
    width: auto;
    height: 25px;
}


/* Who we are */
.who-we-are h2:not(footer h2),
.what-we-offer h2:not(footer h2) {
  color: var(--clr-blue-dk);
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-b);
}

.who-goals {
  width: 100%;
  aspect-ratio: 1/.6;
  max-height: 720px;
  background: url(../img/img-woman-dog.jpg);
  background-size: cover;
}

.who-goals .container {
  height: 100%;
  max-height: 720px;
  position: relative;
}

.who-goals .container::after {
  content: '';
  display: block;
  position: absolute;
  inset: 1rem 3rem;
  border: 2px solid var(--clr-brown);
  translate: 0 5rem;
}

.who-goals p {
  padding: 2.7rem;
  font-size: calc(var(--fs-lg) + .2rem);
  background-color: white;
  translate: 0 60%;
  text-wrap: balance;
}

.who-goals span {
  color: var(--clr-blue-dk);
}

.who-team .row {
  --bs-gutter-x: 5rem;
}

.who-team a {
  display: block;
  overflow: hidden;
}

.who-team a img {
  transition: scale var(--trn-1);
}

.who-team a img:hover {
  scale: 1.05;
}

.who-team h3 {
  color: var(--clr-blue);
  font-size: calc(var(--hd-fs-md) + .1rem);
  font-weight: var(--fw-sb);
}

.who-team p {
  font-size: calc(var(--fs-r) - .1rem);
}

.who-we-are .modal-backdrop.show {
  opacity: 0;
}

.who-team .modal-content {
  border-radius: 0;
  border: none;
}

.who-team .modal.fade {
  transition: opacity .3s ease-in-out;
}

.who-team .modal.fade .modal-dialog {
  transition: none !important;
  transform: none !important;
}

.who-team .modal-dialog {
  max-width: 1320px;
}

.who-team .modal-content {
  background-image: linear-gradient(90deg, white 150px, var(--clr-gray-200) 150px);
}

.who-team .modal-header {
  padding-bottom: 3rem;
  border-bottom: none;
}

.who-team .btn-close {
  font-size: var(--fs-lg);
  background-image: none;
  opacity: 1;
}

.who-team .btn-close:is(:hover, :active, :focus) {
  color: var(--clr-blue);
}

.who-mauritius {
  background-color: var(--clr-brown-lt-200);
}

.who-img img {
  width: 100%;
  aspect-ratio: 1/.26;
  min-height: 250px;
  max-height: 360px;
  object-fit: cover;
}

.who-downloads h3 {
  color: var(--clr-blue-dk);
  font-weight: var(--fw-r);
}

.who-downloads a {
  margin-bottom: 1rem;
  display: block;
  font-size: var(--fs-sm);
  font-weight: var(--fw-sb);
  line-height: 1.3;
  text-decoration: none;
}

.who-downloads a + br {
  display: none;
}

.who-chart {
  background: url(../img/bg-organisational-chart-vertical.svg) no-repeat center;
}

.who-chart.d-none {
  background: url(../img/bg-organisational-chart-horizontal.svg) no-repeat center;
}

.who-chart img {
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.4));
}

.policy-type {
  background-color: var(--clr-gray-100);
}

.policy-type h2 {
  color: var(--clr-blue-dk);
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-lt);
}

.policy-type h3 {
  color: var(--clr-blue);
  font-size: var(--hd-fs-md);
  font-weight: var(--fw-r);
}


/* What we offer */
.intro-points p {
  font-size: var(--fs-sm);
  line-height: 1.3;
}

.offer-explore h2 {
  font-weight: var(--fw-b);
}

.offer-explore h3 {
  color: var(--clr-blue);
  font-size: calc(var(--hd-fs-md) + .1rem);
  font-weight: var(--fw-b);
}

.offer-explore img {
  margin: auto;
  display: block;
  border-radius: var(--br-150);
  border: 1px solid var(--clr-brown-lt);
}

.offer-explore img:not([src="img/vin-compass-brochure.jpg"]) {
  width: 100%;
  max-width: 190px;
}

.offer-explore :is(.doc-features, .doc-terms) {
  border-left: 1px solid black;
}

.polaris .offer-explore .doc-glance {
  border-left: 1px solid black;
}

.polaris .offer-explore .doc-terms {
  border-left: none;
  border-right: 1px solid black;
}

.offer-explore .separator {
  margin-block: 1.5rem;
  border-top: 1px solid black;
}

/* Why Providence */
.introducers .intro-text + p {
  color: var(--clr-blue);
  font-size: var(--fs-r);
  font-weight: var(--fw-r);
}

.intro-features > div {
  padding: 1rem;
  line-height: 1.3;
  background-color: var(--clr-brown-lt);
  border-radius: 100vw;
}

.intro-features > div img {
  overflow: visible;
  background-color: var(--clr-brown);
  border-radius: 100vw;
}

.req-boxes a {
  margin-top: 1rem;
  display: block;
  color: var(--clr-blue-dk);
  font-weight: var(--fw-sb);
  text-decoration: none;
}
.req-boxes a:hover, .req-boxes a:active,  .req-boxes a:focus{
  color: var(--clr-blue);
}


/* Introducers */
.form-terms-business p {
  color: var(--clr-brown);
  font-size: var(--fs-lg);
}

.form-terms-business button {
  text-transform: uppercase;
}


/* Policyholders */
.intro-boxes .simple-box {
  height: 100%;
  padding: 1.5rem;
}

.intro-boxes [class*="col-"]:nth-child(even) .simple-box {
  background-color: var(--clr-brown-lt-500);
}

.intro-boxes .simple-box img {
  margin-bottom: 1rem;
}

.intro-boxes .simple-box p {
  margin-bottom: 0;
  line-height: 1.3;
}

.policyholders .wide-catch {
  background-color: var(--clr-brown);
  text-wrap: wrap;
}

.policyholders .wide-catch p + p {
  font-size: calc(var(--hd-fs-lg) - .25rem);
  font-weight: var(--fw-r);
}

.small-steps h2 {
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-lt);
}

.small-steps [class*="col-"] {
  padding-inline: 1rem;
  display: flex;
  align-items: flex-end;
}

.small-steps .simple-box {
  width: 100%;
  padding: 1.5rem;
  color: white;
  background-color: var(--clr-blue);
}

.small-steps [class*="col-"]:first-child .simple-box {
  padding-right: .5rem;
}

.small-steps [class*="col-"]:nth-child(2) .simple-box {
  padding-block: 2.2rem;
}

.small-steps [class*="col-"]:nth-child(3) .simple-box {
  padding-block: 2.9rem;
}

.small-steps [class*="col-"]:nth-child(4) .simple-box {
  padding-block: 3.6rem;
}

.small-steps .simple-box h3 {
  margin-bottom: .75rem;
  font-size: calc(var(--hd-fs-md) - .05rem);
  font-weight: var(--fw-sb);
  line-height: 1.3;
}

.small-steps .simple-box p {
  margin: 0;
  font-size: var(--fs-sm);
  font-weight: var(--fw-lt);
  line-height: 1.3;
}

.policyholders .page-catch {
  background-color: var(--clr-gray-100);
}

.policyholders .page-catch p + p {
  font-size: calc(var(--hd-fs-xl) - .4rem);
  font-weight: var(--fw-r);
}


/* Serve pop-up */
.serve-popup {
  max-width: 350px;
  padding: .5rem 2.5rem 3rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 1000;
  line-height: 1.2;
  background-color: white;
  border: 1px solid var(--clr-gray);
  border-radius: calc(var(--br-150) - .2rem);
  transition: translate 1s ease;
}

.serve-popup.animate__fadeOutDown {
  translate: 0 0;
}

.serve-popup .popup-close {
  all: unset;
  margin-right: -1.5rem;
  font-size: var(--fs-lg);
  font-weight: var(--fw-b);
  opacity: .15;
  cursor: pointer;
  transition: opacity var(--trn-1);
}

.serve-popup .popup-close:is(:hover, :active, :focus) {
  opacity: .5;
}

.serve-popup small {
  display: inline-block;
  font-size: var(--fs-xs);
}

.serve-popup small span {
  font-size: var(--fs-xxs);
}

.serve-popup h2 {
  font-size: var(--hd-fs-md);
  font-weight: var(--fw-b);
}

.serve-popup .form-check {
  padding: 1rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: calc(var(--fs-xs) - .05rem);
  background-color: var(--clr-gray-200);
  border-radius: var(--br-150);
}

.serve-popup .form-check-input {
  margin: 0;
  float: none;
  border-color: var(--clr-blue-dk);
}

.serve-popup .btn-secondary {
  width: 100%;
  color: white;
  text-transform: uppercase;
  background-color: var(--clr-blue);
  font-weight: var(--fw-sb);
  border-radius: 0;
}

.serve-popup .btn-secondary:is(:hover, :active, :focus) {
  color: var(--clr-blue) !important;
  border-color: var(--clr-blue) !important;
  background-color: white !important;
}

.serve-popup .check-buttons label {
  width: 100%;
  padding: .3rem;
  font-size: var(--fs-xs);
  text-align: center;
  background-color: var(--clr-gray-200);
  border: 1px solid var(--clr-blue-dk);
  border-radius: var(--br-120);
  box-shadow: var(--shw-1);
  opacity: .5;
  transition: opacity var(--trn-1);
  cursor: pointer;
}

.serve-popup .check-buttons label:is(:hover, :active, :focus) {
  opacity: .7;
}

.serve-popup .check-buttons:has(input:checked) label {
  color: white;
  background-color: var(--clr-blue-dk);
  opacity: 1;
}

#formSaving input {
  padding: 1.5rem .7rem .2rem;
  height: 3rem;
  min-height: 2rem;
  font-size: calc(var(--fs-xs) - .1rem);
  border-radius: var(--br-150);
}

#formSaving .form-floating > label {
  top: 1.7rem;
  left: 1.4rem;
  font-size: var(--fs-xs);
}


/* Contact us */
.contact-us {
  height: 100dvh;
  background: url(../img/bg-chairs-beach.jpg) no-repeat;
  background-size: cover;
  background-position: center;
}

.contact-us header .nav-link {
  color: white;
}

.form-contact-us {
  background-color: white;
  border-radius: var(--br-300);
  box-shadow: var(--shw-1);
}

.form-contact-us h1 {
  font-size: var(--fs-lg);
}

.form-contact-us h2 {
  font-size: var(--hd-fs-md);
  font-weight: var(--fw-b);
}

.form-contact-us p {
  font-size: var(--fs-sm);
  line-height: 1.3;
}

.form-contact-us textarea {
  padding-top: 3.6rem;
  min-height: 7rem !important;
  resize: none;
}

.form-contact-us .txta {
  width: 100%;
  font-size: 1rem;
  overflow: hidden;
  line-height: 1.3;
}

.form-contact-us button {
  text-transform: uppercase;
}

.form-contact-us .btn-secondary {
  color: white;
  border-color: transparent;
  background-color: var(--clr-blue);
}

.form-contact-us .btn-secondary:is(:hover, :active, :focus) {
  color: var(--clr-blue) !important;
  border-color: var(--clr-blue) !important;
  background-color: white !important;
}

.contact-us .navbar-brand svg #text {
  fill: white;
}

.wrap-form {
    position: relative;
}

#overlay-layer-success {
    position: absolute;
    top: -3px;
    left: -3px;
    width: 103%;
    height: 103%;
    background: #ffffffe6;
    z-index: 2;
}

.success-message-form {
    width: 80%;
    padding: 30px;
    text-align: center;
    margin: 10% auto;
    border-radius: 8px;
    border: 1px solid #0000002d;
    background-color: #f0f0f0;
}

.success-message-form .success-title, .success-message-popup .success-title{
  font-size: 22px;
  color: #1a8754;
}

.success-message-form .success-text, .success-message-popup .success-text{
  font-size: 16px !important;
  color: #212529 !important;
}

#modalSucc.modal.show {
    display: block;
    background: #ffffffd1;
}

#modalSucc .modal-header .btn-close {
    --bs-btn-close-opacity: 0.3;
}

#modalSucc .modal-dialog{
    margin-top: 10%;
}

#modalSucc .modal-content{
    overflow: hidden;
    background-color: #f0f0f0;
}

#modalSucc .modal-header{
  border-bottom: none;
}

#modalSucc .success-message-popup {
    padding: 10px;
    text-align: center;
    margin: 4% auto 10%;
}
#errorAlert.alert {
    font-size: 14px;
}
#loadingIndicator p {
    color: #212529;
    font-size: 14px;
}

/* Legal */
.legal-page h2:not(footer h2) {
  color: var(--clr-blue-dk);
  font-size: var(--hd-fs-lg);
  font-weight: var(--fw-b);
}

/* Servicing Forms */
.search-field {
  padding-left: 4em !important;
  border-radius: 100vw !important;
}

#serviceForms li,
#otherDocs li {
  padding-block: 0.9rem;
}

#serviceForms a:hover,
#otherDocs a:hover {
  opacity: 0.7;
}

/* Awards */
.awards-year {
  color: var(--clr-blue);
}

.awards-list p {
  margin-bottom: 0;
}



/* ********************* Responsive ********************* */
@media (max-width: 600px) {
  .who-goals .container::after {
    inset: 0 2rem;
  }

  .form-contact-us {
    margin-inline: 2rem;
    width: auto;
  }
}

@media (max-width: 768px) {
  body {
    font-size: calc(var(--fs-r) - .1rem);
  }

  h1 {
    font-size: calc(var(--hd-fs-lg) - .4rem);
  }

  .container  {
    padding-inline: 2rem;
  }

  .form-control {
    border-radius: calc(var(--br-150) + .1rem);
  }

  .form-floating > label {
    font-size: calc(var(--fs-sm) - .1rem);
  }

  .contact-us .form-floating > label {
    left: 1.5rem;
  }

  .intro-text {
    font-size: calc(var(--fs-r) - .1rem);
    font-weight: var(--fw-r);
  }

  .navbar-brand svg {
    width: 225px;
  }

  footer h2 {
    font-size: calc(var(--hd-fs-lg) - .3rem) !important;
    font-weight: var(--fw-b);
  }

  footer a {
    opacity: 1;
  }

  footer h3 {
    display: flex;
    justify-content: space-between;
  }

  footer h3 i {
    font-size: var(--fs-sm);
  }

  footer h3.show i {
    rotate: 180deg;
  }

  footer .dropdown-menu {
    padding-left: 1rem;
    display: none;
    background-color: var(--clr-gray);
    translate: 0 -.5rem;
  }

  footer .dropdown-menu a {
    margin-bottom: 0;
    padding-block: .5rem;
    color: var(--bs-dropdown-link-color);
    font-weight: var(--fw-sb);
  }

  .home .hero {
    min-height: auto;
    background-image: none;
  }

  .home .hero-text {
    width: 100%;
  }

  .home .hero img {
    width: 100%;
  }

  .home .medals img {
    width: 130px !important;
    margin-inline: 10px;
  }

  .home .mobile-img {
    position: relative;
    background: linear-gradient(180deg, var(--clr-gray-200) 30%, white 80%);
  }

  .home .mobile-img h2 {
    position: absolute;
    inset-inline: 3rem;
    bottom: 3rem;
    color: var(--clr-blue);
    font-size: calc(var(--hd-fs-lg) - .2rem);
    font-weight: var(--fw-lt);
    text-align: center;
  }

  .home .mobile-img p {
    font-size: calc(var(--fs-r) + .1rem);
  }

  .home .mobile-img img {
    width: 100%;
    min-height: 866px;
    object-fit: cover;
    object-position: center;
  }

  .divider {
    width: auto;
    margin-inline: 2rem;
    border-bottom: 1.5px solid var(--clr-brown-600);
  }

  .home-products h2,
  .home-life h2,
  .home-products h3,
  .who-we-are h2:not(footer h2),
  .why-providence h2 {
    font-size: calc(var(--hd-fs-lg) - .5rem);
  }

  .home-products h3 span {
    font-size: .65em;
  }

  .home-products img {
    width: 100%;
    aspect-ratio: 1/.59;
    object-fit: cover;
  }

  .policy-type .life-highlight {
    font-size: calc(var(--hd-fs-md));
    line-height: 1.5;
  }

  .who-goals {
    min-height: 975px;
    aspect-ratio: 1;
    background-position-x: 65%;
    background-size: 400%;
  } 

  .who-goals .container {
    max-height: 100%;
    max-width: 100%;
    padding: 0;
  }

  .who-goals p {
    padding: 2rem;
    font-size: calc(var(--fs-r) - .1rem);
    translate: 0 -40%;
  }

  .who-goals .container::after {
    display: none;
  }

  .who-team .row {
    --bs-gutter-x: 0;
  }

  .who-team .row div:nth-child(odd) {
    padding-right: .8rem;
  }

  .who-team .row div:nth-child(even) {
    padding-left: .8rem;
  }

  .who-team h3 {
    font-size: calc(var(--hd-fs-md) - .15rem);
  }

  .who-team p {
    font-size: var(--fs-sm);
  }

  .who-team .modal.fade {
    z-index: 2000;
    pointer-events: none;
  }

  .who-team .modal-dialog {
    margin: 0;
    padding: 0;
    min-height: 100dvh;
  }

  .modal-dialog-centered {
    display: block;
  }

  .who-team .modal-content {
    background-image: none;
    height: 100dvh;
  }

  .who-team .modal-header {
    padding-bottom: 1.5rem;

  }

  .who-team .modal-body {
    margin: 0 !important;
    padding: 0 2rem !important;
  }

  .who-team .modal-body .img-fluid {
    max-width: 40%;
  }

  .who-img img {
    min-height: 200px;
  }

  .page-catch {
    font-size: var(--fs-lg);
    line-height: 1.2;
  }

  .offer-explore h3 {
    margin-bottom: 0;
    font-size: calc(var(--hd-fs-md) -.1rem);
  }

  .offer-explore :is([class*="doc-"]) {
    padding-block: .8rem;
    border-left: none !important;
    border-right: none !important;
  }

  .policy-type h2 {
    font-size: calc(var(--hd-fs-md) + .5rem);
  }

  .intro-features > div {
    padding: .8rem;
  }

  .why-providence .mobile-img img {
    width: 100%;
    max-height: 450px;
    object-fit: cover;
    object-position: center 60%;
  }

  .introducers .simple-box {
    padding-block: 1.5rem;
  }

  .introducers .wide-catch p {
    font-size: calc(var(--fs-r) - .1rem);
    line-height: 1.5;
  }

  .introducers .page-catch {
    text-wrap: wrap;
  }

  .introducers .page-catch span {
    margin-bottom: 1rem;
    display: block;
  }

  .introducers .form-terms-business p {
    font-size: calc(var(--fs-r) - .1rem);
    line-height: 1.3;
  }

  .introducers .form-terms-business button {
    width: 100% !important;
    border-radius: calc(var(--br-150) + .1rem);
  }

  .policyholders .mobile-img img {
    object-position: center 80%;
  }

  .policyholders .wide-catch p {
    font-size: inherit;
  }

  .policyholders .wide-catch p + p {
    font-size: calc(var(--fs-lg) + .1rem);
    line-height: 1.3;
  }

  .small-steps h2 {
    font-size: calc(var(--hd-fs-r) + .5rem);
    line-height: 1.4;
  }

  .small-steps [class*="col-"] .simple-box {
    padding-inline: 2rem !important;
  }

  .small-steps [class*="col-"]:first-child .simple-box {
    padding-block: 1.3rem;
  }
  
  .small-steps [class*="col-"]:nth-child(2) .simple-box {
    padding-block: 1.9rem;
  }
  
  .small-steps [class*="col-"]:nth-child(3) .simple-box {
    padding-block: 2.3rem;
  }
  
  .small-steps [class*="col-"]:nth-child(4) .simple-box {
    padding-block: 2.9rem;
  }

  .small-steps .simple-box h3 {
    margin-bottom: 0;
  }

  .small-steps .simple-box p {
    font-size: calc(var(--fs-sm) + .1rem);
    font-weight: var(--fw-xlt);
  }

  .policyholders .page-catch {
    font-size: calc(var(--fs-lg) + .1rem);
    line-height: 1.3;
  }

  .policyholders .page-catch p + p {
    font-size: calc(var(--fs-lg) + .3rem);
  }

  .image-catch .row > * {
    margin-inline: 0;
    padding-inline: 0;
  }

  .image-catch img.img-fluid {
    aspect-ratio: 1;
  }

  .image-catch::after {
    inset: 2rem;
  }

  .serve-popup {
    min-width: 100%;
  }

  .form-contact-us textarea {
    min-height: 15rem !important;
  }

  .search-field {
    width: 100%;
  }
}


@media (max-width: 992px) {
  body.contact-us {
    height: auto;
    background-position: bottom 250px left;
  }

  .header-wrapper {
    position: fixed;
    z-index: 10;
    background-color: white;
    box-shadow: 0 4px 4px rgb(0 0 0 / 0);
    transition: .5s;
    transition-property: box-shadow, background-color;
  }

  .header-wrapper > .container {
    padding: 1rem;
  }

  .header-wrapper:has([aria-expanded="true"]) {
    background-color: var(--clr-blue-dk);
    box-shadow: 0 4px 4px rgb(0 0 0 / .2);
  }

  .contact-us .header-wrapper svg #text {
    fill: var(--clr-blue-dk);
  }

  .header-wrapper:has([aria-expanded="true"]) svg #text {
    fill: white;
  }

  .header-wrapper .navbar-toggler-icon {
    background-image: none;
  }

  .header-wrapper .navbar-toggler-icon .fa-bars {
    padding-top: .5rem;
    scale: 1.3 1;
  }

  .header-wrapper:has([aria-expanded="true"]) .navbar-toggler-icon .fa-bars {
    padding-top: .4rem;
    scale: 1;
  }

  .header-wrapper:has([aria-expanded="true"]) .navbar-toggler-icon .fa-bars:before {
    content: "\f00d";
    color: white;
    font-size: var(--fs-lg);
    font-weight: var(--fw-lt);
  }

  .header-wrapper:has([aria-expanded="true"]) .nav-link {
    color: white;
    font-weight: var(--fw-lt);
  }

  .header-wrapper:has([aria-expanded="true"]) .nav-link:is(:hover, :active, :focus) {
    color: white !important;
  }

  header .fa-chevron-down {
    margin-left: .2rem;
  }

  header .dropdown-toggle.show .fa-chevron-down {
    rotate: -180deg;
  }

  header .dropdown-menu[data-bs-popper] {
    position: static;
  }

  header .dropdown-menu ul {
    display: block;
  }

  header .dropdown-menu li {
    width: auto;
    padding-block: .7rem;
    padding-inline: 0 !important;
    border: none !important;
  }

  header .link-login {
    color: var(--clr-blue-dk) !important;
    border-color: transparent;
    background-color: var(--clr-brown-lt);
    font-weight: var(--fw-md) !important;
  }

  .home .hero {
    background-position-x: 55%;
  }

  .home .hero-text h1 {
    font-size: calc(var(--hd-fs-lg) - .4rem);
  }

  .home .hero p:first-of-type {
    font-size: calc(var(--fs-r) - .1rem);
    font-weight: var(--fw-r);
}

  .page-intro .img-fluid {
    width: 100%;
    aspect-ratio: 1/.4;
    object-position: center 72%;
  }

  .polaris .page-intro .img-fluid {
    object-position: center 40%;
  }

  .genesis .page-intro .img-fluid {
    object-position: center 33%;
  }

  .horizon .page-intro .img-fluid {
    object-position: center 50%;
  }

  .introducers .page-intro .img-fluid {
    aspect-ratio: 1/.6;
    object-position: center 57%;
  }

  .image-catch .img-fluid {
    width: 100%;
    aspect-ratio: 1/.4;
    object-fit: cover;
  }

  .image-catch p {
    padding: 1.5rem 5rem 3.5rem !important;
    font-size: calc(var(--fs-r) - .1rem) !important;
    line-height: 1.4;
  }
}


@media (max-width: 1200px) {
  .navbar-brand img {
    width: 260px;
  }

  .intro-boxes [class*="col-"]:nth-child(even) .simple-box {
    background-color: inherit;
  }

  .intro-boxes [class*="col-"]:is(:nth-child(2),:nth-child(4),:nth-child(6)) .simple-box {
    background-color: var(--clr-brown-lt-500);
  }

  .image-catch p {
    padding-left: 1rem;
  }
}

@media (max-width: 1400px) {
  .image-catch p {
    font-size: calc(var(--fs-lg) + .4rem);
  }
}