:root {
  color-scheme: light;
  --ink: #101d2b;
  --ink-soft: #293848;
  --paper: #f5f3eb;
  --white: #fffef9;
  --line: #d9d8ce;
  --lime: #dcff66;
  --coral: #ff795f;
  --muted: #68717a;
  --font-body: 'DM Sans', 'Avenir Next', Avenir, sans-serif;
  --font-display: 'Space Grotesk', 'Arial Rounded MT Bold', Arial, sans-serif;
  --content: 1220px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--font-body); font-size: 16px; line-height: 1.55; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--lime); color: var(--ink); }
.skip-link { position: absolute; z-index: 20; top: -100px; left: 18px; padding: 12px 16px; color: var(--ink); background: var(--lime); font-weight: 700; }
.skip-link:focus { top: 12px; }

.site-header { position: sticky; z-index: 10; top: 0; border-bottom: 1px solid rgba(16,29,43,.13); background: rgba(245,243,235,.95); backdrop-filter: blur(14px); }
.header-inner { width: min(var(--content), calc(100% - 56px)); min-height: 86px; margin: auto; display: flex; align-items: center; gap: 22px; }
.brand { display: flex; flex: 0 0 auto; align-items: center; width: 190px; }
.brand img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; }
.brand-note { margin: 0 auto 0 0; color: #52606b; font-size: 9px; font-weight: 700; letter-spacing: .14em; }
.main-nav { display: flex; align-items: center; gap: clamp(16px, 2.2vw, 30px); }
.main-nav a { text-decoration: none; font-size: 12px; font-weight: 700; letter-spacing: .01em; }
.main-nav a:not(.nav-cta):hover, .main-nav a:not(.nav-cta):focus-visible { text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 2px; text-underline-offset: 5px; }
.nav-cta { display: inline-flex; align-items: center; gap: 11px; padding: 13px 17px; border: 1px solid var(--ink); background: var(--lime); }
.nav-cta:hover, .nav-cta:focus-visible { background: var(--coral); }
.menu-toggle { display: none; }

.hero { position: relative; overflow: hidden; min-height: 645px; color: var(--white); background: var(--ink); }
.hero::before { position: absolute; top: -205px; right: -130px; width: 610px; height: 610px; border: 1px solid rgba(220,255,102,.17); border-radius: 50%; content: ''; }
.hero::after { position: absolute; top: -145px; right: -75px; width: 500px; height: 500px; border: 1px solid rgba(220,255,102,.11); border-radius: 50%; content: ''; }
.hero-grain { position: absolute; inset: 0; pointer-events: none; opacity: .13; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E"); }
.hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(270px, .7fr); gap: clamp(42px, 7vw, 105px); align-items: center; width: min(var(--content), calc(100% - 56px)); min-height: 595px; margin: auto; padding: 68px 0 72px; }
.hero-copy { max-width: 730px; }
.eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 22px; font-size: 10px; font-weight: 700; letter-spacing: .15em; line-height: 1.4; }
.eyebrow.light { color: #d2d7d6; }
.eyebrow-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--coral); box-shadow: 0 0 0 5px rgba(255,121,95,.12); }
h1, h2, h3, p { overflow-wrap: break-word; }
h1, h2, h3 { font-family: var(--font-display); }
.hero h1 { max-width: 785px; margin: 0; font-size: clamp(46px, 6.2vw, 82px); font-weight: 600; letter-spacing: -.075em; line-height: .99; }
.hero-name { color: var(--coral); }
.hero-highlight { color: var(--lime); }
.hero-lede { max-width: 500px; margin: 27px 0 0; color: #d1d6d5; font-size: 17px; line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 31px; }
.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 16px; padding: 14px 19px; border: 1px solid transparent; font-size: 13px; font-weight: 700; text-decoration: none; transition: transform .18s ease, background .18s ease; }
.button:hover, .button:focus-visible { transform: translateY(-3px); }
.button-lime { color: var(--ink); background: var(--lime); }
.button-lime:hover, .button-lime:focus-visible { background: var(--coral); }
.button-navy { color: var(--white); background: var(--ink); }
.button-navy:hover, .button-navy:focus-visible { color: var(--ink); background: var(--coral); }
.text-link { display: inline-flex; align-items: center; gap: 9px; padding: 7px 0; font-size: 13px; font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.text-link span { transition: transform .18s ease; }
.text-link:hover span, .text-link:focus-visible span { transform: translateX(4px); }
.light-link { color: var(--white); }
.hero-footnote { display: flex; align-items: center; gap: 8px; margin-top: 34px; color: #abb5ba; font-size: 11px; }
.footnote-star { color: var(--lime); font-size: 17px; }
.hero-visual { position: relative; width: min(100%, 360px); margin: 3px auto 0; }
.portrait-frame { position: relative; padding: 18px 15px 13px; border: 1px solid rgba(255,255,255,.5); background: #142638; transform: rotate(2deg); }
.frame-stamp { position: absolute; z-index: 2; top: -13px; right: 12px; padding: 7px 10px; color: var(--ink); background: var(--lime); font-size: 9px; font-weight: 700; letter-spacing: .12em; transform: rotate(3deg); }
.image-slot { position: relative; display: flex; overflow: hidden; flex-direction: column; align-items: center; justify-content: center; min-height: 385px; border: 1px dashed rgba(255,255,255,.52); color: var(--white); background: repeating-linear-gradient(135deg, #1a2d40, #1a2d40 14px, #1d3245 14px, #1d3245 28px); text-align: center; }
.image-slot::after { position: absolute; inset: 10px; border: 1px solid rgba(220,255,102,.18); content: ''; pointer-events: none; }
.slot-index { position: absolute; top: 25px; left: 24px; color: var(--lime); font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.slot-camera { display: grid; width: 47px; height: 47px; place-items: center; border: 1px solid var(--lime); border-radius: 50%; color: var(--lime); font-size: 28px; font-weight: 400; line-height: 1; }
.slot-label { margin-top: 17px; font-family: var(--font-display); font-size: 25px; font-weight: 700; letter-spacing: -.04em; line-height: 1.08; }
.slot-caption { max-width: 215px; margin-top: 11px; color: #c6d0d4; font-size: 10px; }
.portrait-caption { display: flex; flex-direction: column; gap: 2px; padding: 12px 2px 0; color: var(--white); }
.portrait-caption span:first-child { font-family: var(--font-display); font-size: 13px; font-weight: 700; }
.portrait-caption span:last-child { color: #aeb8bb; font-size: 8px; font-weight: 600; letter-spacing: .11em; }
.orbit-note { position: absolute; right: -38px; bottom: 79px; display: flex; width: 97px; height: 97px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid var(--ink); border-radius: 50%; color: var(--ink); background: var(--coral); font-size: 8px; font-weight: 700; letter-spacing: .08em; text-align: center; transform: rotate(-10deg); }
.orbit-note b { font-family: var(--font-display); font-size: 27px; line-height: 1; }
.hero-bottom { position: absolute; right: 0; bottom: 0; left: 0; display: flex; justify-content: space-between; padding: 16px max(28px, calc((100vw - var(--content))/2)); border-top: 1px solid rgba(255,255,255,.17); color: #aab4b9; font-size: 9px; font-weight: 700; letter-spacing: .15em; }
.hero-bottom b { margin-left: 8px; color: var(--lime); font-size: 16px; }

.parody-notice { display: grid; grid-template-columns: 40px 1fr auto; gap: 18px; align-items: center; padding: 23px max(28px, calc((100vw - var(--content))/2)); color: var(--ink); background: var(--lime); }
.notice-symbol { display: grid; width: 34px; height: 34px; place-items: center; border: 2px solid var(--ink); border-radius: 50%; font-family: var(--font-display); font-size: 18px; font-weight: 700; }
.parody-notice p { max-width: 890px; margin: 0; font-size: 13px; line-height: 1.6; }
.parody-notice strong { font-weight: 700; }
.notice-side { padding-left: 18px; border-left: 1px solid rgba(16,29,43,.28); font-size: 9px; font-weight: 700; letter-spacing: .1em; line-height: 1.45; }
.section-pad { padding: 106px max(28px, calc((100vw - var(--content))/2)); }
.section-heading { display: grid; grid-template-columns: 1.1fr .9fr; column-gap: 40px; align-items: end; }
.section-heading .eyebrow { grid-column: 1 / -1; }
.section-number { display: inline-grid; min-width: 27px; height: 23px; place-items: center; padding: 0 6px; color: var(--ink); background: var(--lime); font-size: 10px; letter-spacing: .03em; }
.section-heading h2, .offers-intro h2, .story-copy h2, .resource-heading h2, .testimonial-heading h2, .contact-copy h2 { margin: 0; font-size: clamp(40px, 5.5vw, 68px); font-weight: 600; letter-spacing: -.07em; line-height: .99; }
.section-heading h2 span, .story-copy h2 span, .resource-heading h2 span { color: #66737b; }
.section-intro { max-width: 405px; margin: 0 0 5px auto; color: #54616b; font-size: 14px; }
.proof-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-top: 48px; }
.proof-card { position: relative; min-height: 212px; padding: 24px; border: 1px solid var(--ink); }
.proof-card-lime { background: var(--lime); }
.proof-card-white { background: var(--white); }
.proof-card-navy { color: var(--white); background: var(--ink); }
.proof-kicker { display: block; font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.proof-value { display: block; margin-top: 24px; font-family: var(--font-display); font-size: clamp(32px,4vw,48px); font-weight: 700; letter-spacing: -.06em; line-height: 1.05; }
.proof-card p { max-width: 260px; margin: 9px 0 0; font-size: 12px; }
.proof-card-navy p { color: #d1d7d8; }
.placeholder-note { margin: 16px 0 0; color: #5d676e; font-size: 11px; }
.placeholder-note span { margin-right: 5px; color: #d0644b; font-size: 16px; }

.offers-section { color: var(--white); background: var(--ink); }
.offers-topline { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.offers-topline .eyebrow { margin-bottom: 0; }
.scribble { color: var(--lime); font-family: var(--font-display); font-size: 11px; font-weight: 700; transform: rotate(-3deg); }
.offers-intro { display: grid; grid-template-columns: 1fr .65fr; gap: 40px; align-items: end; margin-top: 33px; }
.offers-intro h2 span, .testimonial-heading h2 span { color: var(--lime); }
.offers-intro > p { max-width: 395px; margin: 0 0 5px auto; color: #c3cbd0; font-size: 14px; }
.offer-list { margin-top: 52px; border-top: 1px solid rgba(255,255,255,.28); }
.offer-card { display: grid; grid-template-columns: 70px minmax(0,1fr) 54px; gap: 24px; align-items: center; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.28); }
.offer-no { align-self: start; padding-top: 6px; color: var(--lime); font-family: var(--font-display); font-size: 16px; font-weight: 700; }
.offer-category { margin: 0 0 6px; color: var(--lime); font-size: 9px; font-weight: 700; letter-spacing: .15em; }
.offer-main h3 { margin: 0; font-size: clamp(20px,3vw,30px); font-weight: 600; letter-spacing: -.04em; }
.offer-main > p:last-child { max-width: 680px; margin: 8px 0 0; color: #c7d0d3; font-size: 13px; }
.offer-link { display: grid; width: 45px; height: 45px; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: var(--lime); font-size: 21px; text-decoration: none; transition: color .18s, background .18s, transform .18s; }
.offer-link:hover, .offer-link:focus-visible { color: var(--ink); background: var(--lime); transform: rotate(45deg); }
.offer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 24px; }
.offer-bottom > span { color: #abb6bc; font-size: 9px; font-weight: 700; letter-spacing: .12em; }

.story-section { display: grid; grid-template-columns: .8fr 1fr; gap: clamp(52px, 9vw, 130px); align-items: center; }
.story-visual { position: relative; width: min(100%, 425px); }
.story-image-slot { min-height: 460px; border-color: #869091; color: var(--ink); background: repeating-linear-gradient(135deg,#e8e7df,#e8e7df 14px,#f0efe7 14px,#f0efe7 28px); transform: rotate(-2deg); }
.story-image-slot::after { border-color: rgba(16,29,43,.18); }
.story-image-slot .slot-index, .story-image-slot .slot-camera { color: var(--ink); border-color: var(--ink); }
.story-image-slot .slot-label { color: var(--ink); }
.story-image-slot .slot-caption { color: #59646b; }
.story-sticker { position: absolute; top: 39px; right: -31px; display: flex; width: 88px; height: 88px; flex-direction: column; align-items: center; justify-content: center; border-radius: 50%; color: var(--ink); background: var(--coral); font-size: 10px; font-weight: 700; line-height: 1.1; text-align: center; transform: rotate(9deg); }
.story-sticker b { font-size: 17px; }
.visual-credit { display: block; margin: 19px 0 0; color: #778087; font-size: 8px; letter-spacing: .1em; text-align: center; }
.story-copy h2 { margin: 0; }
.story-lede { max-width: 530px; margin: 23px 0 0; font-size: 17px; }
.story-body { max-width: 530px; margin: 18px 0 24px; color: #526069; font-size: 13px; }
.story-body p { margin: 0 0 13px; }
.story-copy .text-link { font-size: 12px; }

.resources-section { background: #eae9e0; }
.resource-heading { display: grid; grid-template-columns: 1.1fr .7fr; gap: 35px; align-items: end; }
.resource-heading h2 { margin: 0; font-size: clamp(39px,5vw,63px); font-weight: 600; letter-spacing: -.07em; line-height: .99; }
.resource-heading > p { max-width: 375px; margin: 0 0 5px auto; color: #5b666d; font-size: 13px; }
.resource-list { margin-top: 46px; border-top: 1px solid var(--ink); }
.resource-item { display: grid; grid-template-columns: 180px minmax(200px,1.15fr) minmax(160px,.9fr) 30px; gap: 20px; align-items: center; padding: 20px 12px 20px 4px; border-bottom: 1px solid var(--ink); text-decoration: none; transition: padding .18s, background .18s; }
.resource-item:hover, .resource-item:focus-visible { padding-right: 18px; padding-left: 13px; background: var(--white); }
.resource-type { color: #56616a; font-size: 9px; font-weight: 700; letter-spacing: .12em; }
.resource-item strong { font-family: var(--font-display); font-size: 16px; letter-spacing: -.03em; }
.resource-desc { color: #5e686e; font-size: 11px; }
.resource-arrow { justify-self: end; font-size: 18px; }
.resource-item-accent { background: var(--lime); }
.resource-item-accent:hover, .resource-item-accent:focus-visible { background: var(--coral); }

.testimonial-section { display: grid; grid-template-columns: .9fr 1.1fr; gap: 65px; align-items: center; color: var(--white); background: var(--ink); }
.testimonial-heading h2 { font-size: clamp(39px,4.7vw,58px); }
.testimonial-heading > p:last-child { max-width: 390px; margin: 18px 0 0; color: #c4cdd0; font-size: 13px; }
.testimonial-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.quote-card { position: relative; min-height: 255px; margin: 0; padding: 24px 20px 18px; border: 1px solid rgba(255,255,255,.4); background: #172739; }
.quote-card-tilt { background: #222f3b; transform: translateY(13px) rotate(1deg); }
.quote-mark { color: var(--lime); font-family: Georgia,serif; font-size: 50px; line-height: .8; }
.quote-card > p { min-height: 86px; margin: 11px 0 20px; font-family: var(--font-display); font-size: 16px; font-weight: 500; line-height: 1.35; }
.quote-card footer { display: flex; align-items: center; gap: 10px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.24); }
.quote-avatar { display: grid; width: 37px; height: 37px; place-items: center; border: 1px dashed var(--lime); border-radius: 50%; color: var(--lime); font-size: 7px; font-weight: 700; }
.quote-card footer strong, .quote-card footer small { display: block; }
.quote-card footer strong { font-size: 10px; }
.quote-card footer small { margin-top: 2px; color: #b6c0c5; font-size: 8px; }

.contact-section { position: relative; display: grid; overflow: hidden; grid-template-columns: 1fr .65fr; gap: 55px; background: var(--coral); }
.contact-copy { position: relative; z-index: 1; }
.contact-copy h2 { font-size: clamp(43px,5.8vw,72px); }
.contact-copy h2 span { text-decoration: underline; text-decoration-color: var(--ink); text-decoration-thickness: 3px; text-underline-offset: 8px; }
.contact-copy > p:not(.eyebrow) { max-width: 470px; margin: 22px 0 25px; color: #263441; font-size: 14px; }
.contact-details { position: relative; z-index: 1; align-self: center; }
.contact-detail { padding: 18px 0; border-top: 1px solid rgba(16,29,43,.45); }
.contact-detail:last-child { border-bottom: 1px solid rgba(16,29,43,.45); }
.contact-label { display: block; margin-bottom: 8px; font-size: 9px; font-weight: 700; letter-spacing: .15em; }
.contact-detail > a { font-size: 14px; font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.social-links { display: flex; flex-direction: column; gap: 6px; }
.social-links a { width: fit-content; font-size: 13px; font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.social-links a span { font-weight: 500; }
.contact-placeholder-note { color: #33404a; font-size: 10px; }
.contact-placeholder-note code { font-family: ui-monospace,SFMono-Regular,Consolas,monospace; font-size: 10px; }
.contact-decoration { position: absolute; right: 10px; bottom: 6px; color: rgba(16,29,43,.055); font-family: var(--font-display); font-size: clamp(90px,18vw,240px); font-weight: 700; letter-spacing: -.11em; line-height: .73; pointer-events: none; }

.site-footer { padding: 36px max(28px, calc((100vw - var(--content))/2)) 22px; color: var(--white); background: var(--ink); }
.footer-brand { display: inline-block; font-family: var(--font-display); font-size: 29px; font-weight: 700; letter-spacing: -.08em; text-decoration: none; }
.footer-brand span { color: var(--lime); }
.site-footer > p:not(.footer-disclaimer) { margin: 5px 0 28px; color: #bfc7c9; font-size: 11px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 15px; padding: 15px 0; border-top: 1px solid rgba(255,255,255,.2); color: #bfc7c9; font-size: 9px; font-weight: 600; letter-spacing: .08em; }
.footer-bottom a { color: var(--lime); text-decoration: none; }
.footer-bottom a:hover, .footer-bottom a:focus-visible { text-decoration: underline; }
.footer-disclaimer { margin: 0; color: #8d999f; font-size: 9px; }

:focus-visible { outline: 3px solid #f26d4b; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

@media (max-width: 920px) {
  .header-inner { width: min(var(--content), calc(100% - 40px)); }
  .brand { width: 165px; }
  .brand-note { display: none; }
  .main-nav { gap: 17px; margin-left: auto; }
  .main-nav a { font-size: 11px; }
  .hero-inner { grid-template-columns: minmax(0,1.2fr) minmax(230px,.75fr); gap: 40px; width: calc(100% - 52px); }
  .hero h1 { font-size: clamp(44px,7vw,67px); }
  .hero-visual { width: min(100%, 315px); }
  .image-slot { min-height: 330px; }
  .orbit-note { right: -26px; width: 80px; height: 80px; }
  .section-pad { padding-top: 82px; padding-bottom: 82px; }
  .testimonial-section { gap: 38px; }
  .resource-item { grid-template-columns: 145px minmax(180px,1.1fr) minmax(140px,.9fr) 24px; gap: 14px; }
}

@media (max-width: 680px) {
  html { scroll-padding-top: 76px; }
  .header-inner { position: relative; min-height: 72px; width: calc(100% - 36px); justify-content: space-between; gap: 12px; }
  .brand { width: 158px; }
  .menu-toggle { display: inline-flex; min-height: 42px; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid var(--ink); color: var(--ink); background: transparent; font: inherit; font-size: 11px; font-weight: 700; }
  .menu-toggle-icon { display: flex; width: 18px; flex-direction: column; gap: 5px; }
  .menu-toggle-icon i { display: block; height: 2px; background: currentColor; transition: transform .2s; }
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon i:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon i:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .main-nav { position: absolute; top: calc(100% - 1px); right: -18px; left: -18px; display: none; align-items: stretch; gap: 0; padding: 7px 18px 16px; border-bottom: 1px solid var(--ink); background: var(--paper); }
  .main-nav.is-open { display: flex; flex-direction: column; }
  .main-nav a { padding: 14px 3px; border-bottom: 1px solid var(--line); font-size: 13px; }
  .main-nav .nav-cta { justify-content: space-between; margin-top: 12px; padding: 13px 14px; border: 1px solid var(--ink); }
  .hero { min-height: auto; }
  .hero-inner { grid-template-columns: 1fr; gap: 40px; width: calc(100% - 40px); min-height: auto; padding: 67px 0 66px; }
  .hero h1 { max-width: 560px; font-size: clamp(43px,12vw,67px); }
  .hero-lede { font-size: 15px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 9px; }
  .hero-footnote { margin-top: 23px; }
  .hero-visual { width: min(84%, 340px); margin: 5px auto 12px; }
  .image-slot { min-height: 350px; }
  .orbit-note { right: -27px; bottom: 72px; }
  .hero-bottom { padding: 12px 20px; font-size: 7px; }
  .parody-notice { grid-template-columns: 32px 1fr; gap: 12px; padding: 18px 20px; }
  .notice-symbol { width: 29px; height: 29px; font-size: 15px; }
  .parody-notice p { font-size: 11px; }
  .notice-side { grid-column: 2; width: fit-content; padding: 5px 0 0; border-top: 1px solid rgba(16,29,43,.28); border-left: 0; font-size: 8px; }
  .section-pad { padding: 69px 20px; }
  .section-heading { grid-template-columns: 1fr; gap: 17px; }
  .section-heading h2, .story-copy h2, .resource-heading h2, .testimonial-heading h2 { font-size: clamp(40px,11vw,58px); }
  .section-intro { max-width: 480px; margin: 0; font-size: 13px; }
  .proof-grid { grid-template-columns: 1fr; gap: 10px; margin-top: 29px; }
  .proof-card { min-height: 170px; padding: 20px; }
  .proof-value { margin-top: 15px; font-size: 39px; }
  .proof-card p { max-width: 340px; }
  .placeholder-note { font-size: 10px; }
  .offers-topline { align-items: flex-start; flex-direction: column; gap: 12px; }
  .offers-topline .eyebrow { margin: 0; }
  .offers-intro { grid-template-columns: 1fr; gap: 18px; margin-top: 26px; }
  .offers-intro h2 { font-size: clamp(42px,11vw,60px); }
  .offers-intro > p { margin: 0; font-size: 13px; }
  .offer-list { margin-top: 31px; }
  .offer-card { grid-template-columns: 32px minmax(0,1fr) 39px; gap: 10px; padding: 20px 0; }
  .offer-main h3 { font-size: 21px; }
  .offer-main > p:last-child { font-size: 11px; }
  .offer-link { width: 36px; height: 36px; font-size: 17px; }
  .offer-bottom { align-items: flex-start; flex-direction: column; margin-top: 17px; }
  .story-section { grid-template-columns: 1fr; gap: 42px; }
  .story-visual { width: min(88%, 390px); margin: 0 auto; }
  .story-image-slot { min-height: 365px; }
  .story-sticker { right: -25px; width: 75px; height: 75px; }
  .story-copy h2 { font-size: clamp(39px,10.5vw,56px); }
  .story-lede { font-size: 15px; }
  .resource-heading { grid-template-columns: 1fr; gap: 16px; }
  .resource-heading > p { margin: 0; font-size: 12px; }
  .resource-list { margin-top: 28px; }
  .resource-item { grid-template-columns: 1fr 24px; gap: 5px 10px; padding: 15px 7px 15px 2px; }
  .resource-type { grid-column: 1; font-size: 8px; }
  .resource-item strong { grid-column: 1; grid-row: 2; font-size: 15px; }
  .resource-desc { grid-column: 1; grid-row: 3; font-size: 10px; }
  .resource-arrow { grid-column: 2; grid-row: 1 / span 3; }
  .testimonial-section { grid-template-columns: 1fr; gap: 32px; }
  .testimonial-heading h2 { font-size: clamp(40px,10.5vw,57px); }
  .testimonial-grid { grid-template-columns: 1fr; gap: 13px; }
  .quote-card { min-height: 225px; }
  .quote-card-tilt { transform: none; }
  .quote-card > p { min-height: 62px; }
  .contact-section { grid-template-columns: 1fr; gap: 34px; }
  .contact-copy h2 { font-size: clamp(43px,11.5vw,64px); }
  .contact-copy > p:not(.eyebrow) { font-size: 13px; }
  .contact-decoration { right: -13px; bottom: 140px; font-size: 130px; }
  .site-footer { padding: 30px 20px 19px; }
  .footer-brand { font-size: 26px; }
  .footer-bottom { font-size: 7px; letter-spacing: .04em; }
}

@media (max-width: 360px) {
  .brand { width: 139px; }
  .hero h1 { font-size: 41px; }
  .hero-bottom { font-size: 6px; }
  .offer-card { grid-template-columns: 25px minmax(0,1fr) 33px; gap: 7px; }
  .offer-main h3 { font-size: 19px; }
}

/* Ready-to-use image classes for replacing the marked image placeholders. */
.portrait-photo { display: block; width: 100%; height: 385px; border: 1px dashed rgba(255,255,255,.52); object-fit: cover; }
.story-photo { display: block; width: 100%; height: 460px; border: 1px dashed #869091; object-fit: cover; transform: rotate(-2deg); }
@media (max-width: 680px) {
  .hero-visual .portrait-photo { height: 350px; }
  .story-visual .story-photo { height: 365px; }
}


/* Site expansion additions: preserve all original tokens and base rules above. */
.visually-hidden, .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.source-line { display: block; margin-top: 10px; color: #56616a; font-size: 10px; font-weight: 500; line-height: 1.45; }
.proof-card-navy .source-line { color: #c4cdd0; }
.stat-row { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0; padding: 0 max(28px, calc((100vw - var(--content))/2)); border-bottom: 1px solid var(--line); background: var(--white); }
.stat-item { min-height: 150px; padding: 24px 19px 21px; border-right: 1px solid var(--line); }
.stat-item:first-child { border-left: 1px solid var(--line); }
.stat-item strong, .stat-item span, .stat-item small { display: block; }
.stat-item strong { font-family: var(--font-display); font-size: clamp(28px, 3.5vw, 42px); line-height: 1; letter-spacing: -.06em; }
.stat-item span { margin-top: 9px; font-size: 12px; font-weight: 700; line-height: 1.35; }
.stat-item small { margin-top: 8px; color: #667078; font-size: 10px; line-height: 1.4; }

.page-shell { width: min(var(--content), calc(100% - 56px)); margin: 0 auto; padding: 68px 0 92px; }
.page-hero { max-width: 930px; padding: 25px 0 42px; }
.page-hero .eyebrow { margin-bottom: 20px; }
.page-hero h1 { max-width: 900px; margin: 0; font-size: clamp(42px, 6.6vw, 76px); font-weight: 600; letter-spacing: -.075em; line-height: .99; }
.page-hero h1 span { color: #6b777d; }
.page-deck { max-width: 730px; margin: 22px 0 0; color: #4d5a63; font-size: 17px; line-height: 1.65; }
.breadcrumb { margin: 0 0 21px; color: #57636a; font-size: 11px; }
.breadcrumb a { text-underline-offset: 3px; }
.page-section { margin-top: 35px; padding: 28px 0; border-top: 1px solid var(--line); }
.page-section h2 { margin: 0 0 14px; font-size: clamp(26px, 3.5vw, 38px); letter-spacing: -.055em; line-height: 1.08; }
.page-section h3 { margin: 20px 0 8px; font-size: 20px; letter-spacing: -.035em; line-height: 1.2; }
.page-section p { max-width: 820px; }
.page-kicker { margin: 0 0 12px; color: #56616a; font-size: 10px; font-weight: 700; letter-spacing: .14em; }
.page-actions, .button-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 24px; }
.page-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin-top: 22px; }
.page-card { padding: 22px; border: 1px solid var(--ink); background: var(--white); }
.page-card h2, .page-card h3 { margin-top: 0; }
.page-card p:last-child { margin-bottom: 0; }
.page-card-dark { color: var(--white); background: var(--ink); }
.page-card-dark p, .page-card-dark .source-line { color: #c4cdd0; }
.page-card-lime { background: var(--lime); }
.page-card-coral { background: var(--coral); }
.callout { margin: 24px 0; padding: 18px 21px; border-left: 4px solid var(--coral); background: #eae9e0; }
.callout p:last-child { margin-bottom: 0; }
.callout-dark { border-color: var(--lime); color: var(--white); background: var(--ink); }
.callout-dark p, .callout-dark small { color: #d3d9da; }
.muted { color: #5b666d; }
.fill-marker { display: inline; padding: 1px 4px; color: var(--ink); background: var(--lime); font-weight: 700; }
.page-links { display: flex; flex-wrap: wrap; gap: 10px 18px; margin: 22px 0 0; }
.page-links a { font-size: 13px; font-weight: 700; text-underline-offset: 4px; }

.timeline { position: relative; margin: 35px 0 0 7px; padding: 0 0 0 30px; border-left: 1px solid #92999a; }
.timeline-item { position: relative; padding: 0 0 34px; }
.timeline-item:last-child { padding-bottom: 0; }
.timeline-item::before { position: absolute; top: 3px; left: -36px; width: 11px; height: 11px; border: 2px solid var(--ink); border-radius: 50%; background: var(--lime); content: ''; }
.timeline-item h2 { margin: 0 0 8px; font-size: clamp(24px,3vw,34px); letter-spacing: -.05em; }
.timeline-item .timeline-year { display: inline-block; margin-bottom: 10px; padding: 5px 8px; color: var(--ink); background: var(--lime); font-size: 10px; font-weight: 700; letter-spacing: .06em; }
.timeline-item .timeline-number { color: #68737a; font-family: var(--font-display); font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.timeline-item p { margin: 7px 0; }
.timeline-item .source-line { margin-top: 12px; }

.table-scroll { max-width: 100%; overflow-x: auto; margin: 20px 0; border: 1px solid var(--line); background: var(--white); }
.data-table { width: 100%; min-width: 680px; border-collapse: collapse; text-align: left; }
.data-table th, .data-table td { padding: 12px 13px; border-bottom: 1px solid var(--line); vertical-align: top; }
.data-table th { color: var(--white); background: var(--ink); font-size: 11px; font-weight: 700; letter-spacing: .04em; }
.data-table td { font-size: 12px; line-height: 1.5; }
.data-table tbody tr:last-child td { border-bottom: 0; }
.data-table tbody tr:nth-child(even) { background: #f3f2ea; }
.table-note { margin: 8px 0; color: #5b666d; font-size: 11px; }

.filter-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0 20px; }
.filter-chip { min-height: 39px; padding: 9px 13px; border: 1px solid var(--ink); color: var(--ink); background: transparent; font: inherit; font-size: 11px; font-weight: 700; cursor: pointer; }
.filter-chip:hover, .filter-chip:focus-visible, .filter-chip[aria-pressed="true"] { color: var(--ink); background: var(--lime); }
.resource-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 13px; }
.resource-card { display: flex; min-height: 205px; flex-direction: column; align-items: flex-start; padding: 20px; border: 1px solid var(--ink); background: var(--white); text-decoration: none; transition: transform .18s ease, background .18s ease; }
.resource-card:hover, .resource-card:focus-visible { background: var(--lime); transform: translateY(-2px); }
.resource-card .resource-type { margin-bottom: 12px; }
.resource-card strong { font-family: var(--font-display); font-size: 19px; line-height: 1.15; }
.resource-card .resource-desc { margin-top: 10px; font-size: 12px; line-height: 1.5; }
.resource-card .resource-meta { margin-top: auto; padding-top: 16px; color: #58636b; font-size: 10px; font-weight: 700; }
.resource-card[hidden] { display: none; }

.chart-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 15px; margin-top: 26px; }
.chart-card { min-width: 0; padding: 20px; border: 1px solid var(--ink); background: var(--white); }
.chart-card h2 { margin: 0; font-size: 22px; }
.chart-card .chart-context { min-height: 38px; margin: 8px 0 12px; color: #59656d; font-size: 11px; }
.chart-frame { position: relative; min-height: 205px; }
.chart-empty { display: grid; min-height: 170px; place-items: center; padding: 20px; border: 1px dashed #818b8e; color: #4e5960; background: #f3f2ea; font-size: 12px; text-align: center; }
.chart-card .table-scroll { margin-bottom: 0; }
.chart-card .data-table { min-width: 440px; }
.chart-card .data-table td, .chart-card .data-table th { padding: 8px; font-size: 10px; }
.chart-summary { margin: 8px 0; color: #4f5b62; font-size: 11px; font-weight: 700; }

.form-shell { max-width: 820px; margin-top: 28px; padding: 26px; border: 1px solid var(--ink); background: var(--white); }
.form-inactive { margin: 0 0 22px; padding: 14px 16px; border-left: 4px solid var(--coral); color: var(--ink); background: #f3f2ea; font-size: 13px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 17px; }
.form-field { min-width: 0; }
.form-field-wide { grid-column: 1 / -1; }
.form-field label, .form-label { display: block; margin-bottom: 6px; font-size: 12px; font-weight: 700; }
.form-field input, .form-field select, .form-field textarea, .calc-form input, .calc-form select { display: block; width: 100%; min-height: 46px; padding: 11px 12px; border: 1px solid #758087; border-radius: 0; color: var(--ink); background: var(--white); font: inherit; font-size: 14px; }
.form-field textarea { min-height: 145px; resize: vertical; }
.form-field input:focus-visible, .form-field select:focus-visible, .form-field textarea:focus-visible, .calc-form input:focus-visible, .calc-form select:focus-visible { outline: 3px solid var(--coral); outline-offset: 2px; }
.form-field input:disabled, .form-field select:disabled, .form-field textarea:disabled, .form-shell button:disabled { opacity: .7; cursor: not-allowed; }
.form-hint, .field-error { display: block; margin-top: 5px; font-size: 11px; line-height: 1.4; }
.form-hint { color: #5a656c; }
.field-error { min-height: 1em; color: #8b2619; font-weight: 700; }
.field-error:empty { display: none; }
.consent-row { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0; font-size: 12px; line-height: 1.45; }
.consent-row input[type="checkbox"], .check-row input[type="checkbox"] { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 1px; accent-color: var(--ink); }
.form-status { min-height: 26px; margin: 14px 0 0; padding: 0; font-size: 13px; font-weight: 700; }
.form-status[data-state="success"] { color: #174e32; }
.form-status[data-state="error"] { color: #8b2619; }
.form-shell fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.form-shell fieldset:disabled { opacity: .64; }
.form-shell .button { margin-top: 16px; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.calc-shell { max-width: 990px; margin-top: 28px; padding: 24px; border: 1px solid var(--ink); background: var(--white); }
.calc-form { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 15px; }
.calc-form fieldset { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin: 0; padding: 17px; border: 1px solid var(--line); }
.calc-form legend { padding: 0 7px; font-size: 12px; font-weight: 700; }
.calc-field label { display: block; margin-bottom: 6px; font-size: 11px; font-weight: 700; }
.calc-field small { display: block; margin-top: 5px; color: #58636b; font-size: 10px; line-height: 1.4; }
.calc-radio-row { display: flex; flex-wrap: wrap; gap: 14px; margin: 6px 0 10px; }
.calc-radio-row label { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 600; }
.calc-radio-row input { width: 16px; min-height: 16px; accent-color: var(--ink); }
.calc-results { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; margin-top: 20px; }
.calc-output { min-height: 100px; padding: 15px; border: 1px solid var(--ink); background: var(--paper); }
.calc-output span, .calc-output strong { display: block; }
.calc-output span { color: #58636b; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.calc-output strong { margin-top: 10px; font-family: var(--font-display); font-size: 24px; line-height: 1.15; }
.calc-status { min-height: 1.5em; margin: 12px 0 0; color: #536067; font-size: 12px; }
.calc-formula { margin-top: 23px; padding: 16px; border-top: 1px solid var(--line); color: #414e56; font-size: 12px; }
.calc-formula code { overflow-wrap: anywhere; font-size: 11px; }

.checklist { display: grid; gap: 0; margin: 20px 0; border-top: 1px solid var(--line); }
.check-row { display: flex; align-items: flex-start; gap: 12px; padding: 14px 3px; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.5; cursor: pointer; }
.check-row:hover { background: #eae9e0; }
.check-row input:checked + span { text-decoration: line-through; text-decoration-thickness: 1px; color: #59656d; }
.download-card { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px; margin: 22px 0; padding: 18px; border: 1px solid var(--ink); background: var(--lime); }
.download-card p { margin: 3px 0 0; font-size: 11px; }
.download-card .button { border-color: var(--ink); }
.tag-list { display: flex; flex-wrap: wrap; gap: 7px; margin: 14px 0; }
.tag-list span { padding: 5px 8px; border: 1px solid var(--line); font-size: 9px; font-weight: 700; letter-spacing: .05em; }

.site-footer .footer-links { display: flex; flex-wrap: wrap; gap: 8px 17px; margin: 0 0 16px; font-size: 10px; }
.site-footer .footer-links a { color: var(--lime); text-underline-offset: 3px; }
.site-footer .footer-disclaimer a { color: var(--lime); text-underline-offset: 3px; }

@media (max-width: 920px) {
  .resource-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .stat-row { padding-right: 20px; padding-left: 20px; }
  .stat-item { padding-right: 13px; padding-left: 13px; }
}
@media (max-width: 680px) {
  .stat-row { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 0 20px; }
  .stat-item { min-height: 132px; padding: 18px 12px; border-bottom: 1px solid var(--line); }
  .stat-item:nth-child(odd) { border-left: 1px solid var(--line); }
  .stat-item strong { font-size: 32px; }
  .stat-item span { font-size: 11px; }
  .page-shell { width: calc(100% - 40px); padding: 42px 0 68px; }
  .page-hero { padding: 12px 0 26px; }
  .page-hero h1 { font-size: clamp(40px, 11.2vw, 58px); }
  .page-deck { font-size: 14px; }
  .page-section { margin-top: 23px; padding: 23px 0; }
  .page-card-grid, .resource-card-grid, .chart-grid { grid-template-columns: 1fr; }
  .resource-card { min-height: 170px; }
  .form-shell, .calc-shell { padding: 17px; }
  .form-grid, .calc-form, .calc-form fieldset { grid-template-columns: 1fr; }
  .form-field-wide, .calc-form fieldset { grid-column: 1; }
  .calc-results { grid-template-columns: 1fr 1fr; }
  .download-card { align-items: flex-start; flex-direction: column; }
  .timeline { padding-left: 24px; }
  .timeline-item::before { left: -30px; }
  .page-links { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 360px) {
  .stat-row { padding-right: 14px; padding-left: 14px; }
  .page-shell { width: calc(100% - 32px); }
  .calc-results { grid-template-columns: 1fr; }
  .form-shell, .calc-shell { padding: 13px; }
}


/* New page-only details; maintain the existing palette, typography and square-corner system. */
.timeline-teaser { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 8px; margin: 26px 0 18px; }
.timeline-teaser a { display: flex; min-height: 58px; align-items: center; gap: 9px; padding: 8px; border: 1px solid var(--line); text-decoration: none; }
.timeline-teaser a:hover, .timeline-teaser a:focus-visible { background: var(--lime); }
.timeline-teaser a span { font-family: var(--font-display); font-size: 12px; font-weight: 700; }
.timeline-teaser a small { font-size: 10px; font-weight: 600; }
.timeline-item:target { outline: 2px solid var(--coral); outline-offset: 7px; }
.career-overview ol { display: grid; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.career-overview li { display: grid; grid-template-columns: minmax(140px, .7fr) minmax(100px, 1fr) minmax(130px, .8fr); gap: 12px; align-items: center; padding: 10px 12px; border: 1px solid var(--line); }
.career-bar { height: 8px; border: 1px dashed var(--line); background: var(--paper); }
.data-table-details { margin-top: 12px; }
.data-table-details summary { width: fit-content; padding: 8px 10px; border: 1px solid var(--ink); font-size: 11px; font-weight: 700; cursor: pointer; }
.data-table-details summary:focus-visible { outline: 3px solid var(--coral); outline-offset: 2px; }
.chart-frame canvas { width: 100% !important; height: 100% !important; }
.chart-frame canvas[hidden] { display: none; }
.stat-item [data-count-target] { font-variant-numeric: tabular-nums; }
@media (max-width: 680px) {
  .timeline-teaser { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .career-overview li { grid-template-columns: 1fr; gap: 5px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}


/* Self-hosted variable fonts: one request per family instead of one duplicate file per weight. */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url('/fonts/dm-sans-variable.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/space-grotesk-variable.woff2') format('woff2');
}


/* ---- v3: finished hero card, marquee, story card, proof track ---- */
[hidden] { display: none !important; }
.hero-card { position: relative; padding: 18px 16px 16px; border: 1px solid rgba(255,255,255,.5); background: #142638; transform: rotate(2deg); box-shadow: 12px 12px 0 rgba(220,255,102,.16); }
.hero-card .frame-stamp { position: absolute; z-index: 3; top: -13px; right: 12px; padding: 7px 10px; color: var(--ink); background: var(--lime); font-size: 9px; font-weight: 700; letter-spacing: .12em; transform: rotate(3deg); }
.hero-card-art { position: relative; display: flex; overflow: hidden; align-items: center; justify-content: center; min-height: 270px; border: 1px solid rgba(220,255,102,.28); background: radial-gradient(circle at 25% 15%, #2f4d68 0, #162b3f 62%); }
.hero-card-art::before { position: absolute; inset: 0; opacity: .5; content: ''; background: repeating-linear-gradient(135deg, transparent 0 16px, rgba(255,255,255,.04) 16px 17px); }
.hero-card-art .monogram { position: relative; color: var(--lime); font-family: var(--font-display); font-size: 150px; font-weight: 700; letter-spacing: -.08em; line-height: 1; }
.hero-card-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero-card-name { display: flex; flex-direction: column; gap: 2px; padding: 13px 2px 0; }
.hero-card-name strong { font-family: var(--font-display); font-size: 17px; }
.hero-card-name span { color: #aeb8bb; font-size: 9px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.hero-card-stats { display: grid; gap: 7px; margin: 13px 0 0; padding: 0; list-style: none; }
.hero-card-stats li { display: flex; align-items: baseline; gap: 12px; padding-top: 8px; border-top: 1px solid rgba(255,255,255,.16); color: #d6dde0; font-size: 12px; }
.hero-card-stats b { min-width: 58px; color: var(--lime); font-family: var(--font-display); font-size: 20px; }
.orbit-note b { font-size: 22px; }

.marquee { overflow: hidden; border-block: 1px solid var(--ink); color: var(--ink); background: var(--coral); }
.marquee-track { display: flex; width: max-content; padding: 11px 0; animation: marquee 42s linear infinite; }
.marquee-track span { padding: 0 22px; font-family: var(--font-display); font-size: 13px; font-weight: 700; letter-spacing: .16em; white-space: nowrap; }
.marquee-track span::after { margin-left: 44px; content: '✳'; }
@keyframes marquee { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .marquee-track { animation: none; } }

.story-card { position: relative; padding: 28px 26px 24px; border: 1px solid var(--ink); color: var(--white); background: var(--ink); box-shadow: 10px 10px 0 var(--lime); transform: rotate(-1.5deg); }
.story-card-kicker { color: var(--lime); font-size: 10px; font-weight: 700; letter-spacing: .16em; }
.story-card ol { margin: 14px 0 16px; padding: 0; list-style: none; }
.story-card li { display: flex; align-items: baseline; gap: 14px; padding: 9px 0; border-top: 1px solid rgba(255,255,255,.16); font-family: var(--font-display); font-size: 19px; }
.story-card li b { min-width: 24px; color: var(--lime); font-size: 11px; letter-spacing: .14em; }
.story-card li em { margin-left: auto; color: #9fb0b8; font-family: var(--font-body); font-size: 9px; font-style: normal; font-weight: 700; letter-spacing: .12em; }
.story-card p { margin: 0; color: #d1d7d8; font-size: 13px; }

.track { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 22px 0; padding: 0; border: 1px solid var(--ink); background: var(--ink); list-style: none; }
.track-step { padding: 18px; background: var(--white); }
.track-step.hl { background: var(--lime); }
.track-step b { display: block; color: var(--coral); font-family: var(--font-display); font-size: 12px; letter-spacing: .14em; }
.track-step.hl b { color: var(--ink); }
.track-step h3 { margin: 6px 0 4px; font-size: 18px; }
.track-step p { margin: 0; color: var(--ink-soft); font-size: 12px; }
@media (max-width: 900px) { .track { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .track { grid-template-columns: 1fr; } .hero-card-art { min-height: 220px; } .hero-card-art .monogram { font-size: 120px; } }

.story-card ~ .story-sticker { top: -30px; right: -14px; }
.page-card .offer-category { color: #a63a26; }
.page-card-dark .offer-category { color: var(--lime); }
.timeline { list-style: none; }
.resource-content h2 { margin-top: 38px; }
.resource-content > .page-section > .page-card-grid:first-child { margin-bottom: 8px; }
.page-card-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 860px) { .page-card-grid-3 { grid-template-columns: 1fr; } }
.your-turn { margin: 10px 0 0; padding: 10px 12px; border: 1px dashed var(--ink); background: #fbfbd8; font-size: 13px; }
.your-turn span { margin-right: 8px; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
