      /* ========================================================
   INDEX PAGE
======================================================== */

:root {
  --navy: #122f40;
  --forest: #294a3a;
  --gold: #b08a45;
  --cream: #f7f2e8;
  --ivory: #fcf9f3;

  --gold-line: rgba(176, 138, 69, 0.35);
  --light-line: rgba(247, 242, 232, 0.18);

  --page-width: 1160px;
}

      * {
        box-sizing: border-box;
      }

     html {
  scroll-behavior: smooth;
  scrollbar-gutter: stable both-edges;
}

      body {
        margin: 0;
        background: var(--cream);
        color: var(--navy);
        font-family: "Inter", sans-serif;
        line-height: 1.7;
      }

      main {
        overflow: hidden;
      }
a {
  color: inherit;
}
     .wrap {
  width: min(var(--page-width), calc(100% - 44px));
  margin: 0 auto;
}

      .serif,
      h1,
      h2,
      h3 {
        font-family: "Libre Baskerville", serif;
      }

      /* ========================================================
   HOME HEADER
======================================================== */

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

        background: rgba(247, 242, 232, 0.96);

        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);

        border-bottom: 1px solid rgba(18, 47, 64, 0.1);
      }

      .home-header-inner {
        min-height: 52px;

        display: flex;
        align-items: center;
        justify-content: center;
        gap: 32px;
      }

      .home-nav-left,
      .home-nav-right {
        display: flex;
        align-items: center;
        gap: 32px;
      }

      .home-nav-left a,
      .home-nav-right a {
        color: var(--navy);

        font-family: "Inter", sans-serif;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.14em;

        text-decoration: none;
        text-transform: uppercase;
        white-space: nowrap;

        transition: color 0.3s ease;
      }

      .home-nav-left a:hover,
      .home-nav-right a:hover {
        color: var(--gold);
      }

      /* HERO */

      .hero {
        min-height: 100vh;
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-items: center;
        padding: 70px 0;
        text-align: center;
        background: var(--cream);
      }

      .hero-copy {
        width: 100%;
        max-width: 760px;
        margin: auto;
      }

      .hero-logo {
        width: 100%;
        max-width: 520px;
        display: block;
        margin: 0 auto 36px;
        transition: transform 0.4s ease;
      }

      .hero-logo:hover {
        transform: translateY(-6px);
      }

      .hero-copy .tagline {
        margin: 0 auto 42px;
        max-width: 650px;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(25px, 2.8vw, 40px);
        font-weight: 400;
        line-height: 1.25;
        color: var(--forest);
      }

      .verse {
        max-width: 700px;
        margin: 0 auto;
        padding-top: 28px;
        border-top: 1px solid var(--gold);
        font-family: Georgia, "Times New Roman", serif;
        font-style: italic;
        font-size: 22px;
        line-height: 1.6;
      }

      /* SECTIONS */

      .section {
        padding: 125px 0;
        text-align: center;
      }

   .kicker {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin: 0 0 28px;
  color: var(--gold);
  font-family: "Inter", sans-serif;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.22em;
  line-height: 1;
  text-transform: uppercase;
}

      .kicker::before {
        display: none;
      }

      .kicker::after {
        content: "";
        display: block;
        width: 1px;
        height: 22px;
        background: var(--gold);
      }

      .copy {
        margin: 0 auto;
        max-width: 980px;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(27px, 3.25vw, 47px);
        line-height: 1.35;
        letter-spacing: -0.02em;
      }

      /* HOW WE SERVE */

      .serve {
        background: var(--navy);
        color: var(--cream);
      }

      .serve .copy {
        max-width: 1050px;
        margin-left: auto;
        margin-right: auto;
      }

      /* HOW WE OPERATE */

      .operate {
        background: var(--cream);
        color: var(--navy);
      }

      /* VALUES */

      .values {
        background: var(--navy);
        color: var(--cream);
      }

      .values .wrap {
        max-width: 1180px;
      }

      .values-list {
        margin: 0 auto;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 0;
      }

      .value {
        --base-y: 0px;

        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: 20px;

        min-height: 300px;
        padding: 34px 46px 28px;

        text-align: center;
        background: transparent;
        border: none;

        opacity: 0;
        transform: translateY(calc(var(--base-y) + 26px));

        transition:
          opacity 0.65s ease,
          transform 0.65s ease,
          color 0.35s ease;
      }

      .value + .value {
        border-left: 1px solid rgba(176, 138, 69, 0.35);
      }

      .value.show {
        opacity: 1;
        transform: translateY(var(--base-y));
      }

      .value::before {
        content: "";
        width: 34px;
        height: 2px;
        margin-bottom: 4px;
        background: var(--gold);
        transition: width 0.35s ease;
      }

      .value.show:hover {
        transform: translateY(calc(var(--base-y) - 6px));
      }

      .value:hover::before {
        width: 64px;
      }

      .value h3 {
        position: relative;
        z-index: 1;
        margin: 0;
        color: var(--cream);
        font-family: "Libre Baskerville", serif;
        font-size: clamp(22px, 1.8vw, 29px);
        line-height: 1.25;
      }

      .value p {
        position: relative;
        z-index: 1;
        margin: 0;
        max-width: 285px;
        color: var(--cream);
        font-family: Georgia, "Times New Roman", serif;
        font-size: 21px;
        line-height: 1.48;
      }

      /* WHO WE SERVE */

      .who {
        background: var(--cream);
        color: var(--navy);
      }

      .who .copy + .copy {
        margin-top: 42px;
      }

      /* RESULT */

      .result {
        padding: 140px 0 155px;
        text-align: center;
        background: var(--navy);
        color: var(--cream);
      }

      .result .copy {
        margin-left: auto;
        margin-right: auto;
        font-size: clamp(25px, 3vw, 43px);
      }

      .result .copy + .copy {
        margin-top: 44px;
      }

      .result .closing {
        max-width: 950px;
        margin: 80px auto 0;
        padding-top: 45px;
        border-top: 1px solid var(--gold);
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(27px, 3.2vw, 46px);
        line-height: 1.35;
      }

      .result .final {
        margin: 50px 0 0;
        color: var(--gold);
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(34px, 5vw, 68px);
        line-height: 1;
        font-weight: 700;
      }

      /* SAFE SECTION REVEAL */

      html.reveal-ready .section > .wrap:not(.section-show),
      html.reveal-ready .result > .wrap:not(.section-show) {
        opacity: 0;
        transform: translateY(22px);
      }

      .section > .wrap,
      .result > .wrap {
        opacity: 1;
        transform: translateY(0);
        transition:
          opacity 0.7s ease,
          transform 0.7s ease;
      }

      /* SECTION HOVER */

      .section:not(.values) > .wrap,
      .result > .wrap {
        transition:
          opacity 0.7s ease,
          transform 0.7s ease;
      }

      .section:not(.values) > .wrap.section-show:hover,
      .result > .wrap.section-show:hover {
        transform: translateY(-6px);
      }

      .section:not(.values) .kicker::after,
      .result .kicker::after {
        transition:
          height 0.35s ease,
          opacity 0.35s ease;
      }

      .section:not(.values) > .wrap:hover .kicker::after,
      .result > .wrap:hover .kicker::after {
        height: 34px;
      }

      /* CLOSING SECTION */

      .closing-section {
        padding: 150px 0 165px;
        background: var(--cream);
        color: var(--navy);
        text-align: center;
      }

      .closing-wrap {
        max-width: 1000px;
      }

      .closing-statements {
        display: flex;
        flex-direction: column;
        gap: 10px;
      }

      .closing-statements p {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(25px, 3vw, 43px);
        line-height: 1.4;
      }

      .closing-line {
        width: 1px;
        height: 46px;
        margin: 46px auto;
        background: var(--gold);
        transition: height 0.35s ease;
      }

      .closing-final {
        margin: 0;
        color: var(--forest);
        font-family: "Libre Baskerville", serif;
        font-size: clamp(42px, 5vw, 68px);
        line-height: 1.2;
        font-weight: 700;
      }

      .closing-wrap:hover .closing-line {
        height: 62px;
      }

      /* CONTACT BUTTON */

      .contact-button {
        display: inline-block;
        margin-top: 42px;
        padding: 18px 30px;
        background: var(--forest);
        color: var(--cream);
        border: 1px solid var(--forest);
        text-decoration: none;
        font-family: "Inter", sans-serif;
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.16em;
        cursor: pointer;
        transition:
          transform 0.35s ease,
          background 0.35s ease,
          color 0.35s ease;
      }

      .contact-button:hover {
        transform: translateY(-6px);
        background: transparent;
        color: var(--forest);
      }

      .contact-form {
        display: none;
        width: min(700px, 100%);
        margin: 42px auto 0;
        text-align: left;
        transform: none !important;
      }

      .contact-form.open {
        display: block;
      }

      .contact-field {
        margin-bottom: 24px;
      }

      .mobile-break {
        display: none;
      }

      .contact-field label {
        display: block;
        margin-bottom: 8px;
        color: var(--navy);
        font-family: "Inter", sans-serif;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
      }

      .contact-field input,
      .contact-field textarea {
        width: 100%;
        padding: 16px 18px;
        background: transparent;
        color: var(--navy);
        border: 1px solid rgba(18, 47, 64, 0.3);
        border-radius: 0;
        outline: none;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        transition:
          border-color 0.3s ease,
          box-shadow 0.3s ease;
      }

      .contact-field textarea {
        resize: vertical;
        min-height: 150px;
      }

      .contact-field input:focus,
      .contact-field textarea:focus {
        border-color: var(--gold);
        box-shadow: 0 0 0 1px var(--gold);
      }

      .contact-submit {
        display: inline-block;
        padding: 16px 28px;
        background: var(--navy);
        color: var(--cream);
        border: 1px solid var(--navy);
        font-family: "Inter", sans-serif;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.14em;
        cursor: pointer;
        transition:
          transform 0.35s ease,
          background 0.35s ease,
          color 0.35s ease;
      }

      .contact-submit:hover {
        transform: translateY(-6px);
        background: transparent;
        color: var(--navy);
      }

      .cf-turnstile {
        margin-bottom: 24px;
      }

      .contact-status {
        min-height: 24px;
        margin: 20px 0 0;
        color: var(--forest);
        font-family: "Inter", sans-serif;
        font-size: 14px;
        text-align: center;
      }

      .closing-logo {
        display: block;
        width: 180px;
        max-width: 55%;
        margin: 55px auto 0;
        opacity: 0.75;
      }

      .no-break {
        white-space: nowrap;
      }
      /* FOOTER NAV */

      .footer-nav {
        min-height: 52px;

        display: flex;
        align-items: center;
        justify-content: center;
        gap: 32px;

        background: var(--cream);
        border-top: 1px solid rgba(18, 47, 64, 0.1);
        border-bottom: 1px solid rgba(18, 47, 64, 0.1);
      }

      .footer-nav a {
        color: var(--navy);

        font-family: "Inter", sans-serif;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.14em;

        text-decoration: none;
        text-transform: uppercase;

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

      .footer-nav a:hover {
        color: var(--gold);
        transform: translateY(-1px);
      }

      @media (max-width: 780px) {
        .footer-nav {
          min-height: 46px;
          gap: 18px;
          flex-wrap: wrap;
          padding: 12px 14px;
        }

        .footer-nav a {
          font-size: 10px;
          letter-spacing: 0.12em;
        }
      }
      /* FOOTER */

      .site-footer {
        padding: 24px 0;
        background: var(--cream);
        color: var(--navy);
        text-align: center;
      }

      .site-footer p {
        margin: 0;
        font-family: "Inter", sans-serif;
        font-size: 12px;
        font-weight: 500;
        letter-spacing: 0.08em;
        color: var(--navy);
        opacity: 0.75;
      }

      button,
      .contact-button,
      .contact-submit {
        border-radius: 5px;
      }

      /* MOBILE */

      @media (max-width: 780px) {
        .wrap {
          width: min(100% - 28px, 1160px);
        }

        .home-header-inner {
          min-height: 46px;
          gap: 18px;
        }

        .home-nav-left,
        .home-nav-right {
          gap: 18px;
        }

        .home-nav-left a,
        .home-nav-right a {
          font-size: 10px;
          letter-spacing: 0.12em;
        }

        .hero {
          min-height: auto;
          padding: 42px 0 68px;
        }

        .hero-copy {
          max-width: 100%;
        }

        .hero-logo {
          max-width: 320px;
          width: 88%;
          margin-bottom: 30px;
        }

        .hero-copy .tagline {
          font-size: 24px;
          line-height: 1.2;
          margin: 0 auto 28px;
          max-width: 330px;
        }

        .verse {
          font-size: 18px;
          line-height: 1.6;
          max-width: 340px;
          margin: 0 auto;
          padding-top: 22px;
        }

        .section {
          padding: 72px 0;
        }

        .section .kicker,
        .result .kicker {
          font-size: 15px;
          letter-spacing: 0.18em;
          margin-bottom: 20px;
        }

        .copy {
          font-size: 27px;
          line-height: 1.3;
          letter-spacing: -0.015em;
        }

        .closing-statements p {
          font-size: 30px;
          line-height: 1.35;
        }

        .mobile-break {
          display: inline;
        }

        .values .wrap {
          max-width: 100%;
        }

        .values-list {
          margin-top: 0;
          grid-template-columns: 1fr;
        }

        .value,
        .value:nth-child(2) {
          --base-y: 0px;
        }

        .value {
          min-height: auto;
          gap: 14px;
          padding: 38px 22px;
        }

        .value + .value {
          border-left: 0;
          border-top: 1px solid rgba(176, 138, 69, 0.35);
        }

        .value h3 {
          font-size: 24px;
          line-height: 1.15;
        }

        .value p {
          max-width: 340px;
          font-size: 21px;
          line-height: 1.4;
        }

        .who .copy + .copy {
          margin-top: 30px;
        }

        .result {
          padding: 78px 0 92px;
        }

        .result .copy {
          font-size: 25px;
          line-height: 1.35;
        }

        .result .copy + .copy {
          margin-top: 32px;
        }

        .result .closing {
          margin-top: 54px;
          padding-top: 30px;
          font-size: 29px;
          line-height: 1.3;
        }

        .result .final {
          margin-top: 34px;
          font-size: 42px;
          line-height: 1.05;
        }

        .contact-button {
          margin-top: 34px;
          padding: 16px 22px;
          font-size: 12px;
          letter-spacing: 0.12em;
        }
      }

      /* REDUCED MOTION */

      @media (prefers-reduced-motion: reduce) {
        .value {
          opacity: 1;
          transform: translateY(var(--base-y));
          transition: none;
        }

        .value::before {
          transition: none;
        }

        html.reveal-ready .section > .wrap,
        html.reveal-ready .result > .wrap,
        .section > .wrap,
        .result > .wrap {
          opacity: 1;
          transform: none;
          transition: none;
        }

        .contact-button {
          transition: none;
        }

        .contact-button:hover {
          transform: none;
        }
      }

      /* ========================================================
   PRICING PAGE
======================================================== */

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

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

        padding-top: 35px;

        background: rgba(247, 242, 232, 0.96);

        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);

        border-bottom: 1px solid rgba(18, 47, 64, 0.1);
      }

      .pricing-header-inner {
        position: relative;
        min-height: 68px;
      }

      .pricing-logo-link {
        position: absolute;
        left: 50%;
        top: 50%;

        transform: translate(-50%, -50%);

        display: block;
        line-height: 0;
      }

      .pricing-logo {
        display: block;
        width: 120px;
        height: auto;
      }

      .pricing-nav-left,
      .pricing-nav-right {
        position: absolute;
        top: 50%;

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

        transform: translateY(-50%);
      }

      .pricing-nav-left {
        right: calc(50% + 82px);
      }

      .pricing-nav-right {
        left: calc(50% + 82px);
      }

      .pricing-nav-left a,
      .pricing-nav-right a {
        color: var(--navy);

        font-family: "Inter", sans-serif;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.14em;

        text-decoration: none;
        text-transform: uppercase;
        white-space: nowrap;

        transition: color 0.3s ease;
      }

      .pricing-nav-left a:hover,
      .pricing-nav-right a:hover {
        color: var(--gold);
      }

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

      .mobile-menu-toggle,
      .mobile-menu {
        display: none;
      }

      .mobile-menu-toggle {
        position: relative;

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

        min-width: 64px;
        height: 40px;

        padding: 8px;

        background: transparent;
        border: 0;

        color: var(--navy);

        font-family: "Inter", sans-serif;
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.14em;

        cursor: pointer;
      }

      .menu-label,
      .menu-dot,
      .menu-close {
        transition:
          opacity 0.3s ease,
          transform 0.3s ease;
      }

      .menu-dot {
        width: 5px;
        height: 5px;

        background: var(--gold);
        border-radius: 50%;
      }

      .menu-close {
        position: absolute;
        left: 50%;
        top: 50%;

        width: 22px;
        height: 22px;

        opacity: 0;

        transform: translate(-50%, -50%) rotate(-45deg);
      }

      .menu-close span {
        position: absolute;
        left: 50%;
        top: 50%;

        width: 22px;
        height: 2px;

        background: var(--navy);
      }

      .menu-close span:first-child {
        transform: translate(-50%, -50%) rotate(45deg);
      }

      .menu-close span:last-child {
        transform: translate(-50%, -50%) rotate(-45deg);
      }

      .mobile-menu-toggle.is-open .menu-label,
      .mobile-menu-toggle.is-open .menu-dot {
        opacity: 0;
        transform: scale(0.8);
      }

      .mobile-menu-toggle.is-open .menu-close {
        opacity: 1;
        transform: translate(-50%, -50%) rotate(0);
      }

      .mobile-menu {
        background: var(--cream);

        border-top: 1px solid rgba(18, 47, 64, 0.1);
      }

      .mobile-menu a {
        display: block;

        padding: 16px 22px;

        color: var(--navy);

        font-family: "Inter", sans-serif;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.14em;

        text-align: center;
        text-decoration: none;
        text-transform: uppercase;

        border-bottom: 1px solid rgba(18, 47, 64, 0.08);

        transition:
          color 0.3s ease,
          background 0.3s ease,
          transform 0.3s ease;
      }

      .mobile-menu a:hover {
        color: var(--gold);
        background: rgba(176, 138, 69, 0.06);

        transform: translateY(-2px);
      }

      .mobile-menu.open {
        display: block;
      }

      /* ========================================================
         PRICING HERO
      ======================================================== */

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

        padding: 105px 0 115px;

        background: var(--navy);
        color: var(--cream);

        text-align: center;
      }

      .pricing-hero-inner {
        position: relative;
        z-index: 2;

        max-width: 900px;
      }

      .pricing-hero .kicker {
        align-items: center;
        margin-bottom: 34px;
      }

      .price-lockup {
        display: flex;
        justify-content: center;
        align-items: flex-end;

        gap: 17px;

        margin: 0 0 32px;
      }

      .price {
        margin: 0;

        color: var(--cream);

        font-family: "Libre Baskerville", serif;
        font-size: clamp(130px, 17vw, 220px);
        font-weight: 700;
        line-height: 0.82;
        letter-spacing: -0.07em;
      }

      .per-hour {
        padding-bottom: 13px;

        color: var(--gold);

        font-family: "Inter", sans-serif;
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.16em;

        text-transform: uppercase;
        white-space: nowrap;
      }

      .pricing-hero-title {
        max-width: 780px;

        margin: 0 auto 27px;

        color: var(--cream);

        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(37px, 4.6vw, 58px);
        font-weight: 400;
        line-height: 1.16;
        letter-spacing: -0.025em;
      }

      .pricing-hero-description {
        max-width: 630px;

        margin: 0 auto;

        color: var(--cream);

        font-family: Georgia, "Times New Roman", serif;
        font-size: 20px;
        line-height: 1.6;
      }

      /* ========================================================
         SIMPLE PROCESS
      ======================================================== */

      .simple-process {
        padding: 110px 0 112px;

        background: var(--cream);
        color: var(--navy);

        text-align: center;
      }

      .simple-process-head {
        max-width: 820px;
        margin: 0 auto 62px;
      }

      .simple-process-title {
        margin: 0 0 24px;

        color: var(--navy);

        font-family: "Libre Baskerville", serif;
        font-size: clamp(42px, 5vw, 66px);
        font-weight: 700;
        line-height: 1.15;
        letter-spacing: -0.025em;
      }

      .simple-process-intro {
        max-width: 700px;
        margin: 0 auto;

        font-family: Georgia, "Times New Roman", serif;
        font-size: 22px;
        line-height: 1.6;
      }

      .simple-steps {
        display: grid;
        grid-template-columns: repeat(3, 1fr);

        border-top: 1px solid var(--gold-line);
        border-bottom: 1px solid var(--gold-line);
      }

      .simple-step {
        padding: 34px 40px 28px;

        border-right: 1px solid var(--gold-line);
      }

      .simple-step:first-child {
        padding-left: 0;
      }

      .simple-step:last-child {
        padding-right: 0;
        border-right: 0;
      }

      .simple-step h3 {
        margin: 0 0 15px;

        color: var(--navy);

        font-family: "Libre Baskerville", serif;
        font-size: 21px;
        line-height: 1.3;
      }

      .simple-step p {
        margin: 0 auto;
        max-width: 300px;

        font-family: Georgia, "Times New Roman", serif;
        font-size: 18px;
        line-height: 1.55;
      }

      /* ========================================================
         ESTIMATE
      ======================================================== */

      .pricing-clarity {
        padding: 110px 0;

        background: var(--ivory);
        color: var(--navy);
      }

      .pricing-clarity-head {
        margin-bottom: 55px;

        text-align: center;
      }

      .pricing-clarity-copy {
        text-align: center;
      }

      .pricing-clarity-title {
        max-width: 720px;

        margin: 0 auto 26px;

        color: var(--navy);

        font-family: "Libre Baskerville", serif;
        font-size: clamp(40px, 4.6vw, 62px);
        font-weight: 700;
        line-height: 1.16;
        letter-spacing: -0.025em;
      }

      .estimate-card {
        width: 100%;
        max-width: 700px;

        margin-left: auto;
        margin-right: auto;

        padding: 40px 42px 36px;

        background: var(--navy);
        color: var(--cream);

        border-top: 3px solid var(--gold);

        box-shadow: 0 22px 55px rgba(18, 47, 64, 0.09);
      }

      .estimate-card-label {
        margin: 0 0 28px;

        color: var(--gold);

        font-family: "Inter", sans-serif;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.18em;

        text-transform: uppercase;
      }

      .estimate-row {
        display: grid;
        grid-template-columns: 1fr auto;

        align-items: end;
        gap: 30px;

        padding: 24px 0;

        border-top: 1px solid var(--light-line);
      }

      .estimate-row span {
        color: var(--cream);

        font-family: "Inter", sans-serif;
        font-size: 13px;
        font-weight: 500;
        letter-spacing: 0.05em;
      }

      .estimate-row strong {
        color: var(--cream);

        font-family: "Libre Baskerville", serif;
        font-size: 23px;
        font-weight: 700;
        line-height: 1.15;

        text-align: right;
      }

      .estimate-note {
        margin: 25px 0 0;

        color: var(--cream);

        font-family: Georgia, "Times New Roman", serif;
        font-size: 17px;
        font-style: italic;
        line-height: 1.55;

        opacity: 0.85;
      }

      /* ========================================================
         GOOD STEWARDSHIP / CTA
      ======================================================== */

      .pricing-stewardship {
        padding: 125px 0 135px;

        background: var(--cream);
        color: var(--navy);

        text-align: center;
      }

      .pricing-stewardship-inner {
        max-width: 960px;
      }

      .pricing-stewardship-title {
        max-width: 880px;

        margin: 0 auto 34px;

        color: var(--forest);

        font-family: "Libre Baskerville", serif;
        font-size: clamp(42px, 5.4vw, 70px);
        font-weight: 700;
        line-height: 1.17;
        letter-spacing: -0.025em;
      }

      .pricing-stewardship-copy {
        max-width: 720px;

        margin: 0 auto;

        color: var(--navy);

        font-family: Georgia, "Times New Roman", serif;
        font-size: 22px;
        line-height: 1.6;
      }

      .stewardship-line {
        width: 1px;
        height: 46px;

        margin: 42px auto;

        background: var(--gold);
      }

      .pricing-cta {
        display: inline-block;

        padding: 18px 30px;

        background: var(--forest);
        color: var(--cream);

        border: 1px solid var(--forest);
        border-radius: 5px;

        font-family: "Inter", sans-serif;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.16em;

        text-decoration: none;
        text-transform: uppercase;

        transition:
          transform 0.35s ease,
          background 0.35s ease,
          color 0.35s ease;
      }

      .pricing-cta:hover {
        transform: translateY(-6px);

        background: transparent;
        color: var(--forest);
      }

      .trusted-by {
        margin-top: 65px;

        text-align: center;
      }

      .trusted-by-label {
        margin: 0 0 18px;

        color: var(--gold);

        font-family: "Inter", sans-serif;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.18em;

        text-transform: uppercase;
      }

      .trusted-by-logo {
        display: block;

        width: 200px;
        max-width: 100%;
        height: auto;

        margin: 0 auto;
      }

      /* ========================================================
         SECTION MOVEMENT
      ======================================================== */

      html.reveal-ready .simple-process > .wrap:not(.section-show),
      html.reveal-ready .pricing-clarity > .wrap:not(.section-show),
      html.reveal-ready .pricing-stewardship > .wrap:not(.section-show) {
        opacity: 0;
        transform: translateY(22px);
      }

      .simple-process > .wrap,
      .pricing-clarity > .wrap,
      .pricing-stewardship > .wrap {
        opacity: 1;
        transform: translateY(0);

        transition:
          opacity 0.7s ease,
          transform 0.7s ease;
      }

      .simple-process > .wrap.section-show:hover,
      .pricing-clarity > .wrap.section-show:hover,
      .pricing-stewardship > .wrap.section-show:hover {
        transform: translateY(-6px);
      }

      .simple-process .kicker::after,
      .pricing-clarity .kicker::after,
      .pricing-stewardship .kicker::after {
        transition: height 0.35s ease;
      }

      .simple-process > .wrap:hover .kicker::after,
      .pricing-clarity > .wrap:hover .kicker::after,
      .pricing-stewardship > .wrap:hover .kicker::after {
        height: 34px;
      }

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

      @media (max-width: 900px) {
        .simple-steps {
          grid-template-columns: 1fr;
          border-bottom: 0;
        }

        .simple-step,
        .simple-step:first-child,
        .simple-step:last-child {
          min-height: auto;

          padding: 30px 0;

          border-right: 0;
          border-bottom: 1px solid var(--gold-line);
        }
      }

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

      @media (max-width: 780px) {

        /* HEADER */

        .pricing-header {
          padding-top: 12px;
        }

        .pricing-header-inner {
          position: relative;
          min-height: 68px;
        }

        .pricing-nav-left,
        .pricing-nav-right {
          display: none;
        }

        .pricing-logo-link {
          position: absolute;
          left: 50%;
          top: 50%;

          transform: translate(-50%, -50%);

          display: block;
          line-height: 0;
        }

        .pricing-logo {
          width: 90px;
        }

        .mobile-menu-toggle {
          display: flex;

          position: absolute;
          right: 0;
          top: 50%;

          transform: translateY(-50%);
        }

        /* HERO */

        .pricing-hero {
          padding: 80px 0 88px;
        }

        .pricing-hero .kicker {
          margin-bottom: 30px;
        }

        .price-lockup {
          gap: 10px;

          margin-bottom: 28px;
        }

        .price {
          font-size: 108px;
        }

        .per-hour {
          padding-bottom: 7px;

          font-size: 11px;
        }

        .pricing-hero-title {
          max-width: 540px;

          font-size: 38px;
          line-height: 1.18;
        }

        .pricing-hero-description {
          max-width: 500px;

          font-size: 19px;
          line-height: 1.55;
        }

        /* PROCESS */

        .simple-process,
        .pricing-clarity {
          padding: 76px 0;
        }

        .simple-process-head {
          margin-bottom: 44px;
        }

        .simple-process-title,
        .pricing-clarity-title {
          font-size: 39px;
          line-height: 1.2;
        }

        .simple-process-intro {
          font-size: 20px;
          line-height: 1.55;
        }

        .simple-step h3 {
          font-size: 20px;
        }

        .simple-step p {
          font-size: 19px;
        }

        /* ESTIMATE */

        .estimate-card {
          padding: 32px 24px 30px;
        }

        .estimate-row {
          gap: 18px;

          padding: 21px 0;
        }

        .estimate-row strong {
          font-size: 21px;
        }

        /* CTA */

        .pricing-stewardship {
          padding: 86px 0 94px;
        }

        .pricing-stewardship-title {
          font-size: 40px;
          line-height: 1.2;
        }

        .pricing-stewardship-copy {
          font-size: 20px;
          line-height: 1.55;
        }

        .pricing-cta {
          padding: 16px 22px;

          font-size: 12px;
          letter-spacing: 0.12em;
        }

        }
      /* ========================================================
         SMALL MOBILE
      ======================================================== */

      @media (max-width: 430px) {
        .price {
          font-size: 92px;
        }

        .pricing-hero-title {
          font-size: 33px;
        }

        .estimate-row {
          grid-template-columns: 1fr;
          gap: 8px;
        }

        .estimate-row strong {
          text-align: left;
        }
      }

      /* ========================================================
         INSIGHTS PAGE
      ======================================================== */

      .insights-hero {
        padding: 115px 0 100px;
        text-align: center;
      }

      .insights-kicker {
        position: relative;
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        gap: 14px;
        margin: 0 0 30px;
        color: var(--gold);
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.22em;
        text-transform: uppercase;
      }

      .insights-kicker::after {
        content: "";
        display: block;
        width: 1px;
        height: 26px;
        background: var(--gold);
      }

      .insights-hero h1 {
        max-width: 900px;
        margin: 0 auto;
        color: var(--navy);
        font-size: clamp(44px, 6vw, 78px);
        line-height: 1.08;
        letter-spacing: -0.035em;
      }

      .insights-intro {
        max-width: 760px;
        margin: 30px auto 0;
        color: var(--forest);
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(21px, 2.2vw, 28px);
        line-height: 1.55;
      }

      .articles-section {
        padding: 30px 0 130px;
      }

      .articles-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 30px;
      }

      .article-card {
        position: relative;
        display: flex;
        flex-direction: column;
        min-height: 370px;
        padding: 48px;
        background: var(--ivory);
        color: var(--navy);
        border: 1px solid rgba(18, 47, 64, 0.13);
        text-decoration: none;
        transition:
          transform 0.35s ease,
          border-color 0.35s ease,
          box-shadow 0.35s ease;
      }

      .article-card:hover {
        transform: translateY(-7px);
        border-color: rgba(176, 138, 69, 0.65);
        box-shadow: 0 18px 45px rgba(18, 47, 64, 0.08);
      }

      .article-category {
        margin: 0 0 24px;
        color: var(--gold);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.16em;
        text-transform: uppercase;
      }

      .article-card h2 {
        margin: 0;
        color: var(--navy);
        font-size: clamp(27px, 2.7vw, 38px);
        line-height: 1.28;
        letter-spacing: -0.02em;
      }

      .article-description {
        margin: 24px 0 34px;
        color: var(--navy);
        font-family: Georgia, "Times New Roman", serif;
        font-size: 20px;
        line-height: 1.55;
        opacity: 0.86;
      }

      .article-link {
        margin-top: auto;
        color: var(--forest);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.15em;
        text-transform: uppercase;
      }

      .article-link span {
        display: inline-block;
        margin-left: 6px;
        transition: transform 0.3s ease;
      }

      .article-card:hover .article-link span {
        transform: translateX(5px);
      }

      .article-card.featured {
        grid-column: 1 / -1;
        min-height: 400px;
        padding: 60px;
        background: var(--navy);
        color: var(--cream);
        border-color: var(--navy);
      }

      .article-card.featured h2,
      .article-card.featured .article-description {
        color: var(--cream);
      }

      .article-card.featured .article-description {
        max-width: 780px;
      }

      .article-card.featured .article-link {
        color: var(--gold);
      }

      @media (max-width: 780px) {
        .insights-hero {
          padding: 75px 0 65px;
        }

        .insights-kicker {
          margin-bottom: 22px;
          font-size: 12px;
        }

        .insights-kicker::after {
          height: 20px;
        }

        .insights-hero h1 {
          font-size: 44px;
          line-height: 1.1;
        }

        .insights-intro {
          margin-top: 24px;
          font-size: 21px;
          line-height: 1.5;
        }

        .articles-section {
          padding: 10px 0 80px;
        }

        .articles-grid {
          grid-template-columns: 1fr;
          gap: 20px;
        }

        .article-card,
        .article-card.featured {
          grid-column: auto;
          min-height: auto;
          padding: 34px 28px;
        }

        .article-category {
          margin-bottom: 18px;
        }

        .article-card h2 {
          font-size: 28px;
          line-height: 1.3;
        }

        .article-description {
          margin: 20px 0 30px;
          font-size: 18px;
          line-height: 1.55;
        }
      }

      @media (max-width: 430px) {
        .insights-hero h1 {
          font-size: 38px;
        }
      }

      /* ========================================================
         ARTICLE PAGE
      ======================================================== */

      html.article-page {
        scrollbar-gutter: auto;
      }

      .article-page body {
        -webkit-font-smoothing: antialiased;
        text-rendering: optimizeLegibility;
      }

      .article-page main {
        overflow: visible;
      }

      .article-page .article-hero {
        padding: 105px 0 90px;
        background: var(--navy);
        color: var(--cream);
        text-align: center;
      }

      .article-page .article-hero-inner {
        max-width: 950px;
      }

      .article-page .article-hero .article-category {
        position: relative;
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        gap: 13px;
        margin: 0 0 30px;
        color: var(--gold);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.2em;
        text-transform: uppercase;
      }

      .article-page .article-hero .article-category::after {
        content: "";
        display: block;
        width: 1px;
        height: 25px;
        background: var(--gold);
      }

      .article-page .article-hero h1 {
        max-width: 920px;
        margin: 0 auto;
        color: var(--cream);
        font-size: clamp(44px, 6vw, 76px);
        font-weight: 700;
        line-height: 1.12;
        letter-spacing: -0.035em;
      }

      .article-page .article-lead {
        max-width: 760px;
        margin: 32px auto 0;
        color: var(--cream);
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(20px, 2vw, 25px);
        line-height: 1.6;
        opacity: 0.9;
      }

      .article-page .article-section {
        padding: 100px 0 120px;
      }

      .article-page .article-content {
        width: min(780px, 100%);
        margin: 0 auto;
      }

      .article-page .article-content p,
      .article-page .article-content li {
        font-family: Georgia, "Times New Roman", serif;
        font-size: 20px;
        line-height: 1.8;
      }

      .article-page .article-content p {
        margin: 0 0 26px;
      }

      .article-page .article-content h2 {
        margin: 78px 0 28px;
        color: var(--navy);
        font-size: clamp(30px, 3.4vw, 44px);
        line-height: 1.28;
        letter-spacing: -0.025em;
      }

      .article-page .article-content h2:first-of-type {
        margin-top: 60px;
      }

      .article-page .article-content strong {
        color: var(--forest);
      }

      .article-page .article-content ul {
        margin: 8px 0 32px;
        padding-left: 28px;
      }

      .article-page .article-content li {
        margin-bottom: 9px;
      }

      .article-page .question-list {
        margin: 12px 0 32px;
        padding: 28px 32px;
        background: var(--ivory);
        border-left: 3px solid var(--gold);
      }

      .article-page .question-list p {
        margin: 0 0 10px;
      }

      .article-page .question-list p:last-child {
        margin-bottom: 0;
      }

      .article-page .assessment {
        margin-top: 55px;
        padding: 40px;
        background: #ffffff;
        color: var(--navy);
        border: 1px solid rgba(18, 47, 64, 0.1);
      }

      .article-page .article-content .assessment-label {
        margin: 0 0 14px;
        color: var(--gold);
        font-family: "Inter", sans-serif;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.18em;
        text-transform: uppercase;
      }

      .article-page .assessment h2 {
        margin: 0 0 20px;
        color: var(--forest);
        font-size: clamp(30px, 3.6vw, 42px);
        line-height: 1.25;
      }

      .article-page .assessment p,
      .article-page .assessment li {
        color: var(--navy);
      }

      .article-page .assessment strong {
        color: var(--forest);
      }

      .article-page .assessment-item {
        margin-bottom: 18px;
      }

      .article-page .assessment-item strong {
        display: block;
        margin-bottom: 2px;
        color: var(--gold);
      }

      .article-page .article-closing {
        margin-top: 38px;
        padding-top: 30px;
        border-top: 1px solid rgba(176, 138, 69, 0.35);
        text-align: center;
      }

      .article-page .article-closing p {
        max-width: 640px;
        margin-left: auto;
        margin-right: auto;
      }

      .article-page .article-content .article-closing-line {
        color: var(--navy);
        font-family: "Libre Baskerville", serif;
        font-size: clamp(21px, 2.6vw, 29px);
        line-height: 1.45;
      }

      .article-page .article-content .article-final {
        margin-top: 20px;
        color: var(--gold);
        font-family: "Libre Baskerville", serif;
        font-size: clamp(28px, 3.5vw, 38px);
        font-weight: 700;
      }

      .article-page .article-cta {
        display: inline-block;
        margin-top: 8px;
        padding: 18px 30px;
        background: var(--forest);
        color: var(--cream);
        border: 1px solid var(--forest);
        border-radius: 5px;
        font-family: "Inter", sans-serif;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.16em;
        text-decoration: none;
        text-transform: uppercase;
        transition:
          transform 0.35s ease,
          background 0.35s ease,
          color 0.35s ease;
      }

      .article-page .article-cta:hover {
        transform: translateY(-6px);
        background: transparent;
        color: var(--forest);
      }

      .article-page .back-to-insights {
        margin-top: 38px;
        text-align: center;
      }

      .article-page .back-to-insights a {
        color: var(--forest);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.14em;
        text-decoration: none;
        text-transform: uppercase;
        transition: color 0.3s ease;
      }

      .article-page .back-to-insights a:hover {
        color: var(--gold);
      }

      @media (max-width: 780px) {
        .article-page .pricing-header {
          padding-top: 35px;
        }

        .article-page .pricing-header-inner {
          min-height: 60px;
        }

        .article-page .pricing-nav-left {
          right: calc(50% + 57px);
        }

        .article-page .pricing-nav-right {
          left: calc(50% + 57px);
        }

        .article-page .pricing-nav-left,
        .article-page .pricing-nav-right {
          display: flex;
          gap: 10px;
        }

        .article-page .pricing-nav-left a,
        .article-page .pricing-nav-right a {
          font-size: 9px;
          letter-spacing: 0.08em;
        }

        .article-page .article-hero {
          padding: 78px 0 68px;
        }

        .article-page .article-hero .article-category {
          margin-bottom: 22px;
          font-size: 11px;
        }

        .article-page .article-hero .article-category::after {
          height: 20px;
        }

        .article-page .article-hero h1 {
          font-size: 40px;
          line-height: 1.15;
        }

        .article-page .article-lead {
          margin-top: 26px;
          font-size: 19px;
          line-height: 1.55;
        }

        .article-page .article-section {
          padding: 70px 0 80px;
        }

        .article-page .article-content p,
        .article-page .article-content li {
          font-size: 18px;
          line-height: 1.7;
        }

        .article-page .article-content h2 {
          margin-top: 58px;
          font-size: 30px;
          line-height: 1.3;
        }

        .article-page .question-list {
          padding: 24px 22px;
        }

        .article-page .assessment {
          margin-top: 65px;
          padding: 38px 26px;
        }

        .article-page .assessment h2 {
          font-size: 32px;
        }
      }
