<style>
/* ============================================================
   RESET / NORMALIZE
============================================================ */
img {
  display: block;
  height: auto;
  max-width: 100%;
}

ol, ul {
  padding-left: revert !important;
}

/* Suppress list indent inside chrome sections and HubSpot wrappers */
header ol, header ul,
nav ol, nav ul,
footer ol, footer ul,
.body-container-wrapper ol,
.body-container-wrapper ul {
  padding-left: 0 !important;
}

/* ============================================================
   TYPOGRAPHY
============================================================ */
h1 { font-weight: 800; }
h2 { font-weight: 700; }
h3 { font-weight: 600; }
h4, h5, h6 { font-weight: 500; }

.unbold { font-weight: normal !important; }
.lead { font-size: 1.25rem; }

sup {
  font-size: 0.6em !important;
  vertical-align: super !important;
  line-height: 0 !important;
}

h1 sup, h2 sup, h3 sup, h4 sup, h5 sup, h6 sup {
  font-size: 0.5em !important;
}

.psecu-heading__description {
  width: 100%;
  max-width: none;
}

.body-container-wrapper p:first-of-type {
  margin: 0.5rem 0;
}

/* ============================================================
   UTILITIES
============================================================ */
.align-left   { text-align: left !important; }
.align-center { text-align: center !important; }
.align-right  { text-align: right !important; }

/* Alignment helpers */
.align-left img, .align-left video, .align-left table,
.align-left ul, .align-left ol, .align-left p, .align-left div {
  margin-left: 0 !important;
  margin-right: auto !important;
}

.align-center img, .align-center video, .align-center table,
.align-center ul, .align-center ol, .align-center p, .align-center div {
  margin-left: auto !important;
  margin-right: auto !important;
}

.align-right img, .align-right video, .align-right table,
.align-right ul, .align-right ol, .align-right p, .align-right div {
  margin-left: auto !important;
  margin-right: 0 !important;
}

/* Image width helpers */
.img-w-25 { width: 25%; }
.img-w-50 { width: 50%; }
.img-w-75 { width: 75%; }
.img-w-100 { width: 100%; }

.img-w-25, .img-w-50, .img-w-75, .img-w-100 {
  display: block;
  height: auto;
  max-width: 100%;
}

.highlight {
  background-color: #b5fff0;
  border-radius: .5rem;
  padding: .25rem .5rem;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* ============================================================
   LAYOUT / CONTAINERS
============================================================ */
.application,
.calculator,
.cta-bar__wrapper,
.linked-cards__card,
.secondary-cta-bar__wrapper,
.hs-image-widget,
.dnd-column,
.dnd-background-layer[style*="f2f2f2"] {
  border-radius: 1rem !important;
}

.application__wrapper { padding: 5% 8%; }

.application,
.calculator,
.cta-bar__wrapper,
.linked-cards__card {
  max-width: 1000px !important;
  margin: 0 auto;
}

.secondary-cta-bar__wrapper {
  max-width: 1200px !important;
  margin: 0 auto;
}

.tabber__panel--wrapper {
  display: flex;
  align-items: flex-start;
  gap: 5%;
  margin: 0 auto;
  width: 95%;
}

.cta-bar__wrapper {
  margin: 10rem auto 2rem;
  padding: 8rem 0 4rem;
}

/* ============================================================
   COMPONENTS
============================================================ */
.card-slider .tag {
  background: transparent !important;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 0 !important;
  color: transparent !important;
  display: block !important;
  height: 110px;
  line-height: 0 !important;
  margin-bottom: 1rem;
  max-width: 180px;
  min-width: 0 !important;
  padding: 0 !important;
  width: 100%;
}

.card-button a.card__link,
.card-button a.card--image {
  text-decoration: none !important;
}

.card-button a button:hover { text-decoration: underline; }

.card-button a.card__link:hover h2,
.card-button a.card__link:hover h3,
.card-button a.card--image:hover h2,
.card-button a.card--image:hover h3 {
  text-decoration: none !important;
}

.flexible-offer__item.flexible-offer__item--image {
  align-items: stretch;
}

.flexible-offer__image,
.flexible-offer__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.flexible-offer__image--inner {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 1rem !important;
}

.flexible-offer__content {
  flex: 1;
  align-items: flex-start;
  text-align: left;
}

.flexible-offer__content .app-flow__btn--container,
.flexible-offer__content a.app-flow__buttons--item {
  align-self: flex-start;
  margin: 0;
}

.flexible-offer__item.flexible-offer__item--image:has(
  .flexible-offer__accordion--button[aria-expanded="true"]
) .flexible-offer__image,
.flexible-offer__item.flexible-offer__item--image:has(
  .flexible-offer__accordion--button[aria-expanded="true"]
) .flexible-offer__content {
  justify-content: flex-start;
}

.flexible-offer__open .flexible-offer__accordion--content {
  margin-top: 1rem;
}

.comparison-cards__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
  margin: 0 auto;
}

