/* Font Imports */
@font-face {
  font-family: "Nissan Brand";
  src: url(https://firebasestorage.googleapis.com/v0/b/hseo-cdn.appspot.com/o/OEM-Fonts%2FNissan%2FNissanBrand-Regular.ttf?alt=media&token=c0e0c5a5-e1d7-4486-9744-3ef36718d353);
}

:root {
  /*---------*/
  /* Fonts */
  /*-------*/
  --hsd-oem-brand-font: "Nissan Brand", sans-serif;
  --hsd-second-font: "Nissan Brand", sans-serif;
  /*------------------------*/
  /* Custom Page Title */
  /*---------------------*/
  --hsd-font-size-custom-head: 24px;
  /*---------------------------*/
  /* Main Heading Styling */
  /*------------------------*/
  --hsd-font-family-head: "Nissan Brand", sans-serif;
  --hsd-font-size-head: 54px !important;
  --hsd-font-color-head: #fff;
  --hsd-font-family-sub-head: "Nissan Brand", sans-serif;
  --hsd-font-size-sub-head: 21.6px !important;
  --hsd-font-color-sub-head: #fff;
  --hsd-font-family-trim: "Nissan Brand", sans-serif;
  --hsd-font-size-trim: 21.6px !important;
  --hsd-font-color-trim: #fff;
  /*------------------------*/
  /* Pricing Info Styling */
  /*----------------------*/
  --hsd-font-family-pricing-prefix: "Nissan Brand", sans-serif;
  --hsd-font-size-pricing-prefix: 24px;
  --hsd-font-color-pricing-prefix: #fff;
  --hsd-font-family-pricing-details: "Nissan Brand", sans-serif;
  --hsd-font-size-pricing-details: 36px;
  --hsd-font-color-pricing-details: #fff;
  --hsd-font-family-pricing-suffix: "Nissan Brand", sans-serif;
  --hsd-font-size-pricing-suffix: 20px;
  --hsd-font-color-pricing-suffix: #fff;
  /*------------------------*/
  /* Offer Detail Styling */
  /*----------------------*/
  --hsd-kv-borders: 2px solid #e10a1d !important;
  --hsd-font-family-kv-value: "Nissan Brand", sans-serif;
  --hsd-font-size-kv-value: 32px;
  --hsd-font-color-kv-value: #fff;
  --hsd-font-family-kv-key: "Nissan Brand", sans-serif;
  --hsd-font-size-kv-key: 16px;
  --hsd-font-color-kv-key: #fff;
  /*----------------------------*/
  /* Button and Disclaimer */
  /*--------------------------*/
  --hsd-btn-disc-gap: 25px;
  /*---------------------------*/
  /* General Button Style */
  /*------------------------*/
  --hsd-btn-border-radius: 0;
  --hsd-btn-font-family: "Nissan Brand", sans-serif;
  --hsd-btn-font-size: 16px;
  --hsd-btn-padding: 12px 54px;
  --hsd-btn-width: 218px;
  --hsd-btn-height: 40px;
  --hsd-btn-gap: 12px;
  /*-----------------------------------------------*/
  /* Primary Button Style (The First Button) */
  /*--------------------------------------------*/
  --hsd-btn-bkg-pri: #c3002f;
  --hsd-btn-border-pri: 1px solid #c3002f;
  --hsd-btn-font-color-pri: #fff !important;
  /*----------------------------------*/
  /* Primary Button Hover Style */
  /*-------------------------------*/
  --hsd-btn-bkg-hover-pri: #ffffff00;
  --hsd-btn-border-hover-pri: 1px solid #c3002f !important;
  --hsd-btn-font-color-hover-pri: #c3002f !important;
  /*------------------------------------------------------*/
  /* Secondary Button Style (The Second Button) */
  /*----------------------------------------------------*/
  --hsd-btn-bkg-sec: #c3002f;
  --hsd-btn-border-sec: 1px solid #c3002f !important;
  --hsd-btn-font-color-sec: #fff !important;
  /*--------------------------------------*/
  /* Secondary Button Hover Style */
  /*-----------------------------------*/
  --hsd-btn-bkg-hover-sec: #ffffff00;
  --hsd-btn-border-hover-sec: 1px solid #c3002f;
  --hsd-btn-font-color-hover-sec: #c3002f !important;
  /*-----------------------*/
  /* Disclaimer Styling */
  /*---------------------*/
  --hsd-font-family-disclaimer: "Nissan Brand", sans-serif;
  --hsd-font-size-disclaimer: 12px;
  --hsd-font-color-disclaimer: #fff;
  /*----------------*/
  /* Modal Style */
  /*--------------*/
  --hsd-modal-bkg-color: #fefefe;
  --hsd-modal-close-color: #aaaaaa;
  --hsd-modal-close-size: 28px;
  --hsd-modal-font-color: #999 !important;
  --hsd-modal-font-size: 14px;
}
/*------------------------------*/
/* Variables Media Queries */
/*----------------------------*/
@media only screen and (min-width: 890px) {
  :root {
    --hsd-btn-padding: 0;
  }
}

@media only screen and (max-width: 890px) {
  :root {
    --hsd-font-size-head: 32px !important;
    --hsd-font-size-sub-head: 14px !important;
    /*--------------------------*/
    /* Pricing Media Query */
    /*------------------------*/
    --hsd-font-size-pricing-prefix: 24px;
    --hsd-font-size-pricing-details: 24px;
    /*-------------------------------*/
    /* Offer Detail Media Query */
    /*----------------------------*/
    --hsd-font-size-kv-value: 24px;
    /*------------------------*/
    /* Offer Detail Media Query */
    /*----------------------*/
    --hsd-font-size-kv-key: 12px;
    /*--------------------------*/
    /* Button Media Query */
    /*-----------------------*/
    --hsd-btn-padding: 12px 0;
    --hsd-btn-width: 218px;
  }
}

@media only screen and (max-width: 780px) {
  :root {
    /*--------------------------*/
    /* Button Media Query */
    /*-----------------------*/
    --hsd-btn-width: 90%;
  }
}

.hsd-custom-title {
  display: none;
  text-align: center;
  margin: 0;
  padding: 24px 0;
}
/* Removed negative space from Bootstrap's .container, important for mobile design */
.hsd-custom > .container::before {
  display: none !important;
}
.hsd-custom > .container::after {
  display: none !important;
}
/* Custom Container Styling */
.hsd-custom * {
  max-width: 100% !important;
}
.hsd-custom {
  width: 100%;
  background: var(--hsd-bkg-desktop);
  background-size: cover;
  background-position: center;
  padding: 80px 0 80px 0;
  color: white;
  margin: 0 auto;
  max-width: 1920px;
}
.container-max-xl {
  margin: 0px !important;
  padding: 0px !important;
  max-width: 100% !important;
}
.hsd-custom * {
  font-family: var(--hsd-second-font);
}
.hsd-lease-card {
  display: flex;
  flex-flow: column;
  max-width: 90% !important;
  gap: 40px;
}
/* Code for Upper Section, h1, and all its spans  */
.hsd-upper-section {
  display: flex;
  flex-flow: column;
  justify-content: center;
  gap: 20px;
}
.hsd-main-header {
  display: flex;
  flex-flow: column;
  margin: 0 0 20px 0;
  color: var(--hsd-font-color-head);
  font-family: var(--hsd-font-family-head) !important;
  font-size: var(--hsd-font-size-head) !important;
  font-style: normal;
  font-weight: 600;
  line-height: 67.5px; /* 125% */
}
.hsd-model-header {
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  font-family: var(--hsd-font-family-head) !important;
}
.hsd-sub-header {
  margin: 0;
  width: fit-content;
  color: var(--hsd-font-color-sub-head);
  font-family: var(--hsd-font-family-sub-head);
  font-size: var(--hsd-font-size-sub-head);
  font-style: normal;
  font-weight: 400;
  line-height: 38px;
  letter-spacing: 0.36px;
}
#la-year {
  font-family: var(--hsd-font-family-sub-head);
}
#la-make {
  font-family: var(--hsd-font-family-sub-head);
}
.hsd-trim-header {
  display: block;
  color: var(--hsd-font-color-trim);
  font-family: var(--hsd-font-family-trim);
  font-size: var(--hsd-font-size-trim);
  font-style: normal;
  font-weight: 400;
  line-height: 38px;
  letter-spacing: 0.36px;
}
/* Code for the Pricing line above the offers */
.hsd-lower-section {
  display: flex;
  flex-flow: column;
  gap: 24px;
}

