:root {
      --faq-shell-width: min(var(--container-wide), calc(100vw - 2rem));
      --faq-teal: #16a89f;
      --faq-shadow: 0 26px 70px rgba(0, 0, 0, 0.32);
    }

    body.faqs-page {
      background:
        radial-gradient(circle at 18% 0%, rgba(22, 168, 159, 0.16), transparent 24%),
        linear-gradient(180deg, #050707 0%, #0b1011 40%, #080a0b 100%);
      color: #f7f3eb;
      overflow-x: hidden;
      overflow-y: auto;
      overscroll-behavior-y: auto;
      touch-action: pan-y;
    }

    body.faqs-page:not(.is-menu-locked),
    body.faqs-page:not(.is-menu-locked) .site,
    body.faqs-page:not(.is-menu-locked) .site-content,
    body.faqs-page:not(.is-menu-locked) .inside-article,
    body.faqs-page:not(.is-menu-locked) .faq-main {
      overflow-y: visible;
      touch-action: pan-y;
    }

    .faqs-hero {
      position: relative;
      width: 100%;
      min-height: clamp(520px, 72vh, 820px);
      display: grid;
      place-items: center;
      color: #fff;
      isolation: isolate;
      overflow: hidden;
    }

    .faqs-hero__topbar,
    .faqs-hero__content {
      position: relative;
      z-index: 3;
    }

    .faqs-hero__topbar {
      position: absolute;
      inset: 0 0 auto;
      display: flex;
      align-items: flex-start;
      justify-content: flex-start;
      z-index: 6;
    }

    .faqs-hero__slides,
    .faqs-hero__slide {
      position: absolute;
      inset: 0;
    }

    .faqs-hero__slides {
      z-index: 0;
    }

    .faqs-hero__slide {
      background-size: cover;
      background-position: center;
      opacity: 0;
      transition: opacity 1.2s ease;
    }

    .faqs-hero__slide.is-active {
      opacity: 1;
      animation: faqKenBurns 12s ease-out forwards;
    }

    @keyframes faqKenBurns {
      0% {
        transform: scale(1.08) translateY(-2%);
      }

      100% {
        transform: scale(1) translateY(0);
      }
    }

    .faqs-hero__overlay {
      position: absolute;
      inset: 0;
      z-index: 1;
      background:
        radial-gradient(1200px 540px at 20% 78%, rgba(0, 0, 0, 0.24), transparent 60%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.55) 55%, rgba(0, 0, 0, 0.72) 100%);
      animation: faqOverlayFade 0.8s ease-out 0.2s both;
    }

    @keyframes faqOverlayFade {
      from { opacity: 0; }
      to { opacity: 1; }
    }

    .faqs-hero__content {
      width: var(--faq-shell-width);
      padding-top: clamp(140px, 18vh, 220px);
      padding-bottom: clamp(50px, 8vh, 92px);
    }

    .faqs-hero__inner {
      max-width: 68rem;
      padding: clamp(28px, 4.5vw, 54px) clamp(16px, 3.2vw, 28px);
    }

    .faqs-hero__eyebrow {
      margin: 0 0 8px;
      font-family: "Marcellus", serif;
      letter-spacing: 0.06em;
      color: var(--faq-teal);
      font-size: clamp(14px, 1.3vw, 16px);
      line-height: 1.1;
      text-transform: uppercase;
    }

    .faqs-hero__title {
      margin: 0 0 12px;
      font-family: "Big Shoulders Display", sans-serif;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: -0.01em;
      font-size: clamp(34px, 4.5vw, 64px);
      line-height: 1.05;
      color: #fff;
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);
    }

    .faqs-hero__sub {
      margin: 0;
      max-width: 70ch;
      font-size: clamp(14px, 1.35vw, 18px);
      line-height: 1.55;
      color: rgba(255, 255, 255, 0.92);
      text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
    }

    .faqs-reveal {
      opacity: 0;
      transform: translateY(14px);
      animation: faqRise 0.7s cubic-bezier(0.22, 0.9, 0.28, 1) forwards;
    }

    .faqs-reveal--1 { animation-delay: 0.15s; }
    .faqs-reveal--2 { animation-delay: 0.28s; }
    .faqs-reveal--3 { animation-delay: 0.42s; }

    @keyframes faqRise {
      0% {
        opacity: 0;
        transform: translateY(14px);
      }

      100% {
        opacity: 1;
        transform: translateY(0);
      }
    }

    .faq-main {
      position: relative;
      z-index: 2;
      display: grid;
      gap: 0;
      overflow: visible;
    }

    .faq-shell {
      width: var(--faq-shell-width);
      margin: 0 auto;
    }

    .faq-overview {
      position: relative;
      width: 100vw;
      max-width: none;
      left: auto;
      right: auto;
      margin-left: 0;
      margin-right: 0;
      padding: clamp(4rem, 7vw, 6rem) 0;
      overflow: visible;
      isolation: isolate;
      background:
        linear-gradient(180deg, rgba(246, 242, 234, 0.96) 0%, rgba(246, 242, 234, 0.975) 38%, rgba(246, 242, 234, 0.99) 100%),
        linear-gradient(180deg, rgba(173, 170, 162, 0.06) 0%, rgba(173, 170, 162, 0.1) 100%),
        #f4f0e7;
      color: #1a1f1b;
    }

    .faq-overview .msx-canvas {
      z-index: 0;
      opacity: 1;
    }

    .faq-overview .msx-overlay {
      z-index: 1;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.01) 0%, rgba(255, 255, 255, 0.018) 42%, rgba(255, 255, 255, 0.028) 100%);
    }

    .faq-overview__grid {
      position: relative;
      z-index: 2;
      width: var(--faq-shell-width);
      margin: 0 auto;
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
      gap: clamp(1.8rem, 4vw, 3.5rem);
      align-items: start;
    }

    .faq-section-label {
      display: inline-block;
      margin: 0 0 0.9rem;
      color: var(--faq-teal);
      font-family: "Marcellus", serif;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font-size: 0.88rem;
    }

    .faq-section-label--script {
      display: inline-block;
      font-family: "Heatwood", "Yellowtail", cursive;
      font-size: clamp(0.95rem, 1.5vw, 1.425rem);
      line-height: 0.9;
      letter-spacing: 0.01em;
      text-transform: none;
      transform: translateY(15px) rotate(-1deg);
      transform-origin: left center;
    }

    .faq-overview__title,
    .faq-groups__title {
      margin: 0;
      font-family: "Montserrat", Arial, sans-serif;
      font-weight: 900;
      letter-spacing: -0.04em;
      line-height: 0.95;
      text-transform: uppercase;
    }

    .faq-overview__title {
      max-width: 15ch;
      font-size: clamp(2.5rem, 4.8vw, 5rem);
      color: #2f342f;
    }

    .faq-overview__body {
      margin: 1.2rem 0 0;
      max-width: 38rem;
      color: rgba(64, 71, 66, 0.86);
      font-size: 1rem;
      line-height: 1.8;
    }

    .faq-jump-list {
      margin: 2rem 0 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 0.85rem;
      max-width: 38rem;
    }

    .faq-jump-list a {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      padding: 1rem 1.2rem;
      color: #222924;
      text-decoration: none;
      font-weight: 700;
      letter-spacing: 0.02em;
      border: 1px solid rgba(49, 56, 45, 0.14);
      background: rgba(255, 255, 255, 0.28);
      box-shadow: 0 18px 40px rgba(27, 25, 20, 0.08);
      transition: transform 0.24s ease, border-color 0.24s ease, background 0.24s ease;
    }

    .faq-jump-list a::after {
      content: "01";
      color: rgba(49, 56, 45, 0.52);
      font-family: "Big Shoulders Display", sans-serif;
      font-size: 1.45rem;
      line-height: 1;
    }

    .faq-jump-list li:nth-child(2) a::after { content: "02"; }
    .faq-jump-list li:nth-child(3) a::after { content: "03"; }
    .faq-jump-list li:nth-child(4) a::after { content: "04"; }
    .faq-jump-list li:nth-child(5) a::after { content: "05"; }

    .faq-jump-list a:hover,
    .faq-jump-list a:focus-visible {
      transform: translateX(6px);
      border-color: rgba(46, 194, 188, 0.38);
      background: rgba(22, 168, 159, 0.08);
    }

    .faq-overview__panel {
      position: relative;
      overflow: hidden;
      min-height: 100%;
      padding: clamp(1.6rem, 3vw, 2.1rem);
      background:
        linear-gradient(160deg, rgba(245, 239, 229, 0.08), rgba(245, 239, 229, 0.01)),
        rgba(8, 12, 13, 0.68);
      border: 1px solid rgba(255, 255, 255, 0.1);
      box-shadow: var(--faq-shadow);
    }

    .faq-overview__panel::before {
      content: "";
      position: absolute;
      inset: auto -6% -28% auto;
      width: 16rem;
      height: 16rem;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(22, 168, 159, 0.28), transparent 68%);
      pointer-events: none;
    }

    .faq-overview__panel-title {
      margin: 0 0 0.95rem;
      font-family: "Oswald", sans-serif;
      font-size: clamp(1.8rem, 3vw, 2.5rem);
      line-height: 0.98;
      text-transform: uppercase;
      color: #ffffff;
    }

    .faq-overview__panel-list {
      margin: 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 1rem;
    }

    .faq-overview__panel-list li {
      padding-bottom: 1rem;
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .faq-overview__panel-list li:last-child {
      padding-bottom: 0;
      border-bottom: 0;
    }

    .faq-overview__panel-list strong {
      display: block;
      margin-bottom: 0.35rem;
      color: #ffffff;
      font-size: 0.98rem;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .faq-overview__panel-list span {
      color: rgba(247, 243, 235, 0.78);
      line-height: 1.65;
      font-size: 0.96rem;
    }

    .faq-groups__head {
      margin-bottom: 1.9rem;
    }

    .faq-groups__title {
      color: var(--faq-groups-title-color, #f5efe5);
      font-size: clamp(2.25rem, 4vw, 4rem);
    }

    .faq-groups__lede {
      margin: 1rem 0 0;
      max-width: var(--faq-groups-lede-width, 44rem);
      color: var(--faq-groups-lede-color, rgba(247, 243, 235, 0.78));
      font-size: 1rem;
      line-height: 1.75;
    }

    .faq-groups__grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: clamp(1.4rem, 2.5vw, 2rem);
    }

    .faq-groups--overview {
      --faq-groups-title-color: #18201c;
      --faq-groups-lede-color: rgba(24, 32, 28, 0.74);
      --faq-groups-lede-width: 46rem;
      --faq-group-padding: 0;
      --faq-group-border: 0;
      --faq-group-background: transparent;
      --faq-group-shadow: none;
      --faq-group-header-margin-bottom: 1.2rem;
      --faq-group-header-padding-bottom: 15px;
      --faq-group-header-border: 0;
      --faq-group-kicker-display: none;
      --faq-group-title-color: #18201c;
      --faq-group-count-color: var(--faq-teal);
      --faq-accordion-gap: 1rem;
      --faq-item-radius: 2rem;
      --faq-item-overflow: hidden;
      --faq-item-border-color: rgba(33, 39, 36, 0.09);
      --faq-item-bg: rgba(255, 255, 255, 0.92);
      --faq-item-shadow: 0 16px 34px rgba(38, 31, 22, 0.08);
      --faq-item-open-border-color: rgba(22, 168, 159, 0.24);
      --faq-item-open-bg: rgba(22, 168, 159, 0.08);
      --faq-item-open-shadow: 0 18px 38px rgba(22, 168, 159, 0.08);
      --faq-item-button-gap: 1.25rem;
      --faq-item-button-padding: 1.45rem 1.6rem;
      --faq-item-question-color: #18201c;
      --faq-item-question-family: "Montserrat", "Poppins", sans-serif;
      --faq-item-question-size: clamp(1.02rem, 1.35vw, 1.18rem);
      --faq-item-question-weight: 800;
      --faq-item-question-line-height: 1.34;
      --faq-item-icon-size: 1.55rem;
      --faq-item-icon-border: 0;
      --faq-item-icon-radius: 0;
      --faq-item-icon-line-width: 1.15rem;
      --faq-item-icon-line-color: var(--faq-teal);
      --faq-item-icon-line-radius: 999px;
      --faq-item-answer-padding: 0 1.6rem 1.55rem;
      --faq-item-answer-color: rgba(24, 32, 28, 0.78);
      --faq-item-answer-size: clamp(0.98rem, 1.18vw, 1.08rem);
      --faq-item-answer-line-height: 1.72;
      position: relative;
      z-index: 2;
      width: min(1500px, calc(100vw - 1rem));
      margin: clamp(3rem, 5vw, 4.6rem) auto 0;
    }

    .faq-groups__head--overview {
      margin-bottom: clamp(1.8rem, 3.5vw, 2.8rem);
    }

    .faq-groups--overview .faq-groups__grid {
      column-gap: clamp(2.6rem, 4.8vw, 5rem);
      row-gap: clamp(2.2rem, 4vw, 3.6rem);
    }

    .faq-groups--overview .faq-item:hover,
    .faq-groups--overview .faq-item:focus-within {
      border-color: rgba(22, 168, 159, 0.22);
      background: rgba(22, 168, 159, 0.07);
      box-shadow: 0 18px 38px rgba(22, 168, 159, 0.08);
    }

    .dr-difference-sticky--flow .dr-difference-sticky__item {
      grid-template-columns: 74px minmax(0, 1fr);
      column-gap: 20px;
      padding: 28px 28px 30px;
      min-height: clamp(240px, 24vw, 290px);
      align-content: start;
    }

    .dr-difference-sticky--flow .dr-difference-sticky__item::after {
      grid-column: 1 / -1;
      width: 72px;
      margin-top: 16px;
    }

    .dr-difference-sticky--flow .dr-difference-sticky__grid {
      grid-template-columns: minmax(0, 0.84fr) minmax(380px, 1fr);
      gap: clamp(34px, 5vw, 78px);
    }

    .dr-difference-sticky--flow .dr-difference-sticky__rail {
      max-width: 46rem;
    }

    .dr-difference-sticky--flow .dr-difference-sticky__icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 74px;
      height: 74px;
      border: 1px solid rgba(47, 184, 176, 0.34);
      border-radius: 999px;
      background: rgba(9, 13, 14, 0.54) !important;
      background-image: none !important;
      color: var(--faq-teal);
      filter: none;
      font-family: "Big Shoulders Display", sans-serif;
      font-size: clamp(2.7rem, 3vw, 3.3rem);
      font-weight: 700;
      line-height: 1;
      box-shadow: inset 0 0 0 1px rgba(22, 168, 159, 0.06);
    }

    .dr-difference-sticky--flow .dr-difference-sticky__item-copy {
      padding-top: 8px;
    }

    .dr-difference-sticky--flow .dr-difference-sticky__item-title {
      margin-bottom: 14px;
      color: #fbfbf6;
      font-family: "Oswald", sans-serif;
      font-size: clamp(2rem, 2.8vw, 2.75rem);
      line-height: 0.94;
      letter-spacing: 0.02em;
      font-weight: 500;
    }

    .dr-difference-sticky--flow .dr-difference-sticky__item-text {
      font-size: clamp(1.08rem, 1.4vw, 1.32rem);
      line-height: 1.62;
      color: rgba(247, 243, 235, 0.8);
    }

    .dr-difference-sticky--flow .dr-difference-sticky__eyebrow {
      margin-left: 0;
    }

    .dr-difference-sticky--flow .dr-difference-sticky__panel .msx-button-wrap {
      display: none;
    }

    .faq-overview #darby-difference {
      --dds-ink: #18201c;
      --dds-copy: rgba(24, 32, 28, 0.72);
      --dds-line: rgba(24, 32, 28, 0.18);
      --dds-sticky-offset: 0px;
      position: relative;
      z-index: 2;
      width: var(--faq-shell-width);
      left: auto;
      right: auto;
      margin: clamp(3rem, 5.5vw, 5rem) auto 0;
      min-height: calc(100vh + 2rem);
      padding: clamp(3rem, 5vw, 4.75rem) 0 clamp(2rem, 4vw, 3rem);
      background: transparent;
      color: var(--dds-ink);
      isolation: auto;
    }

    .faq-overview #darby-difference .dr-difference-sticky__wrap {
      width: 100%;
    }

    .faq-overview #darby-difference .dr-difference-sticky__grid {
      align-items: start;
    }

    .faq-overview #darby-difference .dr-difference-sticky__aside {
      position: -webkit-sticky;
      position: sticky;
      top: 0;
      align-self: start;
      height: fit-content;
      z-index: 4;
    }

    .faq-overview #darby-difference .dr-difference-sticky__item {
      border-color: rgba(24, 32, 28, 0.12);
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.68), rgba(255, 255, 255, 0.46)),
        rgba(255, 255, 255, 0.38);
      box-shadow: none;
    }

    .faq-overview #darby-difference .dr-difference-sticky__item:hover,
    .faq-overview #darby-difference .dr-difference-sticky__item:focus-within {
      border-color: rgba(22, 168, 159, 0.28);
      box-shadow: none;
    }

    .faq-overview #darby-difference .dr-difference-sticky__item-title,
    .faq-overview #darby-difference .dr-difference-sticky__title {
      color: #18201c;
    }

    .faq-overview #darby-difference .dr-difference-sticky__item-text,
    .faq-overview #darby-difference .dr-difference-sticky__lede {
      color: rgba(24, 32, 28, 0.72);
    }

    .faq-overview #darby-difference .dr-difference-sticky__icon {
      background: rgba(22, 168, 159, 0.08) !important;
      color: var(--faq-teal);
    }

    .faq-overview #darby-difference .dr-difference-sticky__lede {
      border-left-color: rgba(24, 32, 28, 0.22);
    }

    .faq-overview #de-social-ref {
      position: relative;
      z-index: 2;
      width: 100%;
      left: auto;
      right: auto;
      margin-left: 0;
      margin-right: 0;
      background: transparent;
    }

    .faq-group {
      padding: var(--faq-group-padding, clamp(1.2rem, 2vw, 1.6rem));
      border: var(--faq-group-border, 1px solid rgba(255, 255, 255, 0.1));
      background: var(--faq-group-background, linear-gradient(180deg, rgba(14, 20, 22, 0.92), rgba(7, 10, 11, 0.88)));
      box-shadow: var(--faq-group-shadow, var(--faq-shadow));
    }

    .faq-group__header {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 1rem;
      margin-bottom: var(--faq-group-header-margin-bottom, 1rem);
      padding-bottom: var(--faq-group-header-padding-bottom, 0.9rem);
      border-bottom: var(--faq-group-header-border, 1px solid rgba(255, 255, 255, 0.08));
    }

    .faq-group__kicker {
      display: var(--faq-group-kicker-display, block);
      margin: 0 0 0.25rem;
      color: var(--faq-group-kicker-color, rgba(46, 194, 188, 0.84));
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .faq-group__title {
      margin: 0;
      color: var(--faq-group-title-color, #ffffff);
      font-family: "Oswald", sans-serif;
      font-size: clamp(1.45rem, 2vw, 1.95rem);
      line-height: 1;
      text-transform: uppercase;
    }

    .faq-group__count {
      color: var(--faq-group-count-color, rgba(255, 255, 255, 0.34));
      font-family: "Big Shoulders Display", sans-serif;
      font-size: 2rem;
      line-height: 1;
    }

    .faq-accordion {
      display: grid;
      gap: var(--faq-accordion-gap, 0.8rem);
    }

    .faq-item {
      border: 1px solid var(--faq-item-border-color, rgba(255, 255, 255, 0.08));
      border-radius: var(--faq-item-radius, 0);
      background: var(--faq-item-bg, rgba(255, 255, 255, 0.02));
      box-shadow: var(--faq-item-shadow, none);
      overflow: var(--faq-item-overflow, visible);
      transition: border-color 0.24s ease, background 0.24s ease, box-shadow 0.24s ease;
    }

    .faq-item[data-open="true"] {
      border-color: var(--faq-item-open-border-color, rgba(46, 194, 188, 0.4));
      background: var(--faq-item-open-bg, rgba(46, 194, 188, 0.06));
      box-shadow: var(--faq-item-open-shadow, none);
    }

    .faq-item__button {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: var(--faq-item-button-gap, 1rem);
      padding: var(--faq-item-button-padding, 1rem 1.1rem);
      border: 0;
      background: transparent;
      color: inherit;
      text-align: left;
      cursor: pointer;
    }

    .faq-item__question {
      color: var(--faq-item-question-color, #ffffff);
      font-family: var(--faq-item-question-family, inherit);
      font-size: var(--faq-item-question-size, 1rem);
      font-weight: var(--faq-item-question-weight, 700);
      line-height: var(--faq-item-question-line-height, 1.45);
    }

    .faq-item__icon {
      flex: 0 0 auto;
      width: var(--faq-item-icon-size, 2.2rem);
      height: var(--faq-item-icon-size, 2.2rem);
      border: var(--faq-item-icon-border, 1px solid rgba(255, 255, 255, 0.12));
      border-radius: var(--faq-item-icon-radius, 50%);
      position: relative;
      transition: transform 0.24s ease, border-color 0.24s ease;
    }

    .faq-item__icon::before,
    .faq-item__icon::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: var(--faq-item-icon-line-width, 0.8rem);
      height: 2px;
      background: var(--faq-item-icon-line-color, #ffffff);
      border-radius: var(--faq-item-icon-line-radius, 0);
      transform: translate(-50%, -50%);
    }

    .faq-item__icon::after {
      transform: translate(-50%, -50%) rotate(90deg);
      transition: transform 0.24s ease, opacity 0.24s ease;
    }

    .faq-item[data-open="true"] .faq-item__icon {
      border-color: rgba(46, 194, 188, 0.56);
      transform: rotate(180deg);
    }

    .faq-item[data-open="true"] .faq-item__icon::after {
      opacity: 0;
      transform: translate(-50%, -50%) rotate(90deg) scaleX(0);
    }

    .faq-item__panel {
      display: grid;
      grid-template-rows: 0fr;
      transition: grid-template-rows 0.28s ease;
    }

    .faq-item[data-open="true"] .faq-item__panel {
      grid-template-rows: 1fr;
    }

    .faq-item__answer-wrap {
      overflow: hidden;
    }

    .faq-item__answer {
      padding: var(--faq-item-answer-padding, 0 1.1rem 1.15rem);
      color: var(--faq-item-answer-color, rgba(247, 243, 235, 0.82));
      line-height: var(--faq-item-answer-line-height, 1.75);
      font-size: var(--faq-item-answer-size, 0.97rem);
    }

    .faq-item__answer p {
      margin: 0;
    }

    .faqs-page .dstp-page:not(.is-active)::before,
    .faqs-page .dstp-page:not(.is-active)::after,
    .faqs-page .dstp-page:not(.is-active) .dstp-shared-light,
    .faqs-page .dstp-page:not(.is-active) .dstp-page-bg-image,
    .faqs-page .dstp-page:not(.is-active) .dstp-page-bg-soften {
      opacity: 0 !important;
    }

    .faqs-page #de-social-ref {
      position: relative;
      padding-bottom: clamp(14px, 2vw, 22px);
      background-color: transparent;
    }

    .faqs-page #de-social-ref::after {
      content: none;
    }

    .faqs-page .darby-global-footer {
      margin-top: -1px;
      background: #f4f0e7;
    }

    .faqs-page .darby-global-footer .dj-footer-section {
      background: #f4f0e7;
    }

    .faqs-page #de-social-ref .de-social-ref__inner {
      position: relative;
      z-index: 1;
    }

    .faqs-page #de-social-ref .de-social-ref__title-top {
      color: #0b0b10;
    }

    .faqs-page #de-social-ref .de-social-ref__title-bottom {
      color: #161616;
    }

    .faqs-page #de-social-ref .de-social-ref__caption {
      position: relative;
      z-index: 2;
      left: auto;
      right: auto;
      bottom: auto;
      width: 100%;
      top: -30px;
      text-align: center;
      margin-top: -134px;
      margin-bottom: 26px;
      margin-left: auto;
      margin-right: auto;
      transform: translateY(-18px);
    }

    .faqs-page #de-social-ref .de-social-ref__icons {
      position: relative;
      left: auto;
      right: auto;
      bottom: auto;
      width: 100%;
      top: -30px;
      margin-top: 0;
      margin-left: auto;
      margin-right: auto;
      transform: none;
    }

    .faqs-page #de-social-ref .de-social-ref__icon[alt="YouTube"] {
      transform: translateY(6px);
    }

    .faqs-page #de-social-ref .de-social-ref__icon[alt="Instagram"] {
      transform: scale(0.92);
      transform-origin: center;
    }

    /* FAQ PAGE RESPONSIVE
       Desktop remains the default. Tablet and mobile adjustments are consolidated below. */
    @media (max-width: 1024px) {
      .faq-shell,
      .faq-overview__grid,
      .faq-groups--overview {
        width: var(--faq-shell-width);
      }

      .faq-overview.faq-shell {
        width: 100vw;
        max-width: none;
      }

      .faq-overview__grid,
      .faq-groups__grid,
      .dr-difference-sticky--flow .dr-difference-sticky__grid {
        grid-template-columns: 1fr;
      }

      .faq-overview__copy,
      .faq-overview__panel,
      .faq-group,
      .faq-item__button,
      .faq-item__answer,
      .dr-difference-sticky--flow .dr-difference-sticky__item-copy {
        min-width: 0;
      }

      .faqs-hero__content {
        padding-top: clamp(136px, 18vw, 190px);
        padding-bottom: clamp(42px, 7vw, 76px);
      }

      .faqs-hero__inner {
        max-width: 40rem;
        padding-inline: clamp(14px, 3vw, 22px);
      }

      .faq-overview {
        padding: clamp(3.4rem, 6vw, 5rem) 0;
      }

      .faq-overview__grid {
        gap: clamp(1.5rem, 4vw, 2.25rem);
      }

      .faq-overview__title,
      .faq-groups__title {
        max-width: none;
        text-wrap: balance;
      }

      .faq-groups--overview {
        margin-top: clamp(2.5rem, 5vw, 3.4rem);
      }

      .faq-groups--overview .faq-groups__grid {
        column-gap: 0;
        row-gap: clamp(1.4rem, 3vw, 2rem);
      }

      .faq-item__button {
        align-items: flex-start;
      }

      .faq-item__icon {
        margin-top: 0.1rem;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__grid {
        gap: clamp(30px, 5vw, 44px);
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item {
        grid-template-columns: 60px minmax(0, 1fr);
        column-gap: 18px;
        min-height: 0;
        padding: 24px 22px 26px;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item::after {
        width: 60px;
        margin-top: 14px;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__icon {
        width: 60px;
        height: 60px;
        font-size: clamp(2.2rem, 5vw, 2.75rem);
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item-title {
        font-size: clamp(1.7rem, 4vw, 2.3rem);
        line-height: 0.98;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item-text {
        font-size: clamp(0.98rem, 1.9vw, 1.12rem);
        line-height: 1.6;
      }

      .faqs-page #de-social-ref {
        padding-bottom: clamp(10px, 2vw, 18px);
      }

      .faqs-page #de-social-ref::after {
        height: clamp(18px, 3vw, 34px);
      }

      .faqs-page #de-social-ref .de-social-ref__stage {
        height: clamp(520px, 78vw, 700px);
        margin-top: clamp(-96px, -10vw, -48px);
        margin-bottom: 14px;
        overflow: visible;
      }

      .faqs-page #de-social-ref .de-social-ref__card {
        top: 45%;
      }

      .faqs-page #de-social-ref .de-social-ref__caption {
        margin-top: 0;
        margin-bottom: 18px;
        transform: none;
      }

    }

    @media (min-width: 768px) and (max-width: 1024px) {
      :root {
        --faq-shell-width: min(var(--container-wide), calc(100vw - clamp(3rem, 8vw, 5rem)));
      }

      .faq-overview #darby-difference {
        min-height: calc(130vh + 8rem);
      }

      .faq-overview #darby-difference .dr-difference-sticky__aside {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        order: -1;
        align-self: start;
        height: fit-content;
        z-index: 4;
      }

      .faqs-hero {
        min-height: clamp(500px, 68vh, 700px);
      }

      .faq-overview__panel {
        max-width: 46rem;
      }

      .faq-jump-list {
        max-width: 42rem;
      }

      .faq-group__header {
        align-items: flex-end;
      }

      .faqs-page #de-social-ref {
        padding-top: clamp(54px, 7vw, 74px);
        padding-inline: 0;
        overflow: hidden;
      }

      .faqs-page #de-social-ref .de-social-ref__head {
        margin-bottom: clamp(22px, 4vw, 44px);
        transform: none;
      }

      .faqs-page #de-social-ref .de-social-ref__stage {
        width: min(100%, calc(100vw - 2rem));
        max-width: 780px;
        height: clamp(500px, 68vw, 620px);
        margin: 0 auto clamp(18px, 3vw, 28px);
        overflow: hidden;
        perspective: 1400px;
        perspective-origin: 50% 36%;
      }

      .faqs-page #de-social-ref .de-social-ref__card {
        top: 60%;
        width: clamp(168px, 28vw, 230px);
      }

      .faqs-page #de-social-ref .de-social-ref__card[data-card="center"] {
        width: clamp(190px, 31vw, 252px);
      }

      .faqs-page #de-social-ref .de-social-ref__caption,
      .faqs-page #de-social-ref .de-social-ref__icons {
        top: auto;
      }

      .faqs-page #de-social-ref .de-social-ref__icon[alt="YouTube"] {
        transform: translateY(2px);
      }

    }

    @media (max-width: 767px) {
      :root {
        --faq-shell-width: min(100%, calc(100vw - 1.25rem));
      }

      .faqs-hero {
        min-height: clamp(348px, 51vh, 462px);
      }

      .faqs-hero__content {
        padding-top: 105px;
        padding-bottom: 29px;
      }

      .faqs-hero__inner {
        max-width: 21rem;
        padding: 24px 10px 15px;
      }

      .faqs-hero__eyebrow {
        margin-bottom: 6px;
        font-size: 0.78rem;
      }

      .faqs-hero__title {
        font-size: clamp(2rem, 9.2vw, 2.75rem);
        line-height: 0.94;
      }

      .faqs-hero__sub {
        max-width: 29ch;
        font-size: 0.9rem;
        line-height: 1.5;
      }

      .faq-section-label--script {
        font-size: clamp(0.9rem, 6vw, 1.25rem);
        transform: translateY(10px) rotate(-1deg);
      }

      .faq-overview {
        width: 100vw;
        max-width: none;
        left: auto;
        right: auto;
        margin-left: 0;
        margin-right: 0;
        padding: 3rem 0;
      }

      .faq-overview__body,
      .faq-groups__lede {
        font-size: 0.94rem;
        line-height: 1.68;
      }

      .faq-overview__panel {
        padding: 1.35rem 1rem;
      }

      .faq-overview__panel-title {
        font-size: clamp(1.55rem, 8vw, 2rem);
      }

      .faq-overview__panel-list {
        gap: 0.8rem;
      }

      .faq-overview__panel-list li {
        padding-bottom: 0.8rem;
      }

      .faq-jump-list {
        gap: 0.7rem;
        margin-top: 1.6rem;
      }

      .faq-jump-list a {
        padding: 0.9rem 0.95rem;
        font-size: 0.92rem;
      }

      .faq-jump-list a::after {
        font-size: 1.2rem;
      }

      .faq-groups__head {
        margin-bottom: 1.4rem;
      }

      .faq-groups__title {
        font-size: clamp(2rem, 10vw, 2.95rem);
      }

      .faq-group__header {
        align-items: flex-start;
        gap: 0.7rem;
        margin-bottom: 0.85rem;
        padding-top: 20px;
        padding-bottom: 0.7rem;
      }

      .faq-group__title {
        font-size: clamp(1.2rem, 6vw, 1.5rem);
        line-height: 1.02;
      }

      .faq-group__count {
        font-size: 1.55rem;
      }

      .faq-item {
        border-radius: 1.5rem;
      }

      .faq-item__button {
        gap: 0.85rem;
        padding: 0.95rem;
      }

      .faq-item__question {
        font-size: 0.96rem;
        line-height: 1.38;
      }

      .faq-item__icon {
        width: 1.35rem;
        height: 1.35rem;
      }

      .faq-item__icon::before,
      .faq-item__icon::after {
        width: 0.75rem;
      }

      .faq-item__answer {
        padding: 0 0.95rem 1rem;
        font-size: 0.92rem;
        line-height: 1.65;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__grid {
        gap: 26px;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__rail {
        grid-template-columns: 1fr;
        gap: 14px;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item {
        grid-template-columns: 42px minmax(0, 1fr);
        column-gap: 12px;
        width: 100%;
        min-height: 0;
        padding: 26px 18px 18px;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item::after {
        grid-column: 2;
        width: 42px;
        justify-self: center;
        margin-top: 18px;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__icon {
        width: 42px;
        height: 42px;
        font-size: 1.55rem;
        transform: translateY(4px);
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item-copy {
        padding-top: 4px;
        min-width: 0;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item-title {
        margin-bottom: 8px;
        font-size: clamp(1.35rem, 7.3vw, 1.7rem);
        line-height: 0.96;
        white-space: nowrap;
      }

      .dr-difference-sticky--flow .dr-difference-sticky__item-text {
        font-size: 0.88rem;
        line-height: 1.5;
      }

      .faqs-page #de-social-ref .de-social-ref__stage {
        width: 100vw;
        max-width: none;
        height: 660px;
        margin: 0 calc(50% - 50vw) 0;
        overflow: hidden;
        perspective: 1400px;
        perspective-origin: 50% 32%;
      }

      .faqs-page #de-social-ref .de-social-ref__card {
        top: clamp(252px, 67vw, 298px);
        width: clamp(182px, 49vw, 206px);
        border-radius: 28px;
      }

      .faqs-page #de-social-ref .de-social-ref__card[data-card="center"] {
        width: clamp(202px, 55vw, 224px);
      }

      .faqs-page #de-social-ref .de-social-ref__caption {
        position: absolute;
        left: 50%;
        right: auto;
        bottom: clamp(36px, 9vw, 50px);
        top: auto;
        z-index: 26;
        display: block;
        width: max-content;
        margin: 0;
        font-size: clamp(26px, 6.3vw, 34px);
        line-height: 1;
        transform: translateX(-50%);
      }

      .faqs-page #de-social-ref .de-social-ref__icons {
        position: absolute;
        left: 50%;
        right: auto;
        bottom: clamp(88px, 19vw, 106px);
        top: auto;
        z-index: 25;
        width: max-content;
        justify-content: center;
        gap: 12px;
        margin: 0;
        transform: translateX(-50%);
      }

      .faqs-page #de-social-ref .de-social-ref__icon {
        width: 66px !important;
        height: 66px !important;
      }

      .faqs-page #de-social-ref .de-social-ref__icon[alt="YouTube"] {
        transform: none;
      }

      .faqs-page #de-social-ref .de-social-ref__icon[alt="Instagram"] {
        width: 61px !important;
        height: 61px !important;
        transform: none;
      }

    }

    @media (min-width: 412px) and (max-width: 540px) {
      .faqs-page #de-social-ref .de-social-ref__caption {
        bottom: clamp(34px, 8vw, 46px);
      }

      .faqs-page #de-social-ref .de-social-ref__icons {
        bottom: clamp(76px, 16vw, 90px);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .faqs-hero__slide.is-active,
      .faqs-hero__overlay,
      .faqs-reveal {
        animation: none !important;
      }

      .faqs-reveal {
        opacity: 1 !important;
        transform: none !important;
      }

      .faq-jump-list a,
      .faq-item__icon {
        transition: none;
      }
    }

    /* Confirmed cleanup pass: remove yellow/dark interaction artifacts. */
    body.faqs-page .faq-jump-list a {
      background: rgba(23, 181, 166, 0.08) !important;
      border-color: rgba(23, 181, 166, 0.36) !important;
    }

    body.faqs-page .faq-jump-list a:hover,
    body.faqs-page .faq-jump-list a:focus-visible,
    body.faqs-page .faq-jump-list a:active,
    body.faqs-page .faq-jump-list a[aria-current="true"],
    body.faqs-page .faq-jump-list .is-active a {
      background: rgba(23, 181, 166, 0.14) !important;
      color: #10201d !important;
    }

    body.faqs-page :is(.faq-item[open], .faq-item.is-open, .faq-item.is-active, .faq-item[data-open="true"]) :is(.faq-item__button, .faq-item__summary, .faq-item__question, summary, h3),
    body.faqs-page :is(.faq-item__summary, .faq-item__button, summary):is(:hover, :focus-visible, :active, [aria-expanded="true"]) :is(.faq-item__question, h3),
    body.faqs-page .faq-item__button[aria-expanded="true"] .faq-item__question {
      color: #fffaf2 !important;
    }

    @media (max-width: 743px) {
      body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item {
        min-height: 8.6rem !important;
        padding: 1.15rem 1.2rem !important;
        align-items: center !important;
      }

      body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item-copy {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 0.55rem !important;
      }

      body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item-title {
        margin: 0 !important;
        line-height: 1 !important;
      }
    }

    /* Final confirmed guard: active/open FAQ states should use a faint brand
       green tint, and dark open cards must keep readable white text. */
    body.faqs-page .faq-groups--overview {
      --faq-item-open-bg: rgba(23, 181, 166, 0.11) !important;
      --faq-item-open-border-color: rgba(23, 181, 166, 0.34) !important;
      --faq-item-open-shadow: 0 18px 38px rgba(23, 181, 166, 0.08) !important;
    }

    body.faqs-page :is(.faq-item[open], .faq-item.is-open, .faq-item.is-active, .faq-item[data-open="true"]) {
      --faq-item-question-color: #fffaf2 !important;
    }

    body.faqs-page :is(.faq-item[open], .faq-item.is-open, .faq-item.is-active, .faq-item[data-open="true"]) :is(.faq-item__question, .faq-item__button, summary, h3) {
      color: #fffaf2 !important;
    }

    body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__item:hover,
    body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__item:focus-within {
      background:
        linear-gradient(180deg, rgba(23, 181, 166, 0.12), rgba(23, 181, 166, 0.06)),
        rgba(255, 255, 255, 0.72) !important;
      border-color: rgba(23, 181, 166, 0.34) !important;
    }

    @media (max-width: 743px) {
      body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__grid {
        gap: 1rem !important;
      }

      body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item {
        min-height: 7.35rem !important;
        padding: 0.85rem 1rem !important;
        display: grid !important;
        place-items: center !important;
      }

      body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__icon {
        margin: 0 !important;
      }
    }

