:root {
  --about-ink: #28134e;
  --about-purple: #7430ea;
  --about-paper: #f8f4ff;
  --about-lilac: #e8dcff;
  --about-muted: #57476b;
  --about-rule: #d8cce8;
}

body:has(.about-page) { background: #fff; color: var(--about-ink); font-family: "Inter Tight", Inter, Arial, sans-serif; }
body:has(.about-page) > .gcu-region {
  position: absolute;
  inset: 0 0 auto;
  z-index: 5;
  min-height: 0;
  overflow: visible;
  background: #28134e;
  color: #f8f4ff;
}
body:has(.about-page) > .gcu-region .gcu-content {
  min-height: 390px;
  padding-inline: clamp(1rem, 5vw, 5rem);
  background: linear-gradient(135deg, #28134e 0%, #3b1b69 66%, #51259a 100%);
}
body:has(.about-page) > .gcu-region .gcu-header {
  margin-inline: calc(-1 * clamp(1rem, 5vw, 5rem));
  padding-inline: clamp(1rem, 2vw, 2rem);
  background: #28134e;
  border-bottom-color: rgba(248,244,255,.35);
}
body:has(.about-page) > .gcu-region .gcu-hero-copy,
body:has(.about-page) > .gcu-region .gcu-secondary-art { display: none; }
body:has(.about-page) > main { padding-top: 390px; }
.about-page { width: 100%; }
.about-frame { width: min(100% - 3rem, 1160px); margin-inline: auto; }
.about-page section { min-width: 0; }
.about-intro {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(190px, .6fr);
  align-items: end;
  gap: clamp(2rem, 6vw, 6rem);
  padding: clamp(4.5rem, 9vw, 8.5rem) 0 clamp(4rem, 7vw, 6.5rem);
  border-bottom: 1px solid var(--about-rule);
}
.about-intro__copy { max-width: 760px; }
/* Explicit page-owned behavior for scaffold and observation hooks used in the narrative lead. */
.about-page .layout-grid-fw, .about-page .js-observe-block { min-width: 0; }
.about-page .v-element-47 { grid-area: 1 / 1; }
.about-kicker { margin: 0 0 1rem; color: var(--about-purple); font-size: .76rem; font-weight: 800; letter-spacing: .13em; line-height: 1.4; }
.about-page h1, .about-page h2, .about-page h3 { color: var(--about-ink); }
.about-intro h1 { max-width: 780px; margin: 0; font-size: clamp(2.8rem, 6.3vw, 6rem); font-weight: 850; letter-spacing: -.055em; line-height: .98; }
.about-page p { line-height: 1.7; }
.about-intro p:not(.about-kicker) { max-width: 690px; margin: 1.35rem 0 0; color: var(--about-muted); font-size: clamp(1rem, 1.4vw, 1.15rem); }
.about-intro .about-lede { color: var(--about-ink); font-size: clamp(1.18rem, 1.8vw, 1.45rem); line-height: 1.5; }
.about-intro__stamp { min-height: 190px; padding: 1.5rem; color: white; background: var(--about-purple); text-align: center; font-weight: 700; }
.about-intro__stamp-mark { display: grid; width: 90px; height: 90px; place-items: center; margin-bottom: 1rem; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; font-size: 2.1rem; font-weight: 900; letter-spacing: -.1em; }
.about-consent-fallback { position: absolute; width: 1px; height: 1px; opacity: 0; }
.about-section { display: grid; grid-template-columns: minmax(210px, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 8vw, 8rem); padding: clamp(3.75rem, 7vw, 6.4rem) 0; border-bottom: 1px solid var(--about-rule); }
.about-scope { align-items: start; }
.about-section__heading h2, .about-process h2, .about-revisits h2, .about-contact h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.04; letter-spacing: -.045em; }
.about-section__body p, .about-features__body p, .about-limits__body p, .about-reading__note p, .about-revisits p, .about-contact p, .about-process__lead > p:last-child { margin: 0 0 1rem; color: var(--about-muted); font-size: 1.05rem; }
.about-principles { display: block; }
.about-principles .about-section__heading { max-width: 680px; }
.about-section__intro { max-width: 720px; margin: 1.5rem 0 2.5rem; color: var(--about-muted); font-size: 1.08rem; line-height: 1.7; }
.about-principles__grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); border: 1px solid var(--about-rule); }
.about-principle { min-height: 210px; padding: 1.4rem; border-right: 1px solid var(--about-rule); }
.about-principle:last-child { border-right: 0; }
.about-principle__number { color: var(--about-purple); font-size: .8rem; font-weight: 800; }
.about-principle h3, .about-process__steps h3 { margin: 1.8rem 0 .55rem; font-size: 1.18rem; }
.about-principle p, .about-process__steps p { margin: 0; color: var(--about-muted); font-size: .94rem; line-height: 1.6; }
.about-chapter { grid-template-columns: 130px minmax(0, 1fr); gap: clamp(2rem, 7vw, 7rem); }
.about-chapter__number { color: var(--about-purple); font-size: clamp(3.5rem, 8vw, 7rem); font-weight: 900; letter-spacing: -.08em; line-height: .85; }
.about-chapter h2 { max-width: 780px; margin: 0 0 1.25rem; font-size: clamp(2.1rem, 4.6vw, 4.2rem); letter-spacing: -.05em; line-height: 1; }
.about-chapter p:not(.about-kicker) { max-width: 760px; margin: .7rem 0; color: var(--about-muted); font-size: 1.05rem; }
.about-chapter--tint { margin-inline: calc((min(100vw - 3rem, 1160px) - 100vw) / 2); padding-inline: max(1.5rem, calc((100vw - 1160px) / 2)); background: var(--about-paper); }
.about-features { align-items: start; }
.about-process { grid-template-columns: minmax(240px, .8fr) minmax(0, 1.2fr); }
.about-process__lead > p:last-child { max-width: 380px; margin-top: 1.1rem; }
.about-process__steps { margin: 0; padding: 0; list-style: none; }
.about-process__steps li { display: grid; grid-template-columns: 48px 1fr; gap: 1rem; padding: 1.35rem 0; border-top: 1px solid var(--about-rule); }
.about-process__steps li > span { color: var(--about-purple); font-weight: 800; }
.about-process__steps h3 { margin: 0 0 .4rem; }
.about-reading__note { padding: 1.8rem; background: var(--about-paper); }
.about-reading { align-items: start; }
.about-reading__note p:last-child { margin-bottom: 0; }
.about-limits { background: #fff; }
.about-revisits { grid-template-columns: 130px minmax(0, 1fr); }
.about-revisits__marker { display: grid; width: 76px; height: 76px; place-items: center; border-radius: 50%; background: var(--about-purple); color: white; font-size: 2rem; }
.about-contact { align-items: center; margin: 2rem 0 5rem; border: 0; background: var(--about-paper); }
.about-contact > div:first-child { max-width: 620px; }
.about-contact p { margin: 1rem 0 0; }
.about-contact__actions { display: flex; flex-wrap: wrap; gap: .85rem; }
.about-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: .75rem 1.25rem; border: 1px solid var(--about-purple); background-color: var(--about-purple); color: #fff; font-weight: 750; text-decoration: none; }
.about-button--outline { border-color: var(--about-ink); background-color: var(--about-ink); }
.about-button:focus-visible { outline: 3px solid #28134e; outline-offset: 4px; }
.about-page a:focus-visible { outline: 3px solid var(--about-purple); outline-offset: 4px; }
@media (max-width: 760px) {
  body:has(.about-page) > .gcu-region .gcu-content { min-height: 250px; padding-inline: 1rem; }
  body:has(.about-page) > .gcu-region .gcu-header { margin-inline: -1rem; }
  body:has(.about-page) > main { padding-top: 250px; }
  .about-frame { width: min(100% - 2rem, 1160px); }
  .about-intro { grid-template-columns: 1fr; gap: 2rem; padding-top: 3.5rem; }
  .about-intro__stamp { width: min(100%, 230px); min-height: 150px; }
  .about-section, .about-process { grid-template-columns: 1fr; gap: 1.5rem; }
  .about-principles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-principle:nth-child(2) { border-right: 0; }
  .about-principle:nth-child(-n+2) { border-bottom: 1px solid var(--about-rule); }
  .about-chapter, .about-revisits { grid-template-columns: 68px minmax(0, 1fr); gap: 1rem; }
  .about-chapter__number { font-size: 3.7rem; }
  .about-chapter--tint { margin-inline: -1rem; padding-inline: 1rem; }
  .about-contact { margin-bottom: 3rem; }
}
@media (max-width: 440px) {
  .about-intro h1 { font-size: clamp(2.4rem, 13vw, 3.25rem); }
  .about-principle { min-height: 190px; padding: 1rem; }
  .about-principle h3 { margin-top: 1.1rem; }
  .about-chapter, .about-revisits { grid-template-columns: 1fr; }
  .about-chapter__number { font-size: 2.8rem; }
  .about-revisits__marker { width: 56px; height: 56px; }
  .about-contact__actions, .about-button { width: 100%; }
}
