.elementor-1056 .elementor-element.elementor-element-a20b50c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS */:root {
      --brown:        #844E40;
      --brown-dark:   #5C3129;
      --brown-mid:    #A3655A;
      --brown-pale:   #F0E6E2;
      --orange:       #E08B24;
      --orange-warm:  #F0A040;
      --orange-pale:  #FDF0DC;
      --bg:           #F5F3EF;
      --bg-warm:      #EDE9E0;
      --dark:         #2A1408;
      --dark-mid:     #3D1F0F;
      --border:       #E0D4C4;
      --border-dark:  #C8B89A;
      --text:         #2C1A10;
      --text-mid:     #6B4A3A;
      --text-light:   #9B7060;
      --white:        #FFFDF9;
      --sans: 'Nunito', 'Proxima Nova', -apple-system, BlinkMacSystemFont, sans-serif;
      --shadow-sm: 0 1px 4px rgba(42,20,8,.07);
      --shadow-md: 0 4px 18px rgba(42,20,8,.10);
      --shadow-lg: 0 8px 36px rgba(42,20,8,.14);
      --r:    10px;
      --r-lg: 16px;
      --max:  860px;
      --text-max: 660px; /* consistent prose width across all sections */
    }

    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: var(--sans);
      font-size: 17px;
      line-height: 1.74;
      color: var(--text);
      background: var(--bg);
      -webkit-font-smoothing: antialiased;
    }
    img { max-width: 100%; display: block; }
    a   { color: var(--orange); }
    a:hover { color: var(--brown); text-decoration: none; }
    h1, h2, h3, h4 {
      font-family: var(--sans);
      font-weight: 700;
      line-height: 1.2;
      color: var(--text);
    }

    .wrap { max-width: var(--max); margin: 0 auto; padding: 0 28px; }
    section { padding: 90px 0; }

    .eyebrow {
      display: inline-block;
      font-size: 11.5px;
      font-weight: 800;
      letter-spacing: .13em;
      text-transform: uppercase;
      color: var(--orange);
      margin-bottom: 12px;
    }

    /* === BUTTONS === */
    .btn {
      display: inline-block;
      padding: 15px 36px;
      border-radius: 50px;
      font-family: var(--sans);
      font-size: 16px;
      font-weight: 700;
      cursor: pointer;
      border: none;
      transition: background .18s, transform .16s, box-shadow .18s;
      text-decoration: none;
    }
    .btn-orange { background: var(--orange); color: var(--white); }
    .btn-orange:hover {
      background: #C47A1A;
      color: var(--white);
      text-decoration: none;
      transform: translateY(-2px);
      box-shadow: 0 6px 22px rgba(224,139,36,.38);
    }

    /* === NAV === */
    .nav {
      background: var(--white);
      border-bottom: 1px solid var(--border);
      padding: 0 28px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 68px;
      position: sticky;
      top: 0;
      z-index: 100;
      box-shadow: var(--shadow-sm);
    }
    .nav-logo img { height: 36px; width: auto; }
    .nav-cta .btn { padding: 10px 22px; font-size: 14.5px; }

    /* === ANN BAR === */
    .ann {
      background: var(--brown-dark);
      color: rgba(255,255,255,.78);
      text-align: center;
      padding: 10px 24px;
      font-size: 13.5px;
      font-weight: 500;
    }
    .ann strong { color: var(--orange-warm); font-weight: 700; }

    /* === HERO === */
    .hero {
      background: var(--dark);
      padding: 96px 0 88px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }
    .hero::before {
      content: '';
      position: absolute; inset: 0;
      background:
        radial-gradient(ellipse 70% 60% at 15% 60%, rgba(224,139,36,.11) 0%, transparent 65%),
        radial-gradient(ellipse 55% 70% at 85% 25%, rgba(132,78,64,.18) 0%, transparent 65%);
      pointer-events: none;
    }
    .hero .wrap { position: relative; z-index: 1; }
    .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(224,139,36,.15);
      border: 1px solid rgba(224,139,36,.32);
      color: var(--orange-warm);
      padding: 6px 18px;
      border-radius: 100px;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      margin-bottom: 32px;
    }
    .hero-badge-dot {
      width: 7px; height: 7px;
      border-radius: 50%;
      background: var(--orange-warm);
      animation: pulse 2.4s ease-in-out infinite;
    }
    @keyframes pulse {
      0%,100% { opacity: 1; transform: scale(1); }
      50%      { opacity: .35; transform: scale(.75); }
    }
    .hero h1 {
      font-size: clamp(32px, 5.5vw, 58px);
      color: var(--white);
      font-weight: 800;
      margin-bottom: 22px;
      max-width: 720px;
      margin-left: auto; margin-right: auto;
      line-height: 1.13;
    }
    .hero h1 span { color: var(--orange-warm); font-size: .82em; }
    .hero-sub {
      font-size: 18px;
      font-weight: 400;
      color: rgba(255,255,255,.65);
      max-width: var(--text-max);
      margin: 0 auto 44px;
      line-height: 1.7;
    }
    .hero-sub strong { color: rgba(255,255,255,.88); font-weight: 600; }
    .hero-cta-stack {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 13px;
    }
    .hero-cta-stack .btn { font-size: 17px; padding: 17px 44px; }
    .hero-micro { font-size: 13px; color: rgba(255,255,255,.33); }

    /* === FOUNDING BOX === */
    .founding-section { padding: 56px 0; background: var(--bg); }
    .founding-card {
      background: var(--white);
      border: 2.5px solid var(--orange);
      border-radius: var(--r-lg);
      padding: 46px 50px;
      position: relative;
    }
    .founding-label {
      position: absolute;
      top: -15px; left: 42px;
      background: var(--orange);
      color: var(--white);
      font-size: 11px; font-weight: 800;
      letter-spacing: .12em; text-transform: uppercase;
      padding: 4px 16px; border-radius: 100px;
    }
    .founding-card h2 { font-size: 24px; font-weight: 800; margin-bottom: 14px; }
    .founding-card > p { color: var(--text-mid); max-width: var(--text-max); margin-bottom: 10px; font-size: 16.5px; }
    .founding-card > p:last-of-type { margin-bottom: 24px; }

    .f-sublabel {
      font-size: 11px; font-weight: 800;
      letter-spacing: .11em; text-transform: uppercase;
      color: var(--brown); margin-bottom: 10px; margin-top: 22px;
    }
    .f-sublabel.bonus { color: var(--brown-dark); }
    .f-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(195px, 1fr));
      gap: 10px;
    }
    .f-item {
      background: var(--orange-pale);
      border: 1px solid #f0d8a8;
      border-radius: var(--r);
      padding: 13px 15px;
      font-size: 14px;
      font-weight: 600;
      color: var(--brown-dark);
      display: flex;
      align-items: flex-start;
      gap: 9px;
      line-height: 1.52;
    }
    .f-item.bonus {
      background: var(--brown-pale);
      border-color: #d4b8a8;
    }
    .f-check { color: var(--orange); font-size: 15px; flex-shrink: 0; margin-top: 1px; }
    .f-item.bonus .f-check { color: var(--brown-dark); }


    /* === BACK LINK (nav) === */
    .nav-back { font-size: 14.5px; font-weight: 700; color: var(--brown); margin-left: auto; margin-right: 22px; white-space: nowrap; }
    .nav-back:hover { color: var(--orange); text-decoration: none; }

    /* === FOUNDING: HQ line under sessions === */
    .f-item.f-hq { grid-column: 1 / -1; background: var(--white); border: 1.5px dashed var(--orange); }

    /* === HOW YOUR FAMILY USES IT === */
    .use { margin-top: 54px; padding-top: 44px; border-top: 1px solid rgba(255,255,255,.12); }
    .use h3 { color: var(--white); font-size: clamp(21px, 2.6vw, 26px); font-weight: 800; margin-bottom: 8px; }
    .use-intro { color: rgba(255,255,255,.66); font-size: 16px; margin-bottom: 30px; max-width: var(--text-max); }
    .use-track { list-style: none; display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; position: relative; margin: 0; padding: 0; }
    .use-track::before { content: ""; position: absolute; top: 9px; left: 9px; right: 9px; height: 2px; background: rgba(240,160,64,.45); }
    .use-stop { position: relative; padding: 32px 14px 0 0; }
    .use-stop::before { content: ""; position: absolute; top: 0; left: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--dark-mid); border: 3px solid var(--orange-warm); box-sizing: border-box; }
    .use-stop:last-child::before { background: var(--orange-warm); }
    .use-when { display: block; color: var(--orange-warm); font-size: 12.5px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; margin-bottom: 6px; line-height: 1.35; }
    .use-doc  { display: block; color: var(--white); font-size: 14.5px; font-weight: 700; margin-bottom: 6px; line-height: 1.35; }
    .use-what { display: block; color: rgba(255,255,255,.62); font-size: 13.5px; line-height: 1.55; }
    .use-note { color: rgba(255,255,255,.5); font-size: 14px; margin-top: 26px; margin-bottom: 0; font-style: italic; }
    @media (max-width: 820px) {
      .use-track { grid-template-columns: 1fr; }
      .use-track::before { top: 9px; bottom: 9px; left: 9px; right: auto; width: 2px; height: auto; }
      .use-stop { padding: 0 0 26px 40px; }
      .use-stop:last-child { padding-bottom: 0; }
    }

    /* === PERCH: collapsible long testimonial === */
    .perch-more { display: none; }
    .perch.expanded .perch-more { display: inline; }
    .perch.expanded .perch-ellipsis { display: none; }
    .perch-toggle { margin-top: 18px; background: none; border: 1.5px solid rgba(240,160,64,.6); color: var(--orange-warm); font: inherit; font-size: 14.5px; font-weight: 700; padding: 9px 20px; border-radius: 999px; cursor: pointer; }
    .perch-toggle:hover { background: rgba(240,160,64,.12); }
    .perch-toggle:focus-visible, .nav-back:focus-visible { outline: 2px solid var(--orange-warm); outline-offset: 3px; }

    /* === ROBERT PERSONAL INTRO === */
    .robert-intro { background: var(--bg-warm); padding: 64px 0; }
    .ri-layout {
      display: grid;
      grid-template-columns: 230px 1fr;
      gap: 52px;
      align-items: center;
    }
    .ri-photo {
      width: 230px; height: 288px;
      border-radius: var(--r-lg);
      overflow: hidden;
      box-shadow: var(--shadow-lg);
      flex-shrink: 0;
    }
    .ri-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
    .ri-text blockquote {
      font-size: 17.5px;
      font-style: italic;
      color: var(--text-mid);
      line-height: 1.78;
      margin-bottom: 18px;
      max-width: var(--text-max);
    }
    .ri-text blockquote p { margin-bottom: 13px; }
    .ri-text blockquote p:last-child { margin-bottom: 0; }
    .ri-sig { font-size: 13.5px; color: var(--text-light); font-weight: 600; }
    .ri-sig span { color: var(--brown); }

    /* === PAIN === */
    .pain { background: var(--bg); }
    .pain h2 { font-size: clamp(26px, 3.8vw, 40px); font-weight: 800; margin-bottom: 12px; }
    .pain-intro { color: var(--text-mid); margin-bottom: 34px; max-width: var(--text-max); font-size: 16.5px; }
    .pain-qs {
      list-style: none;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
      gap: 11px; margin-bottom: 34px;
    }
    .pain-qs li {
      background: var(--white);
      border-left: 3.5px solid var(--orange);
      border-radius: 0 var(--r) var(--r) 0;
      padding: 13px 18px;
      font-size: 15.5px; font-weight: 600;
      color: var(--brown-dark); font-style: italic;
      box-shadow: var(--shadow-sm);
    }
    .pain-close { color: var(--text-mid); max-width: var(--text-max); font-size: 16px; line-height: 1.78; }

    /* === TESTIMONIAL PROFILE ROW (shared) === */
    .t-profile { display: flex; align-items: center; gap: 14px; }
    .t-avatar-img {
      width: 52px; height: 52px;
      border-radius: 50%;
      object-fit: cover;
      border: 2px solid rgba(224,139,36,.5);
      flex-shrink: 0;
    }
    .t-avatar-initials {
      width: 52px; height: 52px;
      border-radius: 50%;
      background: rgba(224,139,36,.15);
      border: 2px solid rgba(224,139,36,.4);
      display: flex; align-items: center; justify-content: center;
      font-size: 17px; font-weight: 800;
      color: var(--orange-warm);
      flex-shrink: 0;
    }
    .t-avatar-initials.light {
      background: rgba(255,255,255,.1);
      border-color: rgba(255,255,255,.25);
      color: var(--white);
    }
    .t-avatar-initials.warm {
      background: rgba(240,160,64,.15);
      border-color: rgba(240,160,64,.35);
      color: var(--orange-warm);
    }
    .t-person { font-size: 15px; font-weight: 700; }
    .t-role   { font-size: 13px; margin-top: 2px; }

    /* === QUOTE MARKS (consistent across all testimonials) === */
    /* Opening quote: floated left so text wraps beside it with zero gap */
    .q-open {
      display: block;
      float: left;
      font-family: Georgia, serif;
      font-size: 52px;
      line-height: 1;
      font-style: normal;
      font-weight: 400;
      color: var(--orange);
      opacity: .5;
      margin-right: 4px;
      margin-top: 4px;
      margin-bottom: 0;
    }
    /* Closing: inline, sits at end of text */
    .q-close {
      display: inline-block;
      font-family: Georgia, serif;
      font-size: 52px;
      line-height: .6;
      font-style: normal;
      font-weight: 400;
      color: var(--orange);
      opacity: .5;
      vertical-align: -0.22em;
      margin-left: 2px;
    }
    /* Clearfix so blockquote contains the float */
    blockquote::after {
      content: '';
      display: table;
      clear: both;
    }
    /* Variant colors */
    .t-pull  .q-open, .t-pull  .q-close { color: var(--orange);      opacity: .55; }
    .q-light .q-open, .q-light .q-close { color: var(--orange);      opacity: .38; }
    .perch   .q-open, .perch   .q-close { color: var(--orange-warm); opacity: .5;  }

    /* === DARK PULL QUOTE === */
    .t-pull { background: var(--dark); padding: 80px 0; }
    .t-pull-inner { max-width: 760px; }
    .t-pull .t-profile { margin-bottom: 28px; }
    .t-pull .t-person { color: var(--white); }
    .t-pull .t-role   { color: rgba(255,255,255,.48); }
    .t-pull blockquote {
      font-size: clamp(16.5px, 2.3vw, 21px);
      font-style: italic;
      color: rgba(255,255,255,.88);
      line-height: 1.72;
      max-width: var(--text-max);
    }

    /* === HOW IT WORKS === */
    .how { background: var(--bg); }
    .how h2 { font-size: clamp(26px, 3.8vw, 42px); font-weight: 800; margin-bottom: 46px; }
    .steps { max-width: 740px; }
    .step {
      display: flex;
      gap: 26px;
      padding: 22px 0;
      border-bottom: 1px solid var(--border);
      align-items: flex-start;
    }
    .step:last-child { border-bottom: none; }
    .step-num {
      width: 46px; height: 46px;
      border-radius: 50%;
      background: var(--white);
      border: 2px solid var(--border-dark);
      display: flex; align-items: center; justify-content: center;
      font-size: 17px; font-weight: 800;
      color: var(--brown);
      flex-shrink: 0;
      box-shadow: var(--shadow-sm);
    }
    .step.founding .step-num { background: var(--orange); border-color: var(--orange); color: var(--white); }
    .step-body { flex: 1; padding-top: 6px; }
    .step-body h3 { font-size: 17.5px; font-weight: 700; margin-bottom: 7px; }
    .step-body p  { font-size: 15px; color: var(--text-mid); line-height: 1.7; max-width: 600px; }
    .fo-badge {
      display: inline-block;
      background: var(--orange);
      color: var(--white);
      font-size: 10.5px; font-weight: 800;
      letter-spacing: .09em; text-transform: uppercase;
      padding: 2px 10px; border-radius: 100px;
      margin-bottom: 6px;
    }
    .steps-divider {
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 18px 0 6px;
    }
    .steps-divider-line { flex: 1; height: 1px; background: var(--border-dark); }
    .steps-divider-label {
      font-size: 11px; font-weight: 800;
      letter-spacing: .12em; text-transform: uppercase;
      color: var(--brown); white-space: nowrap;
    }

    /* === DELIVERABLES === */
    .delivers { background: var(--bg-warm); }
    .delivers h2 { font-size: clamp(26px, 3.8vw, 42px); font-weight: 800; margin-bottom: 10px; }
    .delivers-intro { color: var(--text-mid); margin-bottom: 42px; max-width: var(--text-max); font-size: 16.5px; }
    .d-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(256px, 1fr));
      gap: 20px;
    }
    .d-card {
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: var(--r-lg);
      padding: 26px 26px 24px;
      transition: box-shadow .2s, transform .2s;
    }
    .d-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
    .d-n { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--orange); margin-bottom: 10px; }
    .d-card h3 { font-size: 17.5px; font-weight: 700; margin-bottom: 13px; }
    .d-card ul { list-style: none; display: flex; flex-direction: column; gap: 9px; }
    .d-card li {
      font-size: 14px; color: var(--text-mid);
      padding-left: 14px; position: relative; line-height: 1.55;
    }
    .d-card li::before {
      content: '';
      position: absolute; left: 2px; top: 7px;
      width: 5px; height: 5px;
      border-radius: 50%;
      background: var(--orange);
    }

    /* === ADMISSIONS HQ === */
    .hq { background: var(--dark-mid); }
    .hq .eyebrow { color: var(--orange-warm); }
    .hq h2 { color: var(--white); font-size: clamp(26px, 3.8vw, 42px); font-weight: 800; margin-bottom: 14px; }
    .hq p  { color: rgba(255,255,255,.66); max-width: var(--text-max); margin-bottom: 14px; font-size: 16.5px; }
    .hq-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(185px, 1fr));
      gap: 14px; margin-top: 36px;
    }
    .hq-card { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: var(--r); padding: 18px 20px; }
    .hq-card strong { display: block; color: var(--white); font-size: 14.5px; font-weight: 700; margin-bottom: 6px; }
    .hq-card span   { color: rgba(255,255,255,.56); font-size: 13.5px; line-height: 1.55; }

    /* === LIGHT INLINE QUOTE === */
    .q-light { background: var(--bg); padding: 76px 0; }
    .q-light-inner { max-width: 760px; }
    .q-light .t-profile { margin-bottom: 26px; }
    .q-light .t-avatar-img { border-color: rgba(132,78,64,.4); }
    .q-light .t-person { color: var(--text); }
    .q-light .t-role   { color: var(--text-light); }
    .q-light blockquote {
      font-size: clamp(16px, 2.2vw, 20px);
      font-style: italic;
      color: var(--text);
      line-height: 1.72;
      max-width: var(--text-max);
    }

    /* === BIO === */
    .bio { background: var(--bg-warm); }
    .bio-layout { display: grid; grid-template-columns: 210px 1fr; gap: 50px; align-items: start; }
    .bio-photos { display: flex; flex-direction: column; }
    .bio-photo { width: 100%; border-radius: var(--r-lg); object-fit: cover; border: 3px solid var(--border); box-shadow: var(--shadow-md); display: block; }
    .bio-photo-main { height: 300px; object-position: center top; }
    .bio-text h2 { font-size: clamp(26px, 3.5vw, 38px); font-weight: 800; margin-bottom: 16px; }
    .bio-text p  { color: var(--text-mid); margin-bottom: 14px; font-size: 16.5px; line-height: 1.74; max-width: var(--text-max); }
    .lgbtq-callout { background: var(--dark); border-radius: var(--r-lg); padding: 26px 30px; margin-top: 26px; }
    .lgbtq-callout h3 { font-size: 17px; font-weight: 700; color: var(--orange-warm); margin-bottom: 9px; }
    .lgbtq-callout p  { color: rgba(255,255,255,.66); font-size: 15.5px; margin-bottom: 0; line-height: 1.68; max-width: none; }

    /* === PERCH TESTIMONIAL === */
    .perch { background: var(--brown-dark); padding: 80px 0; }
    .perch .t-profile { margin-bottom: 28px; }
    .perch .t-person  { color: var(--orange-warm); font-size: 15px; font-weight: 700; }
    .perch .t-role    { color: rgba(255,255,255,.52); font-size: 13px; margin-top: 2px; }
    .perch blockquote { max-width: var(--text-max); }
    .perch-text {
      font-size: clamp(15.5px, 2.1vw, 18.5px);
      font-style: italic;
      color: rgba(255,255,255,.86);
      line-height: 1.78;
    }

    /* === PARENT TESTIMONIAL CARDS === */
    .t-cards-section { background: var(--bg-warm); }
    .t-cards-section h2 { font-size: clamp(24px, 3.2vw, 36px); font-weight: 800; margin-bottom: 36px; }
    .t-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 22px; }
    .t-card {
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: var(--r-lg);
      padding: 30px 28px;
      box-shadow: var(--shadow-sm);
      display: flex; flex-direction: column; gap: 20px;
    }
    .t-card blockquote { font-size: 15.5px; font-style: italic; color: var(--text); line-height: 1.74; flex: 1; }
    .t-card .t-person { color: var(--text); }
    .t-card .t-role   { color: var(--text-light); }
    .t-card-initials {
      width: 38px; height: 38px;
      border-radius: 50%;
      background: var(--brown-pale);
      border: 1.5px solid #d4b8ae;
      display: flex; align-items: center; justify-content: center;
      font-size: 15px; font-weight: 800;
      color: var(--brown); flex-shrink: 0;
    }

    /* === SCHOLARSHIP === */
    .scholarship { background: var(--dark); padding: 90px 0; }
    .scholarship .eyebrow { color: var(--orange-warm); }
    .scholarship h2 { color: var(--white); font-size: clamp(26px, 3.8vw, 42px); font-weight: 800; margin-bottom: 14px; }
    .scholarship > .wrap > p { color: rgba(255,255,255,.68); max-width: var(--text-max); margin-bottom: 42px; font-size: 16.5px; line-height: 1.7; }
    .sch-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(195px, 1fr)); gap: 16px; margin-bottom: 36px; }
    .sch-card { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: var(--r-lg); padding: 22px 20px 20px; }
    .sch-amount { font-size: 28px; font-weight: 800; color: var(--orange-warm); line-height: 1; margin-bottom: 8px; }
    .sch-detail  { font-size: 13px; color: rgba(255,255,255,.62); line-height: 1.58; }
    .sch-student { font-size: 12px; color: rgba(255,255,255,.35); margin-top: 8px; font-style: italic; }
    .sch-close { font-size: 15px; color: rgba(255,255,255,.55); max-width: var(--text-max); line-height: 1.7; }

    /* === BREAKDOWN === */
    .breakdown { background: var(--bg); }
    .breakdown h2 { font-size: clamp(26px, 3.8vw, 42px); font-weight: 800; margin-bottom: 10px; }
    .bd-intro { color: var(--text-mid); margin-bottom: 40px; max-width: var(--text-max); font-size: 16.5px; }
    .bd-list { list-style: none; max-width: 720px; display: flex; flex-direction: column; gap: 20px; margin-bottom: 52px; }
    .bd-item { display: flex; gap: 16px; align-items: flex-start; }
    .bd-check {
      width: 30px; height: 30px; flex-shrink: 0;
      border-radius: 50%;
      background: var(--orange);
      display: flex; align-items: center; justify-content: center;
      color: var(--white); font-size: 13px; font-weight: 800;
      margin-top: 2px;
    }
    .bd-item.fo-item .bd-check { background: var(--brown-dark); }
    .bd-content strong { display: block; font-size: 15.5px; font-weight: 700; color: var(--text); margin-bottom: 3px; }
    .bd-content span   { font-size: 14.5px; color: var(--text-mid); line-height: 1.62; }
    /* WHITE text on dark brown background — !important prevents color inheritance from parent strong */
    .fo-pill {
      display: inline-block;
      background: var(--brown-dark);
      color: #FFFFFF !important;
      font-size: 10px; font-weight: 800;
      letter-spacing: .09em; text-transform: uppercase;
      padding: 2px 9px; border-radius: 100px;
      margin-left: 8px; vertical-align: middle;
    }
    .bd-divider {
      display: flex; align-items: center; gap: 14px;
      max-width: 720px; padding: 4px 0;
    }
    .bd-divider-line { flex: 1; height: 1px; background: var(--border-dark); }
    .bd-divider-label { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--brown); white-space: nowrap; }
    .bd-cta { text-align: center; }
    .bd-cta .btn { font-size: 17px; padding: 17px 44px; }
    .bd-cta-sub { margin-top: 12px; font-size: 13.5px; color: var(--text-light); }

    /* === CHECKOUT === */
    .checkout { background: var(--bg-warm); }
    .checkout h2 { font-size: clamp(26px, 3.8vw, 40px); font-weight: 800; margin-bottom: 10px; }
    .checkout > .wrap > p { color: var(--text-mid); max-width: var(--text-max); margin-bottom: 34px; font-size: 16.5px; }
    .checkout-card {
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: var(--r-lg);
      padding: 42px 44px;
      max-width: 620px;
      box-shadow: var(--shadow-md);
    }
    .spots-tag {
      display: inline-flex; align-items: center; gap: 8px;
      background: var(--orange-pale);
      border: 1px solid #f0d4a0;
      border-radius: 100px;
      padding: 6px 16px;
      font-size: 13px; font-weight: 700;
      color: var(--brown); margin-bottom: 22px;
    }
    .spots-tag::before {
      content: '';
      width: 8px; height: 8px;
      border-radius: 50%;
      background: var(--orange);
      animation: pulse 2.4s ease-in-out infinite;
    }
    .price-row { display: flex; align-items: baseline; gap: 12px; margin-bottom: 28px; }
    .price-big { font-size: 54px; font-weight: 800; color: var(--text); line-height: 1; }
    .price-sub { font-size: 15px; color: var(--text-light); }
    .ghl-wrapper { min-height: 480px; }
    .ghl-wrapper iframe { display: block; }
    .checkout-note { margin-top: 18px; font-size: 13px; color: var(--text-light); text-align: center; }
    .checkout-note a { color: var(--orange); }

    /* === FAQ === */
    .faq { background: var(--bg); }
    .faq h2 { font-size: clamp(26px, 3.5vw, 40px); font-weight: 800; margin-bottom: 44px; }
    .faq-list { max-width: 760px; }
    .faq-item { border-bottom: 1px solid var(--border); }
    .faq-item:first-child { border-top: 1px solid var(--border); }
    .faq-btn {
      width: 100%; background: none; border: none;
      padding: 20px 4px; cursor: pointer;
      display: flex; justify-content: space-between; align-items: center; gap: 18px;
      font-family: var(--sans); font-size: 17.5px; font-weight: 700;
      color: var(--text); text-align: left;
      transition: color .15s;
    }
    .faq-btn:hover { color: var(--orange); }
    .faq-icon {
      width: 28px; height: 28px; border-radius: 50%;
      border: 1.5px solid var(--border-dark);
      display: flex; align-items: center; justify-content: center;
      color: var(--orange); font-size: 20px; font-weight: 400;
      flex-shrink: 0;
      transition: transform .22s, border-color .22s;
      user-select: none; line-height: 1;
    }
    .faq-item.open .faq-icon { transform: rotate(45deg); border-color: var(--orange); }
    .faq-ans { display: none; padding: 2px 4px 22px; color: var(--text-mid); font-size: 16px; line-height: 1.78; max-width: 680px; }
    .faq-item.open .faq-ans { display: block; }

    /* === FOOTER === */
    .footer { background: var(--dark); text-align: center; padding: 80px 0 50px; }
    .footer-logo { margin: 0 auto 30px; }
    .footer-logo img { height: 42px; width: auto; margin: 0 auto; }
    .footer h2 { color: var(--white); font-size: clamp(26px, 3.8vw, 40px); font-weight: 800; margin-bottom: 14px; }
    .footer > .wrap > p { color: rgba(255,255,255,.6); margin-bottom: 38px; max-width: 440px; margin-left: auto; margin-right: auto; font-size: 16.5px; }
    .footer-meta { margin-top: 58px; padding-top: 26px; border-top: 1px solid rgba(255,255,255,.1); font-size: 13px; color: rgba(255,255,255,.3); }
    .footer-meta a { color: rgba(255,255,255,.45); }
    .footer-meta a:hover { color: var(--orange-warm); text-decoration: none; }

    /* === RESPONSIVE === */
    @media (max-width: 700px) {
      section { padding: 62px 0; }
      .founding-card { padding: 36px 22px; }
      .ri-layout  { grid-template-columns: 1fr; gap: 28px; }
      .ri-photo   { width: 180px; height: 224px; }
      .bio-layout { grid-template-columns: 1fr; gap: 28px; }
      .checkout-card { padding: 28px 22px; }
      .nav-cta { display: none; }
      .nav-back { margin-right: 0; font-size: 14px; }
      .nb-long { display: none; }
      .nav-logo img { height: 30px; }
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
    }/* End custom CSS */