/* Feature Section block styles.
   Extracted from template-parts/blocks/feature_section.php — DO NOT redefine inline.
   Loaded by lucern_block_assets('feature_section') from the block template. */

/* =========================================
         EXISTING STYLES (Standard Layout)
         ========================================= */

      /* Subtitle h2 reset — keep lead-text style, no h2 decorations */
      .feature-section h2.subtitle.lead-text,
      .feature-style-steps h2.subtitle.lead-text,
      .feature-style-table h2.subtitle.lead-text,
      .feature-style-video h2.subtitle.lead-text {
          text-transform: none;
          padding: 0;
      }

      h2.subtitle.lead-text::before,
      h2.subtitle.lead-text::after {
          display: none;
      }

      /* List header (title + desc above list items) */
      .feature-list-header {
          margin-top: var(--size-13);
      }

      @media (max-width: 768px) {
          .feature-list-header {
              margin-top: 48px;
          }

          /* Brust archive only: tighter title/desc typography on mobile */
          .post-type-archive-brust .feature-list-header__title {
              font-size: 16px;
              line-height: 20px;
          }

          .post-type-archive-brust .feature-list-header__desc {
              font-size: var(--fs-normal);
              line-height: 25px;
          }
      }

      .feature-list-header__title {
          font: normal normal 600 20px/32px var(--font-heading);
          letter-spacing: 0px;
          color: #2D2D2D;
          text-decoration: none;
          padding: 0;
          margin-bottom: var(--size-3);
      }

      .feature-list-header__title::before,
      .feature-list-header__title::after {
          display: none;
      }

      .feature-list-header__desc {
          font: normal normal normal 18px/32px var(--font-body);
          color: var(--clr-neutral-700, #555);
      }

      ul.feature-list {
          display: grid;
          gap: var(--size-8);
          margin-top: var(--size-10);
          padding-left: 0;
      }

      .feature-item {
          align-items: center;
          gap: var(--size-6);
      }

      @media(max-width:768px) {
          .feature-item {
              align-items: flex-start;
          }
      }

      @media(max-width:640px) {
          .feature-item {
              gap: var(--size-3);
          }
      }

      .feature-item .feature-item__text {
          flex: 1 1 auto;
      }

      .feature-item h4 {
          font: normal normal 600 20px/24px var(--font-heading);
          padding-bottom: 5px;
          border-bottom: 1px solid var(--clr-primary-500);
      }

      @media(max-width:768px) {
          .feature-item h4 {
              font: normal normal 600 16px/20px var(--font-heading);
          }
      }

      .feature-item:not(:has(.feature-item__icon)) h4 {
          font: normal normal 600 20px/24px var(--font-heading);
      }

      @media (max-width: 768px) {
          .feature-item:not(:has(.feature-item__icon)) h4 {
              font: normal normal 600 16px/20px 'Montserrat', sans-serif;
          }
      }

      .feature-item p {
          font: normal normal 18px/32px var(--font-body);
      }

      @media(max-width:768px) {
          .feature-item p {
              font: normal normal normal 16px/25px var(--font-body);
          }

          .feature-item h4 {
              padding-bottom: 8px;
          }

          .feature-item__body.flow {
              padding-top: 8px;
          }
      }

      .feature-item__body.flow {
          padding-top: 5px;
      }

      .feature-item__body.flow > *:first-child {
          margin-top: 0;
      }

      .feature-item:not(:has(.feature-item__icon)) h4 {
          padding-bottom: 10px;
      }

      .feature-item__body.flow > * + * {
          margin-top: 0.5em;
      }

      @media (max-width: 768px) {
          .feature-item__body li {
              font: normal normal normal 16px/25px 'Open Sans', sans-serif;
          }
      }

      .feature-item__body h4,
      .feature-item__body h5,
      .feature-item__body strong {
          font-weight: 600;
      }

      .feature-item__body ul,
      .feature-item__body ol {
          padding-left: 0;
          list-style: none;
          /* Lists in the feature item body get a small top breathing
             room so they separate from the heading above. */
          margin-top: 0.4em;
      }

      .feature-item__body li {
          position: relative;
          padding-left: 1em;
          /* Per-item vertical breathing room between list items. */
          margin-top: 0.4em;
      }

      .feature-item__body li::before {
          content: '-';
          position: absolute;
          left: 0;
      }

      .feature-item .feature-item__icon img {
          @media(max-width:768px) {
              width: 40px;
              height: 40px;
          }
      }

      /* === Read More Logic (smooth) === */
      .feature-body-content {
          position: relative;
      }

      /* When truncated: hide full, show preview */
      .feature-body-content.is-truncated .feature-body__full {
          max-height: 0;
          overflow: hidden;
          transition: max-height 0.4s ease;
          margin: 0;
      }

      /* Arrow bullets for ul inside preview/full */
      .feature-body__preview ul,
      .feature-body__full ul {
          list-style: none;
          padding-left: 0;
      }

      .feature-body__preview ul li,
      .feature-body__full ul li {
          display: flex;
          align-items: baseline;
          gap: 10px;
      }

      .feature-body__preview ul li::before,
      .feature-body__full ul li::before {
          content: '';
          flex-shrink: 0;
          width: 18px;
          height: 10px;
          background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24.291' height='12.965' viewBox='0 0 24.291 12.965'%3E%3Cpath d='M83.741,524.743v-4.86H65.933v-3.248H83.741v-4.856l6.483,6.478Z' transform='translate(-65.933 -511.778)' fill='%232D2D2D'/%3E%3C/svg%3E") no-repeat center;
          background-size: contain;
          margin-top: 6px;
      }

      /* When expanded: hide preview, show full */
      .feature-body-content:not(.is-truncated) .feature-body__preview {
          display: none;
      }

      .feature-body-content:not(.is-truncated) .feature-body__ellipsis {
          display: none;
      }

      .feature-body-content:not(.is-truncated) .feature-body__full {
          max-height: var(--full-height);
          overflow: hidden;
          transition: max-height 0.4s ease;
      }

      .feature-body__images {
          margin-top: 60px;
      }

      .feature-read-more {
          background-color: transparent;
          font: normal normal 600 16px/19px var(--font-heading);
          color: var(--clr-neutral-800, #666);
          text-decoration: none;
          display: inline-flex;
          align-items: baseline;
          gap: 6px;
          transition: color .2s;
          text-decoration: underline;
          margin-top: 0.5rem;
          border: none;
          padding: 0;
          cursor: pointer;
      }

      .feature-read-more:hover {
          color: var(--clr-neutral-500, #555);
      }

      @media (max-width: 768px) {
          .feature-read-more {
              margin-top: 0;
              font-size: 12px;
              line-height: 15px;
          }
      }

      .feature-read-more__icon {
          font-size: 1.2rem;
          transition: transform 0.2s ease;
      }

      .feature-body-content:not(.is-truncated) .feature-read-more__icon {
          transform: rotate(-90deg);
      }

      /* === List Show More === */
      .feature-item--hidden {
          display: none;
      }

      .feature-list--expanded .feature-item--hidden {
          display: flex;
          animation: featureItemReveal 0.35s ease forwards;
      }

      @keyframes featureItemReveal {
          from { opacity: 0; transform: translateY(-8px); }
          to   { opacity: 1; transform: translateY(0); }
      }

      .feature-list-showmore {
          background-color: transparent;
          font: normal normal 600 16px/19px var(--font-heading);
          color: var(--clr-neutral-800, #666);
          text-decoration: underline;
          display: inline-flex;
          align-items: baseline;
          gap: 6px;
          transition: color .2s;
          margin-top: 64px;
          border: none;
          padding: 0;
          cursor: pointer;
      }

      @media (max-width: 768px) {
          .feature-list-showmore {
              margin-top: 43px;
          }
      }

      .feature-list-showmore:hover {
          color: var(--clr-neutral-500, #555);
      }

      .feature-list-showmore__icon {
          font-size: 1.2rem;
          transition: transform 0.3s ease;
      }

      .feature-list--expanded + .feature-list-showmore .feature-list-showmore__icon {
          transform: rotate(90deg);
      }

      /* Show-more header (title + desc inside expanded section) */
      .feature-list-more-header {
          display: none;
          flex-direction: column;
          margin-top: var(--size-13);
      }

      .feature-list--expanded .feature-list-more-header {
          display: flex;
          animation: featureItemReveal 0.35s ease forwards;
      }

      /* === Buttons (Standard) === */
      .feature-item__buttons {
          margin-top: 0;
      }

      .feature-item__buttons h4 {
          font-size: 1.3rem;
          font-weight: var(--fw-semibold);
          margin-bottom: 0rem;
          text-align: left;
      }

      .feature-item__buttons--desktop-align {
          align-self: stretch;
          justify-self: start;
          display: flex;
          flex-direction: column;
      }

      @media (min-width: 998px) {
          /* 2026-06-17: Anais feedback, /haut/ alignment.
             Stretch the solution button column across its grid track so
             one-button and two-button sections share the same left edge. */
          .feature-item__buttons--desktop-align {
              align-self: start;
              justify-self: stretch;
              width: 100%;
              text-align: left;
          }
      }

      /* =========================================
         NEW STYLES (Accordion Cards / Gold & Gray)
         ========================================= */

         .variant-default .lead-text {
            /* font:normal normal 600 20px/32px var(--font-heading); */

            /* @media(max-width:768px) {
                font-size:1rem;
                line-height: 1.2;
            } */
         }

      .feature-accordions-grid {
          display: flex;
          flex-direction: column;
          gap: var(--size-5, 20px);
          max-width: 950px; /* 7 grid columns (7×122 + 6×16) */
          /* margin-top: var(--size-6, 1.5rem); */
      }

      /* Optional outro shown below the accordions grid: text left, button right.
         Stacks on mobile. Same max-width as the grid so they line up. */
      .feature-accordion-outro {
          display: flex;
          align-items: flex-start;
          gap: var(--size-6, 24px);
          margin-top: var(--size-9, 40px);
          max-width: 950px;
      }

      .feature-accordion-outro__text {
          flex: 1 1 auto;
          font: normal normal 400 16px/1.6 var(--font-body);
          color: var(--clr-neutral-700, #555);
      }

      .feature-accordion-outro__text p:last-child {
          margin-bottom: 0;
      }

      .feature-accordion-outro__button {
          flex-shrink: 0;
      }

      @media (max-width: 768px) {
          .feature-accordion-outro {
              flex-direction: column;
              align-items: flex-start;
              gap: var(--size-5, 20px);
              margin-top: var(--size-8, 32px);
          }

          .feature-accordion-outro__button {
              align-self: stretch;
          }
      }

      .feature-card {
          border-radius: 16px;
          padding: var(--size-6) var(--size-6); /* 24px - 32px */
          position: relative;
          transition: all 0.3s ease;
      }

      @media (min-width: 769px) {
          .feature-style-accordion .feature-card {
              padding: var(--size-6) var(--size-8);
          }
      }

      /* Brust archive: tint accordion feature cards */
      .post-type-archive-brust .feature-style-accordion .feature-card {
          background: #FAF6F0;
      }

      /* Variants */
      .feature-card--gold {
          background: linear-gradient(180deg, #E6E0CE 0%, #FAFAFA 100%);
          border: none;
      }

      .feature-card--gray {
          background-color: #F4F4F2;
          border: none;
      }

      /* Badge (Ribbon) */
      .feature-card__badge {
          position: absolute;
          top: -35px;
          right: 24px;
          z-index: 2;
          line-height: 0;
          filter: drop-shadow(0 2px 4px rgba(0,0,0,0.15));
      }

      @media (max-width: 768px) {
          .feature-card__badge svg {
              width: 100px;
              height: auto;
          }
      }

      /* Header (Title Area) */
      .feature-card__header {
          cursor: pointer;
          width: 100%;
          text-align: left;
          background: none;
          border: none;
          padding: 0;
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
      }

      .feature-card__titles {
          display: flex;
          flex-direction: column;
          gap: 4px;
      }

      .feature-card__title {
          font: normal normal 500 24px/1.3 var(--font-heading);
          margin: 0;
          color: var(--clr-neutral-800);

          @media(max-width:768px) {
            font: normal normal 500 22px/25px var(--font-heading);
          }
      }

      .feature-card__subtitle {
          font: normal normal 400 15px/1.5 var(--font-body);
          color: var(--clr-text-muted, #555);
          margin: 0;
      }

      /* Toggle Icon */
      .feature-card__toggle {
          width: 24px;
          height: 24px;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-shrink: 0;
          margin-top: 4px; /* Align with title */
          transition: transform 0.3s ease;
          color:var(--clr-neutral-800);
      }

      .feature-card__toggle svg {
          width: 100%;
          height: 100%;
          stroke: currentColor;
      }

      /* Content Body (Hidden by default) */
      .feature-card__content {
          display: grid;
          grid-template-rows: 0fr;
          transition: grid-template-rows 0.4s ease-out;
      }

      .feature-card.is-open .feature-card__content {
          grid-template-rows: 1fr;
      }

      .feature-card__inner {
          overflow: hidden;
      }

      /* Inner Content Spacing */
      .feature-card__blocks {
          padding-top: var(--size-6);
          display: flex;
          flex-direction: column;
          gap: var(--size-6);
      }

      /* Content Block Typography */
      .feature-block h3 {
          font: normal normal 600 18px/1.4 var(--font-heading);
          margin-bottom: var(--size-3);
      }

      /* Golden line on h3 only when followed by arrow list */
      .feature-block h3:has(+ .feature-arrow-list) {
          border-bottom: 1px solid #BAAE92;
          padding-bottom: 10px;
      }

      .feature-block p {
          font: normal normal 400 16px/1.6 var(--font-body);
          margin-bottom: 0.5em;
      }

      /* "Vorteil" title style */
      .feature-block__title--vorteil {
          border-bottom: 1px solid #BAAE92;
          padding-bottom: 10px;
      }

      /* Custom Bullet Lists inside Card */
      .feature-block ul {
          list-style: none;
          padding: 0;
          margin: 1rem 0;
      }

      .feature-block ul li {
          position: relative;
          padding-left: 0px;
          margin-bottom: 8px;
          font-size: 16px;
          line-height: 1.5;
      }


      /* Arrow List (Icon List) */
      .feature-arrow-list {
          list-style: none;
          padding: 0;
          margin: 0;
          display: flex;
          flex-direction: column;
          gap: 10px;
      }

      .feature-arrow-list__item {
          display: flex;
          align-items: baseline;
          gap: 10px;
          font: normal normal 400 16px/1.6 var(--font-body);
          color: var(--clr-text-main);
      }

      .feature-arrow-list__item.has-arrow .feature-arrow-list__icon {
          flex-shrink: 0;
          display: inline-flex;
          align-items: center;
          /* color: var(--clr-primary-500, #B8976A); */
          margin-top: 2px;
      }

      .feature-arrow-list__item.has-arrow .feature-arrow-list__icon svg {
          width: 24px;
          height: 13px;
      }

      /* Remove bullet points from arrow list items */
      .feature-arrow-list__item.has-arrow::before {
          display: none !important;
      }

      .feature-arrow-list__text {
          flex: 1;
          font: normal normal normal 18px/32px 'Open Sans', sans-serif;
      }

      /* Block Background Variant */
      .feature-block--has-bg {
          background-color: #F7F5F0;
          border-radius: 12px;
          padding: var(--size-5, 20px) var(--size-6, 24px);
      }

      .feature-card--gold .feature-block--has-bg {
          background-color: rgba(255, 255, 255, 0.45);
      }

      .feature-card--gray .feature-block--has-bg {
          background-color: rgba(255, 255, 255, 0.6);
      }

      .feature-block--has-bg h3 {
          margin-bottom: var(--size-3, 12px);
      }

      /* Footer Link */
      .feature-card__footer-link {
          /* margin-top: var(--size-6); */
          font-family: var(--font-heading, sans-serif);
          color: var(--clr-neutral-600, #666);
          text-decoration: underline;
          display: inline-flex;
          align-items: baseline;
          gap: 6px;
          transition: color .2s;
          font-weight: var(--fw-semibold, 600);
          font-size: 0.75rem;
          line-height: 1.25;
      }

      @media (min-width: 1024px) {
          .feature-card__footer-link {
              font-size: 1rem;
              line-height: 1.19;
          }
      }

      .feature-card__footer-link:hover {
          color: var(--clr-neutral-500, #555);
      }

      .feature-card__footer-link svg {
          width: 7px;
          height: 11px;
          flex-shrink: 0;
          align-self: center;
      }

      /* Static (Gray) cards — always open, no toggle */
      .feature-card--static .feature-card__content {
          grid-template-rows: 1fr;
      }

      .feature-card__header--static {
          cursor: default;
          width: 100%;
          text-align: left;
          padding: 0;
      }

      /* Icon State Swap (+ / -) */
      .feature-card .icon-minus { display: none; }
      .feature-card.is-open .icon-plus { display: none; }
      .feature-card.is-open .icon-minus { display: block; }

      /* =========================================
         COMPACT CARD STYLE (Vorteile Toggle Only)
         ========================================= */

      /* Compact: header is a plain div, not clickable */
      .feature-card--compact .feature-card__header,
      .feature-card--compact .feature-card__header--static {
          cursor: default;
      }

      /* Compact: content area always open (no collapse on entire card) */
      .feature-card--compact .feature-card__content {
          grid-template-rows: 1fr;
      }

      /* First content block(s) are always visible */
      .feature-card__always-visible {
          display: flex;
          flex-direction: column;
          gap: var(--size-6);
          padding-top: var(--size-6);
      }

      /* Vorteile toggle header */
      .feature-card__vorteile-header {
          display: flex;
          align-items: center;
          justify-content: space-between;
          width: 100%;
          cursor: pointer;
          background: none;
          border: none;
          border-bottom: 1px solid #BAAE92;
          padding: var(--size-3) 0;
          margin-top: var(--size-5);
          font: normal normal 600 18px/1.4 var(--font-heading);
          color: var(--clr-neutral-800);
      }

      .feature-card__vorteile-header:hover {
          opacity: 0.8;
      }

      .feature-card__vorteile-header .feature-card__toggle {
          margin-top: 0;
      }

      .feature-card__vorteile-header .feature-card__toggle svg {
          width: 10px;
          height: 10px;
      }

      /* Vorteile +/- icon swap */
      .feature-card--compact .feature-card__icon-minus { display: none; }
      .feature-card--compact.is-open .feature-card__icon-plus { display: none; }
      .feature-card--compact.is-open .feature-card__icon-minus { display: block; }

      /* Footer link spacing in compact cards */
      .feature-card--compact .feature-block-footer {
          margin-top: var(--size-5);
      }

      /* Collapsible Vorteile content — default closed, expand on .is-open */
      .feature-card__vorteile-content {
          display: grid;
          grid-template-rows: 0fr;
          transition: grid-template-rows 0.4s ease-out;
      }

      .feature-card--compact.is-open .feature-card__vorteile-content {
          grid-template-rows: 1fr;
      }

      .feature-card__vorteile-inner {
          overflow: hidden;
      }

      .feature-card__vorteile-inner .feature-card__blocks {
          padding-top: var(--size-4);
      }

      @media (max-width: 768px) {
          .feature-card__vorteile-header {
              font-size: 16px;
          }
      }

      /* =========================================
         STEPS LAYOUT (Numbered Accordion Sections)
         ========================================= */

      /* Buttons area with label */
      .feature-steps__buttons {
          margin-top: var(--size-6);
      }

      .feature-steps__buttons-label {
          display: block;
          font-family: var(--font-body);
          font-style: var(--font-style-normal);
          font-weight: var(--fw-normal);
          font-size: var(--fs-base);
          line-height: var(--lh-32);
          letter-spacing: var(--ls-normal);
          color: var(--clr-neutral-800);
          margin-bottom: var(--size-6);
      }

      .feature-steps__buttons-row {
          display: flex;
          flex-wrap: wrap;
          gap: var(--size-3, 12px);
      }

      @media (max-width: 768px) {
          .feature-steps__buttons-row .btn {
              width: 100%;
          }

          .feature-steps__buttons-label {
              font-size: 16px;
              line-height: 25px;
          }

          .feature-arrow-list__text {
              font: normal normal normal 16px/20px 'Open Sans', sans-serif;
          }

          .feature-arrow-list__item.has-arrow .feature-arrow-list__icon svg {
              width: 17px;
          }

          .feature-item__buttons h4 {
              font-size: var(--fs-normal);
              line-height: 25px;
          }

          .feature-item__buttons--desktop-align {
              width: 100%;
          }

          .feature-list-showmore__text {
              font-size: 12px;
              line-height: 15px;
          }
      }

      /* Media area */
      .feature-steps__media {
          margin-top: var(--size-12);
      }

      @media (max-width: 768px) {
          .feature-steps__media {
              margin-top: var(--size-8);
          }
      }

      .feature-steps__media img {
          width: 100%;
          height: auto;
          border-radius: 12px;
      }

      .feature-steps__media--video iframe,
      .feature-steps__media--video video {
          width: 100%;
          aspect-ratio: 16 / 9;
          height: auto;
          border-radius: 12px;
          border: none;
      }

      /* Steps heading */
      .feature-steps__heading {
          font: normal normal 600 22px/1.3 var(--font-heading);
          margin-top: var(--size-10, 2.5rem);
          margin-bottom: var(--size-6);
      }

      @media (max-width: 768px) {
          .feature-steps__heading {
              font-size: 18px;
          }
      }

      /* Steps cards container */
      .feature-style-steps .feature-steps__cards {
          display: flex;
          flex-direction: column;
          gap: var(--size-8, 32px);
          margin-top: 20px;
      }

      /* Step connector arrow — anchored to bottom of card */
      .feature-step-connector {
          position: absolute;
          bottom: -40px;
          left: 50%;
          transform: translateX(-50%);
          z-index: 1;
          pointer-events: none;
      }

      .feature-step-card:nth-last-child(2) .feature-step-connector {
          z-index: 1;
      }

      .feature-step-connector img {
          width: 91px;
          height: auto;
          display: block;
      }

      /* Individual step card */
      .feature-step-card {
          background: linear-gradient(180deg, #E6E0CE 0%, #FAFAFA 100%);
          border-radius: 16px;
          padding: var(--size-6) var(--size-6);
          position: relative;
          overflow: visible;
          transition: all 0.3s ease;
      }

      /* Step header (trigger) */
      .feature-step-card__header {
          cursor: pointer;
          width: 100%;
          text-align: left;
          background: none;
          border: none;
          padding: 0;
          display: flex;
          align-items: center;
          gap: var(--size-4, 16px);
      }

      /* Numbered circle */
      .feature-step-card__number {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 36px;
          height: 36px;
          border-radius: 50%;
          background-color: #555756;
          color: #fff;
          font: normal normal 600 16px/1 var(--font-heading);
          flex-shrink: 0;
      }

      /* Step title */
      .feature-step-card__title {
          font: normal normal 500 24px/1.3 var(--font-heading);
          margin: 0;
          color: var(--clr-neutral-800);
          flex: 1;
      }

      @media (max-width: 768px) {
          .feature-step-card__title {
              font-size: 20px;
          }
      }

      /* Toggle icon */
      .feature-step-card__toggle {
          width: 24px;
          height: 24px;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-shrink: 0;
          transition: transform 0.3s ease;
          color: var(--clr-neutral-800);
      }

      .feature-step-card__toggle svg {
          width: 20px;
          height: 20px;
          stroke: currentColor;
          transition: transform 0.3s ease;
      }

      .feature-step-card.is-open .feature-step-card__toggle svg {
          transform: rotate(180deg);
      }

      /* Collapsible content */
      .feature-step-card__content {
          display: grid;
          grid-template-rows: 0fr;
          transition: grid-template-rows 0.4s ease-out;
      }

      .feature-step-card.is-open .feature-step-card__content {
          grid-template-rows: 1fr;
      }

      .feature-step-card__inner {
          overflow: hidden;
      }

      .feature-step-card__body {
          padding-top: var(--size-6);
          display: flex;
          flex-direction: column;
          gap: var(--size-4, 16px);
      }

      /* Step text content */
      .feature-step-card__text {
          font: normal normal 400 16px/1.6 var(--font-body);
      }

      .feature-step-card__text p:first-child,
      .feature-step-card__text p:first-child span,
      .feature-step-card__text p:first-child strong {
          font-family: Montserrat !important;
          font-size: 20px !important;
          line-height: 24px !important;
          font-weight: 600 !important;
          font-style: normal !important;
      }

      .feature-step-card__text p {
          margin-bottom: 0.5em;
      }

      .feature-step-card__text p:last-child {
          margin-bottom: 0;
      }

      /* Footer text (italic) */
      .feature-step-card__footer {
          font: italic normal 400 15px/1.6 var(--font-body);
          color: var(--clr-neutral-600, #666);
      }

      .feature-step-card__footer p {
          margin: 0;
      }

      /* CTA button in step */
      .feature-step-card__cta {
          margin-top: var(--size-2, 8px);
      }

      /* Icon State Swap for step cards */
      .feature-step-card .icon-minus { display: none; }
      .feature-step-card.is-open .icon-plus { display: none; }
      .feature-step-card.is-open .icon-minus { display: block; }

      /* =========================================
         TABLE LAYOUT (Comparison Table)
         ========================================= */

      /* Mid-sections */
      .feature-table__sections {
          display: flex;
          flex-direction: column;
          gap: var(--size-8, 2rem);
          margin-top: var(--size-13, 5rem);
      }

      .feature-table__section h3 {
          font: normal normal 600 20px/1.3 var(--font-heading);
          margin-bottom: var(--size-3, 12px);
      }

      @media (max-width: 768px) {
          .feature-table__sections {
              margin-top: 48px;
          }

          .feature-table__section h3 {
              font-size: 18px;
          }
      }

      .feature-table__section-content {
          font: normal normal 400 16px/1.6 var(--font-body);
      }

      .feature-table__section-content p {
          margin-bottom: 0.5em;
      }

      .feature-table__section-content p:last-child {
          margin-bottom: 0;
      }

      .feature-table__section-cta {
          margin-top: var(--size-4, 16px);
      }

      /* Section with image */
      .feature-table__section.has-image {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: var(--size-8, 2rem);
      }

      .feature-table__section-image {
          border-radius: var(--radius-md, 12px);
          overflow: hidden;
      }

      .feature-table__section-image img {
          display: block;
          max-width: 350px;
          width: 100%;
          height: auto;
          object-fit: cover;
      }

      /* Table heading */
      .feature-table__heading {
          font: normal normal 600 22px/1.3 var(--font-heading);
          margin-top: var(--size-13, 5rem);
          margin-bottom: var(--size-6, 1.5rem);
      }

      @media (max-width: 768px) {
          .feature-table__heading {
              font-size: 18px;
              margin-top: 48px;
          }
      }

      /* Comparison table */
      .feature-comparison {
          width: 100%;
          border-collapse: collapse;
          border-spacing: 0;
      }

      /* Header row */
      .feature-comparison__head-row {
          background-color: transparent;
      }

      .feature-comparison__head-cell {
          padding: var(--size-5, 20px) var(--size-4, 16px);
          font: normal normal 600 16px/1.3 var(--font-heading);
          color: var(--clr-neutral-800, #2D2D2D);
          text-align: center;
          position: relative;
          vertical-align: middle;
          border: none;
      }

      .feature-comparison__head-cell--label {
          text-align: left;
      }

      /* "vs." badge — orange #FFBE98 */
      .feature-comparison__vs {
          position: absolute;
          right: -18px;
          top: 50%;
          transform: translateY(-50%);
          z-index: 2;
          width: 36px;
          height: 36px;
          border-radius: 50%;
          background-color: #FFBE98;
          color: #2d2d2d;
          font: normal normal 600 11px/36px var(--font-heading);
          text-align: center;
          letter-spacing: 0.02em;
      }

      /* Body rows — every second row #F4F4F4 */
      .feature-comparison__row {
          background-color: transparent;
      }

      .feature-comparison__row:nth-child(even) .feature-comparison__cell {
          background-color: #F4F4F4;
      }

      /* Row label (left column) */
      .feature-comparison__label {
          padding: var(--size-4, 16px);
          font: normal normal 600 15px/1.4 var(--font-heading);
          color: var(--clr-neutral-800, #2D2D2D);
          text-align: right;
          white-space: nowrap;
          border: none;
      }

      /* Data cells — no borders */
      .feature-comparison__cell {
          padding: var(--size-4, 16px);
          font: normal normal 400 15px/1.4 var(--font-body);
          color: var(--clr-text-primary);
          text-align: center;
          border: none;
      }

      /* Vertical divider line between columns — orange, data rows only */
      .feature-comparison__cell--divider {
          border-left: 1px solid #FFBE98;
      }

      /* Horizontal scroll wrapper for mobile */
      .feature-table__scroll {
          overflow-x: auto;
          -webkit-overflow-scrolling: touch;
      }

      @media (max-width: 768px) {
          .feature-comparison__label {
              font-size: 13px;
              padding: var(--size-3, 12px);
              white-space: pre-wrap;
              overflow-wrap: anywhere;
              hyphens: auto;
          }

          .feature-comparison__cell {
              font-size: 13px;
              padding: var(--size-3, 12px);
              min-width: 120px;
          }

          .feature-comparison__head-cell {
              font-size: 14px;
              padding: var(--size-3, 12px);
              min-width: 120px;
          }

          /* Fixed first column on mobile */
          .feature-table__scroll {
              position: relative;
          }

          .feature-comparison {
              border-collapse: separate;
              border-spacing: 0;
          }

          .feature-comparison__head-cell--label,
          .feature-comparison__label {
              position: sticky;
              left: 0;
              z-index: 2;
              background-color: #fff;
              width: 125px;
              min-width: 125px;
              max-width: 125px;
          }

          .feature-comparison__head-cell--label {
              z-index: 3;
          }

          /* Hide vs. badge on mobile */
          .feature-comparison__vs {
              display: none;
          }
      }

      /* =========================================
         VIDEO LAYOUT (Doctor Quote Style)
         ========================================= */

      /* Mid-sections (shared structure with table variant) */
      .feature-video__sections {
          display: flex;
          flex-direction: column;
          gap: var(--size-8, 2rem);
          margin-top: var(--size-10);
      }

      .feature-video__section h3 {
          font: normal normal 600 20px/1.3 var(--font-heading);
          margin-bottom: var(--size-3, 12px);
      }

      @media (max-width: 768px) {
          .feature-video__section h3 {
              font-size: 18px;
          }
      }

      .feature-video__section-content {
          font: normal normal 400 16px/1.6 var(--font-body);
      }

      .feature-video__section-content p {
          margin-bottom: 0.5em;
      }

      .feature-video__section-content p:last-child {
          margin-bottom: 0;
      }

      .feature-video__section-cta {
          margin-top: var(--size-12);
      }

      @media (max-width: 768px) {
          .feature-video__section-cta {
              margin-top: 48px;
          }
      }

      .feature-video  .feature-video__component {
        margin-top: var(--size-13);
      }
      /* Video component */
      .feature-video__component {
          display: flex;
          align-items: center;
          gap: var(--size-6, 1.5rem);
          margin-top: var(--size-8, 2rem);
      }

      .feature-video__thumb {
          flex-shrink: 0;
          width: 252px;
          height: 252px;
          border-radius: 100vw;
          object-fit: cover;
      }

      .feature-video__info {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          gap: var(--size-3, 12px);
      }

      @media (max-width: 768px) {
          .feature-video__component {
              flex-wrap: wrap;
              justify-content: center;
              text-align: center;
          }

          .feature-video__info {
              align-items: center;
              gap: 26px;
          }
      }

      .feature-video__text {
          font: normal normal 400 16px/1.5 var(--font-body);
          color: var(--clr-neutral-700, #444);
      }

      /* Video play button — same style as doctor_quote */
      .feature-video .btn-video {
          background-color: var(--clr-accent-500);
          color: var(--clr-text-primary);
          border: 1px solid var(--clr-accent-500);
          border-radius: var(--radius-md);
          padding: var(--size-2) var(--size-5);
          font-family: var(--font-heading);
          font-weight: 600;
          font-size: var(--fs-normal);
          line-height: var(--lh-normal);
          letter-spacing: 0;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 8px;
          cursor: pointer;
          transition: background-color 0.3s ease, color 0.3s ease;
          min-width: 100%;
      }

      @media (min-width: 768px) {
          .feature-video .btn-video {
              min-width: 221px;
          }
      }

      .feature-video .btn-video:hover {
          background-color: var(--clr-accent-600);
      }

      .feature-video .btn-video svg {
          width: 20px;
          height: 20px;
          border-radius: 6px;
      }

      /* Video modal dialog */
      .feature-video-dialog {
          padding: 0;
          border: none;
          background: transparent;
          width: 90%;
          max-width: 900px;
          overflow: visible;
      }

      .feature-video-dialog::backdrop {
          background: rgba(0, 0, 0, 0.85);
          backdrop-filter: blur(3px);
      }

      .feature-video-dialog__inner {
          position: relative;
          width: 100%;
          aspect-ratio: 16 / 9;
          background: #000;
          border-radius: 8px;
          overflow: hidden;
      }

      .feature-video-dialog__close {
          position: absolute;
          top: -40px;
          right: 0;
          background: transparent;
          border: none;
          color: white;
          font-size: 36px;
          line-height: 1;
          cursor: pointer;
          transition: color 0.2s ease;
      }

      .feature-video-dialog__close:hover {
          color: var(--clr-primary-500, #F8BFA1);
      }

      .feature-video-dialog__iframe-wrapper,
      .feature-video-dialog__iframe-wrapper iframe {
          width: 100%;
          height: 100%;
          border: none;
          display: block;
      }

      /* Force Montserrat on headings inside text/flow areas */
      .feature-text-col h2,
      .feature-text-col h3,
      .feature-text-col h4,
      .feature-section .lead h2,
      .feature-section .lead h3,
      .feature-section .lead h4,
      .feature-section .flow h2,
      .feature-section .flow h3,
      .feature-section .flow h4 {
          font-family: var(--font-heading);
      }

      /* More gap for 60-40 layout */
      .feature-section .even-columns.is-60-40 {
          gap: 50px;
      }

      .single-brust .even-columns.is-60-40 {
          grid-template-columns: 1fr;
      }

      .single-brust .feature-item__buttons--desktop-align {
          justify-self: start;
      }

      .single-brust .even-columns.is-60-40 .feature-item__buttons h4.lead-text {
          display: none;
      }

      .feature-section .feature-buttons {
          margin-top: 64px !important;
      }

      @media (max-width: 768px) {
          .feature-section .feature-buttons {
              margin-top: 43px !important;
          }
      }