#hsd-finance-offer {
  font-weight: 100;
  font-size: var(--hsd-font-size-pricing-prefix);
}

.hsd-pricing-prefix {
  font-size: var(--hsd-font-size-pricing-prefix);
}

#la-financing {
  font-weight: 700;
  font-size: var(--hsd-font-size-pricing-details);
}

.hsd-pricing-interval {
  font-size: var(--hsd-font-size-pricing-suffix);
  font-weight: 100;
  font-size: 20px;
}

.hsd-pricing-details {
  font-size: var(--hsd-font-size-pricing-details);
  font-weight: bolder;
}
.hsd-pricing-suffix {
  font-family: var(--hsd-font-family-pricing-suffix);
  font-size: var(--hsd-font-size-pricing-suffix);
  color: var(--hsd-font-color-pricing-suffix);
  text-transform: none;
}
/* Adjust all Keys and Values along with their containers */
.hsd-offer-info {
  display: flex;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  margin: 20px 0 0 0;
}
.hsd-kv-cont {
  text-align: center;
  max-width: 170px;
}
.hsd-kv-1 {
  padding-right: 24px;
}
.hsd-kv-2 {
  padding: 0 24px;
  border-right: var(--hsd-kv-borders) !important;
  border-left: var(--hsd-kv-borders) !important;
}
.hsd-kv-3 {
  padding-left: 24px;
}
.hsd-offer-value {
  color: var(--hsd-font-color-kv-value);
  font-family: var(--hsd-font-family-kv-value);
  font-size: var(--hsd-font-size-kv-value);
  text-align: center;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
}
.hsd-offer-key {
  text-align: center;
  font-family: var(--hsd-font-family-kv-key);
  font-size: var(--hsd-font-size-kv-key);
  color: var(--hsd-font-color-kv-key);
  font-style: normal;
  font-weight: 100;
  line-height: 25px;
}
/* BTNs */
.hsd-btn-disc-cont {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  gap: var(--hsd-btn-disc-gap);
}
.hsd-btn-cont {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--hsd-btn-gap);
}
.hsd-btns {
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--hsd-btn-width);
  height: var(--hsd-btn-height);
  padding: var(--hsd-btn-padding);
  border-radius: var(--hsd-btn-border-radius);
  font-family: var(--hsd-btn-font-family);
  font-size: var(--hsd-btn-font-size);
  font-style: normal;
  font-weight: 700 !important;
  line-height: 15.4px; /* 96.25% */
  transition: all 0.3s ease-in-out;
  text-decoration: none !important;
}
.hsd-btns:visited,
.hsd-btns:hover {
  text-decoration: none !important;
  color: currentColor;
}
.hsd-btn-pri {
  border: var(--hsd-btn-border-pri);
  background: var(--hsd-btn-bkg-pri);
  color: var(--hsd-btn-font-color-pri) !important;
}
.hsd-btn-pri:hover {
  border: var(--hsd-btn-border-hover-pri);
  background: var(--hsd-btn-bkg-hover-pri);
  color: var(--hsd-btn-font-color-hover-pri) !important;
}
.hsd-btn-sec {
  border: var(--hsd-btn-border-sec);
  background: var(--hsd-btn-bkg-sec);
  color: var(--hsd-btn-font-color-sec) !important;
}
.hsd-btn-sec:hover {
  border: var(--hsd-btn-border-hover-sec);
  background: var(--hsd-btn-bkg-hover-sec);
  color: var(--hsd-btn-font-color-hover-sec) !important;
}
.hsd-btn-txt {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 10px;
}
/* Disclaimer Trigger Styles */
#hsd-trigger-modal {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  cursor: pointer;
  font-family: var(--hsd-font-family-disclaimer);
  font-size: var(--hsd-font-size-disclaimer);
  color: var(--hsd-font-color-disclaimer);
  font-style: normal;
  font-weight: 400;
  line-height: 25px; /* 208.333% */
}
/* Close Modal */
.hsd-close-modal {
  align-items: end;
  display: flex;
  justify-content: end;
  cursor: pointer;
}
/* The Modal (background) */
.hsd-modal {
  z-index: 300000;
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0, 0, 0); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
}
/* Modal Content */
.hsd-modal-content {
  background-color: var(--hsd-modal-bkg-color);
  width: 50% !important;
  max-height: 478px;
  margin-top: 9em !important;
  margin: auto;
  padding: 10px 20px 20px !important;
  border: 1px solid #888;
  overflow-y: scroll;
  text-align: center;
}
.hsd-disclaimer-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.hsd-disclaimer-head > b {
  margin-top: 2px;
}
.hsd-modal-content > p {
  color: var(--hsd-modal-font-color);
}
/* The Close Button */
.hsd-close-modal {
  color: var(--hsd-modal-close-color);
  float: right;
  font-size: var(--hsd-modal-close-size);
  font-weight: bold;
}
.hsd-close-modal:hover,
.hsd-close-modal:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}
/* IPAD css */
@media only screen and (max-width: 780px) {
  .hsd-custom-title {
    font-size: var(--hsd-font-size-custom-head);
  }
  .hsd-custom {
    max-width: 100%;
    background: var(--hsd-bkg-mobile);
    background-size: cover;
    background-position: center;
    padding: 20px 0 40px 0;
    height: 730px;
    color: white;
  }
  .hsd-lease-card {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    min-width: 0;
    max-width: 100% !important;
  }
  .hsd-upper-section {
    align-items: center;
    gap: 12px;
  }
  .hsd-main-header {
    align-items: center;
    margin-bottom: 12px !important;
    text-align: center;
  }
  .hsd-model-header {
    width: fit-content;
  }
  /* .hsd-trim-header {
} */
  .hsd-pricing-container {
    text-align: center;
    /* margin: -10px 0 0 0; */
  }
  .hsd-kv-1 {
    padding-right: 12px;
  }
  .hsd-kv-2 {
    padding: 0 12px;
    border-right: 1px solid;
    border-left: 1px solid;
  }
  .hsd-kv-3 {
    padding-left: 12px;
  }
  .hsd-offer-info {
    width: 100%;
    justify-content: center;
    margin: 0;
  }
  .hsd-offer-value {
    font-style: normal;
    font-weight: 900;
    line-height: 24.129px;
  }
  .hsd-lower-section {
    width: 100%;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }
  .hsd-btn-disc-cont {
    width: 100%;
    align-items: center;
  }
  .hsd-btn-cont {
    width: 100%;
    flex-flow: column;
    justify-content: center;
  }
  .hsd-btns {
    width: var(--hsd-btn-width);
    padding: var(--hsd-btn-padding);
    text-align: center;
  }
  .hsd-btn-pri {
    margin: 0;
  }
  .hsd-disc-cont {
    width: 90%;
  }
  .hsd-modal-content {
    width: 80% !important;
  }
}
/* Mobile css */
@media only screen and (max-width: 767px) {
}
/* Mobile Small css */
@media only screen and (max-width: 375px) {
}