/*
Theme Name: RealCover Child
Theme URI: https://realcoverinsurancefl.com
Description: Custom child theme for RealCover Insurance.
Author: RealCover Insurance
Template: hello-elementor
Version: 1.0.0
Text Domain: realcover-child
*/

:root {
  --rc-navy: #073B67;
  --rc-blue: #0875D1;
  --rc-red: #EF3340;
  --rc-text: #24364B;
  --rc-light-blue: #EAF5FF;
  --rc-soft-blue: #F5FAFF;
  --rc-light-gray: #F4F6F8;
  --rc-border: #DCE6EF;
  --rc-white: #FFFFFF;
  --rc-max: 1200px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: Inter, Arial, sans-serif;
  color: var(--rc-text);
  background: var(--rc-white);
}

a { color: inherit; text-decoration: none; }

.rc-container {
  width: min(calc(100% - 40px), var(--rc-max));
  margin: 0 auto;
}

.rc-topbar {
  background: var(--rc-navy);
  color: #fff;
  font-size: 14px;
}

.rc-topbar-inner {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.rc-topbar-links {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
}

.rc-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255,255,255,.98);
  border-bottom: 1px solid var(--rc-border);
}

.rc-header-inner {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.rc-logo img {
  width: 200px;
  height: auto;
  display: block;
}

.rc-nav {
  display: flex;
  align-items: center;
  gap: 28px;
  font-weight: 600;
  font-size: 15px;
  color: var(--rc-navy);
}

.rc-nav a:hover { color: var(--rc-blue); }

.rc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 10px;
  font-weight: 700;
  transition: .2s ease;
}

.rc-btn-primary {
  background: var(--rc-red);
  color: #fff;
}

.rc-btn-primary:hover {
  transform: translateY(-1px);
  filter: brightness(.96);
}

.rc-btn-secondary {
  border: 1px solid var(--rc-blue);
  color: var(--rc-blue);
  background: #fff;
}

.rc-menu-toggle {
  display: none;
  border: 0;
  background: transparent;
  font-size: 28px;
  color: var(--rc-navy);
  cursor: pointer;
}

.rc-hero {
  background: linear-gradient(135deg, #F5FAFF 0%, #EAF5FF 100%);
  padding: 78px 0;
}

.rc-hero-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  align-items: center;
  gap: 56px;
}

.rc-eyebrow {
  color: var(--rc-blue);
  font-weight: 700;
  margin: 0 0 12px;
}

.rc-hero h1 {
  font-family: Poppins, Arial, sans-serif;
  color: var(--rc-navy);
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1.05;
  margin: 0 0 20px;
  letter-spacing: -1.5px;
}

.rc-hero p {
  font-size: 19px;
  line-height: 1.7;
  margin: 0 0 28px;
  max-width: 650px;
}

.rc-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.rc-hero-card {
  background: #fff;
  border: 1px solid var(--rc-border);
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(7,59,103,.12);
  padding: 34px;
}

.rc-hero-card h3 {
  font-family: Poppins, Arial, sans-serif;
  color: var(--rc-navy);
  margin: 0 0 12px;
}

.rc-section {
  padding: 84px 0;
}

.rc-section h2 {
  font-family: Poppins, Arial, sans-serif;
  color: var(--rc-navy);
  font-size: clamp(30px, 4vw, 44px);
  text-align: center;
  margin: 0 0 16px;
}

.rc-section-lead {
  max-width: 720px;
  margin: 0 auto 40px;
  text-align: center;
  font-size: 18px;
}

.rc-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.rc-card {
  border: 1px solid var(--rc-border);
  border-radius: 18px;
  padding: 28px;
  background: #fff;
}

.rc-card h3 {
  color: var(--rc-navy);
  font-family: Poppins, Arial, sans-serif;
  margin-top: 0;
}

.rc-footer {
  background: var(--rc-navy);
  color: #fff;
  padding: 54px 0 24px;
}

.rc-footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 40px;
}

.rc-footer small {
  display: block;
  margin-top: 36px;
  opacity: .8;
}

@media (max-width: 1024px) {
  .rc-menu-toggle { display: block; }
  .rc-nav {
    display: none;
    position: absolute;
    top: 82px;
    left: 0;
    right: 0;
    background: #fff;
    border-bottom: 1px solid var(--rc-border);
    padding: 20px;
    flex-direction: column;
    align-items: flex-start;
  }
  .rc-nav.is-open { display: flex; }
  .rc-header-inner { position: relative; }
  .rc-hero-grid { grid-template-columns: 1fr; }
  .rc-cards { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 700px) {
  .rc-topbar { display: none; }
  .rc-header-inner { min-height: 72px; }
  .rc-logo img { width: 170px; }
  .rc-nav { top: 72px; }
  .rc-hero { padding: 56px 0; }
  .rc-hero h1 { font-size: 42px; }
  .rc-section { padding: 62px 0; }
  .rc-cards { grid-template-columns: 1fr; }
  .rc-footer-grid { grid-template-columns: 1fr; }
}

/* =========================
   REALCOVER HEADER
========================= */

.rc-topbar {
  background: var(--rc-navy);
  color: var(--rc-white);
  font-size: 13px;
  font-weight: 500;
}

.rc-topbar-inner {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.rc-topbar-right a {
  color: var(--rc-white);
  font-weight: 600;
}

.rc-topbar-right a:hover {
  opacity: 0.85;
}


.rc-header {
  position: sticky;
  top: 0;
  z-index: 1000;

  background: rgba(255, 255, 255, 0.97);

  border-bottom: 1px solid var(--rc-border);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}


.rc-header-inner {
  min-height: 86px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;
}


.rc-logo {
  flex-shrink: 0;
}


.rc-logo img {
  width: 210px;
  height: auto;
  display: block;
}


.rc-nav {
  display: flex;
  align-items: center;

  gap: 28px;

  font-size: 15px;
  font-weight: 600;

  color: var(--rc-navy);
}


.rc-nav > a,
.rc-dropdown-toggle {
  color: var(--rc-navy);

  transition:
    color 0.2s ease,
    opacity 0.2s ease;
}


.rc-nav > a:hover,
.rc-dropdown-toggle:hover {
  color: var(--rc-blue);
}


/* =========================
   DROPDOWN
========================= */

.rc-dropdown {
  position: relative;
}


.rc-dropdown-toggle {
  border: 0;
  background: transparent;

  font: inherit;

  cursor: pointer;

  display: flex;
  align-items: center;

  gap: 5px;

  padding: 10px 0;
}


.rc-dropdown-arrow {
  font-size: 15px;
  line-height: 1;
}


.rc-dropdown-menu {
  position: absolute;

  top: calc(100% + 8px);
  left: -20px;

  min-width: 220px;

  background: var(--rc-white);

  border: 1px solid var(--rc-border);

  border-radius: 12px;

  padding: 8px;

  box-shadow:
    0 18px 40px rgba(7, 59, 103, 0.12);

  opacity: 0;
  visibility: hidden;

  transform: translateY(6px);

  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease;
}


.rc-dropdown:hover .rc-dropdown-menu,
.rc-dropdown:focus-within .rc-dropdown-menu {
  opacity: 1;
  visibility: visible;

  transform: translateY(0);
}


.rc-dropdown-menu a {
  display: block;

  padding: 12px 14px;

  border-radius: 8px;

  color: var(--rc-navy);

  font-size: 14px;
  font-weight: 600;
}


.rc-dropdown-menu a:hover {
  background: var(--rc-soft-blue);

  color: var(--rc-blue);
}


/* =========================
   HEADER CTA
========================= */

.rc-header-cta {
  min-height: 44px;

  padding: 0 20px;

  border-radius: 10px;

  color: var(--rc-white) !important;
}


/* =========================
   MOBILE MENU
========================= */

.rc-menu-toggle {
  display: none;

  border: 0;
  background: transparent;

  color: var(--rc-navy);

  font-size: 28px;

  cursor: pointer;
}


/* =========================
   WHATSAPP FLOATING BUTTON
========================= */

.rc-whatsapp-float {
  position: fixed;

  right: 24px;
  bottom: 24px;

  width: 58px;
  height: 58px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #25D366;

  border-radius: 50%;

  box-shadow:
    0 10px 25px rgba(0, 0, 0, 0.18);

  z-index: 1500;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}


.rc-whatsapp-float:hover {
  transform: translateY(-3px);

  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.22);
}


.rc-whatsapp-icon {
  font-size: 27px;
  line-height: 1;
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

  .rc-menu-toggle {
    display: block;
  }


  .rc-nav {
    display: none;

    position: absolute;

    top: 86px;
    left: 0;
    right: 0;

    background: var(--rc-white);

    border-bottom: 1px solid var(--rc-border);

    padding: 22px;

    flex-direction: column;
    align-items: flex-start;

    gap: 8px;
  }


  .rc-nav.is-open {
    display: flex;
  }


  .rc-header-inner {
    position: relative;
  }


  .rc-nav > a,
  .rc-dropdown {
    width: 100%;
  }


  .rc-nav > a,
  .rc-dropdown-toggle {
    padding: 12px 0;
  }


  .rc-dropdown-menu {
    position: static;

    width: 100%;

    margin-top: 4px;

    opacity: 1;
    visibility: visible;

    transform: none;

    display: none;

    box-shadow: none;

    border-radius: 10px;
  }


  .rc-dropdown:hover .rc-dropdown-menu {
    display: block;
  }


  .rc-header-cta {
    width: 100%;
    margin-top: 8px;
  }
}


/* =========================
   MOBILE
========================= */

@media (max-width: 700px) {

  .rc-topbar {
    display: block;
  }


  .rc-topbar-inner {
    min-height: 34px;

    justify-content: center;
  }


  .rc-topbar-left {
    display: none;
  }


  .rc-topbar-right {
    width: 100%;
    text-align: center;
  }


  .rc-header-inner {
    min-height: 72px;
  }


  .rc-logo img {
    width: 170px;
  }


  .rc-nav {
    top: 72px;
  }


  .rc-whatsapp-float {
    right: 18px;
    bottom: 18px;

    width: 54px;
    height: 54px;
  }
}

/* =================================================
   HEADER FIXES
================================================= */


/* DROPDOWN */

.rc-dropdown {
  position: relative;
  display: flex;
  align-items: center;
}

.rc-dropdown-toggle {
  appearance: none;
  -webkit-appearance: none;

  border: none;
  background: transparent;

  padding: 10px 0;

  display: flex;
  align-items: center;
  gap: 7px;

  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;

  color: var(--rc-navy);

  cursor: pointer;
}

.rc-dropdown-toggle:hover {
  color: var(--rc-blue);
}

.rc-dropdown-arrow {
  width: 11px;
  height: 7px;

  transition: transform 0.2s ease;
}

.rc-dropdown.is-open .rc-dropdown-arrow {
  transform: rotate(180deg);
}


.rc-dropdown-menu {
  position: absolute !important;

  top: calc(100% + 10px) !important;
  left: -20px !important;

  width: 230px !important;

  display: block !important;

  margin: 0 !important;
  padding: 8px !important;

  background: #ffffff !important;

  border: 1px solid var(--rc-border) !important;
  border-radius: 12px !important;

  box-shadow:
    0 16px 40px rgba(7, 59, 103, 0.14) !important;

  opacity: 0 !important;
  visibility: hidden !important;

  transform: translateY(7px) !important;

  pointer-events: none !important;

  z-index: 5000 !important;

  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease !important;
}


.rc-dropdown.is-open .rc-dropdown-menu,
.rc-dropdown:hover .rc-dropdown-menu {
  opacity: 1 !important;
  visibility: visible !important;

  transform: translateY(0) !important;

  pointer-events: auto !important;
}


.rc-dropdown-menu a {
  display: block !important;

  width: 100% !important;

  padding: 12px 14px !important;

  color: var(--rc-navy) !important;

  font-size: 14px !important;
  font-weight: 600 !important;

  border-radius: 8px !important;

  white-space: nowrap !important;
}


.rc-dropdown-menu a:hover {
  color: var(--rc-blue) !important;

  background: var(--rc-soft-blue) !important;
}


/* WHATSAPP */

.rc-whatsapp-float {
  position: fixed !important;

  right: 24px !important;
  bottom: 24px !important;

  left: auto !important;
  top: auto !important;

  width: 58px !important;
  height: 58px !important;

  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  padding: 0 !important;
  margin: 0 !important;

  background: #25D366 !important;

  color: #ffffff !important;

  border-radius: 999px !important;

  box-shadow:
    0 10px 28px rgba(0,0,0,.20) !important;

  z-index: 99999 !important;
}


.rc-whatsapp-icon {
  display: block !important;

  width: 31px !important;
  height: 31px !important;

  color: #ffffff !important;
}


.rc-whatsapp-float:hover {
  transform: translateY(-3px);

  color: #ffffff !important;
}

/* =================================================
   HERO SECTION
================================================= */

.rc-hero {
  position: relative;
  overflow: hidden;

  padding: 92px 0 96px;

  background:
    radial-gradient(
      circle at 80% 20%,
      rgba(8, 117, 209, 0.10),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      #F8FCFF 0%,
      #EDF7FF 100%
    );
}


.rc-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(0, 0.95fr);

  align-items: center;

  gap: 70px;
}


.rc-hero-copy {
  max-width: 650px;
}


.rc-eyebrow {
  margin: 0 0 16px;

  color: var(--rc-blue);

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 1.8px;
}


.rc-hero h1 {
  margin: 0 0 24px;

  max-width: 650px;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(46px, 5.5vw, 72px);

  line-height: 1.04;

  letter-spacing: -2px;

  color: var(--rc-navy);
}


.rc-hero-description {
  margin: 0 0 28px;

  max-width: 610px;

  font-size: 19px;

  line-height: 1.7;

  color: var(--rc-text);
}


.rc-hero-points {
  display: flex;

  flex-wrap: wrap;

  gap: 10px 22px;

  margin-bottom: 34px;
}


.rc-hero-point {
  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 14px;

  font-weight: 600;

  color: var(--rc-navy);
}


.rc-check {
  width: 23px;
  height: 23px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-size: 13px;

  font-weight: 800;
}


.rc-hero-actions {
  display: flex;

  align-items: center;

  gap: 14px;

  flex-wrap: wrap;
}


.rc-hero-actions .rc-btn {
  min-width: 158px;
}


/* HERO VISUAL */

.rc-hero-visual {
  position: relative;

  min-height: 480px;
}


.rc-hero-image-placeholder {
  position: absolute;

  inset: 0 0 20px 30px;

  border-radius: 30px;

  overflow: hidden;

  background:
    linear-gradient(
      145deg,
      rgba(7, 59, 103, 0.96),
      rgba(8, 117, 209, 0.80)
    );

  box-shadow:
    0 25px 60px rgba(7, 59, 103, 0.20);
}


.rc-hero-image-placeholder::before {
  content: "";

  position: absolute;

  width: 340px;
  height: 340px;

  right: -100px;
  top: -90px;

  border-radius: 50%;

  background:
    rgba(255, 255, 255, 0.10);
}


.rc-hero-image-placeholder::after {
  content: "";

  position: absolute;

  width: 240px;
  height: 240px;

  left: -80px;
  bottom: -90px;

  border-radius: 50%;

  background:
    rgba(255, 255, 255, 0.08);
}


.rc-hero-image-content {
  position: absolute;

  left: 45px;
  right: 45px;
  bottom: 48px;

  z-index: 2;

  color: #ffffff;
}


.rc-hero-image-small {
  display: block;

  margin-bottom: 10px;

  font-size: 12px;

  font-weight: 700;

  letter-spacing: 1.6px;

  opacity: 0.85;
}


.rc-hero-image-content strong {
  display: block;

  max-width: 390px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 34px;

  line-height: 1.18;
}


/* FLOATING CARD */

.rc-hero-floating-card {
  position: absolute;

  left: 0;
  bottom: 0;

  z-index: 5;

  width: min(360px, 82%);

  display: flex;

  align-items: flex-start;

  gap: 14px;

  padding: 20px 22px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 16px;

  box-shadow:
    0 18px 45px rgba(7, 59, 103, 0.16);
}


.rc-floating-icon {
  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 10px;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-size: 20px;

  font-weight: 800;
}


