/* Shared SEO/editorial layout. Keep marketing tokens and legal-reader behavior. */
.language-menu { position: relative; font-size: .8rem; font-weight: 700; }
.language-menu summary { min-height: 44px; display: flex; align-items: center; gap: 5px; padding: 8px 10px; border: 1px solid var(--color-border-subtle); border-radius: var(--radius-control); cursor: pointer; list-style: none; background: var(--color-surface-elevated); }
.language-menu summary::after { content: '⌄'; }
.language-menu summary::-webkit-details-marker { display: none; }
.language-menu nav { position: absolute; right: 0; top: calc(100% + 8px); width: 172px; max-height: 65vh; overflow-y: auto; padding: 10px; background: var(--color-surface-elevated); border: 1px solid var(--color-border-strong); border-radius: var(--radius-control); box-shadow: var(--shadow-surface); }
.language-menu nav a { display: block; padding: 8px 12px; min-height: 44px; border-radius: 8px; }
.language-menu a:hover, .language-menu a[aria-current] { background: var(--color-chip-surface); }
.locale-list { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-block: 24px; }
.locale-list a { min-height: 44px; display: inline-flex; align-items: center; }
.locale-list a[aria-current] { text-decoration: underline; text-underline-offset: 5px; }
.seo-core-footer { padding-block: 16px; border-top: 1px solid var(--color-border-subtle); }
.seo-core-footer > a { display: inline-block; margin-right: 22px; padding-block: 8px; }
.seo-page { padding-block: 36px 80px; }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: 6px 12px; padding: 0; list-style: none; font-size: .8rem; color: var(--color-text-secondary); }
.breadcrumbs li:not(:last-child)::after { content: '/'; margin-left: 12px; }
.breadcrumbs a { text-decoration: underline; text-underline-offset: 3px; }
.seo-hero { padding-block: 48px 56px; max-width: 1020px; }
.seo-hero h1 { margin: 0; max-width: 1000px; font-size: clamp(2.6rem, 5.5vw, 5rem); line-height: 1.08; letter-spacing: -.05em; font-weight: 800; text-wrap: balance; overflow-wrap: anywhere; }
.seo-answer { max-width: 880px; margin-block: 24px; font-size: clamp(1.05rem, 1.8vw, 1.26rem); color: var(--color-text-secondary); line-height: 1.85; }
.seo-small { font-size: .8rem; color: var(--color-text-secondary); }
.seo-small a { text-decoration: underline; text-underline-offset: 3px; }
.seo-reading-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, 320px); gap: clamp(32px, 6vw, 96px); align-items: start; }
.seo-prose { max-width: 760px; }
.seo-prose-single { max-width: 860px; }
.seo-prose section { padding-block: 26px; border-top: 1px solid var(--color-border-subtle); }
.seo-prose h2, .seo-section > h2, .seo-callout h2 { margin: 0 0 18px; font-size: clamp(1.6rem, 2.6vw, 2.3rem); line-height: 1.2; letter-spacing: -.025em; }
.seo-prose p, .seo-prose li { font-size: 1.05rem; line-height: 1.9; color: var(--color-text-secondary); }
.seo-prose p { margin-block: 14px; }
.seo-prose li + li { margin-top: 12px; }
.seo-prose a, .seo-local-guides a { text-decoration: underline; text-underline-offset: 4px; }
.seo-aside nav, .seo-note { padding: 24px; border: 1px solid var(--color-border-subtle); border-radius: var(--radius-sheet); background: var(--color-surface-elevated); }
.seo-aside ol { margin: 0; padding-left: 18px; }
.seo-aside li { padding-block: 5px; font-size: .85rem; }
.seo-aside figure { margin: 28px 0; }
.seo-aside img { max-width: 280px; width: 100%; height: auto; margin-inline: auto; border-radius: 24px; box-shadow: var(--shadow-surface); }
.seo-aside figcaption, .localized-shot figcaption { margin-top: 16px; color: var(--color-text-secondary); font-size: .75rem; line-height: 1.6; text-align: center; }
.seo-note { margin-top: 24px; }
.seo-note h2 { font-size: 1.2rem; }
.seo-note p { color: var(--color-text-secondary); font-size: .9rem; }
.seo-section { padding-block: 64px; }
.seo-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.seo-card { display: flex; flex-direction: column; align-items: start; padding: 28px; border: 1px solid var(--color-border-subtle); border-radius: var(--radius-sheet); background: var(--color-surface-elevated); box-shadow: var(--shadow-surface); overflow-wrap: anywhere; }
a.seo-card:hover { border-color: var(--color-border-strong); }
.seo-card h3 { margin: 8px 0 12px; font-size: 1.5rem; line-height: 1.25; letter-spacing: -.025em; }
.seo-card p { margin: 0 0 24px; color: var(--color-text-secondary); font-size: .95rem; }
.seo-card .text-link { margin-top: auto; }
.seo-callout { margin-block: 50px; padding: clamp(24px, 4vw, 48px); background: var(--color-surface); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sheet); }
.seo-callout p { max-width: 880px; color: var(--color-text-secondary); font-size: 1.05rem; line-height: 1.85; }
.seo-footer { padding-block: 36px; }
.seo-footer-links { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 28px; }
.seo-footer-links a { padding-block: 8px; font-size: .88rem; }
.localized-hero { min-height: auto; grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr); gap: 50px; padding-block: 80px 56px; }
.localized-hero h1 { font-size: clamp(2.8rem, 5.2vw, 5.1rem); letter-spacing: -.045em; line-height: 1.16; overflow-wrap: anywhere; text-wrap: balance; }
.localized-hero h1 span { display: block; margin-top: 12px; font-size: .7em; }
.localized-hero .hero-lede { font-size: 1.12rem; line-height: 1.9; }
.localized-shot { margin: 0; display: grid; justify-items: center; }
.localized-shot .phone { width: min(100%, 280px); height: auto; transform: none; }
.localized-shot .phone img { height: auto; }
.localized-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.localized-cards .step-number { margin-bottom: 18px; }
.localized-cards .seo-card p { margin-bottom: 0; line-height: 1.85; }
.seo-local-guides ul { padding-left: 20px; }
.seo-local-guides li { padding-block: 10px; }
.final-cta > div { min-width: 0; }
.final-cta h2, .section-heading h2, .seo-section > h2, .seo-callout h2 { overflow-wrap: anywhere; hyphens: auto; }
@media (max-width: 1100px) and (min-width: 861px) { .site-nav { gap: 12px; font-size: .76rem; } .header-inner { gap: 12px; } .header-cta { display: none; } }
@media (max-width: 860px) {
  .seo-reading-layout { grid-template-columns: 1fr; }
  .seo-aside { order: -1; }
  .seo-aside figure, .seo-aside .seo-note { display: none; }
  .seo-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .localized-hero { grid-template-columns: 1fr; }
  .localized-shot .phone { width: 240px; }
  .localized-shot figcaption { max-width: 280px; }
}
@media (max-width: 580px) {
  .site-header .brand { gap: 0; }
  .site-header .brand span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .seo-cards { grid-template-columns: 1fr; }
  .seo-hero { padding-block: 32px; }
  .seo-section { padding-block: 40px; }
  .localized-hero { padding-top: 52px; gap: 36px; }
  .seo-callout { margin-block: 30px; }
  .language-menu summary { padding-inline: 8px; }
  .seo-card { padding: 24px; }
}
@media print { .seo-aside, .language-menu, .seo-core-footer { display: none; } .seo-reading-layout { display: block; } }

/* Quiet paper surfaces, with distinct accents for daily help, credits and Pro. */
.credit-summary { margin-block: 3rem; }
.credit-plans .seo-card:nth-child(1) { border-top: 5px solid #79a993; }
.credit-plans .seo-card:nth-child(2) { border-top: 5px solid #d99a68; }
.credit-plans .seo-card:nth-child(3) { border-top: 5px solid #aa98c4; }
.credit-plans h2 { font-size: clamp(1.3rem, 2.3vw, 2rem); }
.credit-costs { display: grid; gap: 0; border-block: 1px solid var(--line, #b8a894); }
.credit-costs article { display: grid; grid-template-columns: minmax(5rem, 1fr) 4fr; gap: 1rem; padding: 1.25rem 0; }
.credit-costs article + article { border-top: 1px solid var(--line, #b8a894); }
.credit-costs h3, .credit-costs p { margin: 0; }
.release-list { display: grid; gap: 1.5rem; margin-block: 3rem; }
.release-notes { white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 600px) { .credit-costs article { grid-template-columns: 1fr; gap: .4rem; } }
