
/* Table */

.dt-container {
    border: 1px solid #ddd;
    background: #fff;
    padding: 10px;
    border-radius: 10px;
}
/* .dt-layout-row.dt-layout-table{
  margin-top: 10px;
  margin-bottom: 10px;
} */
.tablepress>:where(thead,tfoot)>tr>* {
    background-color: #e2f8ff !important;
    font-weight: 600 !important;
}


.tablepress>:where(tbody.row-striping)>:nth-child(even of :where(:not(.child,.dtrg-group)))+:where(.child)>*, .tablepress>:where(tbody.row-striping)>:nth-child(even of :where(:not(.child,.dtrg-group)))>* {
    background-color: #f8fdff !important;
}
.tablepress>:where(thead)+tbody>:where(:not(.child))>*, .tablepress>tbody>*~:where(:not(.child))>*, .tablepress>tfoot>:where(:first-child)>* {
    border-top: 1px solid #e2f8ff !important;
}
.dt-container .dt-paging .dt-paging-button.current {
    border: 1px solid #27bded !important;
    border-radius: 50% !important;
}
.dt-container .dt-paging .dt-paging-button:hover{
  background: #27bded !important;
  color: #fff !important;
   border-radius: 50% !important;
   border: 1px solid #27bded !important;
}
/* .dt-container .dt-paging .dt-paging-button.disabled, .dt-container .dt-paging .dt-paging-button.disabled:active {
    border: 1px solid #27bded !important;
    color: #fff !important;
    border-radius: 50% !important;
}
.dt-container .dt-paging .dt-paging-button.disabled:hover{
    background: #27bded !important;
  color: #fff !important;
} */
.aed-text-and-note-section .program_note_section{
  margin-bottom: 0;
}
.aed-section-box .content-list{
  margin-top: 30px;
}

/* ==========================================================
   Registration Page - Where Are You Starting Section
   ========================================================== */
.where-starting-section {
    position: relative;
    z-index: 1;
}
.information-and-faq-section .program_faq_heading h3 {
  margin-bottom: 0;
}
.registration-section-wrapper{
  padding: 80px 0;
}
.starting-card-buttons{
  border-radius: 20px;
  background: #FCFFDA;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: auto;
}
.starting-cards-grid {
    display: grid;
    gap: 40px;
    margin-top: 40px;
}
.starting-cards-grid.grid-count-1 {
    grid-template-columns: 1fr;
}
.starting-cards-grid.grid-count-2 {
    grid-template-columns: repeat(2, 1fr);
}
.starting-cards-grid.grid-count-3 {
    grid-template-columns: repeat(3, 1fr);
}
.starting-card-item {
    display: flex;
    flex-direction: column;
}
.starting-card {
    background: #ffffff;
    box-shadow: 6px 6px 0 0 #F9AC1B, 0 69px 69px 0 rgba(0, 0, 0, 0.09), 0 17px 38px 0 rgba(0, 0, 0, 0.10);
    border-radius: 20px;
    border: 1px solid #F9AC1B;
    padding: 30px;
    /* box-shadow: 0 4px 20px rgba(245, 166, 35, 0.15), 0 1px 6px rgba(0,0,0,0.05); */
    /* transition: transform 0.3s ease, box-shadow 0.3s ease; */
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.starting-card-buttons .btn-icon{
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background:  #D0DD28;
}
.starting-card-buttons .btn-icon svg{
  width: 12px;
}
.starting-card .card-main-title {

font-size: 26px;
font-style: normal;
font-weight: 800;
line-height: normal;
text-transform: uppercase;
    color: #2B3C73;
}
.starting-card-content {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.starting-card .card-sub-title {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
}
.starting-card .card-desc {
    color: #333;
    font-size: var(--body-medium);
    font-weight: 400;
    line-height: 26px; /* 144.444% */
}
.starting-card-buttons .starting-btn {
    /* background-color: #FCFDC5; 
    border-radius: 8px; */
    /* padding: 0 0 10px 0; */
    text-decoration: none;
    color: #212529;
    font-size: var(--body-medium);
}
.starting-btn{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
}
/* .starting-card-buttons .starting-btn:hover {
    background-color: #f2f4a7;
    color: #212529;
} */
.starting-btn .btn-text {
    font-weight: 500;
    flex: 1;
}
.starting-btn .btn-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}
/* --- End Registration Page --- */

.pdop_components {
  padding: 0%;
}
.document-box-card.financial-assistance-link{
  margin-top: 0;
}
.testimonials-section .data-section {
    width: 55%;
    margin: 0 auto;
    text-align: center;
}
.note-with-data .program_note_section{
  margin-bottom: 0;
}
.common-header-two-section{
  /* background: red; */
  padding-bottom: 0;
}
.only-button-section.section-pedding-box{
  padding-top: 0;
  margin-top: 0 !important;
}
.only-button-section .pdop-action-buttons-wrapper{
  margin-top: 0 !important;
  justify-content: center;
}
.committees-section.section-pedding-box{
  padding-top:0 ;
}
.seasonal-sponsorship .slider-wrapper-top{
     border-radius: 20px;
    border: 1px solid #ddd;
    padding: 20px;
    width: 80%;
    margin: 0 auto;
}
.sponsor-seasonal-event-now{
  padding-top: 0 !important;
}
.seasonal-sponsorship{
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}
/* .sponsorship-seasonal-events-links.document-box-card{
  margin-top: 0;
}  */
 .pdop_component_sidebar .pdop_feature_cards_grid{
    gap: 30px;
  }
.document-box-card {
  margin-top: 60px;
}
.terms-conditions-card .pdop_current_projects_subtitle ul li {
  margin-bottom: 15px;
}
.terms-conditions-card .pdop_heading_black {
  margin-bottom: 40px;
}

.mission-section .pdop_current_projects_subtitle ul {
  list-style: disc;
  list-style-position: outside;
  padding: 0;
  margin-left: 34px;
}
.mission-section .pdop_current_projects_subtitle ul li {
  padding-left: 0;
}
.pdop_current_projects_subtitle iframe {
  width: 100%;
  height: 100vh;
}
.mission-section .pdop_current_projects_subtitle ul li:before {
  display: none;
}

.pdop_value_scroll {
  padding: 0;
}

/* Chrome, Edge, Safari */
.site-main *::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

.site-main *::-webkit-scrollbar-track {
  background: #f1f1f1;
}

.site-main *::-webkit-scrollbar-thumb {
  /* background: #000; */
  border-radius: 10px;
}

.site-main *::-webkit-scrollbar-thumb:hover {
  background: #333;
}

.only-bullet-point ul {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 15px;
}

.note-and-button .content-link.link-pdf {
  margin-top: 0px;
  margin-bottom: 0;
}

.pact-note-with-bottom-button .program_note_section {
  margin-top: 0;
}

.note-and-button .content-link.link-pdf a {
  margin-top: 0px;
  margin-bottom: 0;
}

.only-img-box-sticky .awardsSwiper {
  position: sticky;
  top: 170px;
}

.only-img-box::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url("/wp-content/uploads/2026/04/tick_svg.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.only-bullet-point .pdop_current_projects_subtitle ul li {
  margin-bottom: 0;
  width: 24%;
}

.pdop_page_description a {
  color: #fff;
  text-decoration: underline;
}

.pdop_page_description a:hover {
  text-decoration: none;
}

.pdop_current_projects_subtitle ul {
  list-style: none;
  margin-top: 20px;
  margin-bottom: 20px;
  padding-left:0 ;
}

.pdop_current_projects_subtitle ul li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 6px;
}