.rc-hero-floating-card strong {
  display: block;

  margin-bottom: 3px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 15px;
}


.rc-hero-floating-card span {
  display: block;

  font-size: 13px;

  line-height: 1.5;

  color: var(--rc-text);
}


/* TABLET */

@media (max-width: 1024px) {

  .rc-hero {
    padding: 74px 0 80px;
  }


  .rc-hero-grid {
    grid-template-columns: 1fr;

    gap: 50px;
  }


  .rc-hero-copy {
    max-width: 720px;
  }


  .rc-hero-visual {
    min-height: 430px;

    max-width: 700px;

    width: 100%;

    margin: 0 auto;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .rc-hero {
    padding: 54px 0 64px;
  }


  .rc-hero-grid {
    gap: 40px;
  }


  .rc-hero h1 {
    font-size: 44px;

    letter-spacing: -1px;
  }


  .rc-hero-description {
    font-size: 17px;
  }


  .rc-hero-actions {
    flex-direction: column;

    align-items: stretch;
  }


  .rc-hero-actions .rc-btn {
    width: 100%;
  }


  .rc-hero-points {
    display: grid;

    grid-template-columns: 1fr;

    gap: 12px;
  }


  .rc-hero-visual {
    min-height: 390px;
  }


  .rc-hero-image-placeholder {
    inset: 0 0 30px 0;

    border-radius: 22px;
  }


  .rc-hero-image-content {
    left: 28px;
    right: 28px;
    bottom: 44px;
  }


  .rc-hero-image-content strong {
    font-size: 28px;
  }


  .rc-hero-floating-card {
    width: calc(100% - 30px);

    left: 15px;

    padding: 17px;
  }

}

/* =================================================
   HERO PHOTO
================================================= */

.rc-hero-image {
  position: absolute;

  inset: 0 0 20px 30px;

  overflow: hidden;

  border-radius: 30px;

  background: #eaf5ff;

  box-shadow:
    0 25px 60px rgba(7, 59, 103, 0.20);
}


.rc-hero-image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  object-position: 58% center;
}


/* Subtle overlay for a more polished finish */

.rc-hero-image::after {
  content: "";

  position: absolute;

  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      180deg,
      rgba(7, 59, 103, 0.02) 40%,
      rgba(7, 59, 103, 0.12) 100%
    );
}


/* TABLET */

@media (max-width: 1024px) {

  .rc-hero-image {
    inset: 0 0 20px 30px;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .rc-hero-image {
    inset: 0 0 30px 0;

    border-radius: 22px;
  }


  .rc-hero-image img {
    object-position: 60% center;
  }

}

/* =================================================
   HERO COPY UPDATE
================================================= */

.rc-hero-highlight {
  display: block;
  color: var(--rc-blue);
}


/* =================================================
   TRUST STRIP
================================================= */

.rc-trust-strip {
  background: #ffffff;
  border-top: 1px solid var(--rc-border);
  border-bottom: 1px solid var(--rc-border);
}

.rc-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.rc-trust-item {
  min-height: 130px;

  display: flex;
  align-items: center;
  justify-content: center;

  gap: 14px;

  padding: 28px 22px;

  position: relative;
}

.rc-trust-item:not(:last-child)::after {
  content: "";

  position: absolute;

  right: 0;
  top: 30%;

  width: 1px;
  height: 40%;

  background: var(--rc-border);
}

.rc-trust-icon {
  width: 42px;
  height: 42px;

  flex-shrink: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-size: 20px;
  font-weight: 700;
}

.rc-trust-item strong {
  display: block;

  margin-bottom: 3px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 20px;
  font-weight: 700;

  line-height: 1.2;

  color: var(--rc-navy);
}

.rc-trust-item span {
  display: block;

  font-size: 13px;

  color: var(--rc-text);

  line-height: 1.4;
}


/* TABLET */

@media (max-width: 1024px) {

  .rc-trust-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .rc-trust-item:nth-child(2)::after {
    display: none;
  }

  .rc-trust-item:nth-child(-n+2) {
    border-bottom: 1px solid var(--rc-border);
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-trust-grid {
    grid-template-columns: 1fr 1fr;
  }

  .rc-trust-item {
    min-height: 120px;

    flex-direction: column;

    text-align: center;

    gap: 9px;

    padding: 20px 12px;
  }

  .rc-trust-item strong {
    font-size: 16px;
  }

  .rc-trust-item span {
    font-size: 12px;
  }

  .rc-trust-icon {
    width: 36px;
    height: 36px;

    font-size: 17px;
  }

}

/* =================================================
   HERO LAYOUT FINAL FIX
================================================= */

.rc-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
  align-items: center !important;
  gap: 70px !important;
}

.rc-hero-copy {
  min-width: 0;
}

.rc-hero-visual {
  position: relative !important;
  min-height: 480px !important;
  width: 100% !important;
}

.rc-hero-image {
  position: absolute !important;
  inset: 0 0 20px 30px !important;
}

.rc-hero-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 58% center !important;
}

@media (max-width: 1024px) {

  .rc-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 50px !important;
  }

  .rc-hero-visual {
    min-height: 430px !important;
    max-width: 700px !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 700px) {

  .rc-hero-visual {
    min-height: 390px !important;
  }

  .rc-hero-image {
    inset: 0 0 30px 0 !important;
  }
}

/* =================================================
   INSURANCE CARDS - FINAL GRID FIX
================================================= */

.rc-insurance-section {
  padding: 96px 0 !important;
  background: #ffffff !important;
}

.rc-insurance-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;

  width: 100% !important;
  max-width: 1100px !important;

  margin: 0 auto !important;
}

.rc-insurance-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;

  gap: 22px !important;

  width: 100% !important;
  min-width: 0 !important;

  padding: 34px !important;

  background: #ffffff !important;

  border: 1px solid var(--rc-border) !important;
  border-radius: 22px !important;

  box-shadow:
    0 12px 35px rgba(7, 59, 103, 0.07) !important;
}

.rc-insurance-card-content {
  flex: 1 !important;
  min-width: 0 !important;
}

.rc-insurance-icon {
  width: 54px !important;
  height: 54px !important;

  min-width: 54px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: var(--rc-light-blue) !important;

  color: var(--rc-blue) !important;

  border-radius: 15px !important;

  font-size: 24px !important;
  font-weight: 700 !important;
}

.rc-insurance-card h3 {
  margin: 0 0 14px !important;

  font-size: 23px !important;
  line-height: 1.3 !important;

  color: var(--rc-navy) !important;
}

.rc-insurance-card p {
  margin: 0 0 18px !important;

  font-size: 15px !important;
  line-height: 1.7 !important;
}

.rc-insurance-list {
  margin: 0 0 22px !important;
  padding: 0 !important;

  list-style: none !important;
}