/* Continuation 5: keep FAQ active/open states readable even when the page
   body class is absent in local responsive previews. */
.faq-jump-list a {
  background: rgba(23, 181, 166, 0.08) !important;
  border-color: rgba(23, 181, 166, 0.36) !important;
}

.faq-jump-list a:is(:hover, :focus-visible, :active, [aria-current="true"]),
.faq-jump-list .is-active a {
  background: rgba(23, 181, 166, 0.14) !important;
  color: #10201d !important;
}

:is(.faq-item[open], .faq-item.is-open, .faq-item.is-active, .faq-item[data-open="true"]) :is(.faq-item__question, .faq-item__button, .faq-item__summary, summary, h3) {
  color: #fffaf2 !important;
}

.faq-overview #darby-difference .dr-difference-sticky__item:hover,
.faq-overview #darby-difference .dr-difference-sticky__item:focus-within {
  background:
    linear-gradient(180deg, rgba(23, 181, 166, 0.12), rgba(23, 181, 166, 0.06)),
    rgba(255, 255, 255, 0.72) !important;
  border-color: rgba(23, 181, 166, 0.34) !important;
}

@media (max-width: 743px) {
  .dr-difference-sticky--flow .dr-difference-sticky__grid {
    gap: 1rem !important;
  }

  .dr-difference-sticky--flow .dr-difference-sticky__item {
    min-height: 7.35rem !important;
    padding: 0.85rem 1rem !important;
    display: grid !important;
    place-items: center !important;
  }
}