.pdop_current_projects_subtitle ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 20px;
  height: 18px;
  background-image: url("/wp-content/uploads/2026/04/tick_svg.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.breadcrumbs-area-box {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}

/* .section-pedding-box.only-heading-banner {
  padding-top: 170px;
} */

.only-heading-banner-card .card-up-down {
  bottom: -71%;
}

.only-heading-banner-card .card-up-down .natural-main-heading {
  margin-bottom: 0;
}

/* data section */
.section-with-background-color .pdop_container .common-data-secion-box {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}

.common-data-secion-box {
  margin-bottom: 80px;
}

.no-margin{margin-bottom: 40px;}

.data-section {
  /* padding-bottom: 50px; */
  margin-bottom: 0;
}

.section-pedding-box {
  padding-bottom: 80px;
  padding-top: 80px;
}

.is_sidebar .section-pedding-box:not(.bg-color):first-child {
  padding-top: 0;
}
.is_sidebar {
  --container-padding: 0;
}
.is_sidebar .bg-color {
  --container-padding: 3vw;
}
/* .is_sidebar .section-pedding-box {
  padding-block: 3vw;
} */
.is_sidebar .section-pedding-box.bg-color {
  padding-block: 3vw;
  border-radius: 20px;
  margin-bottom: 50px;
}
/* .section-pedding-box + .section-pedding-box{margin-top: 50px;} */
/* .bg-color + .bg-color{margin-top: 0px;} */

.section-pedding-box .common-data-secion-box:last-of-type {
  margin-bottom: 0;
  position: relative;
}

.img-sticky-box .awardsSwiper {
  position: sticky;
  top: 200px;
}

.data-section-with-image {
  border-radius: 20px;
  overflow: hidden;
}

.data-section-with-image img {
  width: 100%;
  height: auto;
}

.data-section-right-padding-30 {
  padding-right: 30px;
}

.data-section-left-padding-30 {
  padding-left: 30px;
}

.pdop_heading_black {
  font-size: var(--h3-2-size);
  font-weight: var(--fw-extrabold);
  margin-bottom: 20px;
  color: var(--color-black);
  text-transform: uppercase;
  font-family: var(--font-family-figtree);
}

.pdop_current_projects_subtitle {
  font-size: var(--body-base);
  font-weight: var(--fw-regular);
  color: var(--color-black);
  font-family: var(--font-family-figtree);
}

.video-section .slider-wrapper-top{
  max-width: 550px;
  margin: 0 auto;
}

.pdop_current_projects_subtitle h2{font-size: var(--h3-2-size); font-weight: var(--fw-extrabold); margin-bottom: 20px;}
.pdop-zone-number {
  font-weight: var(--fw-bold);
  font-size: 22px;
  color: var(--color-primary);
  font-family: var(--font-family-figtree);
  border-right: 1px solid #b4b4b4;
  padding-right: 10px;
  margin-right: 10px;
  line-height: normal;
}

.pdop-zone-title {
  font-weight: var(--fw-bold);
  font-size: var(--body-base);
  color: var(--color-primary);
  font-family: var(--font-family-figtree);
  line-height: normal;
}

.three-col-section .item {
  flex: 1 1 0;
  min-width: 0;
}

.three-col-section .col-two {
  width: 330px;
  flex: 0 0 auto;
  max-width: 100%;
}

@media (max-width: 991.98px) {
  .three-col-section .col-two,
  .three-col-section .item {
    width: 100%;
    flex: 1 1 100%;
  }
}

@media (max-width: 767.98px) {
  /* .three-col-section .row {
        gap: 1.5rem;
    } */
}

.pdop-zone-title-section {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-top: 10px;
  margin-bottom: 10px;
}

.pdop-zones-section {
  border-bottom: 1px solid #e2e2e2;
  padding-bottom: 13px;
  margin-bottom: 13px;
}

.content-link.link-pdf {
  margin-top: 30px;
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.meeting-our-mission-faq .faq-section-spacing{
padding-block:0;
}
.meeting-our-mission-faq .program-faq-wrap{
  margin-bottom: 0;
}
.meeting-our-mission-faq iframe {
    border: 1px solid #ddd;
    padding: 10px;
    border-radius: 20px;
    height: 400px;
}
.common-pdop-icon-box-section {
  padding-bottom: 80px;
  padding-top: 80px;
}
.no-top-padding-icon {
  padding-top: 0px;
}
.icon-box-common-spacing {
  padding-bottom: 80px;
  padding-top: 70px;
  /* margin-top: 50px; */
  /* background-color: #f4f0ff; */
}

.data-section.data-section-right-padding-30 {
  margin-bottom: 0;
}

.data-section.data-section-left-padding-30 {
  margin-bottom: 0;
}

.section-pedding-box .common-data-secion-box:last-of-type .data-section {
  margin-bottom: 0;
}

/* ==========================================================================
   Video Slider and Lightbox Overlay Styles
   ========================================================================== */

/* Main link wrapper for video slides */
.video-slider-link {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 4px;
}

/* Smooth zoom transition for video thumbnails */
.video-slider-link img {
  transition: transform 0.4s ease;
}

.video-slider-link:hover img {
  transform: scale(1.05);
}

/* Premium play overlay button cubic-bezier pop effect */
.video-play-btn-overlay svg {
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.video-slider-link:hover .video-play-btn-overlay svg {
  transform: scale(1.15);
}

/* banner two for natural areas page */
.header-two-bg-image {
  background-image: url("/wp-content/uploads/2026/05/natural-areas.jpg");
  background-size: cover;
  background-position: center;
  border-radius: 0 0 20px 20px;
  height: 400px;
  background-repeat: no-repeat !important;
  /* position: relative; */
}

.natural-areas-card {
  border-radius: 20px;
  background: var(--color-primary);
  padding: 25px 50px;

  /* transform: translateY(60%); */
}

.card-up-down {
  /* position: absolute;
  top: auto;
  z-index: 1;
  bottom: -130px; */
    z-index: 1;
    margin-top: -140px;
    margin-bottom: 0;
}

.natural-main-heading {
  color: var(--color-white);
  text-align: center;
  font-family: var(--font-family-figtree);
  font-size: var(--h2-size);
  font-weight: var(--fw-extrabold);
  line-height: normal;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.natural-sub-heading {
  color: var(--color-white);
  font-family: var(--font-family-figtree);
  font-size: var(--h5-size);
  font-weight: var(--fw-semibold);
  margin-bottom: 10px;
}

.natural-intro-content {
  color: var(--color-gray-100);
  font-family: var(--font-family-figtree);
  font-size: var(--body-base);
  font-weight: var(--fw-regular);
}

.natural-intro-content.single-col {
  text-align: center;
  padding: 0;
}

.natural-intro-content p {
  color: var(--color-gray-100);
  font-family: var(--font-family-figtree);
  font-size: var(--body-base);
  font-weight: var(--fw-regular);
  margin-bottom: 0;
}

.natural-btn-box {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid #6272a6;
}

.pdop-zones-container .pdop-zones-section:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.pdop-zone-prairie-description p strong {
  margin-bottom: 6px;
  display: inline-block;
  width: 100%;
}

/* Background Color Classes */
.light-cream {
  background-color: #fbffee;
}

.light-lavender {
  background-color: #f4f0ff;
}

.select-color {
  background-color: #fff;
}

.no-url-link .pdop_btn::after {
  transform: rotate(90deg);
}

/* Decorative Flower Elements for Light Cream Theme */
.section-pedding-box.light-cream .common-data-secion-box {
  position: relative;
  overflow: clip;
  z-index: 0;
  /* Creates stacking context to contain pseudo-elements properly */
}

.section-pedding-box.light-cream .common-data-secion-box .pdop_container {
  position: relative;
  z-index: 2;
  /* Ensures content stays above the flowers */
}

.section-pedding-box.light-cream
  .common-data-secion-box:nth-child(odd)::before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background-image: url("/wp-content/uploads/2026/05/right.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right center;
  width: 150px;
  height: 350px;
  pointer-events: none;
  z-index: 1;
  /* Places flowers above inner section backgrounds */
  opacity: 0.8;
}

.section-pedding-box.light-cream
  .common-data-secion-box:nth-child(even)::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-image: url("/wp-content/uploads/2026/05/left.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: left center;
  width: 150px;
  height: 350px;
  pointer-events: none;
  z-index: 1;
  /* Places flowers above inner section backgrounds */
  opacity: 0.8;
}

.natural-right-padding-30 {
  padding-right: 30px;
}

/* Padding to clear the overlapping natural-areas-card from Banner Two */
/* body.pdop-header-two .pdop_components,  body.pdop-header-two .rentals-permits-section-wrapper{
  padding-top: 220px;
}
body.pdop-header-two .pdop_components > .pdop_container:first-child,  body.pdop-header-two .rentals-permits-section-wrapper{
  padding-top: 220px;
} */
/* body.pdop-header-two .pdop_components > .section-pedding-box:first-child, body.pdop-header-two .rentals-permits-section-wrapper > .section-pedding-box:first-child {
  padding-top: 0;
} */
.notecontent {
  flex: 1;
}

/* Program Note Section */

.program_note_section {
  border-radius: 20px;
  border: 1px solid #dd9228;
  background: #ffefd9;
  padding-inline: 30px;
  padding-block: 16px;
  border-radius: 20px;
  margin-block: 30px;
  gap: 10px;
  /* margin-bottom: 58px; */
}

.notecontent h3 {
  font-weight: var(--fw-bold);
  margin-bottom: 0;
  color: #855a24;
  font-size: 18px;
  font-weight: 700;
  line-height: normal;
}

.program_note_section ul {
  display: grid;
  gap: 8px;
}

.program_note_section li {
  display: flex;
  gap: 10px;
  margin-left: 10px;
  /* align-items: center; */
}

.program_note_section li:before {
  content: "";
  width: 4px;
  height: 4px;
  background-color: var(--color-black);
  border-radius: 100vw;
  flex-shrink: 0;
}

.only-note-section .section-pedding-box {
  padding-bottom: 0;
}

.only-note-section .program_note_section {
  margin-top: 0;
  margin-bottom: 0;
}

.only-note-section .pdop_links_section {
  margin-top: 80px;
}

.pdop_links_section {
  border-radius: 20px;
  background: #e2f8ff;
  padding: 40px 40px;
}
.only-button{
  margin:0 !important;
  border: none !important;
  padding: 0 !important;
  background: transparent;
  margin: 0 auto;
  text-align: center;
}
.pdop_links_section .main-heading {
  text-transform: uppercase;
  color: #000;
  font-size: 26px;
  font-weight: var(--fw-extrabold);
  font-family: var(--font-family-figtree);
}

.pdop_links_section .content-link.link-pdf {
  margin-top: 20px;
  margin-bottom: 0;
}

.pdop_links_section .content-link a {
  margin-bottom: 0;
}

.pdop_links_section .content-link {
  display: flex;
  flex-wrap: wrap;
}

.only-note-section .pdop_values_sticky_layer {
  position: inherit;
  top: 0;
  height: auto;
  padding-inline: 0;
}

.only-note-section .pdop_values_scroll_layer {
  padding-inline: 0;
  margin-top: 0;
  padding-block: 0;
  padding-bottom: 0;
}

.only-note-section .values_card_container {
  max-width: 100%;
}

.icon-with-img {
  width: 100%;
  height: 100%;
}

.icon-with-img .iconbox {
  height: 180px;
}

.icon-with-img .imgbox {
  width: 100%;
  height: 100%;
}

.icon-with-img .imgbox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.only-note-section .values_points ul {
  margin: 0 0 30px 0;
  padding: 0;
  list-style: none;
  font-size: var(--body-base);
  line-height: normal;
  text-underline-position: inherit;
}

.only-note-section .values_points li {
  margin-bottom: 20px;
}

.only-note-section .values_card_heading {
  margin-bottom: 30px;
}

/* ==========================================================================
   Program Guide Card Component (Custom Grid & Dynamic Accents)
   ========================================================================== */

.program-guides-section {
  padding: 80px 0;
  width: 100%;
}

.program-guide-grid {
  display: grid;
  grid-template-columns: repeat(var(--card-columns, 3), 1fr);
  gap: 92px;
  width: 100%;
}

.program-guide-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-decoration: none;
  color: inherit;
  justify-content: space-between;
  /* transition: all 0.3s ease; */
}

.program-guide-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  min-height: auto;
}

.program-guide-title {
  font-size: 22px;
  font-weight: var(--fw-bold);
  line-height: 30px;
}

.program-guide-card:hover .program-guide-title {
  color: #2b3c73;
  text-decoration: underline;
}

.program-guide-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1.5px solid #2b3c73;
  color: #2b3c73;
  background-color: transparent;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  flex-shrink: 0;
}

.program-guide-button svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}

.program-guide-card:hover .program-guide-button {
  background-color: #2b3c73;
  color: #ffffff;
}

.program-guide-card:hover {
  /* transform: translate(1px, -1px); */
}
.program-guide-button svg {
  transform: translate(1px, -1px);
}

.program-guide-image-container {
  background-color: transparent;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    10px 10px 0 0 #d0dd28,
    20px 20px 40px rgba(43, 60, 115, 0.12);
  /* transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); */
  position: relative;
}

.program-guide-image-container img,
.program-guide-image-container .program-guide-fallback-cover {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 20px; /* Perfectly matching container rounding */
  display: block;
  /* transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); */
}

/* Custom visual fallback cover block */
.program-guide-fallback-cover {
  background: linear-gradient(135deg, #2b3c73 0%, #009ad0 100%);
  color: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 30px;
  text-align: center;
}

.program-guide-fallback-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}

.program-guide-fallback-badge {
  background-color: #d0dd28;
  color: #2b3c73;
  font-size: 12px;
  font-weight: 700;
  padding: 6px 14px;
  border-radius: 20px;
  text-transform: uppercase;
}

/* High-end hover scale and drop shadows */
.program-guide-card:hover .program-guide-image-container {
  /* transform: translate(-5px, -5px); */
  /* box-shadow: 
        14px 14px 0 0 #D0DD28, 
        30px 30px 50px rgba(43, 60, 115, 0.18); */
}

.program-guide-card:hover .program-guide-image-container img {
  /* transform: scale(1.01); */
}

/* Responsive adjustments for Decorative Flowers */

/* =============================================
   Membership Pricing Table
   ============================================= */

.pdop_membership_section {
  margin-bottom: 60px;
  overflow-x: auto;
  --table-label-size: 280px;
}

.pdop_punch_section {
  overflow-x: auto;
}

.pdop_membership_table {
  width: 100%;
  background-color: var(--color-white);
  overflow: hidden;
  min-width: 750px;
}

.pdop_membership_title_main {
  display: grid;
  grid-template-columns: var(--table-label-size) 1fr;
}

.pdop_membership_title_inner {
  /* background-color: #fff5e1; */
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

/* Title Row */
.pdop_membership_title_row {
  display: grid;
  grid-template-columns: 1fr;
}

.pdop_membership_title_empty {
  background-color: var(--color-white);
}

.pdop_membership_header {
  padding: 16px 20px;
  text-align: center;
}

.pdop_membership_header strong {
  font-size: var(--h5-size);
  font-weight: var(--fw-bold);
  display: block;
  line-height: 1;
}

.pdop_membership_header span {
  font-size: var(--body-small);
  font-weight: var(--fw-medium);
}

/* Group header row (MONTHLY / ANNUAL) */
.pdop_membership_group_row {
  display: grid;
  grid-template-columns: repeat(var(--columns), 1fr);
}

.pdop_membership_col_group_title {
  font-size: var(--body-base);
  font-weight: var(--fw-bold);
  padding: 10px;
  text-transform: uppercase;
  text-align: center;
  background-color: var(--color-gray-100);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

.pdop_membership_col_group_title.pdop_membership_col_monthly {
  margin-right: 4px;
}

.pdop_membership_col_group_title.pdop_membership_col_annual {
  margin-left: 4px;
}

/* Sub-header row (Ages) */
.pdop_membership_sub_row {
  display: grid;
  grid-template-columns: repeat(var(--columns), 1fr);
}

.pdop_membership_col_sub {
  padding: 8px 10px;
  font-size: var(--body-small);
  /* font-weight: var(--fw-semibold); */
  font-weight: 400;
  color: var(--color-white);
  text-align: center;
  border-bottom: 1px solid #d6d6d6;
}

.pdop_membership_col_monthly_sub,
.pdop_membership_col_annual_sub {
  background-color: var(--color-primary);
}

.pdop_membership_sub_row > div:nth-child(2) {
  margin-right: 4px;
}

.pdop_membership_sub_row > div:nth-child(3) {
  margin-left: 4px;
}

.pdop_membership_sub_row > div:nth-child(2),
.pdop_membership_sub_row > div:nth-child(4) {
  border-left: 1px solid #d6d6d6;
}

/* Data Rows */
.pdop_membership_row {
  display: grid;
  grid-template-columns: var(--table-label-size) repeat(var(--columns), 1fr);
}

.pdop_membership_row_label {
  display: flex;
  align-items: center;
  padding: 15px 20px;
  font-weight: var(--fw-semibold);
  font-size: var(--body-medium);
  background-color: #e2f8ff;
  border-radius: 40px 0 0 40px;
  box-shadow: 0 4px 2px 0 rgba(0, 0, 0, 0.06);
  margin-top: 0;
  margin-bottom: 15px;
}

/* Gap between Monthly and Annual in data rows */
.pdop_membership_row > div:nth-child(3) {
  margin-right: 4px;
}

.pdop_membership_row > div:nth-child(4) {
  margin-left: 4px;
}

.pdop_membership_row > div:nth-child(3),
.pdop_membership_row > div:last-child {
  border-right: 1px solid #d6d6d6;
}

.pdop_membership_cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 22px 10px;
  text-align: center;
  border-left: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
  position: relative;
}

.pdop_membership_cell strong {
  font-size: var(--body-medium);
  font-weight: var(--fw-semibold);
  display: block;
  margin-bottom: 2px;
  line-height: 1.25;
}

.pdop_membership_cell span {
  font-size: var(--body-small);
  display: block;
  margin-bottom: 10px;
}

.pdop_membership_cell a {
  font-size: var(--body-base);
  font-weight: var(--fw-bold);
  color: var(--color-accent-sky);
  text-decoration: underline;
  text-underline-position: from-font;
  display: flex;
  gap: 8px;
  align-items: center;
}

.pdop_membership_cell a:hover {
  text-decoration: underline;
}

.pdop_membership_table
  .pdop_membership_row:last-of-type
  .pdop_membership_cell:nth-of-type(2),
.pdop_membership_table
  .pdop_membership_row:last-of-type
  .pdop_membership_cell:nth-of-type(4) {
  border-bottom-left-radius: 20px;
}

.pdop_membership_table
  .pdop_membership_row:last-of-type
  .pdop_membership_cell:last-of-type,
.pdop_membership_table
  .pdop_membership_row:last-of-type
  .pdop_membership_cell:nth-of-type(3) {
  border-bottom-right-radius: 20px;
}

.pdop_membership_row > div:nth-child(3):after {
  content: "";
  width: 4px;
  position: absolute;
  left: calc(100% + 1px);
  top: 16px;
  bottom: 16px;
  background-color: #e2f8ff;
}

.pdop_membership_row > div:nth-child(4):after {
  content: "";
  width: 4px;
  position: absolute;
  right: calc(100% + 1px);
  top: 16px;
  bottom: 16px;
  background-color: #e2f8ff;
}
.program-table-box .pdop_membership_group_row {
  grid-template-columns: repeat(var(--columns), 1fr);
}
.program-table-box .pdop_membership_sub_row {
  grid-template-columns: repeat(var(--columns), 1fr);
}
.program-table-box .pdop_membership_row_label {
  padding: 15px 30px;
}

.pdop_program_container_grid {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 30px;
}

.pdop_contact_sidebar {
  display: grid;
  gap: 20px;

}
.has-toc-shortcode{
  position: sticky;
  top: 150px;
}
.pdop_contact_sidebar_card {
  background-color: var(--color-accent-green);
  border-radius: 20px;
  padding: 20px;
}

.pdop_contact_sidebar_card hr {
  background-color: #a5af22;
  margin-block: 16px;
  opacity: 1;
}

.pdop_contact_sidebar_card_header img {
  border-radius: 100vw;
  width: 150px;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  margin-bottom: 11px;
}

.pdop_contact_sidebar_card_header h5 {
  font-weight: var(--fw-semibold);
}

.pdop_contact_sidebar_card_header span {
  font-size: var(--body-small);
}

.pdop_contact_sidebar_card_body {
  --gap: 19px;
  display: grid;
  gap: var(--gap);
  margin-bottom: var(--gap);
}

.pdop_contact_sidebar_card_body :is(p, a) {
  display: flex;
  gap: 20px;
  color: var(--color-black);
  word-break: break-word;
  text-decoration: none;
  color: #000;
  font-size: 15px;
  font-weight: 400;
  line-height: normal;
}
.pdop_contact_sidebar_card_body :is(p, a) svg {
  flex-shrink: 0;
  margin-top: 4px;
}

.pdop_contact_sidebar_facility_body {
  display: grid;
  gap: 28px;
}

.pdop_contact_sidebar_facility_item h6 {
  margin-bottom: 9px;
  font-weight: var(--fw-semibold);
  color: var(--color-primary);
}

.pdop_contact_sidebar_facility_item p {
  font-size: clamp(14px, 1.1vw, 15px);
  font-weight: var(--fw-medium);
  margin-bottom: 4px;
}

.pdop_contact_sidebar_facility_item svg {
  margin-top: 4px;
}

.pdop_membership_section.program-table-box {
  margin-bottom: 0;
}
.program-note .program_note_section {
  margin-bottom: 0;
}
/* ==========================================================================
   Agenda Schedule Card Styles
   ========================================================================== */
.agenda-schedule-section {
  padding: 50px 0;
}

.agenda-schedule-wrapper {
  background-color: #fcffda;
  border: 1px solid #d0dd28;
  border-radius: 12px;
  padding: 30px;
}

.agenda-schedule-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 25px;
  gap: 20px;
}