.rc-insurance-list li {
  position: relative !important;

  padding-left: 24px !important;
  margin-bottom: 8px !important;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-insurance-grid {
    grid-template-columns: 1fr !important;
    max-width: 680px !important;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-insurance-section {
    padding: 60px 0 !important;
  }

  .rc-insurance-card {
    flex-direction: column !important;

    padding: 26px !important;
  }

}

/* INSURANCE SECTION HEADING FIX */

.rc-insurance-section .rc-section-heading {
  max-width: 720px !important;
  margin: 0 auto 48px !important;
  text-align: center !important;
}

.rc-insurance-section .rc-eyebrow {
  text-align: center !important;
}

.rc-insurance-section .rc-section-heading h2 {
  text-align: center !important;
}

.rc-insurance-section .rc-section-heading > p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* =================================================
   HOW IT WORKS
================================================= */

.rc-process-section {
  padding: 96px 0;

  background:
    linear-gradient(
      180deg,
      #F7FBFF 0%,
      #EDF7FF 100%
    );
}


.rc-process-grid {
  position: relative;

  display: grid;
  grid-template-columns: repeat(3, 1fr);

  gap: 30px;

  max-width: 1100px;
  margin: 0 auto;
}


/* CONNECTING LINE */

.rc-process-grid::before {
  content: "";

  position: absolute;

  top: 53px;
  left: 16%;
  right: 16%;

  height: 2px;

  background: #D5E8F7;

  z-index: 0;
}


.rc-process-step {
  position: relative;
  z-index: 1;

  text-align: center;

  padding: 0 24px;
}


.rc-process-number {
  position: absolute;

  top: 0;
  right: 30px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 13px;
  font-weight: 700;

  color: var(--rc-blue);

  opacity: 0.65;
}


.rc-process-icon {
  width: 74px;
  height: 74px;

  margin: 16px auto 26px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 20px;

  background: #ffffff;

  color: var(--rc-blue);

  border: 1px solid var(--rc-border);

  box-shadow:
    0 10px 30px rgba(7, 59, 103, 0.08);
}


.rc-process-icon svg {
  width: 30px;
  height: 30px;

  fill: none;

  stroke: currentColor;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


.rc-process-step h3 {
  margin: 0 0 12px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 20px;
  line-height: 1.3;

  color: var(--rc-navy);
}


.rc-process-step p {
  max-width: 310px;

  margin: 0 auto;

  font-size: 15px;
  line-height: 1.7;

  color: var(--rc-text);
}


/* BOTTOM CTA */

.rc-process-footer {
  max-width: 760px;

  margin: 55px auto 0;

  padding: 22px 26px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 24px;

  background: #ffffff;

  border: 1px solid var(--rc-border);
  border-radius: 16px;

  box-shadow:
    0 10px 30px rgba(7, 59, 103, 0.06);
}


.rc-process-footer p {
  margin: 0;

  color: var(--rc-text);

  font-size: 15px;
}


.rc-process-footer strong {
  color: var(--rc-navy);
}


/* TABLET */

@media (max-width: 850px) {

  .rc-process-section {
    padding: 72px 0;
  }

  .rc-process-grid {
    grid-template-columns: 1fr;

    gap: 45px;

    max-width: 600px;
  }

  .rc-process-grid::before {
    display: none;
  }

  .rc-process-number {
    position: static;

    margin-bottom: -5px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-process-section {
    padding: 60px 0;
  }

  .rc-process-step {
    padding: 0 10px;
  }

  .rc-process-footer {
    margin-top: 42px;

    flex-direction: column;

    text-align: center;

    padding: 24px 20px;
  }

  .rc-process-footer .rc-btn {
    width: 100%;
  }

}

/* =================================================
   PROCESS SECTION - FIVE STEP VERSION
================================================= */

.rc-process-section {
  padding: 96px 0;
  background: #f8fbfd;
}

.rc-process-grid-five {
  position: relative;

  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;

  gap: 24px !important;

  max-width: 1240px;
  margin: 0 auto;
}

.rc-process-grid-five::before {
  content: "";

  position: absolute;

  top: 53px;
  left: 8%;
  right: 8%;

  height: 2px;

  background: #d9e6ef;

  z-index: 0;
}

.rc-process-grid-five .rc-process-step {
  position: relative;
  z-index: 1;

  text-align: center;

  padding: 0 10px;
}

.rc-process-grid-five .rc-process-icon {
  width: 76px;
  height: 76px;

  margin: 16px auto 16px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: #ffffff;

  border: 2px solid var(--rc-border);

  color: var(--rc-blue);

  box-shadow:
    0 8px 24px rgba(7, 59, 103, 0.06);
}

.rc-process-grid-five .rc-process-icon svg {
  width: 32px;
  height: 32px;

  fill: none;

  stroke: currentColor;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.rc-process-grid-five .rc-process-number {
  position: static !important;

  width: 32px;
  height: 32px;

  margin: 0 auto 16px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: var(--rc-navy);

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;

  opacity: 1 !important;
}

.rc-process-grid-five .rc-process-step h3 {
  margin: 0 0 10px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 17px;
  line-height: 1.35;

  color: var(--rc-navy);
}

.rc-process-grid-five .rc-process-step p {
  margin: 0 auto;

  max-width: 210px;

  font-size: 14px;
  line-height: 1.6;

  color: var(--rc-text);
}


/* TABLET */

@media (max-width: 1024px) {

  .rc-process-grid-five {
    grid-template-columns: repeat(2, 1fr) !important;

    max-width: 760px;

    gap: 44px 28px !important;
  }

  .rc-process-grid-five::before {
    display: none;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-process-section {
    padding: 60px 0;
  }

  .rc-process-grid-five {
    grid-template-columns: 1fr !important;

    max-width: 480px;

    gap: 40px !important;
  }

  .rc-process-grid-five .rc-process-step p {
    max-width: 310px;
  }

}

/* =================================================
   PREMIUM INSURANCE CARDS
================================================= */

.rc-insurance-premium {
  padding: 96px 0;
  background: #ffffff;
}

.rc-premium-insurance-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 22px;

  max-width: 1180px;
  margin: 0 auto;
}

.rc-premium-card {
  position: relative;

  min-height: 300px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  padding: 34px 30px;

  background: #ffffff;

  border: 1px solid var(--rc-border);
  border-radius: 22px;

  box-shadow:
    0 10px 30px rgba(7, 59, 103, 0.06);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.rc-premium-card:hover {
  transform: translateY(-6px);

  border-color: rgba(8, 117, 209, 0.28);

  box-shadow:
    0 20px 45px rgba(7, 59, 103, 0.12);
}

.rc-premium-icon {
  width: 58px;
  height: 58px;

  margin-bottom: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 16px;

  background: var(--rc-light-blue);

  color: var(--rc-blue);
}

.rc-premium-icon svg {
  width: 29px;
  height: 29px;

  fill: none;

  stroke: currentColor;
  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.rc-premium-card h3 {
  margin: 0 0 12px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 20px;
  line-height: 1.3;

  color: var(--rc-navy);
}

.rc-premium-card p {
  margin: 0 0 28px;

  font-size: 15px;
  line-height: 1.65;

  color: var(--rc-text);
}

.rc-premium-link {
  margin-top: auto;

  display: inline-flex;
  align-items: center;

  gap: 8px;

  color: var(--rc-blue);

  font-size: 14px;
  font-weight: 700;

  text-decoration: none;
}

.rc-premium-link span {
  transition: transform 0.2s ease;
}

.rc-premium-link:hover span {
  transform: translateX(4px);
}


/* TABLET */

@media (max-width: 1024px) {

  .rc-premium-insurance-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    max-width: 800px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-insurance-premium {
    padding: 60px 0;
  }

  .rc-premium-insurance-grid {
    grid-template-columns: 1fr;
  }

  .rc-premium-card {
    min-height: 0;

    padding: 28px;
  }

}

/* =================================================
   CARRIERS / TRUST SECTION
================================================= */

.rc-carriers-section {
  padding: 96px 0;
  background: #ffffff;
}

.rc-carriers-heading {
  max-width: 760px;
  margin: 0 auto 52px;
  text-align: center;
}

.rc-carriers-heading p {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}


/* LOGO GRID */

.rc-carriers-grid {
  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 18px;

  max-width: 1100px;

  margin: 0 auto;
}

.rc-carrier-logo {
  min-height: 120px;

  display: flex;

  align-items: center;
  justify-content: center;

  padding: 26px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 18px;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.rc-carrier-logo:hover {
  transform: translateY(-4px);

  border-color: rgba(8, 117, 209, 0.24);

  box-shadow:
    0 15px 35px rgba(7, 59, 103, 0.08);
}

.rc-carrier-logo img {
  display: block;

  width: auto;
  height: auto;

  max-width: 155px;
  max-height: 58px;

  object-fit: contain;
}


/* SECONDARY CARRIERS */

.rc-carriers-more {
  max-width: 880px;

  margin: 42px auto 0;

  text-align: center;
}

.rc-carriers-more p {
  margin: 0 0 14px;

  font-size: 14px;
  line-height: 1.7;

  color: var(--rc-text);
}

.rc-carriers-link {
  display: inline-flex;

  align-items: center;

  gap: 8px;

  color: var(--rc-blue);

  font-size: 14px;
  font-weight: 700;

  text-decoration: none;
}

.rc-carriers-link span {
  transition: transform 0.2s ease;
}

.rc-carriers-link:hover span {
  transform: translateX(4px);
}


/* DISCLAIMER */

.rc-carriers-disclaimer {
  max-width: 760px;

  margin: 26px auto 0;

  text-align: center;

  font-size: 12px;
  line-height: 1.6;

  color: #6f8190;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-carriers-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    max-width: 700px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-carriers-section {
    padding: 60px 0;
  }

  .rc-carriers-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 12px;
  }

  .rc-carrier-logo {
    min-height: 95px;

    padding: 18px 14px;
  }

  .rc-carrier-logo img {
    max-width: 120px;
    max-height: 44px;
  }

}

/* Individual carrier logo adjustments */

.rc-carrier-floridablue img {
  max-width: 230px !important;
  max-height: 90px !important;
  transform: scale(1.55);
}

.rc-carrier-united img {
  max-width: 230px !important;
  max-height: 90px !important;
  transform: scale(1.55);
}

/* =================================================
   TESTIMONIALS
================================================= */

.rc-testimonials-section {
  padding: 96px 0;
  background: #f5faff;
}

.rc-testimonials-heading {
  max-width: 720px;
  margin: 0 auto 52px;
  text-align: center;
}

.rc-testimonials-heading > p:last-child {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}


/* GRID */

.rc-testimonials-grid {
  display: grid;

  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 24px;

  max-width: 1120px;

  margin: 0 auto;
}


/* CARD */

.rc-testimonial-card {
  display: flex;
  flex-direction: column;

  min-height: 310px;

  padding: 32px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 22px;

  box-shadow:
    0 12px 35px rgba(7, 59, 103, 0.06);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.rc-testimonial-card:hover {
  transform: translateY(-5px);

  box-shadow:
    0 20px 45px rgba(7, 59, 103, 0.11);
}


/* STARS + QUOTE */

.rc-testimonial-top {
  display: flex;

  align-items: flex-start;
  justify-content: space-between;

  margin-bottom: 22px;
}

.rc-stars {
  color: #f5a623;

  font-size: 18px;

  letter-spacing: 2px;
}

.rc-quote-mark {
  height: 40px;

  color: #d8ecfb;

  font-family: Georgia, serif;

  font-size: 64px;
  line-height: 0.8;
}


/* TESTIMONIAL */

.rc-testimonial-text {
  margin: 0 0 30px;

  color: var(--rc-text);

  font-size: 16px;
  line-height: 1.75;
}


/* PERSON */

.rc-testimonial-person {
  display: flex;

  align-items: center;

  gap: 13px;

  margin-top: auto;

  padding-top: 22px;

  border-top: 1px solid #edf2f6;
}

.rc-testimonial-avatar {
  flex: 0 0 44px;

  width: 44px;
  height: 44px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-family: Poppins, Arial, sans-serif;

  font-size: 15px;
  font-weight: 700;
}

.rc-testimonial-person strong {
  display: block;

  margin-bottom: 2px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;
  font-weight: 600;
}

.rc-testimonial-person span {
  display: block;

  color: #748493;

  font-size: 12px;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-testimonials-grid {
    grid-template-columns: 1fr;

    max-width: 650px;
  }

  .rc-testimonial-card {
    min-height: 0;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-testimonials-section {
    padding: 60px 0;
  }

  .rc-testimonial-card {
    padding: 26px;
  }

}

/* =================================================
   FINAL CTA
================================================= */

.rc-final-cta {
  padding: 90px 0;
  background: #ffffff;
}

.rc-final-cta-box {
  position: relative;

  max-width: 1180px;
  margin: 0 auto;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 60px;

  padding: 64px 68px;

  overflow: hidden;

  background:
    linear-gradient(
      135deg,
      #073b67 0%,
      #07548f 100%
    );

  border-radius: 28px;

  box-shadow:
    0 22px 55px rgba(7, 59, 103, 0.18);
}


/* SUBTLE DECORATION */

.rc-final-cta-box::after {
  content: "";

  position: absolute;

  width: 320px;
  height: 320px;

  right: -130px;
  top: -160px;

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.06);

  pointer-events: none;
}


/* TEXT */

.rc-final-cta-content {
  position: relative;
  z-index: 1;

  max-width: 650px;
}

.rc-final-cta-eyebrow {
  margin: 0 0 15px;

  color: #8ecbff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 2px;
}

.rc-final-cta-content h2 {
  margin: 0 0 18px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(30px, 3vw, 42px);
  line-height: 1.15;

  letter-spacing: -0.6px;
}

.rc-final-cta-content > p:last-child {
  max-width: 590px;

  margin: 0;

  color: rgba(255, 255, 255, 0.82);

  font-size: 16px;
  line-height: 1.7;
}


/* BUTTONS */

.rc-final-cta-actions {
  position: relative;
  z-index: 1;

  flex: 0 0 auto;

  display: flex;
  flex-direction: column;

  gap: 12px;

  min-width: 230px;
}

.rc-final-primary,
.rc-final-whatsapp {
  min-height: 52px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 9px;

  padding: 14px 22px;

  border-radius: 11px;

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;
  font-weight: 600;

  text-decoration: none;

  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.rc-final-primary {
  background: var(--rc-red);

  color: #ffffff;
}

.rc-final-primary:hover {
  transform: translateY(-2px);

  background: #d92734;

  color: #ffffff;
}

.rc-final-whatsapp {
  background: #ffffff;

  color: var(--rc-navy);
}

.rc-final-whatsapp:hover {
  transform: translateY(-2px);

  background: #f4f9fd;

  color: var(--rc-navy);
}

.rc-final-whatsapp svg {
  width: 19px;
  height: 19px;

  fill: #25d366;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-final-cta-box {
    flex-direction: column;

    align-items: flex-start;

    padding: 54px;
  }

  .rc-final-cta-actions {
    width: 100%;

    flex-direction: row;
  }

  .rc-final-primary,
  .rc-final-whatsapp {
    flex: 1;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-final-cta {
    padding: 60px 0;
  }

  .rc-final-cta-box {
    padding: 38px 26px;

    border-radius: 22px;

    gap: 34px;
  }

  .rc-final-cta-actions {
    flex-direction: column;
  }

  .rc-final-primary,
  .rc-final-whatsapp {
    width: 100%;
  }

}

/* =================================================
   WHY REALCOVER
================================================= */

.rc-why-section {
  padding: 105px 0;

  background: var(--rc-navy);

  overflow: hidden;
}

.rc-why-grid {
  display: grid;

  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);

  gap: 90px;

  align-items: center;

  max-width: 1180px;

  margin: 0 auto;
}


/* LEFT */

.rc-why-intro .rc-eyebrow {
  margin-bottom: 18px;

  color: #78c2ff;
}

.rc-why-intro h2 {
  max-width: 540px;

  margin: 0 0 24px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(32px, 3.4vw, 46px);

  line-height: 1.15;

  letter-spacing: -0.8px;
}

.rc-why-intro h2 span {
  display: block;

  color: #7fc7ff;
}

.rc-why-description {
  max-width: 540px;

  margin: 0 0 30px;

  color: rgba(255, 255, 255, 0.76);

  font-size: 16px;

  line-height: 1.75;
}


/* LINK */

.rc-why-link {
  display: inline-flex;

  align-items: center;

  gap: 9px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;

  font-weight: 600;

  text-decoration: none;
}

.rc-why-link span {
  color: #7fc7ff;

  font-size: 19px;

  transition: transform 0.2s ease;
}

.rc-why-link:hover {
  color: #ffffff;
}

.rc-why-link:hover span {
  transform: translateX(5px);
}


/* RIGHT SIDE */

.rc-why-reasons {
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.rc-why-item {
  display: grid;

  grid-template-columns: 58px 1fr;

  gap: 22px;

  align-items: start;

  padding: 26px 0;

  border-bottom: 1px solid rgba(255, 255, 255, 0.16);

  transition: padding-left 0.25s ease;
}

.rc-why-item:hover {
  padding-left: 8px;
}


/* NUMBERS */

.rc-why-number {
  color: #70bdfb;

  font-family: Poppins, Arial, sans-serif;

  font-size: 13px;

  font-weight: 700;

  letter-spacing: 1px;
}


/* TEXT */

.rc-why-item h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 19px;

  line-height: 1.3;
}

.rc-why-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.68);

  font-size: 14px;

  line-height: 1.65;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-why-grid {
    grid-template-columns: 1fr;

    gap: 55px;

    max-width: 720px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-why-section {
    padding: 70px 0;
  }

  .rc-why-grid {
    gap: 45px;
  }

  .rc-why-item {
    grid-template-columns: 42px 1fr;

    gap: 14px;

    padding: 22px 0;
  }

  .rc-why-item:hover {
    padding-left: 0;
  }

}

/* =================================================
   PREMIUM FOOTER
================================================= */

.rc-footer {
  background: #052f53;

  color: rgba(255, 255, 255, 0.72);
}

.rc-footer-grid {
  display: grid;

  grid-template-columns:
    minmax(260px, 1.5fr)
    minmax(130px, 0.7fr)
    minmax(170px, 0.9fr)
    minmax(220px, 1fr);

  gap: 60px;

  padding: 75px 0 65px;
}


/* BRAND */

.rc-footer-brand {
  max-width: 330px;
}

.rc-footer-logo {
  display: inline-block;

  margin-bottom: 24px;
}

.rc-footer-logo img {
  display: block;

  width: 190px;
  height: auto;
}

.rc-footer-brand > p {
  margin: 0 0 22px;

  font-size: 14px;
  line-height: 1.75;

  color: rgba(255, 255, 255, 0.68);
}

.rc-footer-language {
  display: inline-flex;

  align-items: center;

  padding: 8px 12px;

  border: 1px solid rgba(255, 255, 255, 0.14);

  border-radius: 8px;

  color: rgba(255, 255, 255, 0.8);

  font-size: 12px;
  font-weight: 600;
}


/* COLUMNS */

.rc-footer-column h3 {
  margin: 4px 0 22px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 15px;
  font-weight: 600;
}

.rc-footer-column nav {
  display: flex;

  flex-direction: column;

  align-items: flex-start;

  gap: 13px;
}

.rc-footer-column a {
  color: rgba(255, 255, 255, 0.68);

  font-size: 14px;

  text-decoration: none;

  transition:
    color 0.2s ease,
    transform 0.2s ease;
}

.rc-footer-column a:hover {
  color: #ffffff;
}


/* CONTACT */

.rc-footer-contact > p {
  max-width: 240px;

  margin: 0 0 18px;

  color: rgba(255, 255, 255, 0.68);

  font-size: 14px;
  line-height: 1.65;
}

.rc-footer-contact > a {
  display: block;

  width: fit-content;

  margin-bottom: 10px;

  color: #ffffff;

  font-weight: 600;
}

.rc-footer-contact > a:hover {
  color: #8ecbff;
}

.rc-footer-service {
  display: block;

  max-width: 230px;

  margin-top: 17px;

  color: rgba(255, 255, 255, 0.52);

  font-size: 12px;
  line-height: 1.5;
}


/* BOTTOM BAR */

.rc-footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.11);
}

.rc-footer-bottom-inner {
  min-height: 72px;

  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 30px;
}

.rc-footer-bottom p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48);

  font-size: 12px;
}

.rc-footer-legal {
  display: flex;

  align-items: center;

  gap: 24px;
}

.rc-footer-legal a {
  color: rgba(255, 255, 255, 0.55);

  font-size: 12px;

  text-decoration: none;
}

.rc-footer-legal a:hover {
  color: #ffffff;
}


/* TABLET */

@media (max-width: 1024px) {

  .rc-footer-grid {
    grid-template-columns: 1.4fr 1fr 1fr;

    gap: 45px;
  }

  .rc-footer-contact {
    grid-column: 1 / -1;
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .rc-footer-grid {
    grid-template-columns: 1fr;

    gap: 38px;

    padding: 60px 0 45px;
  }

  .rc-footer-brand {
    max-width: 100%;
  }

  .rc-footer-contact {
    grid-column: auto;
  }

  .rc-footer-bottom-inner {
    min-height: 0;

    padding-top: 25px;
    padding-bottom: 25px;

    flex-direction: column;

    align-items: flex-start;

    gap: 14px;
  }

  .rc-footer-legal {
    flex-wrap: wrap;

    gap: 10px 20px;
  }

}

/* =================================================
   HEALTH INSURANCE PAGE
================================================= */

.rc-inner-hero {
  padding: 95px 0 90px;
  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-inner-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);
  align-items: center;
  gap: 80px;
}

.rc-inner-hero-copy h1 {
  max-width: 720px;

  margin: 0 0 24px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(40px, 5vw, 62px);
  line-height: 1.08;

  letter-spacing: -1.5px;
}

.rc-inner-hero-description {
  max-width: 620px;

  margin: 0 0 32px;

  color: var(--rc-text);

  font-size: 18px;
  line-height: 1.7;
}

.rc-inner-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}


/* HERO PANEL */

.rc-inner-hero-panel {
  padding: 14px 34px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 26px;

  box-shadow:
    0 22px 55px rgba(7, 59, 103, .10);
}

.rc-inner-highlight {
  display: grid;

  grid-template-columns: 45px 1fr;

  gap: 18px;

  padding: 26px 0;

  border-bottom: 1px solid #e8eff5;
}

.rc-inner-highlight:last-child {
  border-bottom: 0;
}

.rc-inner-highlight-number {
  color: var(--rc-blue);

  font-family: Poppins, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.rc-inner-highlight strong {
  display: block;

  margin-bottom: 6px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;
  font-size: 17px;
}

.rc-inner-highlight p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;
  line-height: 1.6;
}


/* GENERAL */

.rc-health-section {
  padding: 96px 0;
}


/* WHO */

.rc-health-who {
  background: #ffffff;
}

.rc-health-simple-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 32px;

  max-width: 1100px;

  margin: 0 auto;
}

.rc-health-simple-item {
  padding-top: 24px;

  border-top: 2px solid var(--rc-border);
}

.rc-health-simple-item > span {
  display: block;

  margin-bottom: 22px;

  color: var(--rc-blue);

  font-size: 12px;
  font-weight: 700;
}

.rc-health-simple-item h3 {
  margin: 0 0 10px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 20px;
}

.rc-health-simple-item p {
  margin: 0;

  color: var(--rc-text);

  font-size: 15px;
  line-height: 1.65;
}


/* COMPARE */

.rc-health-compare {
  background: #f6faff;
}

.rc-health-split {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 90px;

  align-items: center;
}

.rc-health-split-copy h2 {
  max-width: 500px;

  margin: 0 0 22px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(32px, 4vw, 46px);
  line-height: 1.15;
}

.rc-health-split-copy > p:last-child {
  max-width: 540px;

  margin: 0;

  color: var(--rc-text);

  line-height: 1.75;
}

.rc-health-checklist {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 14px;
}

.rc-health-checklist > div {
  display: flex;

  align-items: center;

  gap: 12px;

  padding: 18px 20px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 12px;
}

.rc-health-checklist span {
  flex: 0 0 27px;

  width: 27px;
  height: 27px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-size: 12px;
  font-weight: 700;
}

.rc-health-checklist p {
  margin: 0;

  color: var(--rc-navy);

  font-size: 14px;
  font-weight: 600;
}


/* SAVINGS */

.rc-health-savings {
  background: #ffffff;
}

.rc-health-savings-box {
  max-width: 1120px;

  margin: 0 auto;

  display: grid;

  grid-template-columns: 1.3fr .7fr;

  gap: 70px;

  align-items: center;

  padding: 60px;

  background: var(--rc-navy);

  border-radius: 26px;
}

.rc-health-savings-box h2 {
  max-width: 650px;

  margin: 0 0 20px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(30px, 3vw, 42px);
  line-height: 1.18;
}

.rc-health-savings-box > div:first-child > p:last-child {
  max-width: 660px;

  margin: 0;

  color: rgba(255,255,255,.75);

  line-height: 1.75;
}

.rc-health-savings-box .rc-eyebrow {
  color: #82c9ff;
}

.rc-health-savings-note {
  padding: 28px;

  background: rgba(255,255,255,.08);

  border: 1px solid rgba(255,255,255,.14);

  border-radius: 18px;
}

.rc-health-savings-note strong {
  display: block;

  margin-bottom: 10px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 17px;
}

.rc-health-savings-note p {
  margin: 0 0 18px;

  color: rgba(255,255,255,.72);

  font-size: 14px;
  line-height: 1.65;
}

.rc-health-savings-note a {
  color: #ffffff;

  font-size: 14px;
  font-weight: 700;

  text-decoration: none;
}


