/* Homepage styles. */
.home-preview { font-size: 1.0625rem; }
.home-preview .hero { padding: 72px 0 48px; }
.home-preview .hero h1 { font-size: clamp(2.1rem, 1.4rem + 3vw, 3.8rem); line-height: 1.28; margin-bottom: 28px; }
.home-preview .hero h1 span { color: var(--green); }
.home-preview .hero .lead { max-width: 43em; margin-bottom: 16px; }
.home-preview .hero-context { max-width: 50em; font-size: 1rem; color: var(--ink-2); margin-bottom: 28px; }
.home-preview .hero-strip { display: grid; grid-template-columns: 1fr 1fr; max-width: 58em; gap: 14px 32px; font-size: .875rem; }
.home-preview .hero-strip span { border: 0; padding: 0 0 0 18px; position: relative; }
.home-preview .hero-strip span::before { content: ''; position: absolute; left: 0; top: .8em; width: 7px; height: 2px; background: var(--gold); }
.home-preview .eyebrow { font-size: .875rem; }
.home-preview .brand .en { font-size: .75rem; letter-spacing: .04em; }
.home-preview #services h2 { max-width: 33em; font-size: clamp(1.5rem, 1.2rem + 1.1vw, 2rem); line-height: 1.55; }
.home-preview #services .card { display: flex; flex-direction: column; padding: 28px 24px; }
.home-preview #services .card > a:last-child { margin-top: auto; padding-top: 12px; }
.home-preview .card .q { font-family: var(--sans); font-size: .875rem; letter-spacing: 0; min-height: 3.5em; }
.home-preview .card .price { font-size: 1.25rem; }
.home-preview .card .price small { display: block; font-family: var(--sans); font-size: .875rem; margin: 4px 0 12px; line-height: 1.7; }
.home-preview .card li, .home-preview .step p { font-size: 1rem; }
.home-preview .step .n, .home-preview .step .meta { font-size: .875rem; }
.home-preview .step .n { color: var(--gold-ink); }
.home-preview .audience-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 32px; }
.home-preview .audience-list li { border-top: 1px solid var(--wash-strong); padding-top: 20px; }
.home-preview .audience-list li::before { content: "✓"; top: 20px; width: 1em; height: auto; border: 0; background: none; color: var(--green); font-weight: 600; }
.home-preview .tag { font-size: .75rem; }
.home-preview .kpi .k span, .home-preview .site-footer h4 { font-size: .875rem; }
.home-preview .card .q,
.home-preview .card .price small,
.home-preview .step .meta,
.home-preview .kpi .k span { color: var(--ink-2); }
.skip-link { position: fixed; top: 8px; left: 16px; z-index: 1000; transform: translateY(-200%); background: var(--green); color: var(--porcelain); padding: 12px 20px; }
.skip-link:focus { transform: none; color: var(--porcelain); }
.home-preview .bg-deep a:focus-visible, .home-preview .site-footer a:focus-visible { outline-color: var(--gold); }
@media (max-width: 1000px) {
  .home-preview .nav { gap: 16px; }
  .home-preview .brand { gap: 9px; }
}
@media (max-width: 760px) {
  .home-preview .audience-list { grid-template-columns: 1fr; gap: 4px; }
  .home-preview .hero-strip { grid-template-columns: 1fr; gap: 12px; }
  .desktop-break { display: none; }
}
@media (max-width: 640px) {
  .home-preview section { padding: 52px 0; }
  .home-preview .hero { padding: 46px 0 36px; }
  .home-preview .hero h1 { font-size: clamp(1.75rem, 1rem + 3.8vw, 2.55rem); margin-bottom: 24px; }
  .home-preview .hero .lead { font-size: 1.0625rem; line-height: 1.9; }
  .home-preview .hero .eyebrow { letter-spacing: .02em; }
  .home-preview .hero-context { line-height: 1.85; }
  .home-preview .hero-strip { margin-top: 30px; }
  .home-preview .card .q { min-height: 0; }
  .home-preview .site-header .container { padding: 0 16px; }
  .home-preview .brand { font-size: 1rem; }
  .home-preview .brand .en { font-size: .75rem; letter-spacing: 0; }
  .home-preview .brand img { width: 30px; height: 30px; }
}