.agenda-schedule-title {
  font-size: 20px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0;
  font-family: var(--font-family-figtree);
  flex: 1;
}

.agenda-schedule-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.agenda-card {
  background-color: #fcffda;
  border: 1px solid #d0dd28;
  border-radius: 8px;
  padding: 16px 30px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.agenda-badge {
  background-color: #ffdded;
  color: #000;
  padding: 4px 8px;
  border-radius: 3px;
  display: inline-block;
  align-self: flex-start;
  margin-bottom: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: inherit; /* 115.385% */
  font-family: var(--font-family-figtree);
}
.agenda-card-content {
  gap: 10px;
  display: flex;
  flex-direction: column;
}
.agenda-card-title {
  font-size: 16px;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 0;
  font-family: var(--font-family-figtree);
}

.agenda-meta-row {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 0;
  flex-wrap: wrap;
}

.agenda-meta-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #000;
  font-weight: 500;
}

.agenda-meta-item svg {
  flex-shrink: 0;
}

.agenda-card-desc {
  border-radius: 10px;
  border: 1px solid #c3e0e2;
  background: #e7fbff;
  padding: 12px 16px;
  font-size: 14px;
  line-height: normal;
  color: #333333;
  margin-top: 0;
}
.agenda-info-section {
  text-align: center;
}
.viewing-agendas-minutes .pdop_heading_black {
  text-transform: math-auto;
}
.rainout_content {
  margin-inline: auto;
  /* padding-block: 50px; */
  max-width: 1320px;
}
.viewing-agendas-minutes {
  text-align: center;
}
.program-dashboard-card .pdop_feature_cards_grid:not([class*="-grid"]) {
  grid-template-columns: repeat(var(--column, 3), 1fr);
  gap: 60px;
}
.program-dashboard-card .feature-grid-wrap.pdop-program-section-wrap {
  padding-bottom: 0 !important;
}
.slider-wrapper-top {
  position: -webkit-sticky;
  position: sticky;
  top: 160px; /* Offset from top of viewport */
  z-index: 8;
  height: fit-content; /* Prevent flexbox stretching from disabling sticky scroll */
}

/* ==========================================================================
   Performance Resources Component Styles
   ========================================================================== */
.perf-res-cards-list.perf-res-cards-list-grid .perf-res-card-item {
  height: 100%;
}
/* .perf-res-cards-list.perf-res-cards-list-grid
  .perf-res-card-item
  .perf-res-arrow-circle {
  display: none;
} */
.perf-res-cards-list.perf-res-cards-list-grid .perf-res-card-inner {
  align-items: center;
}
/* Main Section Wrapper */
.perf-res-section {
  padding-block: 80px;
  background-color: var(--color-white, #ffffff);
}

/* Centered Header Styles */
.perf-res-header {
  text-align: center;
  margin-bottom: 50px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Heading margin reset & alignment */
.perf-res-header h2.pdop_heading_black {
  color: #000;
  text-align: center;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 48px;
  font-weight: 900;
  text-transform: uppercase;
  margin: 0;
}

/* Intro descriptive text */
.perf-res-intro {
  color: #000;
  text-align: center;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 16px;
  font-weight: 500;
}

/* Two-column Layout Grid */
.perf-res-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 80px;
  align-items: start;
}

/* Left Column - Link Cards list container */
.perf-res-cards-list {
  display: flex;
  flex-direction: column;
  gap: 50px;
}

/* Individual Link Card Item styling */
.perf-res-card-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 20px;
  border-radius: 20px;
  background-color: #fffbef; /* Cream/off-white background */
  /* border: 2px solid #ffb612;  */
  box-shadow: 6px 6px 0 0 #f9ac1b; /* Solid bottom-right shadow accent matching the UI */

  text-decoration: none;
  color: inherit;
  transition:
    transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  gap: 30px;
}

/* Card Hover micro-interaction */
.perf-res-card-item:hover {
  transform: translate(0, 0); /* Interactive premium pop effect */
  box-shadow: 6px 6px 0 0 #009ad0; /* Expand the offset shadow */
  color: inherit;
  text-decoration: none;
}

/* Left card text and icon outer wrapper */
.perf-res-card-inner {
  display: flex;
  align-items: flex-start;
  gap: 30px;
  width: 61%;
}

/* Circle or rounded wrapper for card icon */
.perf-res-card-icon-wrap {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.perf-res-card-icon-wrap img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

/* Text elements inside card */
.perf-res-card-text-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.perf-res-card-heading {
  color: #000;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: normal; /* 140% */
  text-transform: capitalize;
  margin: 0;
}

.perf-res-card-description {
  color: #000;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal; /* 150% */
  margin: 0;
}

.perf-res-card-description p {
  margin-bottom: 0;
  line-height: 25px;
}

/* Lime green circular arrow buttons for both columns */
.perf-res-arrow-circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: #d0dd28; /* Accent lime green */
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #2b3c73; /* Navy/Dark color for the arrow path */
  transition:
    background-color 0.3s ease,
    transform 0.3s ease;
  margin-left: 0;
}

/* SVG icons within the arrow circle */
.perf-res-arrow-circle svg {
  transition: transform 0.3s ease;
  stroke: #2b3c73;
}

/* Arrow micro-animation on hover */
.perf-res-card-item:hover .perf-res-arrow-circle svg {
  transform: translateX(2px); /* Slide arrow to the right on hover */
}

/* Specific styling for the card item arrow button to support hover text expansion */
.perf-res-card-item .perf-res-arrow-circle {
  display: inline-flex;
  justify-content: flex-end;
  overflow: hidden;
  box-sizing: border-box;
  padding-right: 14px; /* Center SVG when collapsed */
  transition:
    width 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    background-color 0.3s ease,
    padding 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    border-radius 0.3s ease;
}

/* Hide text by default and transition it */
.perf-res-card-item .perf-res-arrow-circle span {
  opacity: 0;
  max-width: 0;
  overflow: hidden;
  white-space: nowrap;
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  text-transform: capitalize;
  color: #2b3c73;
  line-height: 1;
  transition:
    opacity 0.2s ease,
    max-width 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    margin-right 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Expand button wrapper on hover */
.perf-res-card-item:hover .perf-res-arrow-circle {
  width: 155px; /* Enough to fit "View Details" + margins + padding + SVG */
  padding-left: 18px;
  padding-right: 14px;
  border-radius: 30px;
}

/* Show and slide text on hover */
.perf-res-card-item:hover .perf-res-arrow-circle span {
  opacity: 1;
  max-width: 100px;
  margin-right: 8px;
  text-decoration: underline;
}

/* Right Column - Reports Library Card */
.perf-res-library-card {
  background-color: #fbffee; /* Soft green-cream background matching mockup */
  border: 3px solid #d0dd28; /* Thick lime-green border */
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 15px 35px rgba(43, 60, 115, 0.08); /* Soft container drop shadow */
}

.perf-res-library-title {
  color: #000;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 20px;
}

.perf-res-library-desc {
  color: #000;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  /* margin-bottom: 30px; */
}

.perf-res-library-desc p {
  margin-bottom: 0;
}

/* Library items list */
.perf-res-library-list {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #e2ebd0;
  margin-bottom: 35px;
}

/* Individual library item (row link) */
.perf-res-library-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block: 20px;
  border-bottom: 1px solid #d2d790; /* Separator line between rows */
  text-decoration: none;
  color: inherit;
  transition: background-color 0.3s ease;
}

.perf-res-library-item:hover {
  text-decoration: none;
  color: inherit;
}

/* Left part of library list item */
.perf-res-item-left-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
}