/* PROCESS */

.rc-health-process {
  background: #f7fbfe;
}

.rc-health-process-grid {
  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 26px;

  max-width: 1140px;

  margin: 0 auto;
}

.rc-health-process-grid > div {
  padding: 30px 26px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 18px;
}

.rc-health-process-grid span {
  display: block;

  margin-bottom: 24px;

  color: var(--rc-blue);

  font-size: 12px;
  font-weight: 700;
}

.rc-health-process-grid h3 {
  margin: 0 0 10px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-health-process-grid p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;
  line-height: 1.65;
}


/* FAQ */

.rc-health-faq {
  background: #ffffff;
}

.rc-health-faq-grid {
  display: grid;

  grid-template-columns: .7fr 1.3fr;

  gap: 90px;

  align-items: start;
}

.rc-health-faq-grid h2 {
  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(32px, 3.5vw, 44px);
  line-height: 1.15;
}

.rc-health-faq-list {
  border-top: 1px solid var(--rc-border);
}

.rc-health-faq-list details {
  border-bottom: 1px solid var(--rc-border);
}

.rc-health-faq-list summary {
  cursor: pointer;

  padding: 24px 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 16px;
  font-weight: 600;
}

.rc-health-faq-list details p {
  max-width: 700px;

  margin: -5px 0 24px;

  color: var(--rc-text);

  font-size: 14px;
  line-height: 1.7;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-inner-hero-grid,
  .rc-health-split,
  .rc-health-savings-box,
  .rc-health-faq-grid {
    grid-template-columns: 1fr;
  }

  .rc-inner-hero-grid,
  .rc-health-split,
  .rc-health-faq-grid {
    gap: 50px;
  }

  .rc-health-simple-grid,
  .rc-health-process-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-inner-hero {
    padding: 65px 0;
  }

  .rc-inner-hero-grid {
    gap: 40px;
  }

  .rc-inner-hero-copy h1 {
    font-size: 38px;
  }

  .rc-inner-hero-actions {
    flex-direction: column;
  }

  .rc-inner-hero-actions .rc-btn {
    width: 100%;
  }

  .rc-inner-hero-panel {
    padding: 8px 24px;
  }

  .rc-health-section {
    padding: 65px 0;
  }

  .rc-health-simple-grid,
  .rc-health-checklist,
  .rc-health-process-grid {
    grid-template-columns: 1fr;
  }

  .rc-health-savings-box {
    padding: 36px 26px;

    gap: 35px;
  }

}

/* =================================================
   HEALTH PAGE - PREMIUM VISUAL REFINEMENTS
================================================= */


/* 1. HERO - MORE BALANCED RIGHT PANEL */

.rc-inner-hero-grid {
  grid-template-columns:
    minmax(0, 1fr)
    minmax(420px, .88fr) !important;

  gap: 72px !important;
}

.rc-inner-hero-panel {
  width: 100%;

  padding: 18px 38px !important;

  border-radius: 24px !important;

  box-shadow:
    0 20px 55px rgba(7, 59, 103, 0.11) !important;
}

.rc-inner-highlight {
  grid-template-columns: 42px 1fr !important;

  gap: 18px !important;

  padding: 29px 0 !important;
}

.rc-inner-highlight-number {
  padding-top: 3px;

  color: var(--rc-blue);

  font-size: 11px;
  letter-spacing: 1px;
}

.rc-inner-highlight strong {
  font-size: 16px !important;
}


/* =================================================
   2. WHO NEEDS HEALTH INSURANCE
================================================= */

.rc-health-simple-grid {
  gap: 22px !important;
}

.rc-health-simple-item {
  position: relative;

  min-height: 205px;

  padding: 30px 28px !important;

  background: #ffffff;

  border: 1px solid var(--rc-border) !important;

  border-radius: 18px;

  box-shadow:
    0 10px 30px rgba(7, 59, 103, 0.045);

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}

.rc-health-simple-item:hover {
  transform: translateY(-4px);

  border-color: rgba(8, 117, 209, .25) !important;

  box-shadow:
    0 17px 38px rgba(7, 59, 103, .08);
}

.rc-health-simple-item > span {
  display: block;

  margin-bottom: 32px !important;

  color: var(--rc-blue);

  font-family: Poppins, Arial, sans-serif;

  font-size: 12px !important;
  font-weight: 700;

  letter-spacing: 1px;
}

.rc-health-simple-item h3 {
  margin-bottom: 9px !important;

  font-size: 18px !important;
}

.rc-health-simple-item p {
  max-width: 270px;

  color: #607284 !important;

  font-size: 14px !important;

  line-height: 1.65 !important;
}


/* =================================================
   3. WHAT WE COMPARE
================================================= */

.rc-health-checklist {
  gap: 12px !important;
}

.rc-health-checklist > div {
  min-height: 64px;

  padding: 16px 18px !important;

  border-radius: 12px !important;

  box-shadow:
    0 5px 16px rgba(7, 59, 103, .035);
}

.rc-health-checklist span {
  flex: 0 0 25px !important;

  width: 25px !important;
  height: 25px !important;

  font-size: 11px !important;
}

.rc-health-checklist p {
  font-size: 13px !important;
}


/* =================================================
   TABLET
================================================= */

@media (max-width: 900px) {

  .rc-inner-hero-grid {
    grid-template-columns: 1fr !important;

    gap: 45px !important;
  }

  .rc-inner-hero-panel {
    max-width: 650px;
  }

}


/* =================================================
   MOBILE
================================================= */

@media (max-width: 600px) {

  .rc-inner-hero-panel {
    padding: 8px 24px !important;
  }

  .rc-inner-highlight {
    padding: 23px 0 !important;
  }

  .rc-health-simple-item {
    min-height: 0;

    padding: 26px !important;
  }

  .rc-health-simple-item > span {
    margin-bottom: 22px !important;
  }

}

/* =================================================
   LIFE INSURANCE PAGE
================================================= */

.rc-life-section {
  padding: 96px 0;
}


/* HERO */

.rc-life-hero {
  padding: 100px 0;

  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-life-hero-grid {
  display: grid;

  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);

  gap: 80px;

  align-items: center;
}

.rc-life-hero-copy h1 {
  max-width: 720px;

  margin: 0 0 24px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(42px, 5vw, 64px);

  line-height: 1.08;

  letter-spacing: -1.6px;
}

.rc-life-hero-description {
  max-width: 620px;

  margin: 0 0 32px;

  color: var(--rc-text);

  font-size: 18px;

  line-height: 1.7;
}

.rc-life-hero-actions {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}


/* HERO CARD */

.rc-life-hero-card {
  padding: 42px;

  background: var(--rc-navy);

  border-radius: 26px;

  box-shadow:
    0 25px 60px rgba(7, 59, 103, .18);
}

.rc-life-hero-label {
  margin-bottom: 18px;

  color: #7fc7ff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 1.8px;
}

.rc-life-hero-card h2 {
  margin: 0 0 30px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 27px;

  line-height: 1.3;
}

.rc-life-hero-list {
  border-top: 1px solid rgba(255,255,255,.15);
}

.rc-life-hero-list > div {
  display: flex;

  gap: 12px;

  align-items: flex-start;

  padding: 18px 0;

  border-bottom: 1px solid rgba(255,255,255,.15);
}

.rc-life-hero-list span {
  color: #7fc7ff;

  font-weight: 700;
}

.rc-life-hero-list p {
  margin: 0;

  color: rgba(255,255,255,.78);

  font-size: 14px;

  line-height: 1.5;
}


/* WHY */

.rc-life-why {
  background: #ffffff;
}

.rc-life-split {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 90px;

  align-items: start;

  max-width: 1120px;

  margin: 0 auto;
}

.rc-life-split h2 {
  margin: 0;

  max-width: 500px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 48px);

  line-height: 1.15;
}

.rc-life-split > div:last-child > p {
  max-width: 580px;

  color: var(--rc-text);

  line-height: 1.75;
}

.rc-life-lead {
  margin-top: 0;

  color: var(--rc-navy) !important;

  font-size: 20px;

  font-weight: 500;
}


/* PROTECT */

.rc-life-protect {
  background: #f6faff;
}

.rc-life-protect-grid {
  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 22px;

  max-width: 1140px;

  margin: 0 auto;
}

.rc-life-protect-grid article {
  padding: 30px 26px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 18px;
}

.rc-life-protect-grid span {
  display: block;

  margin-bottom: 25px;

  color: var(--rc-blue);

  font-size: 12px;

  font-weight: 700;
}

.rc-life-protect-grid h3 {
  margin: 0 0 10px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-life-protect-grid p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.65;
}


/* OPTIONS */

.rc-life-options {
  background: #ffffff;
}

.rc-life-options-heading {
  max-width: 720px;

  margin: 0 auto 48px;

  text-align: center;
}

.rc-life-options-heading h2 {
  margin: 0 0 18px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 46px);

  line-height: 1.16;
}

.rc-life-options-heading > p:last-child {
  color: var(--rc-text);

  line-height: 1.7;
}

.rc-life-options-grid {
  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 24px;

  max-width: 950px;

  margin: 0 auto;
}

.rc-life-option {
  min-height: 260px;

  padding: 38px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 22px;

  box-shadow:
    0 12px 35px rgba(7, 59, 103, .055);
}

.rc-life-option-number {
  display: block;

  margin-bottom: 30px;

  color: var(--rc-blue);

  font-size: 12px;

  font-weight: 700;
}

.rc-life-option h3 {
  margin: 0 0 12px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 22px;
}

.rc-life-option p {
  margin: 0;

  color: var(--rc-text);

  line-height: 1.7;
}

.rc-life-options-note {
  max-width: 800px;

  margin: 28px auto 0;

  text-align: center;

  color: #748493;

  font-size: 12px;

  line-height: 1.6;
}


/* AMOUNT */

.rc-life-amount {
  background: #f6faff;
}

.rc-life-amount-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 90px;

  align-items: center;
}

.rc-life-amount-grid h2 {
  max-width: 520px;

  margin: 0 0 20px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 46px);

  line-height: 1.15;
}

.rc-life-amount-grid > div:first-child > p:last-child {
  max-width: 560px;

  color: var(--rc-text);

  line-height: 1.7;
}

.rc-life-amount-list {
  display: grid;

  gap: 12px;
}

.rc-life-amount-list > div {
  display: flex;

  gap: 13px;

  align-items: center;

  padding: 18px 20px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 12px;
}

.rc-life-amount-list span {
  display: flex;

  flex: 0 0 27px;

  width: 27px;

  height: 27px;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-life-amount-list p {
  margin: 0;

  color: var(--rc-navy);

  font-size: 14px;

  font-weight: 600;
}


/* SUPPORT */

.rc-life-support {
  background: #ffffff;
}

.rc-life-support-box {
  max-width: 1120px;

  margin: 0 auto;

  display: grid;

  grid-template-columns: 1.15fr .85fr;

  gap: 65px;

  padding: 60px;

  background: var(--rc-navy);

  border-radius: 26px;
}

.rc-life-support-copy h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(30px, 3vw, 42px);

  line-height: 1.18;
}

.rc-life-support-copy > p:last-child {
  margin: 0;

  color: rgba(255,255,255,.74);

  line-height: 1.75;
}

.rc-life-support-copy .rc-eyebrow {
  color: #7fc7ff;
}

.rc-life-support-steps {
  border-top: 1px solid rgba(255,255,255,.15);
}

.rc-life-support-steps > div {
  display: grid;

  grid-template-columns: 42px 1fr;

  gap: 14px;

  padding: 18px 0;

  border-bottom: 1px solid rgba(255,255,255,.15);
}

.rc-life-support-steps span {
  color: #7fc7ff;

  font-size: 11px;

  font-weight: 700;
}

.rc-life-support-steps strong {
  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;
}


/* FAQ */

.rc-life-faq {
  background: #f7fbfe;
}

.rc-life-faq-grid {
  display: grid;

  grid-template-columns: .7fr 1.3fr;

  gap: 90px;

  align-items: start;
}

.rc-life-faq-grid h2 {
  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(32px, 3.5vw, 44px);

  line-height: 1.15;
}

.rc-life-faq-list {
  border-top: 1px solid var(--rc-border);
}

.rc-life-faq-list details {
  border-bottom: 1px solid var(--rc-border);
}

.rc-life-faq-list summary {
  cursor: pointer;

  padding: 24px 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 16px;

  font-weight: 600;
}

.rc-life-faq-list details p {
  max-width: 700px;

  margin: -5px 0 24px;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-life-hero-grid,
  .rc-life-split,
  .rc-life-amount-grid,
  .rc-life-support-box,
  .rc-life-faq-grid {
    grid-template-columns: 1fr;
  }

  .rc-life-hero-grid,
  .rc-life-split,
  .rc-life-amount-grid,
  .rc-life-faq-grid {
    gap: 50px;
  }

  .rc-life-protect-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-life-hero {
    padding: 65px 0;
  }

  .rc-life-section {
    padding: 65px 0;
  }

  .rc-life-hero-copy h1 {
    font-size: 38px;
  }

  .rc-life-hero-actions {
    flex-direction: column;
  }

  .rc-life-hero-actions .rc-btn {
    width: 100%;
  }

  .rc-life-hero-card {
    padding: 30px 26px;
  }

  .rc-life-protect-grid,
  .rc-life-options-grid {
    grid-template-columns: 1fr;
  }

  .rc-life-option {
    min-height: 0;

    padding: 30px 26px;
  }

  .rc-life-support-box {
    padding: 38px 26px;

    gap: 40px;
  }

}

/* =================================================
   LIFE PAGE - VISUAL REFINEMENTS
================================================= */

.rc-life-split {
  grid-template-columns: .95fr 1.05fr !important;
  gap: 60px !important;
}

.rc-life-split > div:last-child {
  max-width: 620px;
}

.rc-life-options-grid {
  gap: 28px !important;
}

.rc-life-option {
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}

.rc-life-option:hover {
  transform: translateY(-5px);

  border-color: rgba(8,117,209,.25);

  box-shadow:
    0 18px 42px rgba(7,59,103,.09);
}

.rc-life-amount-grid {
  grid-template-columns: .95fr 1.05fr !important;
  gap: 60px !important;
}

.rc-life-amount-list {
  gap: 10px !important;
}

.rc-life-amount-list > div {
  padding: 16px 18px !important;
}

@media (max-width: 900px) {

  .rc-life-split,
  .rc-life-amount-grid {
    grid-template-columns: 1fr !important;
    gap: 45px !important;
  }

}

/* =================================================
   DENTAL & VISION PAGE
================================================= */

.rc-dv-section {
  padding: 92px 0;
}


/* HERO */

.rc-dv-hero {
  padding: 95px 0;

  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-dv-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(390px, .92fr);

  gap: 75px;

  align-items: center;
}

.rc-dv-hero-copy h1 {
  max-width: 720px;

  margin: 0 0 24px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(42px, 5vw, 62px);

  line-height: 1.08;

  letter-spacing: -1.5px;
}

.rc-dv-hero-description {
  max-width: 620px;

  margin: 0 0 32px;

  color: var(--rc-text);

  font-size: 18px;

  line-height: 1.7;
}

.rc-dv-hero-actions {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}


/* HERO PANEL */

.rc-dv-hero-panel {
  padding: 14px 36px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 25px;

  box-shadow:
    0 22px 55px rgba(7,59,103,.10);
}

.rc-dv-hero-item {
  display: grid;

  grid-template-columns: 42px 1fr;

  gap: 18px;

  padding: 27px 0;

  border-bottom: 1px solid #e7eef4;
}

.rc-dv-hero-item:last-child {
  border-bottom: 0;
}

.rc-dv-hero-number {
  padding-top: 3px;

  color: var(--rc-blue);

  font-family: Poppins, Arial, sans-serif;

  font-size: 11px;

  font-weight: 700;
}

.rc-dv-hero-item strong {
  display: block;

  margin-bottom: 6px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 16px;
}

.rc-dv-hero-item p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.6;
}


/* COVERAGE */

.rc-dv-coverage {
  background: #ffffff;
}

.rc-dv-coverage-grid {
  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 26px;

  max-width: 1000px;

  margin: 0 auto;
}

