:root {
  color-scheme: light dark;
  --ink: #17151a;
  --muted: #625d66;
  --paper: #f4f0ea;
  --line: #cbc3c8;
  --accent: #c72b78;
  --panel: rgba(255, 255, 255, 0.58);
}

* { box-sizing: border-box; }

html { background: var(--paper); color: var(--ink); font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans", "Yu Gothic", sans-serif; }
body { margin: 0; }
a { color: inherit; }

.shell { width: min(920px, calc(100% - 40px)); margin: 0 auto; padding: 64px 0 40px; }
.hero { padding: 72px 0 52px; border-bottom: 1px solid var(--line); }
.eyebrow { margin: 0 0 14px; color: var(--accent); font-size: 12px; font-weight: 800; letter-spacing: .18em; }
h1 { margin: 0; font-size: clamp(58px, 12vw, 116px); line-height: .9; letter-spacing: -.07em; }
.lead { max-width: 560px; margin: 28px 0 0; color: var(--muted); font-size: clamp(17px, 2.5vw, 23px); line-height: 1.7; }

.cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding: 32px 0 76px; }
.card { min-height: 220px; padding: 28px; display: flex; flex-direction: column; justify-content: flex-end; text-decoration: none; background: var(--panel); border: 1px solid var(--line); border-radius: 20px; transition: transform .18s ease, border-color .18s ease; }
.card:hover, .card:focus-visible { transform: translateY(-3px); border-color: var(--accent); outline: none; }
.card span { margin-bottom: auto; color: var(--accent); font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.card strong { font-size: 21px; }
.card small { margin-top: 8px; color: var(--muted); font-size: 13px; }

.document { max-width: 760px; }
.back { display: inline-block; padding-bottom: 4px; font-size: 12px; font-weight: 700; text-decoration: none; border-bottom: 1px solid; }
.page-header { margin: 62px 0 30px; padding-bottom: 34px; border-bottom: 1px solid var(--line); }
.page-header h1 { font-size: clamp(46px, 10vw, 76px); }
.page-header > p:last-child { margin: 24px 0 0; color: var(--muted); font-size: 13px; }
section { display: grid; grid-template-columns: 180px 1fr; gap: 30px; padding: 30px 0; border-bottom: 1px solid var(--line); }
section h2 { margin: 0; font-size: 16px; }
section p { margin: 0; line-height: 1.9; font-size: 15px; }
.mail { display: inline-block; margin-top: 16px; color: var(--accent); font-weight: 750; }
.summary { margin: 36px 0; padding: 22px; color: #f6eff3; background: #211c20; border-left: 6px solid var(--accent); line-height: 1.8; }
footer { padding-top: 20px; color: var(--muted); font-size: 11px; letter-spacing: .06em; }

@media (max-width: 640px) {
  .shell { width: min(100% - 28px, 920px); padding-top: 34px; }
  .hero { padding-top: 48px; }
  .cards { grid-template-columns: 1fr; }
  .card { min-height: 176px; }
  section { grid-template-columns: 1fr; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .card { transition: none; }
}

@media (prefers-color-scheme: dark) {
  :root { --ink: #f7f1f5; --muted: #bbb2b8; --paper: #171317; --line: #4a4147; --panel: rgba(255,255,255,.045); --accent: #ff8bc5; }
}
