:root { --bg:#f5f8ff; --surface:#ffffff; --text:#0f172a; --muted:#586883; --line:#dbe5f5; --primary:#2458ff; --shadow:0 24px 64px rgba(31,66,154,.12); }
    * { box-sizing:border-box; }
    body { margin:0; font-family:Manrope,Arial,sans-serif; color:var(--text); background:radial-gradient(circle at top left, rgba(36,88,255,.14), transparent 26%), linear-gradient(180deg, #fbfcff 0%, var(--bg) 100%); }
    a { color:inherit; text-decoration:none; }
    img { display:block; max-width:100%; }
    .container { width:min(calc(100% - 32px), 1120px); margin:0 auto; }
    .topbar { padding:18px 0 0; }
    .topbar-inner { display:flex; align-items:center; justify-content:space-between; gap:12px; }
    .brand { display:inline-flex; align-items:center; gap:10px; font-weight:800; letter-spacing:-.04em; }
    .brand-mark { display:grid; place-items:center; width:40px; height:40px; border-radius:14px; color:#fff; background:linear-gradient(135deg, #0f172a 0%, #2458ff 100%); }
    .actions { display:flex; gap:12px; flex-wrap:wrap; }
    .pill-link { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 18px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.92); font-weight:800; white-space:nowrap; }
    .pill-link.primary { color:#fff; border-color:transparent; background:linear-gradient(135deg, #2458ff 0%, #4a79ff 100%); box-shadow:0 18px 40px rgba(36,88,255,.24); }
    .hero { padding:32px 0 20px; }
    .breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 18px; color:var(--muted); font-size:.95rem; }
    .breadcrumbs span { opacity:.72; }
    .eyebrow { display:inline-flex; padding:10px 14px; border-radius:999px; border:1px solid var(--line); background:#fff; color:var(--primary); font-weight:800; text-transform:uppercase; font-size:.82rem; }
    h1 { margin:18px 0 12px; font-size:clamp(2.3rem, 4.6vw, 3.95rem); line-height:.98; letter-spacing:-.06em; max-width:22ch; }
    .lead { margin:0; max-width:820px; color:var(--muted); font-size:1.03rem; line-height:1.76; }
    .article-meta { display:flex; flex-wrap:wrap; gap:14px; margin:18px 0 0; color:var(--muted); font-size:.96rem; }
    .article-meta strong { color:var(--text); }
    .hero-image { width:100%; height:380px; margin:24px 0 0; border-radius:32px; box-shadow:var(--shadow); object-fit:cover; object-position:center; }
    .layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:24px; padding:28px 0 72px; align-items:start; }
    .article { padding:32px; border:1px solid var(--line); border-radius:32px; background:rgba(255,255,255,.95); box-shadow:var(--shadow); }
    .article h2 { margin:0 0 14px; font-size:2rem; letter-spacing:-.05em; }
    .article h3 { margin:28px 0 12px; font-size:1.25rem; letter-spacing:-.03em; }
    .article p { margin:0 0 16px; color:var(--muted); line-height:1.82; }
    .article ul { margin:0 0 16px; padding-left:20px; color:var(--muted); line-height:1.82; }
    .source-copy { color:var(--muted); line-height:1.82; }
    .source-copy strong { color:var(--text); }
    .source-copy a { color:var(--primary); text-decoration:underline; }
    .source-copy u { text-decoration-thickness:1px; text-underline-offset:2px; }
    .sidebar { position:sticky; top:18px; display:grid; gap:18px; }
    .sidebar-card { padding:22px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.92); box-shadow:var(--shadow); }
    .sidebar-card h3 { margin:0 0 10px; font-size:1.2rem; }
    .sidebar-card p, .sidebar-card li { margin:0; color:var(--muted); line-height:1.7; }
    .sidebar-card ul { margin:0; padding-left:18px; display:grid; gap:8px; }
    .faq-block { margin-top:36px; padding-top:30px; border-top:1px solid var(--line); }
    .author-box { margin-top:32px; padding:22px; border:1px solid var(--line); border-radius:24px; background:#f8fbff; }
    .author-box strong { display:block; margin-bottom:8px; font-size:1.08rem; letter-spacing:-.03em; }
    .author-box p { margin:0; color:var(--muted); line-height:1.72; }
    .faq-list { display:grid; gap:14px; }
    .faq-item { padding:18px 20px; border:1px solid var(--line); border-radius:22px; background:#f8fbff; }
    .faq-item strong { display:block; margin-bottom:8px; font-size:1.04rem; }
    .faq-item p { margin:0; }
    .cta-card { margin-top:32px; padding:24px; border-radius:28px; background:linear-gradient(135deg, #0f172a 0%, #1d356a 55%, #2458ff 100%); color:#fff; box-shadow:var(--shadow); }
    .cta-card h3 { margin:0 0 10px; font-size:1.45rem; letter-spacing:-.04em; }
    .cta-card p { margin:0 0 18px; color:rgba(255,255,255,.82); }
    .cta-actions { display:flex; flex-wrap:wrap; gap:12px; }
    .cta-actions .pill-link { background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.18); color:#fff; }
    .cta-actions .pill-link.primary { background:#fff; color:#0f172a; box-shadow:none; }
    .related { padding:0 0 72px; }
    .related h2 { margin:0 0 18px; font-size:2rem; letter-spacing:-.05em; }
    .related-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:18px; }
    .related-card { padding:22px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.92); box-shadow:var(--shadow); }
    .related-card span { display:inline-flex; margin-bottom:12px; padding:8px 12px; border-radius:999px; background:#eef4ff; color:var(--primary); font-size:.78rem; font-weight:800; text-transform:uppercase; }
    .related-card h3 { margin:0 0 8px; font-size:1.18rem; line-height:1.2; letter-spacing:-.04em; }
    .related-card p { margin:0; color:var(--muted); line-height:1.68; }
    @media (max-width: 980px) {
      .layout { grid-template-columns:1fr; }
      .sidebar { position:static; }
      .related-grid { grid-template-columns:1fr; }
    }
    @media (max-width: 760px) {
      .topbar-inner { flex-direction:column; align-items:flex-start; }
      h1 { max-width:none; }
      .hero-image { height:280px; }
      .article { padding:24px; }
    }
/* Language switcher (shared across pages) */
.lang-switch { display: inline-flex; gap: 2px; padding: 4px; background: #fff; border: 1px solid var(--line,#dbe5f5); border-radius: 999px; box-shadow: 0 8px 24px rgba(31,66,154,.14); font-weight: 800; font-size: .78rem; }
.lang-switch a { padding: 7px 12px; border-radius: 999px; text-decoration: none; color: var(--text,#0f172a); transition: background .15s; }
.lang-switch a.active { background: var(--primary,#2458ff); color: #fff; }
.lang-switch a:hover:not(.active) { background: #eef4ff; }
.topbar-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
@media (max-width: 760px) { .topbar-inner { align-items: flex-start !important; flex-direction: column !important; gap: 14px !important; } .topbar-actions { width: 100%; } }
/* Unified site footer (shared by all content pages) */
.site-footer { padding: 40px 0 48px; border-top: 1px solid #dbe5f5; background: rgba(255,255,255,.6); margin-top: 60px; }
.site-footer .footer-shell { padding-top: 24px; }
.site-footer .footer-grid { display: grid; gap: 20px; }
.site-footer .footer-links { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 14px; }
.site-footer .footer-links a { color: #586883; font-weight: 600; font-size: .92rem; transition: color .15s; text-decoration: none; }
.site-footer .footer-links a:hover { color: #2458ff; }
.site-footer .footer-contacts { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.site-footer .contact-pill { display: inline-flex; align-items: center; padding: 8px 14px; border-radius: 999px; border: 1px solid #dbe5f5; background: #fff; font-weight: 700; font-size: .88rem; color: #0f172a; text-decoration: none; transition: all .15s; }
.site-footer .contact-pill:hover { border-color: #2458ff; color: #2458ff; }
.site-footer .footer-note { margin: 16px 0 0; color: #586883; font-size: .85rem; line-height: 1.6; max-width: 900px; }