.rc-dv-coverage-card {
  padding: 40px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 22px;

  box-shadow:
    0 12px 35px rgba(7,59,103,.055);
}

.rc-dv-label {
  display: inline-block;

  margin-bottom: 17px;

  color: var(--rc-blue);

  font-family: Poppins, Arial, sans-serif;

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 1.6px;
}

.rc-dv-coverage-card h3 {
  margin: 0 0 13px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 26px;
}

.rc-dv-coverage-top > p {
  margin: 0 0 27px;

  color: var(--rc-text);

  line-height: 1.7;
}

.rc-dv-list {
  border-top: 1px solid #e8eff5;
}

.rc-dv-list > div {
  display: flex;

  gap: 12px;

  align-items: center;

  padding: 15px 0;

  border-bottom: 1px solid #e8eff5;
}

.rc-dv-list span {
  display: flex;

  flex: 0 0 25px;

  width: 25px;

  height: 25px;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-size: 10px;

  font-weight: 700;
}

.rc-dv-list p {
  margin: 0;

  color: var(--rc-navy);

  font-size: 14px;

  font-weight: 600;
}

.rc-dv-disclaimer {
  max-width: 780px;

  margin: 26px auto 0;

  text-align: center;

  color: #748493;

  font-size: 12px;

  line-height: 1.6;
}


/* WHO */

.rc-dv-who {
  background: #f6faff;
}

.rc-dv-who-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 80px;

  align-items: center;
}

.rc-dv-who-grid h2 {
  max-width: 500px;

  margin: 0 0 20px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px,4vw,46px);

  line-height: 1.15;
}

.rc-dv-who-grid > div:first-child > p:last-child {
  max-width: 540px;

  margin: 0;

  color: var(--rc-text);

  line-height: 1.75;
}

.rc-dv-who-list {
  border-top: 1px solid var(--rc-border);
}

.rc-dv-who-list > div {
  display: grid;

  grid-template-columns: 45px 1fr;

  gap: 15px;

  padding: 20px 0;

  border-bottom: 1px solid var(--rc-border);
}

.rc-dv-who-list span {
  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-dv-who-list p {
  margin: 0;

  color: var(--rc-navy);

  font-size: 15px;

  font-weight: 600;
}


/* HELP */

.rc-dv-help {
  background: #ffffff;
}

.rc-dv-help-box {
  max-width: 1100px;

  margin: 0 auto;

  display: grid;

  grid-template-columns: 1.15fr .85fr;

  gap: 65px;

  padding: 58px;

  background: var(--rc-navy);

  border-radius: 26px;
}

.rc-dv-help-box .rc-eyebrow {
  color: #7fc7ff;
}

.rc-dv-help-box h2 {
  margin: 0 0 18px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(30px,3vw,42px);

  line-height: 1.18;
}

.rc-dv-help-box > div:first-child > p:last-child {
  margin: 0;

  color: rgba(255,255,255,.74);

  line-height: 1.75;
}

.rc-dv-help-steps {
  border-top: 1px solid rgba(255,255,255,.15);
}

.rc-dv-help-steps > div {
  display: grid;

  grid-template-columns: 42px 1fr;

  gap: 14px;

  padding: 18px 0;

  border-bottom: 1px solid rgba(255,255,255,.15);
}

.rc-dv-help-steps span {
  color: #7fc7ff;

  font-size: 11px;

  font-weight: 700;
}

.rc-dv-help-steps strong {
  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;
}


/* FAQ */

.rc-dv-faq {
  background: #f7fbfe;
}

.rc-dv-faq-grid {
  display: grid;

  grid-template-columns: .7fr 1.3fr;

  gap: 85px;

  align-items: start;
}

.rc-dv-faq-grid h2 {
  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(32px,3.5vw,44px);

  line-height: 1.15;
}

.rc-dv-faq-list {
  border-top: 1px solid var(--rc-border);
}

.rc-dv-faq-list details {
  border-bottom: 1px solid var(--rc-border);
}

.rc-dv-faq-list summary {
  cursor: pointer;

  padding: 24px 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 16px;

  font-weight: 600;
}

.rc-dv-faq-list details p {
  max-width: 700px;

  margin: -5px 0 24px;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-dv-hero-grid,
  .rc-dv-who-grid,
  .rc-dv-help-box,
  .rc-dv-faq-grid {
    grid-template-columns: 1fr;
  }

  .rc-dv-hero-grid,
  .rc-dv-who-grid,
  .rc-dv-faq-grid {
    gap: 48px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-dv-hero {
    padding: 65px 0;
  }

  .rc-dv-section {
    padding: 65px 0;
  }

  .rc-dv-hero-copy h1 {
    font-size: 38px;
  }

  .rc-dv-hero-actions {
    flex-direction: column;
  }

  .rc-dv-hero-actions .rc-btn {
    width: 100%;
  }

  .rc-dv-coverage-grid {
    grid-template-columns: 1fr;
  }

  .rc-dv-coverage-card {
    padding: 30px 26px;
  }

  .rc-dv-help-box {
    padding: 38px 26px;

    gap: 38px;
  }

}

/* =================================================
   ACCIDENT INSURANCE PAGE
================================================= */

.rc-acc-section {
  padding: 92px 0;
}


/* HERO */

.rc-acc-hero {
  padding: 95px 0;

  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-acc-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(390px, .92fr);

  gap: 75px;

  align-items: center;
}

.rc-acc-hero-copy h1 {
  max-width: 730px;

  margin: 0 0 24px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(42px, 5vw, 62px);

  line-height: 1.08;

  letter-spacing: -1.5px;
}

.rc-acc-hero-description {
  max-width: 630px;

  margin: 0 0 32px;

  color: var(--rc-text);

  font-size: 18px;

  line-height: 1.7;
}

.rc-acc-hero-actions {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}


/* HERO PANEL */

.rc-acc-hero-panel {
  padding: 38px;

  background: var(--rc-navy);

  border-radius: 25px;

  box-shadow:
    0 22px 55px rgba(7,59,103,.16);
}

.rc-acc-panel-label {
  margin: 0 0 15px;

  color: #7fc7ff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 1.6px;
}

.rc-acc-hero-panel h2 {
  margin: 0 0 25px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 27px;

  line-height: 1.25;
}

.rc-acc-panel-list {
  border-top: 1px solid rgba(255,255,255,.15);
}

.rc-acc-panel-list > div {
  display: grid;

  grid-template-columns: 40px 1fr;

  gap: 14px;

  padding: 18px 0;

  border-bottom: 1px solid rgba(255,255,255,.15);
}

.rc-acc-panel-list span {
  color: #7fc7ff;

  font-size: 11px;

  font-weight: 700;
}

.rc-acc-panel-list p {
  margin: 0;

  color: rgba(255,255,255,.78);

  font-size: 14px;

  line-height: 1.55;
}


/* INTRO */

.rc-acc-intro {
  background: #ffffff;
}

.rc-acc-intro-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 70px;

  max-width: 1120px;

  margin: 0 auto;
}

.rc-acc-intro-grid h2 {
  max-width: 500px;

  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 47px);

  line-height: 1.15;
}

.rc-acc-intro-grid > div:last-child > p {
  max-width: 590px;

  color: var(--rc-text);

  line-height: 1.75;
}

.rc-acc-lead {
  margin-top: 0;

  color: var(--rc-navy) !important;

  font-size: 19px;

  font-weight: 500;
}

.rc-acc-important {
  max-width: 590px;

  margin-top: 26px;

  padding: 18px 20px;

  background: var(--rc-light-blue);

  border-left: 3px solid var(--rc-blue);

  border-radius: 0 10px 10px 0;

  color: var(--rc-text);

  font-size: 13px;

  line-height: 1.6;
}

.rc-acc-important strong {
  color: var(--rc-navy);
}


/* BENEFITS */

.rc-acc-benefits {
  background: #f6faff;
}

.rc-acc-benefits-grid {
  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 22px;

  max-width: 1140px;

  margin: 0 auto;
}

.rc-acc-benefits-grid article {
  padding: 30px 26px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 18px;

  transition:
    transform .25s ease,
    box-shadow .25s ease;
}

.rc-acc-benefits-grid article:hover {
  transform: translateY(-4px);

  box-shadow:
    0 15px 35px rgba(7,59,103,.07);
}

.rc-acc-benefits-grid span {
  display: block;

  margin-bottom: 25px;

  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-acc-benefits-grid h3 {
  margin: 0 0 10px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-acc-benefits-grid p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.65;
}


/* COMPARISON */

.rc-acc-compare {
  background: #ffffff;
}

.rc-acc-compare-heading {
  max-width: 730px;

  margin: 0 auto 45px;

  text-align: center;
}

.rc-acc-compare-heading h2 {
  margin: 0 0 16px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 46px);

  line-height: 1.15;
}

.rc-acc-compare-heading > p:last-child {
  margin: 0;

  color: var(--rc-text);
}

.rc-acc-compare-grid {
  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 24px;

  max-width: 950px;

  margin: 0 auto;
}

.rc-acc-compare-grid article {
  padding: 38px;

  border: 1px solid var(--rc-border);

  border-radius: 20px;
}

.rc-acc-compare-highlight {
  background: #f5faff;
}

.rc-acc-type {
  display: block;

  margin-bottom: 22px;

  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 1.4px;
}

.rc-acc-compare-grid h3 {
  margin: 0 0 12px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 21px;
}

.rc-acc-compare-grid p {
  margin: 0;

  color: var(--rc-text);

  line-height: 1.7;
}


/* WHO */

.rc-acc-who {
  background: #f6faff;
}

.rc-acc-who-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 80px;

  align-items: center;
}

.rc-acc-who-grid h2 {
  margin: 0 0 20px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px,4vw,46px);

  line-height: 1.15;
}

.rc-acc-who-grid > div:first-child > p:last-child {
  max-width: 540px;

  margin: 0;

  color: var(--rc-text);

  line-height: 1.7;
}

.rc-acc-who-list {
  border-top: 1px solid var(--rc-border);
}

.rc-acc-who-list > div {
  display: grid;

  grid-template-columns: 45px 1fr;

  gap: 15px;

  padding: 20px 0;

  border-bottom: 1px solid var(--rc-border);
}

.rc-acc-who-list span {
  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-acc-who-list p {
  margin: 0;

  color: var(--rc-navy);

  font-size: 15px;

  font-weight: 600;
}


/* HELP */

.rc-acc-help {
  background: #ffffff;
}

.rc-acc-help-box {
  max-width: 1100px;

  margin: 0 auto;

  display: grid;

  grid-template-columns: 1.15fr .85fr;

  gap: 65px;

  padding: 58px;

  background: var(--rc-navy);

  border-radius: 26px;
}

.rc-acc-help-box .rc-eyebrow {
  color: #7fc7ff;
}

.rc-acc-help-box h2 {
  margin: 0 0 18px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(30px,3vw,42px);

  line-height: 1.18;
}

.rc-acc-help-box > div:first-child > p:last-child {
  margin: 0;

  color: rgba(255,255,255,.74);

  line-height: 1.75;
}

.rc-acc-help-steps {
  border-top: 1px solid rgba(255,255,255,.15);
}

.rc-acc-help-steps > div {
  display: grid;

  grid-template-columns: 42px 1fr;

  gap: 14px;

  padding: 18px 0;

  border-bottom: 1px solid rgba(255,255,255,.15);
}

.rc-acc-help-steps span {
  color: #7fc7ff;

  font-size: 11px;

  font-weight: 700;
}

.rc-acc-help-steps strong {
  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;
}


/* FAQ */

.rc-acc-faq {
  background: #f7fbfe;
}

.rc-acc-faq-grid {
  display: grid;

  grid-template-columns: .7fr 1.3fr;

  gap: 85px;

  align-items: start;
}

.rc-acc-faq-grid h2 {
  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(32px,3.5vw,44px);

  line-height: 1.15;
}

.rc-acc-faq-list {
  border-top: 1px solid var(--rc-border);
}

.rc-acc-faq-list details {
  border-bottom: 1px solid var(--rc-border);
}

.rc-acc-faq-list summary {
  cursor: pointer;

  padding: 24px 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 16px;

  font-weight: 600;
}

.rc-acc-faq-list details p {
  max-width: 700px;

  margin: -5px 0 24px;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-acc-hero-grid,
  .rc-acc-intro-grid,
  .rc-acc-who-grid,
  .rc-acc-help-box,
  .rc-acc-faq-grid {
    grid-template-columns: 1fr;
  }

  .rc-acc-hero-grid,
  .rc-acc-intro-grid,
  .rc-acc-who-grid,
  .rc-acc-faq-grid {
    gap: 48px;
  }

  .rc-acc-benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-acc-hero {
    padding: 65px 0;
  }

  .rc-acc-section {
    padding: 65px 0;
  }

  .rc-acc-hero-copy h1 {
    font-size: 38px;
  }

  .rc-acc-hero-actions {
    flex-direction: column;
  }

  .rc-acc-hero-actions .rc-btn {
    width: 100%;
  }

  .rc-acc-hero-panel {
    padding: 30px 26px;
  }

  .rc-acc-benefits-grid,
  .rc-acc-compare-grid {
    grid-template-columns: 1fr;
  }

  .rc-acc-compare-grid article {
    padding: 30px 26px;
  }

  .rc-acc-help-box {
    padding: 38px 26px;

    gap: 38px;
  }

}

/* Accident page refinements */

.rc-acc-benefits-grid article {
  padding: 34px 28px !important;
}

.rc-acc-benefits-grid h3 {
  font-size: 19px !important;
}

.rc-acc-benefits-grid p {
  line-height: 1.7 !important;
}

.rc-acc-compare-highlight {
  background: #eef7ff !important;
  border-color: rgba(8,117,209,.22) !important;
  box-shadow: 0 12px 30px rgba(7,59,103,.055);
}

/* =================================================
   ABOUT PAGE
================================================= */

.rc-about-section {
  padding: 96px 0;
}


/* HERO */

.rc-about-hero {
  padding: 100px 0;

  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-about-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(390px, .95fr);

  gap: 80px;

  align-items: center;
}

.rc-about-hero-copy h1 {
  max-width: 700px;

  margin: 0 0 24px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(46px, 5vw, 66px);

  line-height: 1.06;

  letter-spacing: -1.8px;
}

.rc-about-hero-description {
  max-width: 620px;

  margin: 0 0 32px;

  color: var(--rc-text);

  font-size: 18px;

  line-height: 1.75;
}

.rc-about-hero-actions {
  display: flex;

  flex-wrap: wrap;

  gap: 12px;
}


/* HERO PANEL */

.rc-about-hero-panel {
  padding: 46px;

  background: var(--rc-navy);

  border-radius: 26px;

  box-shadow:
    0 25px 60px rgba(7,59,103,.17);
}

.rc-about-panel-label {
  margin: 0 0 18px;

  color: #7fc7ff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 1.7px;
}

.rc-about-hero-panel h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 29px;

  line-height: 1.3;
}

.rc-about-hero-panel > p:last-child {
  margin: 0;

  color: rgba(255,255,255,.73);

  line-height: 1.7;
}


/* STORY */

.rc-about-story {
  background: #ffffff;
}

.rc-about-story-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 85px;

  max-width: 1120px;

  margin: 0 auto;
}

.rc-about-story-grid h2 {
  max-width: 500px;

  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 48px);

  line-height: 1.15;
}

.rc-about-story-copy p {
  max-width: 620px;

  color: var(--rc-text);

  line-height: 1.75;
}

.rc-about-story-copy p:first-child {
  margin-top: 0;
}

.rc-about-lead {
  color: var(--rc-navy) !important;

  font-size: 20px;

  font-weight: 500;
}


/* METHOD */

.rc-about-method {
  background: #f6faff;
}

.rc-about-method-grid {
  display: grid;

  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 24px;

  max-width: 1080px;

  margin: 0 auto;
}

.rc-about-method-grid article {
  padding: 34px 30px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 20px;

  box-shadow:
    0 10px 30px rgba(7,59,103,.045);
}

.rc-about-method-grid span {
  display: block;

  margin-bottom: 28px;

  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-about-method-grid h3 {
  margin: 0 0 10px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 20px;
}

.rc-about-method-grid p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* DIFFERENCE */

.rc-about-difference {
  background: var(--rc-navy);

  color: #ffffff;
}

.rc-about-difference-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 90px;

  align-items: center;
}