.comparison-cards__card {
  padding: 2.75rem 1.875rem;
  border-radius: 1rem !important;
  max-width: 1000px !important;
  margin: 0 auto;
  flex: 1 1 360px;
}

.body-container-wrapper ul,
.body-container-wrapper ol {
  line-height: 1.5;
  margin: 0.75rem 0;
  padding: 0 0 1rem 1.25rem;
}

.body-container-wrapper li { margin-bottom: 0.25rem; }
.body-container-wrapper li:last-child { margin-bottom: 0; }

.navigation a,
.footer a,
.app-flow__buttons--item,
.cta-primary,
.breadcrumbs__link,
.linked-cards a,
.linked-cards__button,
.promo-hero__buttons .promo-hero__buttons--item {
  text-decoration: none !important;
}

.footer a:hover,
.promo-hero__buttons .promo-hero__buttons--item:hover {
  text-decoration: underline !important;
}

.footer__top a:hover { color: #043436 !important; }
.footer__bottom a:hover { color: #FFFFFF !important; }

.app-flow__second--step .app-flow__section h5 {
  text-align: center;
  font-weight: 700;
}
.app-flow__btn--container { justify-content: center; }

/* ============================================================
   PAGE SPECIFIC
============================================================ */
.cta-bar__image {
  display: flex;
  justify-content: center;
}

.cta-bar__image img {
  width: 100%;
  height: auto;
  max-width: 100%;
  position: relative;
}

.curved-hero__headline,
.homepage-hero__headline,
.promo-hero__headline {
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.15;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.25);
}

.curved-hero__description,
.homepage-hero__description,
.promo-hero__description {
  clear: left;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.5;
  margin-top: 20px;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.25);
}

/* HubSpot forms */
.body-container-wrapper ul.inputs-list {
  padding-left: 0 !important;
  margin-left: 0 !important;
  list-style: none;
}

.hs-form-booleancheckbox-display {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 0.4rem;
  align-items: start;
}

.hs-form-booleancheckbox-display input,
.hs-form-booleancheckbox-display p,
.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin: 0 !important;
}

.hs_recaptcha.hs-recaptcha.field.hs-form-field {
  text-align: left;
}
.hs_recaptcha.hs-recaptcha.field.hs-form-field .grecaptcha-badge,
.hs_recaptcha .g-recaptcha-response { margin: 0; }

.comparison-cards__buttons { text-align: left !important; }
.comparison-cards__buttons--item a { min-width: inherit; }

/* a { display: inline; } */

/* ============================================================
   MEDIA QUERIES
============================================================ */
@media (max-width: 767px) {
  .curved-hero,
  .promo-hero { background-position: -580px left !important; }
}

@media (max-width: 768px) {
  .simple-hero__section { background-position: top left !important; }
}









/* Default inline for links */
/* a {
  display: inline !important;
} */

/* Hide empty buttons and remove their spacing */
.comparison-cards__buttons--item:empty,
.comparison-cards__buttons:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  width: 0 !important;
  height: 0 !important;
}

/* Remove extra space at the bottom of comparison cards */
.comparison-cards__card {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Standard list padding inside header, nav, footer, and body wrapper */
header ol, header ul,
nav ol, nav ul,
footer ol, footer ul,
.body-container-wrapper ol,
.body-container-wrapper ul {
  padding-left: 20px !important;
}
</style>