/* Shared editorial finish. Each tool and article keeps its own palette. */
:root { color-scheme: dark; }
html { scroll-padding-top: 96px; }
.skip-link { position: fixed; top: 12px; left: 16px; z-index: 999; padding: 12px 20px; background: #f1ece6; color: #171217; border-radius: 8px; transform: translateY(-180%); }
.skip-link:focus { transform: translateY(0); }
:where(input, textarea, select) { scroll-margin-top: 100px; }
:where(button, a) { -webkit-tap-highlight-color: transparent; }
:where(p, li, dd) { overflow-wrap: break-word; }
:where(.signal-grid, .contact-grid, .sig-price-grid) > * { min-width: 0; }
.signal-page { --sig-faint: #a29a9f; --sig-muted: #beb5b9; }
.signal-page .nav-link { color: #b9b0b5; }
.signal-page .nav-link:hover, .signal-page .nav-link[aria-current="page"] { color: var(--sig-pink); }
.signal-page .sig-boundary { letter-spacing: .07em; font-size: 11px; }
.signal-page .grain { opacity: .045; }
.home-signal .sig-hero { min-height: min(900px, 100svh); padding: 144px 0 80px; }
.home-signal .sig-hero > .signal-grid { width: 100%; align-items: center; }
.home-signal .sig-hero-copy { grid-column: 1 / span 7; }
.home-signal .sig-hero h1 { font-size: clamp(60px, 6.7vw, 100px); line-height: .98; letter-spacing: -.055em; }
.home-signal .sig-hero h1 em { margin: 16px 0 0; max-width: 720px; line-height: 1; }
.home-signal .sig-lede { font-size: clamp(17px, 1.5vw, 21px); max-width: 560px; margin: 32px 0 0; line-height: 1.65; }
.home-signal .sig-actions { margin: 32px 0 0; gap: 12px; }
.home-signal .sig-boundary { margin: 24px 0 0; max-width: 560px; }
.home-signal .sig-ghost-eye { display: none; }
.sig-atlas { grid-column: 8 / -1; color: var(--sig-pink); margin: 0 0 0 24px; position: relative; padding: 24px 0 0; border-top: 1px solid var(--sig-line-strong); }
.atlas-meta { display: flex; justify-content: space-between; gap: 8px; font-size: 10px; letter-spacing: .08em; color: var(--sig-faint); }
.atlas-drawing { display: block; width: 100%; max-width: 480px; margin: 12px auto; }
.sig-atlas figcaption { display: flex; flex-direction: column; gap: 8px; padding: 0 16px; }
.sig-atlas figcaption span { font-family: var(--font-head); color: var(--sig-paper); font-size: 23px; font-weight: 600; letter-spacing: -.03em; }
.sig-atlas figcaption em { font-family: var(--font-serif); font-size: 28px; }
.atlas-link { display: flex; justify-content: space-between; margin: 24px 0 0; border-top: 1px solid var(--sig-line); padding: 18px 16px; color: var(--sig-paper); font-size: 11px; letter-spacing: .12em; text-decoration: none; }
.atlas-link:hover { background: rgba(229,160,178,.06); }
.home-signal .sig-marquee { background: var(--sig-paper); color: var(--sig-ink); border: 0; }
.home-signal .sig-marquee-track { color: var(--sig-ink); }
.home-signal .sig-marquee b { color: #6f263a; }
.home-signal .sig-section { padding: 96px 0; }
.home-signal .sig-service { padding-top: 32px; padding-bottom: 32px; }
.home-signal .sig-price-card { border-radius: 4px; background: #171217; }
.home-signal .sig-price-card.feature { background: #f1ece6; color: #171217; border-color: #f1ece6; --sig-muted: #5d4a54; --sig-faint: #6d5963; --sig-pink: #802e47; --sig-line: #d1c3c8; --sig-line-strong: #b19aA3; }
.home-signal .sig-price-card.feature :is(h3, .sig-card-math b, .sig-equation strong) { color: #171217; }
.home-signal .sig-note, .home-signal .sig-tool { border-radius: 4px; }
.contact-grid .ask-card { background: linear-gradient(145deg, #23212a, #1b1a21); border-color: rgba(228,135,154,.24); box-shadow: 0 24px 80px #0003; }
.contact-grid :is(.ask-box, .email-input) { background: #131219; border-color: #57505c; border-radius: 8px; }
.contact-grid .ask-send { width: 100%; }
.contact-side .channel { border-radius: 8px; }
@media (min-width: 981px) { .home-signal .sig-heading { position: sticky; top: 112px; align-self: start; } }
@media (max-width: 1080px) {
  .home-signal .sig-hero h1 { font-size: clamp(56px, 7vw, 76px); }
  .sig-atlas { margin-left: 0; }
  .atlas-meta span:last-child { display: none; }
}
@media (max-width: 860px) {
  .nav-main { transition-property: opacity, transform; }
  html:not(.nav-ready) .nav-toggle { display: none; }
  html:not(.nav-ready) .topbar { position: relative; }
  html:not(.nav-ready) .topbar-inner { flex-wrap: wrap; }
  html:not(.nav-ready) .nav-main { position: static; width: 100%; opacity: 1; visibility: visible; transform: none; max-height: none; box-shadow: none; }
  .home-signal .sig-hero { min-height: auto; padding: 128px 0 64px; }
  .home-signal .sig-hero-copy { grid-column: 1 / -1; }
  .home-signal .sig-hero h1 { font-size: clamp(54px, 10vw, 82px); }
  .sig-atlas { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; align-items: center; margin-top: 40px; padding-top: 16px; }
  .atlas-meta { grid-column: 1 / -1; }
  .atlas-drawing { grid-row: 2 / 4; width: 100%; max-width: 300px; }
  .sig-atlas figcaption { padding: 16px; }
  .atlas-link { margin: 0; }
  .home-signal .sig-section { padding: 64px 0; }
  .home-signal .sig-heading { margin-bottom: 16px; }
}
@media (max-width: 480px) {
  .home-signal .sig-hero { padding-top: 112px; }
  .home-signal .sig-hero h1 { font-size: clamp(44px, 12.7vw, 60px); }
  .home-signal .sig-lede { font-size: 17px; margin-top: 24px; }
  .home-signal .sig-actions { flex-direction: column; }
  .home-signal .sig-actions .btn { width: 100%; }
  .sig-atlas figcaption span { font-size: 18px; }
  .sig-atlas figcaption em { font-size: 23px; }
  .atlas-link { padding: 14px 8px; font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