/* Tablet-only eyebrow spacing. */
@media (min-width: 744px) and (max-width: 1024px) {
  body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__panel {
    padding-top: 1.5rem !important;
  }

  body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__eyebrow {
    margin-top: 0 !important;
  }
}

/* Desktop and tablet planning-card underline: align its left edge with the
   heading and paragraph text column, directly below the final line of copy. */
@media (min-width: 744px) {
  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item::after {
    position: static !important;
    grid-column: 2 !important;
    justify-self: start !important;
    width: 3rem !important;
    margin: 0.9rem 0 0 !important;
    transform: none !important;
  }
}

/* FAQ interaction and sticky-flow approval pass — 2026-07-14 */
body.faqs-page {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

body.faqs-page .faq-groups--overview .faq-item {
  --faq-item-question-color: #18201c;
  --faq-item-answer-color: rgba(24, 32, 28, 0.82);
  --faq-item-icon-line-color: #0d8f86;
}

body.faqs-page .faq-groups--overview .faq-item:not([data-open="true"]):hover,
body.faqs-page .faq-groups--overview .faq-item:not([data-open="true"]):focus-within {
  background: #e6f5f2 !important;
  border-color: rgba(13, 143, 134, 0.42) !important;
  box-shadow: 0 18px 38px rgba(13, 89, 83, 0.1) !important;
}

body.faqs-page .faq-groups--overview .faq-item:not([data-open="true"]) .faq-item__button:is(:hover, :focus-visible, :active) .faq-item__question {
  color: #10201d !important;
}

body.faqs-page .faq-groups--overview .faq-item:not([data-open="true"]) .faq-item__button:is(:hover, :focus-visible, :active) {
  background: #e6f5f2 !important;
  color: #10201d !important;
  box-shadow: none !important;
}

/* Keep the approved light hover treatment in previews where the WordPress
   body class may be absent. This also overrides the parent theme's dark
   generic button:hover surface. */
.faq-groups--overview .faq-item:not([data-open="true"]):is(:hover, :focus-within),
.faq-groups--overview .faq-item:not([data-open="true"]) .faq-item__button:is(:hover, :focus-visible, :active) {
  background: #e6f5f2 !important;
  color: #101412 !important;
}

.faq-groups--overview .faq-item:not([data-open="true"]) .faq-item__button:is(:hover, :focus-visible, :active) .faq-item__question {
  color: #101412 !important;
}

body.faqs-page .faq-groups--overview .faq-item[data-open="true"] {
  --faq-item-question-color: #ffffff !important;
  --faq-item-answer-color: rgba(255, 255, 255, 0.92) !important;
  --faq-item-icon-line-color: #ffffff !important;
  background: #0b7069 !important;
  border-color: #075b56 !important;
  box-shadow: 0 20px 42px rgba(7, 91, 86, 0.2) !important;
}

body.faqs-page .faq-groups--overview .faq-item[data-open="true"] :is(.faq-item__button, .faq-item__question) {
  color: #ffffff !important;
}

body.faqs-page .faq-groups--overview .faq-item[data-open="true"] .faq-item__answer {
  color: rgba(255, 255, 255, 0.92) !important;
}

body.faqs-page .faq-item__button:focus-visible {
  outline: 3px solid #55d8d0;
  outline-offset: -5px;
  border-radius: calc(var(--faq-item-radius, 2rem) - 4px);
}

body.faqs-page .faq-overview #darby-difference,
body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__wrap,
body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__grid,
body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__aside,
body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__panel,
body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__eyebrow {
  overflow: visible !important;
}

@media (min-width: 1025px) {
  body.faqs-page .faq-overview #darby-difference.uses-native-sticky .dr-difference-sticky__aside {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: clamp(84px, 10vh, 116px) !important;
    align-self: start !important;
    height: max-content !important;
  }

  body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__eyebrow {
    box-sizing: content-box;
    padding: 0.22em 0.18em 0.18em;
    margin-top: -0.22em;
    line-height: 1.16 !important;
  }
}

@media (max-width: 1024px) {
  body.faqs-page .faq-overview #darby-difference {
    min-height: 0 !important;
  }

  body.faqs-page .faq-overview #darby-difference .dr-difference-sticky__aside {
    position: static !important;
    top: auto !important;
    height: auto !important;
  }
}

/* Mobile planning-card centerline: titles and underline share the exact
   horizontal midpoint of every card, independent of the numbered circle. */
@media (max-width: 743px) {
  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item {
    position: relative !important;
    display: block !important;
  }

  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__icon {
    position: absolute !important;
    top: 50% !important;
    left: 2rem !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
  }

  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item-copy {
    position: static !important;
    padding: 0 !important;
  }

  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item-title {
    position: absolute !important;
    top: 46% !important;
    left: 50% !important;
    width: max-content !important;
    max-width: calc(100% - 9rem) !important;
    margin: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    transform: translate(-50%, -50%) !important;
  }

  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item-text {
    display: none !important;
  }

  body.faqs-page .dr-difference-sticky--flow .dr-difference-sticky__item::after {
    position: absolute !important;
    left: 50% !important;
    bottom: 20% !important;
    width: 3.75rem !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
  }
}
