/* ==========================================================================
   Ready to Invest  (/ready-to-invest)
   ========================================================================== */

.js [data-reveal="up40"]  { transform: translateY(40px); }
.js [data-reveal="up150"] { transform: translateY(150px); }
/* Framer keeps will-change:transform on its appear-animated boxes, which changes text rasterisation */
.page-rti [data-reveal] { will-change: transform; }

.rti-lime { color: #d5ed71; }
.rti-white { color: var(--white); }
.rti-br-tab, .rti-br-phone { display: none; }
.rti-h2 { font: 600 44px/52.8px var(--f-head); letter-spacing: -0.04em; color: var(--ink-2); text-align: center; }
.rti-h2--w750 { width: 100%; max-width: 750px; }
.rti-btnrow { display: flex; align-items: center; gap: 10px; }
.rti-btnrow--center { justify-content: center; align-self: stretch; }
.rti-border { box-shadow: inset 0 0 0 1px #e0e0e0; }

/* ---------- Hero ---------- */
.rti-hero { padding: 240px 40px 180px; display: flex; justify-content: center; }
.rti-hero__inner { width: 100%; max-width: 1200px; display: flex; align-items: center; gap: 60px; }
.rti-hero__left { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; overflow: hidden; }
.rti-hero__left > * { align-self: stretch; }
.rti-hero__title { font: 600 48px/48px var(--f-head); letter-spacing: -0.04em; color: var(--ink-2); }
.rti-hero__lead { font: 400 18px/27px var(--f-body); color: var(--ink-3); }
.rti-price { white-space: pre-wrap; font: 400 18px/27px var(--f-body); color: var(--green); }
.rti-price strong { font-family: var(--f-inter); font-weight: 700; font-feature-settings: var(--inter-features); }
.rti-price__old { color: var(--ink-3); }
.rti-price--phone { display: none; color: var(--ink-3); }
.rti-hero__right { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; }

.rti-playbook { background: #f8f8fa; border-radius: 30px; box-shadow: inset 0 0 0 1px #e0e0e0, var(--shadow-card); padding: 24px 30px; display: flex; flex-direction: column; gap: 18px; overflow: hidden; }
.rti-playbook__title { align-self: flex-start; font: 700 24px/28.8px var(--f-head); letter-spacing: -0.02em; color: var(--ink-2); }
.rti-playbook__text { font: 400 16px/24px var(--f-body); color: var(--ink-3); }
.rti-playbook__text strong { font-family: var(--f-inter); font-weight: 700; font-feature-settings: var(--inter-features); }
.rti-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; overflow: hidden; }
.rti-tile { background: rgb(211, 233, 193); border-radius: 24px; padding: 16px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; }
.rti-tile h4 { font: 700 24px/28.8px var(--f-head); letter-spacing: -0.02em; color: var(--ink-2); }
.rti-tile p { font: 400 18px/27px var(--f-body); color: var(--ink-2); }

/* ---------- Partnership ---------- */
.rti-partner { background: #f8f8fa; padding: 50px 40px 20px; display: flex; justify-content: center; }
.rti-partner__inner { width: 100%; max-width: 1000px; display: flex; align-items: center; justify-content: center; gap: 10px; padding-bottom: 20px; overflow: hidden; }
.rti-partner__logo { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 10px; overflow: hidden; }
.rti-partner__logo h3 { align-self: stretch; text-align: center; font: 700 22px/28.6px var(--f-head); letter-spacing: -0.02em; color: var(--ink-2); }
.rti-partner__logo img { width: 300px; height: 150px; object-fit: contain; }
.rti-partner__text { flex: 1 1 0; min-width: 0; text-align: center; font: 400 18px/27px var(--f-body); color: var(--gray); }

/* ---------- Transform your knowledge ---------- */
.rti-learn { padding: 100px 40px 120px; display: flex; justify-content: center; }
.rti-learn__inner { width: 100%; max-width: 1000px; display: flex; flex-direction: column; align-items: center; gap: 40px; }
.rti-learn__head { align-self: stretch; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.rti-learn__head .rti-h2 { align-self: stretch; }
.rti-learn__sub { width: 50%; text-align: center; font: 400 18px/27px var(--f-body); color: var(--ink-2); }
.rti-learn__body { align-self: stretch; display: flex; flex-direction: column; gap: 48px; }
.rti-features { display: flex; justify-content: center; align-items: stretch; gap: 20px; }
.rti-feature { flex: 1 1 0; min-width: 0; background: var(--white); border-radius: 30px; box-shadow: inset 0 0 0 1px #e0e0e0, var(--shadow-card); padding: 20px; display: flex; flex-direction: column; gap: 20px; }
.rti-feature__visual { height: 200px; flex: none; background: var(--ink); border-radius: 25px 25px 40px 40px; overflow: hidden; }
.rti-feature__visual img { width: 100%; height: 100%; object-fit: cover; border-radius: 20px; }
.rti-feature__content { padding: 0 10px; display: flex; flex-direction: column; gap: 10px; overflow: hidden; }
.rti-feature__content h3 { font: 500 22px/28.6px var(--f-head); letter-spacing: -0.02em; color: var(--ink-2); }
.rti-feature__content p { font: 400 16px/24px var(--f-body); color: var(--ink-3); }
.rti-stats { background: var(--teal); border-radius: 24px; padding: 24px; display: flex; justify-content: center; align-items: flex-start; gap: 20px; }
.rti-stat { flex: none; border-radius: 12px; padding: 16px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; }
.rti-stat h4 { font: 700 32px/38.4px var(--f-head); letter-spacing: -0.02em; color: #d5ed71; }
.rti-stat p { font: 400 18px/27px var(--f-body); color: var(--white); }

/* ---------- What you'll master ---------- */
.rti-master { background: var(--teal-ink); padding: 100px 40px 140px; display: flex; justify-content: center; }
.rti-master__inner { width: 100%; max-width: 1000px; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.rti-master__head { align-self: stretch; display: flex; flex-direction: column; align-items: center; gap: 10px; padding-bottom: 20px; overflow: hidden; }
.rti-master__head .rti-h2 { color: var(--white); }
.rti-master__sub { width: 100%; text-align: center; font: 400 18px/27px var(--f-body); color: rgba(255, 255, 255, 0.8); }
.rti-modules { align-self: stretch; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; overflow: hidden; }
.rmod { background: var(--white); border-radius: 12px; box-shadow: inset 0 0 0 1px #f0f0f0; padding: 20px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 10px; overflow: hidden; }
.rmod > * { align-self: stretch; }
.rmod__icon { width: 29px; height: 29px; flex: none; align-self: flex-start; color: var(--green); }
.rmod__num { font: 700 16px/22.4px var(--f-body); letter-spacing: -0.02em; color: var(--ink); }
.rmod__title { font: 500 22px/28.6px var(--f-head); letter-spacing: -0.02em; color: var(--green); }
.rmod__text { font: 400 16px/24px var(--f-body); color: var(--ink-3); }

/* ---------- Testimonials ---------- */
.rti-quotes { padding: 80px 40px 100px; display: flex; justify-content: center; }
.rti-quotes__inner { width: 100%; max-width: 1000px; display: flex; flex-direction: column; align-items: center; gap: 40px; }
.rti-quotes__head { align-self: stretch; display: flex; flex-direction: column; align-items: center; gap: 10px; padding-bottom: 20px; overflow: hidden; }
.rti-quotes__head .rti-h2 { width: 100%; }
.rti-quotes__head p { align-self: stretch; text-align: center; font: 400 18px/27px var(--f-body); color: var(--gray); }
.rti-quotes__list { align-self: stretch; display: flex; justify-content: center; align-items: flex-start; gap: 20px; }
.rquote { flex: 1 1 0; min-width: 0; align-self: stretch; background: var(--white); border-radius: 30px; box-shadow: inset 0 0 0 1px #e0e0e0, var(--shadow-card); padding: 30px 20px 30px 30px; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; }
.rquote--1 { height: 316px; align-self: flex-start; }
.rquote__body { align-self: stretch; display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.rquote__icon { width: 48px; height: 48px; color: #939598; }
.rquote__body p { font: 400 18px/23.4px var(--f-body); letter-spacing: -0.02em; color: var(--ink-2); }
.rquote__user { align-self: stretch; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.rquote__user h6 { font: 500 17px/23.8px var(--f-head); letter-spacing: -0.02em; color: var(--ink-2); }
.rquote__user p { font: 400 14px/21px var(--f-body); color: var(--gray); }

/* ---------- Instructor ---------- */
.rti-instructor { background: #f8f8fa; padding: 100px 40px; display: flex; justify-content: center; overflow: hidden; }
.rti-instructor__inner { width: 100%; max-width: 1000px; display: flex; flex-direction: column; align-items: center; gap: 40px; }
.rti-instructor__row { align-self: stretch; display: flex; align-items: center; justify-content: center; gap: 80px; overflow: hidden; }
.rti-instructor__photo { flex: none; width: 280px; height: 280px; border-radius: 50%; overflow: hidden; }
.rti-instructor__photo img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.rti-instructor__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 10px; overflow: hidden; }
.rti-instructor__text > * { align-self: stretch; }
.rti-instructor__text h3 { font: 500 34px/44.2px var(--f-head); letter-spacing: -0.04em; color: var(--ink-2); }
.rti-instructor__text p { font: 400 18px/27px var(--f-body); color: var(--ink-2); }
.rti-instructor__text .rti-instructor__role { font-weight: 700; }

/* ---------- Why angel investing ---------- */
.rti-why { padding: 100px 40px 140px; display: flex; justify-content: center; }
.rti-why__inner { width: 100%; max-width: 1000px; display: flex; flex-direction: column; gap: 20px; }
.rti-why__head { display: flex; flex-direction: column; align-items: center; gap: 10px; padding-bottom: 20px; overflow: hidden; }
.rti-why__head p { width: 75%; text-align: center; font: 400 18px/27px var(--f-body); color: var(--gray); }
.rti-why__cards { display: flex; justify-content: center; align-items: center; gap: 10px; overflow: hidden; }
.rwhy { flex: 1 1 0; min-width: 0; height: 234px; background: #f8f8fa; border-radius: 20px; box-shadow: inset 0 0 0 1px #e0e0e0, var(--shadow-card); padding: 30px; display: flex; flex-direction: column; align-items: center; gap: 20px; overflow: hidden; }
.rwhy h3 { align-self: stretch; font: 500 24px/28.8px var(--f-head); letter-spacing: -0.02em; color: var(--ink-2); }
/* live: the Benefit container has a fixed 470px height, so the button overflows into the bottom padding */
.rti-why .rti-btnrow { margin-bottom: -65px; }
.rwhy p { width: 100%; max-width: 260px; font: 400 16px/24px var(--f-body); color: var(--ink-3); }

/* ---------- Final CTA ---------- */
.rti-reveal { position: relative; background: var(--teal-ink); padding: 140px 40px 120px; display: flex; justify-content: center; overflow: hidden; }
.rti-reveal__inner { position: relative; z-index: 1; width: 100%; max-width: 1200px; display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; overflow: hidden; }
.rti-reveal__sub { white-space: pre; font: 500 24px/28.8px var(--f-head); letter-spacing: -0.02em; color: #d5ed71; }
.rti-reveal__note { width: 100%; max-width: 540px; font: 400 18px/27px var(--f-body); color: rgba(255, 255, 255, 0.8); }
.rti-reveal__fx { position: absolute; z-index: 0; left: 0; right: 0; bottom: -64px; height: 286px; pointer-events: none; }
.rti-reveal__glow { position: absolute; z-index: 1; width: 493px; height: 139px; bottom: -25px; left: calc(49.8333% - 246.5px); border-radius: 29%; background: #d4eb70; opacity: .47; filter: blur(86px); }
.rti-reveal__line { position: absolute; z-index: 1; width: 1000px; height: 1px; bottom: 64px; left: calc(50% - 500px); background: linear-gradient(90deg, #d4ed7200 0%, #d5ed71 50%, #d4ed7200 100%); }

/* ==========================================================================
   Tablet
   ========================================================================== */
@media (max-width: 1199.98px) {
  .rti-br-tab { display: inline; }
  .rti-h2 { font-size: 38px; line-height: 45.6px; }
  .rti-h2--w750, .rti-h2--t600 { max-width: 600px; }

  .rti-hero { padding: 180px 30px 120px; }
  .rti-hero__inner { gap: 40px; }
  .rti-hero__lead, .rti-price { font-size: 17px; line-height: 25.5px; }
  .rti-playbook { border-radius: 25px; padding: 24px; }
  .rti-playbook__title { font-size: 22px; line-height: 26.4px; }
  .rti-playbook__text { font-size: 15px; line-height: 22.5px; }
  .rti-tiles { display: flex; flex-direction: column; }
  .rti-tile h4 { font-size: 22px; line-height: 26.4px; }
  .rti-tile p { font-size: 17px; line-height: 25.5px; }

  .rti-partner { padding: 50px 30px 30px; }
  .rti-partner__logo h3 { font-size: 20px; line-height: 26px; }
  .rti-partner__text { font-size: 17px; line-height: 25.5px; }

  .rti-learn { padding: 80px 30px; }
  .rti-learn__sub { font-size: 17px; line-height: 25.5px; }
  .rti-features { gap: 10px; }
  .rti-feature { border-radius: 25px; padding: 10px 10px 20px; }
  .rti-feature__visual { border-radius: 20px 20px 30px 30px; }
  .rti-feature__content h3 { font-size: 20px; line-height: 26px; }
  .rti-feature__content p { font-size: 15px; line-height: 22.5px; }
  .rti-stats { gap: 10px; }
  .rti-stat h4 { font-size: 28px; line-height: 33.6px; }
  .rti-stat p { font-size: 17px; line-height: 25.5px; text-align: center; }

  .rti-master { padding: 80px 30px; }
  .rti-master__sub { max-width: 450px; font-size: 17px; line-height: 25.5px; }
  .rti-modules { display: flex; flex-wrap: wrap; }
  .rmod { width: calc(50% - 10px); padding: 16px 24px; justify-content: flex-start; }
  .rmod--1 { justify-content: center; }
  .rmod__title { font-size: 20px; line-height: 26px; }
  .rmod__text { font-size: 15px; line-height: 22.5px; }

  .rti-quotes__head p { font-size: 17px; line-height: 25.5px; }
  .rti-quotes__list { flex-direction: column; }
  .rquote { flex: none; width: 100%; align-self: auto; }
  .rquote--1 { height: 227px; }
  .rquote--2 { height: 223px; }
  .rquote--3 { height: 225px; }
  .rquote__user h6 { font-size: 15px; line-height: 21px; }
  .rquote__user p { font-size: 13px; line-height: 19.5px; }

  .rti-instructor { padding: 80px 30px; }
  .rti-instructor__inner { gap: 30px; }
  .rti-instructor__photo { width: 198px; height: 198px; }
  .rti-instructor__text h3 { font-size: 30px; line-height: 39px; }
  .rti-instructor__text p { font-size: 17px; line-height: 25.5px; }

  .rti-why { padding: 80px 30px; }
  .rti-why .rti-btnrow { margin-bottom: 0; }
  .rti-why__head p { max-width: 450px; font-size: 17px; line-height: 25.5px; }
  .rti-why__cards { height: 247px; }
  .rwhy { height: 100%; }
  .rwhy h3 { font-size: 22px; line-height: 26.4px; }
  .rwhy p { font-size: 15px; line-height: 22.5px; }

  .rti-reveal { padding: 70px 30px; }
  .rti-reveal__sub { width: 80%; white-space: pre-wrap; font-size: 22px; line-height: 26.4px; }
  .rti-reveal__note { max-width: 450px; font-size: 17px; line-height: 25.5px; }
  .rti-reveal__fx { top: 456px; height: auto; }
  .rti-reveal__line { bottom: auto; left: auto; width: 807px; top: -19px; right: 0; }
}

/* ==========================================================================
   Phone
   ========================================================================== */
@media (max-width: 809.98px) {
  .rti-br-tab { display: none; }
  .rti-br-phone { display: inline; }
  .rti-h2 { font-size: 30px; line-height: 36px; letter-spacing: -0.09em; }
  .rti-btnrow { flex-direction: column; justify-content: center; align-self: stretch; overflow: hidden; }
  .rti-btnrow .btn { align-self: stretch; }

  .rti-hero { padding: 180px 20px 120px; }
  .rti-hero__inner { flex-direction: column; gap: 48px; }
  .rti-hero__left, .rti-hero__right { flex: none; width: 100%; }
  .rti-hero__left { align-items: center; text-align: center; }
  .rti-hero__lead { font-size: 16px; line-height: 24px; }
  .rti-price { font-size: 16px; line-height: 24px; }
  .rti-price--wide { display: none; }
  .rti-price--phone { display: block; }
  .rti-playbook { padding: 24px 22px; }
  .rti-playbook__title { font-size: 20px; line-height: 24px; }
  .rti-playbook__text { font-size: 14px; line-height: 21px; }
  .rti-tiles { display: grid; }
  .rti-tile h4 { font-size: 20px; line-height: 24px; }
  .rti-tile p { font-size: 16px; line-height: 24px; }

  .rti-partner { padding: 60px 20px; }
  .rti-partner__inner { flex-direction: column; padding-bottom: 0; }
  .rti-partner__logo, .rti-partner__text { flex: none; width: 100%; }
  .rti-partner__logo h3 { font-size: 18px; line-height: 23.4px; }
  .rti-partner__text { font-size: 16px; line-height: 24px; }

  .rti-learn { padding: 60px 20px; }
  .rti-learn__sub { width: 100%; font-size: 16px; line-height: 24px; }
  .rti-features { flex-direction: column; gap: 20px; }
  .rti-feature { flex: none; }
  .rti-feature__content h3 { font-size: 18px; line-height: 23.4px; }
  .rti-feature__content p { font-size: 14px; line-height: 21px; }
  .rti-stats { flex-direction: column; gap: 4px; }
  .rti-stat { align-self: stretch; }
  .rti-stat h4 { font-size: 32px; line-height: 38.4px; }
  .rti-stat p { font-size: 16px; line-height: 24px; text-align: left; }

  .rti-master { padding: 60px 20px; }
  .rti-master__sub { max-width: 400px; font-size: 16px; line-height: 24px; }
  .rti-modules { flex-direction: column; flex-wrap: nowrap; gap: 12px; }
  .rmod { width: 100%; padding: 20px; }
  .rmod--1 { justify-content: flex-start; }
  .rmod__title { font-size: 18px; line-height: 23.4px; }
  .rmod__text { font-size: 14px; line-height: 21px; }

  .rti-quotes { padding: 50px 20px 100px; }
  .rti-quotes__inner { gap: 30px; }
  .rti-quotes__head p { font-size: 16px; line-height: 24px; }
  .rquote, .rquote--1, .rquote--2, .rquote--3 { height: 290px; }
  .rquote__user p { font-size: 12px; line-height: 18px; }

  .rti-instructor { padding: 60px 20px; }
  .rti-instructor__inner { gap: 40px; }
  .rti-instructor__row { flex-direction: column; gap: 40px; }
  .rti-instructor__photo { width: 280px; height: 280px; }
  .rti-instructor__text { flex: none; width: 100%; }
  .rti-instructor__text h3 { font-size: 24px; line-height: 31.2px; text-align: center; }
  .rti-instructor__text p { font-size: 16px; line-height: 24px; }
  .rti-instructor__text .rti-instructor__role { align-self: center; text-align: center; }

  .rti-why { padding: 60px 20px; }
  .rti-why__head p { max-width: 400px; font-size: 16px; line-height: 24px; }
  .rti-why__cards { flex-direction: column; height: auto; }
  .rwhy { flex: none; width: 100%; height: auto; }
  .rwhy h3 { font-size: 20px; line-height: 24px; }
  .rwhy p { max-width: none; font-size: 14px; line-height: 21px; }

  .rti-reveal { padding: 80px 20px; }
  .rti-reveal__sub { width: 100%; max-width: 500px; font-size: 20px; line-height: 24px; }
  .rti-reveal__note { max-width: 400px; font-size: 16px; line-height: 24px; }
  .rti-reveal__fx { top: 367px; }
  .rti-reveal__glow { width: auto; bottom: 42px; left: -52px; right: -51px; }
  .rti-reveal__line { height: 2px; width: auto; top: auto; bottom: 64px; left: -3px; right: -2px; }
}
