  @font-face {
    font-family: "Instrument Serif";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/assets/instrument-serif-regular.ttf") format("truetype");
  }

  @font-face {
    font-family: "Instrument Serif";
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url("/assets/instrument-serif-italic.ttf") format("truetype");
  }

  .public-site-body {
    background:
      linear-gradient(180deg, #FFFCF5 0%, #EFF7FB 100%);
    position: relative;
  }

  .public-site-body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    opacity: 0.45;
    background-image:
      linear-gradient(rgba(8, 28, 45, 0.028) 1px, transparent 1px),
      linear-gradient(90deg, rgba(8, 28, 45, 0.028) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent 88%);
  }

  .public-site-shell {
    width: min(1380px, calc(100% - 28px));
    padding-top: 0;
  }

  .public-site-topbar {
    padding: 14px 10px;
    border-radius: 0;
    background: #ffffff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: none;
    border-bottom: 1px solid rgba(207, 224, 239, 0.9);
  }

  .public-site-nav {
    gap: 6px;
  }

  .public-site-nav .public-nav-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 10px;
    text-decoration: none;
    font-weight: 650;
    letter-spacing: -0.01em;
  }

  .public-site-nav .public-nav-link {
    border: 0;
    background: transparent;
    color: #1268D6;
    border-radius: 0;
    box-shadow: none;
    transition: color 180ms ease, opacity 180ms ease;
  }

  .public-site-nav .public-nav-link.is-current {
    color: #081C2D;
  }

  .public-site-nav .public-nav-link:hover {
    transform: none;
  }

  .public-site-nav .public-nav-link:hover,
  .public-site-nav .public-nav-link:focus-visible {
    color: #081C2D;
    opacity: 0.78;
  }

  .public-site-nav .public-nav-link-secondary {
    margin-left: 4px;
  }

  .public-site-nav .public-nav-signup {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 20px;
    border: 1px solid #9ac8e0;
    border-radius: 12px;
    background: #159447;
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 760;
    letter-spacing: 0;
    text-decoration: none;
    box-shadow: 0 1px 0 rgba(8, 28, 45, 0.08);
    transition: background 180ms ease, border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
  }

  .public-site-nav .public-nav-signup:hover,
  .public-site-nav .public-nav-signup:focus-visible {
    border-color: #0f7839;
    background: #0f7839;
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(21, 148, 71, 0.2);
  }

  .readiness-directory-page {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
    padding: clamp(42px, 7vw, 88px) 0 clamp(64px, 8vw, 112px);
  }

  .readiness-directory-hero {
    max-width: 840px;
    margin: 0 auto;
    text-align: center;
  }

  .readiness-directory-hero h1 {
    margin: 0 0 18px;
    color: #0b1f4d;
    font-family: var(--font-display);
    font-size: clamp(3rem, 7vw, 6rem);
    font-weight: 700;
    line-height: 0.96;
    letter-spacing: -0.055em;
  }

  .readiness-directory-hero p {
    max-width: 680px;
    margin: 0 auto;
    color: #66758f;
    font-size: clamp(1.08rem, 2vw, 1.3rem);
    line-height: 1.5;
  }

  .readiness-directory-featured {
    margin-top: clamp(64px, 8vw, 96px);
  }

  .readiness-directory-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
  }

  .readiness-directory-section-heading h2,
  .readiness-directory-request h2 {
    margin: 0;
    color: #0b1f4d;
    font-family: var(--font-display);
    font-weight: 700;
    letter-spacing: -0.04em;
  }

  .readiness-directory-section-heading h2 {
    max-width: 820px;
    font-size: clamp(2.15rem, 4.5vw, 4.25rem);
    line-height: 1;
  }

  .readiness-directory-schools {
    display: grid;
    gap: 18px;
  }

  .readiness-directory-school {
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid #d8e1f1;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.86);
  }

  .readiness-directory-school h3 {
    margin: 0 0 18px;
    color: #8290a9;
    font-size: 0.76rem;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
  }

  .readiness-directory-class-list {
    display: grid;
  }

  .readiness-directory-class-list a {
    display: grid;
    grid-template-columns: minmax(112px, 0.36fr) minmax(0, 1fr) 24px;
    align-items: center;
    gap: 24px;
    min-height: 52px;
    color: inherit;
    text-decoration: none;
  }

  .readiness-directory-class-list a + a {
    border-top: 1px solid #edf1f7;
  }

  .readiness-directory-class-list strong {
    color: #1746d1;
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: 0.01em;
  }

  .readiness-directory-class-list span {
    min-width: 0;
    color: #68768f;
    font-size: 1rem;
    text-align: right;
  }

  .readiness-directory-class-list i {
    color: #9aa6ba;
    font-size: 1.1rem;
    font-style: normal;
    text-align: right;
    transition: color 160ms ease, transform 160ms ease;
  }

  .readiness-directory-class-list a:hover strong,
  .readiness-directory-class-list a:focus-visible strong,
  .readiness-directory-class-list a:hover i,
  .readiness-directory-class-list a:focus-visible i {
    color: #0b1f4d;
  }

  .readiness-directory-class-list a:hover i,
  .readiness-directory-class-list a:focus-visible i {
    transform: translateX(3px);
  }

  .readiness-directory-request {
    display: grid;
    grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.3fr);
    gap: clamp(28px, 5vw, 64px);
    align-items: start;
    margin-top: clamp(56px, 8vw, 88px);
    padding: clamp(28px, 5vw, 52px);
    border-radius: 12px;
    background: #0b1f4d;
    color: #ffffff;
  }

  .readiness-directory-request h2 {
    color: #ffffff;
    font-size: clamp(2rem, 4vw, 3.25rem);
    line-height: 1;
  }

  .readiness-directory-request > div p {
    margin: 12px 0 0;
    color: #b7c4dd;
  }

  .readiness-directory-request-action {
    display: grid;
    gap: 12px;
  }

  .readiness-directory-request form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .readiness-directory-request label {
    display: grid;
    gap: 7px;
    color: #d5deef;
    font-size: 0.82rem;
    font-weight: 590;
  }

  .readiness-directory-request input {
    width: 100%;
    min-height: 52px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    background: #ffffff;
    color: #0b1f4d;
    font: inherit;
  }

  .readiness-directory-request button {
    grid-column: 1 / -1;
    min-height: 52px;
    border: 0;
    border-radius: 8px;
    background: #2f63ee;
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-weight: 600;
  }

  .readiness-directory-request button:hover,
  .readiness-directory-request button:focus-visible {
    background: #2452ce;
  }

  .readiness-directory-request .readiness-directory-assurance {
    grid-column: 1 / -1;
    margin: 0;
    color: #b7c4dd;
    font-size: 0.88rem;
    font-weight: 500;
    text-align: center;
  }

  .readiness-directory-success {
    margin: 0;
    padding: 12px 14px;
    border-radius: 8px;
    background: rgba(47, 199, 126, 0.16);
    color: #bdf2d3;
    font-weight: 590;
  }

  .readiness-directory-error {
    margin: 0;
    padding: 12px 14px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    font-weight: 590;
  }

  .readiness-directory-empty {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 28px;
    border: 1px solid #d8e1f1;
    border-radius: 10px;
    background: #ffffff;
    color: #0b1f4d;
  }

  .readiness-directory-empty a {
    color: #1746d1;
    font-weight: 600;
  }

  .readiness-directory-share-body .readiness-directory-hero h1,
  .readiness-directory-share-body .readiness-directory-section-heading h2 {
    color: #ffffff;
  }

  .readiness-directory-share-body .readiness-directory-hero h1 {
    -webkit-text-fill-color: #ffffff;
    opacity: 1;
    visibility: visible;
  }

  .readiness-directory-share-body .readiness-directory-hero p {
    color: #aebdde;
  }

  .readiness-directory-share-body .readiness-directory-request {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.055);
  }

  .readiness-directory-share-body .readiness-directory-school {
    border-color: rgba(255, 255, 255, 0.08);
    background: #ffffff;
  }

  @media (max-width: 720px) {
    .readiness-directory-page {
      width: min(100% - 24px, 1180px);
      padding-top: 34px;
    }

    .readiness-directory-hero {
      text-align: left;
    }

    .readiness-directory-hero p {
      margin-left: 0;
    }

    .readiness-directory-section-heading,
    .readiness-directory-request {
      display: grid;
      grid-template-columns: 1fr;
    }

    .readiness-directory-section-heading {
      align-items: start;
      gap: 10px;
    }

    .readiness-directory-school {
      padding: 22px 20px;
    }

    .readiness-directory-class-list a {
      grid-template-columns: minmax(0, 1fr) 20px;
      gap: 6px 14px;
      padding: 13px 0;
    }

    .readiness-directory-class-list strong,
    .readiness-directory-class-list span {
      grid-column: 1;
      text-align: left;
    }

    .readiness-directory-class-list i {
      grid-column: 2;
      grid-row: 1 / span 2;
    }

    .readiness-directory-request form {
      grid-template-columns: 1fr;
    }

    .readiness-directory-request button {
      grid-column: 1;
    }

    .readiness-directory-request .readiness-directory-assurance {
      grid-column: 1;
    }

    .readiness-directory-empty {
      align-items: flex-start;
      flex-direction: column;
    }
  }

  .readiness-scan-page {
    padding: clamp(28px, 5vw, 76px) 0 clamp(56px, 7vw, 104px);
  }

  .readiness-scan-hero {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 500px);
    gap: clamp(24px, 5vw, 64px);
    align-items: start;
  }

  .readiness-scan-copy,
  .readiness-scan-form {
    border: 1px solid rgba(207, 224, 239, 0.96);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 24px 80px rgba(8, 28, 45, 0.08);
  }

  .readiness-scan-copy {
    border-radius: 9px;
    padding: clamp(30px, 5vw, 64px);
  }

  .readiness-scan-kicker,
  .readiness-scan-form-kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    border-radius: 8px;
    background: rgba(18, 104, 214, 0.09);
    color: #1268D6;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .readiness-scan-kicker {
    padding: 10px 16px;
    font-size: 0.82rem;
  }

  .readiness-scan-form-kicker {
    padding: 8px 12px;
    font-size: 0.74rem;
  }

  .readiness-scan-copy h1 {
    margin: 22px 0 18px;
    max-width: 720px;
    color: #081C2D;
    font-size: clamp(3.2rem, 7vw, 6.8rem);
    line-height: 0.92;
    letter-spacing: -0.065em;
  }

  .readiness-scan-copy p {
    max-width: 680px;
    margin: 0;
    color: #5D748A;
    font-size: clamp(1.15rem, 2vw, 1.55rem);
    line-height: 1.45;
    font-weight: 650;
  }

  .readiness-scan-band-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
  }

  .readiness-scan-band-grid article {
    min-height: 132px;
    padding: 20px;
    border: 1px solid rgba(207, 224, 239, 0.92);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.78);
  }

  .readiness-scan-band-grid strong {
    display: block;
    margin-bottom: 8px;
    color: #081C2D;
    font-size: 1.1rem;
    font-weight: 900;
  }

  .readiness-scan-band-grid span {
    color: #5D748A;
    font-weight: 650;
    line-height: 1.35;
  }

  .readiness-scan-form {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 18px;
    border-radius: 8px;
    padding: clamp(24px, 4vw, 38px);
  }

  .readiness-scan-form h2 {
    margin: 12px 0 0;
    color: #081C2D;
    font-size: clamp(2rem, 4vw, 3.15rem);
    line-height: 0.98;
    letter-spacing: -0.045em;
  }

  .readiness-scan-form label {
    display: grid;
    gap: 8px;
    color: #081C2D;
    font-weight: 900;
  }

  .readiness-scan-form input,
  .readiness-scan-form textarea {
    width: 100%;
    border: 1px solid rgba(207, 224, 239, 1);
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.94);
    color: #081C2D;
    font: inherit;
    font-size: 1rem;
    line-height: 1.4;
    padding: 14px 16px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
  }

  .readiness-scan-form textarea {
    min-height: 220px;
    resize: vertical;
  }

  .readiness-scan-form input:focus,
  .readiness-scan-form textarea:focus {
    outline: 3px solid rgba(18, 104, 214, 0.18);
    border-color: rgba(18, 104, 214, 0.68);
  }

  .readiness-scan-submit {
    border: 0;
    border-radius: 5px;
    background: linear-gradient(135deg, #1268D6 0%, #0d55b9 100%);
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-weight: 900;
    font-size: 1.08rem;
    padding: 17px 20px;
    box-shadow: 0 18px 42px rgba(18, 104, 214, 0.24);
  }

  .readiness-scan-submit:hover,
  .readiness-scan-submit:focus-visible {
    transform: translateY(-1px);
  }

  .readiness-scan-alert {
    margin: 0;
    border: 1px solid rgba(236, 124, 44, 0.32);
    border-radius: 5px;
    background: rgba(255, 242, 224, 0.9);
    color: #8a450f;
    font-weight: 800;
    padding: 14px 16px;
  }

	  .readiness-scan-result {
	    display: grid;
	    gap: 6px;
    border: 1px solid rgba(27, 166, 166, 0.28);
    border-radius: 6px;
    background: rgba(232, 250, 248, 0.82);
	    padding: 18px;
	  }

  .readiness-scan-handoff {
    display: grid;
    gap: 10px;
    border: 1px solid rgba(18, 104, 214, 0.24);
    border-radius: 6px;
    background: rgba(239, 247, 251, 0.88);
    padding: 18px;
  }

  .readiness-scan-handoff strong {
    color: #081C2D;
    font-size: 1.02rem;
    font-weight: 900;
  }

  .readiness-scan-handoff p {
    margin: 0;
    color: #5D748A;
    font-weight: 650;
    line-height: 1.45;
  }

  .readiness-scan-handoff a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: fit-content;
    border-radius: 5px;
    background: #081C2D;
    color: #ffffff;
    font-weight: 900;
    padding: 0 16px;
    text-decoration: none;
  }

  .readiness-scan-handoff a:hover,
  .readiness-scan-handoff a:focus-visible {
    transform: translateY(-1px);
  }

  .readiness-scan-result span {
    color: #0d7d7d;
    font-size: 0.86rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .readiness-scan-result strong {
    color: #081C2D;
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 950;
  }

  .readiness-scan-result p,
  .readiness-scan-result small,
  .readiness-scan-note {
    margin: 0;
    color: #5D748A;
    font-weight: 650;
    line-height: 1.45;
  }

  .readiness-scan-note {
    font-size: 0.92rem;
  }

  @media (max-width: 920px) {
    .readiness-scan-hero {
      grid-template-columns: 1fr;
    }

    .readiness-scan-form {
      position: static;
    }
  }

  @media (max-width: 640px) {
    .readiness-scan-copy,
    .readiness-scan-form {
      border-radius: 6px;
    }

    .readiness-scan-band-grid {
      grid-template-columns: 1fr;
    }
  }

  .public-class-seo-page {
    display: grid;
    gap: clamp(24px, 4vw, 44px);
    padding: clamp(24px, 5vw, 72px) 0 clamp(48px, 7vw, 96px);
  }

  .public-class-seo-hero,
  .public-class-seo-section,
  .public-class-seo-plan {
    width: min(1040px, calc(100% - 32px));
    margin: 0 auto;
  }

  .public-class-seo-hero {
    display: grid;
    gap: 18px;
    padding: clamp(32px, 6vw, 76px) 0 clamp(18px, 3vw, 28px);
  }

  .public-class-seo-kicker {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    color: #07568c;
    font-size: 0.96rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
  }

  .public-class-seo-hero h1 {
    max-width: 840px;
    margin: 0;
    color: #082033;
    font-size: clamp(2.35rem, 5vw, 4.8rem);
    line-height: 0.98;
    letter-spacing: 0;
  }

  .public-class-seo-hero p {
    max-width: 760px;
    margin: 0;
    color: #526d85;
    font-size: clamp(1.08rem, 2vw, 1.32rem);
    line-height: 1.55;
  }

  .public-class-seo-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 8px;
  }

  .public-class-seo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    width: min(1040px, calc(100% - 32px));
    margin: 0 auto;
  }

  .public-class-seo-panel,
  .public-class-seo-problem,
  .public-class-seo-answer {
    border: 1px solid rgba(145, 195, 226, 0.7);
    border-radius: 2px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(23, 59, 100, 0.06);
  }

  .public-class-seo-panel {
    padding: clamp(22px, 4vw, 34px);
  }

  .public-class-seo-eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    margin-bottom: 14px;
    border-radius: 8px;
    background: #eef7ff;
    color: #07568c;
    font-size: 0.95rem;
    font-weight: 900;
  }

  .public-class-seo-panel h2,
  .public-class-seo-section h2,
  .public-class-seo-plan h2 {
    margin: 0 0 14px;
    color: #082033;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
    line-height: 1.08;
    letter-spacing: 0;
  }

  .public-class-seo-panel p,
  .public-class-seo-section p,
  .public-class-seo-plan p {
    margin: 0;
    color: #526d85;
    font-size: 1.04rem;
    line-height: 1.58;
  }

  .public-class-seo-topic-list,
  .public-class-seo-mistakes {
    display: grid;
    gap: 10px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
  }

  .public-class-seo-topic-list li,
  .public-class-seo-mistakes li {
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid rgba(167, 203, 223, 0.45);
    color: #082033;
  }

  .public-class-seo-topic-list li:last-child,
  .public-class-seo-mistakes li:last-child {
    border-bottom: 0;
  }

  .public-class-seo-topic-list strong {
    font-weight: 900;
  }

  .public-class-seo-topic-list span {
    color: #526d85;
    white-space: nowrap;
  }

  .public-class-seo-topic-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
  }

  .public-class-seo-topic-chips span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 13px;
    border: 1px solid rgba(145, 195, 226, 0.7);
    border-radius: 8px;
    background: #f6fbff;
    color: #07568c;
    font-weight: 800;
  }

  .public-class-seo-problems,
  .public-class-seo-answer-grid {
    display: grid;
    gap: 16px;
  }

  .public-class-seo-problem {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    padding: clamp(18px, 3vw, 28px);
  }

  .public-class-seo-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 13%;
    background: #1BA6A6;
    color: #ffffff;
    font-weight: 900;
  }

  .public-class-seo-problem h3,
  .public-class-seo-answer h3 {
    margin: 0 0 10px;
    color: #082033;
    font-size: 1.25rem;
    letter-spacing: 0;
  }

  .public-class-seo-choices {
    display: grid;
    gap: 8px;
    margin: 16px 0 0;
    padding-left: 1.4rem;
    color: #082033;
  }

  .public-class-seo-choices li {
    padding-left: 4px;
    line-height: 1.45;
  }

  .public-class-seo-answer {
    padding: clamp(18px, 3vw, 28px);
  }

  .public-class-seo-answer span {
    display: block;
    margin-bottom: 8px;
    color: #07568c;
    font-weight: 900;
    text-transform: uppercase;
  }

  .public-class-seo-plan {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: center;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid rgba(27, 166, 166, 0.28);
    border-radius: 2px;
    background: linear-gradient(135deg, #f7fff7 0%, #ffffff 100%);
    box-shadow: 0 18px 42px rgba(23, 59, 100, 0.06);
  }

  .public-class-seo-related {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  .public-class-seo-related a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid rgba(145, 195, 226, 0.8);
    border-radius: 8px;
    background: #ffffff;
    color: #07568c;
    font-weight: 850;
    text-decoration: none;
  }

  .public-site {
    display: flex;
    flex-direction: column;
    gap: 24px;
    --font-marketing-editorial: "Instrument Serif", Georgia, serif;
  }

  .public-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 8px;
    background: #e6f5ff;
    color: #08528b;
    font-size: 0.83rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .public-chip.is-blue {
    background: #dff1ff;
    color: #08528b;
  }

  .public-chip.is-green {
    background: #e8ffe8;
    color: #178216;
  }

  .public-chip-subtle {
    min-height: 30px;
    padding: 0 12px;
    background: rgba(230, 245, 255, 0.68);
    color: #3f6690;
    font-size: 0.74rem;
    letter-spacing: 0.1em;
  }

  .public-hero,
  .public-section,
  .public-final-cta,
  .public-proof-strip,
  .public-demo-surface {
    border: 1px solid rgba(167, 203, 223, 0.7);
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 10px 26px rgba(8, 32, 51, 0.05);
  }

  .public-home-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(40px, 6vw, 72px);
    background: linear-gradient(180deg, #ffffff, #f7fbff);
  }

  .public-hero,
  .public-demo-surface {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(0, 0.96fr);
    gap: 22px;
    padding: 28px;
  }

  .public-home-hero {
    grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
    gap: clamp(28px, 4vw, 56px);
    align-items: start;
  }

  .public-page-hero {
    grid-template-columns: 1fr;
  }

  .public-mission-page {
    display: grid;
    gap: clamp(34px, 5vw, 54px);
    padding: clamp(22px, 4vw, 54px) clamp(18px, 4vw, 50px) clamp(44px, 6vw, 72px);
    border-radius: 0;
    background:
      radial-gradient(circle at 86% 8%, rgba(10, 103, 255, 0.1), transparent 34%),
      radial-gradient(circle at 6% 22%, rgba(226, 242, 255, 0.7), transparent 30%),
      #ffffff;
    color: #071342;
  }

  .public-mission-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.96fr) minmax(360px, 0.82fr);
    gap: clamp(22px, 4vw, 56px);
    align-items: center;
  }

  .public-mission-hero-copy {
    display: grid;
    gap: 26px;
    align-content: center;
  }

  .public-mission-chip {
    justify-self: start;
    min-height: 50px;
    padding: 0 18px;
    border-radius: 2px;
    background: #eaf4ff;
    color: #0764e8;
    box-shadow: 0 16px 34px rgba(7, 100, 232, 0.08);
  }

  .public-mission-chip-icon {
    display: inline-flex;
    width: 24px;
    height: 24px;
    margin-right: 10px;
  }

  .public-mission-chip-icon svg {
    width: 100%;
    height: 100%;
  }

  .public-mission-hero h1 {
    max-width: 10.6ch;
    margin: 0;
    color: #071342;
    font-size: clamp(3.2rem, 6.1vw, 5.25rem);
    font-weight: 860;
    letter-spacing: -0.055em;
    line-height: 0.96;
  }

  .public-mission-hero h1 span {
    display: block;
    color: #076cff;
  }

  .public-mission-hero-visual {
    min-height: clamp(330px, 38vw, 520px);
    position: relative;
  }

  .public-mission-orbit {
    position: absolute;
    inset: 0;
    min-height: 100%;
  }

  .public-mission-orbit::before {
    content: "";
    position: absolute;
    right: 4%;
    bottom: 5%;
    width: 86%;
    height: 30%;
    border-radius: 13%;
    background: radial-gradient(ellipse, rgba(61, 127, 255, 0.22), transparent 68%);
    filter: blur(10px);
  }

  .public-mission-core-mark {
    position: absolute;
    right: 13%;
    top: 17%;
    width: 42%;
    aspect-ratio: 1;
    border-radius: 8px;
    display: grid;
    place-items: center;
    background:
      radial-gradient(circle at 34% 25%, rgba(255, 255, 255, 0.98), rgba(214, 231, 255, 0.92) 48%, rgba(59, 123, 255, 0.7) 100%);
    box-shadow:
      inset 0 0 0 8px rgba(255, 255, 255, 0.55),
      0 24px 54px rgba(13, 87, 230, 0.28);
    z-index: 3;
  }

  .public-mission-core-mark svg {
    width: 78%;
    height: 78%;
    filter: drop-shadow(0 10px 18px rgba(6, 105, 255, 0.25));
  }

  .public-mission-orbit-ring {
    position: absolute;
    right: 3%;
    top: 18%;
    width: 82%;
    height: 42%;
    border: 2px solid rgba(81, 136, 255, 0.27);
    border-radius: 13%;
    transform: rotate(-16deg);
    z-index: 2;
  }

  .public-mission-orbit-ring.is-ring-two {
    top: 10%;
    right: 7%;
    width: 76%;
    height: 50%;
    transform: rotate(13deg);
    border-color: rgba(81, 136, 255, 0.18);
  }

  .public-mission-orbit-ring.is-ring-three {
    top: 31%;
    right: 3%;
    width: 88%;
    height: 32%;
    transform: rotate(2deg);
    border-color: rgba(81, 136, 255, 0.16);
  }

  .public-mission-orbit-node {
    position: absolute;
    width: 42px;
    height: 42px;
    border-radius: 8px;
    background: radial-gradient(circle at 35% 25%, #ffffff, #7fa7ff 48%, #225cf0 100%);
    box-shadow: 0 12px 26px rgba(13, 87, 230, 0.26);
    z-index: 4;
  }

  .public-mission-orbit-node.is-node-one {
    top: 15%;
    right: 12%;
  }

  .public-mission-orbit-node.is-node-two {
    top: 55%;
    right: 34%;
  }

  .public-mission-orbit-node.is-node-three {
    top: 43%;
    right: 0;
  }

  .public-mission-float-card {
    position: absolute;
    display: grid;
    place-items: center;
    width: 74px;
    height: 84px;
    border: 1px solid rgba(117, 166, 255, 0.36);
    border-radius: 2px;
    color: #6a9fff;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.7), rgba(221, 235, 255, 0.46));
    box-shadow: 0 16px 34px rgba(17, 99, 232, 0.12);
    z-index: 5;
  }

  .public-mission-float-card svg {
    width: 40px;
    height: 40px;
  }

  .public-mission-float-card.is-document {
    top: 23%;
    left: 4%;
    transform: rotate(-5deg);
  }

  .public-mission-float-card.is-people {
    top: 2%;
    left: 24%;
    transform: rotate(-4deg);
  }

  .public-mission-float-card.is-network {
    right: 2%;
    bottom: 12%;
    transform: rotate(3deg);
  }

  .public-mission-thesis-list {
    display: grid;
    gap: clamp(28px, 4vw, 44px);
    max-width: 930px;
    margin-top: -8px;
  }

  .public-mission-thesis-item {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 32px;
    align-items: start;
  }

  .public-mission-line-icon,
  .public-mission-goal-icon,
  .public-mission-principle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: #eaf4ff;
    color: #0764e8;
  }

  .public-mission-line-icon {
    width: 68px;
    height: 68px;
  }

  .public-mission-line-icon svg {
    width: 38px;
    height: 38px;
  }

  .public-mission-thesis-item h2 {
    margin: 0 0 4px;
    color: #071342;
    font-size: clamp(1.15rem, 2vw, 1.36rem);
    font-weight: 850;
    letter-spacing: -0.03em;
    line-height: 1.28;
  }

  .public-mission-thesis-item p {
    margin: 0;
    color: #071342;
    font-size: clamp(1.06rem, 1.8vw, 1.25rem);
    font-weight: 520;
    line-height: 1.52;
  }

  .public-mission-goal {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 5px;
    margin-top: 4px;
    padding: 52px 24px 28px;
    border: 1px solid rgba(167, 203, 223, 0.78);
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.68);
    text-align: center;
  }

  .public-mission-goal-icon {
    position: absolute;
    top: -32px;
    width: 64px;
    height: 64px;
    border-radius: 8px;
    border: 1px solid rgba(167, 203, 223, 0.6);
  }

  .public-mission-goal-icon svg {
    width: 34px;
    height: 34px;
  }

  .public-mission-goal p {
    margin: 0;
    color: #076cff;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.24em;
    text-transform: uppercase;
  }

  .public-mission-goal h2 {
    margin: 0;
    color: #071342;
    font-size: clamp(1.85rem, 3vw, 2.45rem);
    font-weight: 850;
    letter-spacing: -0.045em;
    line-height: 1.05;
  }

  .public-mission-principles-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .public-mission-principle {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: 12px;
    min-height: 210px;
    padding: 4px 30px 0;
    text-align: center;
  }

  .public-mission-principle + .public-mission-principle {
    border-left: 1px solid rgba(167, 203, 223, 0.72);
  }

  .public-mission-principle-icon {
    width: 74px;
    height: 74px;
    border-radius: 8px;
  }

  .public-mission-principle-icon svg {
    width: 42px;
    height: 42px;
  }

  .public-mission-principle.is-green .public-mission-principle-icon {
    background: #dff8ee;
    color: #00a878;
  }

  .public-mission-principle.is-purple .public-mission-principle-icon {
    background: #efe7ff;
    color: #8a4bff;
  }

  .public-mission-principle.is-orange .public-mission-principle-icon {
    background: #fff0e0;
    color: #f39600;
  }

  .public-mission-principle h3 {
    margin: 0;
    color: #071342;
    font-size: clamp(1.02rem, 1.4vw, 1.2rem);
    font-weight: 850;
    letter-spacing: -0.03em;
  }

  .public-mission-principle p {
    max-width: 17ch;
    margin: 0;
    color: #071342;
    font-size: 1.02rem;
    font-weight: 520;
    line-height: 1.45;
  }

  .public-mission-close {
    margin: -8px 0 0;
    color: #072c78;
    text-align: center;
    font-size: clamp(1.22rem, 2.2vw, 1.55rem);
    font-weight: 850;
    letter-spacing: -0.035em;
    line-height: 1.25;
  }

  @media (max-width: 980px) {
    .public-mission-hero {
      grid-template-columns: 1fr;
    }

    .public-mission-hero h1 {
      max-width: 11.5ch;
    }

    .public-mission-hero-visual {
      min-height: 430px;
    }

    .public-mission-principles-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      row-gap: 30px;
    }

    .public-mission-principle:nth-child(3) {
      border-left: 0;
    }
  }

  @media (max-width: 640px) {
    .public-mission-page {
      padding-left: 4px;
      padding-right: 4px;
    }

    .public-mission-hero-visual {
      min-height: 300px;
    }

    .public-mission-hero h1 {
      max-width: 100%;
      font-size: clamp(2.35rem, 10vw, 3.55rem);
      letter-spacing: -0.045em;
      line-height: 1.02;
    }

    .public-mission-thesis-item {
      grid-template-columns: 58px minmax(0, 1fr);
      gap: 18px;
    }

    .public-mission-line-icon {
      width: 54px;
      height: 54px;
      border-radius: 4px;
    }

    .public-mission-line-icon svg {
      width: 30px;
      height: 30px;
    }

    .public-mission-principles-grid {
      grid-template-columns: 1fr;
    }

    .public-mission-principle,
    .public-mission-principle + .public-mission-principle,
    .public-mission-principle:nth-child(3) {
      border-left: 0;
      border-top: 1px solid rgba(167, 203, 223, 0.72);
      padding-top: 24px;
    }

    .public-mission-principle:first-child {
      border-top: 0;
    }
  }

  .public-priority-hero {
    position: relative;
    overflow: hidden;
    grid-template-columns: minmax(0, 0.95fr) minmax(420px, 1.05fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    padding: clamp(36px, 5vw, 64px);
    background:
      radial-gradient(circle at 100% 50%, rgba(37, 114, 216, 0.13), transparent 38%),
      linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  }

  .public-priority-hero::after {
    content: "";
    position: absolute;
    top: -18%;
    right: -12%;
    width: min(42vw, 620px);
    height: 140%;
    border-radius: 12% 0 0 12%;
    background:
      radial-gradient(circle at 90% 45%, rgba(37, 114, 216, 0.18), transparent 44%),
      linear-gradient(135deg, rgba(230, 242, 255, 0.7), rgba(240, 248, 255, 0.18));
    pointer-events: none;
  }

  .public-priority-hero-copy {
    position: relative;
    z-index: 1;
    gap: clamp(18px, 2vw, 26px);
  }

  .public-priority-chip {
    background: transparent;
    padding: 0;
    color: #256ed8;
    border: 0;
    box-shadow: none;
    font-size: 0.88rem;
    letter-spacing: 0.06em;
  }

  .public-priority-hero-copy h1 {
    max-width: 12.8ch;
    font-size: clamp(2.48rem, 4.56vw, 4.32rem);
    line-height: 1.03;
    letter-spacing: -0.06em;
    font-weight: 760;
  }

  .public-priority-hero-leads {
    display: grid;
    gap: 22px;
    max-width: 38rem;
  }

  .public-priority-hero-leads p {
    max-width: none;
    color: #5d7188;
    font-size: clamp(1.08rem, 1.5vw, 1.35rem);
    line-height: 1.45;
  }

  .public-priority-hero .public-cta-row {
    gap: 18px;
    margin-top: 10px;
  }

  .public-priority-hero .public-cta-button {
    min-width: 230px;
    min-height: 60px;
    border-radius: 4px;
    font-size: 1.05rem;
    font-weight: 760;
  }

  .public-priority-reassurance {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #5f7287;
    font-weight: 700;
  }

  .public-priority-reassurance span {
    display: inline-grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border-radius: 2px;
    color: #2b70d6;
    border: 2px solid rgba(37, 112, 214, 0.22);
    background: rgba(255, 255, 255, 0.82);
  }

  .public-priority-reassurance p {
    margin: 0;
    color: inherit;
    font-size: 0.96rem;
    line-height: 1.3;
  }

  .public-priority-preview {
    position: relative;
    z-index: 1;
    min-width: 0;
  }

  .public-priority-preview-card {
    display: grid;
    gap: clamp(18px, 2vw, 26px);
    padding: clamp(30px, 4vw, 46px);
    border: 1px solid rgba(167, 203, 223, 0.72);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 24px 58px rgba(37, 112, 214, 0.12);
  }

  .public-priority-preview-top,
  .public-priority-ready,
  .public-priority-list-head,
  .public-priority-row {
    display: flex;
    align-items: center;
  }

  .public-priority-preview-top {
    justify-content: space-between;
    gap: 18px;
  }

  .public-priority-preview-top p {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    color: #5d7188;
    font-size: clamp(1.05rem, 1.6vw, 1.3rem);
  }

  .public-priority-preview-top strong {
    color: #256ed8;
  }

  .public-priority-calendar {
    position: relative;
    display: inline-grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 8px;
    color: #256ed8;
    background: rgba(230, 242, 255, 0.9);
    font-weight: 900;
  }

  .public-priority-calendar::before {
    content: "";
    width: 17px;
    height: 15px;
    border: 2px solid currentColor;
    border-radius: 1px;
    box-shadow: inset 0 5px 0 rgba(37, 110, 216, 0.14);
  }

  .public-priority-calendar::after {
    content: "";
    position: absolute;
    top: 16px;
    width: 12px;
    height: 2px;
    border-radius: 8px;
    background: currentColor;
  }

  .public-priority-ready {
    gap: 20px;
  }

  .public-priority-ready strong {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    color: #256ed8;
    font-size: clamp(2.8rem, 5vw, 4.7rem);
    line-height: 1;
    letter-spacing: -0.07em;
  }

  .public-priority-ready strong span {
    color: #082033;
    font-size: clamp(1.5rem, 2.2vw, 2rem);
    letter-spacing: -0.04em;
  }

  .public-priority-ready-track {
    flex: 1;
    min-width: 120px;
    height: 11px;
    overflow: hidden;
    border-radius: 8px;
    background: #e6edf5;
  }

  .public-priority-ready-track span {
    display: block;
    width: 74%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #256ed8, #2f7ce0);
  }

  .public-priority-ready em {
    padding: 5px 12px;
    border-radius: 8px;
    background: #e7f7e7;
    color: #4d9a4f;
    font-size: 0.86rem;
    font-style: normal;
    font-weight: 800;
    white-space: nowrap;
  }

  .public-priority-divider {
    height: 1px;
    background: rgba(167, 203, 223, 0.5);
  }

  .public-priority-list-head {
    justify-content: space-between;
    gap: 14px;
  }

  .public-priority-list-head h2 {
    margin: 0;
    color: #082033;
    font-size: clamp(1.08rem, 1.76vw, 1.6rem);
    line-height: 1;
    letter-spacing: -0.04em;
  }

  .public-priority-list-head span {
    padding: 8px 12px;
    border-radius: 8px;
    background: #eef3f9;
    color: #66798d;
    font-size: 0.86rem;
    font-weight: 800;
    white-space: nowrap;
  }

  .public-priority-list {
    display: grid;
    gap: 14px;
  }

  .public-priority-row {
    gap: 18px;
    padding: 20px;
    border: 1px solid rgba(167, 203, 223, 0.72);
    border-radius: 5px;
    background: #ffffff;
  }

  .public-priority-row.is-urgent {
    border-color: rgba(37, 112, 214, 0.32);
    box-shadow: 0 14px 28px rgba(37, 112, 214, 0.08);
  }

  .public-priority-row.is-strong {
    border-color: rgba(82, 184, 88, 0.28);
    background: linear-gradient(180deg, #ffffff 0%, #fbfffb 100%);
  }

  .public-priority-rank {
    display: inline-grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    place-items: center;
    border-radius: 8px;
    background: #256ed8;
    color: #ffffff;
    font-size: 1.25rem;
    font-weight: 860;
  }

  .public-priority-row.is-medium .public-priority-rank {
    background: #e7f0fc;
    color: #256ed8;
  }

  .public-priority-row.is-strong .public-priority-rank {
    background: #e7f7e7;
    color: #45a64b;
  }

  .public-priority-row-copy {
    display: grid;
    flex: 1;
    min-width: 0;
    gap: 7px;
  }

  .public-priority-row-copy strong {
    color: #082033;
    font-size: clamp(1.1rem, 1.6vw, 1.35rem);
    line-height: 1.05;
  }

  .public-priority-row-copy p {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    color: #256ed8;
    font-size: 0.95rem;
    font-weight: 760;
  }

  .public-priority-row-copy p span + span::before {
    content: "·";
    margin-right: 8px;
    color: #8ca2b8;
  }

  .public-priority-row-copy small {
    width: fit-content;
    margin-top: 6px;
    padding: 8px 12px;
    border-radius: 2px;
    background: #eef5ff;
    color: #256ed8;
    font-size: 0.92rem;
    font-weight: 800;
  }

  .public-priority-row-copy small span {
    margin-right: 6px;
  }

  .public-priority-arrow {
    color: #6d8194;
    font-size: 2rem;
    line-height: 1;
  }

  .public-impact-section {
    position: relative;
    overflow: hidden;
    padding: clamp(34px, 5vw, 58px);
    border: 1px solid rgba(167, 203, 223, 0.56);
    border-radius: 6px;
    background:
      radial-gradient(circle at 78% 46%, rgba(37, 112, 214, 0.12), transparent 34%),
      radial-gradient(circle at 104% 86%, rgba(37, 112, 214, 0.08), transparent 30%),
      #ffffff;
    box-shadow: 0 10px 26px rgba(8, 32, 51, 0.04);
  }

  .public-impact-section::before,
  .public-impact-section::after {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: 0.55;
    background-image: radial-gradient(rgba(37, 112, 214, 0.18) 2px, transparent 2px);
    background-size: 20px 20px;
  }

  .public-impact-section::before {
    right: 30px;
    top: 28px;
    width: 170px;
    height: 96px;
  }

  .public-impact-section::after {
    left: -18px;
    bottom: -18px;
    width: 160px;
    height: 112px;
  }

  .public-impact-head {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
    margin-bottom: clamp(28px, 4vw, 44px);
  }

  .public-impact-chip {
    width: fit-content;
    padding: 0;
    border: 0;
    background: transparent;
    color: #256ed8;
    box-shadow: none;
    font-size: 0.88rem;
    letter-spacing: 0.07em;
  }

  .public-impact-head h2 {
    max-width: 16ch;
    margin: 0;
    color: #082033;
    font-size: clamp(2.16rem, 4.4vw, 4.08rem);
    line-height: 1.02;
    letter-spacing: -0.06em;
    font-weight: 760;
  }

  .public-impact-head p {
    max-width: 45rem;
    margin: 0;
    color: #5d7188;
    font-size: clamp(1.08rem, 1.6vw, 1.38rem);
    line-height: 1.48;
  }

  .public-impact-card-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(18px, 2.4vw, 30px);
  }

  .public-impact-card {
    position: relative;
    display: grid;
    min-height: 430px;
    gap: 16px;
    align-content: start;
    padding: clamp(24px, 3vw, 34px);
    border: 1px solid rgba(167, 203, 223, 0.62);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 38px rgba(37, 112, 214, 0.07);
  }

  .public-impact-card.is-green {
    border-color: rgba(82, 184, 88, 0.22);
  }

  .public-impact-number {
    display: inline-grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 8px;
    background: #edf5ff;
    color: #256ed8;
    font-size: 1.18rem;
    font-weight: 860;
  }

  .public-impact-card.is-green .public-impact-number {
    background: #eaf9ea;
    color: #49a851;
  }

  .public-impact-icon {
    position: relative;
    display: inline-grid;
    width: 106px;
    height: 106px;
    place-items: center;
    justify-self: center;
    margin: -22px 0 14px;
    border-radius: 8px;
    background: #edf5ff;
    color: #256ed8;
  }

  .public-impact-card.is-green .public-impact-icon {
    background: #eaf9ea;
    color: #49a851;
  }

  .public-impact-icon.public-impact-icon-has-image {
    width: 126px;
    height: 126px;
    background: transparent;
    color: inherit;
  }

  .public-impact-icon.public-impact-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-impact-icon-target {
    border: 28px solid #edf5ff;
    background:
      radial-gradient(circle, currentColor 0 4px, transparent 5px),
      radial-gradient(circle, transparent 0 27px, currentColor 28px 30px, transparent 31px);
  }

  .public-impact-icon-target::before,
  .public-impact-icon-target::after {
    content: "";
    position: absolute;
    background: currentColor;
    border-radius: 8px;
  }

  .public-impact-icon-target::before {
    width: 50px;
    height: 3px;
  }

  .public-impact-icon-target::after {
    width: 3px;
    height: 50px;
  }

  .public-impact-icon-chart::before {
    content: "";
    width: 56px;
    height: 50px;
    border-bottom: 4px solid currentColor;
    border-left: 4px solid currentColor;
    background:
      linear-gradient(currentColor, currentColor) 10px 25px / 8px 21px no-repeat,
      linear-gradient(currentColor, currentColor) 26px 16px / 8px 30px no-repeat,
      linear-gradient(currentColor, currentColor) 42px 7px / 8px 39px no-repeat;
  }

  .public-impact-icon-chart::after {
    content: "";
    position: absolute;
    width: 54px;
    height: 28px;
    border-top: 4px solid currentColor;
    border-right: 4px solid currentColor;
    transform: translateY(-18px) rotate(-22deg);
    border-radius: 0 2px 0 0;
  }

  .public-impact-icon-clock::before {
    content: "";
    width: 58px;
    height: 58px;
    border: 4px solid currentColor;
    border-radius: 8px;
  }

  .public-impact-icon-clock::after {
    content: "";
    position: absolute;
    width: 22px;
    height: 22px;
    border-left: 4px solid currentColor;
    border-bottom: 4px solid currentColor;
    transform: translate(7px, -5px);
  }

  .public-impact-icon.public-impact-icon-has-image {
    border: 0;
    background: transparent;
  }

  .public-impact-card.is-green .public-impact-icon.public-impact-icon-has-image {
    background: transparent;
  }

  .public-impact-icon.public-impact-icon-has-image::before,
  .public-impact-icon.public-impact-icon-has-image::after {
    content: none;
  }

  .public-impact-card h3 {
    margin: 0;
    color: #082033;
    font-size: clamp(1.75rem, 2.8vw, 2.55rem);
    line-height: 1.03;
    letter-spacing: -0.05em;
    font-weight: 760;
  }

  .public-impact-card > p {
    margin: 0;
    color: #5d7188;
    font-size: clamp(1rem, 1.3vw, 1.18rem);
    line-height: 1.5;
  }

  .public-impact-checks {
    display: grid;
    gap: 14px;
    margin-top: auto;
  }

  .public-impact-check {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 58px;
    padding: 12px 16px;
    border: 1px solid rgba(167, 203, 223, 0.58);
    border-radius: 3px;
    background: rgba(247, 251, 255, 0.78);
    color: #082033;
    font-size: 0.98rem;
  }

  .public-impact-check.is-yes,
  .public-impact-check.is-date {
    border-color: rgba(82, 184, 88, 0.28);
    background: rgba(246, 255, 246, 0.86);
  }

  .public-impact-check span {
    display: inline-grid;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    place-items: center;
    border-radius: 8px;
    background: #256ed8;
    color: #ffffff;
  }

  .public-impact-check.is-yes span,
  .public-impact-check.is-date span {
    background: #52b858;
  }

  .public-impact-check span::before {
    content: "x";
    font-weight: 900;
    line-height: 1;
  }

  .public-impact-check.is-yes span::before {
    content: "";
    width: 12px;
    height: 7px;
    border-left: 3px solid #ffffff;
    border-bottom: 3px solid #ffffff;
    transform: rotate(-45deg) translate(1px, -1px);
  }

  .public-impact-check.is-date span::before {
    content: "";
    width: 14px;
    height: 13px;
    border: 2px solid #ffffff;
    border-radius: 1px;
    box-shadow: inset 0 4px 0 rgba(255, 255, 255, 0.26);
  }

  .public-impact-check p {
    margin: 0;
    color: #5d7188;
  }

  .public-impact-check strong {
    color: #256ed8;
  }

  .public-impact-check.is-yes strong,
  .public-impact-check.is-date strong {
    color: #49a851;
  }

  .public-study-shift-section {
    position: relative;
    overflow: hidden;
    display: grid;
    gap: clamp(30px, 4vw, 48px);
    padding: clamp(34px, 5vw, 58px);
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 6px;
    background:
      radial-gradient(circle at 80% 36%, rgba(37, 112, 214, 0.12), transparent 32%),
      radial-gradient(circle at 96% 74%, rgba(37, 112, 214, 0.08), transparent 34%),
      #ffffff;
    box-shadow: 0 10px 26px rgba(8, 32, 51, 0.04);
  }

  .public-study-shift-section::before,
  .public-study-shift-section::after {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: 0.48;
    background-image: radial-gradient(rgba(37, 112, 214, 0.18) 2px, transparent 2px);
    background-size: 20px 20px;
  }

  .public-study-shift-section::before {
    right: 34px;
    top: 28px;
    width: 170px;
    height: 120px;
  }

  .public-study-shift-section::after {
    left: -10px;
    bottom: 52px;
    width: 116px;
    height: 150px;
  }

  .public-study-shift-head {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
  }

  .public-study-shift-chip {
    width: fit-content;
    padding: 0;
    border: 0;
    background: transparent;
    color: #256ed8;
    box-shadow: none;
    font-size: 0.88rem;
    letter-spacing: 0.07em;
  }

  .public-study-shift-head h2 {
    max-width: 17ch;
    margin: 0;
    color: #082033;
    font-size: clamp(2.16rem, 4.4vw, 4.08rem);
    line-height: 1.02;
    letter-spacing: -0.06em;
    font-weight: 760;
  }

  .public-study-shift-head p {
    max-width: 48rem;
    margin: 0;
    color: #5d7188;
    font-size: clamp(1.08rem, 1.6vw, 1.38rem);
    line-height: 1.48;
  }

  .public-study-shift-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: clamp(24px, 4vw, 64px);
  }

  .public-study-shift-card {
    display: grid;
    gap: 26px;
    min-height: 500px;
    padding: clamp(26px, 3.5vw, 42px);
    border: 1px solid rgba(167, 203, 223, 0.62);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 38px rgba(37, 112, 214, 0.07);
  }

  .public-study-shift-card.is-after {
    border-color: rgba(82, 184, 88, 0.26);
    box-shadow: 0 18px 42px rgba(82, 184, 88, 0.12);
  }

  .public-study-shift-card-title {
    display: flex;
    align-items: center;
    gap: 28px;
  }

  .public-study-shift-card-title h3 {
    margin: 0;
    color: #082033;
    font-size: clamp(2rem, 3.6vw, 3.3rem);
    line-height: 1.02;
    letter-spacing: -0.05em;
    font-weight: 760;
  }

  .public-study-shift-illustration {
    position: relative;
    display: inline-grid;
    width: 118px;
    height: 118px;
    flex: 0 0 118px;
    place-items: center;
    border-radius: 8px;
    background: #edf5ff;
    color: #256ed8;
  }

  .public-study-shift-illustration.has-image {
    overflow: hidden;
    background: transparent;
  }

  .public-study-shift-illustration.has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-study-shift-list {
    display: grid;
    gap: 19px;
    padding: 0;
    margin: 0;
    list-style: none;
  }

  .public-study-shift-list li {
    display: flex;
    align-items: center;
    gap: 18px;
    color: #354b63;
    font-size: clamp(1rem, 1.35vw, 1.24rem);
    line-height: 1.35;
  }

  .public-study-shift-mark {
    display: inline-grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    border-radius: 8px;
    background: #e5edf7;
    color: #506985;
  }

  .public-study-shift-card.is-after .public-study-shift-mark {
    background: #52b858;
    color: #ffffff;
  }

  .public-study-shift-mark::before {
    content: "x";
    font-weight: 900;
    line-height: 1;
  }

  .public-study-shift-card.is-after .public-study-shift-mark::before {
    content: "";
    width: 13px;
    height: 8px;
    border-left: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(-45deg) translate(1px, -1px);
  }

  .public-study-shift-card-foot {
    margin: auto 0 0;
    padding-top: 22px;
    border-top: 1px solid rgba(167, 203, 223, 0.58);
    color: #5d7188;
    text-align: center;
    font-size: clamp(1.02rem, 1.45vw, 1.24rem);
    font-weight: 780;
  }

  .public-study-shift-card.is-after .public-study-shift-card-foot {
    color: #52b858;
  }

  .public-study-shift-arrow {
    position: relative;
    width: 78px;
    height: 22px;
    color: #b9d2f8;
  }

  .public-study-shift-arrow::before {
    content: "";
    position: absolute;
    inset: 8px 22px 8px 0;
    background-image: radial-gradient(currentColor 3px, transparent 4px);
    background-size: 18px 8px;
  }

  .public-study-shift-arrow::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 0;
    height: 0;
    border-top: 19px solid transparent;
    border-bottom: 19px solid transparent;
    border-left: 34px solid currentColor;
    transform: translateY(-50%);
  }

  .public-not-flashcards-section {
    position: relative;
    overflow: hidden;
    display: grid;
    gap: clamp(30px, 4vw, 46px);
    padding: clamp(34px, 5vw, 58px);
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 6px;
    background:
      radial-gradient(circle at 80% 35%, rgba(37, 112, 214, 0.12), transparent 34%),
      radial-gradient(circle at 97% 76%, rgba(37, 112, 214, 0.08), transparent 32%),
      #ffffff;
    box-shadow: 0 10px 26px rgba(8, 32, 51, 0.04);
  }

  .public-not-flashcards-section::before,
  .public-not-flashcards-section::after {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: 0.48;
    background-image: radial-gradient(rgba(37, 112, 214, 0.18) 2px, transparent 2px);
    background-size: 20px 20px;
  }

  .public-not-flashcards-section::before {
    right: 34px;
    top: 34px;
    width: 172px;
    height: 120px;
  }

  .public-not-flashcards-section::after {
    left: -12px;
    bottom: 16px;
    width: 128px;
    height: 158px;
  }

  .public-not-flashcards-head {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
  }

  .public-not-flashcards-chip {
    width: fit-content;
    padding: 0;
    border: 0;
    background: transparent;
    color: #256ed8;
    box-shadow: none;
    font-size: 0.88rem;
    letter-spacing: 0.07em;
  }

  .public-not-flashcards-head h2 {
    max-width: 19ch;
    margin: 0;
    color: #082033;
    font-size: clamp(2.16rem, 4.4vw, 4.08rem);
    line-height: 1.02;
    letter-spacing: -0.06em;
    font-weight: 760;
  }

  .public-not-flashcards-copy {
    display: grid;
    gap: 14px;
    max-width: 52rem;
    color: #5d7188;
    font-size: clamp(1.12rem, 1.75vw, 1.55rem);
    line-height: 1.42;
  }

  .public-not-flashcards-copy p {
    margin: 0;
  }

  .public-not-flashcards-copy strong {
    color: #256ed8;
    font-size: clamp(2.2rem, 4.5vw, 4rem);
    line-height: 1.02;
    letter-spacing: -0.05em;
    font-weight: 800;
  }

  .public-not-flashcards-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(18px, 2.4vw, 30px);
  }

  .public-not-flashcards-card {
    display: grid;
    justify-items: center;
    gap: 18px;
    min-height: 300px;
    align-content: center;
    padding: clamp(26px, 3vw, 36px);
    border: 1px solid rgba(167, 203, 223, 0.62);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.92);
    text-align: center;
    box-shadow: 0 18px 38px rgba(37, 112, 214, 0.07);
  }

  .public-not-flashcards-card.is-green {
    border-color: rgba(82, 184, 88, 0.26);
  }

  .public-not-flashcards-icon {
    position: relative;
    display: inline-grid;
    width: 118px;
    height: 118px;
    place-items: center;
    border-radius: 8px;
    background: #edf5ff;
    color: #256ed8;
  }

  .public-not-flashcards-card.is-green .public-not-flashcards-icon {
    background: #eaf9ea;
    color: #49a851;
  }

  .public-not-flashcards-icon.public-not-flashcards-icon-has-image {
    width: 132px;
    height: 132px;
    background: transparent;
    color: inherit;
  }

  .public-not-flashcards-icon.public-not-flashcards-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-not-flashcards-icon-document::before {
    content: "";
    width: 52px;
    height: 66px;
    border: 4px solid currentColor;
    border-radius: 1px;
    background:
      linear-gradient(currentColor, currentColor) 12px 18px / 28px 4px no-repeat,
      linear-gradient(currentColor, currentColor) 12px 31px / 28px 4px no-repeat,
      linear-gradient(currentColor, currentColor) 12px 44px / 28px 4px no-repeat;
  }

  .public-not-flashcards-icon-document::after {
    content: "";
    position: absolute;
    right: 31px;
    top: 30px;
    width: 18px;
    height: 18px;
    border-top: 4px solid currentColor;
    border-right: 4px solid currentColor;
    transform: rotate(45deg);
    background: #edf5ff;
  }

  .public-not-flashcards-icon-dashboard::before {
    content: "";
    width: 70px;
    height: 54px;
    border: 4px solid currentColor;
    border-radius: 2px;
    background:
      radial-gradient(circle at 18px 20px, currentColor 0 10px, transparent 11px),
      linear-gradient(currentColor, currentColor) 41px 17px / 20px 4px no-repeat,
      linear-gradient(currentColor, currentColor) 41px 31px / 22px 4px no-repeat;
  }

  .public-not-flashcards-icon-dashboard::after {
    content: "";
    position: absolute;
    bottom: 34px;
    width: 68px;
    height: 14px;
    background:
      radial-gradient(circle at 10px 7px, #52b858 0 7px, transparent 8px),
      radial-gradient(circle at 31px 7px, #f0b429 0 7px, transparent 8px),
      radial-gradient(circle at 52px 7px, #256ed8 0 7px, transparent 8px);
  }

  .public-not-flashcards-icon-arrow::before {
    content: "";
    width: 70px;
    height: 70px;
    border-radius: 8px;
    background:
      radial-gradient(circle at center, currentColor 0 6px, transparent 7px 17px, currentColor 18px 22px, transparent 23px 33px, currentColor 34px 38px, transparent 39px);
  }

  .public-not-flashcards-icon-arrow::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 28px;
    width: 54px;
    height: 30px;
    background: currentColor;
    clip-path: polygon(0 42%, 70% 42%, 70% 18%, 100% 50%, 70% 82%, 70% 58%, 0 58%);
    transform: rotate(-35deg);
    transform-origin: center;
  }

  .public-not-flashcards-icon.public-not-flashcards-icon-has-image {
    border: 0;
    background: transparent;
  }

  .public-not-flashcards-card.is-green .public-not-flashcards-icon.public-not-flashcards-icon-has-image {
    background: transparent;
  }

  .public-not-flashcards-icon.public-not-flashcards-icon-has-image::before,
  .public-not-flashcards-icon.public-not-flashcards-icon-has-image::after {
    content: none;
  }

  .public-not-flashcards-card h3 {
    margin: 0;
    color: #082033;
    font-size: clamp(1.75rem, 2.8vw, 2.55rem);
    line-height: 1.04;
    letter-spacing: -0.05em;
    font-weight: 760;
  }

  .public-not-flashcards-card p {
    max-width: 22rem;
    margin: 0;
    color: #5d7188;
    font-size: clamp(1rem, 1.3vw, 1.18rem);
    line-height: 1.45;
  }

  .public-stand-hero,
  .public-stand-clarity-section,
  .public-stand-heatmap-section,
  .public-stand-progress-section {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 6px;
    background:
      radial-gradient(circle at 82% 32%, rgba(37, 112, 214, 0.09), transparent 34%),
      #ffffff;
    box-shadow: 0 10px 26px rgba(8, 32, 51, 0.04);
  }

  .public-stand-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(420px, 1fr);
    gap: clamp(34px, 5vw, 72px);
    align-items: center;
    padding: clamp(36px, 5vw, 66px);
  }

  .public-stand-hero-copy {
    display: grid;
    gap: 18px;
  }

  .public-stand-chip {
    width: fit-content;
    padding: 0;
    border: 0;
    background: transparent;
    color: #005ecb;
    box-shadow: none;
    font-size: 0.88rem;
    letter-spacing: 0.07em;
  }

  .public-stand-hero-copy h1 {
    max-width: 11ch;
    margin: 0;
    color: #082033;
    font-size: clamp(2.4rem, 4.88vw, 4.4rem);
    line-height: 1.02;
    letter-spacing: -0.06em;
    font-weight: 800;
  }

  .public-stand-hero-leads {
    display: grid;
    gap: 16px;
    max-width: 38rem;
    color: #354b63;
    font-size: clamp(1.05rem, 1.6vw, 1.3rem);
    line-height: 1.58;
  }

  .public-stand-hero-leads p,
  .public-stand-reassurance p {
    margin: 0;
  }

  .public-stand-reassurance {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #506985;
    font-weight: 720;
  }

  .public-stand-reassurance span {
    position: relative;
    display: inline-grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 8px;
    background: #edf5ff;
    color: #005ecb;
  }

  .public-stand-reassurance span::before {
    content: "";
    width: 10px;
    height: 10px;
    border: 3px solid currentColor;
    border-radius: 8px;
  }

  .public-stand-reassurance span::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 3px;
    background: currentColor;
    transform: translate(6px, 7px) rotate(-35deg);
    border-radius: 8px;
  }

  .public-stand-dashboard,
  .public-stand-heatmap-card,
  .public-stand-progress-card,
  .public-stand-decision-card {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 18px;
    padding: clamp(22px, 3vw, 34px);
    border: 1px solid rgba(167, 203, 223, 0.6);
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 20px 44px rgba(8, 32, 51, 0.08);
  }

  .public-stand-dashboard-top,
  .public-stand-summary,
  .public-stand-progress-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
  }

  .public-stand-dashboard-top p {
    display: flex;
    gap: 10px;
    margin: 0;
    color: #082033;
    font-weight: 760;
  }

  .public-stand-dashboard-top span {
    color: #506985;
    font-weight: 620;
  }

  .public-stand-dashboard-top a,
  .public-stand-view-all {
    width: fit-content;
    justify-self: center;
    padding: 8px 13px;
    border: 1px solid #005ecb;
    border-radius: 2px;
    color: #005ecb;
    font-weight: 760;
    text-decoration: none;
  }

  .public-stand-summary {
    align-items: stretch;
    padding: 18px;
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 3px;
    background: #ffffff;
  }

  .public-stand-summary > div:first-child {
    display: grid;
    align-content: center;
    gap: 2px;
    min-width: 118px;
  }

  .public-stand-summary span,
  .public-stand-summary small,
  .public-stand-table-head,
  .public-stand-heatmap-row.is-head {
    color: #506985;
    font-size: 0.86rem;
    font-weight: 720;
  }

  .public-stand-summary strong {
    color: #169c4a;
    font-size: clamp(2rem, 4vw, 3.5rem);
    line-height: 1;
  }

  .public-stand-donut {
    width: 118px;
    height: 118px;
    border-radius: 50%;
    background:
      radial-gradient(circle, #ffffff 0 50%, transparent 51%),
      conic-gradient(#169c4a 0 74%, #f0ab25 74% 90%, #e73333 90% 100%);
    box-shadow: inset 0 0 0 1px rgba(167, 203, 223, 0.4);
  }

  .public-stand-legend {
    display: grid;
    min-width: 230px;
  }

  .public-stand-legend p {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 10px;
    margin: 0;
    border-bottom: 1px solid rgba(167, 203, 223, 0.32);
    color: #082033;
    font-weight: 650;
  }

  .public-stand-legend p:last-child {
    border-bottom: 0;
  }

  .public-stand-legend span,
  .public-stand-heatmap-legend span {
    width: 16px;
    height: 16px;
    border-radius: 8px;
  }

  .public-stand-legend .is-ready,
  .public-stand-heatmap-legend .is-ready {
    background: #169c4a;
  }

  .public-stand-legend .is-uncertain,
  .public-stand-heatmap-legend .is-uncertain {
    background: #f0ab25;
  }

  .public-stand-legend .is-weak,
  .public-stand-heatmap-legend .is-weak {
    background: #e73333;
  }

  .public-stand-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
  }

  .public-stand-tabs span {
    padding: 10px 22px;
    border: 1px solid rgba(167, 203, 223, 0.58);
    color: #082033;
    font-size: 0.92rem;
    font-weight: 760;
  }

  .public-stand-tabs span:first-child {
    border-radius: 2px 0 0 2px;
    background: #005ecb;
    color: #ffffff;
  }

  .public-stand-tabs span:last-child {
    border-radius: 0 2px 2px 0;
  }

  .public-stand-table,
  .public-stand-heatmap-table {
    overflow: hidden;
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 3px;
    background: #ffffff;
  }

  .public-stand-table-head,
  .public-stand-table-row {
    display: grid;
    grid-template-columns: minmax(190px, 1fr) 112px 96px 80px;
    gap: 12px;
    align-items: center;
    padding: 13px 16px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.36);
  }

  .public-stand-table-row:last-child {
    border-bottom: 0;
  }

  .public-stand-table-row {
    color: #082033;
    font-size: 0.95rem;
    font-weight: 660;
  }

  .public-stand-table-row em {
    display: inline-flex;
    width: fit-content;
    padding: 4px 9px;
    border-radius: 8px;
    font-style: normal;
    font-size: 0.82rem;
    font-weight: 760;
  }

  .public-stand-table-row em.is-ready {
    background: #eaf8ee;
    color: #169c4a;
  }

  .public-stand-table-row em.is-uncertain {
    background: #fff3d6;
    color: #d98900;
  }

  .public-stand-table-row em.is-weak {
    background: #ffe6e6;
    color: #e73333;
  }

  .public-stand-trend {
    display: inline-block;
    width: 54px;
    height: 18px;
    border-bottom: 3px solid currentColor;
  }

  .public-stand-clarity-section {
    display: grid;
    gap: 32px;
    padding: clamp(34px, 5vw, 58px);
  }

  .public-stand-section-head {
    display: grid;
    gap: 12px;
  }

  .public-stand-section-head.is-centered {
    justify-items: center;
    text-align: center;
  }

  .public-stand-section-head h2,
  .public-stand-heatmap-copy h2,
  .public-stand-decision-card h2 {
    max-width: 18ch;
    margin: 0;
    color: #082033;
    font-size: clamp(1.6rem, 3.2vw, 3.04rem);
    line-height: 1.06;
    letter-spacing: -0.05em;
    font-weight: 800;
  }

  .public-stand-clarity-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .public-stand-clarity-card {
    display: grid;
    justify-items: center;
    gap: 14px;
    padding: 8px clamp(18px, 3vw, 34px);
    border-right: 1px solid rgba(167, 203, 223, 0.45);
    text-align: center;
  }

  .public-stand-clarity-card:last-child {
    border-right: 0;
  }

  .public-stand-clarity-icon,
  .public-stand-decision-icon {
    position: relative;
    display: inline-grid;
    width: 88px;
    height: 88px;
    place-items: center;
    border-radius: 8px;
    background: #edf5ff;
    color: #005ecb;
  }

  .public-stand-clarity-card:nth-child(2) .public-stand-clarity-icon {
    background: #eaf8ee;
    color: #169c4a;
  }

  .public-stand-clarity-card:nth-child(3) .public-stand-clarity-icon {
    background: #f0eaff;
    color: #6b39d6;
  }

  .public-stand-clarity-icon.public-stand-clarity-icon-has-image {
    width: 132px;
    height: 132px;
    background: transparent;
    color: inherit;
  }

  .public-stand-clarity-card:nth-child(2) .public-stand-clarity-icon.public-stand-clarity-icon-has-image,
  .public-stand-clarity-card:nth-child(3) .public-stand-clarity-icon.public-stand-clarity-icon-has-image {
    background: transparent;
  }

  .public-stand-clarity-icon.public-stand-clarity-icon-has-image::before,
  .public-stand-clarity-icon.public-stand-clarity-icon-has-image::after {
    content: none;
  }

  .public-stand-clarity-icon.public-stand-clarity-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-stand-clarity-card h3 {
    margin: 0;
    color: #082033;
    font-size: 1.15rem;
    font-weight: 800;
  }

  .public-stand-clarity-card p,
  .public-stand-heatmap-copy p,
  .public-stand-decision-card > p {
    margin: 0;
    color: #354b63;
    font-size: 1rem;
    line-height: 1.52;
  }

  .public-stand-clarity-icon-bars::before,
  .public-stand-clarity-icon-trend::before {
    content: "";
    width: 48px;
    height: 44px;
    border-bottom: 4px solid currentColor;
    border-left: 4px solid currentColor;
    background:
      linear-gradient(currentColor, currentColor) 9px 24px / 7px 16px no-repeat,
      linear-gradient(currentColor, currentColor) 23px 13px / 7px 27px no-repeat,
      linear-gradient(currentColor, currentColor) 37px 4px / 7px 36px no-repeat;
  }

  .public-stand-clarity-icon-target::before {
    content: "";
    width: 52px;
    height: 52px;
    border: 4px solid currentColor;
    border-radius: 8px;
    box-shadow: inset 0 0 0 12px #eaf8ee, inset 0 0 0 15px currentColor;
  }

  .public-stand-clarity-icon-trend::after {
    content: "";
    position: absolute;
    width: 42px;
    height: 26px;
    border-top: 4px solid currentColor;
    border-right: 4px solid currentColor;
    transform: rotate(-18deg);
  }

  .public-stand-clarity-icon-scale::before {
    content: "";
    width: 54px;
    height: 44px;
    border-top: 4px solid currentColor;
    border-bottom: 4px solid currentColor;
    clip-path: polygon(50% 0, 100% 42%, 83% 42%, 72% 100%, 28% 100%, 17% 42%, 0 42%);
    background: currentColor;
  }

  .public-stand-heatmap-section {
    display: grid;
    grid-template-columns: minmax(240px, 0.52fr) minmax(420px, 1fr);
    gap: clamp(28px, 5vw, 70px);
    align-items: center;
    padding: clamp(34px, 5vw, 58px);
  }

  .public-stand-heatmap-copy {
    display: grid;
    gap: 18px;
  }

  .public-stand-heatmap-legend {
    display: grid;
    gap: 18px;
    margin-top: 12px;
  }

  .public-stand-heatmap-legend p {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 4px 14px;
    margin: 0;
    color: #354b63;
    line-height: 1.35;
  }

  .public-stand-heatmap-legend p span {
    grid-row: span 2;
    align-self: center;
    width: 32px;
    height: 32px;
  }

  .public-stand-heatmap-legend strong {
    display: block;
    color: #082033;
  }

  .public-stand-heatmap-row {
    display: grid;
    grid-template-columns: minmax(150px, 1.4fr) repeat(3, minmax(86px, 1fr));
    align-items: stretch;
  }

  .public-stand-heatmap-row span {
    padding: 13px 16px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.28);
    color: #082033;
    font-weight: 720;
  }

  .public-stand-heatmap-row:last-child span {
    border-bottom: 0;
  }

  .public-stand-heatmap-row span:not(:first-child) {
    text-align: center;
  }

  .public-stand-heatmap-row span.is-ready {
    background: #e5f6ea;
    color: #169c4a;
  }

  .public-stand-heatmap-row span.is-uncertain {
    background: #fff3d6;
    color: #d98900;
  }

  .public-stand-heatmap-row span.is-weak {
    background: #ffe6e6;
    color: #e73333;
  }

  .public-stand-heatmap-note {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 13px 16px;
    border: 1px solid rgba(167, 203, 223, 0.56);
    border-radius: 2px;
    color: #123b73;
    font-weight: 700;
  }

  .public-stand-heatmap-note span {
    width: 20px;
    height: 20px;
    border: 3px solid #005ecb;
    border-radius: 8px;
  }

  .public-stand-progress-section {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(24px, 3vw, 36px);
    padding: clamp(24px, 3vw, 34px);
  }

  .public-stand-progress-card,
  .public-stand-decision-card {
    box-shadow: none;
  }

  .public-stand-progress-top > span:last-child {
    padding: 9px 13px;
    border: 1px solid rgba(167, 203, 223, 0.56);
    border-radius: 2px;
    color: #354b63;
    font-weight: 720;
  }

  .public-stand-progress-card h2 {
    margin: 0;
    color: #082033;
    font-size: 1.08rem;
  }

  .public-stand-chart {
    position: relative;
    min-height: 220px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.5);
    background:
      linear-gradient(rgba(167, 203, 223, 0.28) 1px, transparent 1px) 0 20px / 100% 48px;
  }

  .public-stand-chart svg {
    width: 100%;
    height: 220px;
  }

  .public-stand-chart strong {
    position: absolute;
    right: 54px;
    top: 70px;
    padding: 12px 14px;
    border: 1px solid rgba(167, 203, 223, 0.55);
    border-radius: 3px;
    background: #ffffff;
    color: #082033;
    font-size: 1.8rem;
    box-shadow: 0 12px 28px rgba(8, 32, 51, 0.12);
  }

  .public-stand-progress-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }

  .public-stand-progress-metrics p {
    display: grid;
    gap: 6px;
    justify-items: center;
    margin: 0;
    padding: 18px 12px;
    border: 1px solid rgba(167, 203, 223, 0.46);
    border-radius: 3px;
    background: #ffffff;
    color: #354b63;
  }

  .public-stand-progress-metrics strong {
    color: #123b73;
    font-size: 1.7rem;
  }

  .public-stand-progress-metrics p:first-child strong {
    color: #169c4a;
  }

  .public-stand-decision-card {
    align-content: center;
    gap: 18px;
  }

  .public-stand-decision-list {
    display: grid;
    gap: 18px;
    margin-top: 8px;
  }

  .public-stand-decision-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 14px;
    align-items: center;
  }

  .public-stand-decision-icon {
    width: 54px;
    height: 54px;
  }

  .public-stand-decision-item p {
    display: grid;
    gap: 4px;
    margin: 0;
    color: #354b63;
    line-height: 1.4;
  }

  .public-stand-decision-item strong {
    color: #082033;
  }

  .public-stand-decision-icon-target::before,
  .public-stand-decision-icon-check::before,
  .public-stand-decision-icon-star::before {
    content: "";
    width: 28px;
    height: 28px;
  }

  .public-stand-decision-icon-target::before {
    border: 3px solid currentColor;
    border-radius: 8px;
    box-shadow: inset 0 0 0 7px #edf5ff, inset 0 0 0 10px currentColor;
  }

  .public-stand-decision-icon-check::before {
    width: 20px;
    height: 11px;
    border-left: 4px solid currentColor;
    border-bottom: 4px solid currentColor;
    transform: rotate(-45deg);
  }

  .public-stand-decision-icon-star::before {
    background: currentColor;
    clip-path: polygon(50% 0, 61% 34%, 97% 34%, 68% 55%, 79% 91%, 50% 69%, 21% 91%, 32% 55%, 3% 34%, 39% 34%);
  }

  .public-stand-decision-icon.public-stand-decision-icon-has-image {
    width: 92px;
    height: 92px;
    background: transparent;
    color: inherit;
  }

  .public-stand-decision-icon.public-stand-decision-icon-has-image::before,
  .public-stand-decision-icon.public-stand-decision-icon-has-image::after {
    content: none;
  }

  .public-stand-decision-icon.public-stand-decision-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-stand-final-cta {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.62fr);
    gap: clamp(30px, 5vw, 76px);
    align-items: center;
    overflow: hidden;
    padding: clamp(34px, 5vw, 58px) clamp(30px, 6vw, 78px);
    border: 1px solid rgba(167, 203, 223, 0.56);
    border-radius: 6px;
    background:
      radial-gradient(circle at 0% 88%, rgba(37, 112, 214, 0.07), transparent 24%),
      radial-gradient(circle at 100% 52%, rgba(37, 112, 214, 0.08), transparent 34%),
      #ffffff;
    box-shadow: 0 10px 26px rgba(8, 32, 51, 0.04);
  }

  .public-stand-final-cta::before {
    content: "";
    position: absolute;
    left: -88px;
    bottom: -96px;
    width: 240px;
    height: 240px;
    border-radius: 8px;
    background:
      repeating-radial-gradient(circle, transparent 0 11px, rgba(37, 112, 214, 0.08) 12px 14px);
    opacity: 0.6;
  }

  .public-stand-final-cta::after {
    content: "";
    position: absolute;
    right: 28px;
    top: 34px;
    width: 124px;
    height: 130px;
    background:
      radial-gradient(circle, rgba(37, 112, 214, 0.14) 0 2px, transparent 3px) 0 0 / 22px 22px;
    opacity: 0.64;
  }

  .public-stand-final-copy,
  .public-stand-final-actions {
    position: relative;
    z-index: 1;
  }

  .public-stand-final-copy {
    display: grid;
    gap: 22px;
    text-align: left;
  }

  .public-stand-final-copy h2 {
    max-width: 15ch;
    margin: 0;
    color: #082033;
    font-size: clamp(2.1rem, 4.6vw, 4rem);
    line-height: 1.04;
    letter-spacing: -0.055em;
    font-weight: 540;
  }

  .public-stand-final-copy p {
    margin: 0;
    color: #4e6d84;
    font-size: clamp(1.08rem, 2vw, 1.36rem);
    font-weight: 760;
    letter-spacing: -0.02em;
  }

  .public-stand-final-rule {
    display: block;
    width: 112px;
    height: 9px;
    border-radius: 8px;
    background:
      radial-gradient(circle at right center, #1d7ff2 0 4px, transparent 5px),
      linear-gradient(90deg, #006bf2 0 78%, #bce3ff 78% 100%);
  }

  .public-stand-final-actions {
    display: grid;
    gap: 18px;
    padding: clamp(22px, 3vw, 30px);
    border: 1px solid rgba(167, 203, 223, 0.58);
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 20px 48px rgba(37, 112, 214, 0.08);
  }

  .public-stand-final-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 70px;
    padding: 18px 24px;
    border-radius: 3px;
    text-decoration: none;
    color: #082033;
    font-size: clamp(1.08rem, 1.8vw, 1.34rem);
    line-height: 1.1;
    font-weight: 850;
    text-align: center;
  }

  .public-stand-final-button-primary {
    justify-content: space-between;
    gap: 18px;
    color: #ffffff;
    background: linear-gradient(180deg, #0c7cff, #005ecb);
    box-shadow:
      0 16px 30px rgba(0, 94, 203, 0.24),
      inset 0 1px 0 rgba(255, 255, 255, 0.22);
  }

  .public-stand-final-button-primary > span:first-child {
    min-width: 0;
    flex: 1;
    text-align: center;
  }

  .public-stand-final-button-primary > span:last-child {
    position: relative;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
  }

  .public-stand-final-button-primary > span:last-child::before,
  .public-stand-final-button-primary > span:last-child::after {
    content: "";
    position: absolute;
    right: 3px;
    top: 50%;
    background: currentColor;
  }

  .public-stand-final-button-primary > span:last-child::before {
    width: 24px;
    height: 4px;
    border-radius: 8px;
    transform: translateY(-50%);
  }

  .public-stand-final-button-primary > span:last-child::after {
    width: 13px;
    height: 13px;
    border-top: 4px solid currentColor;
    border-right: 4px solid currentColor;
    background: transparent;
    transform: translateY(-50%) rotate(45deg);
  }

  .public-stand-final-button-secondary {
    border: 1px solid rgba(0, 94, 203, 0.68);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  }

  .public-stand-final-reassurance {
    display: grid;
    gap: 12px;
    padding-top: 8px;
    color: #4e6d84;
    font-size: 1rem;
    font-weight: 760;
  }

  .public-stand-final-reassurance span {
    display: inline-flex;
    align-items: center;
    gap: 12px;
  }

  .public-stand-final-reassurance span::before {
    content: "";
    width: 19px;
    height: 19px;
    border-radius: 8px;
    background:
      linear-gradient(135deg, transparent 41%, #ffffff 42% 58%, transparent 59%) 7px 4px / 8px 12px no-repeat,
      #22a652;
    box-shadow: 0 2px 8px rgba(34, 166, 82, 0.18);
    transform: rotate(5deg);
  }

  .public-how-hero,
  .public-how-section,
  .public-how-final-cta {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(167, 203, 223, 0.58);
    background: #ffffff;
    box-shadow: 0 20px 52px rgba(8, 32, 51, 0.06);
  }

  .public-how-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1fr);
    gap: clamp(34px, 6vw, 86px);
    align-items: center;
    padding: clamp(38px, 6vw, 74px);
    border-radius: 0;
    background:
      radial-gradient(circle at 100% 42%, rgba(37, 114, 216, 0.11), transparent 36%),
      linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  }

  .public-how-hero-copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 20px;
    max-width: 620px;
  }

  .public-how-chip {
    width: fit-content;
    min-height: 0;
    padding: 0;
    background: transparent;
    color: #005ecb;
    letter-spacing: 0.1em;
  }

  .public-how-hero-copy h1,
  .public-how-section-head h2,
  .public-how-final-copy h2 {
    margin: 0;
    color: #061b47;
    font-size: clamp(2.16rem, 4.8vw, 4.16rem);
    line-height: 1.02;
    letter-spacing: -0.055em;
    font-weight: 800;
  }

  .public-how-hero-copy h1 {
    max-width: 12ch;
  }

  .public-how-hero-copy p {
    max-width: 39rem;
    margin: 0;
    color: #1e335f;
    font-size: clamp(1.04rem, 1.5vw, 1.22rem);
    line-height: 1.58;
  }

  .public-how-reassurance,
  .public-how-final-copy small {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #354b63;
    font-size: 1rem;
    font-weight: 650;
  }

  .public-how-reassurance p {
    margin: 0;
  }

  .public-how-reassurance span,
  .public-how-final-copy small::before {
    content: "";
    width: 18px;
    height: 18px;
    border: 2px solid #256ed8;
    border-radius: 1px;
    background:
      linear-gradient(#256ed8, #256ed8) 50% 8px / 8px 2px no-repeat,
      linear-gradient(#256ed8, #256ed8) 50% 11px / 8px 2px no-repeat;
  }

  .public-how-dashboard {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 18px;
    padding: clamp(18px, 3vw, 28px);
    border: 1px solid rgba(167, 203, 223, 0.58);
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 26px 62px rgba(8, 32, 51, 0.12);
  }

  .public-how-summary {
    align-items: center;
  }

  .public-how-priority-list {
    display: grid;
    gap: 10px;
  }

  .public-how-priority-list h2 {
    margin: 0 0 4px;
    color: #061b47;
    font-size: 1.02rem;
    font-weight: 820;
  }

  .public-how-priority-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 14px;
    align-items: center;
    padding: 15px 18px;
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 3px;
    background: #ffffff;
    color: #061b47;
  }

  .public-how-priority-row.is-weak {
    border-color: rgba(231, 51, 51, 0.24);
    background: #fff7f7;
  }

  .public-how-priority-row strong {
    display: block;
    margin-bottom: 4px;
    font-size: 0.98rem;
    font-weight: 820;
  }

  .public-how-priority-row p {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
  }

  .public-how-priority-row p span,
  .public-how-priority-row small {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 5px 9px;
    border-radius: 8px;
    background: #edf5ff;
    color: #256ed8;
    font-size: 0.78rem;
    font-weight: 780;
  }

  .public-how-priority-row.is-weak p span {
    background: #ffe1e1;
    color: #dd2828;
  }

  .public-how-priority-row.is-uncertain p span {
    background: #fff1cc;
    color: #c57900;
  }

  .public-how-priority-row.is-ready p span {
    background: #e7f8ed;
    color: #169c4a;
  }

  .public-how-priority-row small {
    border-radius: 2px;
    background: #eef5ff;
    color: #256ed8;
    white-space: nowrap;
  }

  .public-how-priority-row > span {
    color: #58708d;
    font-size: 2rem;
    line-height: 1;
  }

  .public-how-section {
    display: grid;
    gap: clamp(30px, 4vw, 44px);
    padding: clamp(36px, 5vw, 64px);
    border-radius: 0;
  }

  .public-how-section::before,
  .public-how-hero::before {
    content: "";
    position: absolute;
    right: -8%;
    top: 8%;
    width: min(50vw, 650px);
    height: 86%;
    border-radius: 12%;
    background: rgba(37, 114, 216, 0.07);
    pointer-events: none;
  }

  .public-how-section-head {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 10px;
    justify-items: center;
    text-align: center;
  }

  .public-how-section-head h2 {
    max-width: 20ch;
    font-size: clamp(1.6rem, 3.2vw, 2.8rem);
  }

  .public-how-steps-grid,
  .public-how-updates-grid,
  .public-how-focus-grid {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 24px;
  }

  .public-how-steps-grid,
  .public-how-updates-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .public-how-step-card,
  .public-how-update-card,
  .public-how-focus-card {
    position: relative;
    display: grid;
    gap: 14px;
    color: #061b47;
  }

  .public-how-step-card {
    padding: 8px 14px 0;
    border-right: 1px solid rgba(167, 203, 223, 0.42);
  }

  .public-how-step-card:last-child {
    border-right: 0;
  }

  .public-how-step-icon,
  .public-how-update-icon,
  .public-how-focus-icon {
    position: relative;
    display: inline-grid;
    width: 88px;
    height: 88px;
    place-items: center;
    justify-self: center;
    border-radius: 3px;
    background: #edf5ff;
    color: #256ed8;
  }

  .public-how-step-card:nth-child(2) .public-how-step-icon,
  .public-how-update-card:nth-child(1) .public-how-update-icon,
  .public-how-focus-card:nth-child(1) .public-how-focus-icon {
    background: #eaf8ee;
    color: #169c4a;
  }

  .public-how-step-card:nth-child(3) .public-how-step-icon,
  .public-how-update-card:nth-child(2) .public-how-update-icon,
  .public-how-focus-card:nth-child(2) .public-how-focus-icon {
    background: #f2eaff;
    color: #6b39d6;
  }

  .public-how-step-card:nth-child(4) .public-how-step-icon,
  .public-how-update-card:nth-child(4) .public-how-update-icon {
    background: #fff4dd;
    color: #f0a11f;
  }

  .public-how-step-icon.public-how-step-icon-has-image {
    width: 108px;
    height: 108px;
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-how-step-icon.public-how-step-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-how-focus-icon.public-how-focus-icon-has-image {
    width: 84px;
    height: 84px;
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-how-focus-icon.public-how-focus-icon-has-image::before,
  .public-how-focus-icon.public-how-focus-icon-has-image::after {
    content: none;
  }

  .public-how-focus-icon.public-how-focus-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-how-step-arrow {
    position: absolute;
    top: 42px;
    right: -28px;
    width: 76px;
    height: 2px;
    background: #8fa7c3;
  }

  .public-how-step-arrow::after {
    content: "";
    position: absolute;
    right: 0;
    top: -5px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #8fa7c3;
    border-right: 2px solid #8fa7c3;
    transform: rotate(45deg);
  }

  .public-how-step-card h3 {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    align-items: start;
    margin: 0;
    font-size: 1.16rem;
    line-height: 1.18;
    font-weight: 820;
  }

  .public-how-step-card h3 span {
    display: inline-grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 8px;
    background: #256ed8;
    color: #ffffff;
    font-size: 0.92rem;
  }

  .public-how-step-card:nth-child(2) h3 span {
    background: #169c4a;
  }

  .public-how-step-card:nth-child(3) h3 span {
    background: #6b39d6;
  }

  .public-how-step-card:nth-child(4) h3 span {
    background: #f0a11f;
  }

  .public-how-step-card p,
  .public-how-update-card p,
  .public-how-focus-card p {
    margin: 0;
    color: #354b63;
    font-size: 0.98rem;
    line-height: 1.5;
  }

  .public-how-update-card {
    justify-items: center;
    padding: 0 clamp(18px, 3vw, 34px);
    border-right: 1px solid rgba(167, 203, 223, 0.42);
    text-align: center;
  }

  .public-how-update-card:last-child {
    border-right: 0;
  }

  .public-how-update-icon,
  .public-how-focus-icon {
    width: 72px;
    height: 72px;
    border-radius: 4px;
  }

  .public-how-update-icon.public-how-update-icon-has-image {
    width: 96px;
    height: 96px;
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-how-update-icon.public-how-update-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-how-update-card h3,
  .public-how-focus-card h3 {
    margin: 0;
    color: #061b47;
    font-size: 1.08rem;
    font-weight: 820;
  }

  .public-how-focus-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .public-how-focus-card {
    grid-template-columns: auto 1fr;
    align-items: center;
    padding: clamp(18px, 2.6vw, 28px);
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 14px 34px rgba(8, 32, 51, 0.04);
  }

  .public-how-final-cta {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: clamp(28px, 5vw, 66px);
    align-items: center;
    min-height: 250px;
    padding: clamp(28px, 4.5vw, 48px);
    border-radius: 3px;
    background:
      radial-gradient(circle at 8% 48%, rgba(14, 127, 214, 0.32), transparent 18%),
      radial-gradient(circle at 88% 50%, rgba(0, 113, 189, 0.42), transparent 34%),
      linear-gradient(135deg, #052448 0%, #083663 52%, #07568c 100%);
    color: #ffffff;
  }

  .public-how-final-target {
    position: relative;
    z-index: 1;
    display: inline-grid;
    width: clamp(120px, 15vw, 180px);
    height: clamp(120px, 15vw, 180px);
    place-items: center;
    border: 14px solid rgba(0, 136, 217, 0.36);
    border-radius: 8px;
    background:
      radial-gradient(circle, #052448 0 12px, transparent 13px),
      radial-gradient(circle, transparent 0 26px, #0788dc 27px 32px, transparent 33px 48px, #0788dc 49px 55px, transparent 56px),
      rgba(0, 42, 82, 0.8);
  }

  .public-how-final-target::before {
    content: none;
  }

  .public-how-final-target::after {
    content: none;
  }

  .public-how-final-target svg {
    position: relative;
    z-index: 1;
    width: 112%;
    height: 112%;
    overflow: visible;
  }

  .public-how-final-target-has-image {
    width: clamp(136px, 16vw, 210px);
    height: clamp(136px, 16vw, 210px);
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .public-how-final-target-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-how-final-target-ring {
    fill: none;
    stroke: rgba(84, 165, 255, 0.9);
    stroke-width: 10;
  }

  .public-how-final-target-ring-mid {
    stroke: rgba(84, 165, 255, 0.78);
    stroke-width: 9;
  }

  .public-how-final-target-ring-inner {
    stroke: rgba(84, 165, 255, 0.62);
    stroke-width: 8;
  }

  .public-how-final-target-arrow,
  .public-how-final-target-head {
    fill: none;
    stroke: #ffffff;
    stroke-width: 16;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 6px 10px rgba(3, 20, 44, 0.34));
  }

  .public-how-final-target-dot {
    fill: #ffffff;
    filter: drop-shadow(0 4px 10px rgba(3, 20, 44, 0.35));
  }

  .public-how-final-copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 12px;
  }

  .public-how-final-copy h2 {
    max-width: 24ch;
    color: #ffffff;
    font-size: clamp(1.6rem, 3.36vw, 2.96rem);
  }

  .public-how-final-copy p {
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: clamp(1.02rem, 1.6vw, 1.28rem);
    line-height: 1.45;
  }

  .public-how-final-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 8px;
  }

  .public-how-final-button {
    min-width: min(100%, 300px);
    justify-content: center;
  }

  .public-how-final-actions .button-primary {
    background: linear-gradient(135deg, #0788dc 0%, #0470bd 100%);
  }

  .public-how-final-actions .button-secondary {
    border-color: rgba(255, 255, 255, 0.66);
    background: rgba(255, 255, 255, 0.02);
    color: #ffffff;
  }

  .public-how-final-copy small {
    color: rgba(255, 255, 255, 0.82);
  }

  .public-how-final-copy small::before {
    flex: 0 0 auto;
    border-color: rgba(255, 255, 255, 0.78);
    background:
      linear-gradient(rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0.88)) 50% 8px / 8px 2px no-repeat,
      linear-gradient(rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0.88)) 50% 11px / 8px 2px no-repeat;
  }

  .public-how-icon-upload::before,
  .public-how-icon-element::before,
  .public-how-icon-rank::before,
  .public-how-icon-move::before,
  .public-how-update-icon-check::before,
  .public-how-update-icon-rerank::before,
  .public-how-update-icon-urgency::before,
  .public-how-update-icon-progress::before,
  .public-how-focus-icon-target::before,
  .public-how-focus-icon-person::before,
  .public-how-focus-icon-lock::before {
    content: "";
    width: 42px;
    height: 42px;
  }

  .public-how-icon-upload::before {
    border: 4px solid currentColor;
    border-top: 0;
    border-radius: 0 0 4px 4px;
    background:
      linear-gradient(currentColor, currentColor) 50% 2px / 4px 30px no-repeat,
      linear-gradient(135deg, transparent 41%, currentColor 42% 52%, transparent 53%) 50% 0 / 28px 24px no-repeat;
  }

  .public-how-icon-element::before {
    border: 4px solid currentColor;
    border-radius: 1px;
    background:
      linear-gradient(currentColor, currentColor) 10px 12px / 20px 3px no-repeat,
      linear-gradient(currentColor, currentColor) 10px 22px / 18px 3px no-repeat;
  }

  .public-how-icon-rank::before,
  .public-how-update-icon-progress::before {
    border-bottom: 4px solid currentColor;
    border-left: 4px solid currentColor;
    background:
      linear-gradient(currentColor, currentColor) 10px 23px / 6px 15px no-repeat,
      linear-gradient(currentColor, currentColor) 22px 12px / 6px 26px no-repeat,
      linear-gradient(currentColor, currentColor) 34px 2px / 6px 36px no-repeat;
  }

  .public-how-icon-move::before,
  .public-how-focus-icon-target::before {
    border: 4px solid currentColor;
    border-radius: 8px;
    box-shadow: inset 0 0 0 9px currentColor, inset 0 0 0 15px #fff4dd;
  }

  .public-how-step-icon::before {
    content: none;
  }

  .public-how-step-icon.public-how-step-icon-has-image svg {
    display: none;
  }

  .public-how-step-icon svg {
    width: 48px;
    height: 48px;
    fill: none;
    stroke: currentColor;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .public-how-update-icon-check::before {
    width: 28px;
    height: 18px;
    border-left: 5px solid currentColor;
    border-bottom: 5px solid currentColor;
    transform: rotate(-45deg);
  }

  .public-how-update-icon-rerank::before {
    border: 4px solid currentColor;
    border-left-color: transparent;
    border-radius: 8px;
  }

  .public-how-update-icon-urgency::before {
    background: currentColor;
    clip-path: polygon(45% 0, 70% 26%, 63% 50%, 88% 36%, 72% 100%, 18% 100%, 30% 58%, 12% 66%);
  }

  .public-how-update-icon::before {
    content: none;
  }

  .public-how-update-icon svg {
    width: 48px;
    height: 48px;
    fill: none;
    stroke: currentColor;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .public-how-focus-icon-person::before {
    border-radius: 8px 8px 4px 4px;
    background:
      radial-gradient(circle at 50% 24%, currentColor 0 10px, transparent 11px),
      radial-gradient(ellipse at 50% 90%, currentColor 0 23px, transparent 24px);
  }

  .public-how-focus-icon-lock::before {
    border: 4px solid currentColor;
    border-radius: 2px;
    background:
      radial-gradient(circle at 50% 58%, currentColor 0 4px, transparent 5px);
  }

  .public-how-focus-icon-lock::after {
    content: "";
    position: absolute;
    top: 16px;
    width: 28px;
    height: 22px;
    border: 4px solid currentColor;
    border-bottom: 0;
    border-radius: 8px 8px 0 0;
  }

  .public-understand-hero,
  .public-understand-section,
  .public-understand-final-cta {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(167, 203, 223, 0.58);
    background: #ffffff;
    box-shadow: 0 20px 52px rgba(8, 32, 51, 0.06);
  }

  .public-understand-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(28px, 4vw, 58px);
    align-items: stretch;
    padding: clamp(38px, 6vw, 74px);
    border-radius: 0;
    background:
      radial-gradient(circle at 0% 18%, rgba(0, 115, 206, 0.1), transparent 28%),
      radial-gradient(circle at 100% 50%, rgba(37, 114, 216, 0.08), transparent 34%),
      linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  }

  .public-understand-hero-copy {
    display: grid;
    align-content: start;
    gap: 18px;
    max-width: 670px;
    padding-top: clamp(8px, 1.5vw, 22px);
  }

  .public-understand-chip {
    width: fit-content;
    min-height: 30px;
    background: #e8f4ff;
    color: #005ecb;
    letter-spacing: 0.1em;
  }

  .public-understand-hero-copy h1,
  .public-understand-section-head h2,
  .public-understand-final-copy h2 {
    margin: 0;
    color: #070829;
    font-size: clamp(2.4rem, 4.8vw, 4.64rem);
    line-height: 0.98;
    letter-spacing: -0.055em;
    font-weight: 830;
  }

  .public-understand-hero-copy h1 {
    max-width: 10ch;
  }

  .public-understand-hero-copy h1 span {
    position: relative;
    color: #006fd6;
  }

  .public-understand-hero-copy h1 span::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6px;
    height: 5px;
    border-radius: 8px;
    background: #2d91e8;
    transform: rotate(-3deg);
  }

  .public-understand-hero-copy > strong {
    color: #070829;
    font-size: 1.42rem;
    font-weight: 820;
  }

  .public-understand-hero-copy p {
    max-width: 38rem;
    margin: 0;
    color: #1e335f;
    font-size: clamp(1.04rem, 1.5vw, 1.22rem);
    line-height: 1.58;
  }

  .public-understand-hero-actions,
  .public-understand-final-actions {
    display: grid;
    gap: 14px;
    max-width: 430px;
    margin-top: 10px;
  }

  .public-understand-primary-action,
  .public-understand-secondary-action,
  .public-understand-final-primary,
  .public-understand-final-secondary {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 4px 14px;
    align-items: center;
    padding: 16px 22px;
    border-radius: 2px;
    text-decoration: none;
    font-weight: 760;
  }

  .public-understand-primary-action,
  .public-understand-final-primary {
    background: linear-gradient(135deg, #0b7edc 0%, #005ecb 100%);
    color: #ffffff;
    box-shadow: 0 18px 36px rgba(0, 94, 203, 0.18);
  }

  .public-understand-secondary-action,
  .public-understand-final-secondary {
    border: 1px solid #0b7edc;
    background: #ffffff;
    color: #005ecb;
  }

  .public-understand-primary-action > span,
  .public-understand-secondary-action > span,
  .public-understand-final-primary > span,
  .public-understand-final-secondary > span {
    grid-row: span 2;
    display: inline-grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border: 2px solid currentColor;
    border-radius: 8px;
  }

  .public-understand-primary-action > span::before,
  .public-understand-final-primary > span::before {
    content: "";
    width: 13px;
    height: 8px;
    border-left: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(-45deg);
  }

  .public-understand-secondary-action > span::before,
  .public-understand-final-secondary > span::before {
    content: "";
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 11px solid currentColor;
    transform: translateX(1px);
  }

  .public-understand-primary-action strong,
  .public-understand-secondary-action strong,
  .public-understand-final-primary strong,
  .public-understand-final-secondary strong {
    font-size: 1.16rem;
  }

  .public-understand-primary-action small,
  .public-understand-secondary-action small,
  .public-understand-final-primary small,
  .public-understand-final-secondary small {
    opacity: 0.88;
    font-size: 0.9rem;
  }

  .public-understand-reassurance,
  .public-understand-final-copy > small {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #354b63;
    font-size: 1rem;
    font-weight: 650;
  }

  .public-understand-reassurance p {
    margin: 0;
  }

  .public-understand-reassurance span,
  .public-understand-final-copy > small::before {
    content: "";
    width: 18px;
    height: 18px;
    border: 2px solid #005ecb;
    border-radius: 1px;
    box-shadow: inset 0 0 0 5px #ffffff;
    background: #005ecb;
  }

  .public-understand-dashboard {
    container-type: inline-size;
    display: grid;
    align-self: stretch;
    justify-self: stretch;
    gap: 18px;
    min-width: 0;
    max-width: 760px;
    padding: clamp(18px, 3vw, 28px);
    border: 1px solid rgba(167, 203, 223, 0.58);
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 26px 62px rgba(8, 32, 51, 0.12);
  }

  .public-understand-summary {
    display: grid;
    grid-template-columns: minmax(104px, 0.8fr) minmax(92px, 118px) minmax(172px, 1.2fr);
    align-items: center;
  }

  .public-understand-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid rgba(167, 203, 223, 0.44);
    border-radius: 3px;
    background: #ffffff;
  }

  .public-understand-stat {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: clamp(12px, 1.8vw, 18px);
    border-right: 1px solid rgba(167, 203, 223, 0.36);
  }

  .public-understand-stat:last-child {
    border-right: 0;
  }

  .public-understand-stat-icon {
    display: inline-grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 8px;
    background: #e8f4ff;
    color: #005ecb;
  }

  .public-understand-stat-icon::before {
    content: none;
  }

  .public-understand-stat-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: currentColor;
    stroke-width: 3.1;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .public-understand-stat-icon-has-image {
    width: clamp(54px, 6vw, 74px);
    height: clamp(54px, 6vw, 74px);
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-understand-stat-icon.public-understand-stat-icon-has-image::before {
    content: none;
    display: none;
  }

  .public-understand-stat-icon-has-image svg {
    display: none;
  }

  .public-understand-stat-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-understand-stat:nth-child(2) .public-understand-stat-icon,
  .public-understand-stat:nth-child(3) .public-understand-stat-icon {
    background: #eaf8ee;
    color: #169c4a;
  }

  .public-understand-stat:nth-child(4) .public-understand-stat-icon {
    background: #fff0e9;
    color: #ef5634;
  }

  .public-understand-stat:nth-child(2) .public-understand-stat-icon-has-image,
  .public-understand-stat:nth-child(3) .public-understand-stat-icon-has-image,
  .public-understand-stat:nth-child(4) .public-understand-stat-icon-has-image {
    background: transparent;
    color: inherit;
  }

  .public-understand-stat p {
    display: grid;
    gap: 2px;
    min-width: 0;
    margin: 0;
    color: #506985;
    font-size: clamp(0.74rem, 1.1vw, 0.82rem);
    font-weight: 680;
  }

  .public-understand-stat strong {
    color: #070829;
    font-size: clamp(1.04rem, 1.8vw, 1.22rem);
    font-weight: 840;
  }

  .public-understand-continue {
    display: grid;
    gap: 10px;
  }

  .public-understand-continue h2 {
    margin: 0;
    color: #070829;
    font-size: 1rem;
  }

  .public-understand-continue article {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(150px, auto);
    gap: 18px;
    align-items: center;
    padding: 18px;
    border: 1px solid rgba(167, 203, 223, 0.44);
    border-radius: 3px;
    background: linear-gradient(135deg, #ffffff, #f4f9ff);
  }

  .public-understand-continue article strong {
    color: #070829;
    font-size: 1.06rem;
  }

  .public-understand-continue article span {
    display: inline-flex;
    width: fit-content;
    margin-left: 12px;
    padding: 4px 9px;
    border-radius: 8px;
    background: #ffe4e4;
    color: #c82626;
    font-size: 0.78rem;
    font-weight: 780;
  }

  .public-understand-continue article p {
    margin: 12px 0 8px;
    color: #1e335f;
    font-size: 0.92rem;
    font-weight: 680;
  }

  .public-understand-continue article i {
    display: block;
    width: min(100%, 240px);
    height: 6px;
    border-radius: 8px;
    background: linear-gradient(90deg, #005ecb 0 38%, #e1e7f1 38%);
  }

  .public-understand-continue article a {
    display: grid;
    gap: 2px;
    min-width: 160px;
    padding: 16px 22px;
    border-radius: 2px;
    background: linear-gradient(135deg, #0b7edc 0%, #005ecb 100%);
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-weight: 820;
  }

  .public-understand-continue article a small {
    font-size: 0.78rem;
    font-weight: 650;
  }

  .public-understand-tags {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }

  .public-understand-tags span {
    padding: 12px;
    border-radius: 8px;
    background: #e8f4ff;
    color: #005ecb;
    text-align: center;
    font-weight: 820;
  }

  @container (max-width: 620px) {
    .public-understand-summary {
      grid-template-columns: minmax(0, 1fr) minmax(92px, 108px);
    }

    .public-understand-summary .public-stand-legend {
      grid-column: 1 / -1;
      width: 100%;
      min-width: 0;
    }

    .public-understand-stat-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-understand-stat:nth-child(2n) {
      border-right: 0;
    }

    .public-understand-stat:nth-child(n + 3) {
      border-top: 1px solid rgba(167, 203, 223, 0.36);
    }
  }

  @container (max-width: 520px) {
    .public-stand-dashboard-top {
      align-items: flex-start;
      flex-direction: column;
    }

    .public-stand-dashboard-top p {
      flex-wrap: wrap;
    }

    .public-understand-summary,
    .public-understand-continue article,
    .public-understand-tags {
      grid-template-columns: 1fr;
    }

    .public-understand-summary {
      justify-items: center;
      text-align: center;
    }

    .public-understand-summary .public-stand-legend {
      text-align: left;
    }

    .public-understand-stat {
      grid-template-columns: minmax(0, 1fr);
      justify-items: center;
      text-align: center;
    }

    .public-understand-continue article span {
      margin: 8px 0 0;
    }
  }

  .public-understand-section {
    display: grid;
    gap: clamp(30px, 4vw, 44px);
    padding: clamp(36px, 5vw, 64px);
    border-radius: 0;
  }

  .public-understand-section-head {
    display: grid;
    gap: 10px;
    justify-items: center;
    text-align: center;
  }

  .public-understand-section-head h2 {
    max-width: 26ch;
    font-size: clamp(1.6rem, 3.2vw, 2.8rem);
  }

  .public-understand-steps-grid,
  .public-understand-build-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
  }

  .public-understand-step-card,
  .public-understand-build-card {
    position: relative;
    display: grid;
    gap: 14px;
    padding: 8px 14px 0;
    border-right: 1px solid rgba(167, 203, 223, 0.42);
    color: #070829;
  }

  .public-understand-step-card:last-child,
  .public-understand-build-card:last-child {
    border-right: 0;
  }

  .public-understand-step-icon,
  .public-understand-build-icon,
  .public-understand-portal-icon {
    position: relative;
    display: inline-grid;
    width: 88px;
    height: 88px;
    place-items: center;
    justify-self: center;
    border-radius: 4px;
    background: #e8f4ff;
    color: #005ecb;
  }

  .public-understand-step-card:nth-child(2) .public-understand-step-icon,
  .public-understand-build-card:nth-child(2) .public-understand-build-icon {
    background: #eaf8ee;
    color: #169c4a;
  }

  .public-understand-step-card:nth-child(4) .public-understand-step-icon,
  .public-understand-build-card:nth-child(4) .public-understand-build-icon {
    background: #fff4dd;
    color: #f0a11f;
  }

  .public-understand-step-icon-has-image,
  .public-understand-build-icon-has-image {
    width: 116px;
    height: 104px;
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-understand-build-icon-has-image {
    width: 116px;
    height: 110px;
  }

  .public-understand-portal-icon.public-understand-portal-icon-has-image {
    width: clamp(92px, 10vw, 128px);
    height: clamp(96px, 10.4vw, 134px);
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-understand-step-icon.public-understand-step-icon-has-image::before,
  .public-understand-build-icon.public-understand-build-icon-has-image::before,
  .public-understand-portal-icon.public-understand-portal-icon-has-image::before {
    content: none;
  }

  .public-understand-step-icon-has-image img,
  .public-understand-build-icon-has-image img,
  .public-understand-portal-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-understand-step-arrow {
    position: absolute;
    top: 52px;
    right: -28px;
    width: 76px;
    height: 2px;
    background: #8fa7c3;
  }

  .public-understand-step-arrow::after {
    content: "";
    position: absolute;
    right: 0;
    top: -5px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #8fa7c3;
    border-right: 2px solid #8fa7c3;
    transform: rotate(45deg);
  }

  .public-understand-step-card h3 {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    align-items: start;
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.2;
    font-weight: 820;
  }

  .public-understand-step-card h3 span {
    display: inline-grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 8px;
    background: #005ecb;
    color: #ffffff;
    font-size: 0.92rem;
  }

  .public-understand-step-card:nth-child(2) h3 span {
    background: #169c4a;
  }

  .public-understand-step-card:nth-child(4) h3 span {
    background: #256ed8;
  }

  .public-understand-step-card p,
  .public-understand-build-card p,
  .public-understand-portal-item p {
    margin: 0;
    color: #354b63;
    font-size: 0.98rem;
    line-height: 1.5;
  }

  .public-understand-build-card {
    justify-items: center;
    text-align: center;
  }

  .public-understand-build-icon,
  .public-understand-portal-icon {
    width: 76px;
    height: 76px;
    border-radius: 8px;
  }

  .public-understand-build-card h3 {
    margin: 0;
    color: #070829;
    font-size: 1.08rem;
    font-weight: 820;
  }

  .public-understand-portal-grid {
    display: grid;
    grid-template-columns: minmax(420px, 1fr) minmax(280px, 0.72fr);
    gap: clamp(28px, 5vw, 64px);
    align-items: center;
  }

  .public-understand-practice-card {
    display: grid;
    gap: 14px;
    padding: 20px;
    border: 1px solid rgba(167, 203, 223, 0.58);
    border-radius: 3px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(8, 32, 51, 0.08);
  }

  .public-understand-practice-top {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 12px;
    align-items: center;
    color: #070829;
    font-weight: 820;
  }

  .public-understand-practice-top span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #354b63;
    font-size: 0.86rem;
  }

  .public-understand-practice-top span b {
    font: inherit;
    font-weight: 820;
  }

  .public-understand-practice-top i {
    display: inline-block;
    width: 74px;
    height: 4px;
    border-radius: 8px;
    background:
      linear-gradient(
        90deg,
        #169c4a 0 var(--understand-demo-progress, 38%),
        #e1e7f1 var(--understand-demo-progress, 38%)
      );
  }

  .public-understand-practice-top button {
    border: 1px solid rgba(167, 203, 223, 0.7);
    border-radius: 8px;
    background: #ffffff;
    color: #354b63;
    font: inherit;
    font-weight: 760;
    padding: 6px 12px;
  }

  .public-understand-question-card {
    display: grid;
    gap: 8px;
    padding: 20px;
    border: 1px solid rgba(167, 203, 223, 0.48);
    border-radius: 3px;
    background: #ffffff;
  }

  .public-understand-question-card small {
    width: fit-content;
    padding: 5px 9px;
    border-radius: 8px;
    background: #e8f4ff;
    color: #005ecb;
    font-weight: 780;
  }

  .public-understand-question-card h3 {
    max-width: 28rem;
    margin: 10px 0 0;
    color: #070829;
    font-size: 1.18rem;
    line-height: 1.25;
  }

  .public-understand-question-card p {
    margin: 0;
    color: #506985;
    line-height: 1.45;
  }

  .public-understand-feedback {
    min-height: 1.45em;
    color: #005ecb;
    font-weight: 760;
  }

  .public-understand-answer-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 12px;
  }

  .public-understand-answer-row button {
    display: inline-flex;
    justify-content: center;
    min-height: 50px;
    padding: 12px;
    border: 1px solid currentColor;
    border-radius: 2px;
    background: transparent;
    font: inherit;
    font-weight: 820;
    cursor: pointer;
    transition:
      background 160ms ease,
      box-shadow 160ms ease,
      transform 160ms ease;
  }

  .public-understand-answer-row button:hover {
    transform: translateY(-1px);
  }

  .public-understand-answer-row button:disabled {
    cursor: default;
    opacity: 0.62;
    transform: none;
  }

  .public-understand-answer-row button:first-child {
    color: #169c4a;
    background: #f1fbf4;
  }

  .public-understand-answer-row button:last-child {
    color: #c82626;
    background: #fff7f7;
  }

  .public-understand-answer-row button.is-selected:first-child {
    background: #dff7e8;
    box-shadow: inset 0 0 0 2px rgba(22, 156, 74, 0.18);
  }

  .public-understand-answer-row button.is-selected:last-child {
    background: #ffe8e8;
    box-shadow: inset 0 0 0 2px rgba(200, 38, 38, 0.15);
  }

  .public-understand-help-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    color: #354b63;
    font-size: 0.82rem;
    font-weight: 760;
  }

  .public-understand-help-row button {
    min-width: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
  }

  .public-understand-help-row button.is-active {
    color: #005ecb;
  }

  .public-understand-context-panel {
    min-height: 58px;
    margin: 0;
    padding: 14px 16px;
    border: 1px solid rgba(167, 203, 223, 0.42);
    border-radius: 3px;
    background: #f6fbff;
    color: #354b63;
    font-size: 0.9rem;
    line-height: 1.45;
  }

  .public-understand-portal-list {
    display: grid;
    gap: 24px;
  }

  .public-understand-portal-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 16px;
    align-items: center;
  }

  .public-understand-portal-icon {
    width: 58px;
    height: 58px;
  }

  .public-understand-portal-item p {
    display: grid;
    gap: 4px;
  }

  .public-understand-portal-item strong {
    color: #070829;
  }

  .public-understand-stat-icon::before,
  .public-understand-step-icon::before,
  .public-understand-build-icon::before,
  .public-understand-portal-icon::before {
    content: "";
    width: 38px;
    height: 38px;
  }

  .public-understand-stat-icon-check::before,
  .public-understand-build-icon-target::before,
  .public-understand-portal-icon-target::before {
    border: 4px solid currentColor;
    border-radius: 8px;
    box-shadow: inset 0 0 0 9px #ffffff, inset 0 0 0 13px currentColor;
  }

  .public-understand-stat-icon-card::before {
    border: 4px solid currentColor;
    border-radius: 1px;
  }

  .public-understand-stat-icon-hex::before {
    border: 4px solid currentColor;
    clip-path: polygon(50% 0, 92% 24%, 92% 76%, 50% 100%, 8% 76%, 8% 24%);
  }

  .public-understand-stat-icon-flame::before,
  .public-understand-portal-icon-repeat::before {
    background: currentColor;
    clip-path: polygon(45% 0, 70% 26%, 63% 50%, 88% 36%, 72% 100%, 18% 100%, 30% 58%, 12% 66%);
  }

  .public-understand-stat-icon.public-understand-stat-icon-has-image::before,
  .public-understand-stat-icon.public-understand-stat-icon-has-image::after {
    content: none !important;
    display: none;
  }

  .public-understand-stat-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-understand-icon-question::before {
    border: 4px solid currentColor;
    border-radius: 8px;
    background: radial-gradient(circle at 50% 74%, currentColor 0 3px, transparent 4px);
  }

  .public-understand-icon-yesno::before {
    width: 68px;
    height: 36px;
    border-radius: 2px;
    background:
      linear-gradient(#169c4a, #169c4a) 7px 8px / 24px 20px no-repeat,
      linear-gradient(#c82626, #c82626) 38px 8px / 24px 20px no-repeat;
  }

  .public-understand-icon-brain::before,
  .public-understand-build-icon-brain::before {
    border: 4px solid currentColor;
    border-radius: 11% 11% 9% 9%;
    box-shadow: inset 14px 0 0 transparent, inset -14px 0 0 transparent;
  }

  .public-understand-icon-chart::before {
    border-bottom: 4px solid currentColor;
    border-left: 4px solid currentColor;
    background:
      linear-gradient(currentColor, currentColor) 8px 24px / 6px 14px no-repeat,
      linear-gradient(currentColor, currentColor) 21px 12px / 6px 26px no-repeat,
      linear-gradient(currentColor, currentColor) 34px 3px / 6px 35px no-repeat;
  }

  .public-understand-build-icon-shield::before {
    background: currentColor;
    clip-path: polygon(50% 0, 90% 18%, 82% 72%, 50% 100%, 18% 72%, 10% 18%);
  }

  .public-understand-build-icon-rocket::before {
    background: currentColor;
    clip-path: polygon(50% 0, 78% 18%, 66% 66%, 50% 82%, 34% 66%, 22% 18%);
  }

  .public-understand-portal-icon-chat::before {
    border: 4px solid currentColor;
    border-radius: 8px;
  }

  .public-understand-portal-icon-lock::before {
    border: 4px solid currentColor;
    border-radius: 2px;
  }

  .public-exact-hero,
  .public-exact-section,
  .public-exact-final-cta {
    position: relative;
    overflow: hidden;
    border: 1px solid #CFE0EF;
    background: rgba(255, 255, 255, 0.74);
    box-shadow: 0 20px 52px rgba(8, 28, 45, 0.06);
  }

  .public-exact-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.82fr) minmax(440px, 1.08fr);
    gap: clamp(34px, 6vw, 86px);
    align-items: center;
    padding: clamp(38px, 6vw, 74px);
    border-radius: 0;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.82) 0%, rgba(239, 247, 251, 0.68) 100%);
  }

  .public-exact-hero-copy {
    display: grid;
    gap: 20px;
    max-width: 610px;
  }

  .public-exact-chip {
    width: fit-content;
    min-height: 0;
    padding: 0;
    background: transparent;
    color: #1268D6;
    letter-spacing: 0.1em;
  }

  .public-exact-hero-copy h1,
  .public-exact-section-head h2,
  .public-exact-final-cta h2 {
    margin: 0;
    color: #081C2D;
    font-size: clamp(2.4rem, 4.8vw, 4.64rem);
    line-height: 1.02;
    letter-spacing: -0.055em;
    font-weight: 830;
  }

  .public-exact-hero-copy h1 {
    max-width: 12ch;
  }

  .public-exact-hero-copy h1 span {
    color: #1268D6;
  }

  .public-exact-hero-copy p {
    max-width: 39rem;
    margin: 0;
    color: #5D748A;
    font-size: clamp(1.04rem, 1.5vw, 1.22rem);
    line-height: 1.58;
  }

  .public-exact-hero-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    max-width: 540px;
    margin-top: 10px;
  }

  .public-exact-hero-actions .public-understand-primary-action,
  .public-exact-hero-actions .public-understand-secondary-action {
    min-height: 72px;
  }

  .public-exact-hero-actions .public-understand-primary-action > span,
  .public-exact-hero-actions .public-understand-secondary-action > span {
    grid-row: auto;
  }

  .public-exact-dashboard {
    display: grid;
    gap: 18px;
    padding: clamp(18px, 3vw, 28px);
    border: 1px solid #CFE0EF;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.76);
    box-shadow: 0 26px 62px rgba(8, 28, 45, 0.1);
  }

  .public-exact-source-band {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid #CFE0EF;
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.68);
  }

  .public-exact-source-band > strong,
  .public-exact-priority-table h2 {
    color: #1268D6;
    font-size: 0.95rem;
  }

  .public-exact-source-band > div {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
  }

  .public-exact-source-band p {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 3px 10px;
    align-items: center;
    margin: 0;
    color: #081C2D;
    font-size: 0.82rem;
    font-weight: 780;
  }

  .public-exact-source-band p .public-exact-source-icon {
    grid-row: span 2;
    display: inline-grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(207, 224, 239, 0.8);
    border-radius: 4px;
    background: rgba(239, 247, 251, 0.86);
  }

  .public-exact-source-icon svg {
    width: 28px;
    height: 28px;
    fill: none;
    stroke: currentColor;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .public-exact-source-icon.is-professor {
    background: rgba(27, 166, 166, 0.12);
    color: #1BA6A6;
  }

  .public-exact-source-icon.is-notes {
    background: #F0E9FF;
    color: #6D4BEF;
  }

  .public-exact-source-band small {
    color: #5D748A;
    font-weight: 660;
  }

  .public-exact-priority-table {
    display: grid;
    gap: 10px;
  }

  .public-exact-priority-table h2 {
    margin: 0 0 2px;
    color: #081C2D;
  }

  .public-exact-priority-table article {
    display: grid;
    grid-template-columns: auto minmax(150px, 1fr) auto minmax(150px, auto) auto;
    gap: 12px;
    align-items: center;
    padding: 12px 14px;
    border: 1px solid #CFE0EF;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.72);
  }

  .public-exact-priority-table article > span:first-child {
    color: #081C2D;
    font-weight: 840;
  }

  .public-exact-priority-table article strong {
    color: #081C2D;
    font-size: 0.9rem;
  }

  .public-exact-priority-table article em {
    width: fit-content;
    padding: 4px 9px;
    border-radius: 8px;
    font-style: normal;
    font-size: 0.78rem;
    font-weight: 780;
  }

  .public-exact-priority-table .is-weak {
    background: #ffe4e4;
    color: #c82626;
  }

  .public-exact-priority-table .is-uncertain {
    background: #fff1cc;
    color: #c57900;
  }

  .public-exact-priority-table .is-ready {
    background: #e7f8ed;
    color: #169c4a;
  }

  .public-exact-priority-table article small {
    color: #5D748A;
    font-weight: 700;
  }

  .public-exact-priority-table article i {
    color: #5D748A;
    font-size: 1.5rem;
    font-style: normal;
  }

  .public-exact-priority-table > a {
    justify-self: center;
    padding: 9px 40px;
    border: 1px solid #1268D6;
    border-radius: 2px;
    color: #1268D6;
    text-decoration: none;
    font-weight: 820;
  }

  .public-exact-section {
    display: grid;
    gap: clamp(30px, 4vw, 44px);
    padding: clamp(36px, 5vw, 64px);
    border-radius: 0;
  }

  .public-exact-section-head {
    display: grid;
    gap: 10px;
    justify-items: center;
    text-align: center;
  }

  .public-exact-section-head h2 {
    max-width: 28ch;
    font-size: clamp(1.6rem, 3.2vw, 2.8rem);
  }

  .public-exact-matters-grid,
  .public-exact-flow-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
  }

  .public-exact-matter-card,
  .public-exact-flow-card {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 14px;
    padding: 8px 14px 0;
    border-right: 1px solid rgba(167, 203, 223, 0.42);
    color: #070829;
    text-align: center;
  }

  .public-exact-matter-card:last-child,
  .public-exact-flow-card:last-child {
    border-right: 0;
  }

  .public-exact-icon {
    position: relative;
    display: inline-grid;
    width: 76px;
    height: 76px;
    place-items: center;
    border-radius: 8px;
    background: #edf5ff;
    color: #256ed8;
  }

  .public-exact-matter-card .public-exact-icon-has-image {
    width: clamp(96px, 9vw, 132px);
    height: clamp(96px, 9vw, 132px);
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-exact-matter-card .public-exact-icon-has-image::before {
    content: none;
  }

  .public-exact-matter-card .public-exact-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-exact-matter-card:nth-child(2) .public-exact-icon,
  .public-exact-flow-card:nth-child(2) .public-exact-icon {
    background: #edf5ff;
    color: #256ed8;
  }

  .public-exact-matter-card:nth-child(3) .public-exact-icon,
  .public-exact-flow-card:nth-child(3) .public-exact-icon {
    background: #eaf8ee;
    color: #169c4a;
  }

  .public-exact-matter-card h3,
  .public-exact-flow-card h3,
  .public-exact-proof-card h3 {
    margin: 0;
    color: #070829;
    font-size: 1.16rem;
    line-height: 1.18;
    font-weight: 840;
  }

  .public-exact-matter-card p,
  .public-exact-flow-card p,
  .public-exact-proof-card p {
    margin: 0;
    color: #354b63;
    font-size: 0.98rem;
    line-height: 1.5;
  }

  .public-exact-proof-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
  }

  .public-exact-proof-card {
    display: grid;
    grid-template-rows: auto auto auto 1fr;
    gap: 18px;
    min-height: 100%;
    padding: clamp(24px, 3vw, 34px);
    border: 1px solid rgba(167, 203, 223, 0.48);
    border-radius: 5px;
    background:
      radial-gradient(circle at 82% 8%, rgba(13, 104, 255, 0.06), transparent 34%),
      #ffffff;
    box-shadow: 0 18px 42px rgba(7, 34, 76, 0.06);
  }

  .public-exact-proof-card.is-green {
    border-color: rgba(68, 189, 103, 0.28);
    background:
      radial-gradient(circle at 14% 10%, rgba(37, 176, 92, 0.12), transparent 34%),
      #ffffff;
  }

  .public-exact-proof-card.is-purple {
    border-color: rgba(12, 99, 255, 0.24);
    background:
      radial-gradient(circle at 14% 10%, rgba(12, 99, 255, 0.1), transparent 34%),
      #ffffff;
  }

  .public-exact-proof-card .public-exact-icon-has-image {
    width: clamp(92px, 8vw, 120px);
    height: clamp(92px, 8vw, 120px);
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-exact-proof-card .public-exact-icon-has-image::before {
    content: none;
  }

  .public-exact-proof-card .public-exact-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-exact-proof-card h3 {
    max-width: 12ch;
    font-size: clamp(1.35rem, 2.2vw, 1.72rem);
    letter-spacing: 0;
  }

  .public-exact-proof-card p {
    max-width: 30ch;
    font-size: clamp(1rem, 1.2vw, 1.08rem);
  }

  .public-exact-proof-card.is-green h3 {
    color: #169c4a;
  }

  .public-exact-proof-card.is-purple h3 {
    color: #005ecb;
  }

  .public-exact-source-card,
  .public-exact-quote-card,
  .public-exact-private-card {
    display: grid;
    align-self: end;
    gap: 10px;
    min-height: 132px;
    margin-top: 4px;
    padding: 18px;
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 4px;
    background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
    color: #070829;
  }

  .public-exact-source-card strong,
  .public-exact-quote-card strong,
  .public-exact-private-card {
    font-size: 1.04rem;
    line-height: 1.25;
  }

  .public-exact-source-card span,
  .public-exact-quote-card span {
    width: fit-content;
    padding: 7px 12px;
    border-radius: 2px;
    background: #e7f8ed;
    color: #169c4a;
    font-size: 0.86rem;
    font-weight: 780;
  }

  .public-exact-quote-card span {
    background: #edf5ff;
    color: #256ed8;
  }

  .public-exact-private-card {
    align-content: center;
    color: #075fce;
    font-weight: 840;
  }

  .public-exact-private-card span {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .public-exact-private-card span::before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 8px;
    background: currentColor;
  }

  .public-exact-flow-card {
    justify-items: start;
    text-align: left;
  }

  .public-exact-flow-card .public-exact-icon {
    justify-self: center;
    border-radius: 5px;
  }

  .public-exact-flow-card .public-exact-icon-has-image {
    width: clamp(96px, 9vw, 132px);
    height: clamp(96px, 9vw, 132px);
    border-radius: 0;
    background: transparent;
    color: inherit;
  }

  .public-exact-flow-card .public-exact-icon-has-image::before {
    content: none;
  }

  .public-exact-flow-card .public-exact-icon-has-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-exact-flow-card h3 {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
  }

  .public-exact-flow-card h3 span {
    display: inline-grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 8px;
    background: #256ed8;
    color: #ffffff;
    font-size: 0.9rem;
  }

  .public-exact-flow-card:nth-child(3) h3 span {
    background: #169c4a;
  }

  .public-exact-flow-arrow {
    position: absolute;
    top: 42px;
    right: -28px;
    width: 76px;
    height: 2px;
    background: #8fa7c3;
  }

  .public-exact-flow-arrow::after {
    content: "";
    position: absolute;
    right: 0;
    top: -5px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #8fa7c3;
    border-right: 2px solid #8fa7c3;
    transform: rotate(45deg);
  }

  .public-exact-icon::before {
    content: "";
    width: 38px;
    height: 38px;
  }

  .public-exact-icon-file::before,
  .public-exact-icon-source::before,
  .public-exact-icon-book::before {
    border: 4px solid currentColor;
    border-radius: 1px;
    background:
      linear-gradient(currentColor, currentColor) 9px 12px / 18px 3px no-repeat,
      linear-gradient(currentColor, currentColor) 9px 22px / 16px 3px no-repeat;
  }

  .public-exact-icon-folder::before {
    border: 4px solid currentColor;
    border-radius: 1px;
    clip-path: polygon(0 22%, 35% 22%, 42% 8%, 100% 8%, 100% 100%, 0 100%);
  }

  .public-exact-icon-target::before,
  .public-exact-icon-check::before {
    border: 4px solid currentColor;
    border-radius: 8px;
    box-shadow: inset 0 0 0 9px #ffffff, inset 0 0 0 13px currentColor;
  }

  .public-exact-icon-star::before {
    background: currentColor;
    clip-path: polygon(50% 0, 61% 34%, 97% 34%, 68% 55%, 79% 91%, 50% 69%, 21% 91%, 32% 55%, 3% 34%, 39% 34%);
  }

  .public-exact-icon-network::before {
    background:
      radial-gradient(circle at 50% 6px, currentColor 0 6px, transparent 7px),
      radial-gradient(circle at 9px 32px, currentColor 0 6px, transparent 7px),
      radial-gradient(circle at 31px 32px, currentColor 0 6px, transparent 7px),
      linear-gradient(currentColor, currentColor) 18px 9px / 4px 22px no-repeat,
      linear-gradient(45deg, currentColor 0 48%, transparent 49%) 8px 19px / 18px 18px no-repeat,
      linear-gradient(-45deg, currentColor 0 48%, transparent 49%) 18px 19px / 18px 18px no-repeat;
  }

  .public-exact-icon-shield::before {
    background: currentColor;
    clip-path: polygon(50% 0, 90% 18%, 82% 72%, 50% 100%, 18% 72%, 10% 18%);
  }

  .public-exact-icon-upload::before {
    border: 4px solid currentColor;
    border-top: 0;
    border-radius: 0 0 4px 4px;
    background:
      linear-gradient(currentColor, currentColor) 50% 2px / 4px 30px no-repeat,
      linear-gradient(135deg, transparent 41%, currentColor 42% 52%, transparent 53%) 50% 0 / 28px 24px no-repeat;
  }

  .public-exact-icon-rank::before {
    border-bottom: 4px solid currentColor;
    border-left: 4px solid currentColor;
    background:
      linear-gradient(currentColor, currentColor) 8px 24px / 6px 14px no-repeat,
      linear-gradient(currentColor, currentColor) 21px 12px / 6px 26px no-repeat,
      linear-gradient(currentColor, currentColor) 34px 3px / 6px 35px no-repeat;
  }

  .public-class-identity-pills span::before,
  .public-class-data-note::before,
  .public-class-next-action::before {
    content: "";
    width: 8px;
    height: 8px;
    margin-right: 8px;
    border-radius: 8px;
    background: #0b5fe8;
    box-shadow: 0 0 0 4px rgba(11, 95, 232, 0.08);
  }

  .public-class-identity-pills .is-live::before,
  .public-class-data-note::before {
    background: #20a85a;
  }

  .public-class-data-note {
    display: inline-flex;
    align-items: flex-start;
    max-width: 32rem;
    margin: 0;
    color: #5f718b;
    font-size: 0.95rem;
    line-height: 1.45;
  }

  .public-class-data-note::before {
    flex: 0 0 auto;
    margin-top: 6px;
  }

  .public-class-final-cta {
    display: grid;
    justify-items: center;
    gap: 10px;
    padding: clamp(34px, 4.5vw, 58px);
    border-radius: 3px;
    background:
      radial-gradient(circle at 82% 12%, rgba(46, 149, 255, 0.28), transparent 28%),
      linear-gradient(135deg, #071d49 0%, #0056ce 100%);
    color: #ffffff;
    text-align: center;
  }

  .public-class-final-cta > span {
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.84rem;
    font-weight: 850;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }

  .public-class-final-cta h2,
  .public-class-final-cta p {
    margin: 0;
  }

  .public-class-final-cta h2 {
    color: #ffffff;
    font-size: clamp(1.6rem, 3.2vw, 2.68rem);
    letter-spacing: -0.055em;
  }

  .public-class-final-cta p {
    max-width: 42rem;
    color: rgba(255, 255, 255, 0.88);
    font-size: 1.08rem;
  }

  .public-class-final-cta .button-secondary {
    border-color: rgba(255, 255, 255, 0.72);
    background: transparent;
    color: #ffffff;
  }

  .public-class-check-page {
    display: grid;
    gap: clamp(26px, 4vw, 44px);
    padding: clamp(28px, 4vw, 48px);
    background:
      radial-gradient(circle at 92% 8%, rgba(12, 99, 255, 0.06), transparent 30%),
      linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  }

  .public-class-check-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, 0.82fr);
    gap: clamp(32px, 6vw, 84px);
    align-items: start;
  }

  .public-class-check-copy {
    display: grid;
    gap: 18px;
    align-content: start;
    padding-top: 4px;
  }

  .public-class-check-kicker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 22px;
    margin-bottom: 4px;
  }

  .public-class-check-kicker {
    color: #078a3a;
    font-size: clamp(1.12rem, 1.8vw, 1.44rem);
    font-weight: 950;
    letter-spacing: 0.06em;
    line-height: 1.15;
  }

  .public-class-check-kicker span {
    color: #078a3a;
    font-weight: 950;
  }

  .public-class-check-course-title,
  .public-class-check-lead {
    margin: 0;
    max-width: 39rem;
    color: #20375a;
    line-height: 1.5;
  }

  .public-class-check-course-title {
    margin-top: 0;
    font-size: clamp(1.1rem, 1.7vw, 1.42rem);
    font-weight: 850;
    line-height: 1.2;
  }

  .public-class-check-eyebrow {
    display: grid;
    gap: 12px;
    margin: clamp(18px, 3vw, 34px) 0 0;
    color: #07963f;
    font-size: clamp(0.92rem, 1.35vw, 1.08rem);
    font-weight: 950;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .public-class-check-eyebrow::after {
    content: "";
    width: 54px;
    height: 4px;
    border-radius: 8px;
    background: #07963f;
  }

  .public-class-check-copy h1 {
    max-width: 12ch;
    margin: 0;
    color: #071d49;
    font-size: clamp(3rem, 5.8vw, 5.25rem);
    line-height: 1;
    letter-spacing: 0;
  }

  .public-class-hero-copy h1 {
    font-size: clamp(3.45rem, 6.9vw, 6.35rem);
    line-height: 0.96;
  }

  .public-class-check-copy h1 span {
    color: #075fe8;
  }

  .public-class-check-lead {
    font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  }

  .public-class-check-sublead,
  .public-class-check-reassurance {
    margin: 0;
    color: #20375a;
    line-height: 1.45;
  }

  .public-class-check-sublead {
    max-width: 39rem;
    font-size: clamp(1rem, 1.4vw, 1.16rem);
  }

  .public-class-signal-word {
    font-weight: 900;
  }

  .public-class-signal-word.is-solid {
    color: #0a9142;
  }

  .public-class-signal-word.is-shaky {
    color: #ff650f;
  }

  .public-class-signal-word.is-missing {
    color: #f04438;
  }

  .public-class-check-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    margin-top: 6px;
  }

  .public-class-check-actions .button {
    min-width: 210px;
    min-height: 58px;
    border-radius: 2px;
  }

  .public-class-check-actions .public-cta-button {
    display: inline-flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
  }

  .public-class-check-reassurance {
    display: flex;
    gap: 12px;
    align-items: center;
    font-size: clamp(0.98rem, 1.35vw, 1.12rem);
  }

  .public-class-button-icon,
  .public-class-reassurance-icon {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.8;
  }

  .public-class-button-icon .is-filled {
    fill: currentColor;
    stroke: none;
  }

  .public-class-reassurance-icon {
    color: #0a9142;
  }

  .public-class-availability-card {
    display: grid;
    gap: 20px;
    padding: clamp(22px, 3vw, 30px);
    border: 1px solid #cdddea;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 64px rgba(22, 57, 96, 0.09);
  }

  .public-class-availability-head,
  .public-class-availability-list > div {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .public-class-availability-head strong,
  .public-class-availability-list strong,
  .public-class-check-question h2,
  .public-class-minute-section h2,
  .public-class-preview-flow h2,
  .public-class-quick-result h2,
  .public-class-study-proof strong {
    color: #071d49;
    letter-spacing: 0;
  }

  .public-class-availability-head strong {
    color: #07963f;
    font-size: 1.08rem;
  }

  .public-class-availability-head p,
  .public-class-availability-list p,
  .public-class-availability-list em {
    margin: 0;
    color: #243a59;
    line-height: 1.35;
  }

  .public-class-availability-list {
    display: grid;
  }

  .public-class-availability-list > div {
    padding: 18px 0;
    border-top: 1px solid #d8e4ef;
  }

  .public-class-availability-list > div:first-child {
    border-top: 0;
  }

  .public-class-availability-list p {
    display: grid;
    gap: 2px 8px;
  }

  .public-class-availability-list strong {
    display: inline;
    margin-right: 6px;
    font-size: 1.55rem;
    line-height: 1;
  }

  .public-class-availability-list b {
    color: #071d49;
    font-weight: 800;
  }

  .public-class-availability-list em {
    display: block;
    margin-top: 2px;
    color: #45607d;
    font-style: normal;
  }

  .public-class-availability-icon,
  .public-class-check-icon,
  .public-class-minute-icon,
  .public-class-preview-icon,
  .public-class-study-proof span {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 8px;
    background: #eaf8ef;
    color: #0a9142;
  }

  .public-class-availability-icon::before,
  .public-class-minute-icon::before,
  .public-class-preview-icon::before,
  .public-class-study-proof span::before {
    content: "";
    width: 30px;
    height: 30px;
    background: currentColor;
  }

  .public-class-availability-icon:is(.is-school, .is-element, .is-section, .is-term, .is-upload)::before {
    display: none;
  }

  .public-class-availability-icon.is-school {
    background: url("/assets/public-class-available-icon.png") center / contain no-repeat;
  }

  .public-class-availability-icon.is-element {
    background: url("/assets/public-class-elements-icon.png") center / contain no-repeat;
  }

  .public-class-availability-icon.is-section {
    background: url("/assets/public-class-sections-icon.png") center / contain no-repeat;
  }

  .public-class-availability-icon.is-term {
    background: url("/assets/public-class-term-icon.png") center / contain no-repeat;
  }

  .public-class-availability-icon.is-upload {
    background: url("/assets/public-class-upload-icon.png") center / contain no-repeat;
  }

  .public-class-availability-icon.is-school::before,
  .public-class-minute-icon.is-target::before {
    clip-path: polygon(50% 4%, 96% 28%, 50% 52%, 4% 28%);
    box-shadow: 0 12px 0 -3px currentColor;
  }

  .public-class-availability-icon.is-element::before,
  .public-class-preview-icon.is-element::before {
    clip-path: polygon(20% 0, 80% 0, 80% 100%, 20% 100%);
    background:
      linear-gradient(#ffffff, #ffffff) 50% 33% / 16px 3px no-repeat,
      linear-gradient(#ffffff, #ffffff) 50% 55% / 16px 3px no-repeat,
      currentColor;
  }

  .public-class-availability-icon.is-section {
    color: #6727e7;
  }

  .public-class-availability-icon.is-section::before,
  .public-class-minute-icon.is-brain::before {
    border-radius: 8px;
    background:
      radial-gradient(circle at 50% 22%, currentColor 0 5px, transparent 6px),
      radial-gradient(circle at 26% 70%, currentColor 0 5px, transparent 6px),
      radial-gradient(circle at 74% 70%, currentColor 0 5px, transparent 6px),
      linear-gradient(currentColor, currentColor) 48% 30% / 4px 18px no-repeat,
      linear-gradient(35deg, currentColor 0 50%, transparent 51%) 31% 48% / 14px 14px no-repeat,
      linear-gradient(-35deg, currentColor 0 50%, transparent 51%) 59% 48% / 14px 14px no-repeat;
  }

  .public-class-availability-icon.is-term {
    color: #ff650f;
  }

  .public-class-availability-icon.is-term::before {
    border: 3px solid currentColor;
    border-radius: 1px;
    background:
      linear-gradient(currentColor, currentColor) 0 8px / 100% 3px no-repeat,
      linear-gradient(currentColor, currentColor) 9px 16px / 4px 4px no-repeat,
      linear-gradient(currentColor, currentColor) 19px 16px / 4px 4px no-repeat,
      transparent;
  }

  .public-class-availability-icon.is-upload {
    color: #0b6af0;
  }

  .public-class-availability-icon.is-upload::before {
    border: 3px solid currentColor;
    border-top: 0;
    border-radius: 0 0 2px 2px;
    background:
      linear-gradient(currentColor, currentColor) 50% 2px / 4px 22px no-repeat,
      linear-gradient(135deg, transparent 42%, currentColor 43% 55%, transparent 56%) 50% 0 / 22px 20px no-repeat;
  }

  .public-class-check-card {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.8fr) minmax(170px, 0.32fr);
    align-items: center;
    overflow: hidden;
    border: 1px solid #cdddea;
    border-radius: 3px;
    background: #ffffff;
  }

  .public-class-check-question {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    padding: clamp(24px, 4vw, 36px);
  }

  .public-class-check-icon {
    background: url("/assets/public-class-check-question-icon.png") center / contain no-repeat;
  }

  .public-class-check-question span:not(.public-class-check-icon) {
    color: #075fe8;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .public-class-check-question h2 {
    margin: 8px 0 0;
    max-width: 28rem;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    line-height: 1.25;
  }

  .public-class-check-options {
    display: grid;
    gap: 10px;
    padding: 20px 0;
  }

  .public-class-check-options label {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) 26px;
    gap: 12px;
    align-items: center;
    min-height: 48px;
    padding: 0 14px;
    border: 1px solid #dde7f0;
    border-radius: 2px;
    background: #ffffff;
    color: #20375a;
    cursor: pointer;
    transition:
      background 160ms ease,
      border-color 160ms ease,
      box-shadow 160ms ease;
  }

  .public-class-check-options input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .public-class-check-options label > span {
    color: #071d49;
    font-weight: 900;
  }

  .public-class-check-options label > strong {
    overflow-wrap: anywhere;
    font-size: 0.98rem;
    font-weight: 700;
  }

  .public-class-check-options label.is-selected {
    border-color: #2b6fe8;
    box-shadow: inset 0 0 0 1px rgba(43, 111, 232, 0.14);
  }

  .public-class-check-options label.is-correct {
    border-color: #0a9142;
    background: #f1fbf5;
    box-shadow: inset 0 0 0 1px rgba(10, 145, 66, 0.1);
  }

  .public-class-check-options label.is-wrong {
    border-color: #e68117;
    background: #fff7ed;
    box-shadow: inset 0 0 0 1px rgba(230, 129, 23, 0.12);
  }

  .public-class-check-options label.is-correct em {
    width: 25px;
    height: 25px;
    border-radius: 8px;
    background:
      linear-gradient(135deg, transparent 48%, #ffffff 49% 59%, transparent 60%) 9px 7px / 10px 12px no-repeat,
      #0a9142;
  }

  .public-class-demo-next {
    width: fit-content;
    min-height: 40px;
    padding: 10px 16px;
    border-radius: 2px;
    font-size: 0.88rem;
  }

  .public-class-demo-result-row {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid #dde7f0;
    border-radius: 2px;
    background: #ffffff;
    color: #20375a;
  }

  .public-class-demo-result-row > span {
    color: #071d49;
    font-weight: 900;
  }

  .public-class-demo-result-row > strong {
    font-size: 0.88rem;
    font-weight: 800;
    line-height: 1.25;
  }

  .public-class-demo-result-row > em {
    border-radius: 8px;
    padding: 4px 8px;
    font-size: 0.72rem;
    font-style: normal;
    font-weight: 900;
  }

  .public-class-demo-result-row.is-correct {
    border-color: rgba(10, 145, 66, 0.32);
    background: #f6fcf8;
  }

  .public-class-demo-result-row.is-correct > em {
    background: #e7f7ee;
    color: #087337;
  }

  .public-class-demo-result-row.is-wrong {
    border-color: rgba(230, 129, 23, 0.28);
    background: #fffaf3;
  }

  .public-class-demo-result-row.is-wrong > em {
    background: #ffefd9;
    color: #a65300;
  }

  .public-class-check-explainer {
    display: grid;
    align-content: center;
    gap: 14px;
    min-height: 100%;
    padding: 24px;
    border-left: 1px solid #d8e4ef;
    color: #071d49;
  }

  .public-class-check-explainer p {
    margin: 0;
    max-width: 13rem;
    font-weight: 800;
    line-height: 1.35;
  }

  .public-class-check-bars {
    width: 58px;
    height: 58px;
    background: url("/assets/public-class-check-chart-icon.png") center / contain no-repeat;
  }

  .public-class-minute-section {
    display: grid;
    justify-items: center;
    gap: 14px;
  }

  .public-class-minute-section h2 {
    margin: 0;
    text-align: center;
    font-size: clamp(1.45rem, 2.7vw, 2rem);
  }

  .public-class-minute-section > p,
  .public-class-preview-flow p,
  .public-class-quick-result p,
  .public-class-study-proof p {
    margin: 0;
    color: #3d5573;
    line-height: 1.45;
  }

  .public-class-minute-card {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
    border: 1px solid #cdddea;
    border-radius: 3px;
    background: #ffffff;
    box-shadow: 0 14px 46px rgba(23, 59, 100, 0.07);
  }

  .public-class-minute-card article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 18px;
    padding: clamp(22px, 3vw, 30px);
    border-right: 1px solid #d8e4ef;
  }

  .public-class-minute-card article:last-child {
    border-right: 0;
  }

  .public-class-minute-card strong {
    display: block;
    margin-bottom: 6px;
    color: #071d49;
    font-size: 1.12rem;
  }

  .public-class-minute-card .public-class-minute-icon:is(.is-target, .is-brain, .is-trend)::before {
    display: none;
  }

  .public-class-minute-icon.is-brain {
    background: #efe7ff;
    color: #6727e7;
  }

  .public-class-minute-card .public-class-minute-icon.is-brain {
    background: url("/assets/public-class-minute-knowledge-icon.png") center / contain no-repeat;
  }

  .public-class-minute-button {
    min-width: min(100%, 320px);
    min-height: 52px;
    margin-top: 12px;
    border-radius: 2px;
    box-shadow: 0 12px 26px rgba(11, 95, 232, 0.22);
  }

  .public-class-sprint-offer {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.72fr);
    gap: clamp(20px, 4vw, 44px);
    align-items: center;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid #c9dfef;
    border-radius: 4px;
    background:
      linear-gradient(135deg, rgba(235, 247, 255, 0.94), rgba(240, 253, 244, 0.9)),
      #f7fbff;
    box-shadow: 0 18px 54px rgba(23, 59, 100, 0.07);
  }

  .public-class-sprint-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 12px;
    border: 1px solid #b9d7ed;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.74);
    color: #245184;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  .public-class-sprint-offer h2 {
    max-width: 760px;
    margin: 14px 0 8px;
    color: #071d49;
    font-size: clamp(1.72rem, 3.4vw, 2.48rem);
    line-height: 1.05;
  }

  .public-class-sprint-offer p {
    max-width: 760px;
    margin: 0;
    color: #3d5573;
    font-size: 1.03rem;
    line-height: 1.5;
  }

  .public-class-sprint-topic-list {
    display: grid;
    gap: 8px;
    max-width: 620px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
  }

  .public-class-sprint-topic-list li {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 12px;
    border: 1px solid rgba(185, 215, 237, 0.8);
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.68);
    color: #244f83;
    font-weight: 800;
  }

  .public-class-sprint-topic-list strong {
    color: #0b5fe8;
  }

  .public-class-sprint-form {
    display: grid;
    gap: 12px;
    padding: 18px;
    border: 1px solid #c9dfef;
    border-radius: 3px;
    background: #ffffff;
  }

  .public-class-sprint-form label {
    color: #244f83;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .public-class-sprint-input-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
  }

  .public-class-sprint-input-row input {
    min-width: 0;
    min-height: 52px;
    padding: 0 14px;
    border: 1px solid #b9d7ed;
    border-radius: 2px;
    color: #071d49;
    font: inherit;
    font-weight: 700;
  }

  .public-class-sprint-input-row button {
    min-height: 52px;
    border-radius: 2px;
  }

  .public-class-sprint-status {
    margin: 0;
    font-size: 0.94rem;
    font-weight: 800;
  }

  .public-class-sprint-status.is-success {
    color: #16843a;
  }

  .public-class-sprint-status.is-error {
    color: #bb2638;
  }

  .public-class-preview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.96fr);
    gap: 16px;
  }

  .public-class-preview-grid.is-single {
    grid-template-columns: 1fr;
  }

  .public-class-preview-flow,
  .public-class-quick-result,
  .public-class-study-proof {
    border: 1px solid #cdddea;
    border-radius: 3px;
    background: #ffffff;
    box-shadow: 0 14px 46px rgba(23, 59, 100, 0.06);
  }

  .public-class-preview-flow,
  .public-class-quick-result {
    display: grid;
    gap: 18px;
    padding: 24px;
  }

  .public-class-preview-flow h2,
  .public-class-quick-result h2 {
    margin: 0;
    font-size: clamp(1.18rem, 2vw, 1.45rem);
  }

  .public-class-preview-flow > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .public-class-preview-flow section {
    display: grid;
    justify-items: center;
    gap: 10px;
    min-height: 178px;
    padding: 18px;
    border: 1px solid #dbe7f1;
    border-radius: 2px;
    text-align: center;
  }

  .public-class-preview-flow i {
    color: #486480;
    font-style: normal;
    font-size: 1.55rem;
  }

  .public-class-preview-icon {
    width: 62px;
    height: 62px;
    background: url("/assets/public-class-flow-elements-icon.png") center / contain no-repeat;
  }

  .public-class-preview-icon::before,
  .public-class-preview-icon.is-chart::before {
    display: none;
  }

  .public-class-result-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }

  .public-class-result-grid div {
    display: grid;
    justify-items: center;
    gap: 2px;
    min-height: 112px;
    padding: 14px;
    border: 1px solid #dbe7f1;
    border-radius: 2px;
    text-align: center;
  }

  .public-class-result-grid strong {
    color: #0a9142;
    font-size: 2rem;
    line-height: 1;
  }

  .public-class-result-grid .is-shaky strong {
    color: #d07c00;
  }

  .public-class-result-grid .is-missing strong {
    color: #d82733;
  }

  .public-class-result-grid .is-strong {
    background: #f0fbf4;
    border-color: #a8dcc0;
  }

  .public-class-result-grid .is-shaky {
    background: #fff8e7;
    border-color: #ebcc86;
  }

  .public-class-result-grid .is-missing {
    background: #fff0f1;
    border-color: #efb6bd;
  }

  .public-class-result-grid span {
    color: #071d49;
    font-weight: 850;
  }

  .public-class-result-grid em {
    color: #31445f;
    font-style: normal;
    font-size: 0.9rem;
  }

  .public-class-result-score {
    padding: 10px 12px;
    border-radius: 2px;
    background: #eaf8ef;
    color: #078a3a !important;
    font-weight: 800;
  }

  .public-class-save-button {
    min-height: 52px;
    border-radius: 2px;
    background: #07963f;
    box-shadow: 0 12px 26px rgba(7, 150, 63, 0.22);
  }

  .public-class-save-icon {
    width: 20px;
    height: 20px;
    margin-right: 8px;
    flex: 0 0 auto;
  }

  .public-class-preview-link {
    justify-self: center;
    border: 0;
    background: transparent;
    color: #075fe8;
    cursor: pointer;
    font: inherit;
    font-weight: 800;
    text-decoration: none;
  }

  .public-class-result-overlay {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: grid;
    place-items: center;
    padding: clamp(18px, 4vw, 42px);
    background: rgba(7, 29, 73, 0.54);
    backdrop-filter: blur(8px);
  }

  .public-class-result-overlay[hidden] {
    display: none;
  }

  .public-class-result-overlay-open {
    overflow: hidden;
  }

  .public-class-result-overlay-card {
    position: relative;
    width: min(100%, 760px);
    max-height: min(86vh, 760px);
    overflow: auto;
    padding: clamp(24px, 4vw, 36px);
    border-radius: 4px;
    box-shadow: 0 28px 90px rgba(7, 29, 73, 0.28);
  }

  .public-class-result-overlay-card h2 {
    padding-right: 36px;
    font-size: clamp(1.7rem, 3.2vw, 2.5rem);
  }

  .public-class-result-overlay-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
    border: 1px solid #d8e4ef;
    border-radius: 8px;
    background: #ffffff;
    color: #071d49;
    cursor: pointer;
    font-size: 1.35rem;
    font-weight: 900;
    line-height: 1;
  }

  .public-class-study-proof {
    display: grid;
    grid-template-columns: minmax(260px, 0.9fr) repeat(3, minmax(190px, 1fr));
    gap: 0;
    align-items: center;
    padding: clamp(26px, 3.2vw, 42px) clamp(24px, 4vw, 52px);
    border-color: #f0d9b6;
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(38, 56, 80, 0.08);
  }

  .public-class-study-proof > div,
  .public-class-study-proof article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
  }

  .public-class-study-proof > div {
    grid-template-columns: 78px minmax(0, 1fr);
    padding-right: clamp(22px, 3vw, 42px);
  }

  .public-class-study-proof article {
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: start;
    min-height: 94px;
    padding: 2px clamp(20px, 3vw, 42px);
    border-left: 1px solid #f1dfc4;
  }

  .public-class-study-proof > div span {
    width: 64px;
    height: 64px;
    border-radius: 8px;
    background: linear-gradient(180deg, #fff1d3 0%, #fff8ec 100%);
    color: #d4900a;
    box-shadow: inset 0 0 0 1px rgba(212, 144, 10, 0.08);
  }

  .public-class-study-proof article span {
    width: 36px;
    height: 36px;
    border: 2px solid #7bc895;
    background: #ffffff;
    color: #25a254;
  }

  .public-class-study-proof span::before {
    width: 30px;
    height: 30px;
    clip-path: polygon(50% 0, 90% 18%, 82% 72%, 50% 100%, 18% 72%, 10% 18%);
  }

  .public-class-study-proof article span::before {
    width: 18px;
    height: 18px;
    clip-path: polygon(42% 70%, 81% 25%, 90% 33%, 43% 86%, 12% 56%, 21% 46%);
  }

  .public-class-study-proof > div strong {
    max-width: 14rem;
    font-size: clamp(1.35rem, 2vw, 1.68rem);
    line-height: 1.22;
  }

  .public-class-study-proof article strong {
    font-size: clamp(1.18rem, 1.7vw, 1.48rem);
    line-height: 1.1;
  }

  .public-class-study-proof p {
    grid-column: 2 / -1;
    margin-top: -2px;
    color: #536176;
    font-size: 0.98rem;
    line-height: 1.35;
  }

  .public-shared-check-page {
    display: grid;
    gap: clamp(22px, 3vw, 34px);
    padding: clamp(28px, 4vw, 48px);
    background:
      radial-gradient(circle at 92% 8%, rgba(12, 99, 255, 0.06), transparent 30%),
      linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  }

  .public-shared-check-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, 0.82fr);
    gap: clamp(32px, 6vw, 84px);
    align-items: start;
  }

  .public-shared-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid #a9c9ff;
    border-radius: 2px;
    background: #eef6ff;
    color: #075fe8;
    font-size: 0.9rem;
    font-weight: 850;
  }

  .public-shared-chip::before {
    content: "";
    width: 18px;
    height: 18px;
    background:
      radial-gradient(circle at 35% 32%, currentColor 0 3px, transparent 4px),
      radial-gradient(circle at 70% 32%, currentColor 0 3px, transparent 4px),
      linear-gradient(currentColor, currentColor) 23% 68% / 52% 3px no-repeat;
  }

  .public-shared-availability-card {
    display: grid;
    gap: 0;
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid #cdddea;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 64px rgba(22, 57, 96, 0.09);
  }

  .public-shared-availability-card h2 {
    margin: 0 0 6px 74px;
    color: #07963f;
    font-size: 1.16rem;
    letter-spacing: 0;
  }

  .public-shared-availability-card > div {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 16px 0;
    border-top: 1px solid #d8e4ef;
  }

  .public-shared-availability-card > div:first-of-type {
    border-top: 0;
  }

  .public-shared-availability-card p {
    display: grid;
    gap: 2px 8px;
    margin: 0;
    color: #243a59;
    line-height: 1.35;
  }

  .public-shared-availability-card strong {
    display: inline;
    margin-right: 6px;
    color: #071d49;
    font-size: 1.55rem;
    line-height: 1;
  }

  .public-shared-availability-card b {
    color: #071d49;
    font-weight: 800;
  }

  .public-shared-availability-card em {
    display: block;
    margin-top: 2px;
    color: #45607d;
    font-style: normal;
  }

  .public-class-availability-icon.is-gift {
    background: #eaf8ef;
    color: #1aa24c;
  }

  .public-class-availability-icon.is-gift::before {
    border: 3px solid currentColor;
    border-radius: 1px;
    background:
      linear-gradient(currentColor, currentColor) 50% 0 / 3px 100% no-repeat,
      linear-gradient(currentColor, currentColor) 0 38% / 100% 3px no-repeat;
  }

  .public-shared-element-preview-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.92fr);
    gap: clamp(22px, 4vw, 54px);
    align-items: center;
    padding: clamp(22px, 3vw, 32px);
    border: 1px solid #d9e6f4;
    border-radius: 3px;
    background: #ffffff;
    box-shadow: 0 24px 64px rgba(8, 32, 51, 0.13);
  }

  .public-shared-check-page #shared-element {
    display: block;
  }

  .public-shared-element-copy {
    display: grid;
    gap: 14px;
  }

  .public-shared-element-preview-card > span,
  .public-shared-element-copy > span,
  .public-shared-section > span,
  .public-shared-element-final-cta > span {
    color: #0b5fe8;
    font-size: 0.84rem;
    font-weight: 850;
    letter-spacing: 0.02em;
  }

  .public-shared-element-preview-card h2,
  .public-shared-section h2,
  .public-shared-element-final-cta h2 {
    margin: 0;
    color: #071d49;
    letter-spacing: -0.04em;
  }

  .public-shared-element-preview-card h2 {
    font-size: clamp(1.55rem, 2.7vw, 2.32rem);
    line-height: 1.08;
  }

  .public-shared-element-preview-card p,
  .public-shared-section p,
  .public-shared-element-final-cta p {
    margin: 0;
    color: #31445f;
    line-height: 1.55;
  }

  .public-shared-element-tags,
  .public-shared-element-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
  }

  .public-shared-element-tags em,
  .public-shared-element-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #bcd9f5;
    border-radius: 2px;
    background: #eaf3ff;
    color: #0b5fe8;
    font-style: normal;
    font-weight: 750;
  }

  .public-shared-element-tags em:nth-child(2) {
    border-color: #bfe6ce;
    background: #eefbf3;
    color: #159447;
  }

  .public-shared-element-tags em:nth-child(3) {
    border-color: #d7c5ff;
    background: #f4efff;
    color: #6727e7;
  }

  .public-shared-element-formulas {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .public-shared-element-diagram {
    display: grid;
    gap: 14px;
    justify-items: stretch;
    margin: 0;
    padding: 24px;
    border: 1px solid #d9e6f4;
    border-radius: 3px;
    background: linear-gradient(180deg, #ffffff 0%, #f9fcff 100%);
  }

  .public-shared-element-diagram > strong {
    justify-self: center;
    color: #071d49;
    font-size: 1.04rem;
    text-align: center;
  }

  .public-shared-element-diagram img {
    display: block;
    width: 100%;
    max-height: 280px;
    object-fit: contain;
  }

  .public-shared-element-diagram figcaption {
    color: #45607d;
    font-size: 0.92rem;
    text-align: center;
  }

  .public-shared-element-comparison {
    min-height: 230px;
  }

  .public-shared-element-comparison div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 10px;
    align-items: center;
  }

  .public-shared-element-comparison div:first-of-type span {
    display: grid;
    min-height: 50px;
    place-items: center;
    border: 1px solid #d8e4ef;
    border-radius: 2px;
    background: #eef6ff;
    color: #075fe8;
    font-weight: 850;
    text-align: center;
  }

  .public-shared-element-comparison i {
    width: 26px;
    height: 2px;
    background: #2c5a8c;
  }

  .public-shared-element-comparison i::after {
    content: "";
    display: block;
    width: 9px;
    height: 9px;
    margin: -4px 0 0 17px;
    border-top: 2px solid #2c5a8c;
    border-right: 2px solid #2c5a8c;
    transform: rotate(45deg);
  }

  .public-shared-element-comparison div:not(:first-of-type) {
    grid-template-columns: minmax(0, 0.62fr) minmax(0, 1fr);
    padding: 10px;
    border: 1px solid #d8e4ef;
    border-radius: 2px;
  }

  .public-shared-element-comparison b,
  .public-shared-element-comparison em {
    color: #20375a;
    font-size: 0.9rem;
    font-style: normal;
    text-align: center;
  }

  .public-shared-element-save-note {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 10px 16px;
    border: 1px solid #cdddea;
    border-radius: 2px;
    background: #f8fbff;
    color: #31506e;
    text-decoration: none;
  }

  .public-shared-element-save-note span {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #075fe8;
    color: #ffffff;
    font-weight: 900;
  }

  .public-shared-element-formulas code,
  .public-shared-equation-row code {
    display: grid;
    place-items: center;
    min-height: 76px;
    padding: 14px;
    border: 1px solid #d9e6f4;
    border-radius: 3px;
    background: #ffffff;
    color: #071d49;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.05rem, 2vw, 1.55rem);
    font-style: italic;
    white-space: normal;
    box-shadow: 0 12px 28px rgba(8, 32, 51, 0.07);
  }

  .public-shared-section {
    display: grid;
    gap: 18px;
    padding: 0 clamp(30px, 5vw, 58px) clamp(22px, 4vw, 42px);
  }

  .public-shared-section h2 {
    font-size: clamp(1.28rem, 2.4vw, 1.88rem);
  }

  .public-shared-inside-grid article,
  .public-shared-benefit-grid article {
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 22px;
    border: 1px solid #d9e6f4;
    border-radius: 4px;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(8, 32, 51, 0.06);
  }

  .public-shared-inside-grid strong,
  .public-shared-benefit-grid strong {
    color: #071d49;
    font-size: 1.05rem;
  }

  .public-shared-inside-grid > article > span,
  .public-shared-benefit-grid > article > span:not(.public-shared-benefit-icon) {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #eaf3ff;
    color: #0b5fe8;
    font-size: 1.35rem;
    font-weight: 850;
  }

  .public-shared-benefit-icon {
    display: block;
    width: 78px;
    height: 78px;
  }

  .public-shared-benefit-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-shared-benefit-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
  }

  .public-shared-fast-check {
    display: grid;
    gap: 14px;
    padding: clamp(22px, 3vw, 28px);
    border: 1px solid #d9e6f4;
    border-radius: 3px;
    background: #ffffff;
    box-shadow: 0 14px 46px rgba(23, 59, 100, 0.06);
  }

  .public-shared-fast-check h2,
  .public-shared-fast-check p {
    margin: 0;
  }

  .public-shared-fast-check h2 {
    color: #071d49;
    font-size: clamp(1.32rem, 2.3vw, 1.72rem);
    letter-spacing: 0;
  }

  .public-shared-fast-check > div:first-child p {
    color: #45607d;
  }

  .public-shared-fast-check-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.38fr);
    gap: 24px;
    align-items: stretch;
  }

  .public-shared-fast-check-grid .public-class-check-card {
    grid-template-columns: minmax(0, 0.82fr) minmax(300px, 1fr);
  }

  .public-shared-fast-check-grid .public-class-check-explainer {
    display: none;
  }

  .public-shared-fast-check-grid aside {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 18px;
    padding: 28px;
    border: 1px solid #cfe8d8;
    border-radius: 3px;
    background: linear-gradient(180deg, #ffffff 0%, #f5fff8 100%);
    text-align: center;
  }

  .public-shared-fast-check-grid aside strong {
    max-width: 18rem;
    color: #071d49;
    font-size: 1.25rem;
    line-height: 1.25;
  }

  .public-shared-fast-check-grid aside p {
    max-width: 20rem;
    color: #45607d;
    line-height: 1.5;
  }

  .public-shared-element-final-cta {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(260px, 0.42fr);
    gap: 20px;
    align-items: center;
    margin: 0;
    padding: clamp(28px, 4vw, 46px);
    border: 1px solid #cdddea;
    border-radius: 3px;
    background:
      radial-gradient(circle at 9% 26%, rgba(11, 95, 232, 0.08), transparent 20%),
      linear-gradient(180deg, #ffffff 0%, #f4faff 100%);
    color: #071d49;
  }

  .public-shared-element-final-cta h2,
  .public-shared-element-final-cta p,
  .public-shared-element-final-cta > span {
    color: #071d49;
  }

  .public-shared-element-final-cta h2 {
    max-width: 16ch;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
    line-height: 1.03;
  }

  .public-shared-element-final-cta p {
    max-width: 36rem;
    color: #45607d;
  }

  .public-shared-final-actions {
    display: grid;
    gap: 10px;
  }

  .public-shared-element-final-cta .button-secondary {
    border-color: #a9c9ff;
    background: #ffffff;
    color: #075fe8;
  }

  .public-hero-copy,
  .public-section-head {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .public-hero-copy h1,
  .public-section-head h2,
  .public-final-cta h2 {
    margin: 0;
    font-size: clamp(2.08rem, 4.8vw, 4rem);
    line-height: 0.94;
    letter-spacing: -0.04em;
    max-width: 11ch;
    font-weight: 540;
  }

  .public-section-head h2,
  .public-final-cta h2 {
    font-size: clamp(1.24rem, 2.48vw, 1.96rem);
    width: min(100%, 72%);
    max-width: none;
  }

  .public-lead,
  .public-hero-copy p,
  .public-section-head p,
  .public-final-cta p {
    margin: 0;
    max-width: 34rem;
    color: #4e6d84;
    font-size: clamp(1.05rem, 1.9vw, 1.3rem);
    line-height: 1.55;
  }

  .public-cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 6px;
  }

  .public-cta-button {
    min-height: 58px;
    min-width: 190px;
    padding-inline: 24px;
    font-size: 1.03rem;
    font-weight: 700;
  }

  .public-home-hero .public-cta-row {
    gap: 14px;
    margin-top: 0;
  }

  .public-home-hero .public-cta-button {
    min-height: 56px;
    min-width: 208px;
    padding-inline: 26px;
    border-radius: 4px;
    box-shadow: 0 8px 18px rgba(8, 32, 51, 0.08);
  }

  .public-home-premium-hero {
    display: grid;
    gap: 0;
  }

  .public-home-premium-shell,
  .public-home-premium-panel {
    position: relative;
    z-index: 1;
  }

  .public-home-premium-shell {
    display: grid;
    grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
  }

  .public-home-premium-nav {
    display: grid;
    gap: 0;
    align-content: start;
    padding: 0;
    border: 1px solid rgba(167, 203, 223, 0.64);
    border-radius: 5px;
    background: #ffffff;
    overflow: hidden;
  }

  .public-home-premium-nav-item {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    width: 100%;
    min-height: 72px;
    padding: 0 20px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #082033;
    cursor: pointer;
    text-decoration: none;
    text-align: left;
    transition:
      background 180ms ease,
      transform 180ms ease;
  }

  .public-home-premium-nav-item + .public-home-premium-nav-item {
    border-top: 1px solid rgba(207, 226, 239, 0.92);
  }

  .public-home-premium-nav-item:hover {
    background: #f8fbfe;
    transform: translateX(2px);
  }

  .public-home-premium-nav-item:focus-visible {
    outline: 2px solid rgba(0, 106, 181, 0.28);
    outline-offset: -2px;
    background: #f8fbfe;
  }

  .public-home-premium-nav-item.is-active {
    background: #f8fbfe;
    transform: none;
  }

  .public-home-premium-nav-title {
    font-size: 1.02rem;
    font-weight: 560;
    line-height: 1.16;
    letter-spacing: -0.02em;
    padding-right: 12px;
  }

  .public-home-premium-nav-indicator {
    width: 10px;
    height: 10px;
    border-radius: 8px;
    background: linear-gradient(135deg, #1268D6, #1BA6A6);
    opacity: 0;
    transform: scale(0.72);
    transition: opacity 180ms ease, transform 180ms ease;
  }

  .public-home-premium-nav-item.is-active .public-home-premium-nav-indicator {
    opacity: 1;
    transform: scale(1);
  }

  .public-home-premium-panel {
    display: block;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .public-home-premium-visual {
    display: grid;
    min-width: 0;
    align-content: start;
  }

  .public-home-premium-carousel {
    gap: 0;
  }

  .public-home-premium-carousel-frame {
    position: relative;
    min-height: clamp(360px, 42vw, 540px);
    border: 0;
    border-radius: 3px;
    background: #d8e4ee;
    overflow: hidden;
  }

  .public-home-premium-carousel-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.02);
    transition:
      opacity 240ms ease,
      transform 240ms ease;
    pointer-events: none;
  }

  .public-home-premium-carousel-slide.is-active {
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
  }

  .public-home-premium-carousel-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .public-home-premium-carousel-scrim {
    position: absolute;
    inset: 0;
    background:
      linear-gradient(180deg, rgba(8, 32, 51, 0.16) 0%, rgba(8, 32, 51, 0.42) 58%, rgba(8, 32, 51, 0.7) 100%),
      linear-gradient(90deg, rgba(8, 32, 51, 0.34) 0%, rgba(8, 32, 51, 0.08) 52%, rgba(8, 32, 51, 0.14) 100%);
  }

  .public-home-premium-carousel-copy-block {
    position: absolute;
    top: 22px;
    left: 22px;
    right: 22px;
    display: grid;
    gap: 10px;
    max-width: min(42rem, calc(100% - 44px));
    color: #ffffff;
  }

  .public-home-premium-carousel-eyebrow {
    display: inline-flex;
    width: fit-content;
    min-height: 28px;
    align-items: center;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(12px);
    color: rgba(255, 255, 255, 0.94);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  .public-home-premium-carousel-copy-block strong {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1.6rem, 2.65vw, 2.75rem);
    font-weight: 540;
    line-height: 1.04;
    letter-spacing: -0.04em;
    max-width: none;
  }

  .public-home-premium-carousel-copy-block p {
    margin: 0;
    max-width: 29rem;
    color: rgba(255, 255, 255, 0.9);
    font-size: 1rem;
    line-height: 1.56;
  }

  .public-home-premium-carousel-cta {
    width: fit-content;
    min-height: 46px;
    margin-top: 4px;
    padding-inline: 18px;
    border-radius: 4px;
    box-shadow: 0 14px 30px rgba(8, 32, 51, 0.24);
  }

  .public-home-premium-carousel-dots {
    position: absolute;
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .public-home-premium-carousel-dot {
    width: 11px;
    height: 11px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.48);
    box-shadow: 0 6px 18px rgba(8, 32, 51, 0.2);
    cursor: pointer;
    transition:
      transform 180ms ease,
      background 180ms ease;
  }

  .public-home-premium-carousel-dot:hover,
  .public-home-premium-carousel-dot:focus-visible {
    background: rgba(255, 255, 255, 0.78);
    transform: scale(1.05);
    outline: none;
  }

  .public-home-premium-carousel-dot.is-active {
    background: linear-gradient(135deg, #1268D6, #1BA6A6);
    transform: scale(1.15);
  }

  .public-home-readiness-prompt {
    position: relative;
    display: grid;
    width: 100vw;
    min-height: clamp(420px, 38vw, 640px);
    margin: clamp(72px, 9vw, 144px) calc(50% - 50vw) clamp(64px, 8vw, 128px);
    padding: clamp(104px, 12vw, 184px) clamp(28px, 7vw, 148px);
    overflow: hidden;
    background: #071b4d;
    color: #f8fbff;
    isolation: isolate;
    place-items: center;
  }

  .public-home-readiness-prompt-inner {
    width: min(100%, 1800px);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .public-home-readiness-prompt::before,
  .public-home-readiness-prompt::after {
    position: absolute;
    right: 7%;
    top: 50%;
    width: 360px;
    height: 360px;
    border: 1px solid rgba(125, 168, 237, 0.13);
    border-radius: 50%;
    content: "";
    transform: translateY(-50%);
    z-index: -1;
  }

  .public-home-readiness-prompt::after {
    width: 210px;
    height: 210px;
  }

  .public-home-readiness-prompt p {
    margin: 0;
    font-family: var(--font-marketing-editorial);
    font-size: clamp(3.35rem, 5vw, 6.4rem);
    font-weight: 400;
    letter-spacing: -0.03em;
    line-height: 0.98;
    color: #f8fbff;
  }

  .public-home-readiness-prompt em {
    color: #8cb9ff;
    font-style: italic;
  }

  .public-home-readiness-story {
    margin-top: clamp(28px, 3vw, 40px);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 15.5px;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: #8fb8ff;
    text-decoration: none;
    border-bottom: 1px solid rgba(143, 184, 255, 0.35);
    padding-bottom: 2px;
    transition: color 0.15s ease, border-color 0.15s ease;
  }

  .public-home-readiness-story:hover {
    color: #b9ceff;
    border-bottom-color: rgba(143, 184, 255, 0.7);
  }

  .public-home-readiness-story span {
    transition: transform 0.15s ease;
  }

  .public-home-readiness-story:hover span {
    transform: translateX(3px);
  }

  @keyframes publicHomeHeroPanelIn {
    from {
      opacity: 0;
      transform: translateY(8px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .public-home-marquee,
  .public-home-link-rail,
  .public-home-editorial-grid,
  .public-home-mosaic,
  .public-home-conversion-panel {
    position: relative;
    border: 1px solid rgba(167, 203, 223, 0.7);
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(8, 32, 51, 0.05);
  }

  .public-home-conversion-panel {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    gap: 24px;
    padding: 28px;
    align-items: center;
    background: #ffffff;
  }

  .public-home-conversion-copy {
    display: grid;
    gap: 10px;
    text-align: left;
  }

  .public-home-conversion-copy h2,
  .public-home-conversion-copy p {
    margin-left: 0;
    margin-right: 0;
  }

  .public-home-conversion-actions {
    display: grid;
    gap: 14px;
    justify-items: start;
  }

  .public-home-conversion-actions .public-cta-row {
    margin-top: 0;
  }

  .public-home-conversion-actions .public-final-cta-reassurance {
    justify-content: flex-start;
  }

  .public-quiz-challenge-page {
    display: grid;
    gap: 18px;
  }

  .public-quiz-challenge-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
    gap: 24px;
    align-items: center;
    padding: 18px 32px 8px;
  }

  .public-quiz-challenge-copy {
    display: grid;
    gap: 12px;
    align-content: center;
  }

  .public-quiz-challenge-copy h1 {
    margin: 0;
    max-width: 720px;
    color: #061d2f;
    font-size: clamp(2.2rem, 3.9vw, 3.48rem);
    line-height: 0.98;
    letter-spacing: -0.055em;
  }

  .public-quiz-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
    gap: 28px;
    align-items: start;
  }

  .public-quiz-main-card,
  .public-quiz-side-card,
  .public-quiz-account-cta {
    border: 1px solid rgba(167, 203, 223, 0.6);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 18px 42px rgba(5, 58, 101, 0.08);
  }

  .public-quiz-main-card {
    display: grid;
    gap: 22px;
    padding: 28px;
    border-radius: 7px;
  }

  .public-quiz-side-stack {
    display: grid;
    gap: 20px;
  }

  .public-quiz-side-card {
    display: grid;
    gap: 16px;
    padding: 24px;
    border-radius: 6px;
  }

  .public-quiz-side-card h3,
  .public-quiz-side-card p {
    margin: 0;
  }

  .public-quiz-side-card h3 {
    color: #061d2f;
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .public-quiz-side-card p,
  .public-quiz-side-eyebrow {
    color: #5d7d95;
    font-size: 0.98rem;
    line-height: 1.5;
  }

  .public-quiz-side-card.is-soft {
    background: linear-gradient(135deg, #f7fbff 0%, #ffffff 100%);
  }

  .public-quiz-friend-card {
    min-height: 188px;
    gap: 10px;
    align-content: center;
    justify-items: center;
    text-align: center;
  }

  .public-quiz-progress-ring {
    --score: 0%;
    display: grid;
    align-content: center;
    justify-items: center;
    width: 132px;
    height: 132px;
    border-radius: 8px;
    background: conic-gradient(#20a95c var(--score), #edf3f8 0);
    box-shadow:
      inset 0 0 0 1px rgba(10, 79, 149, 0.08),
      0 16px 30px rgba(5, 58, 101, 0.08);
  }

  .public-quiz-progress-ring strong,
  .public-quiz-progress-ring span {
    position: relative;
    z-index: 1;
  }

  .public-quiz-progress-ring strong {
    color: #0b64d8;
    font-size: 2.25rem;
    line-height: 1;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
  }

  .public-quiz-progress-ring span {
    margin-top: 5px;
    color: #315c7b;
    font-size: 0.82rem;
    font-weight: 800;
  }

  .public-quiz-progress-ring.is-empty {
    background: conic-gradient(#7157ff 0%, #edf3f8 0);
  }

  .public-quiz-score-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    justify-content: center;
    width: 100%;
  }

  .public-quiz-score-legend span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #5d7d95;
    font-size: 0.88rem;
    font-weight: 750;
  }

  .public-quiz-score-legend i {
    width: 12px;
    height: 12px;
    border-radius: 8px;
    background: #d9e6f0;
  }

  .public-quiz-score-legend i.is-correct {
    background: #20a95c;
  }

  .public-quiz-score-legend i.is-incorrect {
    background: #ff5964;
  }

  .public-quiz-result-head {
    display: grid;
    gap: 12px;
  }

  .public-quiz-result-head h2,
  .public-quiz-result-head p {
    margin: 0;
  }

  .public-quiz-result-head h2 {
    color: #061d2f;
    font-size: clamp(1.8rem, 4vw, 3.6rem);
    line-height: 0.98;
    letter-spacing: -0.06em;
  }

  .public-quiz-result-head p {
    color: #5d7d95;
    font-size: 1.12rem;
    line-height: 1.5;
  }

  .public-quiz-result-metrics {
    margin: 0;
  }

  .public-quiz-review-list {
    display: grid;
    gap: 18px;
  }

  .public-quiz-review-card {
    display: grid;
    gap: 16px;
    padding: 24px;
    border-radius: 6px;
    background: #ffffff;
    border: 1px solid rgba(167, 203, 223, 0.72);
  }

  .public-quiz-review-card.is-correct {
    border-color: rgba(48, 172, 91, 0.36);
  }

  .public-quiz-review-card.is-incorrect {
    border-color: rgba(255, 89, 100, 0.34);
  }

  .public-quiz-review-heading {
    display: grid;
    gap: 8px;
  }

  .public-quiz-review-eyebrow {
    color: #061d2f;
    font-size: 1.05rem;
    font-weight: 900;
    line-height: 1.2;
  }

  .public-quiz-review-heading strong {
    color: #5d7d95;
    font-size: 1.08rem;
    font-weight: 500;
    line-height: 1.55;
  }

  .public-quiz-review-body {
    display: grid;
    gap: 12px;
  }

  .public-quiz-review-status {
    width: fit-content;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 0.92rem;
    font-weight: 900;
  }

  .public-quiz-review-status.is-correct {
    background: #e9f9ef;
    color: #237a3f;
  }

  .public-quiz-review-status.is-incorrect {
    background: #fff0f1;
    color: #c83742;
  }

  .public-quiz-review-line,
  .public-quiz-review-explanation {
    margin: 0;
    color: #5d7d95;
    font-size: 1rem;
    line-height: 1.55;
  }

  .public-quiz-review-line strong {
    display: block;
    color: #5d7d95;
    font-size: 1.02rem;
    font-weight: 900;
    line-height: 1.35;
  }

  .public-quiz-review-line span {
    display: block;
  }

  .public-quiz-review-explanation {
    padding-top: 2px;
  }

  .public-mini-metrics,
  .public-demo-summary,
  .public-demo-metrics,
  .public-pricing-grid,
  .public-proof-grid,
  .public-outcome-grid,
  .public-difference-grid,
  .public-steps-grid {
    display: grid;
    gap: 14px;
  }

  .public-mini-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .public-mini-metrics div,
  .public-demo-summary div,
  .public-demo-metric,
  .public-proof-card,
  .public-difference-card,
  .public-step-card,
  .public-outcome-card,
  .public-pricing-card {
    padding: 18px;
    border-radius: 6px;
    background: #f9fdff;
    border: 1px solid rgba(167, 203, 223, 0.56);
  }

  .public-mini-metrics strong,
  .public-demo-summary strong,
  .public-demo-metric strong {
    display: block;
    font-size: 1.65rem;
    font-weight: 900;
    letter-spacing: -0.05em;
  }

  .public-mini-metrics span,
  .public-demo-summary span,
  .public-demo-metric span,
  .public-proof-card p,
  .public-difference-card p,
  .public-step-card p,
  .public-outcome-card p,
  .public-pricing-card p {
    color: #5d7d95;
    line-height: 1.55;
  }

  .public-element-stack,
  .public-knowledge-list,
  .public-coverage-list,
  .public-faq-groups,
  .public-faq-list,
  .public-footer-links,
  .public-quiz-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .public-section,
  .public-final-cta {
    padding: 24px;
  }

  .public-difference-grid,
  .public-outcome-grid,
  .public-proof-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .public-difference-grid {
    gap: 18px;
  }

  .public-difference-card {
    padding: 24px;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.72);
    background: linear-gradient(180deg, rgba(250, 253, 255, 0.98), rgba(244, 250, 255, 0.98));
    box-shadow:
      0 16px 34px rgba(8, 32, 51, 0.06),
      inset 0 1px 0 rgba(255, 255, 255, 0.94);
  }

  .public-difference-card strong {
    font-size: 1.18rem;
    line-height: 1.2;
    letter-spacing: -0.035em;
  }

  .public-difference-card p {
    max-width: 22ch;
    font-size: 1rem;
    line-height: 1.6;
    color: #51718a;
  }

  .public-final-cta {
    text-align: center;
    background:
      radial-gradient(circle at top center, rgba(0, 106, 181, 0.09), transparent 28%),
      linear-gradient(180deg, rgba(255,255,255,0.98), rgba(242,249,255,0.98));
  }

  .public-final-cta > .public-chip,
  .public-final-cta > h2,
  .public-final-cta > p {
    margin-left: auto;
    margin-right: auto;
  }

  .public-final-cta > .public-chip {
    min-height: 30px;
    padding-inline: 12px;
  }

  .public-final-cta h2 {
    width: min(100%, 72%);
    line-height: 0.95;
  }

  .public-final-cta p {
    max-width: 40rem;
  }

  .public-final-cta .public-cta-row {
    justify-content: center;
    margin-top: 0;
  }

  .public-final-cta-reassurance {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 18px;
    color: #4e6d84;
    font-size: 0.96rem;
    font-weight: 700;
  }

  .public-final-cta-reassurance span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }

  .public-final-cta-reassurance span::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background: linear-gradient(135deg, #1268D6, #1BA6A6);
    box-shadow: 0 0 0 4px rgba(0, 106, 181, 0.08);
  }

  .public-final-cta-urgency {
    margin: 0;
    color: #17344e;
    font-size: clamp(1.02rem, 2vw, 1.18rem);
    font-weight: 800;
    letter-spacing: -0.02em;
  }

  .public-demo-page-hero,
  .public-demo-workflow,
  .public-demo-section,
  .public-demo-experience,
  .public-demo-final-cta {
    border: 1px solid rgba(167, 203, 223, 0.58);
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0 20px 55px rgba(6, 27, 77, 0.05);
  }

  .public-demo-page-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(420px, 1.22fr);
    gap: clamp(22px, 4vw, 46px);
    align-items: center;
    padding: clamp(22px, 3vw, 34px);
  }

  .public-demo-page-copy,
  .public-demo-workflow-head,
  .public-demo-experience-copy,
  .public-demo-final-cta > div {
    display: grid;
    gap: 16px;
  }

  .public-demo-page-copy h1 {
    margin: 0;
    max-width: 11ch;
    color: #07072c;
    font-size: clamp(2.24rem, 4.24vw, 3.56rem);
    font-weight: 880;
    letter-spacing: -0.055em;
    line-height: 0.96;
  }

  .public-demo-page-copy h1 span {
    color: #005ecb;
    text-decoration: underline;
    text-decoration-color: rgba(0, 94, 203, 0.46);
    text-decoration-thickness: 0.08em;
    text-underline-offset: 0.08em;
  }

  .public-demo-page-copy p,
  .public-demo-experience-copy p,
  .public-demo-final-cta p {
    margin: 0;
    color: #30476f;
    font-size: clamp(0.98rem, 1.45vw, 1.08rem);
    line-height: 1.48;
  }

  /* Public demo follows the standalone product-preview treatment. */
  .public-demo-page-hero {
    display: block;
    padding: clamp(64px, 8vw, 104px) 24px 32px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    text-align: center;
  }

  .public-demo-page-copy {
    width: min(100%, 1800px);
    margin: 0 auto;
    justify-items: center;
  }

  .public-demo-page-copy h1 {
    width: 100%;
    max-width: none;
    color: #0b1f4d;
    font-family: var(--font-marketing-editorial);
    font-size: clamp(3.1rem, 5.6vw, 6.25rem);
    font-weight: 400;
    letter-spacing: -0.018em;
    line-height: 0.98;
  }

  .public-demo-page-copy h1 span {
    color: #0b1f4d;
    font-style: italic;
    text-decoration: none;
  }

  .public-demo-page-copy p {
    max-width: 960px;
    color: #3a4256;
    font-size: clamp(1rem, 1.85vw, 1.16rem);
    line-height: 1.55;
  }

  @media (min-width: 1500px) {
    .public-demo-page-copy h1 {
      white-space: nowrap;
    }
  }

  .public-quiz-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .public-quiz-card {
    margin: 0;
    padding: 28px;
    border-radius: 6px;
    border: 1px solid rgba(167, 203, 223, 0.56);
    background: #ffffff;
  }

  .public-quiz-card strong {
    display: block;
    margin-top: 22px;
    color: #061d2f;
    font-size: 1.35rem;
    line-height: 1.35;
  }

  .public-quiz-card legend {
    padding: 0 8px;
    color: #0a4f95;
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .public-quiz-step-progress {
    width: 100%;
    height: 8px;
    overflow: hidden;
    border-radius: 8px;
    background: #e5eef6;
  }

  .public-quiz-step-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2572d8 0%, #005ecb 100%);
  }

  .public-quiz-option {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    border-radius: 5px;
    border: 1px solid rgba(167, 203, 223, 0.56);
    background: #ffffff;
    color: #061d2f;
    font-weight: 700;
    cursor: pointer;
  }

  .public-quiz-option:has(input:checked) {
    border-color: rgba(32, 169, 92, 0.62);
    background: #f2fff6;
  }

  .public-quiz-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .public-quiz-option-letter {
    display: grid;
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 8px;
    background: #f0f6ff;
    color: #0a4f95;
    font-size: 0.92rem;
    font-weight: 900;
  }

  .public-quiz-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: space-between;
  }

  .public-quiz-challenge-form[data-enhanced="true"] [data-quiz-step][hidden],
  .public-quiz-challenge-form[data-enhanced="true"] [data-quiz-prev][hidden],
  .public-quiz-challenge-form[data-enhanced="true"] [data-quiz-next][hidden],
  .public-quiz-challenge-form[data-enhanced="true"] [data-quiz-submit][hidden] {
    display: none;
  }

  .public-quiz-form-actions .button:disabled {
    opacity: 0.45;
    cursor: not-allowed;
  }

  .public-quiz-account-cta {
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: space-between;
    padding: 32px;
    border-radius: 7px;
    background: linear-gradient(135deg, #f7fbff 0%, #eef7ff 100%);
  }

  .public-quiz-account-cta h2,
  .public-quiz-account-cta p {
    margin: 0;
  }

  .public-quiz-account-cta h2 {
    color: #061d2f;
    font-size: clamp(1.44rem, 2.4vw, 2.16rem);
    line-height: 1.05;
    letter-spacing: -0.04em;
  }

  .public-quiz-account-cta p {
    margin-top: 8px;
    color: #5d7d95;
    line-height: 1.55;
  }

  .public-features-page {
    display: grid;
    gap: 34px;
    color: #071d35;
  }

  .public-features-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.94fr) minmax(360px, 1.06fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    min-height: 630px;
    margin: -10px calc(50% - 50vw) 0;
    padding: clamp(48px, 7vw, 92px) max(32px, calc((100vw - 1180px) / 2));
    background:
      radial-gradient(circle at 96% 8%, rgba(36, 111, 221, 0.12), transparent 28%),
      radial-gradient(circle at 56% 100%, rgba(36, 111, 221, 0.12), transparent 32%),
      linear-gradient(135deg, #ffffff 0%, #fbfdff 52%, #eef6ff 100%);
    overflow: hidden;
  }

  .public-features-hero-copy {
    display: grid;
    gap: 22px;
    max-width: 550px;
  }

  .public-features-hero-copy h1 {
    margin: 0;
    font-size: clamp(2.36rem, 4.56vw, 4rem);
    line-height: 0.98;
    letter-spacing: -0.075em;
  }

  .public-features-hero-copy p {
    margin: 0;
    max-width: 510px;
    color: #334667;
    font-size: clamp(1.04rem, 1.55vw, 1.22rem);
    line-height: 1.6;
  }

  .public-features-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
  }

  .public-features-safe-note {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #334667;
    font-weight: 700;
  }

  .public-features-safe-note::before,
  .public-features-final-cta > span::before {
    content: "";
    width: 28px;
    height: 28px;
    border-radius: 13%;
    background:
      linear-gradient(#ffffff, #ffffff) padding-box,
      linear-gradient(135deg, #1477df, #dff0ff) border-box;
    border: 1px solid transparent;
    box-shadow: inset 0 0 0 7px #eef6ff;
  }

  .public-features-dashboard {
    display: grid;
    gap: 0;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(167, 203, 223, 0.72);
    border-radius: 6px;
    box-shadow: 0 26px 70px rgba(17, 75, 132, 0.16);
    overflow: hidden;
  }

  .public-features-dashboard-top,
  .public-features-list-head,
  .public-features-priority-list article,
  .public-features-priority-row,
  .public-features-next-action,
  .public-features-readiness li {
    display: flex;
    align-items: center;
  }

  .public-features-dashboard-top {
    gap: 16px;
    padding: 28px 28px 18px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.42);
  }

  .public-features-dashboard-top strong,
  .public-features-dashboard-top span {
    display: block;
  }

  .public-features-dashboard-top strong {
    font-size: 1.28rem;
  }

  .public-features-dashboard-top div span {
    color: #334667;
    font-weight: 700;
  }

  .public-features-cap-icon,
  .public-features-bell {
    display: grid;
    width: 60px;
    height: 60px;
    place-items: center;
    border-radius: 5px;
    background:
      radial-gradient(circle at 32% 28%, #ffffff 0 18%, transparent 19%),
      linear-gradient(145deg, #eaf4ff 0%, #dcecff 100%);
    color: #1268d8;
    box-shadow:
      inset 0 0 0 1px rgba(167, 203, 223, 0.42),
      0 12px 26px rgba(18, 104, 216, 0.12);
  }

  .public-features-cap-icon svg,
  .public-features-bell svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 3.4;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .public-features-bell {
    margin-left: auto;
    width: 50px;
    height: 50px;
    border-radius: 13%;
    background:
      radial-gradient(circle at 34% 28%, #ffffff 0 18%, transparent 19%),
      linear-gradient(145deg, #ffffff 0%, #edf6ff 100%);
    border: 1px solid rgba(167, 203, 223, 0.62);
    box-shadow: 0 10px 24px rgba(18, 104, 216, 0.1);
  }

  .public-features-bell svg {
    width: 30px;
    height: 30px;
    stroke-width: 3.2;
  }

  .public-features-readiness {
    display: grid;
    grid-template-columns: 104px 170px minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    padding: 24px 28px 28px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.42);
  }

  .public-features-readiness > span {
    align-self: start;
    font-weight: 900;
  }

  .public-features-ring {
    display: grid;
    width: 154px;
    height: 154px;
    place-items: center;
    align-content: center;
    border-radius: 13%;
    background:
      radial-gradient(circle, #ffffff 0 54%, transparent 55%),
      conic-gradient(#1BA6A6 0 74%, #ffad14 74% 92%, #f14b4b 92% 100%);
  }

  .public-features-ring strong {
    font-size: 2.8rem;
    line-height: 1;
    letter-spacing: -0.06em;
  }

  .public-features-ring small {
    color: #334667;
    font-weight: 900;
  }

  .public-features-readiness ul {
    display: grid;
    gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .public-features-readiness li {
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.32);
  }

  .public-features-readiness li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .public-features-readiness li span {
    width: 12px;
    height: 12px;
    border-radius: 13%;
  }

  .public-features-readiness li strong {
    flex: 1;
  }

  .public-features-readiness li em {
    color: #1268d8;
    font-style: normal;
    font-weight: 900;
  }

  .public-features-readiness .is-ready {
    background: #1BA6A6;
  }

  .public-features-readiness .is-uncertain {
    background: #ffad14;
  }

  .public-features-readiness .is-weak {
    background: #f14b4b;
  }

  .public-features-priority-list {
    display: grid;
  }

  .public-features-list-head {
    justify-content: space-between;
    padding: 16px 28px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.42);
  }

  .public-features-list-head a,
  .public-features-next-action strong {
    color: #0c66df;
    font-weight: 900;
    text-decoration: none;
  }

  .public-features-priority-list article,
  .public-features-priority-row {
    gap: 12px;
    padding: 12px 28px;
    border-bottom: 1px solid rgba(167, 203, 223, 0.32);
    color: inherit;
    text-decoration: none;
  }

  .public-features-priority-list article b,
  .public-features-priority-row b {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 2px;
    background: #eef6ff;
    color: #426380;
  }

  .public-features-priority-list article strong,
  .public-features-priority-row strong {
    flex: 1;
    min-width: 0;
    font-size: 0.94rem;
  }

  .public-features-priority-list article span,
  .public-features-priority-row span {
    padding: 5px 10px;
    border-radius: 8px;
    background: #ffe7e7;
    color: #d43131;
    font-size: 0.78rem;
    font-weight: 900;
  }

  .public-features-priority-list article .is-warn,
  .public-features-priority-row .is-warn {
    background: #fff2d6;
    color: #bd7600;
  }

  .public-features-priority-list article .is-good,
  .public-features-priority-row .is-good {
    background: #e3f8e9;
    color: #168147;
  }

  .public-features-priority-list article em,
  .public-features-priority-row em {
    color: #6b8299;
    font-size: 1.4rem;
    font-style: normal;
  }

  .public-features-next-action {
    gap: 18px;
    padding: 18px 28px 24px;
    color: inherit;
    text-decoration: none;
  }

  .public-features-next-action span {
    color: #334667;
    font-weight: 900;
  }

  .public-features-section,
  .public-features-switch-section,
  .public-features-flow-section {
    padding: clamp(28px, 4vw, 48px);
    border: 1px solid rgba(167, 203, 223, 0.45);
    border-radius: 6px;
    background:
      radial-gradient(circle at 92% 4%, rgba(36, 111, 221, 0.08), transparent 28%),
      #ffffff;
  }

  .public-features-section-head {
    display: grid;
    gap: 8px;
    justify-items: center;
    margin-bottom: 26px;
    text-align: center;
  }

  .public-features-section-head h2 {
    margin: 0;
    max-width: 760px;
    font-size: clamp(1.44rem, 2.4vw, 2rem);
    line-height: 1.08;
    letter-spacing: -0.055em;
  }

  .public-features-question-section {
    padding: clamp(18px, 3vw, 28px) 0;
  }

  .public-features-question-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: clamp(12px, 1.5vw, 18px);
  }

  .public-features-question-grid article {
    display: grid;
    gap: 20px;
    justify-items: center;
    min-width: 0;
    min-height: 356px;
    padding: clamp(22px, 2.5vw, 32px) clamp(16px, 1.8vw, 24px);
    border: 1px solid rgba(167, 203, 223, 0.48);
    border-radius: 4px;
    background:
      radial-gradient(circle at 50% 28%, rgba(12, 102, 223, 0.055), transparent 42%),
      #ffffff;
    box-shadow: 0 18px 46px rgba(17, 75, 132, 0.06);
    text-align: center;
  }

  .public-features-question-icon {
    display: grid;
    width: clamp(92px, 7.8vw, 118px);
    aspect-ratio: 1;
    place-items: center;
    border: 1px solid rgba(167, 203, 223, 0.5);
    border-radius: 13%;
    background:
      radial-gradient(circle at 50% 46%, #ffffff 0 38%, transparent 39%),
      linear-gradient(135deg, #f7fbff, #edf5ff);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.92),
      0 14px 26px rgba(17, 75, 132, 0.08);
    color: #0c66df;
  }

  .public-features-question-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .public-features-question-grid strong {
    max-width: 10.5ch;
    color: #071d35;
    font-size: clamp(1.2rem, 1.7vw, 1.48rem);
    line-height: 1.18;
    letter-spacing: -0.045em;
  }

  .public-features-question-grid i {
    width: 54px;
    height: 4px;
    border-radius: 8px;
    background: #dcecff;
  }

  .public-features-question-grid p {
    margin: 0;
    color: #334667;
    font-size: clamp(0.98rem, 1.2vw, 1.06rem);
    line-height: 1.62;
  }

  .public-features-card-grid,
  .public-features-stick-grid {
    display: grid;
    gap: 16px;
  }

  .public-features-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .public-features-stick-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .public-features-card-grid article,
  .public-features-stick-grid article,
  .public-features-vs-grid article,
  .public-features-flow-grid article {
    display: grid;
    gap: 14px;
    min-width: 0;
    padding: 24px;
    border: 1px solid rgba(167, 203, 223, 0.56);
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 40px rgba(17, 75, 132, 0.06);
  }

  .public-features-round-icon {
    display: grid;
    width: clamp(82px, 6.2vw, 104px);
    height: clamp(82px, 6.2vw, 104px);
    place-items: center;
    border-radius: 13%;
    background:
      radial-gradient(circle at 36% 30%, #ffffff 0 18%, transparent 19%),
      linear-gradient(145deg, #eef6ff 0%, #e6f2ff 100%);
    color: #1268d8;
    box-shadow:
      inset 0 0 0 1px rgba(167, 203, 223, 0.32),
      0 14px 28px rgba(17, 75, 132, 0.08);
  }

  .public-features-round-icon svg {
    display: block;
    width: 58%;
    height: 58%;
    fill: none;
    stroke: currentColor;
    stroke-width: 3.4;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .public-features-round-icon svg rect,
  .public-features-round-icon svg circle,
  .public-features-round-icon svg path {
    vector-effect: non-scaling-stroke;
  }

  .public-features-round-icon svg rect[width="9"] {
    fill: currentColor;
    stroke: none;
  }

  .public-features-stick-icon {
    width: clamp(94px, 8vw, 124px);
    height: auto;
    aspect-ratio: 258 / 280;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 0;
    box-shadow: none;
  }

  .public-features-stick-icon img {
    display: block;
    width: 100%;
    height: auto;
  }

  .public-features-card-grid strong,
  .public-features-stick-grid strong {
    font-size: 1.24rem;
    line-height: 1.15;
  }

  .public-features-card-grid p,
  .public-features-stick-grid p {
    margin: 0;
    color: #334667;
    line-height: 1.52;
  }

  .public-features-vs-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0;
    align-items: center;
    max-width: 1040px;
    margin: 0 auto;
  }

  .public-features-vs-grid > span {
    display: grid;
    width: 64px;
    height: 64px;
    place-items: center;
    border-radius: 13%;
    background: #ffffff;
    border: 1px solid rgba(167, 203, 223, 0.56);
    box-shadow: 0 14px 32px rgba(17, 75, 132, 0.08);
    color: #071d35;
    font-weight: 900;
    z-index: 1;
  }

  .public-features-vs-grid article {
    padding: 28px 34px;
  }

  .public-features-vs-grid .is-before {
    background: linear-gradient(135deg, #fff9f9, #fffefe);
    border-color: rgba(241, 75, 75, 0.22);
  }

  .public-features-vs-grid .is-after {
    background: linear-gradient(135deg, #f8fff9, #fffefe);
    border-color: rgba(27, 166, 166, 0.24);
  }

  .public-features-vs-grid h3 {
    margin: 0;
    color: #d43131;
    font-size: 1.34rem;
  }

  .public-features-vs-grid .is-after h3 {
    color: #168147;
  }

  .public-features-vs-grid ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    color: #071d35;
    font-weight: 700;
  }

  .public-features-vs-grid li {
    display: flex;
    gap: 10px;
    align-items: center;
  }

  .public-features-vs-grid li::before {
    content: "x";
    display: grid;
    width: 18px;
    height: 18px;
    place-items: center;
    border-radius: 13%;
    border: 1px solid #f14b4b;
    color: #f14b4b;
    font-size: 0.72rem;
    font-weight: 900;
  }

  .public-features-vs-grid .is-after li::before {
    content: "✓";
    background: #1BA6A6;
    border-color: #1BA6A6;
    color: #ffffff;
    font-size: 0.76rem;
    line-height: 1;
  }

  .public-features-flow-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 16px;
    align-items: center;
  }

  .public-features-flow-grid article {
    justify-items: center;
    text-align: center;
    box-shadow: none;
  }

  .public-features-flow-icon {
    display: grid;
    width: clamp(86px, 7vw, 108px);
    aspect-ratio: 298 / 308;
    place-items: center;
  }

  .public-features-flow-icon img {
    display: block;
    width: 100%;
    height: auto;
  }

  .public-features-flow-grid b {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 13%;
    background: #1268d8;
    color: #ffffff;
    font-size: 0.9rem;
  }

  .public-features-flow-grid em {
    color: #537190;
    font-size: 2rem;
    font-style: normal;
  }

  .public-legal-shell {
    width: 100%;
    border: 1px solid rgba(167, 203, 223, 0.72);
    border-radius: 5px;
    background: #ffffff;
    font: inherit;
    color: #082033;
  }

  .public-legal-shell {
    padding: clamp(24px, 5vw, 64px);
    overflow: hidden;
  }

  .public-legal-shell h1,
  .public-legal-shell h2 {
    color: var(--ink);
    letter-spacing: -0.035em;
  }

  .public-legal-shell h1 {
    margin: 0 0 24px;
    font-size: clamp(1.8rem, 3vw, 2.8rem);
  }

  .public-legal-shell h2 {
    margin: 38px 0 14px;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
  }

  .public-legal-shell p {
    margin: 0 0 12px;
    color: #3f5872;
    line-height: 1.72;
  }

  .public-legal-shell a {
    color: var(--blue);
    font-weight: 800;
  }

  .public-element-share-body {
    background:
      linear-gradient(90deg, rgba(8, 32, 51, 0.018) 1px, transparent 1px),
      linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
    background-size: 36px 36px, auto;
  }

  .public-element-share-shell {
    width: min(100%, 1400px);
    padding-bottom: clamp(34px, 6vw, 74px);
  }

  .public-element-share-topbar {
    margin-bottom: clamp(34px, 5vw, 62px);
    padding-inline: clamp(16px, 3vw, 34px);
    padding-block: 8px;
  }

  .public-element-share-topbar .brand-logo {
    height: clamp(38px, 5vw, 60px);
    max-width: clamp(92px, 13vw, 148px);
  }

  .public-element-share-page {
    align-items: center;
    gap: clamp(28px, 4vw, 46px);
    width: 100%;
  }

  .public-element-open-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 42px;
    padding: 0 20px;
    border: 1px solid rgba(6, 123, 55, 0.46);
    border-radius: 2px;
    background: linear-gradient(135deg, #06883a 0%, #05a54a 100%);
    color: #ffffff;
    box-shadow: 0 16px 34px rgba(7, 136, 58, 0.2);
    font-size: 1rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
  }

  .public-element-open-button svg {
    width: 19px;
    height: 19px;
  }

  .public-element-share-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(18px, 4vw, 44px);
    align-items: center;
    width: min(100%, 1040px);
    color: #071d49;
  }

  .public-element-share-intro-primary,
  .public-element-share-context {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    min-width: 0;
  }

  .public-element-share-intro-primary > span,
  .public-element-share-context > span {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    color: #07883a;
  }

  .public-element-share-context > span {
    color: #07883a;
  }

  .public-element-share-intro svg {
    width: 46px;
    height: 46px;
  }

  .public-element-share-intro strong {
    display: block;
    font-size: 1.08rem;
    font-weight: 760;
  }

  .public-element-share-intro p {
    margin: 5px 0 0;
    color: #415676;
    font-size: 1.02rem;
    font-weight: 500;
  }

  .public-element-share-context {
    justify-self: end;
    padding-left: clamp(18px, 4vw, 42px);
    border-left: 1px solid rgba(167, 203, 223, 0.62);
  }

  .public-element-share-context p {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 9px;
    margin-top: 5px;
  }

  .public-element-share-context b {
    color: #071d49;
    font-weight: 850;
  }

  .public-element-share-context b:first-child {
    color: #07883a;
  }

  .public-element-share-context em {
    flex-basis: 100%;
    color: #415676;
    font-style: normal;
    font-weight: 560;
  }

  .public-element-share-card {
    display: grid;
    gap: clamp(20px, 3vw, 30px);
    width: min(100%, 1040px);
    padding: clamp(28px, 4vw, 54px);
    border: 1px solid #d8e5ee;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 26px 70px rgba(20, 45, 72, 0.08);
  }

  .public-element-dynamic-card .study-card {
    gap: 22px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .public-element-dynamic-card .study-card-prediction {
    display: none;
  }

  .public-element-dynamic-card .study-card-heading strong {
    max-width: 860px;
    color: #071d49;
    font-size: 2.75rem;
    line-height: 1.08;
    letter-spacing: 0;
  }

  .public-element-dynamic-card .study-card-content-shell {
    width: 100%;
    margin: 0;
    padding: clamp(20px, 3vw, 30px) 0 0;
    border-top: 1px solid #e1eaf1;
    border-bottom: 0;
    background: transparent;
  }

  .public-element-dynamic-card .element-content {
    color: #263956;
    font-size: 1.12rem;
    line-height: 1.72;
  }

  .public-element-action-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid #e1eaf1;
    border-bottom: 1px solid #e1eaf1;
  }

  .public-element-action-row span,
  .public-element-action-row a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 72px;
    color: #071d49;
    font-size: 1.02rem;
    font-weight: 780;
    text-decoration: none;
  }

  .public-element-action-row span + span,
  .public-element-action-row a {
    border-left: 1px solid #e1eaf1;
  }

  .public-element-action-row i {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    color: #4d28d9;
    font-style: normal;
  }

  .public-element-action-row span:first-child i {
    color: #07883a;
  }

  .public-element-action-row svg {
    width: 28px;
    height: 28px;
  }

  .public-element-save-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 22px;
    align-items: center;
    padding: 22px 24px;
    border: 1px solid #d8e9e1;
    border-radius: 4px;
    background: linear-gradient(135deg, rgba(239, 255, 245, 0.86) 0%, #ffffff 100%);
  }

  .public-element-save-icon {
    display: grid;
    place-items: center;
    width: 68px;
    height: 68px;
    border-radius: 8px;
    background: #e5f8ed;
    color: #07883a;
  }

  .public-element-save-icon svg {
    width: 38px;
    height: 38px;
  }

  .public-element-save-card h2,
  .public-element-save-card p {
    margin: 0;
  }

  .public-element-save-card h2 {
    color: #071d49;
    font-size: 1.25rem;
    letter-spacing: 0;
  }

  .public-element-save-card p {
    margin-top: 6px;
    color: #415676;
    font-size: 1.02rem;
    line-height: 1.48;
  }

  .public-coverage-row strong,
  .public-proof-card strong,
  .public-difference-card strong,
  .public-step-card strong,
  .public-outcome-card strong,
  .public-pricing-card strong {
    display: block;
    font-size: 1.08rem;
    line-height: 1.3;
  }

  .public-proof-card,
  .public-difference-card,
  .public-outcome-card,
  .public-pricing-card,
  .public-step-card {
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
  }

  .public-proof-card:hover,
  .public-difference-card:hover,
  .public-outcome-card:hover,
  .public-pricing-card:hover,
  .public-step-card:hover {
    transform: translateY(-3px);
    border-color: rgba(0, 106, 181, 0.22);
    box-shadow: 0 18px 34px rgba(8, 32, 51, 0.08);
  }

  .public-footer {
    width: 100vw;
    margin: 6px calc(50% - 50vw) 0;
    padding: 32px 0 18px;
    background: #ffffff;
    border-top: 1px solid rgba(167, 203, 223, 0.5);
  }

  .public-footer-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, 2.45fr);
    gap: clamp(24px, 4vw, 64px);
    align-items: start;
    width: min(1380px, calc(100% - 28px));
    margin: 0 auto;
    padding: clamp(28px, 4vw, 42px);
    border-radius: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  .public-footer-brand {
    max-width: 470px;
  }

  .public-footer-link-columns {
    display: grid;
    grid-template-columns: repeat(4, minmax(120px, 1fr));
    gap: clamp(18px, 2.6vw, 36px);
    min-width: 0;
  }

  .public-footer-chip {
    background: #e6f3ff;
    color: #0b4f88;
  }

  .public-footer-column {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
  }

  .public-footer-brand h2 {
    margin: 12px 0 10px;
    font-size: clamp(1.44rem, 3.2vw, 2.08rem);
    line-height: 0.98;
    letter-spacing: -0.05em;
  }

  .public-footer-legal {
    grid-column: 1 / -1;
    margin: 2px 0 0;
    color: #6f8797;
    font-size: 0.92rem;
    line-height: 1.5;
  }

  .public-footer-brand p,
  .public-footer-links a {
    color: #5d7d95;
  }

  .public-footer-links a {
    text-decoration: none;
    font-size: clamp(1.05rem, 2vw, 1.2rem);
    line-height: 1.16;
    transition:
      color 160ms ease,
      transform 160ms ease;
  }

  .public-footer-links a:hover,
  .public-footer-links a:focus-visible {
    color: #082033;
    transform: translateX(2px);
  }

  @media (prefers-reduced-motion: reduce) {
    .public-home-premium-nav-item,
    .public-home-premium-nav-indicator,
    .public-home-premium-panel,
    .public-home-premium-carousel-slide,
    .public-home-premium-carousel-dot {
      animation: none;
      transition: none;
    }
  }

 @media (max-width: 1080px) {

    .public-home-premium-shell {
      grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
    }

    .public-home-premium-panel {
      grid-template-columns: 1fr;
    }

    .public-home-premium-panel h2 {
      max-width: none;
    }

    .public-home-premium-carousel-frame {
      min-height: 420px;
    }

    .public-hero,
    .public-demo-surface,
    .public-class-hero {
      grid-template-columns: 1fr;
    }

    .public-class-landing-hero,
    .public-class-check-hero,
    .public-class-check-card,
    .public-class-sprint-offer,
    .public-class-preview-grid,
    .public-shared-check-hero,
    .public-shared-element-preview-card,
    .public-shared-fast-check-grid,
    .public-shared-element-hero,
    .public-shared-element-final-cta,
    .public-class-inside-grid {
      grid-template-columns: 1fr;
    }

    .public-element-save-card {
      grid-template-columns: auto minmax(0, 1fr);
    }

    .public-element-save-card .public-element-open-button {
      grid-column: 1 / -1;
      width: 100%;
    }

    .public-class-check-explainer {
      border-left: 0;
      border-top: 1px solid #d8e4ef;
    }

    .public-class-minute-card,
    .public-class-study-proof {
      grid-template-columns: 1fr;
    }

    .public-class-minute-card article {
      border-right: 0;
      border-bottom: 1px solid #d8e4ef;
    }

    .public-class-minute-card article:last-child {
      border-bottom: 0;
    }

    .public-class-study-proof > div {
      padding-right: 0;
    }

    .public-class-study-proof article {
      border-left: 0;
      border-top: 1px solid #f1dfc4;
      padding: 18px 0 0;
    }

    .public-class-minute-button {
      margin-top: 0;
    }

    .public-shared-element-final-cta .public-cta-row {
      justify-content: flex-start;
    }

    .public-class-stat-grid,
    .public-class-coverage-grid,
    .public-shared-inside-grid,
    .public-shared-benefit-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-features-hero {
      grid-template-columns: 1fr;
      min-height: auto;
      padding-top: 54px;
      padding-bottom: 54px;
    }

    .public-features-hero-copy {
      max-width: 760px;
    }

    .public-features-question-grid,
    .public-features-card-grid,
    .public-features-stick-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-features-vs-grid,
    .public-features-flow-grid {
      grid-template-columns: 1fr;
    }

    .public-features-vs-grid > span,
    .public-features-flow-grid > em {
      justify-self: center;
    }

    .public-demo-page-hero,
    .public-demo-workflow-grid,
    .public-demo-experience,
    .public-demo-final-cta {
      grid-template-columns: 1fr;
    }

    .public-priority-hero {
      grid-template-columns: 1fr;
    }

    .public-how-hero,
    .public-how-final-cta {
      grid-template-columns: 1fr;
    }

    .public-understand-hero,
    .public-understand-final-cta,
    .public-understand-portal-grid {
      grid-template-columns: 1fr;
    }

    .public-exact-hero,
    .public-exact-final-cta {
      grid-template-columns: 1fr;
    }

    .public-exact-matters-grid,
    .public-exact-flow-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-exact-proof-grid {
      grid-template-columns: 1fr;
    }

    .public-exact-matter-card:nth-child(2n),
    .public-exact-flow-card:nth-child(2n) {
      border-right: 0;
    }

    .public-exact-matter-card:nth-child(n + 3),
    .public-exact-flow-card:nth-child(n + 3) {
      border-top: 1px solid rgba(167, 203, 223, 0.42);
      padding-top: 24px;
    }

    .public-exact-flow-arrow {
      display: none;
    }

    .public-understand-steps-grid,
    .public-understand-build-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-understand-step-card:nth-child(2n),
    .public-understand-build-card:nth-child(2n) {
      border-right: 0;
    }

    .public-understand-step-card:nth-child(n + 3),
    .public-understand-build-card:nth-child(n + 3) {
      border-top: 1px solid rgba(167, 203, 223, 0.42);
      padding-top: 24px;
    }

    .public-understand-step-arrow {
      display: none;
    }

    .public-how-steps-grid,
    .public-how-updates-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-how-focus-grid {
      grid-template-columns: 1fr;
    }

    .public-how-step-card:nth-child(2n) {
      border-right: 0;
    }

    .public-how-step-card:nth-child(n + 3) {
      border-top: 1px solid rgba(167, 203, 223, 0.42);
      padding-top: 24px;
    }

    .public-how-step-arrow {
      display: none;
    }

    .public-priority-hero-copy h1 {
      max-width: 13ch;
    }

    .public-impact-card-grid {
      grid-template-columns: 1fr;
    }

    .public-impact-card {
      min-height: 0;
    }

    .public-study-shift-grid {
      grid-template-columns: 1fr;
    }

    .public-study-shift-card {
      min-height: 0;
    }

    .public-study-shift-arrow {
      justify-self: center;
      transform: rotate(90deg);
    }

    .public-not-flashcards-grid {
      grid-template-columns: 1fr;
    }

    .public-not-flashcards-card {
      min-height: 0;
    }

    .public-stand-hero,
    .public-stand-heatmap-section,
    .public-stand-progress-section,
    .public-stand-final-cta {
      grid-template-columns: 1fr;
    }

    .public-stand-clarity-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .public-stand-clarity-card:nth-child(2n) {
      border-right: 0;
    }

    .public-stand-clarity-card:nth-child(n + 3) {
      border-top: 1px solid rgba(167, 203, 223, 0.45);
      padding-top: 24px;
    }

    .public-home-marquee,
    .public-home-editorial-grid,
    .public-home-mosaic,
    .public-home-conversion-panel {
      grid-template-columns: 1fr;
    }

    .public-home-hero {
      min-height: auto;
      padding: 32px;
    }

    .public-mockup,
    .public-knowledge-grid,
    .public-footer-grid {
      grid-template-columns: 1fr;
    }

    .public-pricing-grid,
    .public-pricing-value-grid,
    .public-contact-panel,
    .public-support-grid,
    .public-difference-grid,
    .public-outcome-grid,
    .public-proof-grid,
    .public-about-subject-cloud,
    .public-about-final-grid {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 760px) {
    .public-element-share-shell {
      width: min(100%, calc(100% - 20px));
    }

    .public-element-share-topbar {
      margin-bottom: 26px;
      padding-inline: 0;
      padding-block: 6px;
    }

    .public-element-share-topbar .brand-logo {
      height: 34px;
      max-width: 88px;
    }

    .public-element-open-button {
      min-height: 38px;
      padding: 0 14px;
      font-size: 0.9rem;
    }

    .public-element-share-intro {
      grid-template-columns: 1fr;
      justify-items: center;
      text-align: center;
    }

    .public-element-share-intro-primary,
    .public-element-share-context {
      grid-template-columns: 1fr;
      justify-items: center;
      gap: 10px;
    }

    .public-element-share-context {
      justify-self: center;
      padding-left: 0;
      border-left: 0;
    }

    .public-element-share-context p {
      justify-content: center;
    }

    .public-element-share-card {
      padding: 24px 18px;
      border-radius: 4px;
    }

    .public-element-dynamic-card .study-card-heading strong {
      font-size: 2rem;
    }

    .public-element-action-row {
      grid-template-columns: 1fr 1fr;
    }

    .public-element-action-row span,
    .public-element-action-row a {
      min-height: 62px;
      justify-content: flex-start;
      padding: 0 12px;
    }

    .public-element-action-row span:nth-child(3) {
      border-left: 0;
      border-top: 1px solid #e1eaf1;
    }

    .public-element-action-row a {
      border-top: 1px solid #e1eaf1;
    }

    .public-element-save-card {
      grid-template-columns: 1fr;
      justify-items: center;
      text-align: center;
    }

    .public-class-landing-hero,
    .public-class-check-page,
    .public-shared-check-page,
    .public-shared-element-hero,
    .public-shared-fast-check,
    .public-class-band,
    .public-class-sprint-offer,
    .public-class-final-cta,
    .public-shared-section,
    .public-shared-element-final-cta {
      padding: 24px 18px;
    }

    .public-class-check-page {
      gap: 20px;
    }

    .public-class-seo-page {
      gap: 22px;
      padding: 18px 0 52px;
    }

    .public-class-seo-hero,
    .public-class-seo-section,
    .public-class-seo-plan,
    .public-class-seo-grid {
      width: min(100%, calc(100% - 24px));
    }

    .public-class-seo-hero h1 {
      font-size: clamp(2.05rem, 12vw, 3.25rem);
      line-height: 1;
    }

    .public-class-seo-actions,
    .public-class-seo-actions .button,
    .public-class-seo-plan .button {
      width: 100%;
    }

    .public-class-seo-actions,
    .public-class-seo-grid,
    .public-class-seo-plan {
      grid-template-columns: 1fr;
    }

    .public-class-seo-panel,
    .public-class-seo-problem,
    .public-class-seo-answer,
    .public-class-seo-plan {
      border-radius: 2px;
    }

    .public-class-seo-problem {
      grid-template-columns: 1fr;
    }

    .public-class-seo-topic-list li,
    .public-class-seo-mistakes li {
      align-items: flex-start;
      flex-direction: column;
      gap: 4px;
    }

    .public-class-seo-topic-list span {
      white-space: normal;
    }

    .public-class-landing-hero .public-hero-copy h1,
    .public-class-check-copy h1,
    .public-shared-element-hero .public-hero-copy h1 {
      max-width: none;
      font-size: clamp(2.32rem, 11.2vw, 3.52rem);
    }

    .public-class-check-actions,
    .public-class-check-actions .button,
    .public-class-sprint-input-row button,
    .public-shared-final-actions,
    .public-shared-final-actions .button,
    .public-class-landing-hero .public-cta-row,
    .public-class-landing-hero .public-cta-button,
    .public-class-final-cta .public-cta-row,
    .public-class-final-cta .public-cta-button,
    .public-shared-element-hero .public-cta-row,
    .public-shared-element-hero .public-cta-button,
    .public-shared-element-final-cta .public-cta-row,
    .public-shared-element-final-cta .public-cta-button {
      width: 100%;
    }

    .public-class-check-actions,
    .public-class-sprint-input-row,
    .public-class-landing-hero .public-cta-row,
    .public-class-final-cta .public-cta-row,
    .public-shared-element-hero .public-cta-row,
    .public-shared-element-final-cta .public-cta-row {
      display: grid;
      grid-template-columns: 1fr;
    }

    .public-class-check-card {
      border-radius: 4px;
    }

    .public-class-check-question {
      grid-template-columns: 1fr;
      gap: 14px;
      padding: 22px 18px;
    }

    .public-class-check-options {
      padding: 0 18px 18px;
    }

    .public-class-check-options label {
      grid-template-columns: 24px minmax(0, 1fr) 26px;
      min-height: 54px;
    }

    .public-class-check-explainer {
      padding: 18px;
    }

    .public-class-preview-flow > div,
    .public-class-result-grid {
      grid-template-columns: 1fr;
    }

    .public-class-preview-flow i {
      display: none;
    }

    .public-class-preview-flow,
    .public-class-quick-result {
      padding: 20px 18px;
    }

    .public-shared-element-preview-card {
      padding: 20px;
    }

    .public-shared-availability-card h2 {
      margin-left: 0;
    }

    .public-shared-element-diagram,
    .public-shared-fast-check-grid aside {
      padding: 18px;
    }

    .public-shared-element-comparison div {
      grid-template-columns: 1fr;
    }

    .public-shared-element-comparison i {
      display: none;
    }

    .public-shared-fast-check-grid .public-class-check-card {
      grid-template-columns: 1fr;
    }

    .public-shared-element-formulas,
    .public-shared-inside-grid,
    .public-shared-benefit-grid {
      grid-template-columns: 1fr;
    }

    .public-home-premium-hero {
      gap: 0;
    }

    .public-features-page {
      gap: 20px;
    }

    .public-features-hero {
      padding: 34px 18px;
    }

    .public-features-actions,
    .public-features-actions .public-cta-button {
      width: 100%;
    }

    .public-features-actions {
      display: grid;
      grid-template-columns: 1fr;
    }

    .public-features-dashboard-top,
    .public-features-readiness,
    .public-features-list-head,
    .public-features-priority-list article,
    .public-features-priority-row,
    .public-features-next-action {
      padding-left: 18px;
      padding-right: 18px;
    }

    .public-features-readiness {
      grid-template-columns: 1fr;
      justify-items: center;
      text-align: center;
    }

    .public-features-readiness > span {
      justify-self: start;
    }

    .public-features-ring {
      width: 132px;
      height: 132px;
    }

    .public-features-priority-list article,
    .public-features-priority-row {
      align-items: flex-start;
      flex-wrap: wrap;
    }

    .public-features-priority-list article strong,
    .public-features-priority-row strong {
      flex-basis: calc(100% - 44px);
    }

    .public-features-section,
    .public-features-switch-section,
    .public-features-flow-section,
    .public-features-final-cta {
      padding: 24px 18px;
      border-radius: 5px;
    }

    .public-features-question-grid,
    .public-features-card-grid,
    .public-features-stick-grid {
      grid-template-columns: 1fr;
    }

    .public-features-question-section {
      padding: 0;
    }

    .public-features-question-grid article {
      min-height: auto;
      padding: 24px 18px;
    }

    .public-features-vs-grid > span,
    .public-features-flow-grid > em {
      display: none;
    }

    .public-priority-hero {
      padding: 28px 18px;
      border-radius: 5px;
    }

    .public-demo-page-hero,
    .public-demo-workflow,
    .public-demo-section,
    .public-demo-experience,
    .public-demo-final-cta {
      padding: 24px 18px;
      border-radius: 5px;
    }

    .public-demo-page-copy h1,
    .public-demo-workflow-head h2,
    .public-demo-experience-copy h2,
    .public-demo-final-cta h2 {
      max-width: none;
      font-size: clamp(1.88rem, 9.6vw, 2.76rem);
    }

    .public-priority-hero::after {
      width: 82vw;
      opacity: 0.7;
    }

    .public-priority-hero-copy h1 {
      font-size: clamp(1.88rem, 9.6vw, 2.76rem);
    }

    .public-priority-hero .public-cta-row {
      gap: 10px;
    }

    .public-priority-hero .public-cta-button {
      width: 100%;
      min-width: 0;
    }

    .public-how-hero,
    .public-how-section,
    .public-how-final-cta {
      padding: 24px 18px;
      border-radius: 5px;
    }

    .public-how-hero-copy h1,
    .public-how-section-head h2,
    .public-how-final-copy h2 {
      max-width: none;
      font-size: clamp(1.88rem, 9.6vw, 2.76rem);
    }

    .public-how-hero .public-cta-row,
    .public-how-final-actions {
      display: grid;
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .public-how-hero .public-cta-button,
    .public-how-final-button {
      width: 100%;
      min-width: 0;
    }

    .public-how-dashboard,
    .public-how-summary,
    .public-how-priority-row {
      border-radius: 4px;
    }

    .public-how-priority-row {
      grid-template-columns: 1fr auto;
    }

    .public-how-priority-row small {
      grid-column: 1 / -1;
      white-space: normal;
    }

    .public-how-steps-grid,
    .public-how-updates-grid,
    .public-how-focus-grid {
      grid-template-columns: 1fr;
    }

    .public-how-step-card,
    .public-how-step-card:nth-child(2n),
    .public-how-step-card:nth-child(n + 3),
    .public-how-update-card {
      border-right: 0;
      border-top: 1px solid rgba(167, 203, 223, 0.42);
      padding: 24px 8px;
    }

    .public-how-step-card:first-child,
    .public-how-update-card:first-child {
      border-top: 0;
    }

    .public-how-focus-card {
      grid-template-columns: 1fr;
      justify-items: center;
      text-align: center;
    }

    .public-how-final-target {
      justify-self: center;
    }

    .public-understand-hero,
    .public-understand-section,
    .public-understand-final-cta {
      padding: 24px 18px;
      border-radius: 5px;
    }

    .public-understand-hero-copy h1,
    .public-understand-section-head h2,
    .public-understand-final-copy h2 {
      max-width: none;
      font-size: clamp(1.88rem, 9.6vw, 2.76rem);
    }

    .public-understand-hero-actions,
    .public-understand-final-actions {
      grid-template-columns: 1fr;
      max-width: none;
    }

    .public-understand-dashboard,
    .public-understand-summary,
    .public-understand-continue article {
      border-radius: 4px;
    }

    .public-understand-stat-grid,
    .public-understand-tags {
      grid-template-columns: 1fr;
    }

    .public-understand-stat {
      border-right: 0;
      border-bottom: 1px solid rgba(167, 203, 223, 0.36);
    }

    .public-understand-stat:last-child {
      border-bottom: 0;
    }

    .public-understand-continue article {
      grid-template-columns: 1fr;
    }

    .public-understand-continue article span {
      margin: 8px 0 0;
    }

    .public-understand-steps-grid,
    .public-understand-build-grid,
    .public-understand-portal-grid {
      grid-template-columns: 1fr;
    }

    .public-understand-step-card,
    .public-understand-step-card:nth-child(2n),
    .public-understand-step-card:nth-child(n + 3),
    .public-understand-build-card,
    .public-understand-build-card:nth-child(2n),
    .public-understand-build-card:nth-child(n + 3) {
      border-right: 0;
      border-top: 1px solid rgba(167, 203, 223, 0.42);
      padding: 24px 8px;
    }

    .public-understand-step-card:first-child,
    .public-understand-build-card:first-child {
      border-top: 0;
    }

    .public-understand-practice-top,
    .public-understand-answer-row,
    .public-understand-help-row {
      grid-template-columns: 1fr;
    }

    .public-exact-hero,
    .public-exact-section,
    .public-exact-final-cta {
      padding: 24px 18px;
      border-radius: 5px;
    }

    .public-exact-hero-copy h1,
    .public-exact-section-head h2,
    .public-exact-final-cta h2 {
      max-width: none;
      font-size: clamp(1.88rem, 9.6vw, 2.76rem);
    }

    .public-exact-hero-actions,
    .public-exact-source-band > div,
    .public-exact-matters-grid,
    .public-exact-proof-grid,
    .public-exact-flow-grid,
    .public-understand-final-actions {
      grid-template-columns: 1fr;
    }

    .public-exact-priority-table {
      overflow-x: auto;
    }

    .public-exact-priority-table article {
      min-width: 620px;
    }

    .public-exact-matter-card,
    .public-exact-matter-card:nth-child(2n),
    .public-exact-matter-card:nth-child(n + 3),
    .public-exact-flow-card,
    .public-exact-flow-card:nth-child(2n),
    .public-exact-flow-card:nth-child(n + 3) {
      border-right: 0;
      border-top: 1px solid rgba(167, 203, 223, 0.42);
      padding: 24px 8px;
    }

    .public-exact-matter-card:first-child,
    .public-exact-flow-card:first-child {
      border-top: 0;
    }

    .public-priority-preview-card {
      padding: 20px 16px;
      border-radius: 6px;
    }

    .public-priority-ready,
    .public-priority-list-head {
      align-items: flex-start;
      flex-direction: column;
    }

    .public-priority-ready {
      gap: 12px;
    }

    .public-priority-ready-track {
      width: 100%;
      flex: 0 0 auto;
    }

    .public-priority-row {
      gap: 12px;
      padding: 16px;
    }

    .public-priority-rank {
      width: 38px;
      height: 38px;
      flex-basis: 38px;
    }

    .public-impact-section {
      padding: 28px 18px;
      border-radius: 5px;
    }

    .public-impact-section::before {
      right: -40px;
      top: 20px;
    }

    .public-impact-section::after {
      opacity: 0.32;
    }

    .public-impact-head h2 {
      max-width: 10ch;
      font-size: clamp(1.88rem, 8.8vw, 2.76rem);
    }

    .public-impact-head p {
      font-size: 1.04rem;
    }

    .public-impact-card {
      padding: 22px 18px;
      border-radius: 5px;
    }

    .public-impact-icon {
      width: 88px;
      height: 88px;
      margin-top: -12px;
    }

    .public-study-shift-section {
      padding: 28px 18px;
      border-radius: 5px;
    }

    .public-study-shift-section::before {
      right: -38px;
      top: 22px;
    }

    .public-study-shift-section::after {
      opacity: 0.28;
    }

    .public-study-shift-head h2 {
      max-width: 11ch;
      font-size: clamp(1.88rem, 8.8vw, 2.76rem);
    }

    .public-study-shift-head p {
      font-size: 1.04rem;
    }

    .public-study-shift-card {
      gap: 22px;
      padding: 22px 18px;
      border-radius: 5px;
    }

    .public-study-shift-card-title {
      align-items: flex-start;
      flex-direction: column;
      gap: 16px;
    }

    .public-study-shift-illustration {
      width: 88px;
      height: 88px;
      flex-basis: 88px;
    }

    .public-study-shift-list li {
      gap: 14px;
    }

    .public-not-flashcards-section {
      padding: 28px 18px;
      border-radius: 5px;
    }

    .public-not-flashcards-section::before {
      right: -38px;
      top: 22px;
    }

    .public-not-flashcards-section::after {
      opacity: 0.28;
    }

    .public-not-flashcards-head h2 {
      max-width: 11ch;
      font-size: clamp(1.88rem, 8.8vw, 2.76rem);
    }

    .public-not-flashcards-copy {
      font-size: 1.04rem;
    }

    .public-not-flashcards-copy strong {
      font-size: clamp(2rem, 10vw, 3.2rem);
    }

    .public-not-flashcards-card {
      padding: 22px 18px;
      border-radius: 5px;
    }

    .public-not-flashcards-icon {
      width: 88px;
      height: 88px;
    }

    .public-stand-hero,
    .public-stand-clarity-section,
    .public-stand-heatmap-section,
    .public-stand-progress-section,
    .public-stand-final-cta {
      padding: 28px 18px;
      border-radius: 5px;
    }

    .public-stand-hero-copy h1 {
      max-width: 10ch;
      font-size: clamp(1.88rem, 9.6vw, 2.92rem);
    }

    .public-stand-dashboard,
    .public-stand-heatmap-card,
    .public-stand-progress-card,
    .public-stand-decision-card {
      padding: 18px;
      border-radius: 4px;
    }

    .public-stand-dashboard-top,
    .public-stand-summary,
    .public-stand-progress-top {
      align-items: flex-start;
      flex-direction: column;
    }

    .public-stand-donut {
      width: 96px;
      height: 96px;
    }

    .public-stand-legend {
      width: 100%;
      min-width: 0;
    }

    .public-stand-tabs {
      display: grid;
      grid-template-columns: 1fr;
    }

    .public-stand-tabs span,
    .public-stand-tabs span:first-child,
    .public-stand-tabs span:last-child {
      border-radius: 2px;
    }

    .public-stand-table,
    .public-stand-heatmap-table {
      overflow-x: auto;
    }

    .public-stand-table-head,
    .public-stand-table-row {
      min-width: 560px;
    }

    .public-stand-clarity-grid,
    .public-stand-progress-metrics {
      grid-template-columns: 1fr;
    }

    .public-stand-clarity-card,
    .public-stand-clarity-card:nth-child(2n),
    .public-stand-clarity-card:nth-child(n + 3) {
      border-right: 0;
      border-top: 1px solid rgba(167, 203, 223, 0.45);
      padding: 24px 8px;
    }

    .public-stand-clarity-card:first-child {
      border-top: 0;
    }

    .public-stand-heatmap-row {
      min-width: 560px;
    }

    .public-stand-chart strong {
      right: 18px;
    }

    .public-stand-final-copy h2 {
      max-width: 12ch;
      font-size: clamp(1.9rem, 9vw, 2.9rem);
    }

    .public-stand-final-actions {
      padding: 18px;
      border-radius: 4px;
    }

    .public-stand-final-button {
      min-height: 60px;
      padding: 16px 18px;
      font-size: 1.02rem;
    }

    .public-home-readiness-prompt {
      min-height: 340px;
      margin-top: 54px;
      margin-bottom: 42px;
      padding: 72px 30px;
    }

    .public-home-readiness-prompt-inner {
      width: 100%;
    }

    .public-home-readiness-prompt::before {
      right: -96px;
      width: 300px;
      height: 300px;
    }

    .public-home-readiness-prompt::after {
      right: -46px;
      width: 170px;
      height: 170px;
    }

    .public-home-readiness-prompt p {
      max-width: 15ch;
      font-size: clamp(2.35rem, 10.5vw, 3.6rem);
      line-height: 1.04;
      letter-spacing: -0.015em;
    }

    .public-home-premium-shell {
      grid-template-columns: 1fr;
    }

    .public-home-premium-panel {
      order: 1;
    }

    .public-home-premium-nav {
      order: 2;
      display: grid;
      grid-template-columns: 1fr;
      overflow-x: visible;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      gap: 10px;
    }

    .public-home-premium-nav-item {
      width: 100%;
      min-height: 58px;
      padding: 0 16px;
      background: rgba(255, 255, 255, 0.88);
      border: 1px solid rgba(167, 203, 223, 0.68);
      border-radius: 4px;
    }

    .public-home-premium-nav-item:hover {
      transform: none;
    }

    .public-home-premium-nav-item + .public-home-premium-nav-item {
      border-top: 0;
    }

    .public-home-premium-panel {
      padding: 0;
      border-radius: 0;
    }

    .public-home-premium-carousel-frame {
      min-height: 320px;
      border-radius: 2px;
    }

    .public-home-premium-carousel-copy-block {
      top: 18px;
      left: 18px;
      right: 18px;
      max-width: none;
    }

    .public-home-premium-carousel-copy-block strong {
      max-width: none;
      font-size: clamp(1.35rem, 5.2vw, 2rem);
      line-height: 1.06;
    }

    .public-home-premium-carousel-dots {
      bottom: 16px;
    }

    .public-site-shell {
      width: min(100%, calc(100% - 18px));
      padding-top: 0;
    }

    .public-footer-grid {
      grid-template-columns: 1fr;
      gap: 20px;
      padding: 24px 18px;
      border-radius: 0;
    }

    .public-footer-brand {
      max-width: none;
    }

    .public-footer-link-columns {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px 14px;
    }

    .public-footer-links a {
      font-size: 1rem;
      line-height: 1.28;
    }

    .public-footer-legal {
      margin-top: 2px;
    }

    .public-site-topbar {
      gap: 12px;
      padding: 12px 4px;
    }

    .public-site-nav {
      width: 100%;
      justify-content: flex-start;
      overflow-x: auto;
      padding-bottom: 2px;
    }

    .public-nav-link {
      min-height: 42px;
    }

    .public-nav-link {
      padding: 0 10px;
    }

    .public-nav-search,
    .public-nav-link-secondary {
      margin-left: 0;
    }

    .public-hero,
    .public-section,
    .public-final-cta,
    .public-demo-surface,
    .public-proof-strip {
      border-radius: 5px;
    }

    .public-hero,
    .public-demo-surface,
    .public-section,
    .public-final-cta {
      padding: 20px;
    }

    .public-home-hero {
      padding: 22px;
      gap: 24px;
    }

    .public-home-marquee,
    .public-home-link-rail,
    .public-home-editorial-grid,
    .public-home-mosaic,
    .public-home-conversion-panel {
      border-radius: 5px;
    }

    .public-home-marquee,
    .public-home-editorial-grid,
    .public-home-mosaic,
    .public-home-conversion-panel {
      padding: 20px;
    }

    .public-home-conversion-actions {
      justify-items: stretch;
    }

    .public-home-conversion-actions .public-final-cta-reassurance {
      justify-content: flex-start;
      display: grid;
      gap: 10px;
    }

    .public-hero-copy h1,
    .public-section-head h2,
    .public-final-cta h2 {
      max-width: none;
      font-size: clamp(1.88rem, 9.6vw, 2.88rem);
    }

    .public-lead,
    .public-hero-copy p,
    .public-section-head p,
    .public-final-cta p {
      font-size: 1rem;
    }

    .public-cta-row {
      display: grid;
      grid-template-columns: 1fr;
    }

    .public-cta-button {
      width: 100%;
      min-width: 0;
    }

    .public-final-cta-reassurance {
      display: grid;
      gap: 10px;
    }

    .public-mini-metrics,
    .public-proof-strip,
    .public-demo-summary,
    .public-proof-strip-stacked {
      grid-template-columns: 1fr;
    }

    .public-quiz-challenge-hero,
    .public-quiz-shell {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .public-quiz-challenge-hero {
      padding: 20px 0 0;
    }

    .public-quiz-challenge-copy h1 {
      font-size: clamp(2.12rem, 11.2vw, 3.2rem);
    }

    .public-quiz-main-card,
    .public-quiz-side-card,
    .public-quiz-account-cta {
      border-radius: 5px;
    }

    .public-quiz-main-card,
    .public-quiz-side-card,
    .public-quiz-account-cta {
      padding: 20px;
    }

    .public-quiz-friend-card {
      min-height: auto;
    }

    .public-quiz-account-cta {
      display: grid;
      justify-content: stretch;
    }

    .public-quiz-form-actions {
      display: grid;
    }

    .public-quiz-card {
      padding: 20px;
    }

    .public-quiz-card strong {
      font-size: 1.12rem;
    }

    .public-quiz-option {
      align-items: flex-start;
    }
  }

  .public-site-nav .walk-nav-signup {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 20px;
    border: 1px solid #9ac8e0;
    border-radius: 12px;
    background: #159447;
    color: #ffffff;
    font-weight: 750;
    text-decoration: none;
    box-shadow: 0 1px 0 rgba(8, 28, 45, 0.08);
    transition: background 180ms ease, border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
  }

  .public-site-nav .walk-nav-signup:hover,
  .public-site-nav .walk-nav-signup:focus-visible {
    border-color: #0f7839;
    background: #0f7839;
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(21, 148, 71, 0.2);
  }

  .walk-page {
    overflow: hidden;
    border: 1px solid #d5e3ef;
    background: #ffffff;
    color: #081c2d;
  }

  .public-site-body:has(.walk-page) {
    overflow-x: hidden;
    background: #ffffff;
  }

  .public-site-body:has(.walk-page) .public-site-shell {
    width: 100%;
  }

  .public-site-body:has(.walk-page) .public-site {
    gap: 0;
  }

  .public-site-body:has(.walk-page) .public-footer {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .walk-page h1,
  .walk-page h2,
  .walk-page h3,
  .walk-page p {
    letter-spacing: 0;
  }

  @media (max-width: 720px) {
    .walk-nav-signup {
      min-height: 40px;
      padding: 0 14px;
    }

    .walk-page {
      border-left: 0;
      border-right: 0;
    }
  }

  /* New home hero — "Walk in knowing" */
  .harbor-nh {
    position: relative;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    margin-top: -14px;
    background: #0B1F4D;
    overflow: hidden;
    color: #fff;
  }

  .harbor-nh-rings {
    position: absolute;
    top: 50%;
    right: -200px;
    transform: translateY(-50%);
    pointer-events: none;
    max-width: none;
    opacity: 0.9;
  }

  .harbor-nh-inner {
    position: relative;
    z-index: 1;
    max-width: 1240px;
    margin: 0 auto;
    padding: clamp(52px, 6vw, 92px) 32px 0;
  }

  .harbor-nh-grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 64px;
    align-items: center;
  }

  .harbor-nh-copy {
    padding-bottom: clamp(64px, 7vw, 110px);
  }

  .harbor-nh-eyebrow {
    display: block;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #8FB8FF;
  }

  .harbor-nh-display {
    margin: 24px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: clamp(60px, 8.4vw, 124px);
    line-height: 0.92;
    letter-spacing: -0.01em;
    color: #fff;
  }

  .harbor-nh-lead {
    margin: 30px 0 0;
    max-width: 452px;
    font-size: 20px;
    line-height: 1.55;
    color: #B9C6E8;
  }

  .harbor-nh-actions {
    margin-top: 42px;
  }

  .harbor-nh-cta {
    display: inline-flex;
    align-items: center;
    height: 56px;
    padding: 0 30px;
    border-radius: 12px;
    background: #fff;
    color: #0C2ABF;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s ease, transform 0.15s ease;
  }

  .harbor-nh-cta:hover {
    background: #EEF2FF;
    transform: translateY(-1px);
  }

  .harbor-nh-fineprint {
    margin: 24px 0 0;
    font-size: 13.5px;
    color: #6E86C7;
  }

  .harbor-nh-panelwrap {
    position: relative;
    align-self: end;
    width: 100%;
    max-width: 566px;
    margin: 0 auto;
    padding-left: 26px;
  }

  .harbor-nh-panel-offset {
    position: absolute;
    left: 0;
    right: 26px;
    top: 26px;
    bottom: 0;
    background: #0C2ABF;
    border-radius: 20px 20px 0 0;
  }

  .harbor-nh-panel {
    position: relative;
    padding: 26px 24px;
    border-radius: 20px;
    background: #fff;
    color: #0B1F4D;
    box-shadow: 0 30px 60px -20px rgba(3, 12, 34, 0.55);
  }

  .harbor-nh-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }

  .harbor-nh-panel-eyebrow {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #8A93A8;
  }

  .harbor-nh-panel-title {
    margin-top: 5px;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #0B1F4D;
  }

  .harbor-nh-panel-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: none;
    padding: 5px 11px;
    border-radius: 999px;
    background: #FDF0DD;
    color: #B4690E;
    font-size: 12.5px;
    font-weight: 600;
    white-space: nowrap;
  }

  .harbor-nh-badge-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #F79009;
  }

  .harbor-nh-panel-divider {
    height: 1px;
    margin: 18px 0;
    background: #EEF1F8;
  }

  .harbor-nh-panel-score {
    display: flex;
    align-items: flex-end;
    gap: 10px;
  }

  .harbor-nh-score-num {
    font-size: 52px;
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -0.02em;
    color: #0B1F4D;
  }

  .harbor-nh-score-num span {
    font-size: 24px;
  }

  .harbor-nh-score-label {
    padding-bottom: 6px;
    font-size: 15px;
    color: #6B7488;
  }

  .harbor-nh-bar {
    display: flex;
    gap: 3px;
    margin-top: 16px;
    height: 9px;
    border-radius: 5px;
    overflow: hidden;
  }

  .harbor-nh-bar span {
    display: block;
    height: 100%;
  }

  .harbor-nh-legend {
    display: flex;
    gap: 18px;
    margin-top: 12px;
    font-size: 12.5px;
    color: #6B7488;
  }

  .harbor-nh-legend span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
  }

  .harbor-nh-legend i {
    width: 8px;
    height: 8px;
    border-radius: 2px;
  }

  .harbor-nh-elements-label {
    margin-top: 22px;
  }

  .harbor-nh-elements {
    display: grid;
    gap: 2px;
    margin-top: 8px;
  }

  .harbor-nh-el {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 12px;
    border-radius: 10px;
    border: 1px solid transparent;
  }

  .harbor-nh-el.is-active {
    background: #F5F8FF;
    border-color: #DCE4FF;
  }

  .harbor-nh-el-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex: none;
  }

  .harbor-nh-el-name {
    flex: 1;
    min-width: 0;
    font-size: 15px;
    font-weight: 600;
    color: #0B1F4D;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .harbor-nh-el-priority {
    font-size: 13px;
    color: #8A93A8;
    white-space: nowrap;
  }

  .harbor-nh-el-status {
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 600;
    white-space: nowrap;
  }

  .harbor-nh-nextmove {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 18px;
    padding: 16px;
    border-radius: 14px;
    background: #F5F8FF;
    border: 1px solid #E4EAFB;
  }

  .harbor-nh-nextmove-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #0C2ABF;
  }

  .harbor-nh-nextmove-title {
    margin-top: 4px;
    font-size: 16px;
    font-weight: 700;
    color: #0B1F4D;
  }

  .harbor-nh-nextmove-sub {
    margin-top: 2px;
    font-size: 13px;
    color: #6B7488;
  }

  .harbor-nh-nextmove-cta {
    flex: none;
    display: inline-flex;
    align-items: center;
    height: 42px;
    padding: 0 18px;
    border-radius: 10px;
    background: #0C2ABF;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s ease;
  }

  .harbor-nh-nextmove-cta:hover {
    background: #0A22A0;
  }

  .harbor-nh-trust {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 22px 32px;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(11, 31, 77, 0.6);
  }

  .harbor-nh-trust-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #20C46B;
    flex: none;
  }

  .harbor-nh-trust-text {
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.04em;
    color: #C4D0EC;
  }

  @media (max-width: 900px) {
    .harbor-nh-grid {
      grid-template-columns: 1fr;
      gap: 36px;
    }

    .harbor-nh-copy,
    .harbor-nh-panelwrap {
      min-width: 0;
      width: 100%;
      max-width: 100%;
    }

    .harbor-nh-copy {
      padding-bottom: 4px;
    }

    .harbor-nh-panelwrap {
      padding-left: 0;
      margin-bottom: 8px;
    }

    .harbor-nh-panel-offset,
    .harbor-nh-rings {
      display: none;
    }
  }

  @media (max-width: 600px) {
    .public-site-topbar {
      gap: 8px;
      padding: 10px 2px;
    }

    .public-site-topbar .brand-lockup {
      flex: 0 0 auto;
    }

    .public-site-topbar .brand-logo {
      width: 86px;
    }

    .public-site-topbar .public-site-nav {
      flex: 1 1 auto;
      flex-wrap: nowrap;
      justify-content: flex-end;
      width: auto;
      min-width: 0;
      gap: 0;
      padding-bottom: 0;
      overflow: visible;
    }

    .public-site-topbar .public-nav-link {
      min-height: 38px;
      padding: 0 6px;
      font-size: 0.82rem;
      white-space: nowrap;
    }

    .public-site-topbar .public-nav-link-secondary {
      margin-left: 0;
    }

    .public-site-topbar .walk-nav-signup,
    .public-site-topbar .public-nav-signup {
      min-height: 38px;
      padding: 0 10px;
      font-size: 0.8rem;
      white-space: nowrap;
    }

    .harbor-nh-inner {
      padding: 44px 20px 0;
    }

    .harbor-nh-grid {
      gap: 28px;
    }

    .harbor-nh-eyebrow {
      font-size: 11px;
      line-height: 1.45;
      letter-spacing: 0.14em;
      overflow-wrap: anywhere;
    }

    .harbor-nh-display {
      margin-top: 20px;
      font-size: clamp(48px, 15vw, 60px);
      line-height: 0.94;
    }

    .harbor-nh-lead {
      margin-top: 24px;
      max-width: none;
      font-size: 17px;
      line-height: 1.5;
    }

    .harbor-nh-actions {
      margin-top: 32px;
    }

    .harbor-nh-cta {
      height: 52px;
      padding: 0 24px;
    }

    .harbor-nh-fineprint {
      margin-top: 20px;
      line-height: 1.45;
    }

    .harbor-nh-panel {
      padding: 20px 16px;
      border-radius: 16px 16px 0 0;
    }

    .harbor-nh-panel-head {
      flex-wrap: wrap;
    }

    .harbor-nh-panel-head > div {
      min-width: 0;
    }

    .harbor-nh-panel-title {
      font-size: 15px;
      overflow-wrap: anywhere;
    }

    .harbor-nh-panel-badge {
      padding: 4px 8px;
      font-size: 11px;
    }

    .harbor-nh-legend {
      flex-wrap: wrap;
      gap: 8px 12px;
    }

    .harbor-nh-el {
      gap: 9px;
      padding-inline: 8px;
    }

    .harbor-nh-el-priority {
      display: none;
    }

    .harbor-nh-el-status {
      padding-inline: 8px;
      font-size: 11.5px;
    }

    .harbor-nh-nextmove {
      flex-wrap: wrap;
      padding: 14px;
    }

    .harbor-nh-nextmove > div {
      min-width: 0;
    }

    .harbor-nh-nextmove-cta {
      width: 100%;
      justify-content: center;
    }

    .harbor-nh-trust {
      align-items: flex-start;
      padding: 18px 20px;
      text-align: left;
    }
  }

  @media (max-width: 340px) {
    .public-site-topbar .brand-logo {
      width: 78px;
    }

    .public-site-topbar .public-nav-link {
      padding-inline: 5px;
      font-size: 0.77rem;
    }

    .public-site-topbar .walk-nav-signup,
    .public-site-topbar .public-nav-signup {
      padding-inline: 8px;
      font-size: 0.76rem;
    }
  }

  /* Demo app view — matches the "Study" mockup */
  .demo-app-section {
    max-width: 1240px;
    margin: 0 auto;
    padding: 8px 32px 96px;
  }

  .demo-app-window {
    border: 1px solid #E4E9F5;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 40px 90px -40px rgba(11, 31, 77, 0.4);
  }

  .demo-app-chrome {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    border-bottom: 1px solid #EEF1F8;
    background: #F7F8FB;
  }

  .demo-app-dots {
    display: inline-flex;
    gap: 7px;
    flex: none;
  }

  .demo-app-dots i {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #E0E3EC;
  }

  .demo-app-dots i:nth-child(1) { background: #FF5F57; }
  .demo-app-dots i:nth-child(2) { background: #FEBC2E; }
  .demo-app-dots i:nth-child(3) { background: #28C840; }

  .demo-app-address {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 auto;
    padding: 7px 16px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #E7EAF2;
    color: #6B7488;
    font-size: 13px;
    font-weight: 500;
  }

  .demo-app-address b {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #20C46B;
  }

  .demo-app-chrome > strong {
    flex: none;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #9AA3B2;
  }

  .demo-app-body {
    display: grid;
    grid-template-columns: 248px minmax(0, 1fr);
    min-height: 900px;
  }

  .demo-app-sidebar {
    display: flex;
    flex-direction: column;
    gap: 26px;
    padding: 30px 22px;
    border-right: 1px solid #EEF1F8;
    background: #FCFDFF;
  }

  .demo-app-logo {
    display: block;
    width: min(100%, 150px);
    height: auto;
  }

  .demo-app-nav {
    display: grid;
    gap: 4px;
  }

  .demo-app-nav-item {
    display: flex;
    align-items: center;
    gap: 13px;
    width: 100%;
    padding: 10px 12px;
    border: 0;
    border-radius: 11px;
    background: transparent;
    cursor: pointer;
    text-align: left;
    font-size: 15px;
    font-weight: 500;
    color: #4B5468;
    transition: background 0.16s ease, color 0.16s ease;
  }

  .demo-app-nav-item:hover,
  .demo-app-nav-item:focus-visible {
    background: #F1F5FF;
    color: #0C2ABF;
    outline: none;
  }

  .demo-app-nav-item svg {
    width: 19px;
    height: 19px;
    flex: none;
    color: #8A93A8;
  }

  .demo-app-nav-item.is-active {
    background: #EAF0FF;
    color: #0C2ABF;
    font-weight: 600;
  }

  .demo-app-nav-item.is-active svg {
    color: #0C2ABF;
  }

  .demo-app-term {
    display: grid;
    gap: 5px;
    padding: 16px;
    border: 1px solid #EBEEF6;
    border-radius: 14px;
    background: #F7F9FD;
  }

  .demo-app-term span {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #8A93A8;
  }

  .demo-app-term strong {
    font-size: 15px;
    font-weight: 600;
    color: #0B1F4D;
  }

  .demo-app-term small {
    font-size: 13px;
    color: #6B7488;
  }

  .demo-app-main {
    padding: 34px clamp(24px, 4vw, 56px) 44px;
    min-width: 0;
  }

  .demo-app-main-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 26px;
  }

  .demo-app-main-head h2 {
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(24px, 3vw, 32px);
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #0B1F4D;
  }

  .demo-app-screen {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
  }

  .demo-screen-hero,
  .demo-class-card,
  .demo-friend-list,
  .demo-profile-list {
    border: 1px solid #E4E9F5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 48px -34px rgba(11, 31, 77, 0.35);
  }

  .demo-screen-hero {
    padding: clamp(28px, 5vw, 48px);
  }

  .demo-screen-hero > span,
  .demo-screen-section-head > span {
    color: #8A93A8;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .demo-screen-hero h3 {
    max-width: 520px;
    margin: 10px 0 12px;
    color: #0B1F4D;
    font-family: var(--font-display);
    font-size: clamp(25px, 4vw, 38px);
    line-height: 1.06;
  }

  .demo-screen-hero p {
    max-width: 460px;
    margin: 0;
    color: #66748d;
    font-size: 16px;
    line-height: 1.55;
  }

  .demo-screen-primary,
  .demo-screen-section-head button {
    border: 0;
    background: #126ae8;
    color: #fff;
    cursor: pointer;
    font-weight: 700;
  }

  .demo-screen-primary {
    margin-top: 26px;
    padding: 13px 18px;
    border-radius: 10px;
  }

  .demo-screen-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
  }

  .demo-screen-stat-grid div {
    display: grid;
    gap: 4px;
    padding: 18px;
    border: 1px solid #E9EDF5;
    border-radius: 14px;
    background: #FBFCFF;
  }

  .demo-screen-stat-grid strong {
    color: #0B1F4D;
    font-size: 22px;
  }

  .demo-screen-stat-grid span,
  .demo-class-card small,
  .demo-friend-list small,
  .demo-profile-header p {
    color: #7C879A;
    font-size: 13px;
  }

  .demo-screen-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
  }

  .demo-screen-section-head button {
    padding: 9px 13px;
    border-radius: 9px;
  }

  .demo-class-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 22px;
    color: #0B1F4D;
    cursor: pointer;
    text-align: left;
  }

  .demo-class-card > span:nth-child(2),
  .demo-friend-list span,
  .demo-profile-header div {
    display: grid;
    gap: 5px;
  }

  .demo-class-card strong,
  .demo-friend-list strong {
    font-size: 17px;
  }

  .demo-class-card > b,
  .demo-friend-list > div > b {
    color: #0E8F4E;
    font-size: 18px;
  }

  .demo-class-monogram,
  .demo-profile-header > i,
  .demo-friend-list i {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: #E8F0FF;
    color: #126AE8;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
  }

  .demo-friend-list > div,
  .demo-profile-list > div {
    display: grid;
    align-items: center;
    gap: 14px;
    padding: 18px 20px;
    border-bottom: 1px solid #E9EDF5;
  }

  .demo-friend-list > div {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .demo-friend-list > div:last-child,
  .demo-profile-list > div:last-child {
    border-bottom: 0;
  }

  .demo-friend-list > div:nth-child(2) i { background: #EAF9F0; color: #109052; }
  .demo-friend-list > div:nth-child(3) i { background: #F0EAFF; color: #6945D8; }

  .demo-profile-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 22px;
    padding: 10px 0;
  }

  .demo-profile-header > i {
    width: 58px;
    height: 58px;
    border-radius: 17px;
    background: linear-gradient(145deg, #2578F0, #20C48A);
    color: #fff;
    font-size: 19px;
  }

  .demo-profile-header h3,
  .demo-profile-header p { margin: 0; }

  .demo-profile-header h3 { color: #0B1F4D; font-size: 22px; }

  .demo-profile-list > div {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .demo-profile-list span { color: #58677f; }
  .demo-profile-list strong { color: #0B1F4D; }

  .demo-app-updated {
    flex: none;
    font-size: 13.5px;
    color: #9AA3B2;
  }

  /* Readiness map card */
  .demo-rp {
    max-width: 560px;
    margin: 0 auto;
    padding: 26px 26px 28px;
    border: 1px solid #E9ECF4;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 48px -30px rgba(11, 31, 77, 0.35);
    color: #0B1F4D;
  }

  .demo-rp-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }

  .demo-rp-eyebrow {
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #8A93A8;
  }

  .demo-rp-title {
    margin-top: 5px;
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: #0B1F4D;
  }

  .demo-rp-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: none;
    height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid #F3D19A;
    background: #FEF6E9;
    color: #8A5A08;
    font-size: 12.5px;
    font-weight: 500;
    white-space: nowrap;
  }

  .demo-rp-badge-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #F79009;
  }

  .demo-rp-divider {
    height: 1px;
    margin: 20px 0;
    background: #EEF1F8;
  }

  .demo-rp-score {
    display: flex;
    align-items: flex-end;
    gap: 16px;
  }

  .demo-rp-score-num {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 62px;
    line-height: 0.9;
    letter-spacing: -0.03em;
    color: #0B1F4D;
  }

  .demo-rp-score-num span {
    font-size: 30px;
    color: #8A93A8;
  }

  .demo-rp-score-side {
    display: grid;
    gap: 3px;
    padding-bottom: 8px;
  }

  .demo-rp-score-label {
    font-size: 13.5px;
    color: #4B5468;
  }

  .demo-rp-score-delta {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12.5px;
    font-weight: 500;
    color: #20C46B;
  }

  .demo-rp-score-delta[hidden] {
    display: none;
  }

  .demo-rp-bar {
    display: flex;
    margin-top: 20px;
    height: 10px;
    border-radius: 6px;
    overflow: hidden;
    background: #EEF1F8;
  }

  .demo-rp-bar span {
    display: block;
    height: 100%;
    transition: width 0.5s ease;
  }

  .demo-rp-bar span:nth-child(1) { background: #20C46B; }
  .demo-rp-bar span:nth-child(2) { background: #F79009; }
  .demo-rp-bar span:nth-child(3) { background: #E5484D; }

  .demo-rp-legend {
    display: flex;
    gap: 18px;
    margin-top: 11px;
    font-size: 11.5px;
    color: #6B7488;
  }

  .demo-rp-legend span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
  }

  .demo-rp-legend i {
    width: 8px;
    height: 8px;
    border-radius: 2px;
  }

  .demo-rp-elements-label {
    margin-top: 22px;
  }

  .demo-rp-elements {
    display: grid;
    gap: 2px;
    margin-top: 10px;
  }

  .demo-rp-el {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 11px 12px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: none;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
  }

  .demo-rp-el:hover {
    background: #F5F8FF;
  }

  .demo-rp-el.is-active {
    background: #F5F8FF;
    border-color: #DCE4FF;
  }

  .demo-rp-el[data-demo-solid="true"] {
    cursor: default;
  }

  .demo-rp-el[data-demo-solid="true"]:hover {
    background: none;
  }

  .demo-rp-el-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex: none;
  }

  .demo-rp-el-name {
    flex: 1;
    min-width: 0;
    font-size: 14px;
    font-weight: 500;
    color: #1B2436;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .demo-rp-el-priority {
    font-size: 11.5px;
    color: #8A93A8;
    white-space: nowrap;
  }

  .demo-rp-el-status {
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
  }

  .demo-rp-nextmove {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 18px;
    padding: 16px;
    border: 1px solid #E4E9F5;
    border-radius: 12px;
    background: #F5F8FF;
  }

  .demo-rp-nextmove-label {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #0C2ABF;
  }

  .demo-rp-nextmove-title {
    margin-top: 8px;
    font-size: 16px;
    font-weight: 600;
    color: #0B1F4D;
  }

  .demo-rp-nextmove-sub {
    margin-top: 3px;
    font-size: 13px;
    color: #6B7488;
  }

  .demo-rp-nextmove-cta {
    flex: none;
    height: 42px;
    padding: 0 18px;
    border: none;
    border-radius: 10px;
    background: #0C2ABF;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s ease;
  }

  .demo-rp-nextmove-cta:hover {
    background: #0A22A0;
  }

  .demo-rp-nextmove-cta:disabled {
    background: #E7F8EF;
    color: #0E8F4E;
    cursor: default;
  }

  /* Quick check */
  .demo-rp-check {
    margin-top: 22px;
    border: 1px solid #E4E9F5;
    border-radius: 12px;
    overflow: hidden;
  }

  .demo-rp-check-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    background: #0B1F4D;
    color: #fff;
  }

  .demo-rp-check-name {
    font-size: 14px;
    font-weight: 600;
  }

  .demo-rp-check-progress {
    font-size: 12.5px;
    color: #AEBBDD;
  }

  .demo-rp-check-body {
    padding: 18px 16px;
  }

  .demo-rp-check-q {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    color: #111827;
  }

  .demo-rp-opts {
    display: grid;
    gap: 8px;
    margin-top: 14px;
  }

  .demo-rp-opt {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #E4E9F5;
    border-radius: 10px;
    background: #fff;
    color: #1B2436;
    font-size: 14px;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
  }

  .demo-rp-opt:hover:not(:disabled) {
    background: #F5F8FF;
    border-color: #C7D2FE;
  }

  .demo-rp-opt.is-correct {
    background: #E7F8EF;
    border-color: #9BE3BE;
    color: #0E8F4E;
  }

  .demo-rp-opt.is-wrong {
    background: #FDECED;
    border-color: #F3B4B6;
    color: #C0322F;
  }

  .demo-rp-check-done {
    text-align: center;
    padding: 6px 4px 4px;
  }

  .demo-rp-check-done-title {
    font-family: var(--font-display);
    font-size: 22px;
    font-weight: 700;
    color: #0B1F4D;
  }

  .demo-rp-check-done-sub {
    margin: 6px auto 0;
    max-width: 40ch;
    font-size: 14px;
    line-height: 1.5;
    color: #6B7488;
  }

  .demo-rp-check-done-cta {
    height: 42px;
    margin-top: 16px;
    padding: 0 20px;
    border: none;
    border-radius: 10px;
    background: #0C2ABF;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
  }

  @media (max-width: 820px) {
    .demo-app-section {
      width: 100%;
      min-width: 0;
      padding: 8px 16px 72px;
    }

    .demo-app-window,
    .demo-app-chrome,
    .demo-app-body,
    .demo-app-sidebar,
    .demo-app-main,
    .demo-rp {
      width: 100%;
      min-width: 0;
      max-width: 100%;
    }

    .demo-app-chrome {
      gap: 8px;
      padding: 10px 12px;
    }

    .demo-app-dots,
    .demo-app-chrome > strong {
      display: none;
    }

    .demo-app-address {
      width: 100%;
      min-width: 0;
      margin: 0;
      overflow: hidden;
      font-size: 12px;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .demo-app-body {
      grid-template-columns: 1fr;
      min-height: 0;
    }

    .demo-app-sidebar {
      flex-direction: row;
      flex-wrap: wrap;
      align-items: center;
      gap: 14px;
      padding: 18px 14px 14px;
      border-right: 0;
      border-bottom: 1px solid #EEF1F8;
    }

    .demo-app-logo {
      width: 118px;
    }

    .demo-app-term {
      display: none;
    }

    .demo-app-nav {
      grid-template-columns: repeat(5, minmax(0, 1fr));
      grid-auto-flow: row;
      gap: 2px;
      width: 100%;
      min-width: 0;
    }

    .demo-app-nav-item {
      min-width: 0;
      flex-direction: column;
      justify-content: center;
      gap: 4px;
      padding: 8px 2px;
      font-size: 10.5px;
    }

    .demo-app-main {
      padding: 26px 18px 32px;
    }

    .demo-screen-stat-grid {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 480px) {
    .demo-app-section {
      padding-right: 10px;
      padding-left: 10px;
    }

    .demo-app-main {
      padding: 20px 12px 24px;
    }

    .demo-app-main-head {
      align-items: flex-start;
      margin-bottom: 18px;
    }

    .demo-app-main-head h2 {
      font-size: 22px;
    }

    .demo-app-updated {
      display: none;
    }

    .demo-rp {
      padding: 18px 14px 20px;
      border-radius: 14px;
    }

    .demo-rp-head {
      flex-wrap: wrap;
    }

    .demo-rp-title {
      font-size: 15px;
    }

    .demo-rp-score-num {
      font-size: 52px;
    }

    .demo-rp-legend {
      flex-wrap: wrap;
      gap: 8px 14px;
    }

    .demo-rp-el {
      gap: 8px;
      padding-right: 8px;
      padding-left: 8px;
    }

    .demo-rp-el-priority {
      display: none;
    }

    .demo-rp-el-status {
      padding-right: 8px;
      padding-left: 8px;
      font-size: 11px;
    }

    .demo-rp-nextmove {
      align-items: stretch;
      flex-direction: column;
    }

    .demo-rp-nextmove-cta {
      width: 100%;
    }

    .demo-rp-check-head {
      align-items: flex-start;
    }

    .demo-rp-opt {
      overflow-wrap: anywhere;
    }
  }

  /* Demo closing prompt — "Now do it with your class" */
  .demo-close {
    position: relative;
    width: 100vw;
    margin: clamp(56px, 7vw, 104px) calc(50% - 50vw) 0;
    padding: clamp(80px, 11vw, 150px) clamp(28px, 7vw, 120px);
    overflow: hidden;
    background: #0B1F4D;
    color: #F8FBFF;
    isolation: isolate;
  }

  .demo-close-rings {
    position: absolute;
    top: 50%;
    right: -80px;
    transform: translateY(-50%);
    max-width: none;
    pointer-events: none;
    z-index: -1;
  }

  .demo-close-inner {
    max-width: 1240px;
    margin: 0 auto;
    text-align: center;
  }

  .demo-close-eyebrow {
    display: block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #6E86C7;
  }

  .demo-close-title {
    margin: 20px 0 0;
    font-family: var(--font-marketing-editorial);
    font-weight: 400;
    font-size: clamp(2.9rem, 6vw, 5.2rem);
    line-height: 1;
    letter-spacing: -0.02em;
    color: #fff;
  }

  .demo-close-title em {
    color: #8CB9FF;
    font-style: italic;
  }

  .demo-close-sub {
    margin: 22px auto 0;
    max-width: 34ch;
    font-size: clamp(1.05rem, 1.6vw, 1.3rem);
    line-height: 1.5;
    color: #B9C6E8;
  }

  .demo-close-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
  }

  .demo-close-cta {
    display: inline-flex;
    align-items: center;
    height: 60px;
    padding: 0 34px;
    border-radius: 14px;
    background: #fff;
    color: #0C2ABF;
    font-size: 17px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s ease, transform 0.15s ease;
  }

  .demo-close-cta:hover {
    background: #EEF2FF;
    transform: translateY(-1px);
  }

  .demo-close-link {
    color: #8CB9FF;
    font-size: 16px;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 5px;
    text-decoration-thickness: 1px;
  }

  .demo-close-link:hover {
    color: #BBD1FF;
  }

  @media (max-width: 640px) {
    .demo-close-actions {
      gap: 18px;
    }

    .demo-close-cta {
      width: 100%;
      justify-content: center;
    }
  }

  .prod-hero-panel {
    width: 100%;
    max-width: 520px;
  }

  /* Walk In Knowing — rebuilt to match the designer mockup */
  .wik { color: #1D1D1F; }
  .wik .t-hero {
    font-family: var(--font-display);
    font-weight: 600;
    letter-spacing: -0.04em;
    line-height: 0.95;
    color: #0B1F4D;
    margin: 0;
  }
  .wik .t-h2 {
    font-family: var(--font-display);
    font-weight: 600;
    letter-spacing: -0.03em;
    line-height: 1.02;
    color: #0B1F4D;
    margin: 0;
  }
  .wik .t-eyebrow {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #0C2ABF;
  }
  .wik .t-lead { font-weight: 400; letter-spacing: -0.01em; color: #4B5468; }
  .wik .num { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; letter-spacing: -0.04em; }
  .wik .wik-inner { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }

  .wik-rings { position: absolute; pointer-events: none; max-width: none; }
  .wik-rings-hero { left: -200px; top: -160px; width: 820px; height: 820px; }
  .wik-rings-next { right: -160px; top: 50%; transform: translateY(-50%); width: 720px; height: 720px; }
  .wik-rings-cta { left: 50%; top: 50%; transform: translate(-50%, -50%); width: 900px; height: 900px; }

  .wik-btn-white {
    display: inline-flex; align-items: center; height: 54px; padding: 0 30px;
    border-radius: 999px; background: #fff; color: #0B1F4D; font-size: 17px; font-weight: 600;
    text-decoration: none; transition: background .15s ease, transform .15s ease;
  }
  .wik-btn-white:hover { background: #EEF2FF; transform: translateY(-1px); }
  .wik-btn-ghost { color: #8FB8FF; font-size: 17px; font-weight: 500; text-decoration: none; }
  .wik-btn-ghost:hover { color: #B9CEFF; }

  /* Hero */
  .wik-hero { position: relative; overflow: hidden; background: #0B1F4D; color: #fff; }
  .wik-hero .wik-inner { position: relative; z-index: 1; padding-top: 80px; padding-bottom: 96px; }
  .wik-hero-grid { display: grid; grid-template-columns: 1.02fr 0.98fr; gap: 56px; align-items: center; }
  .wik-chip {
    display: inline-flex; align-items: center; gap: 9px; height: 32px; padding: 0 15px;
    border: 1px solid rgba(143, 184, 255, 0.35); border-radius: 999px;
    font-size: 12.5px; font-weight: 500; color: #8FB8FF;
  }
  .wik-chip i { width: 7px; height: 7px; border-radius: 50%; background: #20C46B; }
  .wik .wik-hero-title { color: #fff; font-size: clamp(56px, 8.4vw, 124px); margin-top: 22px; }
  .wik-hero-lead { margin: 24px 0 0; max-width: 460px; font-size: clamp(19px, 2.1vw, 24px); line-height: 1.4; color: #C4D0EC; }
  .wik-hero-cta { margin-top: 34px; display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
  .wik-hero-note { margin-top: 18px; font-size: 14px; color: #93A4CE; }
  .wik-hero-viz { display: flex; justify-content: center; }
  .wik-hero-viz .demo-rp { width: 100%; max-width: 440px; filter: drop-shadow(0 50px 100px rgba(0, 0, 0, 0.5)); }

  /* Statement */
  .wik-statement { background: #fff; }
  .wik-statement-inner { max-width: 1080px; padding-top: 130px; padding-bottom: 130px; }
  .wik-statement-1 { font-size: clamp(38px, 6vw, 88px); letter-spacing: -0.04em; }
  .wik-statement-2 { font-size: clamp(38px, 6vw, 88px); letter-spacing: -0.04em; color: #C7CEDE; }
  .wik-statement-2 span { color: #0C2ABF; }
  .wik-statement-lead { margin: 32px 0 0; max-width: 560px; font-size: clamp(19px, 2vw, 23px); line-height: 1.45; }

  /* Feature grid */
  .wik-features { background: #F5F5F7; }
  .wik-features .wik-inner { padding-top: 112px; padding-bottom: 112px; }
  .wik-features-head { max-width: 700px; }
  .wik-features-head .t-h2 { margin-top: 16px; font-size: clamp(34px, 4.4vw, 60px); }
  .wik-feat-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 52px;
    background: #E8E8ED; border-radius: 24px; overflow: hidden;
  }
  .wik-feat { background: #fff; padding: 40px 34px; }
  .wik-feat-num { font-size: 13px; font-weight: 600; color: #0C2ABF; }
  .wik-feat-title { margin-top: 24px; font-size: 21px; font-weight: 600; color: #0B1F4D; letter-spacing: -0.015em; }
  .wik-feat-body { margin: 10px 0 0; font-size: 15.5px; line-height: 1.6; color: #4B5468; }

  /* Score */
  .wik-score { background: #fff; }
  .wik-score .wik-inner { padding-top: 120px; padding-bottom: 120px; }
  .wik-alt { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
  .wik-score .t-h2 { margin-top: 16px; font-size: clamp(34px, 4.2vw, 58px); }
  .wik-score-lead { margin: 20px 0 0; max-width: 440px; font-size: 18px; line-height: 1.55; }
  .wik-legend { margin-top: 28px; display: flex; flex-direction: column; gap: 14px; max-width: 420px; }
  .wik-legend-row { display: flex; align-items: center; gap: 14px; }
  .wik-legend-dot { width: 10px; height: 10px; border-radius: 3px; flex: none; }
  .wik-legend-label { flex: 1; font-size: 15px; color: #1B2436; }
  .wik-legend-pct { font-size: 15px; color: #8A93A8; }
  .wik-score-viz { text-align: center; }
  .wik-score-num {
    font-size: clamp(140px, 20vw, 280px); line-height: 0.82;
    background: linear-gradient(180deg, #0C2ABF, #0B1F4D);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  }
  .wik-score-num span { font-size: 0.28em; color: #8A93A8; -webkit-text-fill-color: #8A93A8; }
  .wik-score-cap { margin-top: 8px; font-size: 16px; }
  .wik-score-bar { display: flex; margin: 26px auto 0; max-width: 420px; height: 12px; border-radius: 7px; overflow: hidden; background: #EEF1F8; }
  .wik-score-bar span { display: block; height: 100%; }

  /* Next best step */
  .wik-next { position: relative; overflow: hidden; background: #0B1F4D; color: #fff; }
  .wik-next .wik-inner { position: relative; z-index: 1; padding: 0 24px; }
  .wik-next-grid { align-items: center; gap: 0; }
  .wik-next-copy { padding: 100px 40px 100px 0; }
  .wik .wik-eyebrow-light { color: #8FB8FF; }
  .wik .wik-h2-light { color: #fff; }
  .wik-next .t-h2 { margin-top: 16px; font-size: clamp(34px, 4.2vw, 58px); }
  .wik-next-lead { margin: 20px 0 0; max-width: 420px; font-size: 18px; line-height: 1.55; color: #B9C6E8; }
  .wik-next-cardwrap { padding: 56px 0; display: flex; justify-content: center; }
  .wik-next-card { width: 100%; max-width: 390px; background: #fff; border-radius: 20px; padding: 28px; box-shadow: 0 50px 100px -40px rgba(0, 0, 0, 0.65); color: #0B1F4D; }
  .wik-next-eyebrow { font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; color: #0C2ABF; font-weight: 600; }
  .wik-next-row { margin-top: 16px; display: flex; align-items: flex-start; gap: 14px; }
  .wik-next-badge { flex: none; width: 42px; height: 42px; border-radius: 50%; background: #0C2ABF; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: 600; }
  .wik-next-title { font-size: 21px; font-weight: 600; color: #0B1F4D; letter-spacing: -0.015em; }
  .wik-next-meta { margin-top: 4px; font-size: 13.5px; color: #6B7488; }
  .wik-next-meta span { color: #0C2ABF; font-weight: 600; }
  .wik-next-cta { margin-top: 20px; height: 50px; border-radius: 13px; background: #0C2ABF; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 500; text-decoration: none; }
  .wik-next-then { margin-top: 18px; padding-top: 16px; border-top: 1px solid #E8E8ED; font-size: 12px; letter-spacing: 0.05em; text-transform: uppercase; color: #8A93A8; }
  .wik-next-after { margin-top: 8px; font-size: 14px; color: #4B5468; }

  /* Lifestyle band */
  .wik-life { background: #fff; }
  .wik-life-inner { max-width: 1280px; padding-left: 0; padding-right: 0; }
  .wik-life-frame { position: relative; width: 100%; height: min(60vw, 640px); overflow: hidden; }
  .wik-life-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
  .wik-life-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(11, 31, 77, 0.66) 0%, rgba(11, 31, 77, 0.3) 44%, rgba(11, 31, 77, 0) 70%); }
  .wik-life-copy { position: absolute; left: 0; top: 0; height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 0 clamp(24px, 6vw, 96px); }
  .wik-life-copy .t-hero { color: #fff; font-size: clamp(34px, 4.6vw, 64px); max-width: 480px; }
  .wik-life-text { margin: 20px 0 0; max-width: 480px; font-size: clamp(17px, 1.9vw, 22px); line-height: 1.45; color: #E4EAF6; }

  /* App section */
  .wik-app { background: #F5F5F7; }
  .wik-app .wik-inner { padding-top: 112px; padding-bottom: 112px; }
  .wik-appgrid { display: grid; grid-template-columns: 1fr 0.8fr; gap: 40px; align-items: center; }
  .wik-app .t-h2 { margin-top: 16px; font-size: clamp(32px, 4.2vw, 56px); }
  .wik-app-lead { margin: 20px 0 0; max-width: 440px; font-size: 18px; line-height: 1.55; }
  .wik-app-badges { margin-top: 30px; display: flex; gap: 14px; flex-wrap: wrap; }
  .wik-app-badges img { height: 54px; width: auto; display: block; border-radius: 12px; }
  .wik-phone-wrap { display: flex; justify-content: center; }
  .wik-phone { width: 250px; height: 510px; border-radius: 44px; background: #0B1F4D; padding: 12px; box-shadow: 0 50px 90px -40px rgba(11, 31, 77, 0.55); }
  .wik-phone-screen { position: relative; width: 100%; height: 100%; border-radius: 34px; background: #fff; overflow: hidden; padding: 26px 20px; }
  .wik-phone-eyebrow { font-size: 10px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #8A93A8; }
  .wik-phone-course { margin-top: 6px; font-size: 13.5px; font-weight: 600; color: #0B1F4D; }
  .wik-phone-num { margin-top: 22px; font-size: 76px; line-height: 0.9; font-weight: 600; color: #0B1F4D; }
  .wik-phone-num span { font-size: 0.34em; color: #8A93A8; }
  .wik-phone-bar { display: flex; margin-top: 14px; height: 9px; border-radius: 5px; overflow: hidden; background: #EEF1F8; }
  .wik-phone-bar span { display: block; height: 100%; }
  .wik-phone-next { margin-top: 22px; padding: 14px; border-radius: 12px; background: #F5F8FF; }
  .wik-phone-next-label { font-size: 10px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #0C2ABF; }
  .wik-phone-next strong { display: block; margin-top: 5px; font-size: 15px; color: #0B1F4D; }
  .wik-phone-next span { display: block; margin-top: 2px; font-size: 12.5px; color: #6B7488; }

  /* Trust cards */
  .wik-trust { background: #F5F5F7; }
  .wik-trust .wik-inner { max-width: 1000px; padding-top: 100px; padding-bottom: 100px; }
  .wik-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .wik-trust-card { background: #fff; border-radius: 20px; padding: 40px; }
  .wik-trust-icon { display: inline-flex; }
  .wik-trust-icon svg { width: 38px; height: 38px; }
  .wik-trust-h { font-size: 26px; margin-top: 18px; }
  .wik-trust-p { margin: 12px 0 0; font-size: 15.5px; line-height: 1.6; }
  .wik-trust-p a { font-weight: 500; }

  /* CTA */
  .wik-cta { position: relative; overflow: hidden; background: #0B1F4D; color: #fff; }
  .wik-cta-inner { position: relative; z-index: 1; max-width: 1000px; padding-top: 140px; padding-bottom: 140px; text-align: center; }
  .wik-cta .t-hero { color: #fff; font-size: clamp(50px, 7.4vw, 104px); }
  .wik-cta-lead { margin: 26px auto 0; max-width: 460px; font-size: clamp(18px, 2vw, 23px); line-height: 1.4; color: #B9C6E8; }
  .wik-cta-actions { margin-top: 36px; }

  @media (max-width: 940px) {
    .wik-hero-grid { grid-template-columns: 1fr; gap: 40px; text-align: center; }
    .wik-hero-cta { justify-content: center; }
    .wik-hero-lead { margin-left: auto; margin-right: auto; }
    .wik-hero-viz .demo-rp { max-width: 400px; }
    .wik-feat-grid { grid-template-columns: 1fr; }
    .wik-alt { grid-template-columns: 1fr; }
    .wik-score-viz { margin-top: 8px; }
    .wik-next-copy { padding: 64px 0 0; }
    .wik-next-cardwrap { padding: 32px 0 64px; }
    .wik-appgrid { grid-template-columns: 1fr; gap: 36px; }
    .wik-two { grid-template-columns: 1fr; }
  }

  /* Home "How Harbor gets you ready" — flip cards */
  .public-home-ways {
    max-width: 1240px;
    margin: 0 auto;
    padding: clamp(72px, 12vw, 128px) 32px 0;
  }
  .public-home-ways-eyebrow {
    display: block;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #8A93A8;
  }
  .public-home-ways-h2 {
    margin: 22px 0 0;
    font-family: var(--font-marketing-editorial);
    font-weight: 400;
    font-size: clamp(32px, 3.6vw, 48px);
    line-height: 1.05;
    letter-spacing: -0.005em;
    color: #0B1F4D;
    white-space: nowrap;
  }

  .hb-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 52px;
  }
  .hb-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #0B1F4D;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 30px 70px -46px rgba(11, 31, 77, 0.5);
  }
  .hb-media { position: relative; height: 280px; padding: 12px 12px 0; }
  .hb-media img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 16px; }
  .hb-icon {
    position: absolute;
    top: 34px;
    left: 34px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 20px -8px rgba(0, 0, 0, 0.4);
  }
  .hb-icon svg { width: 26px; height: 26px; }
  .hb-pill {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: -22px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    height: 44px;
    padding: 0 16px;
    background: #fff;
    border: 1px solid #E4E9F5;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 500;
    color: #8A93A8;
    text-decoration: none;
    box-shadow: 0 14px 30px -12px rgba(11, 31, 77, 0.35);
    transition: color .15s ease;
  }
  .hb-pill:hover { color: #0B1F4D; }
  .hb-pill svg { flex: none; margin-left: auto; width: 18px; height: 18px; color: #0C2ABF; }

  .hb-body { position: relative; flex: 1; padding: 52px 28px 78px; cursor: pointer; }
  .hb-headline {
    font-size: 26px;
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1.15;
    color: #4FD48A;
    transition: opacity .3s ease;
  }
  .hb-headline span { color: #fff; }
  .hb-card[data-open="true"] .hb-headline { opacity: 0; pointer-events: none; }
  .hb-expl {
    position: absolute;
    left: 28px;
    right: 28px;
    top: 52px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .35s ease;
  }
  .hb-card[data-open="true"] .hb-expl { opacity: 1; pointer-events: auto; }
  .hb-expl-title { font-size: 19px; font-weight: 600; letter-spacing: -0.01em; line-height: 1.2; color: #4FD48A; }
  .hb-expl p { margin: 12px 0 0; font-size: 15px; line-height: 1.6; color: #B9C6E8; }

  .hb-toggle {
    position: absolute;
    right: 22px;
    bottom: 22px;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: none;
    background: #0C2ABF;
    color: #fff;
    font-size: 26px;
    font-weight: 300;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background .15s ease, transform .3s cubic-bezier(.2, .6, .2, 1);
  }
  .hb-toggle:hover { background: #0A22A0; }
  .hb-card[data-open="true"] .hb-toggle { transform: rotate(45deg); }
  .hb-toggle:focus-visible { outline: 2px solid #8FB8FF; outline-offset: 2px; }

  @media (max-width: 1120px) {
    .public-home-ways-h2 { white-space: normal; }
  }

  @media (max-width: 980px) {
    .hb-grid { grid-template-columns: 1fr; }
  }

  /* Home "Try Harbor for yourself" quick-paths */
  .hp4 {
    max-width: 1280px;
    margin: 0 auto;
    padding: clamp(24px, 4vw, 40px) 32px clamp(88px, 11vw, 128px);
  }
  .hp4-head { text-align: center; max-width: 820px; margin: 0 auto; }
  .hp4-eyebrow {
    display: block;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #0c2abf;
  }
  .hp4-h2 {
    margin: 16px 0 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(36px, 5vw, 68px);
    line-height: 1.02;
    letter-spacing: -0.03em;
    color: #0b1f4d;
  }
  .hp4-h2 span { color: #1fb574; }

  .hp4-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: clamp(40px, 5vw, 56px);
    align-items: stretch;
  }
  .hp4-card {
    display: flex;
    flex-direction: column;
    background: #0b1f4d;
    border-radius: 24px;
    overflow: hidden;
  }
  .hp4-card-faq { padding: 34px 30px; }
  .hp4-shot { position: relative; height: 300px; background: #08163a; }
  .hp4-shot img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .hp4-checks { padding: 24px 24px 0; display: flex; flex-direction: column; gap: 14px; }
  .hp4-check { border-radius: 16px; padding: 22px; }
  .hp4-check-before { background: #fff; border: 1px solid #e4e9f5; }
  .hp4-check-after { background: #f5f8ff; border: 1.5px solid #c7d2fe; }
  .hp4-check-top { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
  .hp4-check-label {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .hp4-check-before .hp4-check-label { color: #8a93a8; }
  .hp4-check-after .hp4-check-label { color: #0c2abf; }
  .hp4-check-meta { font-size: 12px; }
  .hp4-check-before .hp4-check-meta { color: #8a93a8; }
  .hp4-check-after .hp4-check-meta { color: #0c2abf; }
  .hp4-check-num { margin-top: 10px; display: flex; align-items: flex-end; gap: 8px; }
  .hp4-num {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 44px;
    line-height: 0.85;
    letter-spacing: -0.02em;
    color: #0b1f4d;
  }
  .hp4-num small { font-size: 18px; color: #8a93a8; }
  .hp4-ready { padding-bottom: 5px; font-size: 13.5px; color: #4b5468; }
  .hp4-ready-up { color: #20c46b; font-weight: 500; }
  .hp4-bar {
    margin-top: 14px;
    height: 9px;
    border-radius: 6px;
    overflow: hidden;
    display: flex;
    background: #eef1f8;
  }
  .hp4-bar span { display: block; height: 100%; }
  .hp4-note { margin-top: 14px; border-radius: 9px; padding: 10px 14px; font-size: 13.5px; }
  .hp4-note-weak { background: #fdecee; color: #b4262b; }
  .hp4-note-solid { background: #e7f8ef; color: #0e8f4e; }
  .hp4-dot-weak { color: #e5484d; }
  .hp4-dot-solid { color: #20c46b; }

  .hp4-foot {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    flex: 1;
    padding: 32px 30px 34px;
  }
  .hp4-card-faq .hp4-foot { padding: 26px 0 0; margin-top: auto; }
  .hp4-pill {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    height: 30px;
    padding: 0 14px;
    border: 1px solid rgba(143, 184, 255, 0.4);
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #8fb8ff;
  }
  .hp4-cardline {
    margin: 20px 0 0;
    font-size: 25px;
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1.18;
    color: #fff;
  }
  .hp4-cardline span { color: #4fd48a; }
  .hp4-btn {
    margin-top: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    border-radius: 11px;
    background: #0c2abf;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .hp4-btn:hover { background: #3555de; }

  .hp4-faq-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  .hp4-faq-title { font-size: 24px; font-weight: 600; letter-spacing: -0.01em; color: #fff; }
  .hp4-faq-tag { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: #8fb8ff; }
  .hp4-faq-tag span { width: 8px; height: 8px; border-radius: 50%; background: #20c46b; }
  .hp4-faqs { margin-top: 22px; display: flex; flex-direction: column; gap: 12px; }
  .hp4-faq { border: 1px solid rgba(143, 184, 255, 0.18); border-radius: 12px; }
  .hp4-faq-q {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 18px;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    color: #eaf0fb;
    font-family: inherit;
  }
  .hp4-faq-ic {
    flex: none;
    color: #8fb8ff;
    font-size: 22px;
    font-weight: 300;
    line-height: 1;
    transition: transform 0.3s ease;
  }
  .hp4-faq[data-open="true"] .hp4-faq-ic { transform: rotate(45deg); }
  .hp4-faq-a {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.2, 0.6, 0.2, 1), opacity 0.3s ease;
  }
  .hp4-faq[data-open="true"] .hp4-faq-a { max-height: 260px; opacity: 1; }
  .hp4-faq-a p { margin: 0; padding: 0 18px 18px; font-size: 14px; line-height: 1.6; color: #a9b6d6; }

  @media (max-width: 980px) {
    .hp4-grid { grid-template-columns: 1fr; }
  }

  /* Home final CTA "What are you getting ready for?" */
  .hp6 {
    position: relative;
    overflow: hidden;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #f5f8ff;
    border-top: 1px solid #e4e9f5;
  }
  .hp6::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(12, 42, 191, 0.06) 1px, transparent 1.5px);
    background-size: 30px 30px;
    -webkit-mask-image: radial-gradient(ellipse 60% 80% at 50% 50%, #000 20%, transparent 100%);
    mask-image: radial-gradient(ellipse 60% 80% at 50% 50%, #000 20%, transparent 100%);
    pointer-events: none;
  }
  .hp6-inner {
    position: relative;
    z-index: 1;
    max-width: 680px;
    margin: 0 auto;
    padding: clamp(88px, 12vw, 130px) 32px;
    text-align: center;
  }
  .hp6-eyebrow {
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #8a93a8;
  }
  .hp6-h2 {
    margin: 20px 0 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(40px, 5.4vw, 72px);
    line-height: 1;
    letter-spacing: -0.03em;
    color: #0b1f4d;
  }
  .hp6-sub {
    margin: 20px auto 0;
    max-width: 440px;
    font-size: 17.5px;
    line-height: 1.55;
    color: #5b6478;
  }
  .hp6-card {
    margin-top: 40px;
    background: #fff;
    border: 1px solid #e4e9f5;
    border-radius: 20px;
    padding: 34px 32px;
    box-shadow: 0 30px 70px -46px rgba(11, 31, 77, 0.35);
    text-align: left;
  }
  .hp6-label { display: block; font-size: 14px; font-weight: 600; color: #0b1f4d; margin-bottom: 8px; }
  .hp6-input {
    width: 100%;
    height: 52px;
    padding: 0 16px;
    border: 1px solid #d6deef;
    border-radius: 11px;
    font-size: 16px;
    color: #111827;
    background: #fff;
    outline: none;
    font-family: inherit;
  }
  .hp6-input:focus { border-color: #0c2abf; box-shadow: 0 0 0 3px rgba(12, 42, 191, 0.12); }
  .hp6-submit {
    margin-top: 20px;
    width: 100%;
    height: 54px;
    border: none;
    border-radius: 12px;
    background: #0c2abf;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    font-family: inherit;
    transition: background 0.15s ease;
  }
  .hp6-submit:hover { background: #0a22a0; }
  .hp6-fine { margin-top: 20px; font-size: 14px; color: #6b7488; }

  /* Product page (redesign) */
  .prodx { background: #fff; color: #1d1d1f; }
  .prodx .t-hero {
    font-family: var(--font-display);
    font-weight: 600;
    letter-spacing: -0.035em;
    line-height: 0.98;
    color: #0b1f4d;
    margin: 0;
  }
  .prodx .t-h2 {
    font-family: var(--font-display);
    font-weight: 600;
    letter-spacing: -0.03em;
    line-height: 1.02;
    color: #0b1f4d;
    margin: 0;
  }
  .prodx .t-eyebrow { font-weight: 600; letter-spacing: 0.02em; color: #0c2abf; }
  .prodx .t-lead { font-weight: 400; letter-spacing: -0.01em; color: #4b5468; }
  .prodx .num { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; letter-spacing: -0.03em; }
  .prodx .p-alt { display: grid; grid-template-columns: 1fr 1fr; gap: 0; align-items: center; }
  .prodx .p-specs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
  .prodx .p-diff { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }

  .prodx-btn {
    display: inline-flex;
    align-items: center;
    height: 52px;
    padding: 0 28px;
    border-radius: 980px;
    background: #0c2abf;
    color: #fff;
    font-size: 17px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .prodx-btn:hover { background: #0a22a0; color: #fff; }
  .prodx-btn-lg { height: 56px; padding: 0 32px; }
  .prodx-textlink { font-size: 17px; font-weight: 500; color: #0c2abf; text-decoration: none; white-space: nowrap; }
  .prodx-textlink:hover { color: #0a22a0; }

  /* Hero */
  .prodx-hero { background: #fff; text-align: center; overflow: hidden; }
  .prodx-hero-inner { max-width: 980px; margin: 0 auto; padding: clamp(56px, 7vw, 88px) 24px 0; }
  .prodx-hero-title { font-size: clamp(52px, 8vw, 108px); margin: 14px 0 0; }
  .prodx-hero-lead { font-size: clamp(20px, 2.4vw, 27px); line-height: 1.35; margin: 26px auto 0; max-width: 640px; }
  .prodx-hero-actions { margin-top: 30px; display: flex; justify-content: center; align-items: center; gap: 26px; flex-wrap: wrap; }
  .prodx-hero-media { max-width: 1180px; margin: clamp(40px, 5vw, 56px) auto 0; padding: 0 24px; }
  .prodx-hero-shot { position: relative; width: 100%; height: min(62vw, 680px); border-radius: 24px; overflow: hidden; background: #f5f5f7; }
  .prodx-hero-shot img { width: 100%; height: 100%; object-fit: cover; display: block; }

  /* Spec bar */
  .prodx-specs-section { background: #fff; }
  .prodx-specs-inner { max-width: 1100px; margin: 0 auto; padding: clamp(56px, 7vw, 80px) 24px; border-bottom: 1px solid #e8e8ed; }
  .prodx-spec-num { font-size: clamp(40px, 4.4vw, 60px); }
  .prodx-spec-num span { font-size: 0.42em; color: #8a93a8; }
  .prodx-spec-title { margin-top: 10px; font-size: 16px; font-weight: 600; color: #0b1f4d; }
  .prodx-spec-body { font-size: 14.5px; line-height: 1.55; margin: 6px 0 0; }

  /* Big statement */
  .prodx-statement { background: #fff; }
  .prodx-statement-inner { max-width: 1000px; margin: 0 auto; padding: clamp(72px, 10vw, 120px) 24px; text-align: center; }
  .prodx-statement-title { font-size: clamp(34px, 5vw, 68px); }
  .prodx-accent { color: #0c2abf; }
  .prodx-statement-lead { font-size: clamp(18px, 2vw, 22px); line-height: 1.45; margin: 24px auto 0; max-width: 600px; }

  /* Alternating feature rows */
  .prodx-feature { background: #fff; }
  .prodx-feature-map { background: #f5f5f7; }
  .prodx-feature-inner { max-width: 1180px; margin: 0 auto; }
  .prodx-feature-copy { padding: clamp(48px, 6vw, 80px) clamp(28px, 5vw, 56px); }
  .prodx-feature-copy .t-eyebrow { font-size: 15px; }
  .prodx-feature-copy .t-h2 { font-size: clamp(30px, 3.6vw, 46px); margin: 14px 0 0; }
  .prodx-feature-copy .t-lead,
  .prodx-feature-body-light { font-size: 18px; line-height: 1.55; margin: 18px 0 0; max-width: 420px; }
  .prodx-feature-link { margin-top: 22px; }
  .prodx-feature-link .prodx-textlink { font-size: 16px; }
  .prodx-feature-media { padding: clamp(48px, 6vw, 80px) clamp(28px, 5vw, 56px); }
  .prodx-feature-shot {
    position: relative;
    width: 100%;
    height: 420px;
    border-radius: 20px;
    overflow: hidden;
    background: #edeef2;
    box-shadow: 0 40px 80px -50px rgba(11, 31, 77, 0.5);
  }
  .prodx-feature-shot img { width: 100%; height: 100%; object-fit: cover; display: block; }
  /* The map shot is a full UI screenshot — show it complete, not cropped. */
  .prodx-feature-map .prodx-feature-shot { background: #fff; }
  .prodx-feature-map .prodx-feature-shot img { object-fit: contain; }
  .prodx-feature-panel { padding: clamp(40px, 5vw, 56px); display: flex; justify-content: center; }

  /* Dark feature */
  .prodx-feature-dark { background: #0b1f4d; color: #fff; overflow: hidden; position: relative; }
  .prodx-feature-dark .prodx-feature-inner { position: relative; z-index: 1; }
  .prodx-feature-rings { position: absolute; right: -160px; top: 50%; transform: translateY(-50%); pointer-events: none; }
  .prodx-feature-dark .t-eyebrow { color: #8fb8ff; }
  .prodx-feature-dark .t-h2 { color: #fff; }
  .prodx-feature-body-light { color: #b9c6e8; }

  .prodx-next { width: 100%; max-width: 380px; background: #fff; border-radius: 18px; padding: 26px; box-shadow: 0 40px 90px -40px rgba(0, 0, 0, 0.6); }
  .prodx-next-eyebrow { font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; color: #0c2abf; font-weight: 600; }
  .prodx-next-row { margin-top: 14px; display: flex; align-items: flex-start; gap: 14px; }
  .prodx-next-badge { flex: none; width: 40px; height: 40px; border-radius: 50%; background: #0c2abf; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 19px; font-weight: 600; }
  .prodx-next-title { font-size: 20px; font-weight: 600; color: #0b1f4d; letter-spacing: -0.01em; }
  .prodx-next-meta { margin-top: 4px; font-size: 13.5px; color: #6b7488; }
  .prodx-next-meta span { color: #0c2abf; font-weight: 600; }
  .prodx-next-cta { margin-top: 18px; height: 48px; border-radius: 12px; background: #0c2abf; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 14.5px; font-weight: 500; text-decoration: none; }
  .prodx-next-then { margin-top: 16px; padding-top: 14px; border-top: 1px solid #e8e8ed; font-size: 12px; letter-spacing: 0.05em; text-transform: uppercase; color: #8a93a8; }
  .prodx-next-after { margin-top: 8px; font-size: 14px; color: #4b5468; }

  /* Differentiation */
  .prodx-diff { background: #f5f5f7; }
  .prodx-diff-inner { max-width: 1180px; margin: 0 auto; padding: clamp(72px, 9vw, 112px) 24px; }
  .prodx-diff-head { text-align: center; max-width: 720px; margin: 0 auto; }
  .prodx-diff-head .t-eyebrow { font-size: 15px; }
  .prodx-diff-title { font-size: clamp(32px, 4vw, 54px); margin: 16px 0 0; }
  .prodx-diff .p-diff { margin-top: 52px; }
  .prodx-diff-card { background: #fff; border-radius: 20px; padding: 36px 30px; }
  .prodx-diff-card-harbor { background: #0b1f4d; }
  .prodx-diff-label { font-size: 13px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: #8a93a8; }
  .prodx-diff-card-harbor .prodx-diff-label { color: #8fb8ff; }
  .prodx-diff-card p { margin: 12px 0 0; font-size: 15.5px; line-height: 1.6; }
  .prodx-diff-card-harbor p { color: #dce4f5; }

  /* Lifestyle band */
  .prodx-life { background: #fff; }
  .prodx-life-inner { max-width: 1280px; margin: 0 auto; }
  .prodx-life-media { position: relative; width: 100%; height: min(58vw, 600px); overflow: hidden; }
  .prodx-life-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .prodx-life-scrim { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(11, 31, 77, 0.62) 0%, rgba(11, 31, 77, 0.28) 42%, rgba(11, 31, 77, 0) 68%); }
  .prodx-life-copy { position: absolute; left: 0; top: 0; height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 0 clamp(24px, 6vw, 88px); max-width: 680px; }
  .prodx-life-copy .prodx-life-title { color: #fff; font-size: clamp(30px, 4vw, 56px); }
  .prodx-life-lead { font-size: clamp(17px, 1.9vw, 21px); line-height: 1.45; margin: 18px 0 0; color: #e4eaf6; }

  /* Final CTA */
  .prodx-cta { background: #fff; }
  .prodx-cta-inner { max-width: 1000px; margin: 0 auto; padding: clamp(80px, 11vw, 130px) 24px; text-align: center; }
  .prodx-cta-title { font-size: clamp(44px, 6.4vw, 86px); }
  .prodx-cta-lead { font-size: clamp(18px, 2vw, 22px); line-height: 1.4; margin: 24px auto 0; max-width: 460px; }
  .prodx-cta-actions { margin-top: 34px; display: flex; justify-content: center; align-items: center; gap: 26px; flex-wrap: wrap; }

  @media (max-width: 940px) {
    .prodx .p-alt { grid-template-columns: 1fr; }
    .prodx .p-specs { grid-template-columns: 1fr 1fr; gap: 28px; }
    .prodx .p-diff { grid-template-columns: 1fr; }
    .prodx-feature-copy,
    .prodx-feature-media { padding: clamp(36px, 8vw, 56px) clamp(24px, 6vw, 40px); }
    .prodx-feature-panel { padding: clamp(28px, 7vw, 48px) clamp(24px, 6vw, 40px); }
    .prodx-life-copy { max-width: none; }
  }

  /* Contact / Support page (redesign) */
  .cx { background: #fff; color: #1d1d1f; }
  .cx .h-display { font-family: var(--font-marketing-editorial); font-weight: 400; letter-spacing: -0.005em; color: #0b1f4d; }
  .cx .h-em { font-style: italic; letter-spacing: 0; }

  .cx-kicker { display: flex; align-items: center; gap: 14px; }
  .cx-kicker-line { width: 36px; height: 1px; background: #8a93a8; display: inline-block; }
  .cx-kicker-text,
  .cx-faq-eyebrow { font-size: 12.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #8a93a8; }

  /* Hero */
  .cx-hero { border-bottom: 1px solid #e4e9f5; }
  .cx-hero-inner { max-width: 1240px; margin: 0 auto; padding: clamp(56px, 7vw, 84px) 32px clamp(52px, 6vw, 76px); }
  .cx .c-hero { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 64px; align-items: center; }
  .cx-hero-title { font-size: clamp(46px, 6vw, 88px); line-height: 0.98; margin: 22px 0 0; }
  .cx-hero-lead { margin: 24px 0 0; font-size: 19px; line-height: 1.55; color: #3a4256; max-width: 460px; }
  .cx-mail {
    margin-top: 34px;
    border: 1px solid #e4e9f5;
    border-radius: 16px;
    padding: 26px;
    display: flex;
    align-items: center;
    gap: 20px;
    background: #f5f8ff;
    text-decoration: none;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
  }
  .cx-mail:hover { border-color: #c7d2fe; box-shadow: 0 24px 50px -30px rgba(11, 31, 77, 0.3); }
  .cx-mail-icon { flex: none; display: inline-flex; width: 52px; height: 52px; border-radius: 12px; background: #fff; border: 1px solid #e4e9f5; align-items: center; justify-content: center; }
  .cx-mail-body { display: block; }
  .cx-mail-label { display: block; font-size: 12.5px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: #8a93a8; }
  .cx-mail-addr { display: inline-block; margin-top: 6px; font-size: 19px; font-weight: 600; letter-spacing: -0.01em; color: #0c2abf; }
  .cx-mail-note { display: block; margin-top: 6px; font-size: 13.5px; color: #5b6478; }
  .cx-hero-art-svg { display: flex; justify-content: center; margin-bottom: 24px; }
  .cx-hero-art-title { font-size: clamp(26px, 3vw, 38px); line-height: 1.1; margin: 0; }
  .cx-hero-art-lead { margin: 14px 0 0; font-size: 16.5px; line-height: 1.6; color: #3a4256; max-width: 420px; }

  /* Reach cards */
  .cx-reach-inner { max-width: 1240px; margin: 0 auto; padding: clamp(64px, 8vw, 96px) 32px; }
  .cx-reach-title { font-size: clamp(28px, 3.4vw, 44px); line-height: 1.05; margin: 0 0 40px; text-align: center; }
  .cx .c-reach { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .cx-reach-card {
    background: #fff;
    padding: 38px 28px;
    text-align: center;
    border: 1px solid #e4e9f5;
    border-radius: 18px;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
  }
  .cx-reach-card:hover { transform: translateY(-4px); box-shadow: 0 24px 50px -30px rgba(11, 31, 77, 0.35); border-color: #c7d2fe; }
  .cx-reach-icon { display: inline-flex; width: 60px; height: 60px; border-radius: 50%; align-items: center; justify-content: center; }
  .cx-reach-icon-support { background: #eef2ff; color: #0c2abf; }
  .cx-reach-icon-feedback { background: #e7f8ef; color: #0e8f4e; }
  .cx-reach-icon-feature { background: #f0eeff; color: #5b4bd6; }
  .cx-reach-icon-partner { background: #fef6e9; color: #c98a0b; }
  .cx-reach-card-title { margin-top: 18px; font-size: 17px; font-weight: 600; color: #0b1f4d; }
  .cx-reach-card-body { margin: 8px 0 0; font-size: 14.5px; line-height: 1.6; color: #5b6478; }

  /* FAQ */
  .cx-faq { background: #f5f8ff; border-top: 1px solid #e4e9f5; }
  .cx-faq-inner { max-width: 1240px; margin: 0 auto; padding: clamp(64px, 8vw, 96px) 32px; }
  .cx .c-faq { display: grid; grid-template-columns: 0.5fr 1fr; gap: 56px; align-items: start; }
  .cx-faq-title { font-size: clamp(30px, 3.6vw, 46px); line-height: 1.03; margin: 16px 0 0; }
  .cx-faq-lead { margin: 16px 0 0; font-size: 16px; line-height: 1.6; color: #3a4256; max-width: 320px; }
  .cx-faq-btn {
    margin-top: 24px;
    display: inline-flex;
    align-items: center;
    height: 48px;
    padding: 0 22px;
    border: 1px solid #0c2abf;
    border-radius: 11px;
    font-size: 15px;
    font-weight: 500;
    color: #0c2abf;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .cx-faq-btn:hover { background: #eef2ff; }
  .cx-faq-btn span { margin-left: 8px; }
  .cx-faq-list details { border: 1px solid #e4e9f5; border-radius: 12px; margin-bottom: 12px; background: #fff; transition: box-shadow 0.18s ease, border-color 0.18s ease; }
  .cx-faq-list details[open] { box-shadow: 0 18px 40px -28px rgba(11, 31, 77, 0.3); border-color: #c7d2fe; }
  .cx-faq-list summary { list-style: none; cursor: pointer; padding: 20px 22px; position: relative; font-size: 16px; font-weight: 600; color: #0b1f4d; }
  .cx-faq-list summary::-webkit-details-marker { display: none; }
  .cx-faq-list summary::after { content: "+"; position: absolute; right: 22px; top: 18px; font-size: 20px; font-weight: 400; color: #0c2abf; transition: transform 0.2s ease; }
  .cx-faq-list details[open] summary::after { content: "−"; }
  .cx-faq-list details p { margin: 0 22px 20px; font-size: 15px; line-height: 1.65; color: #3a4256; }
  .cx-faq-list summary:focus-visible { outline: 2px solid #0c2abf; outline-offset: 3px; border-radius: 8px; }

  /* CTA */
  .cx-cta { background: #0b1f4d; overflow: hidden; position: relative; }
  .cx-cta-rings { position: absolute; right: -160px; top: 50%; transform: translateY(-50%); pointer-events: none; max-width: none; }
  .cx-cta-inner { max-width: 1000px; margin: 0 auto; padding: clamp(80px, 11vw, 110px) 32px; text-align: center; position: relative; z-index: 1; }
  .cx-cta-title { font-size: clamp(40px, 5.4vw, 72px); line-height: 1; margin: 0; }
  .cx-cta .h-display { color: #fff; }
  .cx-cta .h-em { color: #8fb8ff; }
  .cx-cta-lead { margin: 20px auto 0; font-size: 17px; line-height: 1.55; color: #b9c6e8; max-width: 440px; }
  .cx-cta-actions { margin-top: 34px; display: flex; justify-content: center; align-items: center; gap: 24px; flex-wrap: wrap; }
  .cx-cta-btn {
    display: inline-flex;
    align-items: center;
    height: 56px;
    padding: 0 32px;
    border-radius: 12px;
    background: #fff;
    color: #0c2abf;
    font-size: 16.5px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .cx-cta-btn:hover { background: #eef2ff; color: #0c2abf; }
  .cx-cta-link { font-size: 15.5px; font-weight: 500; color: #8fb8ff; text-decoration: none; border-bottom: 1px solid rgba(143, 184, 255, 0.4); padding-bottom: 2px; }
  .cx-cta-link:hover { color: #b9ceff; }

  @media (max-width: 860px) {
    .cx .c-hero { grid-template-columns: 1fr; gap: 40px; }
    .cx .c-reach { grid-template-columns: 1fr 1fr; }
    .cx .c-faq { grid-template-columns: 1fr; gap: 24px; }
  }

/* Uploaded class-page composition */
.public-class-check-page {
  --class-border: #e4e9f5;
  --class-blue: #0c2abf;
  --class-ink: #0b1f4d;
  --class-muted: #6b7488;
  background: #fff;
  color: var(--class-ink);
}

.public-class-check-page > section {
  border-bottom: 1px solid var(--class-border);
}

.public-class-check-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(360px, 0.82fr);
  gap: 64px;
  align-items: start;
  max-width: 1300px;
  margin: 0 auto;
  padding: 64px 28px 72px;
}

.public-class-school-identity {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--class-border);
}

.public-class-school-identity > i {
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  border: 1px solid #c7d2fe;
  border-radius: 3px;
  background: #f5f8ff;
}

.public-class-school-identity > i svg {
  width: 27px;
  color: var(--class-blue);
}

.public-class-school-identity > strong {
  font-family: var(--font-display);
  font-size: 17px;
  font-weight: 600;
}

.public-class-school-identity > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-left: auto;
  padding: 6px 10px;
  border: 1px solid #c7d2fe;
  border-radius: 2px;
  color: var(--class-blue);
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-school-identity > span b {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #20c46b;
}

.public-class-course-graphic {
  display: flex;
  align-items: flex-end;
  gap: 18px;
  margin-top: 28px;
}

.public-class-course-graphic > strong {
  color: var(--class-ink);
  font-family: var(--font-mono);
  font-size: clamp(58px, 7.4vw, 92px);
  font-weight: 500;
  line-height: 0.84;
  letter-spacing: -0.06em;
  white-space: nowrap;
}

.public-class-course-graphic > strong span {
  color: #c7d2fe;
}

.public-class-course-graphic > span {
  max-width: 190px;
  padding-bottom: 7px;
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 10.5px;
  line-height: 1.55;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-check-copy .public-class-check-course-title {
  margin: 18px 0 0;
  color: var(--class-ink);
  font-family: var(--font-display);
  font-size: clamp(24px, 2.9vw, 36px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.025em;
}

.public-class-check-copy h1 {
  max-width: 620px;
  margin: 42px 0 0;
  font-family: var(--font-display);
  font-size: clamp(40px, 4.4vw, 58px);
  font-weight: 700;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.public-class-check-copy .public-class-check-lead,
.public-class-check-copy .public-class-check-sublead {
  max-width: 580px;
  margin-top: 24px;
  color: #3a4256;
  font-size: 19px;
  line-height: 1.5;
}

.public-class-check-copy .public-class-check-sublead {
  margin-top: 14px;
}

.public-class-check-actions {
  margin-top: 34px;
}

.public-class-check-actions .button {
  min-height: 54px;
  border-radius: 3px;
}

.public-class-check-reassurance {
  margin-top: 18px;
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.public-class-availability-card {
  margin: 0;
  padding: 30px 28px 26px;
  border: 0;
  border-radius: 4px;
  background: var(--class-ink);
  color: #fff;
  box-shadow: 0 40px 90px -50px rgba(11, 31, 77, 0.6);
}

.public-class-availability-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.public-class-availability-head > span,
.public-class-readiness-label,
.public-class-readiness-more,
.public-class-availability-card > small {
  color: #8fb8ff;
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.public-class-availability-head > b {
  padding: 5px 9px;
  border-radius: 2px;
  background: #8fb8ff;
  color: var(--class-ink);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-readiness-preview {
  display: flex;
  align-items: flex-end;
  gap: 18px;
  margin-top: 28px;
}

.public-class-readiness-preview > strong {
  color: #24407a;
  font-family: var(--font-mono);
  font-size: 74px;
  font-weight: 500;
  line-height: 0.82;
  letter-spacing: -0.06em;
}

.public-class-readiness-preview > strong small {
  font-size: 0.4em;
}

.public-class-readiness-preview > div {
  display: flex;
  flex-direction: column;
  padding-bottom: 4px;
}

.public-class-readiness-preview b {
  font-family: var(--font-display);
  font-size: 17px;
}

.public-class-readiness-preview span {
  margin-top: 4px;
  color: #8fb8ff;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-readiness-spectrum {
  display: grid;
  grid-template-columns: 1fr 0.78fr 1.18fr;
  height: 8px;
  margin: 28px 0 26px;
  overflow: hidden;
  border-radius: 2px;
}

.public-class-readiness-spectrum i:nth-child(1) { background: #267c70; }
.public-class-readiness-spectrum i:nth-child(2) { background: #385b91; }
.public-class-readiness-spectrum i:nth-child(3) { background: #614064; }

.public-class-availability-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.public-class-availability-list > div {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 48px;
  padding: 0 14px;
  border: 1px solid #24407a;
  border-radius: 3px;
}

.public-class-availability-list > div > i {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: #e5484d;
}

.public-class-availability-list > div strong {
  color: #e7edfb;
  font-size: 14px;
  font-weight: 500;
}

.public-class-availability-list > div span {
  color: #e5484d;
  font-family: var(--font-mono);
  font-size: 9.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-availability-list > div.is-staged {
  filter: blur(3px);
  opacity: 0.34;
}

.public-class-readiness-more {
  margin: 16px 0 20px;
  color: #6077a8;
  font-size: 9.5px;
}

.public-class-availability-card > a.button {
  display: flex;
  width: 100%;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  background: #fff;
  color: var(--class-ink);
  font-weight: 600;
}

.public-class-availability-card > small {
  display: block;
  margin-top: 12px;
  color: #6077a8;
  text-align: center;
}

.public-class-empty-map-card {
  display: flex;
  min-height: 490px;
  flex-direction: column;
}

.public-class-empty-map-card .public-class-availability-head b {
  border-color: rgba(143, 184, 255, 0.35);
  background: rgba(143, 184, 255, 0.08);
  color: #b9d2ff;
}

.public-class-empty-map-title {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 44px;
  padding-bottom: 30px;
  border-bottom: 1px solid #24407a;
}

.public-class-empty-map-title strong {
  display: block;
  color: #fff;
  font-family: var(--font-display);
  font-size: clamp(30px, 3vw, 40px);
  line-height: 1.08;
}

.public-class-empty-map-title span {
  color: #aebedf;
  font-size: 14px;
  line-height: 1.4;
}

.public-class-empty-readiness-list {
  display: grid;
  gap: 10px;
  margin-top: 26px;
}

.public-class-empty-readiness-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 54px;
  padding: 0 16px;
  border: 1px solid #24407a;
  border-radius: 3px;
}

.public-class-empty-readiness-list span {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #dce6fb;
  font-size: 14px;
  font-weight: 600;
}

.public-class-empty-readiness-list i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
}

.public-class-empty-readiness-list .is-solid i { background: #20c46b; }
.public-class-empty-readiness-list .is-shaky i { background: #e9a62b; }
.public-class-empty-readiness-list .is-missing i { background: #e5484d; }

.public-class-empty-readiness-list strong {
  color: #6077a8;
  font-family: var(--font-mono);
  font-size: 22px;
  font-weight: 500;
}

.public-class-empty-map-note {
  margin-top: auto;
  padding-top: 24px;
  color: #8fb8ff;
  font-size: 13px;
  line-height: 1.5;
}

.public-class-empty-journey {
  padding: 88px max(28px, calc((100vw - 1244px) / 2)) 96px;
  background: #f5f8ff;
}

.public-class-empty-journey > span {
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.public-class-empty-journey > h2 {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--class-ink);
  font-family: var(--font-display);
  font-size: clamp(42px, 5vw, 66px);
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.public-class-empty-journey > p {
  max-width: 720px;
  margin: 24px 0 0;
  color: #3a4256;
  font-size: 18px;
  line-height: 1.6;
}

.public-class-empty-journey > div {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-top: 52px;
  padding: 1px;
  background: #d6deef;
}

.public-class-empty-journey article {
  min-height: 236px;
  padding: 36px 34px;
  background: #fff;
}

.public-class-empty-journey article em {
  color: #8fb8ff;
  font-family: var(--font-mono);
  font-size: 13px;
  font-style: normal;
  letter-spacing: 0.14em;
}

.public-class-empty-journey article strong {
  display: block;
  margin-top: 32px;
  color: var(--class-ink);
  font-family: var(--font-display);
  font-size: 24px;
  line-height: 1.12;
}

.public-class-empty-journey article p {
  margin: 14px 0 0;
  color: #4d5b75;
  font-size: 15px;
  line-height: 1.55;
}

.public-class-empty-journey > aside {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 22px;
  padding: 28px 32px;
  border: 1px solid #d6deef;
  background: #fff;
}

.public-class-empty-journey > aside div {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.public-class-empty-journey > aside strong {
  color: var(--class-ink);
  font-family: var(--font-display);
  font-size: 20px;
}

.public-class-empty-journey > aside span {
  color: var(--class-muted);
  font-size: 14px;
}

.public-class-designer-check {
  padding: 72px max(28px, calc((100vw - 1244px) / 2)) 82px;
  background: var(--class-ink);
  color: #fff;
}

.public-class-designer-check > div:first-child {
  display: flex;
  justify-content: space-between;
  color: #8fb8ff;
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.public-class-designer-check > h2 {
  margin: 22px 0 36px;
  font-family: var(--font-display);
  font-size: clamp(38px, 4.4vw, 58px);
  line-height: 1;
  letter-spacing: -0.035em;
}

.public-class-designer-check .public-class-check-card {
  display: block;
  max-width: none;
  margin: 0;
  padding: 38px 0 0;
  border: 0;
  border-top: 1px solid #24407a;
  border-radius: 0;
  background: transparent;
}

.public-class-designer-check .public-class-check-question {
  display: block;
  padding: 0;
}

.public-class-designer-check .public-class-check-icon {
  display: none;
}

.public-class-designer-check .public-class-check-question > div {
  display: block;
}

.public-class-designer-check .public-class-check-question h2 {
  max-width: 900px;
  margin: 0;
  color: #fff;
  font-size: clamp(28px, 3.2vw, 42px);
}

.public-class-designer-check .public-class-check-options {
  gap: 12px;
  padding: 32px 0 0;
}

.public-class-designer-check .public-class-check-options label {
  grid-template-columns: 28px minmax(0, 1fr) 26px;
  min-height: 62px;
  padding: 12px 22px;
  border-color: #24407a;
  background: transparent;
  color: #e7edfb;
}

.public-class-designer-check .public-class-check-options label > span {
  color: #8fb8ff;
}

.public-class-designer-check .public-class-check-options label:hover {
  border-color: #8fb8ff;
  background: rgba(255, 255, 255, 0.035);
}

.public-class-designer-check .public-class-check-options label.is-selected {
  border-color: #8fb8ff;
  background: rgba(143, 184, 255, 0.1);
}

.public-class-designer-check .public-class-check-options label.is-correct {
  border-color: #42c681;
  background: rgba(66, 198, 129, 0.1);
}

.public-class-designer-check .public-class-check-options label.is-wrong {
  border-color: #ffb35b;
  background: rgba(255, 179, 91, 0.1);
}

.public-class-designer-check .public-class-check-explainer {
  display: flex;
  min-height: 0;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 22px;
  padding: 22px 0 0;
  border-top: 1px solid #24407a;
  border-left: 0;
  color: #fff;
}

.public-class-designer-check .public-class-check-explainer p {
  max-width: 680px;
  color: #b9c6e8;
}

.public-class-designer-check .public-class-check-bars {
  display: none;
}

.public-class-minute-section,
.public-class-topic-weights,
.public-class-preview-grid,
.public-class-study-proof,
.public-class-sprint-offer,
.public-class-final-cta {
  max-width: none;
  margin: 0;
  border-radius: 0;
}

.public-class-minute-section {
  padding: 76px max(28px, calc((100vw - 1244px) / 2)) 84px;
  text-align: center;
}

.public-class-minute-section > span,
.public-class-topic-weights > span {
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.public-class-minute-section > h2 {
  max-width: 760px;
  margin: 18px auto 56px;
  font-family: var(--font-display);
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.04;
  letter-spacing: -0.035em;
}

.public-class-minute-card {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  padding: 1px;
  background: var(--class-border);
}

.public-class-minute-card article {
  min-height: 248px;
  padding: 42px 36px;
  border: 0;
  border-radius: 0;
  background: #fff;
  text-align: left;
}

.public-class-minute-card .public-class-minute-icon,
.public-class-preview-flow .public-class-preview-icon {
  width: 44px;
  height: 44px;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
}

.public-class-minute-card .public-class-minute-icon.is-target {
  background: url("/assets/public-class-minute-matters-icon.png") center / contain no-repeat;
}

.public-class-minute-card .public-class-minute-icon.is-brain {
  background: url("/assets/public-class-minute-knowledge-icon.png") center / contain no-repeat;
}

.public-class-minute-card .public-class-minute-icon.is-trend {
  background: url("/assets/public-class-minute-pass-icon.png") center / contain no-repeat;
}

.public-class-minute-card article strong {
  display: block;
  margin-top: 26px;
  font-family: var(--font-display);
  font-size: 22px;
}

.public-class-minute-card article p {
  color: #3a4256;
  font-size: 16px;
  line-height: 1.55;
}

.public-class-topic-weights {
  padding: 82px max(28px, calc((100vw - 1244px) / 2)) 92px;
  background: #fff;
}

.public-class-topic-weights > h2 {
  max-width: 720px;
  margin: 18px 0 52px;
  font-family: var(--font-display);
  font-size: clamp(38px, 4vw, 54px);
  line-height: 1.02;
  letter-spacing: -0.04em;
}

.public-class-topic-table > div {
  display: grid;
  grid-template-columns: 56px minmax(220px, 1fr) minmax(180px, 260px) 100px;
  gap: 24px;
  align-items: center;
  min-height: 66px;
  border-bottom: 1px solid var(--class-border);
}

.public-class-topic-table span,
.public-class-topic-table em,
.public-class-topic-weights > small {
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 10.5px;
  font-style: normal;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-topic-table strong {
  font-size: 16px;
  font-weight: 500;
}

.public-class-topic-table i {
  height: 7px;
  overflow: hidden;
  background: #eef1f8;
}

.public-class-topic-table i b {
  display: block;
  height: 100%;
  background: var(--class-ink);
}

.public-class-topic-table .is-heading {
  min-height: 42px;
}

.public-class-topic-table .is-heading i {
  height: auto;
  background: transparent;
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 10px;
  font-style: normal;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-class-topic-weights > small {
  display: block;
  margin-top: 28px;
}

.public-class-preview-grid {
  padding: 80px max(28px, calc((100vw - 1244px) / 2)) 88px;
  background: #f5f8ff;
}

.public-class-preview-flow {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.public-class-preview-flow > h2 {
  max-width: 700px;
  margin: 0 0 54px;
  font-family: var(--font-display);
  font-size: clamp(40px, 4.2vw, 56px);
  line-height: 1.02;
  letter-spacing: -0.04em;
}

.public-class-preview-flow > div {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.public-class-preview-flow > div section {
  position: relative;
  min-height: 284px;
  padding: 42px 34px;
  overflow: hidden;
  border: 1px solid #d6deef;
  border-radius: 4px;
  background: #fff;
}

.public-class-preview-flow > div section > em {
  position: absolute;
  top: 4px;
  right: 18px;
  color: #eef2ff;
  font-family: var(--font-mono);
  font-size: 80px;
  font-style: normal;
  line-height: 1;
}

.public-class-preview-flow .public-class-preview-icon.is-element {
  background: url("/assets/public-class-flow-elements-icon.png") center / contain no-repeat;
}

.public-class-preview-flow .public-class-preview-icon.is-chart {
  background: url("/assets/public-class-flow-read-icon.png") center / contain no-repeat;
}

.public-class-preview-flow .public-class-preview-icon.is-list {
  background: url("/assets/public-class-flow-next-icon.png") center / contain no-repeat;
}

.public-class-preview-flow > div section strong {
  display: block;
  margin-top: 24px;
  font-family: var(--font-display);
  font-size: 24px;
  line-height: 1.15;
}

.public-class-preview-flow > div section p {
  color: #3a4256;
  font-size: 16px;
  line-height: 1.55;
}

.public-class-preview-flow > aside {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 22px;
  padding: 28px 32px;
  border: 1px solid #d6deef;
  background: #fff;
}

.public-class-preview-flow > aside div {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.public-class-preview-flow > aside strong {
  font-family: var(--font-display);
  font-size: 20px;
}

.public-class-preview-flow > aside span {
  color: var(--class-muted);
  font-size: 14px;
}

.public-class-study-proof {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  padding: 80px max(28px, calc((100vw - 1244px) / 2));
  background: var(--class-border);
}

.public-class-study-proof article {
  display: block;
  position: relative;
  min-height: 160px;
  padding: 0 34px;
  background: #fff;
}

.public-class-study-proof article:first-child { padding-left: 0; }
.public-class-study-proof article:last-child { padding-right: 0; }

.public-class-study-proof article span {
  display: block;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--class-blue);
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.public-class-study-proof article span::before,
.public-class-study-proof article span::after {
  content: none;
}

.public-class-study-proof article strong {
  display: block;
  margin-top: 15px;
  font-family: var(--font-display);
  font-size: 22px;
  line-height: 1.2;
}

.public-class-sprint-offer {
  display: block;
  padding: 84px max(28px, calc((100vw - 900px) / 2));
  background: #f5f8ff;
}

.public-class-sprint-offer h2 {
  margin-top: 16px;
  font-family: var(--font-display);
  font-size: clamp(34px, 3.5vw, 46px);
  line-height: 1.04;
  letter-spacing: -0.035em;
}

.public-class-sprint-offer form {
  margin-top: 32px;
  padding: 0;
  border: 0;
  background: transparent;
}

.public-class-sprint-topic-list {
  display: none;
}

.public-class-sprint-offer form > small {
  display: block;
  margin-top: 14px;
  color: #8a93a8;
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.public-class-final-cta {
  padding: 116px max(28px, calc((100vw - 1244px) / 2)) 124px;
  background: var(--class-ink);
  color: #fff;
  justify-items: start;
  text-align: left;
}

.public-class-final-cta > span {
  color: #8fb8ff;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.public-class-final-cta > h2 {
  max-width: 1000px;
  margin: 22px 0 0;
  color: #fff;
  font-family: var(--font-display);
  font-size: clamp(62px, 8vw, 124px);
  line-height: 0.92;
  letter-spacing: -0.05em;
}

.public-class-final-cta > p {
  max-width: 560px;
  margin: 24px 0 0;
  color: #b9c6e8;
  font-size: 19px;
  line-height: 1.52;
}

.public-class-final-cta .button {
  min-height: 58px;
  margin-top: 34px;
  border-radius: 3px;
  background: #fff;
  color: var(--class-ink);
}

.public-class-final-cta .public-cta-row {
  justify-content: flex-start;
}

@media (max-width: 900px) {
  .public-class-check-hero,
  .public-class-sprint-offer {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .public-class-course-graphic {
    align-items: flex-start;
    flex-direction: column;
  }

  .public-class-course-graphic > span {
    max-width: none;
  }

  .public-class-minute-card,
  .public-class-preview-flow > div,
  .public-class-empty-journey > div,
  .public-class-study-proof {
    grid-template-columns: 1fr;
  }

  .public-class-study-proof article,
  .public-class-study-proof article:first-child,
  .public-class-study-proof article:last-child {
    padding: 30px 0;
    border-left: 0;
    border-top: 1px solid var(--class-border);
  }

  .public-class-study-proof article:first-child {
    border-top: 0;
  }

  .public-class-topic-table > div {
    grid-template-columns: 36px minmax(0, 1fr) 74px;
    gap: 14px;
  }

  .public-class-topic-table > div > i {
    display: none;
  }
}

@media (max-width: 560px) {
  .public-class-check-hero {
    padding: 36px 20px 52px;
  }

  .public-class-school-identity > span {
    display: none;
  }

  .public-class-course-graphic > strong {
    font-size: clamp(48px, 15vw, 66px);
  }

  .public-class-check-copy h1 {
    font-size: 42px;
  }

  .public-class-check-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .public-class-designer-check,
  .public-class-minute-section,
  .public-class-topic-weights,
  .public-class-preview-grid,
  .public-class-empty-journey,
  .public-class-study-proof,
  .public-class-sprint-offer,
  .public-class-final-cta {
    padding-right: 20px;
    padding-left: 20px;
  }

  .public-class-preview-flow > aside {
    align-items: stretch;
    flex-direction: column;
  }

  .public-class-empty-journey > aside {
    align-items: stretch;
    flex-direction: column;
  }

  .public-class-designer-check .public-class-check-explainer,
  .public-class-sprint-input-row {
    align-items: stretch;
    flex-direction: column;
    grid-template-columns: 1fr;
  }

  .public-class-final-cta > h2 {
    font-size: 58px;
  }
}

  @media (max-width: 520px) {
    .cx .c-reach { grid-template-columns: 1fr; }
  }

  /* FAQ page (redesign) */
  .faqx { background: #fff; color: #111827; }
  .faqx .h-display { font-family: var(--font-marketing-editorial); font-weight: 400; letter-spacing: -0.005em; color: #0b1f4d; }
  .faqx .h-em { font-style: italic; letter-spacing: 0; }

  .faqx-hero { max-width: 760px; margin: 0 auto; padding: clamp(56px, 7vw, 88px) 24px 8px; }
  .faqx-kicker { display: flex; align-items: center; gap: 14px; }
  .faqx-kicker-line { width: 36px; height: 1px; background: #8a93a8; display: inline-block; }
  .faqx-kicker-text { font-size: 12.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #8a93a8; }
  .faqx-title { font-size: clamp(42px, 5.6vw, 72px); line-height: 0.98; margin: 20px 0 0; }
  .faqx-sub { margin: 20px 0 0; font-size: 18px; line-height: 1.55; color: #3a4256; }

  .faqx-list { max-width: 760px; margin: 0 auto; padding: 40px 24px 8px; }
  .faqx-item { border-top: 1px solid #eef1f8; }
  .faqx-item:last-of-type { border-bottom: 1px solid #eef1f8; }
  .faqx-item summary {
    list-style: none;
    cursor: pointer;
    padding: 24px 40px 24px 0;
    position: relative;
    font-size: 17px;
    font-weight: 600;
    color: #0b1f4d;
  }
  .faqx-item summary::-webkit-details-marker { display: none; }
  .faqx-item summary::after {
    content: "+";
    position: absolute;
    right: 4px;
    top: 22px;
    font-size: 22px;
    font-weight: 400;
    color: #0c2abf;
    transition: transform 0.2s ease;
  }
  .faqx-item[open] summary::after { content: "−"; }
  .faqx-item summary:focus-visible { outline: 2px solid #0c2abf; outline-offset: 3px; border-radius: 4px; }
  .faqx-item p { margin: 0 0 24px; font-size: 15.5px; line-height: 1.7; color: #3a4256; max-width: 620px; }
  .faqx-item p a { color: #0c2abf; font-weight: 500; }
  .faqx-item p a:hover { color: #0a22a0; }

  .faqx-support-wrap { max-width: 760px; margin: 0 auto; padding: 48px 24px 96px; }
  .faqx-support {
    border: 1px solid #c7d2fe;
    background: #f5f8ff;
    border-radius: 16px;
    padding: 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
  }
  .faqx-support-title { font-size: 24px; line-height: 1.2; }
  .faqx-support-sub { margin: 8px 0 0; font-size: 15px; line-height: 1.6; color: #5b6478; }
  .faqx-support-sub a { color: #0c2abf; font-weight: 500; }
  .faqx-support-btn {
    flex: none;
    display: inline-flex;
    align-items: center;
    height: 52px;
    padding: 0 26px;
    border-radius: 12px;
    background: #0c2abf;
    color: #fff;
    font-size: 15.5px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .faqx-support-btn:hover { background: #0a22a0; color: #fff; }

  /* Pricing page (redesign) */
  .px { background: #fff; color: #111827; }
  .px .h-display { font-family: var(--font-marketing-editorial); font-weight: 400; letter-spacing: -0.005em; color: #0b1f4d; }
  .px .h-em { font-style: italic; letter-spacing: 0; }
  .px-section-title { font-size: clamp(28px, 3.4vw, 42px); line-height: 1.06; margin: 0 0 40px; text-align: center; }

  /* Plan cards */
  .px-plans { max-width: 1140px; margin: 0 auto; padding: clamp(48px, 6vw, 72px) 24px 40px; }
  .px-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: stretch; }
  .px-tier {
    position: relative;
    border: 1px solid #e4e9f5;
    border-radius: 20px;
    padding: 36px 32px;
    display: flex;
    flex-direction: column;
    background: #fff;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
  }
  .px-tier:hover { transform: translateY(-4px); box-shadow: 0 30px 60px -34px rgba(11, 31, 77, 0.3); border-color: #c7d2fe; }
  .px-tier--rec { border: 1.5px solid #0c2abf; box-shadow: 0 26px 60px -28px rgba(12, 42, 191, 0.45); }
  .px-tier--rec:hover { box-shadow: 0 40px 80px -34px rgba(12, 42, 191, 0.5); border-color: #0c2abf; }
  .px-badge {
    display: inline-flex;
    align-self: flex-start;
    background: #0c2abf;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.03em;
    padding: 6px 12px;
    border-radius: 8px;
    margin-bottom: 16px;
  }
  .px-eyebrow { font-size: 13px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: #8a93a8; }
  .px-eyebrow--rec { color: #0c2abf; }
  .px-price { margin-top: 14px; display: flex; align-items: flex-end; gap: 8px; }
  .px-num { font-family: var(--font-display); font-weight: 600; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; font-size: 46px; line-height: 0.9; color: #0b1f4d; }
  .px-per { padding-bottom: 7px; font-size: 15px; color: #8a93a8; }
  .px-sub { margin: 14px 0 0; font-size: 15px; line-height: 1.55; color: #5b6478; }
  .px-feats { margin-top: 24px; display: flex; flex-direction: column; gap: 12px; }
  .px-feat { display: flex; gap: 11px; align-items: flex-start; font-size: 14.5px; line-height: 1.5; color: #1b2436; }
  .px-chk { flex: none; display: inline-flex; width: 20px; height: 20px; border-radius: 50%; background: #e7f8ef; color: #0e8f4e; align-items: center; justify-content: center; font-size: 11px; margin-top: 1px; }
  .px-cta-wrap { margin-top: auto; padding-top: 30px; }
  .px-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 50px;
    border-radius: 11px;
    font-size: 15.5px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
    font-family: inherit;
  }
  .px-btn--fill { background: #0c2abf; color: #fff; border: 1px solid #0c2abf; }
  .px-btn--fill:hover { background: #0a22a0; border-color: #0a22a0; color: #fff; }
  .px-btn--outline { background: #fff; color: #0c2abf; border: 1px solid #0c2abf; }
  .px-btn--outline:hover { background: #eef2ff; color: #0c2abf; }

  /* Alive comparison */
  .px-alive-section { max-width: 1140px; margin: 0 auto; padding: 32px 24px; }
  .px-alive-card { border: 1px solid #e4e9f5; border-radius: 20px; padding: clamp(32px, 5vw, 48px) clamp(24px, 4vw, 40px); }
  .px-alive { display: grid; grid-template-columns: 1fr auto 1fr; gap: 28px; align-items: center; }
  .px-alive-col { border-radius: 16px; padding: 30px 28px; }
  .px-alive-col--bad { border: 1px solid #f3d2d5; background: #fdf4f5; }
  .px-alive-col--good { border: 1px solid #c7d2fe; background: #f5f8ff; }
  .px-alive-head { font-size: 16px; font-weight: 600; color: #b4262b; margin-bottom: 18px; }
  .px-alive-head--good { color: #0c2abf; }
  .px-alive-item { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.45; color: #3a4256; margin-top: 14px; }
  .px-alive-item:first-of-type { margin-top: 0; }
  .px-alive-item--good { color: #1b2436; }
  .px-alive-mark { flex: none; display: inline-flex; width: 20px; height: 20px; border-radius: 50%; color: #fff; align-items: center; justify-content: center; font-size: 11px; margin-top: 1px; }
  .px-alive-mark--x { background: #e5484d; font-size: 12px; }
  .px-alive-mark--check { background: #0c2abf; }
  .px-vs { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border: 1px solid #e4e9f5; border-radius: 14px; font-size: 16px; font-weight: 600; color: #0c2abf; background: #fff; }

  /* Comparison table */
  .px-table-section { max-width: 1140px; margin: 0 auto; padding: 32px 24px 40px; }
  .px-table-card { border: 1px solid #e4e9f5; border-radius: 20px; padding: clamp(32px, 5vw, 48px) clamp(24px, 4vw, 40px); }
  .px-table-scroll { overflow-x: auto; }
  .px-table { width: 100%; border-collapse: collapse; min-width: 620px; }
  .px-table th, .px-table td { padding: 16px 18px; font-size: 15px; }
  .px-table thead th { padding: 14px 18px; font-size: 12.5px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: #0b1f4d; text-align: center; }
  .px-table thead th:first-child { text-align: left; }
  .px-row-label { text-align: left; font-size: 12.5px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: #0c2abf; border-top: 1px solid #eef1f8; }
  .px-table tbody td { text-align: center; color: #5b6478; border-top: 1px solid #eef1f8; }
  .px-col-rec { background: #f5f8ff; border: 1px solid #c7d2fe; border-bottom: none; border-radius: 12px 12px 0 0; }
  .px-col-rec-inner { display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; }
  .px-col-rec-pill { font-size: 10.5px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: #fff; background: #0c2abf; padding: 4px 8px; border-radius: 6px; }
  .px-table td.px-cell-rec { font-weight: 600; color: #0b1f4d; background: #f5f8ff; border-left: 1px solid #c7d2fe; border-right: 1px solid #c7d2fe; border-top: 1px solid #eef1f8; }
  .px-table td.px-cell-rec-last { border-bottom: 1px solid #c7d2fe; border-radius: 0 0 12px 12px; }

  /* Pricing FAQ (static list) */
  .px-faq-section { max-width: 760px; margin: 0 auto; padding: 56px 24px 40px; }
  .px-faq-title { font-size: clamp(30px, 3.6vw, 44px); line-height: 1.05; margin: 0 0 24px; }
  .px-faq-list { display: flex; flex-direction: column; }
  .px-faq-item { padding: 22px 0; border-top: 1px solid #eef1f8; }
  .px-faq-item:last-child { border-bottom: 1px solid #eef1f8; }
  .px-faq-q { font-size: 16px; font-weight: 600; color: #0b1f4d; }
  .px-faq-a { margin: 8px 0 0; font-size: 15px; line-height: 1.6; color: #5b6478; }

  /* Closing CTA band */
  .px-cta-section { max-width: 1140px; margin: 0 auto; padding: 16px 24px 96px; }
  .px-cta-band { position: relative; overflow: hidden; border-radius: 24px; background: #0b1f4d; padding: clamp(44px, 6vw, 64px) clamp(28px, 5vw, 56px); display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 40px; align-items: center; }
  .px-cta-copy { position: relative; z-index: 1; }
  .px-cta-title { font-size: clamp(32px, 4vw, 52px); line-height: 1.04; margin: 0; }
  .px-cta-band .h-display { color: #fff; }
  .px-cta-title .h-em { color: #8fb8ff; }
  .px-cta-lead { margin: 18px 0 0; font-size: 17px; line-height: 1.55; color: #b9c6e8; max-width: 440px; }
  .px-cta-actions { margin-top: 28px; display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
  .px-cta-btn { display: inline-flex; align-items: center; height: 52px; padding: 0 28px; border-radius: 980px; background: #fff; color: #0c2abf; font-size: 16px; font-weight: 600; text-decoration: none; transition: background 0.15s ease; }
  .px-cta-btn:hover { background: #eef2ff; color: #0c2abf; }
  .px-cta-btn--ghost { background: transparent; color: #fff; border: 1px solid rgba(255, 255, 255, 0.3); font-weight: 500; }
  .px-cta-btn--ghost:hover { background: rgba(255, 255, 255, 0.08); color: #fff; }
  .px-cta-fine { margin-top: 20px; font-size: 14px; color: #93a4ce; }
  .px-cta-art { position: relative; height: 280px; display: flex; align-items: center; justify-content: center; }
  .px-cta-art svg { max-width: 100%; height: auto; }

  @media (min-width: 981px) {
    .px-tier--rec { transform: scale(1.03); }
    .px-tier--rec:hover { transform: scale(1.03) translateY(-4px); }
  }

  @media (max-width: 980px) {
    .px-grid { grid-template-columns: 1fr; max-width: 440px; margin-left: auto; margin-right: auto; }
    .px-alive { grid-template-columns: 1fr; }
    .px-vs { margin: 0 auto; }
    .px-cta-band { grid-template-columns: 1fr; }
    .px-cta-art { display: none; }
  }

  /* Careers page (redesign) */
  .cr { background: #fff; color: #111827; }

  .cr-hero { background: #f5f8ff; border-bottom: 1px solid #e4e9f5; }
  .cr-hero-inner { max-width: 820px; margin: 0 auto; padding: clamp(56px, 7vw, 88px) 24px clamp(52px, 6vw, 76px); }
  .cr-kicker { font-size: 13.5px; font-weight: 500; color: #0c2abf; }
  .cr-title {
    margin: 16px 0 0;
    max-width: 12ch;
    font-family: var(--font-display);
    font-weight: 600;
    font-size: clamp(2.56rem, 5.6vw, 4.56rem);
    line-height: 0.98;
    letter-spacing: -0.05em;
    color: #061b4d;
  }
  .cr-title span { color: #0c2abf; }
  .cr-sub { margin: 20px 0 0; max-width: 40rem; font-size: clamp(1.06rem, 2vw, 1.26rem); line-height: 1.6; color: #30476f; }

  .cr-open { max-width: 1080px; margin: 0 auto; padding: clamp(56px, 8vw, 88px) 24px; }
  .cr-open-head { text-align: center; }
  .cr-eyebrow { font-size: 13px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: #0c2abf; }
  .cr-h2 {
    margin: 14px 0 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(2rem, 4vw, 3rem);
    letter-spacing: -0.04em;
    line-height: 1.02;
    color: #061b4d;
  }

  .cr-list { margin-top: 44px; border: 1px solid #e4e9f5; border-radius: 18px; overflow: hidden; }
  .cr-role {
    display: grid;
    grid-template-columns: auto minmax(0, 1.1fr) 130px minmax(0, 1.4fr) auto;
    align-items: center;
    gap: 24px;
    padding: 26px 28px;
    border-bottom: 1px solid #eef1f8;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .cr-role-last { border-bottom: none; }
  .cr-role:hover { background: #f5f8ff; }
  .cr-ico { display: inline-flex; align-items: center; justify-content: center; color: #0c2abf; }
  .cr-role-title { font-size: 17px; font-weight: 600; color: #0b1f4d; }
  .cr-role-dept { margin-top: 3px; font-size: 13.5px; color: #8a93a8; }
  .cr-type { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; font-size: 14px; font-weight: 500; color: #3a4256; }
  .cr-type svg { flex: none; color: #0c2abf; }
  .cr-desc { font-size: 14.5px; line-height: 1.5; color: #3a4256; }
  .cr-arrow { display: inline-flex; align-items: center; justify-content: center; color: #0c2abf; transition: transform 0.15s ease; }
  .cr-role:hover .cr-arrow { transform: translate(2px, -2px); }
  .cr-note { margin: 28px 0 0; font-size: 15px; line-height: 1.6; color: #5b6478; text-align: center; }
  .cr-note a { font-weight: 500; }

  @media (max-width: 820px) {
    .cr-role { grid-template-columns: auto 1fr auto; row-gap: 6px; align-items: start; }
    .cr-type { display: none; }
    .cr-arrow { grid-column: 3; grid-row: 1; }
    .cr-desc { grid-column: 2 / 3; grid-row: 2; font-size: 13.5px; color: #5b6478; }
  }

  /* About page (redesign) */
  .ab { background: #fff; color: #111827; }
  .ab .h-display { font-family: var(--font-marketing-editorial); font-weight: 400; letter-spacing: -0.005em; color: #0b1f4d; }
  .ab .h-em { font-style: italic; letter-spacing: 0; }

  .ab-hero { border-bottom: 1px solid #e4e9f5; }
  .ab-hero-inner { max-width: 1080px; margin: 0 auto; padding: clamp(56px, 7vw, 88px) 32px clamp(52px, 6vw, 80px); }
  .ab-kicker { font-size: 12.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #8a93a8; }
  .ab-title { margin: 22px 0 0; max-width: 900px; font-size: clamp(46px, 6.4vw, 92px); line-height: 0.96; }
  .ab-sub { margin: 24px 0 0; max-width: 560px; font-size: 19px; line-height: 1.55; color: #3a4256; }

  .ab-section { border-bottom: 1px solid #eef1f8; }
  .ab-inner { max-width: 1080px; margin: 0 auto; padding: clamp(64px, 9vw, 96px) 32px; }
  .ab-row { display: grid; grid-template-columns: 0.5fr 1fr; gap: 56px; align-items: start; }
  .ab-h2 { margin: 0; font-size: clamp(26px, 3vw, 36px); line-height: 1.08; }
  .ab-body p { margin: 0; font-size: 17px; line-height: 1.7; color: #3a4256; }
  .ab-body p + p { margin-top: 18px; }

  .ab-eyebrow { font-size: 12.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #0c2abf; }
  .ab-problem-statement { margin: 16px 0 0; max-width: 900px; font-size: clamp(34px, 4.6vw, 64px); line-height: 1.04; }
  .ab-problem-body { margin: 22px 0 0; max-width: 560px; font-size: 17px; line-height: 1.7; color: #3a4256; }

  .ab-manifesto { position: relative; overflow: hidden; background: #0b1f4d; }
  .ab-manifesto-rings { position: absolute; right: -140px; bottom: -240px; pointer-events: none; max-width: none; }
  .ab-manifesto-inner { position: relative; z-index: 1; max-width: 1400px; margin: 0 auto; padding: clamp(80px, 14vw, 150px) 32px; text-align: center; }
  .ab-manifesto-text { margin: 0; font-size: clamp(30px, 5.6vw, 84px); line-height: 1.1; }
  .ab-manifesto .h-display { color: #fff; }
  .ab-manifesto .h-em { color: #8fb8ff; white-space: nowrap; }

  .ab-cta { max-width: 1080px; margin: 0 auto; padding: clamp(56px, 8vw, 72px) 32px clamp(80px, 12vw, 112px); text-align: center; }
  .ab-cta-title { margin: 0; font-size: clamp(44px, 5.6vw, 76px); line-height: 1; }
  .ab-cta-actions { margin-top: 30px; display: flex; gap: 24px; justify-content: center; align-items: center; flex-wrap: wrap; }
  .ab-cta-btn {
    display: inline-flex;
    align-items: center;
    height: 56px;
    padding: 0 30px;
    border-radius: 12px;
    background: #0c2abf;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s ease;
  }
  .ab-cta-btn:hover { background: #0a22a0; color: #fff; }
  .ab-cta-link { font-size: 15.5px; font-weight: 500; color: #0c2abf; text-decoration: none; border-bottom: 1px solid rgba(12, 42, 191, 0.3); padding-bottom: 2px; }
  .ab-cta-link:hover { color: #0a22a0; }

  @media (max-width: 820px) {
    .ab-row { grid-template-columns: 1fr; gap: 20px; }
  }

  /* Legal — copyright infringement claim (redesign) */
  .lgc { background: #fff; color: #111827; }
  .lgc .h-display { font-family: var(--font-marketing-editorial); font-weight: 400; letter-spacing: -0.005em; color: #0b1f4d; }

  .lgc-hero { background: #f5f8ff; border-bottom: 1px solid #e4e9f5; }
  .lgc-hero-inner { max-width: 760px; margin: 0 auto; padding: clamp(52px, 6.5vw, 80px) 24px clamp(40px, 5vw, 56px); }
  .lgc-kicker { display: flex; align-items: center; gap: 14px; }
  .lgc-kicker-line { width: 36px; height: 1px; background: #8a93a8; display: inline-block; }
  .lgc-kicker-text { font-size: 12.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #8a93a8; }
  .lgc-title { margin: 18px 0 0; font-size: clamp(36px, 4.6vw, 60px); line-height: 1; }
  .lgc-sub { margin: 18px 0 0; max-width: 560px; font-size: 17px; line-height: 1.6; color: #3a4256; }

  .lgc-body { background: #fff; }
  .lgc-shell { max-width: 760px; margin: 0 auto; padding: clamp(40px, 6vw, 64px) 24px clamp(72px, 10vw, 112px); }

  .lgc-message {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-bottom: 28px;
    padding: 16px 20px;
    border-radius: 12px;
    font-size: 15px;
    line-height: 1.5;
  }
  .lgc-message strong { font-weight: 600; }
  .lgc-message.is-success { background: #e7f8ef; border: 1px solid #b6e6c9; color: #0e8f4e; }
  .lgc-message.is-success strong { color: #0b6b3a; }
  .lgc-message.is-error { background: #fdeef0; border: 1px solid #f3d2d5; color: #b4262b; }
  .lgc-message.is-error strong { color: #8f1d21; }

  .lgc-form { display: flex; flex-direction: column; gap: 20px; }
  .lgc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .lgc-field { display: flex; flex-direction: column; }
  .lgc-field > span {
    margin-bottom: 8px;
    font-size: 13.5px;
    font-weight: 600;
    letter-spacing: -0.005em;
    color: #0b1f4d;
  }
  .lgc-field input,
  .lgc-field textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #d6deef;
    border-radius: 11px;
    background: #fff;
    color: #111827;
    font-size: 15px;
    font-family: inherit;
    line-height: 1.5;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
  }
  .lgc-field input { height: 48px; }
  .lgc-field textarea { resize: vertical; min-height: 88px; }
  .lgc-field input::placeholder,
  .lgc-field textarea::placeholder { color: #9aa6bd; }
  .lgc-field input:focus,
  .lgc-field textarea:focus {
    border-color: #0c2abf;
    box-shadow: 0 0 0 3px rgba(12, 42, 191, 0.12);
  }

  .lgc-check {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 18px 20px;
    border: 1px solid #e4e9f5;
    border-radius: 12px;
    background: #f7f9ff;
    font-size: 14.5px;
    line-height: 1.55;
    color: #3a4256;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease;
  }
  .lgc-check:hover { border-color: #c7d2fe; background: #f5f8ff; }
  .lgc-check input {
    flex: none;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    accent-color: #0c2abf;
    cursor: pointer;
  }

  .lgc-submit {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    padding: 0 30px;
    margin-top: 4px;
    border: none;
    border-radius: 12px;
    background: #0c2abf;
    color: #fff;
    font-size: 15.5px;
    font-weight: 500;
    font-family: inherit;
    cursor: pointer;
    transition: background 0.15s ease;
  }
  .lgc-submit:hover { background: #0a22a0; }

  @media (max-width: 620px) {
    .lgc-grid { grid-template-columns: 1fr; }
    .lgc-submit { align-self: stretch; }
  }

  /* Academic Integrity / Trust page (redesign) */
  .trx { background: #fff; color: #111827; }
  .trx .h-display { font-family: var(--font-marketing-editorial); font-weight: 400; letter-spacing: -0.005em; color: #0b1f4d; }
  .trx .h-em { font-style: italic; letter-spacing: 0; }

  .trx-hero { border-bottom: 1px solid #e4e9f5; overflow: hidden; }
  .trx-hero-inner { max-width: 1240px; margin: 0 auto; padding: clamp(56px, 7vw, 84px) 32px clamp(52px, 6vw, 76px); }
  .trx .t-hero { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 60px; align-items: center; }
  .trx-kicker { display: flex; align-items: center; gap: 14px; }
  .trx-kicker-line { width: 36px; height: 1px; background: #8a93a8; display: inline-block; }
  .trx-kicker-text { font-size: 12.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #8a93a8; }
  .trx-title { margin: 22px 0 0; font-size: clamp(44px, 6vw, 84px); line-height: 0.98; }
  .trx-sub { margin: 24px 0 0; max-width: 480px; font-size: 19px; line-height: 1.55; color: #3a4256; }
  .trx-hero-art { display: flex; justify-content: center; }
  .trx-hero-art svg { max-width: 100%; height: auto; }

  .trx-principles { max-width: 1240px; margin: 0 auto; padding: clamp(64px, 9vw, 104px) 32px 0; }
  .trx .t-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: #e4e9f5;
    border: 1px solid #e4e9f5;
    border-radius: 16px;
    overflow: hidden;
  }
  .trx-cell { background: #fff; padding: clamp(28px, 3.5vw, 40px); }
  .trx-cell-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: #0c2abf; }
  .trx-cell-title { margin: 14px 0 0; font-size: 28px; line-height: 1.15; }
  .trx-cell-body { margin: 14px 0 0; font-size: 15.5px; line-height: 1.65; color: #3a4256; }

  .trx-matrix { max-width: 900px; margin: 0 auto; padding: clamp(64px, 9vw, 104px) 32px; }
  .trx-matrix-title { margin: 0; font-size: clamp(30px, 3.6vw, 44px); line-height: 1.05; }
  .trx-matrix-sub { margin: 16px 0 0; max-width: 520px; font-size: 16.5px; line-height: 1.6; color: #3a4256; }
  .trx-matrix-list { margin-top: 36px; border: 1px solid #e4e9f5; border-radius: 16px; overflow: hidden; }
  .trx-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 24px;
    border-bottom: 1px solid #eef1f8;
  }
  .trx-row-last { border-bottom: none; }
  .trx-row-text { font-size: 15.5px; line-height: 1.5; color: #1b2436; }
  .trx-pill {
    flex: none;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 999px;
    white-space: nowrap;
  }
  .trx-pill-dot { width: 7px; height: 7px; border-radius: 50%; }
  .trx-pill-yes { color: #0e8f4e; background: #e7f8ef; }
  .trx-pill-yes .trx-pill-dot { background: #20c46b; }
  .trx-pill-no { color: #b4262b; background: #fdeced; }
  .trx-pill-no .trx-pill-dot { background: #e5484d; }
  .trx-pill-follow { color: #8a5a08; background: #fef6e9; }
  .trx-pill-follow .trx-pill-dot { background: #f79009; }

  .trx-legal { background: #0b1f4d; }
  .trx-legal-inner { max-width: 1080px; margin: 0 auto; padding: clamp(64px, 9vw, 96px) 32px; }
  .trx-legal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .trx-legal-card {
    display: block;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 14px;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.03);
    transition: background 0.15s ease, border-color 0.15s ease;
  }
  .trx-legal-card:hover { background: rgba(255, 255, 255, 0.07); border-color: rgba(255, 255, 255, 0.28); }
  .trx-legal-card-label { font-size: 17px; font-weight: 600; color: #fff; }
  .trx-legal-card-sub { margin-top: 6px; font-size: 14px; color: #8fb8ff; }
  .trx-legal-note { margin: 34px 0 0; font-size: 15px; line-height: 1.6; color: #b9c6e8; }
  .trx-legal-note a { color: #fff; font-weight: 500; }
  .trx-legal-note a:hover { color: #dce4f5; }

  @media (max-width: 860px) {
    .trx .t-hero { grid-template-columns: 1fr; gap: 40px; }
    .trx-hero-art { order: -1; }
    .trx .t-grid { grid-template-columns: 1fr; }
    .trx-legal-grid { grid-template-columns: 1fr; }
  }