.rc-about-difference-copy .rc-eyebrow {
  color: #7fc7ff;
}

.rc-about-difference-copy h2 {
  max-width: 500px;

  margin: 0 0 20px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 48px);

  line-height: 1.15;
}

.rc-about-difference-copy > p:last-child {
  max-width: 540px;

  margin: 0;

  color: rgba(255,255,255,.72);

  line-height: 1.75;
}

.rc-about-values {
  border-top: 1px solid rgba(255,255,255,.15);
}

.rc-about-value {
  display: grid;

  grid-template-columns: 48px 1fr;

  gap: 18px;

  padding: 23px 0;

  border-bottom: 1px solid rgba(255,255,255,.15);
}

.rc-about-value > span {
  color: #7fc7ff;

  font-size: 11px;

  font-weight: 700;
}

.rc-about-value h3 {
  margin: 0 0 6px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-about-value p {
  margin: 0;

  color: rgba(255,255,255,.68);

  font-size: 14px;

  line-height: 1.6;
}


/* CLIENTS */

.rc-about-clients {
  background: #ffffff;
}

.rc-about-clients-grid {
  display: grid;

  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 28px;

  max-width: 1100px;

  margin: 0 auto;
}

.rc-about-clients-grid > div {
  padding-top: 28px;

  border-top: 2px solid var(--rc-border);
}

.rc-about-clients-grid span {
  display: block;

  margin-bottom: 24px;

  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-about-clients-grid h3 {
  margin: 0 0 10px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 19px;
}

.rc-about-clients-grid p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-about-hero-grid,
  .rc-about-story-grid,
  .rc-about-difference-grid {
    grid-template-columns: 1fr;

    gap: 50px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-about-hero {
    padding: 65px 0;
  }

  .rc-about-section {
    padding: 65px 0;
  }

  .rc-about-hero-copy h1 {
    font-size: 40px;
  }

  .rc-about-hero-actions {
    flex-direction: column;
  }

  .rc-about-hero-actions .rc-btn {
    width: 100%;
  }

  .rc-about-hero-panel {
    padding: 34px 26px;
  }

  .rc-about-method-grid,
  .rc-about-clients-grid {
    grid-template-columns: 1fr;
  }

}

/* =================================================
   CONTACT PAGE
================================================= */

.rc-contact-hero {
  padding: 90px 0;

  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-contact-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(320px, .85fr);

  gap: 80px;

  align-items: center;
}

.rc-contact-hero h1 {
  max-width: 720px;

  margin: 0 0 22px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(44px, 5vw, 64px);

  line-height: 1.08;

  letter-spacing: -1.5px;
}

.rc-contact-hero-description {
  max-width: 620px;

  margin: 0;

  color: var(--rc-text);

  font-size: 18px;

  line-height: 1.7;
}


/* HERO NOTE */

.rc-contact-hero-note {
  display: flex;

  gap: 17px;

  align-items: flex-start;

  padding: 30px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 20px;

  box-shadow:
    0 15px 40px rgba(7,59,103,.07);
}

.rc-contact-hero-note > span {
  flex: 0 0 38px;

  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-weight: 700;
}

.rc-contact-hero-note strong {
  display: block;

  margin-bottom: 6px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;
}

.rc-contact-hero-note p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.65;
}


/* CONTACT MAIN */

.rc-contact-section {
  padding: 100px 0;

  background: #ffffff;
}

.rc-contact-main-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.2fr)
    minmax(300px, .8fr);

  gap: 80px;

  align-items: start;
}

.rc-contact-form-wrap h2,
.rc-contact-info h2 {
  margin: 0 0 14px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(30px, 3vw, 42px);

  line-height: 1.2;
}

.rc-contact-form-intro,
.rc-contact-info-intro {
  margin: 0 0 34px;

  color: var(--rc-text);

  line-height: 1.7;
}


/* FORM */

.rc-contact-form {
  position: relative;
}

.rc-form-grid {
  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 20px;
}

.rc-form-full {
  grid-column: 1 / -1;
}

.rc-form-field {
  display: flex;

  flex-direction: column;

  gap: 8px;
}

.rc-form-field label {
  color: var(--rc-navy);

  font-size: 13px;

  font-weight: 600;
}

.rc-form-field input,
.rc-form-field select,
.rc-form-field textarea {
  width: 100%;

  padding: 14px 15px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 10px;

  color: var(--rc-text);

  font-family: Inter, Arial, sans-serif;

  font-size: 15px;

  outline: none;

  transition:
    border-color .2s ease,
    box-shadow .2s ease;
}

.rc-form-field input,
.rc-form-field select {
  min-height: 50px;
}

.rc-form-field textarea {
  resize: vertical;

  min-height: 125px;
}

.rc-form-field input:focus,
.rc-form-field select:focus,
.rc-form-field textarea:focus {
  border-color: var(--rc-blue);

  box-shadow:
    0 0 0 3px rgba(8,117,209,.08);
}


/* BUTTON */

.rc-form-submit {
  min-height: 52px;

  margin-top: 24px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  gap: 9px;

  padding: 14px 25px;

  border: 0;

  border-radius: 10px;

  background: var(--rc-red);

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;

  font-weight: 600;

  cursor: pointer;

  transition:
    transform .2s ease,
    background .2s ease;
}

.rc-form-submit:hover {
  transform: translateY(-2px);

  background: #d92734;
}

.rc-form-privacy {
  max-width: 650px;

  margin: 17px 0 0;

  color: #71818f;

  font-size: 11px;

  line-height: 1.6;
}


/* HONEYPOT */

.rc-form-honeypot {
  position: absolute !important;

  left: -9999px !important;

  width: 1px !important;

  height: 1px !important;

  overflow: hidden !important;
}


/* FORM MESSAGES */

.rc-form-message {
  margin-bottom: 28px;

  padding: 18px 20px;

  border-radius: 10px;
}

.rc-form-message strong {
  display: block;

  margin-bottom: 4px;
}

.rc-form-message p {
  margin: 0;

  font-size: 13px;

  line-height: 1.6;
}

.rc-form-success {
  background: #eefaf2;

  border: 1px solid #ccebd6;

  color: #205e35;
}

.rc-form-error {
  background: #fff3f3;

  border: 1px solid #f2cccc;

  color: #8b2830;
}


/* CONTACT INFO */

.rc-contact-info {
  padding: 38px;

  background: #f6faff;

  border-radius: 22px;
}

.rc-contact-method {
  padding: 20px 0;

  border-bottom: 1px solid var(--rc-border);
}

.rc-contact-method-label {
  display: block;

  margin-bottom: 7px;

  color: #758695;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 1.3px;
}

.rc-contact-method a {
  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 16px;

  font-weight: 600;

  text-decoration: none;
}

.rc-contact-method a:hover {
  color: var(--rc-blue);
}

.rc-contact-method p {
  margin: 0;

  color: var(--rc-navy);

  font-size: 14px;

  font-weight: 600;
}

.rc-contact-service-note {
  margin-top: 28px;

  padding: 20px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 13px;
}

.rc-contact-service-note strong {
  display: block;

  margin-bottom: 7px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 14px;
}

.rc-contact-service-note p {
  margin: 0;

  color: var(--rc-text);

  font-size: 12px;

  line-height: 1.65;
}


/* NEXT STEPS */

.rc-contact-next {
  padding: 90px 0;

  background: #f6faff;
}

.rc-contact-next-grid {
  display: grid;

  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 25px;

  max-width: 1050px;

  margin: 0 auto;
}

.rc-contact-next-grid > div {
  padding: 30px 28px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 18px;
}

.rc-contact-next-grid span {
  display: block;

  margin-bottom: 24px;

  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-contact-next-grid h3 {
  margin: 0 0 9px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-contact-next-grid p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.65;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-contact-hero-grid,
  .rc-contact-main-grid {
    grid-template-columns: 1fr;

    gap: 50px;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-contact-hero {
    padding: 65px 0;
  }

  .rc-contact-hero h1 {
    font-size: 39px;
  }

  .rc-contact-section,
  .rc-contact-next {
    padding: 65px 0;
  }

  .rc-form-grid,
  .rc-contact-next-grid {
    grid-template-columns: 1fr;
  }

  .rc-form-full {
    grid-column: auto;
  }

  .rc-contact-info {
    padding: 30px 24px;
  }

  .rc-form-submit {
    width: 100%;
  }

}

/* =================================================
   CONTACT PAGE — FINAL POLISH
================================================= */

/* Form proportions */

.rc-contact-main-grid {
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .72fr);
  gap: 90px;
}

.rc-contact-form-wrap {
  max-width: 680px;
}


/* Stronger submit CTA */

.rc-form-submit {
  background: var(--rc-red) !important;
  color: #ffffff !important;
  border: 1px solid var(--rc-red) !important;
  box-shadow: 0 8px 20px rgba(239, 51, 64, .16);
}

.rc-form-submit:hover {
  background: #d92734 !important;
  border-color: #d92734 !important;
  transform: translateY(-2px);
}


/* Contact information */

.rc-contact-info {
  padding: 42px 38px;
}

.rc-contact-service-note {
  margin-top: 30px;
  padding: 23px;
  border-left: 3px solid var(--rc-blue);
}


/* Next steps */

.rc-contact-next-grid > div {
  min-height: 160px;
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}

.rc-contact-next-grid > div:hover {
  transform: translateY(-4px);
  border-color: rgba(8,117,209,.22);
  box-shadow: 0 14px 34px rgba(7,59,103,.07);
}


/* Tablet */

@media (max-width: 900px) {

  .rc-contact-main-grid {
    grid-template-columns: 1fr;
    gap: 55px;
  }

  .rc-contact-form-wrap {
    max-width: none;
  }

}


/* Mobile */

@media (max-width: 600px) {

  .rc-contact-info {
    padding: 30px 24px;
  }

  .rc-contact-next-grid > div {
    min-height: 0;
  }

}

/* =================================================
   CARRIERS PAGE
================================================= */


/* HERO */

.rc-carriers-hero {
  padding: 95px 0;

  background:
    linear-gradient(
      135deg,
      #f7fbff 0%,
      #edf7ff 100%
    );
}

.rc-carriers-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.12fr)
    minmax(340px, .88fr);

  gap: 80px;

  align-items: center;
}

.rc-carriers-hero h1 {
  max-width: 760px;

  margin: 0 0 24px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(44px, 5vw, 64px);

  line-height: 1.08;

  letter-spacing: -1.5px;
}

.rc-carriers-hero-description {
  max-width: 650px;

  margin: 0;

  color: var(--rc-text);

  font-size: 18px;

  line-height: 1.75;
}


/* HERO PANEL */

.rc-carriers-hero-panel {
  display: grid;

  grid-template-columns: 48px 1fr;

  gap: 20px;

  padding: 38px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 22px;

  box-shadow:
    0 16px 45px rgba(7,59,103,.075);
}

.rc-carriers-panel-number {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  border-radius: 50%;

  background: var(--rc-light-blue);

  color: var(--rc-blue);

  font-family: Poppins, Arial, sans-serif;

  font-size: 24px;

  font-weight: 600;
}

.rc-carriers-hero-panel strong {
  display: block;

  margin-bottom: 9px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-carriers-hero-panel p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* INTRO */

.rc-carriers-intro {
  padding: 95px 0;

  background: #ffffff;
}

.rc-carriers-intro-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 85px;

  max-width: 1120px;

  margin: 0 auto;
}

.rc-carriers-intro h2 {
  max-width: 500px;

  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 47px);

  line-height: 1.16;
}

.rc-carriers-intro-grid > div:last-child p {
  max-width: 620px;

  color: var(--rc-text);

  line-height: 1.75;
}

.rc-carriers-intro-grid > div:last-child p:first-child {
  margin-top: 0;
}


/* LOGOS SECTION */

.rc-carriers-list-section {
  padding: 95px 0;

  background: #f6faff;
}

.rc-carriers-logo-grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 20px;

  max-width: 1100px;

  margin: 0 auto;
}

.rc-carrier-logo-card {
  min-height: 145px;

  display: flex;

  align-items: center;
  justify-content: center;

  padding: 28px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 17px;

  box-shadow:
    0 8px 24px rgba(7,59,103,.035);

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}

.rc-carrier-logo-card:hover {
  transform: translateY(-4px);

  border-color:
    rgba(8,117,209,.22);

  box-shadow:
    0 15px 34px rgba(7,59,103,.07);
}

.rc-carrier-logo-card img {
  display: block;

  max-width: 170px;
  max-height: 68px;

  width: auto;
  height: auto;

  object-fit: contain;
}

.rc-carrier-logo-small img {
  max-width: 190px;
  max-height: 78px;
}


/* OTHER CARRIERS */

.rc-carriers-other {
  max-width: 1000px;

  margin: 55px auto 0;

  padding-top: 32px;

  border-top:
    1px solid var(--rc-border);
}

.rc-carriers-other-label {
  margin: 0 0 20px;

  color: #718392;

  font-family: Poppins, Arial, sans-serif;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 1.5px;

  text-align: center;
}

.rc-carriers-other-list {
  display: flex;

  flex-wrap: wrap;

  justify-content: center;

  gap: 10px;
}

.rc-carriers-other-list span {
  padding: 9px 14px;

  background: #ffffff;

  border: 1px solid var(--rc-border);

  border-radius: 999px;

  color: var(--rc-navy);

  font-size: 12px;

  font-weight: 600;
}


/* WHY */

.rc-carriers-why {
  padding: 100px 0;

  background: #ffffff;
}

.rc-carriers-why-grid {
  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 90px;

  align-items: start;
}

.rc-carriers-why h2 {
  max-width: 530px;

  margin: 0;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: clamp(34px, 4vw, 47px);

  line-height: 1.15;
}

.rc-carriers-why-list {
  border-top:
    1px solid var(--rc-border);
}

.rc-carriers-why-list > div {
  display: grid;

  grid-template-columns: 48px 1fr;

  gap: 17px;

  padding: 25px 0;

  border-bottom:
    1px solid var(--rc-border);
}

.rc-carriers-why-list span {
  color: var(--rc-blue);

  font-size: 11px;

  font-weight: 700;
}

.rc-carriers-why-list h3 {
  margin: 0 0 7px;

  color: var(--rc-navy);

  font-family: Poppins, Arial, sans-serif;

  font-size: 18px;
}

.rc-carriers-why-list p {
  margin: 0;

  color: var(--rc-text);

  font-size: 14px;

  line-height: 1.7;
}


/* IMPORTANT NOTE */

.rc-carriers-note {
  padding: 0 0 100px;

  background: #ffffff;
}

.rc-carriers-note-box {
  display: grid;

  grid-template-columns: 110px 1fr;

  gap: 40px;

  max-width: 1080px;

  margin: 0 auto;

  padding: 40px;

  background: var(--rc-navy);

  border-radius: 22px;
}

.rc-carriers-note-box > span {
  color: #7fc7ff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 1.5px;
}

.rc-carriers-note-box h2 {
  margin: 0 0 12px;

  color: #ffffff;

  font-family: Poppins, Arial, sans-serif;

  font-size: 25px;
}

.rc-carriers-note-box p {
  max-width: 760px;

  margin: 0;

  color: rgba(255,255,255,.72);

  line-height: 1.75;
}


/* TABLET */

@media (max-width: 900px) {

  .rc-carriers-hero-grid,
  .rc-carriers-intro-grid,
  .rc-carriers-why-grid {
    grid-template-columns: 1fr;

    gap: 50px;
  }

  .rc-carriers-logo-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .rc-carriers-hero,
  .rc-carriers-intro,
  .rc-carriers-list-section,
  .rc-carriers-why {
    padding: 65px 0;
  }

  .rc-carriers-hero h1 {
    font-size: 39px;
  }

  .rc-carriers-hero-panel {
    grid-template-columns: 1fr;

    padding: 30px 25px;
  }

  .rc-carriers-logo-grid {
    grid-template-columns: 1fr;

    gap: 14px;
  }

  .rc-carrier-logo-card {
    min-height: 125px;
  }

  .rc-carriers-note {
    padding-bottom: 65px;
  }

  .rc-carriers-note-box {
    grid-template-columns: 1fr;

    gap: 18px;

    padding: 30px 25px;
  }

}