.perf-res-item-icon-wrap {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.perf-res-item-icon-wrap img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.perf-res-item-title {
  color: #000;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal; /* 111.111% */
  transition: color 0.3s ease;
}

/* Hover effects for reports list items */
.perf-res-library-item:hover .perf-res-item-title {
  color: #000000;
  text-decoration: underline; /* underline report title on hover */
}

/* Reduce arrow circle size for list items slightly to match design hierarchy */
.perf-res-library-item .perf-res-arrow-circle {
  width: 36px;
  height: 36px;
  margin-left: 15px;
}

.perf-res-library-item:hover .perf-res-arrow-circle svg {
  transform: translateX(3px); /* Slide arrow to the right on hover */
}

/* Bottom Action Button Styling (Centered pill-shaped button) */
.perf-res-library-footer {
  display: flex;
  justify-content: center;
  margin-top: 10px;
}

.perf-res-pill-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 30px;
  border-radius: 30px;
  background-color: #d0dd28; /* Lime green background */
  color: var(--color-primary, #2b3c73);
  font-size: 15px;
  font-weight: 700;
  font-family: var(--font-family-figtree, "Figtree", sans-serif);
  text-decoration: none;
  transition:
    background-color 0.3s ease,
    transform 0.2s ease,
    box-shadow 0.3s ease;
  box-shadow: 0 4px 10px rgba(208, 221, 40, 0.3);
}

.perf-res-pill-btn:hover {
  background-color: #b9c61e; /* Darker lime shade on hover */
  color: var(--color-primary, #2b3c73);
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(208, 221, 40, 0.4);
}

/* Inner sky-blue circle container for white right-arrow svg */
.perf-res-pill-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #009ad0; /* Sky blue accent color */
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.perf-res-pill-btn:hover .perf-res-pill-icon {
  transform: translateX(3px); /* Subtle shift for micro-interaction feedback */
}
.blue-bg-btn .pdop_btn {
  background-color: #d0dd28; /* Sky blue accent color */
}
.blue-bg-btn .pdop_btn::after {
  background-color: #d8e42f; /* Sky blue accent color */
}
.swiper-button-next:after,
.swiper-button-prev:after {
  display: none !important;
}
.perf-res-card-item-outer-box {
  box-shadow:
    0 69px 69px 0 rgba(0, 0, 0, 0.09),
    0 17px 38px 0 rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(15px);
  border-radius: 20px;
}
.perf-res-section .pdop_btn {
  border: 1px solid #d0dd28 !important;
}
.perf-res-section .blue-bg-btn .pdop_btn::after {
  background-color: #0999cf;
}
.perf-res-section .blue-bg-btn .pdop_btn {
  background-color: #d0dd28;
}
/* .pdop_btn::before {
  background-color: #0999cf;
} */
/* Custom Styles for Single-Column (Full Width) Reports Library Layout */
.perf-res-library-card-full {
  background-color: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.perf-res-library-card-full .perf-res-library-title {
  font-size: 32px;
  margin-bottom: 25px;
}

.perf-res-library-card-full .perf-res-library-desc {
  font-size: 18px;
  margin-bottom: 40px;
}

.perf-res-library-list-grid {
  display: flex;
  flex-direction: column;
  gap: 20px;
  border-bottom: none !important;
  margin-bottom: 40px;
}

@media (min-width: 768px) {
  .perf-res-library-list-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 30px !important;
  }
}

.perf-res-library-item-card {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 20px 30px !important;
  border-radius: 20px !important;
  background-color: #fffbef !important; /* Cream/off-white matching links cards */
  box-shadow: 6px 6px 0 0 #f9ac1b !important; /* Solid gold accent bottom-right shadow */
  text-decoration: none !important;
  color: inherit !important;
  border-bottom: none !important; /* Remove standard row line separator */
  transition:
    transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
  gap: 20px !important;
}

.perf-res-library-item-card:hover {
  transform: translate(0, 0) !important;
  box-shadow: 6px 6px 0 0 #009ad0 !important; /* Blue shadow on hover */
  text-decoration: none !important;
}

.perf-res-library-item-card .perf-res-item-left-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  width: 75% !important;
}

.perf-res-library-item-card .perf-res-item-icon-wrap {
  width: 44px !important;
  height: 44px !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.perf-res-library-item-card .perf-res-item-icon-wrap img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

.perf-res-library-item-card .perf-res-item-title {
  color: #000 !important;
  font-family: var(--font-family-figtree, "Figtree", sans-serif) !important;
  font-size: 20px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  transition: color 0.3s ease !important;
}

.perf-res-library-item-card:hover .perf-res-item-title {
  text-decoration: none !important;
}

.perf-res-library-item-card .perf-res-arrow-circle {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background-color: #d0dd28 !important; /* Accent lime green */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  margin-left: 0 !important;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease !important;
}

.perf-res-library-item-card .perf-res-arrow-circle svg {
  width: 16px !important;
  height: 16px !important;
  stroke: #2b3c73 !important;
  stroke-width: 3 !important;
  transition: transform 0.3s ease !important;
}

.perf-res-library-item-card:hover .perf-res-arrow-circle svg {
  transform: translateX(3px) !important;
}
.historic-homes-and-garden-tour.perf-res-section{
  padding-top: 0;
}
/* Custom Styles for Single-Column (Full Width) Link Cards Layout */
.perf-res-cards-list-grid {
  display: grid !important;
  /* grid-template-columns: repeat(2, 1fr); */
  gap: 50px !important;
}
.perf-res-cards-list-grid .perf-res-card-icon-wrap {
  width: 110px;
  height: 110px;
  border: 2px solid #74749e;
  border-radius: 50%;
  overflow: hidden;
  padding: 10px;
  background: #fff;
}

/* Styling for static (non-clickable) card items */
.perf-res-card-item-static {
  cursor: default !important;
}

.perf-res-card-item-static:hover {
  transform: none !important;
  box-shadow: 6px 6px 0 0 #f9ac1b !important;
  color: inherit !important;
}
.organizational-excellence-page .perf-res-section {
  padding-top: 0;
}

/* ── Card Position: left / right column ordering ──────────────────────────── */
.perf-res-col--order-1 {
  order: 1;
}
.perf-res-col--order-2 {
  order: 2;
}

/* Image-only mode: image column (order-1) gets 2fr, cards column (order-2) gets 1fr */
.perf-res-grid--image-mode {
  grid-template-columns: 2fr 1fr;
  gap: 20px;
  align-items: center;
}

/* Only Image mode – fills the second column */
.perf-res-only-image-wrap {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.perf-res-only-image {
  width: 100%;
  height: auto;
  max-width: 100%;
  display: block;
  border-radius: 8px;
  object-fit: cover;
}
.common-heading-section {
  padding-top: 60px;
  padding-bottom: 20px;
}
.common-center-heading-box {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 10px;
  padding: 0 0;
  margin-bottom: 20px;
}
.common-center-heading-box .common-heaing {
  color: #000;
  text-align: center;
  font-family: var(--font-family-figtree);
  font-size: 32px;
  font-style: normal;
  font-weight: 800;
  line-height: normal; /* 131.25% */
}
.common-center-heading-box .common-description {
  color: #000;
  text-align: center;
  font-family: var(--font-family-figtree);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  width: 68%;
}
.welcome-the-park .common-heaing {
  font-size: 48px;
  font-weight: 900;
  text-transform: uppercase;
}
.welcome-section-bg-img {
  background-image: url("/wp-content/uploads/2026/06/section-flower.svg");
  background-repeat: no-repeat;
  background-position: 100% 106%;
  background-size: cover;
}
.bg-top {
  background-position: 100% 1%;
}
.common-center-heading-box .common-image {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}
.common-center-heading-box .common-img-box {
  width: 87px;
  height: 87px;
}
.common-center-heading-box .common-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.only-video-box .awardsSwiper {
  height: 779px;
  width: 80%;
  margin: 0 auto;
}
.no-top-padding {
  padding-top: 0;
}
/* ==========================================================================
   Flip Box Section Styles
   ========================================================================== */
.your-community-heading {
  padding-top: 0;
  padding-bottom: 40px;
}
.flip-box-inner .pdop_btn.pdop_btn_secondary {
  background-color: #fff;
  border: 1px solid var(--color-primary);
}
.flip-box-inner .pdop_btn.pdop_btn_secondary:is(:hover, :focus) {
  border: 1px solid var(--color-accent-sky);
}
.flip-box-section-main {
  padding: 80px 0;
}
/* .flip-section-custom-class {
  padding-top: 0;
} */
.flip-box-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
.flip-box-card {
  background-color: transparent;
  perspective: 1000px;
  height: 312px;
  border-radius: 12px;
}
.flip-box-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}
.flip-box-card:hover .flip-box-inner {
  transform: rotateY(180deg);
}
.flip-box-front,
.flip-box-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}
.flip-box-back {
  transform: rotateY(180deg);
  padding: 20px 70px;
  gap: 20px;
}
.flip-box-heading {
  font-family: var(--font-family-figtree);
  text-align: center;
  font-size: 36px;
  font-style: normal;
  font-weight: 500;
  line-height: normal; /* 127.778% */
  text-transform: capitalize;
  color: inherit;
}
.flip-box-desc {
  font-family: var(--font-family-figtree);
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 32px; /* 160% */
  color: inherit;
}
.flip-box-desc p {
  color: inherit;
}
.flip-box-icon {
  display: flex;
  justify-content: center;
}
.flip-box-icon img {
  width: 60px;
  height: auto;
  object-fit: contain;
}

/* Contrast Handling */
.flip-box-card.text-dark .flip-box-front,
.flip-box-card.text-dark .flip-box-back {
  color: #2b3c73;
}
.flip-box-front {
  gap: 70px;
}
.flip-box-card.text-dark .flip-box-icon img {
  filter: brightness(0) saturate(100%) invert(20%) sepia(21%) saturate(2304%)
    hue-rotate(189deg) brightness(97%) contrast(92%);
}

.flip-box-card.text-light .flip-box-front,
.flip-box-card.text-light .flip-box-back {
  color: #ffffff;
}
.flip-box-card.text-light .flip-box-icon img {
  filter: brightness(0) invert(1);
}

/* ==========================================================================
   Multiple Choice Card Component
   ========================================================================== */

.multiple-choice-card-section {
  padding-block: 80px;
  position: relative;
  overflow: hidden;
}
.multiple-choice-card-section::after {
  position: absolute;
  content: "";
  top: 220px;
  left: 0;
  width: 187px;
  height: 420px;
  background-image: url("/wp-content/uploads/2026/03/pdop_half_leaf.svg");
  background-repeat: no-repeat;
  background-position: 100% 106%;
  background-size: contain;
  z-index: auto;
}
.multiple-choice-card-section::before {
  position: absolute;
  content: "";
  top: 800px;
  right: 0;
  width: 168px;
  height: 380px;
  background-image: url("/wp-content/uploads/2026/03/pdop_half_leaf.svg");
  background-repeat: no-repeat;
  background-position: 100% 106%;
  background-size: contain;
  z-index: auto;
  transform: rotate(180deg);
}

/* Hide labels for placeholders as per reference UI */
.rp-form-section .gfield_label,
.rp-form-section .gfield_required {
  display: none !important;
}

/* Gravity Forms Grid Layout */
.rp-form-section .gform_fields {
  display: grid !important;
  grid-template-columns: repeat(12, 1fr) !important;
  gap: 20px !important;
  row-gap: 20px !important;
}

.rp-form-section .gfield {
  grid-column: span 12 !important;
  margin: 0 !important;
}

.rp-form-section .gfield--width-half {
  grid-column: span 6 !important;
}

/* Field Inputs & Custom SVG Icons */
.rp-form-section input[type="text"],
.rp-form-section input[type="email"],
.rp-form-section input[type="url"],
.rp-form-section input[type="password"],
.rp-form-section input[type="search"],
.rp-form-section input[type="number"],
.rp-form-section input[type="tel"],
.rp-form-section input[type="date"],
.rp-form-section select,
.rp-form-section textarea {
  width: 100% !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  border: 1px solid #9fcadc !important;
  background-color: #fff !important;
  color: #333333 !important;
  font-family: var(--font-family-figtree) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: normal !important;
  height: auto !important;
  padding: 13px 16px 13px 48px !important;
  transition: all 0.3s ease !important;
  outline: none !important;
  background-repeat: no-repeat !important;
  background-size: 19px 19px !important;
}

/* First & Last Name Fields (User Icon) */
.rp-form-section input[name*="name"],
.rp-form-section input[id*="name"],
.rp-form-section input[type="text"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M7.5 7C6.5375 7 5.71358 6.65733 5.02825 5.972C4.34275 5.2865 4 4.4625 4 3.5C4 2.5375 4.34275 1.71358 5.02825 1.02825C5.71358 0.34275 6.5375 0 7.5 0C8.4625 0 9.28642 0.34275 9.97175 1.02825C10.6573 1.71358 11 2.5375 11 3.5C11 4.4625 10.6573 5.2865 9.97175 5.972C9.28642 6.65733 8.4625 7 7.5 7ZM0 14.6155V12.3923C0 11.9026 0.133 11.4491 0.399 11.0317C0.665 10.6144 1.0205 10.2936 1.4655 10.0693C2.45383 9.58475 3.45092 9.22133 4.45675 8.979C5.46258 8.73667 6.477 8.6155 7.5 8.6155C8.523 8.6155 9.53742 8.73667 10.5433 8.979C11.5491 9.22133 12.5462 9.58475 13.5345 10.0693C13.9795 10.2936 14.335 10.6144 14.601 11.0317C14.867 11.4491 15 11.9026 15 12.3923V14.6155H0ZM1.5 13.1155H13.5V12.3923C13.5 12.1897 13.4413 12.0022 13.324 11.8298C13.2067 11.6574 13.0474 11.5168 12.8462 11.4078C11.9846 10.9834 11.1061 10.6619 10.2107 10.4433C9.31525 10.2248 8.41167 10.1155 7.5 10.1155C6.58833 10.1155 5.68475 10.2248 4.78925 10.4433C3.89392 10.6619 3.01542 10.9834 2.15375 11.4078C1.95258 11.5168 1.79333 11.6574 1.676 11.8298C1.55867 12.0022 1.5 12.1897 1.5 12.3923V13.1155ZM7.5 5.5C8.05 5.5 8.52083 5.30417 8.9125 4.9125C9.30417 4.52083 9.5 4.05 9.5 3.5C9.5 2.95 9.30417 2.47917 8.9125 2.0875C8.52083 1.69583 8.05 1.5 7.5 1.5C6.95 1.5 6.47917 1.69583 6.0875 2.0875C5.69583 2.47917 5.5 2.95 5.5 3.5C5.5 4.05 5.69583 4.52083 6.0875 4.9125C6.47917 5.30417 6.95 5.5 7.5 5.5Z' fill='%23009AD0'/%3E%3C/svg%3E") !important;
  background-position: left 16px center !important;
}

/* Email Field (Envelope Icon) */
.rp-form-section input[type="email"],
.rp-form-section input[name*="email"],
.rp-form-section input[id*="email"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='15' viewBox='0 0 19 15' fill='none'%3E%3Cpath d='M1.80775 15C1.30258 15 0.875 14.825 0.525 14.475C0.175 14.125 0 13.6974 0 13.1923V1.80775C0 1.30258 0.175 0.875 0.525 0.525C0.875 0.175 1.30258 0 1.80775 0H17.1923C17.6974 0 18.125 0.175 18.475 0.525C18.825 0.875 19 1.30258 19 1.80775V13.1923C19 13.6974 18.825 14.125 18.475 14.475C18.125 14.825 17.6974 15 17.1923 15H1.80775ZM9.5 8.05775L1.5 2.94225V13.1923C1.5 13.2821 1.52883 13.3558 1.5865 13.4135C1.64417 13.4712 1.71792 13.5 1.80775 13.5H17.1923C17.2821 13.5 17.3558 13.4712 17.4135 13.4135C17.4712 13.3558 17.5 13.2821 17.5 13.1923V2.94225L9.5 8.05775ZM9.5 6.5L17.3463 1.5H1.65375L9.5 6.5ZM1.5 2.94225V1.5V13.1923C1.5 13.2821 1.52883 13.3558 1.5865 13.4135C1.64417 13.4712 1.71792 13.5 1.80775 13.5H1.5V2.94225Z' fill='%23009AD0'/%3E%3C/svg%3E") !important;
  background-position: left 16px center !important;
}

/* Select Dropdown (Calendar Star Icon + Custom Right Arrow) */
.rp-form-section select {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cg clip-path='url(%23clip0_40005034_53069)'%3E%3Cpath d='M19.2188 5.98309H0.78125V4.46484C0.78125 3.17043 1.83059 2.12109 3.125 2.12109H16.875C18.1694 2.12109 19.2188 3.17043 19.2188 4.46484V5.98309Z' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.88867 1.4375V3.18785' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M7.96289 1.4375V3.18785' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12.0352 1.4375V3.18785' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16.1094 1.4375V3.18785' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19.2188 12.374V5.98438H0.78125V16.2233C0.78125 17.5177 1.83059 18.5671 3.125 18.5671H16.875C18.1504 18.5671 19.187 17.5483 19.2173 16.2802' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.0008 15.085L8.82545 15.5029C8.24822 15.7082 7.6449 15.2698 7.66174 14.6575L7.69604 13.4104L6.93529 12.4217C6.5617 11.9362 6.79217 11.2269 7.37979 11.0537L8.57639 10.701L9.28162 9.67195C9.62795 9.16664 10.3737 9.16664 10.72 9.67195L11.4253 10.701L12.6219 11.0537C13.2095 11.2269 13.4399 11.9362 13.0663 12.4217L12.3056 13.4104L12.3399 14.6575C12.3567 15.2698 11.7534 15.7082 11.1762 15.5029L10.0008 15.085Z' stroke='%23009AD0' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_40005034_53069'%3E%3Crect width='20' height='20' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
  background-position:
    left 16px center,
    right 20px center !important;
  background-size:
    22px 22px,
    16px 16px !important;
  padding-right: 40px !important;
  cursor: pointer;
}

.rp-form-section select::-ms-expand {
  display: none !important;
}

/* Message Textarea (Chat Icon) */
.rp-form-section textarea {
  height: 140px !important;
  padding: 16px 16px 16px 48px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19' fill='none'%3E%3Cpath d='M3.75 11.25H11.25V9.75H3.75V11.25ZM3.75 8.25H15.25V6.75H3.75V8.25ZM3.75 5.25H15.25V3.75H3.75V5.25ZM0 18.5385V1.80775C0 1.30258 0.175 0.875 0.525 0.525C0.875 0.175 1.30258 0 1.80775 0H17.1923C17.6974 0 18.125 0.175 18.475 0.525C18.825 0.875 19 1.30258 19 1.80775V13.1923C19 13.6974 18.825 14.125 18.475 14.475C18.125 14.825 17.6974 15 17.1923 15H3.5385L0 18.5385ZM2.9 13.5H17.1923C17.2693 13.5 17.3398 13.4679 17.4038 13.4038C17.4679 13.3398 17.5 13.2692 17.5 13.1923V1.80775C17.5 1.73075 17.4679 1.66025 17.4038 1.59625C17.3398 1.53208 17.2693 1.5 17.1923 1.5H1.80775C1.73075 1.5 1.66025 1.53208 1.59625 1.59625C1.53208 1.66025 1.5 1.73075 1.5 1.80775V14.8848L2.9 13.5Z' fill='%23009AD0'/%3E%3C/svg%3E") !important;
  background-position: left 16px top 16px !important;
  resize: vertical;
}

/* Fields Interactive States */
.rp-form-section input[type="text"]:focus,
.rp-form-section input[type="email"]:focus,
.rp-form-section input[type="url"]:focus,
.rp-form-section input[type="password"]:focus,
.rp-form-section input[type="search"]:focus,
.rp-form-section input[type="number"]:focus,
.rp-form-section input[type="tel"]:focus,
.rp-form-section input[type="date"]:focus,
.rp-form-section select:focus,
.rp-form-section textarea:focus {
  border-color: #0093d0 !important;
  box-shadow: 0 0 0 4px rgba(0, 147, 208, 0.15) !important;
}

/* Placeholder Colors */
.rp-form-section ::placeholder {
  color: #5a5a5a !important;
  opacity: 1 !important;
}

.rp-form-section :-ms-input-placeholder {
  color: #5a5a5a !important;
}

.rp-form-section ::-ms-input-placeholder {
  color: #5a5a5a !important;
}
/* Section main heading */
.mcc-main-heading {
  color: #fff;
  text-align: center;
  font-family: var(--font-family-figtree);
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  text-transform: uppercase;
  margin-bottom: 0;
}

.multiple-choice-card-section .mcc-card {
  padding-block: 60px;
  border-bottom: 1px solid #6272a6;
}

.multiple-choice-card-section .mcc-card:first-child {
  padding-top: 0;
}

.multiple-choice-card-section .mcc-card:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.mcc-card-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: start;
  position: relative;
  z-index: 2;
}
.mcc-button-box {
  width: 100%;
  display: flex;
  justify-content: center !important;
  align-items: center !important;
  margin-top: 30px;
}
.mcc-right {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}
.welcom-form-card .mcc-right {
  flex-direction: column;
}
/* Number styling */
.mcc-number {
  font-family: var(--font-family-figtree);
  font-size: 120px;
  font-weight: var(--fw-extrabold);
  line-height: 1;
  color: #fff;
  margin-bottom: 10px;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: var(--Oak---Orange, #f9ac1b);
}
.financial-assistance-card .mcc-right {
  flex-direction: column;
}
.financial-assistance-card .mcc-financial-cards {
  gap: 40px;
}
.mcc-button-left {
  margin-top: 0;
  justify-content: flex-start !important;
}

.mcc-button-right {
  margin-top: 35px;
  justify-content: center !important;
}

/* Main heading */
.mcc-heading {
  font-family: var(--font-family-figtree);
  font-size: var(--h3-2-size, 22px);
  font-weight: var(--fw-extrabold);
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 20px;
  line-height: 1.3;
}

/* Left card heading */
.mcc-card-heading {
  color: #fff;
  font-size: 32px;
  font-weight: 800;
  line-height: initial;
  text-transform: uppercase;
  margin-bottom: 10px;
}

/* Left description */
.mcc-description {
  margin-bottom: 50px;
  color: #fff;
}
/* .financial-assistance-card .pdop_btn::after {
  background-color: #0999cf;
}
.financial-assistance-card .pdop_btn {
  position: relative;
  background-color: #d0dd28;
} */

.mcc-description p {
  margin-bottom: 8px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.mcc-description p:last-child {
  margin-bottom: 0;
}

/* Right side image box */
.mcc-image-box {
  border-radius: 20px;
  overflow: hidden;
  box-shadow:
    10px 10px 0 0 #d0dd28,
    20px 20px 40px rgba(43, 60, 115, 0.12);
  width: auto; /*435px*/
  height: 559px;
  display: flex;
  justify-content: flex-end;
}

.mcc-image-box img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

/* Registration cards */
.mcc-registration-cards {
  background: var(--color-white, #fff);
  border-radius: 20px;
  box-shadow: 0 4px 24px rgba(43, 60, 115, 0.1);
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 0;
  box-shadow:
    10px 10px 0 0 #d0dd28,
    20px 20px 40px rgba(43, 60, 115, 0.12);
}

.mcc-reg-card {
  padding-block: 30px;
  border-bottom: 1px solid #e2e2e2;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.mcc-reg-card:first-child {
  padding-top: 0;
}

.mcc-reg-card:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.mcc-reg-card-heading {
  color: var(--Oak---Blue, #2b3c73);
  font-family: var(--font-family-figtree);
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 0;
}

.mcc-reg-card-desc {
  margin-bottom: 0;
}

.mcc-reg-card-desc p {
  margin-bottom: 0;
  font-size: var(--body-small, 14px);
  color: #000;
  font-family: var(--font-family-figtree);
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
}

.mcc-reg-card-desc p:last-child {
  margin-bottom: 0;
}

/* Registration card colored bullet list */
.mcc-reg-card-desc ul {
  list-style: none;
  padding: 0;
  margin: 20px 0 0 0;
}

.mcc-reg-card-desc ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 4px;
  font-size: var(--body-small, 14px);
}

/* .mcc-reg-card-desc ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--color-accent-sky, #009ad0);
} */

.mcc-reg-card .pdop-action-buttons-wrapper {
  margin-top: 14px;
}
.plan-main-page .pdop-action-buttons-wrapper{
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}
/* Form card */
.mcc-form-card {
  background: var(--color-white, #fff);
  border-radius: 20px;
  box-shadow: 0 4px 24px rgba(43, 60, 115, 0.1);
  padding: 40px;
  box-shadow:
    10px 10px 0 0 #d0dd28,
    20px 20px 40px rgba(43, 60, 115, 0.12);
}

.mcc-form-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 20px;
}

.mcc-form-heading {
  color: #2b3c73;
  font-size: 26px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}

/* Offer badge */
.mcc-offer-badge {
  background-color: #f9ffa8;
  border-radius: 100%;
  padding: 0;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
  width: 112px;
  height: 112px;
  position: relative;
}
.mcc-offer-badge-content {
  position: absolute;
  right: 0;
  left: 0;
  top: 50%;
  display: flex;
  flex-direction: column;
  transform: translateY(-50%);
  gap: 5px;
}
.mcc-offer-label {
  font-size: 13px;
  font-weight: var(--fw-bold);
  text-transform: uppercase;
  color: var(--color-primary, #2b3c73);
  line-height: normal;
  letter-spacing: 2.6px;
}
.mcc-offer-amount-box {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: center;
  gap: 5px;
}
.mcc-offer-amount {
  font-size: 24px;
  font-weight: var(--fw-extrabold);
  color: var(--color-primary, #2b3c73);
  line-height: normal;
  text-transform: uppercase;
}

.mcc-offer-off {
  font-size: 14px;
  font-weight: var(--fw-semibold);
  color: var(--color-primary, #2b3c73);
  line-height: normal;
  text-transform: uppercase;
}

.mcc-offer-time {
  font-size: 14px;
  font-weight: 500;
  color: #2b3c73;
  line-height: 1.2;
  border-top: 1px solid #2b3c73;
  border-bottom: 1px solid #2b3c73;
  width: 100%;
  display: inline-block;
  padding: 2px 0;
}

.mcc-form-desc {
  margin-top: 10px;
}

/* Financial assistance cards */
.mcc-financial-cards {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mcc-financial-card {
  background: var(--color-white, #fff);
  border-radius: 20px;
  box-shadow: 0 4px 24px rgba(43, 60, 115, 0.1);
  padding: 24px 30px;
}

.mcc-financial-heading {
  font-family: var(--font-family-figtree);
  font-size: var(--h5-size, 18px);
  font-weight: var(--fw-bold);
  color: var(--color-primary, #2b3c73);
  margin-bottom: 10px;
}

.mcc-financial-desc {
  margin-bottom: 14px;
}

.mcc-financial-desc p {
  margin-bottom: 6px;
  font-size: var(--body-base, 16px);
}

.mcc-financial-desc p:last-child {
  margin-bottom: 0;
}

.mcc-learn-more-link {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-family: var(--font-family-figtree);
  font-size: var(--body-base, 16px);
  font-weight: var(--fw-semibold);
  color: var(--color-primary, #2b3c73);
  text-decoration: none;
  transition: color 0.2s ease;
}

.mcc-learn-more-link:hover {
  color: var(--color-accent-sky, #009ad0);
  text-decoration: underline;
}

.mcc-learn-more-link svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.mcc-learn-more-link:hover svg {
  transform: translateX(4px);
}

/* Left side button wrapper */
.mcc-left .pdop-action-buttons-wrapper {
  margin-top: 0;
}
/* Financial Assistance Cards */
.mcc-financial-cards {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
}

.mcc-financial-card {
  background-color: #fdffe0; /* light yellow matching the screenshot */
  border-radius: 16px;
  padding: 40px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  border-radius: 20px;
  box-shadow:
    10px 10px 0 0 #d0dd28,
    20px 20px 40px rgba(43, 60, 115, 0.12);
}

.mcc-financial-heading {
  color: #2b3c73;
  font-size: 26px;
  font-weight: 700;
  line-height: normal;
}

.mcc-financial-desc {
  font-size: var(--body-base, 16px);
  color: var(--color-black, #000);
  line-height: 1.5;
  margin-bottom: 20px;
}

.mcc-learn-more-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 50px;
  font-family: var(--font-family-figtree);
  font-size: var(--body-base, 16px);
  font-weight: var(--fw-semibold);
  color: var(--color-primary, #2b3c73);
  text-decoration: none;
  transition: all 0.3s ease;
}

.mcc-learn-more-link svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}

.mcc-learn-more-link:hover {
  text-decoration: underline;
}

.mcc-learn-more-link:hover svg {
  transform: translateX(4px);
}



/* ==========================================================================
Top Navigation Component Styles
========================================================================== */

.career-page .pdop-top-navigation-bar .pdop_program_top_navigation {
  padding-top: 10px;
}
.pdop_program_top_navigation_item {
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 16px;
  gap: 10px;
  flex: 1;
  border-radius: 20px;
  background-color: #eaefff;
  color: #3e3e3e;
  font-size: var(--body-base);
  font-weight: var(--fw-semibold);
  border: 1px solid #a9b4d7;
  transition: all 250ms ease-in-out;
  min-width: 225px;
  text-align: center;
}
.pdop-top-navigation-bar {
  position: sticky;
  top: 111px;
  z-index: 9;
  scroll-behavior: smooth;
}
.pdop-top-navigation-bar .pdop_program_top_navigation_item:hover {
  border-color: var(--color-primary);
}

.pdop_program_top_navigation_item:is(.pdop_nav_active) {
  border-color: transparent;
  background-color: var(--color-primary);
  color: var(--color-white);
}

.pdop_program_top_navigation_item:is(.pdop_nav_active) svg path {
  stroke: #ffffff;
}

.pdop_program_top_navigation_item svg path {
  stroke: #000000;
}

.pdop-top-navigation-bar .pdop_program_top_navigation {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 11px 13px;
  background-color: rgba(244, 240, 255, 1);
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.06);
  /* margin-bottom: 30px; */
  z-index: 999;
}
.rentals-permits-navigation-grid {
  position: sticky;
  top: 144px;
  z-index: 9;
}
.icon-box-size {
  width: 32px;
  height: 32px;
}
.icon-box-size svg {
  width: 100% !important;
  height: 100% !important;
}


/* Folder Tag Component */
.folder-tag-component-section {
  padding: 0 0;
}

.folder-tag-main-heading {
  margin-bottom: 40px;
  font-size: var(--h4-2-size, 28px);
  font-weight: var(--fw-bold, 700);
  text-transform: initial;
}
.tag-card-main-section {
  padding-top: 0;
}
.folder-tag-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px;
}

.folder-tag-column {
  display: flex;
  flex-direction: column;
}

.folder-tag-badge {
  background-color: #d0dd28;
  color: #2b3c73;
  font-weight: 700;
  font-size: var(--body-large);
  padding: 10px 24px;
  border-radius: 12px 12px 0 0;
  width: fit-content;
  text-transform: uppercase;
  margin-left: 20px;
  position: relative;
  z-index: 1;
}

.folder-tag-card {
  background-color: #fff;
  border-radius: 20px;
  padding: 30px;
  box-shadow: 6px 6px 0px 0px #f6a01a;
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.folder-tag-desc {
  color: #000;
  font-family: var(--font-family-figtree);
  font-size: var(--body-medium);
  font-style: normal;
  font-weight: 400;
  line-height: 27px; /* 150% */
}

.folder-tag-icon-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  margin-top: 25px;
}

.folder-tag-icon-heading img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.folder-tag-icon-heading h3 {
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin: 0;
  text-transform: uppercase;
}

.folder-tag-bg-heading {
  background-color: #e2f8ff;
  color: #009ad0;
  font-size: 12px;
  font-weight: 700;
  padding: 8px 15px;
  border-radius: 4px;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.folder-tag-bg-heading h4 {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
}
.folder-tag-list-group {
  border-bottom: 6px solid #dfdfdf;
  padding-bottom: 10px;
}
.folder-tag-list-group:last-child {
  border-bottom: 0px;
  padding-bottom: 0;
}
.folder-tag-benefits {
  list-style: none;
  padding: 0;
  margin: 0;
}

.folder-tag-benefits li {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
  gap: 15px;
}

.folder-tag-benefits li:last-child {
  border-bottom: none;
}

.benefit-left {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1;
}

.benefit-icon {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.benefit-icon img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.benefit-left-heading {
  font-size: var(--body-base);
  font-weight: 600;
  color: #333;
}

.benefit-right-content {
  flex: 1;
  text-align: right;
  font-size: var(--body-base);
  color: #555;
  font-weight: 400;
}

.benefit-right-content p {
  margin: 0;
}


/* Did You Know Component */
.did-you-know-wrapper {
  position: relative;
  background-color: #fbffee;
  border-radius: 20px;
  padding: 50px 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 6px 6px 0px 0px #d0dd28;
  margin: 0 auto;
}

.did-you-know-section.with-img .did-you-know-wrapper {
  padding: 50px 154px; /* Make room for the absolute images */
}

.did-you-know-section.without-img .did-you-know-wrapper {
  background-color: #e2f8ff;
  box-shadow: none;
  padding: 40px 154px;
}
.with-img {
  margin-top: 80px;
}

.did-you-know-image {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 20px;
  overflow: hidden;
  z-index: 2;
  width: 227px;
  height: 238px;
}

.did-you-know-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.did-you-know-image.left-image {
  left: 50px;
}

.did-you-know-image.right-image {
  right: 50px;
}

.did-you-know-content {
  text-align: center;
  position: relative;
  z-index: 1;
}

.did-you-know-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-bottom: 15px;
}

.did-you-know-heading img.heading-icon {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.did-you-know-heading h3 {
  font-size: var(--h4-2-size, 28px);
  font-weight: var(--fw-bold, 700);
  color: #000;
  margin: 0;
}

.did-you-know-desc {
  font-family: var(--font-family-figtree);
  font-size: var(--body-large);
  color: #000;
  line-height: 1.5;
  font-weight: 400;
  width: 56%;
  margin: 0 auto;
}
.did-you-know-section.without-img .did-you-know-desc {
  width: 81%;
  margin: 0 auto;
}
.did-you-know-desc p {
  margin: 0;
}


.iframe_section{
  border-radius: 20px;
border: 1px solid var(--Oak---Sky-Blue, #009AD0);
box-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.25);
padding: 10px; 
background: #fff;
position: relative;
z-index: 2;
}
/* ==========================================================================
   Happy Employee Stories Component
   ========================================================================== */
.happy-employee-stories {
  position: relative;
}
.bg-stories-card {
  background-color: #e4f8ff;
  background-image: url("/wp-content/uploads/2026/07/stories-bg.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 40px;
  border-radius: 20px;
}
.happy-employee-stories .center-heading-wrapper {
  margin-bottom: 50px;
}

.happy-employee-stories .employee-story-card {
  display: flex;
  align-items: center;
  margin: 0 auto;
  position: relative;
  width: 80%;
}

.happy-employee-stories .story-image-wrap {
  width: 50%;
  position: relative;
  z-index: 1;
}

.happy-employee-stories .story-image-inner {
  border: 10px solid #f9af24;
  border-radius: 24px;
  padding: 0;
  background-color: transparent;
}

.happy-employee-stories .story-image-inner img {
  width: 100%;
  /* aspect-ratio: 1 / 1; */
  object-fit: cover;
  border-radius: 16px;
  display: block;
}
.bg-stories-card .natural-main-heading {
  font-size: var(--h4-2-size) !important;
  font-weight: 700;
}

.happy-employee-stories .story-content-wrap {
  width: 55%;
  margin-left: -5%;
  background: #ffffff;
  border-radius: 24px;
  padding: 30px 30px 30px 20px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  position: relative;
  z-index: 2;
  display: flex;
  gap: 20px;
}

.happy-employee-stories .quote-icon {
  margin-bottom: 20px;
}

.happy-employee-stories .story-quote-heading {
 color: #000;
font-family: var(--font-family-figtree);
font-size: 22px;
font-style: normal;
font-weight: 600;
line-height: 28px; /* 127.273% */
}
.story-content-wrap-inner{
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.happy-employee-stories .story-description p {
  font-family: var(--font-family-figtree);
  font-size: 16px;
  color: #333;
  margin-bottom: 0;
  line-height: 1.6;
}

.happy-employee-stories .story-author {
  /* font-family: "Great Vibes", "Dancing Script", cursive; */
  color: #000;
font-size: 36px;
font-style: normal;
font-weight: 600;
line-height: 28px; /* 77.778% */
}

/* ==========================================================================
   Feature Card Grid Layouts
   ========================================================================== */
.plan-main-page
  .pdop_feature_card_content {
    align-items: center;
}
.plan-main-page .pdop_feature_card_button_wrapper {
    width: auto !important;
    margin-top: auto!important;
}
.plan-main-page .pdop_feature_card_button.pdop_btn.pdop_btn_secondary.feature-btn{
margin-top: 30px!important;
}
.plan-main-page .pdop_feature_card_description{
margin-bottom: 0 !important;
text-align: center;
}
.plan-main-page .pdop_feature_card_title{
font-size: 22px;
text-align: center;
}
.plan-main-page .pdop_feature_card_content {
    gap: 3px;
}
.plan-main-page .pdop_feature_card_item{
  padding: 30px;  
    gap: 20px;
}

.pdop_feature_card_icon_wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 0;
  width: 60px;
  height: 60px;
  position: relative;
}

.pdop_feature_card_icon_wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.pdop_feature_card_default_icon {
  background-image: url('https://pdopdev.wpenginepowered.com/wp-content/uploads/2026/07/info-number-bg-icon.svg');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.pdop_feature_card_icon_number {
color: #CC4A38;
    font-family: var(--font-family-figtree);
    font-size: 20px;
    font-weight: 800;
    line-height: 1;
    position: absolute;
    top: 12px;
}

.pdop_feature_cards_grid,
.program-dashboard-card .pdop_feature_cards_grid[class*="-grid"] {
  display: grid;
  gap: 50px;
}

.pdop_feature_cards_grid.two-grid,
.program-dashboard-card .pdop_feature_cards_grid.two-grid {
  grid-template-columns: repeat(2, 1fr) !important;
}

.pdop_feature_cards_grid.three-grid,
.program-dashboard-card .pdop_feature_cards_grid.three-grid {
  grid-template-columns: repeat(3, 1fr) !important;
}

.pdop_feature_cards_grid.four-grid,
.program-dashboard-card .pdop_feature_cards_grid.four-grid {
  grid-template-columns: repeat(4, 1fr) !important;
}

.pdop_feature_cards_grid.five-grid,
.program-dashboard-card .pdop_feature_cards_grid.five-grid {
  grid-template-columns: repeat(5, 1fr) !important;
}

.pdop_feature_cards_grid.six-grid,
.program-dashboard-card .pdop_feature_cards_grid.six-grid {
  grid-template-columns: repeat(6, 1fr) !important;
}

@media (max-width: 1199.98px) {
  .pdop_feature_cards_grid.five-grid,
  .program-dashboard-card .pdop_feature_cards_grid.five-grid,
  .pdop_feature_cards_grid.six-grid,
  .program-dashboard-card .pdop_feature_cards_grid.six-grid {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}



@media (max-width: 767.98px) {
  .pdop_feature_cards_grid.three-grid,
  .program-dashboard-card .pdop_feature_cards_grid.three-grid,
  .pdop_feature_cards_grid.four-grid,
  .program-dashboard-card .pdop_feature_cards_grid.four-grid,
  .pdop_feature_cards_grid.five-grid,
  .program-dashboard-card .pdop_feature_cards_grid.five-grid,
  .pdop_feature_cards_grid.six-grid,
  .program-dashboard-card .pdop_feature_cards_grid.six-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
/* ==========================================================================
   Feature Card — Repeater Data List
   ========================================================================== */
.pdop_feature_card_repeater_list {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.pdop_feature_card_repeater_item {
  padding: 14px 0;
  border-bottom: 1px solid #e8e8e8;
}

.pdop_feature_card_repeater_item:first-child {
  padding-top: 0;
}

.pdop_feature_card_repeater_item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.pdop_repeater_heading_wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}

.pdop_repeater_check_icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
}

.pdop_repeater_check_icon img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.pdop_repeater_heading {
  font-size: var(--body-base, 16px);
  font-weight: 700;
  color: var(--color-black, #111);
  font-family: var(--font-family-figtree);
  line-height: normal;
}

.pdop_repeater_description {
  padding-left: 32px;
  font-size: var(--body-base, 16px);
  font-weight: 400;
  color: #333;
  line-height: normal;
}

.pdop_repeater_description p {
  margin: 0;
}

/* ==========================================================================
   End Feature Card — Repeater Data List
   ========================================================================== */

.pdacc-action-buttons-wrapper{
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.content-slider-inner{
background: #fff;
    box-shadow: 0px 5px 10px 0px #00000040;
    height: 150px;
    border-radius: 20px;
    text-align: center;
    /* width: 50%; */
    margin: 20px;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
}
.content-slider-inner h3{
color: #2B3C73;
font-family: var(--font-family-figtree);
font-size: 25px;
font-weight: 600;
line-height: normal;
text-align: center;
}
.contentSliderGroup{
    width: 65%;
    margin: 0 auto;
}
.contentSliderGroup .swiper-button-prev{
      left: 46px;
}
.contentSliderGroup .swiper-button-next{
      right: 46px;
}

/* ========== Yellow Card Section ========== */
.pdop_yellow_card {
  background-color: #D4DF3D;
  padding: 40px;
  border-radius: 15px;
  position: relative;
}

/* .pdop_yellow_card_desc {
  color: #1A2F46;
  font-size: 24px;
  font-weight: 600;
  line-height: 34px;
} */
.iframe-sectio-bg{
  position: relative;
}
.iframe-sectio-bg::before {
    position: absolute;
    content: "";
    top: 800px;
    right: 0;
    width: 168px;
    height: 380px;
    background-image: url("/wp-content/uploads/2026/07/iframe-bg-icon.png");
    background-repeat: no-repeat;
    background-position: 100% 106%;
    background-size: contain;
    z-index: auto;
    transform: rotate(180deg);
}
.iframe-sectio-bg::after {
    position: absolute;
    content: "";
    top: 220px;
    left: 0;
    width: 187px;
    height: 420px;
    background-image: url("/wp-content/uploads/2026/07/iframe-bg-icon.png");
    background-repeat: no-repeat;
    background-position: 100% 106%;
    background-size: contain;
    z-index: auto;
}
.pdop_yellow_card_desc p {
  margin: 0;
  color: #1A2F46;
  font-size: 24px;
  font-weight: 600;
  line-height: 34px;
}

.pdop_yellow_card_icon {
  position: absolute;
    top: 2px;
    right: -20px;
}

.pdop_yellow_card_icon img {
  max-width: 50px;
  height: auto;
}

@media (max-width: 767.98px) {
  .pdop_yellow_card {
    padding: 20px;
  }
  .pdop_yellow_card_desc {
    font-size: 16px;
    max-width: 80%;
  }
  .pdop_yellow_card_icon img {
    max-width: 40px;
  }
}

@media (max-width: 575.98px) {
  .pdop_yellow_card_desc {
    font-size: 14px;
    max-width: 75%;
  }
  .pdop_yellow_card_icon {
    top: 10px;
    right: 15px;
  }
  .pdop_yellow_card_icon img {
    max-width: 35px;
  }
}

/* ==========================================================================
   Gravity Forms Confirmation Message UI
   ========================================================================== */

/* Main container for the thank you message */
.gform_confirmation_wrapper {
  background-color: #fdffe0; /* Light lavender background that fits the theme */
  border: 1px solid #f9ffa2; /* Theme's dark blue for definition */
  border-radius: 15px; /* Smooth rounded corners */
  padding: 40px 30px; /* Generous breathing room */
  margin: 30px 0 0 0; /* Spacing from surrounding elements */
  text-align: center; /* Center alignment for a cleaner look */
  box-shadow: 0 4px 15px rgba(43, 60, 115, 0.08); /* Subtle soft shadow */
  height: 300px;
  display: flex;
  align-items: center;
}

/* The actual confirmation text */
.gform_confirmation_wrapper .gform_confirmation_message {
  color: #2b3c73; /* Dark blue text for strong readability */
  font-size: 22px; /* Slightly larger size to stand out */
  font-weight: 700; /* Bold font weight */
  font-family: var(--font-family-figtree, sans-serif); /* Use the theme's font */
  line-height: 1.5; /* Comfortable line height */
  margin: 0; /* Remove default paragraph margins */
}

/* ==========================================================
   Create Amilia Account Section
   ========================================================== */
.create-amilia-account {
    position: relative;
    z-index: 1;
}
.card-with-background{
  border-radius: 20px;
    padding: 60px;
    margin-bottom: 50px;

}
section:last-child .card-with-background {
  margin-bottom: 0;
}
.card-with-background .program-faq-wrap{
  margin-bottom: 0;
}
.amilia-account-grid {
    display: grid;
    grid-template-columns: 1.2fr 1.8fr;
    gap: 100px;
    align-items: flex-start;
  
}
.information-and-faq-section .pdop-faq-section{
  margin-top: 50px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.information-and-faq-section .program_faq_heading{
    display: flex;
  flex-direction: column;
  gap: 10px;
}
.information-and-faq-section .amilia-main-heading{
  text-transform: uppercase;
  font-weight: 800;
}
.amilia-left-col {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.amilia-main-heading {
 color: var(--color-black);
font-size: 32px;
font-weight: 700;
line-height: normal;
}

.amilia-description {
    font-size: var(--body-base);
    color: var(--color-black);
 font-weight: 400;
}

.amilia-video-heading {
 color: var(--color-black);
font-size: 18px;
font-weight: 700;
margin-top: 20px;
}

.amilia-video-container {
    margin-top: 5px;
    border-radius: 12px;
    overflow: hidden;
    background: #000;
}

.video-iframe-wrapper iframe, .video-url-wrapper iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: none;
    display: block;
}

.amilia-right-col {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.amilia-steps-list {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.amilia-step-card {
    background: #FFF9EE;
    /* border: 1px solid #F9AC1B; */
    border-radius: 20px;
    padding: 30px;
    box-shadow: 6px 6px 0 0 #F9AC1B, 0 69px 69px 0 rgba(0, 0, 0, 0.09), 0 17px 38px 0 rgba(0, 0, 0, 0.10);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.step-heading {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 0;
}

.step-description p{
  color: #000;
font-size: 20px;
font-weight: 400;
}

.amilia-buttons {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

@media (max-width: 991.98px) {
    .amilia-account-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}
.registration-announcement-section{
  margin-bottom: 50px;
}
/* ==========================================================
   Register Online Steps Section
   ========================================================== */

/* ── Section wrapper ─────────────────────────────────────── */
.register-online-step-section {
    position: relative;
    z-index: 1;
    padding: 60px 0 0;
}
.register-online-step-section::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 187px;
    height: 420px;
    background-image: url(/wp-content/uploads/2026/03/pdop_half_leaf.svg);
    background-repeat: no-repeat;
    background-position: 100% 106%;
    background-size: contain;
      z-index: -1;
}
.register-online-step-section::before {
    position: absolute;
    content: "";
    bottom: 0;
    right: 0;
    width: 168px;
    height: 380px;
    background-image: url(/wp-content/uploads/2026/03/pdop_half_leaf.svg);
    background-repeat: no-repeat;
    background-position: 100% 106%;
    background-size: contain;
       z-index: -1;
    transform: rotate(180deg);
}

/* ── Main heading ────────────────────────────────────────── */
.ros-main-heading {
    text-align: center;
    color: #fff;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 50px;
}

/* ── Steps row ───────────────────────────────────────────── */
.ros-steps-row {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0;
    margin-bottom: 50px;
    flex-wrap: nowrap;
}

/* ── Single step item ────────────────────────────────────── */
.ros-step-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1;
    min-width: 0;
    padding: 0 12px;
    gap: 40px;
}

/* ── Number + connector row ──────────────────────────────── */
.ros-step-number-wrap {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
    position: relative;
    margin-bottom: 0;
}

/* ── Numbered circle ─────────────────────────────────────── */
.ros-step-circle {
    width: 136px;
    height: 136px;
    min-width: 136px;
    border-radius: 50%;
    border: 1px solid var(--Oak---Sky-Blue, #009AD0);
    background: var(--Oak---Blue, #2B3C73);
    box-shadow: 0 69px 69px 0 rgba(0, 0, 0, 0.09), 0 17px 38px 0 rgba(0, 0, 0, 0.10);
    backdrop-filter: blur(15px);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    text-align: center;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #FFF;
    font-family: Figtree;
    font-size: 70px;
    font-style: normal;
    font-weight: 800;
    color: #2B3C73;
}

/* ── Dashed connector between circles ───────────────────── */
.ros-step-connector {
    flex: 1;
    height: 0;
    border-top: 2px dashed #F4F0FF;
    margin: 0 -4px;
    position: absolute;
    top: 50%;
    z-index: auto;
    width: 84%;
    right: -161px;
    margin: 0 auto;
}

/* ── Yellow "Step" badge ─────────────────────────────────── */
.ros-step-tag {
    display: inline-block;
    background: #D0DD28;
    color: #2B3C73;
    font-size: var(--body-base);
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 4px 20px;
    border-radius: 20px;
    margin-bottom: 0;
    text-transform: capitalize;
        position: absolute;
    z-index: 2;
    bottom: -6px;
}

/* ── Step card heading ───────────────────────────────────── */
.ros-step-heading {
  color: #FFF;
text-align: center;
font-family: var(--font-family-figtree);
font-size: 22px;
font-weight: 700;
}

/* ── Step card description ───────────────────────────────── */
.ros-step-desc p{
    font-size: var(--body-base);
    font-weight: 400;
    color: #E2E2E2;
text-align: center;
font-family: var(--font-family-figtree);
font-weight: 400;
}
.ros-step-desc p {
    margin: 0;
}
.ros-step-desc a {
    color: #F9AC1B;
    text-decoration: underline;
}

.ros-step-data-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* ==========================================================
   Bottom Info Card
   ========================================================== */

/* ── Info card: block layout (white card, no flex) ───────── */
.ros-info-card {
    background: #2b3c73;
    display: block;
    border-radius: 20px;
border: 1px solid var(--Oak-Blue-Divider, #6272A6);
padding: 30px;
}

/* ── Full-width seasonal top ─────────────────────────────── */
.ros-seasonal-top {
    margin-bottom: 30px;
}

/* ── Seasonal Registration Periods heading ───────────────── */
.ros-seasonal-heading {
    font-size: var(--body-medium);
    font-weight: 600;
    color: #fff;
    margin-bottom: 10px;
}

/* ── Seasonal description ────────────────────────────────── */
.ros-seasonal-desc p{
    font-size: var(--body-base);
    color: #fff;
    font-weight: 400;
    margin-bottom: 0;
}
.ros-seasonal-desc p {
    margin: 0;
}

/* ── Two-column bottom row ───────────────────────────────── */
.ros-card-bottom-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 60px;
    /* padding-top: 24px; */
    /* border-top: 1px solid #e5e5e5; */
    align-items: flex-start;
}

/* ── Each column ─────────────────────────────────────────── */
.ros-bottom-col {
 display: flex;
    flex-direction: column;
    gap: 10px;
    border-right: 1px solid #6272A6;
    padding-right: 60px;
}
.ros-card-bottom-row .ros-bottom-col:last-child {
   border-right: 0;
    padding-right: 0;
}
/* ── Right col: text + map side by side ──────────────────── */
.ros-right-content {
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: flex-start;
    width: 100%;
}

/* ── Register In Person text area ───────────────────────── */
.ros-register-text {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* ── Map area: iframe + button ───────────────────────────── */
.ros-map-area {
    /* flex: 0 0 253px; */
    width: 253px;
    height: 147px;
    border-radius: 20px;
    overflow: hidden;
    border: 2px solid #F9AC1B;
    display: flex;
    flex-direction: column;
    position: relative;
}

/* ── Map iframe wrapper ──────────────────────────────────── */
.ros-map-iframe-wrapper {
    display: block;
    width: 100%;
    flex: 1;
}
.ros-map-iframe-wrapper iframe {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
}

/* ── Get Directions button inside map area ───────────────── */
/* .ros-map-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #F9AC1B;
    width: 100%;
}
.ros-map-btn .pdop_btn,
.ros-map-btn a {
    width: 100%;
    justify-content: center;
    border-radius: 0;
    background: #F9AC1B;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
} */
.ros-map-btn{
      position: absolute;
    bottom: 8px;
    margin: 0 auto;
    left: auto;
    right: auto;
    width: 100%;
    text-align: center;
}
/* ── Detail heading ──────────────────────────────────────── */
.ros-detail-heading {
    font-size: var(--body-base);
    font-weight: 700;
    color: #fff;
    margin: 0;
}

/* ── Detail sub-heading ──────────────────────────────────── */
.ros-detail-sub-heading {
    font-size: var(--body-base);
    font-weight: 600;
    color: #fff;
    margin: 7px 0 0 0;
}

/* ── Contact list ────────────────────────────────────────── */
.ros-contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.ros-contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ros-contact-icon {
    width: 18px;
    height: 18px;
    object-fit: contain;
    flex-shrink: 0;
}

.ros-contact-link,
.ros-contact-text {
    font-size: 14px;
    font-weight: 400;
    color: #fff;
    text-decoration: none;
}
.ros-contact-link:hover {
    text-decoration: underline;
    color: #009AD0;
}

/* ── Hours row: date on left, time pushed right ──────────── */
.ros-hours-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
    color: #fff;
    font-weight: 400;
    gap: 12px;
    border-top: 1px solid #6272A6;
    padding-top: 10px;
}

.ros-hours-time {
    font-weight: 500;
}


/* ── Section wrapper ─────────────────────────────────────── */
.register-online-step-section {
    position: relative;
    z-index: 1;
    padding: 0 0 0;
}

/* -- Download Amilia App Section ----------------------------- */
.download-amilia-app-section {
    padding: 80px 0;
}
.daa-card-wrapper {
    background-color: #FCFFDA;
    border-radius: 20px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* align-items: center; */
    padding: 50px 70px;
    gap: 50px;
    position: relative;
    margin-bottom: 50px;
}

/* Left Column */
.daa-left-col {
    min-width: 0;
}
.daa-main-heading {
    font-size: 32px;
    font-weight: 700;
    font-family: var(--font-family-figtree);
    color: var(--color-black);
    margin-bottom: 20px;
}
.daa-app-links {
    display: flex;
    gap: 20px;
    /* flex-wrap: wrap; */
}
.daa-app-link-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.daa-app-link-heading {
    font-size: var(--body-base);
  color: var(--color-black);
  font-weight: 400;
}
.daa-app-button {
    display: inline-block;
}
.daa-app-button img {
    height: 48px;
    width: auto;
    object-fit: contain;
}

/* Middle Column */
.daa-mid-col {
    min-width: 0;
}
.daa-included-heading {
    font-size: 20px;
    font-weight: 600;
    font-family: var(--font-family-figtree);
    color: var(--color-black);
    margin: 0 0 16px 0;
}
.daa-included-desc ul {
    list-style: none;
    padding: 0;
    margin: 0;
        display: flex;
    flex-direction: column;
    gap: 10px;
}
.daa-included-desc ul li {
 font-family: var(--font-family-figtree);
    color: var(--color-black);
font-size: var(--body-medium);
font-weight: 400;
position: relative;
padding-left: 30px;
}
.daa-included-desc ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 18px;
    height: 18px;
    background-image: url('/wp-content/uploads/2026/04/tick_svg.svg');
    background-size: contain;
    background-repeat: no-repeat;
}

/* Right Column */
.daa-right-col {
    display: flex;
    justify-content: center;
    position: relative;
}
.daa-image-wrapper {
    position: absolute;
    bottom: -110px;
    right: 0;
    width: 345px;
    z-index: 2;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    overflow: hidden;
}
.daa-app-image {
    width: 100%;
    height: auto;
    display: block;
}
.pdop-accordion-main-wrap .accordion-main-heading{
  font-size: var(--h3-2-size);
    font-weight: var(--fw-extrabold);
    margin-bottom: 20px;
    color: var(--color-black);
    text-transform: uppercase;
    font-family: var(--font-family-figtree);
}
.mcc-layout-new-grid .mcc-cards-main-wrapper{
    display: grid;
  grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
.mcc-layout-new-grid .mcc-card-inner{
  display: flex;
  flex-direction: column;
}
.mcc-layout-new-grid .mcc-card{
  padding:0 ;
  border-bottom: 0;
}
.mcc-layout-new-grid .mcc-image-box {
    height: 750px;
}
.mcc-layout-new-grid .mcc-description{
margin-bottom: 0;
}
.mcc-layout-new-grid .mcc-card-heading {
    font-size: 20px;
}
.mcc-layout-new-grid .mcc-number {
    font-size: 100px;
}
.mcc-layout-new-grid{
  margin-bottom: 50px;
}
.banner-two-sections-btn-wrapper{
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.pdop_feature_card_item.gridrow{flex-direction: row;}
.gridrow .pdop_feature_card_content{
    text-align: left;
    flex: 1;
}
.gridrow .pdop_feature_card_image_wrapper{
    width: 218px;
    height: 218px;
    aspect-ratio: auto;
}
.gridrow .pdop_feature_card_content{
  flex: 1;
}
.content-link svg{
      flex-shrink: 0;
}
.dt-container .dt-layout-row.dt-layout-table .dt-layout-cell {
    overflow-x: scroll !important;
}
.tablepress>:not(caption)>*>* {
    white-space: nowrap;
}
.only-video-added-center{
  width: 80%;
  margin: 0 auto;
}
.has-repeater-data .pdop_feature_card_content{
text-align: left;
}
.has-repeater-data .pdop_feature_card_title{
color: #333;
font-family: var(--font-family-figtree);
font-size: 24px;
font-weight: 700;
text-transform: uppercase;
margin-bottom: 4px !important;
}
.has-repeater-data{
  gap:30px
}

/* ==========================================================
   Time Line with Feature Card Grid  (.tlfc-*)
   ========================================================== */
.tlfc-cards-col .pdop_feature_card_image_wrapper{
  width: 219px;
  height: 176px;
}

.tlfc-timeline-wrap {
    display: flex;
    flex-direction: column;
}

/* ── Single row (one timeline entry) ── */
.tlfc-row {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 0 40px;
    position: relative;
}

/* Offset alternate rows so the connector line is continuous */
.tlfc-row + .tlfc-row {
    margin-top: 0;
}

/* ── Left: node column ── */
.tlfc-timeline-node-col {
    display: flex;
    justify-content: center;
}

.tlfc-node-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

/* Vertical connector lines above/below the bubble */
.tlfc-connector {
    width: 3px;
    flex: 1;
    background-color: #ddd;
    min-height: 20px;
}

/* Hide top connector on first row, bottom on last row */
.tlfc-row:first-child .tlfc-connector--top {
    visibility: hidden;
}

.tlfc-row:last-child .tlfc-connector--bottom {
    visibility: hidden;
}

/* ── Icon bubble ── */
.tlfc-icon-bubble {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #ddd;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    z-index: 1;
}

.tlfc-icon-bubble .tlfc-icon-img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

/* ── Timeline heading label ── */
.tlfc-timeline-heading {
    font-family: var(--font-family-figtree, 'Figtree', sans-serif);
    font-size: 14px;
    font-weight: 700;
    color: #2B3C73;
    text-transform: uppercase;
    text-align: center;
    margin-top: 8px;
    letter-spacing: 0.04em;
    line-height: 1.3;
}

/* ── Right: cards column ── */

.tlfc-section-title {
    margin-bottom: 20px;
}

/* ── Card border colour from --tlfc-card-border CSS var ── */
.tlfc-cards-col .pdop_feature_card_item {
    border-color: var(--tlfc-card-border, #F9AC1B) !important;
    box-shadow: 6px 6px 0 0 var(--tlfc-card-border, #F9AC1B),
                0 69px 69px 0 rgba(0,0,0,.09),
                0 17px 38px 0 rgba(0,0,0,.10) !important;
}

/* ── Remove extra bottom padding from the inner feature grid wrap ── */
.tlfc-cards-col .feature-grid-wrap.pdop-program-section-wrap {
    padding-bottom: 0 !important;
}



/* ==========================================================
   TLFC – Full-width section heading (season label)
   ========================================================== */

/* Full-width heading row: icon bubble + season text */
.tlfc-section-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    margin-bottom: 12px;
    padding-top: 10px;
}

/* Icon bubble reused inside the heading row */
.tlfc-section-heading .tlfc-section-icon {
    flex-shrink: 0;
}

/* Season label text (WINTER / SPRING / etc.) */
.tlfc-heading-text {
    font-family: var(--font-family-figtree, 'Figtree', sans-serif);
    font-size: 22px;
    font-weight: 800;
    color: #2B3C73;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin: 0;
    line-height: 1.2;
}

/* Small coloured dot in the left connector column (replaces icon bubble there) */
.tlfc-connector-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #ddd;
    flex-shrink: 0;
    z-index: 1;
}

/* Responsive */
@media (max-width: 767.98px) {
    .tlfc-heading-text {
        font-size: 18px;
    }
}

/* ==========================================================
   TIME LINE WITH FEATURE CARD GRID  — Full redesign
   Matches screenshot: continuous left line, season icon on
   line, season label full-width, row-layout cards with
   season-coloured border.
   ========================================================== */

/* ── CSS custom property: timeline node column width ── */
.tlfc-section  { --tlfc-node-w: 70px; }

/* ── Outer section ── */

/* ── Timeline wrap: draws the continuous vertical line ── */
.tlfc-timeline-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
}

/* Continuous vertical line behind all entries */
.tlfc-timeline-wrap::before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(var(--tlfc-node-w) / 2);
    width: 2px;
    height: 100%;
    background-color: #ddd;
    z-index: 0;
}

/* ── Single season entry ── */
.tlfc-entry {
    position: relative;
    margin-bottom: 30px;
}
.tlfc-entry:last-child {
    margin-bottom: 0;
}

/* ══ Season heading row (full-width: icon + label) ══ */
.tlfc-entry-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
    position: relative;
    z-index: 1;
}

/* ── Shared node column: same width in heading AND body ── */
.tlfc-node-col {
    width: var(--tlfc-node-w);
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* ── Season icon bubble ── */
.tlfc-icon-bubble {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background-color: #ddd;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    position: relative;
    z-index: 2;
    box-shadow: 0 0 0 3px #fff;  /* white ring separates icon from line */
}

.tlfc-icon-bubble .tlfc-icon-img {
    width: 26px;
    height: 26px;
    object-fit: contain;
}

/* ── Season label text ── */
.tlfc-season-label {
    font-family: var(--font-family-figtree, 'Figtree', sans-serif);
    font-size: 20px;
    font-weight: 800;
    color: #1a1a1a;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0;
    line-height: 1;
}

/* ══ Body row: left line col + cards col ══ */
.tlfc-entry-body {
    display: grid;
    grid-template-columns: var(--tlfc-node-w) 1fr;
    gap: 0 20px;
    position: relative;
    z-index: 1;
}

/* ── Left line column (body) ── */
.tlfc-node-col--line {
    display: flex;
    justify-content: center;
    align-items: stretch;
}

.tlfc-line {
    width: 2px;
    background-color: transparent;  /* line already drawn by ::before on wrap */
    flex: 1;
}

/* ── Cards column ── */
.tlfc-cards-col {
    padding-bottom: 60px;
    min-width: 0;
    margin-top: 10px;
}

/* Remove extra inner padding from feature-grid-wrap inside timeline */
.tlfc-cards-col .feature-grid-wrap.pdop-program-section-wrap {
    padding-bottom: 0 !important;
}

/* ── Card border colour: driven by --tlfc-card-border from PHP ── */
.tlfc-cards-col .pdop_feature_card_item {
    border-color: var(--tlfc-card-border, #F9AC1B) !important;
    box-shadow: 6px 6px 0 0 var(--tlfc-card-border, #F9AC1B),
                0 4px 20px rgba(0,0,0,0.07) !important;
}


/* ==========================================================
   TLFC — Per-season coloured line (--tlfc-line-color)
   Overrides the global ::before approach with per-entry lines.
   ========================================================== */

/* Remove the single global gray line */
.tlfc-timeline-wrap::before {
    display: none;
}

/* ── Heading node col: draw line above and below the icon ── */
.tlfc-entry-heading .tlfc-node-col {
    position: relative;
    align-self: stretch;
    flex-direction: column;
    gap: 0;
}

/* Line ABOVE the icon (from top of entry down to icon centre) */
.tlfc-entry-heading .tlfc-node-col::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: calc(50% - 23px);
    background-color: var(--tlfc-line-color, #ddd);
}

/* Line BELOW the icon (from icon centre to bottom of heading row) */
.tlfc-entry-heading .tlfc-node-col::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: calc(50% - 23px);
    background-color: var(--tlfc-line-color, #ddd);
}

/* Hide top segment on the very first entry */
.tlfc-entry--first .tlfc-entry-heading .tlfc-node-col::before {
    display: none;
}

/* ── Body node col: full-height coloured line ── */
.tlfc-node-col--line {
    align-items: center;
}

.tlfc-line {
    width: 2px;
    flex: 1;
    min-height: 20px;
    background-color: var(--tlfc-line-color, #ddd);
    margin: 0 auto;
}

/* ==========================================================
   TLFC — Full-width section title above each entry
   ========================================================== */

/* Full-width h3 at the very top of each timeline entry */
.tlfc-entry-top-title {
   color: #000;
font-size: 32px;
font-weight: 700;
line-height: normal; 
margin-bottom: 40px;
}

/*
 * Hide the duplicate section_title that feature-card-grid.php
 * renders inside the cards column (.pdop-program-section-wrap).
 * We render it ourselves at the top of the entry.
 */
.tlfc-cards-col .feature-grid-wrap .pdop_feature_grid_section_title {
    display: none;
}

/* ==========================================================
   TLFC — VERTICAL LINE FIX (overrides all previous rules)
   ========================================================== */

/* Body: left column must be a vertical flex column */
.tlfc-entry-body {
    display: grid;
    grid-template-columns: var(--tlfc-node-w, 70px) 1fr;
    gap: 0 20px;
    align-items: stretch;    /* stretch both columns to same height */
}

.tlfc-node-col--line {
    display: flex;
    flex-direction: column;  /* vertical stack so .tlfc-line fills height */
    justify-content: stretch;
    align-items: center;
    min-height: 30px;
}

/* The actual coloured vertical line */
.tlfc-line {
    width: 2px;
    flex: 1;
    min-height: 30px;
    background-color: var(--tlfc-line-color, #ddd);
    margin: 0 auto;
    display: block;
}

/* ── Heading node col: must stretch full row height ── */
.tlfc-entry-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 0;
    position: relative;
    z-index: 1;
    min-height: 60px;
}

.tlfc-entry-heading .tlfc-node-col {
    position: relative;
    align-self: stretch;     /* stretch to full heading row height */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0;
}

/* Line ABOVE icon — from top of heading row to icon top edge */
.tlfc-entry-heading .tlfc-node-col::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    bottom: calc(50% + 23px);    /* stop at icon top */
    height: auto;
    background-color: var(--tlfc-line-color, #ddd);
}

/* Line BELOW icon — from icon bottom to end of heading row */
.tlfc-entry-heading .tlfc-node-col::after {
    content: '';
    position: absolute;
    top: calc(50% + 23px);       /* start at icon bottom */
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    bottom: 0;
    height: auto;
    background-color: var(--tlfc-line-color, #ddd);
}

/* Hide top line segment on the very first season entry */
.tlfc-entry--first .tlfc-entry-heading .tlfc-node-col::before {
    display: none;
}

/* Disable the old ::before global line — keep hidden */
.tlfc-timeline-wrap::before {
    display: none !important;
}

/* Entry spacing */
.tlfc-entry {
    margin-bottom: 0;
}

/* ── Responsive ── */
/* @media (max-width: 991.98px) {
    .tlfc-section { --tlfc-node-w: 54px; }

    .tlfc-icon-bubble {
        width: 38px;
        height: 38px;
    }

    .tlfc-icon-bubble .tlfc-icon-img {
        width: 20px;
        height: 20px;
    }

    .tlfc-season-label {
        font-size: 17px;
    }

    .tlfc-entry-body {
        gap: 0 14px;
    }
}

@media (max-width: 575.98px) {
    .tlfc-section { --tlfc-node-w: 44px; }

    .tlfc-timeline-wrap::before {
        left: calc(var(--tlfc-node-w) / 2);
    }

    .tlfc-icon-bubble {
        width: 32px;
        height: 32px;
    }

    .tlfc-icon-bubble .tlfc-icon-img {
        width: 16px;
        height: 16px;
    }

    .tlfc-season-label {
        font-size: 15px;
    }
        .tlfc-row {
        grid-template-columns: 1fr;
    }

    .tlfc-timeline-node-col {
        flex-direction: row;
        gap: 16px;
        justify-content: flex-start;
        align-items: center;
        margin-bottom: 16px;
    }

    .tlfc-node-wrapper {
        flex-direction: row;
        align-items: center;
        gap: 12px;
    }

    .tlfc-connector {
        display: none;
    }

    .tlfc-timeline-heading {
        margin-top: 0;
    }
}

@media (max-width: 767.98px) {
    .tlfc-row {
        grid-template-columns: 60px 1fr;
        gap: 0 20px;
    }

    .tlfc-icon-bubble {
        width: 52px;
        height: 52px;
    }

    .tlfc-icon-bubble .tlfc-icon-img {
        width: 28px;
        height: 28px;
    }

    .tlfc-timeline-heading {
        font-size: 11px;
    }

    .tlfc-cards-col {
        padding: 0 0;
    }
} */