/* Carrier logo size corrections */

.rc-carrier-floridablue img {
  max-width: 235px !important;
  max-height: 95px !important;
  width: 100% !important;
}

.rc-carrier-united img {
  max-width: 240px !important;
  max-height: 100px !important;
  width: 100% !important;
}

.rc-carrier-floridablue,
.rc-carrier-united {
  padding-left: 16px;
  padding-right: 16px;
}

/* =================================================
   RESOURCES PAGE
================================================= */


/* HERO */

.rc-resources-hero {
  padding: 95px 0;
  background: linear-gradient(135deg, #f7fbff 0%, #edf7ff 100%);
}

.rc-resources-hero-grid {
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(340px,.88fr);
  gap: 80px;
  align-items: center;
}

.rc-resources-hero h1 {
  max-width: 760px;
  margin: 0 0 24px;
  color: var(--rc-navy);
  font-family: Poppins,Arial,sans-serif;
  font-size: clamp(44px,5vw,64px);
  line-height: 1.08;
  letter-spacing: -1.5px;
}

.rc-resources-hero-description {
  max-width: 650px;
  margin: 0;
  color: var(--rc-text);
  font-size: 18px;
  line-height: 1.75;
}

.rc-resources-hero-panel {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 20px;
  padding: 38px;
  background: #fff;
  border: 1px solid var(--rc-border);
  border-radius: 22px;
  box-shadow: 0 16px 45px rgba(7,59,103,.075);
}

.rc-resources-hero-panel > span {
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:var(--rc-light-blue);
  color:var(--rc-blue);
  font-family:Poppins,Arial,sans-serif;
  font-size:20px;
  font-weight:700;
}

.rc-resources-hero-panel strong {
  display:block;
  margin-bottom:9px;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:18px;
}

.rc-resources-hero-panel p {
  margin:0;
  color:var(--rc-text);
  font-size:14px;
  line-height:1.7;
}


/* RESOURCE CARDS */

.rc-resources-section {
  padding:100px 0;
  background:#fff;
}

.rc-resource-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  max-width:1120px;
  margin:0 auto;
}

.rc-resource-card {
  padding:32px 28px;
  background:#fff;
  border:1px solid var(--rc-border);
  border-radius:18px;
  box-shadow:0 8px 25px rgba(7,59,103,.04);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.rc-resource-card:hover {
  transform:translateY(-4px);
  border-color:rgba(8,117,209,.25);
  box-shadow:0 16px 38px rgba(7,59,103,.075);
}

.rc-resource-number {
  display:block;
  margin-bottom:27px;
  color:var(--rc-blue);
  font-size:11px;
  font-weight:700;
}

.rc-resource-category {
  margin:0 0 9px;
  color:#718392;
  font-size:10px;
  font-weight:700;
  letter-spacing:1.3px;
}

.rc-resource-card h3 {
  margin:0 0 13px;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:19px;
  line-height:1.35;
}

.rc-resource-card p:not(.rc-resource-category) {
  margin:0 0 22px;
  color:var(--rc-text);
  font-size:14px;
  line-height:1.7;
}

.rc-resource-card a {
  color:var(--rc-blue);
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}


/* RESOURCE DETAIL */

.rc-resource-detail {
  padding:100px 0;
}

.rc-resource-detail-light {
  background:#f6faff;
}

.rc-resource-detail-white {
  background:#fff;
}

.rc-resource-detail-grid,
.rc-resource-two-column {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:85px;
  align-items:start;
}

.rc-resource-detail h2 {
  max-width:570px;
  margin:0 0 18px;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:clamp(32px,4vw,46px);
  line-height:1.16;
}

.rc-resource-detail p {
  color:var(--rc-text);
  line-height:1.75;
}


/* DEFINITIONS */

.rc-resource-definition-list {
  border-top:1px solid var(--rc-border);
}

.rc-resource-definition-list > div,
.rc-resource-simple-list > div {
  display:grid;
  grid-template-columns:48px 1fr;
  gap:18px;
  padding:22px 0;
  border-bottom:1px solid var(--rc-border);
}

.rc-resource-definition-list span,
.rc-resource-simple-list span {
  color:var(--rc-blue);
  font-size:11px;
  font-weight:700;
}

.rc-resource-definition-list h3 {
  margin:0 0 7px;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:17px;
}

.rc-resource-definition-list p,
.rc-resource-simple-list p {
  margin:0;
  font-size:14px;
}


/* CALLOUT */

.rc-resource-callout {
  padding:34px;
  background:#f6faff;
  border:1px solid var(--rc-border);
  border-radius:18px;
}

.rc-resource-callout > span {
  display:block;
  margin-bottom:18px;
  color:var(--rc-blue);
  font-size:10px;
  font-weight:700;
  letter-spacing:1.3px;
}

.rc-resource-callout h3 {
  margin:0 0 12px;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:22px;
}


/* CHECK SECTION */

.rc-resource-detail-blue {
  background:var(--rc-navy);
}

.rc-resource-detail-blue .rc-eyebrow {
  color:#7fc7ff;
}

.rc-resource-detail-blue h2 {
  margin-left:auto;
  margin-right:auto;
  color:#fff;
}

.rc-resource-detail-blue .rc-section-heading > p:last-child {
  color:rgba(255,255,255,.72);
}

.rc-resource-check-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:1000px;
  margin:0 auto;
}

.rc-resource-check-grid > div {
  display:flex;
  align-items:center;
  gap:12px;
  padding:18px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
}

.rc-resource-check-grid span {
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 25px;
  width:25px;
  height:25px;
  background:rgba(255,255,255,.11);
  border-radius:50%;
  color:#7fc7ff;
  font-size:11px;
}

.rc-resource-check-grid p {
  margin:0;
  color:#fff;
  font-size:13px;
  font-weight:600;
}


/* LIFE */

.rc-resource-life {
  background:#f6faff;
}

.rc-resource-life-options {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.rc-resource-life-options > div {
  padding:28px;
  background:#fff;
  border:1px solid var(--rc-border);
  border-radius:17px;
}

.rc-resource-life-options span {
  display:block;
  margin-bottom:24px;
  color:var(--rc-blue);
  font-size:11px;
  font-weight:700;
}

.rc-resource-life-options h3 {
  margin:0 0 9px;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:18px;
}

.rc-resource-life-options p {
  margin:0;
  font-size:14px;
}


/* FAQ */

.rc-resource-faq {
  padding:100px 0;
  background:#fff;
}

.rc-resource-faq-list {
  max-width:900px;
  margin:0 auto;
  border-top:1px solid var(--rc-border);
}

.rc-resource-faq-list details {
  border-bottom:1px solid var(--rc-border);
}

.rc-resource-faq-list summary {
  position:relative;
  padding:24px 45px 24px 0;
  color:var(--rc-navy);
  font-family:Poppins,Arial,sans-serif;
  font-size:16px;
  font-weight:600;
  cursor:pointer;
  list-style:none;
}

.rc-resource-faq-list summary::-webkit-details-marker {
  display:none;
}

.rc-resource-faq-list summary::after {
  content:"+";
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  color:var(--rc-blue);
  font-size:22px;
}

.rc-resource-faq-list details[open] summary::after {
  content:"–";
}

.rc-resource-faq-list details p {
  max-width:760px;
  margin:0;
  padding:0 0 24px;
  color:var(--rc-text);
  font-size:14px;
  line-height:1.75;
}


/* TABLET */

@media(max-width:900px){

  .rc-resources-hero-grid,
  .rc-resource-detail-grid,
  .rc-resource-two-column {
    grid-template-columns:1fr;
    gap:50px;
  }

  .rc-resource-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rc-resource-check-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}


/* MOBILE */

@media(max-width:600px){

  .rc-resources-hero,
  .rc-resources-section,
  .rc-resource-detail,
  .rc-resource-faq {
    padding:65px 0;
  }

  .rc-resources-hero h1 {
    font-size:39px;
  }

  .rc-resources-hero-panel {
    grid-template-columns:1fr;
    padding:30px 25px;
  }

  .rc-resource-grid,
  .rc-resource-check-grid,
  .rc-resource-life-options {
    grid-template-columns:1fr;
  }

  .rc-resource-card {
    padding:27px 24px;
  }

}

/* =================================================
   RESOURCES PAGE — FINAL POLISH
================================================= */

/* Hero */

.rc-resources-hero-grid {
  grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr);
  gap: 90px;
}

.rc-resources-hero-panel {
  padding: 42px;
}


/* Resource cards */

.rc-resource-card {
  min-height: 245px;
  padding: 34px 30px;
}

.rc-resource-card h3 {
  font-size: 20px;
}

.rc-resource-card p:not(.rc-resource-category) {
  line-height: 1.72;
}


/* Definition list */

.rc-resource-definition-list > div {
  padding: 26px 0;
}

.rc-resource-definition-list h3 {
  font-size: 18px;
}


/* Marketplace callout */

.rc-resource-callout {
  padding: 38px;
  box-shadow: 0 10px 28px rgba(7,59,103,.05);
}


/* Life section */

.rc-resource-life-options > div {
  min-height: 180px;
  padding: 30px;
  box-shadow: 0 8px 24px rgba(7,59,103,.04);
}


/* Tablet */

@media(max-width:900px){

  .rc-resources-hero-grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }

}


/* Mobile */

@media(max-width:600px){

  .rc-resource-card {
    min-height: 0;
  }

  .rc-resources-hero-panel {
    padding: 30px 25px;
  }

}

/* =================================================
   FOOTER
================================================= */

.rc-footer {
  background: var(--rc-navy);
  color: #ffffff;
  padding: 72px 0 28px;
}

.rc-footer-grid {
  display: grid;
  grid-template-columns:
    minmax(0, 1.35fr)
    minmax(150px, .7fr)
    minmax(150px, .7fr)
    minmax(220px, 1fr);
  gap: 55px;
  align-items: start;
}


/* BRAND */

.rc-footer-brand {
  max-width: 340px;
}

.rc-footer-logo {
  display: inline-block;
  margin-bottom: 20px;
}

.rc-footer-logo img {
  display: block;
  width: 190px;
  height: auto;
}

.rc-footer-tagline {
  margin: 0 0 12px;
  color: #ffffff;
  font-family: Poppins, Arial, sans-serif;
  font-size: 18px;
  font-weight: 600;
}

.rc-footer-description {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: 13px;
  line-height: 1.75;
}


/* COLUMNS */

.rc-footer-column h3 {
  margin: 0 0 20px;
  color: #ffffff;
  font-family: Poppins, Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
}

.rc-footer-column nav {
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.rc-footer-column nav a {
  color: rgba(255,255,255,.68);
  font-size: 13px;
  text-decoration: none;
  transition: color .2s ease;
}

.rc-footer-column nav a:hover {
  color: #ffffff;
}


/* CONTACT */

.rc-footer-contact {
  min-width: 0;
}

.rc-footer-contact-item {
  margin-bottom: 20px;
}

.rc-footer-contact-item > span {
  display: block;
  margin-bottom: 5px;
  color: #7fc7ff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.25px;
}

.rc-footer-contact-item a {
  color: #ffffff;
  font-size: 13px;
  line-height: 1.5;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.rc-footer-contact-item a:hover {
  color: #a7d8ff;
}


/* SERVICE NOTE */

.rc-footer-service {
  margin-top: 50px;
  padding: 22px 0;
  border-top: 1px solid rgba(255,255,255,.12);
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.rc-footer-service p {
  max-width: 950px;
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: 11px;
  line-height: 1.7;
}


/* BOTTOM */

.rc-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  padding-top: 24px;
}

.rc-footer-bottom p {
  margin: 0;
  color: rgba(255,255,255,.48);
  font-size: 11px;
}

.rc-footer-legal {
  display: flex;
  flex-direction: row !important;
  gap: 20px !important;
}

.rc-footer-legal a {
  color: rgba(255,255,255,.56);
  font-size: 11px;
  text-decoration: none;
}

.rc-footer-legal a:hover {
  color: #ffffff;
}


/* TABLET */

@media(max-width:900px){

  .rc-footer-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 45px;
  }

}


/* MOBILE */

@media(max-width:600px){

  .rc-footer {
    padding: 55px 0 25px;
  }

  .rc-footer-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .rc-footer-brand {
    max-width: none;
  }

  .rc-footer-logo img {
    width: 170px;
  }

  .rc-footer-service {
    margin-top: 38px;
  }

  .rc-footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }

  .rc-footer-legal {
    flex-wrap: wrap;
  }

}

/* =================================================
   FOOTER — COMPACT VERSION
================================================= */

.rc-footer {
  padding: 48px 0 20px !important;
}

.rc-footer-grid {
  grid-template-columns:
    minmax(0, 1.25fr)
    minmax(130px, .65fr)
    minmax(130px, .65fr)
    minmax(210px, .9fr);

  gap: 42px !important;
}


/* Brand */

.rc-footer-brand {
  max-width: 300px;
}

.rc-footer-logo {
  margin-bottom: 14px;
}

.rc-footer-logo img {
  width: 160px;
}

.rc-footer-tagline {
  margin-bottom: 8px;
  font-size: 15px;
}

.rc-footer-description {
  font-size: 12px;
  line-height: 1.6;
}


/* Columns */

.rc-footer-column h3 {
  margin-bottom: 14px;
  font-size: 13px;
}

.rc-footer-column nav {
  gap: 8px;
}

.rc-footer-column nav a {
  font-size: 12px;
}


/* Contact */

.rc-footer-contact-item {
  margin-bottom: 14px;
}

.rc-footer-contact-item > span {
  margin-bottom: 3px;
}

.rc-footer-contact-item a {
  font-size: 12px;
}


/* Service note */

.rc-footer-service {
  margin-top: 30px !important;
  padding: 16px 0 !important;
}

.rc-footer-service p {
  max-width: 800px;
  font-size: 10px;
  line-height: 1.6;
}


/* Bottom */

.rc-footer-bottom {
  padding-top: 16px !important;
}

.rc-footer-bottom p,
.rc-footer-legal a {
  font-size: 10px;
}


/* Tablet */

@media(max-width:900px){

  .rc-footer-grid {
    grid-template-columns:
      repeat(2, minmax(0,1fr));

    gap: 35px !important;
  }

}


/* Mobile */

@media(max-width:600px){

  .rc-footer {
    padding: 42px 0 20px !important;
  }

  .rc-footer-grid {
    grid-template-columns: 1fr;
    gap: 30px !important;
  }

  .rc-footer-brand {
    max-width: none;
  }

  .rc-footer-service {
    margin-top: 28px !important;
  }

}

.rc-footer-service {
  margin-top: 24px !important;
  padding: 12px 0 !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
}

.rc-footer-service p {
  max-width: none !important;
  margin: 0 !important;
  font-size: 10px !important;
  line-height: 1.5 !important;
  white-space: normal;
}

@media(min-width:901px){

  .rc-footer-service p {
    white-space: nowrap;
  }

}

/* =================================================
   LEGAL PAGES
================================================= */

.rc-legal-hero {
  padding: 75px 0 65px;
  background: linear-gradient(
    135deg,
    #f7fbff 0%,
    #edf7ff 100%
  );
}

.rc-legal-hero h1 {
  margin: 0 0 12px;
  color: var(--rc-navy);
  font-family: Poppins, Arial, sans-serif;
  font-size: clamp(40px, 5vw, 58px);
  line-height: 1.1;
  letter-spacing: -1px;
}

.rc-legal-hero > .rc-container > p:last-child {
  margin: 0;
  color: #718392;
  font-size: 12px;
}


/* DOCUMENT */

.rc-legal-content {
  padding: 80px 0 95px;
  background: #ffffff;
}

.rc-legal-document {
  max-width: 850px;
  margin: 0 auto;
}

.rc-legal-intro {
  margin: 0 0 55px !important;
  padding-bottom: 35px;
  border-bottom: 1px solid var(--rc-border);
  color: var(--rc-text);
  font-size: 17px !important;
  line-height: 1.8 !important;
}

.rc-legal-document h2 {
  margin: 48px 0 16px;
  color: var(--rc-navy);
  font-family: Poppins, Arial, sans-serif;
  font-size: 23px;
  line-height: 1.3;
}

.rc-legal-document p {
  margin: 0 0 17px;
  color: #526779;
  font-size: 14px;
  line-height: 1.8;
}

.rc-legal-document ul {
  margin: 5px 0 24px;
  padding-left: 23px;
}

.rc-legal-document li {
  margin-bottom: 8px;
  color: #526779;
  font-size: 14px;
  line-height: 1.7;
}


/* CONTACT */

.rc-legal-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;

  margin-top: 22px;
  padding: 25px;

  background: #f6faff;
  border: 1px solid var(--rc-border);
  border-radius: 14px;
}

.rc-legal-contact strong {
  color: var(--rc-navy);
  font-family: Poppins, Arial, sans-serif;
}

.rc-legal-contact a {
  color: var(--rc-blue);
  font-size: 14px;
  text-decoration: none;
}


/* NOTICE */

.rc-legal-notice {
  margin-top: 50px;
  padding: 25px 28px;
  background: #f6faff;
  border-left: 3px solid var(--rc-blue);
  border-radius: 0 12px 12px 0;
}

.rc-legal-notice strong {
  display: block;
  margin-bottom: 7px;
  color: var(--rc-navy);
  font-family: Poppins, Arial, sans-serif;
  font-size: 13px;
}

.rc-legal-notice p {
  margin: 0;
  font-size: 12px;
}


/* MOBILE */

@media(max-width:600px) {

  .rc-legal-hero {
    padding: 60px 0 50px;
  }

  .rc-legal-content {
    padding: 60px 0 70px;
  }

  .rc-legal-intro {
    margin-bottom: 40px !important;
    font-size: 16px !important;
  }

  .rc-legal-document h2 {
    margin-top: 40px;
    font-size: 21px;
  }

}

/* =========================================================
   RESOURCE SEO LANDING — SEGURO MÉDICO SIN TRABAJO
========================================================= */

.rc-resource-landing {
  color: #24364B;
  background: #fff;
}

.rc-container {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.rc-rseo-hero {
  padding: 88px 0 82px;
  background:
    radial-gradient(circle at 85% 20%, rgba(8,117,209,.12), transparent 28%),
    linear-gradient(180deg, #F8FBFE 0%, #FFFFFF 100%);
}

.rc-rseo-hero-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 70px;
  align-items: center;
}

.rc-eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  font-family: Poppins, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  color: #0875D1;
}

.rc-eyebrow-light {
  color: #A9D6FA;
}

.rc-rseo-hero h1 {
  max-width: 760px;
  margin: 0 0 22px;
  font-family: Poppins, sans-serif;
  font-size: clamp(38px, 5vw, 62px);
  line-height: 1.07;
  letter-spacing: -.035em;
  color: #073B67;
}

.rc-rseo-lead {
  max-width: 700px;
  margin: 0;
  font-size: 19px;
  line-height: 1.75;
  color: #53687B;
}

.rc-rseo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
}

.rc-rseo-mini {
  margin-top: 18px;
  font-size: 13px;
  color: #6A7D8E;
}

.rc-rseo-hero-card {
  padding: 36px;
  border: 1px solid #DCE6EF;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 20px 55px rgba(7,59,103,.09);
}

.rc-rseo-card-label {
  display: block;
  margin-bottom: 20px;
  font-family: Poppins, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .11em;
  color: #EF3340;
}

.rc-rseo-checklist {
  list-style: none;
  padding: 0;
  margin: 0;
}

.rc-rseo-checklist li {
  position: relative;
  padding: 12px 0 12px 30px;
  border-bottom: 1px solid #EDF2F6;
  line-height: 1.55;
}

.rc-rseo-checklist li:last-child {
  border-bottom: 0;
}

.rc-rseo-checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 12px;
  color: #0875D1;
  font-weight: 700;
}

.rc-rseo-section {
  padding: 88px 0;
}

.rc-rseo-soft {
  background: #F5FAFF;
}

.rc-rseo-narrow {
  max-width: 820px;
}

.rc-rseo-narrow h2,
.rc-rseo-heading h2,
.rc-rseo-two-col h2,
.rc-rseo-inline-cta h2,
.rc-rseo-dark h2,
.rc-rseo-final h2 {
  margin: 0 0 20px;
  font-family: Poppins, sans-serif;
  font-size: clamp(30px, 4vw, 44px);
  line-height: 1.15;
  letter-spacing: -.025em;
  color: #073B67;
}

.rc-rseo-narrow p,
.rc-rseo-two-col p,
.rc-rseo-heading p {
  font-size: 17px;
  line-height: 1.8;
  color: #53687B;
}

.rc-rseo-heading {
  max-width: 760px;
  margin-bottom: 42px;
}

.rc-rseo-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.rc-rseo-option,
.rc-rseo-scenario,
.rc-rseo-step {
  padding: 30px;
  background: #fff;
  border: 1px solid #DCE6EF;
  border-radius: 18px;
}

.rc-rseo-number {
  display: block;
  margin-bottom: 24px;
  font-family: Poppins, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #EF3340;
}

.rc-rseo-option h3,
.rc-rseo-scenario h3,
.rc-rseo-step h3,
.rc-rseo-info-box h3 {
  margin: 0 0 12px;
  font-family: Poppins, sans-serif;
  font-size: 20px;
  color: #073B67;
}

.rc-rseo-option p,
.rc-rseo-scenario p,
.rc-rseo-step p {
  margin: 0;
  line-height: 1.7;
  color: #617486;
}

.rc-rseo-scenarios {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.rc-rseo-dark {
  padding: 76px 0;
  background: #073B67;
  color: #fff;
}

.rc-rseo-dark-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 70px;
  align-items: start;
}

.rc-rseo-dark h2 {
  color: #fff;
}

.rc-rseo-dark p {
  margin-top: 0;
  font-size: 17px;
  line-height: 1.8;
  color: rgba(255,255,255,.82);
}

.rc-rseo-dark-note {
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.15);
  font-size: 14px !important;
}

.rc-rseo-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  align-items: center;
}

.rc-rseo-info-box {
  padding: 34px;
  border: 1px solid #DCE6EF;
  border-radius: 20px;
  background: #F8FBFE;
}

.rc-rseo-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.rc-rseo-step > span {
  display: flex;
  width: 40px;
  height: 40px;
  margin-bottom: 22px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #EAF5FF;
  font-family: Poppins, sans-serif;
  font-weight: 700;
  color: #0875D1;
}

.rc-rseo-inline-cta {
  display: flex;
  gap: 40px;
  align-items: center;
  justify-content: space-between;
  padding: 38px 42px;
  border: 1px solid #DCE6EF;
  border-radius: 20px;
}

.rc-rseo-inline-cta > div {
  max-width: 760px;
}

.rc-rseo-inline-cta p {
  margin-bottom: 0;
  line-height: 1.7;
  color: #617486;
}

.rc-text-link {
  flex: 0 0 auto;
  font-family: Poppins, sans-serif;
  font-weight: 600;
  color: #0875D1;
  text-decoration: none;
}

.rc-rseo-faq details {
  padding: 22px 0;
  border-bottom: 1px solid #DCE6EF;
}

.rc-rseo-faq summary {
  cursor: pointer;
  font-family: Poppins, sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #073B67;
}

.rc-rseo-faq details p {
  max-width: 720px;
  padding-top: 12px;
  line-height: 1.75;
  color: #617486;
}

.rc-rseo-final {
  padding: 84px 0;
  text-align: center;
  background: #0875D1;
  color: #fff;
}

.rc-rseo-final-inner {
  max-width: 820px;
}

.rc-rseo-final h2 {
  color: #fff;
}

.rc-rseo-final p {
  max-width: 650px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.7;
  color: rgba(255,255,255,.88);
}

.rc-rseo-actions-center {
  justify-content: center;
}

.rc-btn-light {
  background: #fff;
  color: #073B67;
}

.rc-btn-outline-light {
  border: 1px solid rgba(255,255,255,.65);
  color: #fff;
  background: transparent;
}

@media (max-width: 900px) {
  .rc-rseo-hero-grid,
  .rc-rseo-dark-grid,
  .rc-rseo-two-col {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .rc-rseo-grid-3 {
    grid-template-columns: 1fr;
  }

  .rc-rseo-steps {
    grid-template-columns: repeat(2, 1fr);
  }

  .rc-rseo-hero {
    padding: 72px 0 68px;
  }
}

@media (max-width: 640px) {
  .rc-container {
    width: min(100% - 30px, 1180px);
  }

  .rc-rseo-section {
    padding: 64px 0;
  }

  .rc-rseo-hero h1 {
    font-size: 38px;
  }

  .rc-rseo-lead {
    font-size: 17px;
  }

  .rc-rseo-scenarios,
  .rc-rseo-steps {
    grid-template-columns: 1fr;
  }

  .rc-rseo-inline-cta {
    display: block;
    padding: 30px 24px;
  }

  .rc-rseo-inline-cta .rc-text-link {
    display: inline-block;
    margin-top: 22px;
  }

  .rc-rseo-actions .rc-btn {
    width: 100%;
    text-align: center;
  }
}

.rc-text-link {
  flex: 0 0 auto;
  font-family: Poppins, sans-serif;
  font-weight: 600;
  color: #0875D1;
  text-decoration: none;
  padding: 12px 18px;
  border: 1px solid #DCE6EF;
  border-radius: 10px;
  background: #F5FAFF;
}

/* =========================================================
   REALCOVER SEO GUIDE - ADDITIONAL LAYOUT STYLES
   ========================================================= */


/* ---------- GENERAL GUIDE SECTIONS ---------- */

.rc-rseo-section {
  padding: 80px 0;
}

.rc-rseo-white {
  background: #ffffff;
}

.rc-rseo-light {
  background: #f5faff;
}

.rc-rseo-blue {
  background: #eaf5ff;
}


/* ---------- TWO COLUMN SECTIONS ---------- */

.rc-rseo-two-column {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 64px;
  align-items: center;
}


/* ---------- INFORMATION CARDS ---------- */

.rc-rseo-info-card {
  background: #ffffff;
  border: 1px solid #dce6ef;
  border-radius: 16px;
  padding: 32px;
  box-shadow: 0 12px 35px rgba(7, 59, 103, 0.06);
}

.rc-rseo-info-card h3 {
  margin: 8px 0 12px;
  font-family: Poppins, sans-serif;
  font-size: 22px;
  line-height: 1.3;
  color: #073b67;
}

.rc-rseo-info-card p {
  margin-bottom: 12px;
}

.rc-rseo-info-card small {
  display: block;
  margin-top: 16px;
  color: #64748b;
  line-height: 1.6;
}

.rc-rseo-card-label {
  margin: 0 0 8px;
  font-family: Poppins, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #ef3340;
}


/* ---------- FOUR STEPS ---------- */

.rc-rseo-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
  margin-top: 42px;
}

.rc-rseo-steps > div {
  background: #ffffff;
  border: 1px solid #dce6ef;
  border-radius: 14px;
  padding: 28px 24px;
  box-shadow: 0 8px 28px rgba(7, 59, 103, 0.05);
}

.rc-rseo-steps span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 20px;
  border-radius: 50%;
  background: #eaf5ff;
  color: #0875d1;
  font-family: Poppins, sans-serif;
  font-weight: 700;
}

.rc-rseo-steps h3 {
  margin: 0 0 12px;
  font-family: Poppins, sans-serif;
  font-size: 18px;
  line-height: 1.35;
  color: #073b67;
}

.rc-rseo-steps p {
  margin: 0;
  color: #526579;
  line-height: 1.7;
}


/* ---------- CHECK GRIDS ---------- */

.rc-rseo-check-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 38px;
}

.rc-rseo-check-grid > div {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 70px;
  padding: 18px 20px;
  background: #ffffff;
  border: 1px solid #dce6ef;
  border-radius: 12px;
}

.rc-rseo-check-grid span {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #eaf5ff;
  color: #0875d1;
  font-weight: 700;
}

.rc-rseo-check-grid p {
  margin: 0;
  font-weight: 600;
  color: #24364b;
}


/* Special Enrollment light-blue section */

.rc-rseo-blue .rc-rseo-check-grid > div {
  background: rgba(255, 255, 255, 0.85);
}


/* ---------- DARK FINANCIAL SECTION ---------- */

.rc-rseo-dark {
  background: #073b67;
  color: #ffffff;
}

.rc-rseo-dark h2,
.rc-rseo-dark h3,
.rc-rseo-dark p {
  color: #ffffff;
}

.rc-rseo-dark .rc-eyebrow {
  color: #ffffff;
  opacity: 0.8;
}

.rc-rseo-dark-card {
  background: rgba(255, 255, 255, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 16px;
  padding: 32px;
}

.rc-rseo-dark-card h3 {
  margin-top: 0;
  margin-bottom: 18px;
  font-family: Poppins, sans-serif;
  font-size: 20px;
}

.rc-rseo-dark-card ul {
  margin: 0;
  padding-left: 20px;
}

.rc-rseo-dark-card li {
  margin-bottom: 10px;
  line-height: 1.55;
}


/* ---------- RELATED GUIDE CTA ---------- */

.rc-rseo-inline-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 38px 42px;
  background: #ffffff;
  border: 1px solid #dce6ef;
  border-radius: 16px;
  box-shadow: 0 10px 32px rgba(7, 59, 103, 0.05);
}

.rc-rseo-inline-cta > div {
  max-width: 720px;
}

.rc-rseo-inline-cta h2 {
  margin-bottom: 10px;
}

.rc-text-link {
  flex: 0 0 auto;
  display: inline-block;
  font-family: Poppins, sans-serif;
  font-weight: 600;
  color: #0875d1;
  text-decoration: none;
  padding: 12px 18px;
  border: 1px solid #dce6ef;
  border-radius: 10px;
  background: #f5faff;
  transition: 0.2s ease;
}

.rc-text-link:hover {
  background: #eaf5ff;
  border-color: #0875d1;
}


/* ---------- DISCLAIMER ---------- */

.rc-rseo-disclaimer {
  padding: 0 0 48px;
  background: #ffffff;
}

.rc-rseo-disclaimer .rc-container {
  max-width: 1000px;
}

.rc-rseo-disclaimer p {
  margin: 0;
  padding: 20px 24px;
  background: #f4f6f8;
  border-left: 4px solid #0875d1;
  border-radius: 8px;
  color: #526579;
  font-size: 13px;
  line-height: 1.7;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

  .rc-rseo-section {
    padding: 60px 0;
  }

  .rc-rseo-two-column {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .rc-rseo-steps {
    grid-template-columns: repeat(2, 1fr);
  }

  .rc-rseo-check-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .rc-rseo-inline-cta {
    flex-direction: column;
    align-items: flex-start;
  }
}


@media (max-width: 600px) {

  .rc-rseo-section {
    padding: 48px 0;
  }

  .rc-rseo-steps {
    grid-template-columns: 1fr;
  }

  .rc-rseo-check-grid {
    grid-template-columns: 1fr;
  }

  .rc-rseo-info-card,
  .rc-rseo-dark-card {
    padding: 24px;
  }

  .rc-rseo-inline-cta {
    padding: 28px 24px;
  }

  .rc-rseo-inline-cta .rc-text-link {
    width: 100%;
    text-align: center;
  }
}

/* =========================================================
   REALCOVER MARKETPLACE GUIDE - FINAL POLISH
   ========================================================= */

/* Give hero text a little more room */
.rc-rseo-hero-grid {
  grid-template-columns: 1.25fr 0.75fr;
  gap: 56px;
}

.rc-rseo-hero h1 {
  max-width: 650px;
}


/* Slightly improve step cards */
.rc-rseo-steps {
  gap: 18px;
}

.rc-rseo-steps > div {
  padding: 26px 22px;
}

.rc-rseo-steps h3 {
  font-size: 17px;
}

.rc-rseo-steps p {
  font-size: 14px;
}


/* Stronger related-guide button */
.rc-rseo-inline-cta .rc-text-link {
  background: #0875d1;
  border-color: #0875d1;
  color: #ffffff;
}

.rc-rseo-inline-cta .rc-text-link:hover {
  background: #073b67;
  border-color: #073b67;
  color: #ffffff;
}


/* Keep mobile hero stacked correctly */
@media (max-width: 900px) {

  .rc-rseo-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

}