*, *::before, *::after { box-sizing: border-box; }
    body { margin: 0; font-family: "Segoe UI", Inter, Arial, sans-serif; background: #f5f6fa; color: #1a1d2b; position: relative; }
    a { color: inherit; text-decoration: none; }
    :root{ --ink:#11152b; --muted:#5c6074; --line:#e0e4f0; --accent:#1f3f77; --accent-soft:#d7e1f5; --panel:#ffffff; --radius:18px; --shadow:0 18px 40px rgba(20, 29, 58, .12); }
    .container{ width: min(1180px, 92vw); margin: 0 auto; }
    header{ background: #ffffff; border-bottom: 1px solid var(--line); }
    .topline{ display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 0; }
    .brand img{ width:280px; height:auto; }
    nav{ display:flex; gap:16px; font-weight:600; font-size:18px; }
    nav a, nav span{ position:relative; color:var(--muted); white-space:nowrap; cursor:pointer; }
    nav a::after, nav span::after{ content:""; position:absolute; left:0; bottom:-6px; width:0; height:2px; background:var(--accent); transition:width .25s ease; }
    nav a:hover::after, nav a:focus-visible::after, nav span:hover::after{ width:100%; }
    .nav-item{ position:relative; }
    .nav-item::before{ content:""; position:absolute; top:100%; left:-20px; right:-20px; height:16px; z-index:9; }
    .submenu{ visibility:hidden; position:absolute; top:100%; left:0; margin-top:12px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow); padding:8px 0; min-width:280px; z-index:10; opacity:0; transform:translateY(-8px); transition:opacity .2s ease, transform .2s ease, visibility 0s .2s; pointer-events:none; }
    .nav-item:nth-last-child(-n+3) .submenu{ left:auto; right:0; }
    .nav-item:hover .submenu, .nav-item:focus-within .submenu, .submenu:hover{ visibility:visible; opacity:1; transform:translateY(0); transition:opacity .2s ease, transform .2s ease, visibility 0s; pointer-events:auto; }
    .submenu a{ display:block; padding:10px 20px; color:var(--muted); font-size:15px; font-weight:500; white-space:nowrap; }
    .submenu a:hover, .submenu a:focus-visible{ color:var(--accent); background:var(--accent-soft); }
    .menu-toggle{ display:none; background:none; border:none; cursor:pointer; padding:8px; flex-direction:column; gap:5px; }
    .menu-toggle span{ display:block; width:24px; height:3px; background:var(--accent); transition:all 0.3s ease; }
    .mobile-nav{ display:none; position:fixed; top:70px; left:0; right:0; background:#fff; border-bottom:1px solid var(--line); z-index:7; padding:20px; box-shadow:0 4px 12px rgba(0,0,0,0.1); max-height:calc(100vh - 70px); overflow-y:auto; }
    .mobile-nav.active{ display:block; }
    .mobile-nav-item{ border-bottom:1px solid var(--line); }
    .mobile-nav-item:last-child{ border-bottom:none; }
    .mobile-nav-link{ display:block; padding:12px 0; color:var(--muted); font-weight:600; font-size:18px; }
    .mobile-nav-item-wrapper{ display:flex; align-items:center; justify-content:space-between; }
    .mobile-submenu-toggle{ background:none; border:none; color:var(--accent); font-size:24px; font-weight:300; cursor:pointer; padding:8px 12px; line-height:1; }
    .mobile-submenu{ display:none; padding-left:16px; padding-top:8px; padding-bottom:8px; }
    .mobile-submenu.active{ display:block !important; }
    .mobile-submenu a{ display:block; padding:10px 0; color:var(--muted); font-weight:500; font-size:16px; }
    .breadcrumb{ padding:24px 0; color:var(--muted); font-size:14px; }
    .breadcrumb a{ color:var(--accent); text-decoration:underline; }
    .article-back{ margin-bottom:32px; }
    .article-back a{ display:inline-flex; align-items:center; gap:8px; color:var(--accent); font-weight:600; font-size:15px; }
    .article-back a::before{ content:"<-"; font-size:18px; }
    .article-header{ padding:40px 0 40px clamp(16px, 3vw, 36px); border-bottom:1px solid var(--line); margin-bottom:40px; }
    .article-header .category{ font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); font-weight:600; margin-bottom:12px; display:block; }
    .article-header h1{ margin:0 0 16px 0; font-size: clamp(30px, 4vw, 46px); line-height:1.2; color:var(--ink); letter-spacing:.02em; }
    .article-header .subtitle{ font-size: clamp(18px, 2vw, 22px); color:var(--muted); margin-bottom:16px; line-height:1.5; }
    .article-header .meta{ display:flex; align-items:center; gap:16px; font-size:14px; color:var(--muted); flex-wrap:wrap; }
    .article-content{ max-width:780px; margin:0 auto; padding:0 0 60px 0; }
    .cover-image{ margin:0 0 32px 0; }
    .cover-image img{ width:100%; max-width:780px; display:block; margin:0 auto; border-radius:16px; border:1px solid var(--line); box-shadow:var(--shadow); background:#fff; padding:8px; }
    .article-content h2{ margin:48px 0 24px 0; font-size: clamp(24px, 3vw, 32px); line-height:1.3; color:var(--ink); text-transform:uppercase; letter-spacing:.04em; }
    .article-content h3{ margin:30px 0 16px 0; font-size: clamp(20px, 2.5vw, 24px); line-height:1.4; color:var(--ink); font-weight:600; }
    .article-content p{ margin:0 0 20px 0; font-size:17px; line-height:1.8; color:var(--ink); }
    .article-content ul{ margin:0 0 24px 0; padding-left:28px; font-size:17px; line-height:1.8; color:var(--ink); }
    .article-content li{ margin-bottom:12px; }
    .takeaways-box{ margin:12px 0 34px 0; padding:24px; background:linear-gradient(160deg,#eef3ff,#f7f9ff); border:1px solid var(--line); border-left:4px solid var(--accent); border-radius:14px; }
    .takeaways-box h2{ margin-top:0; }
    .analysis-card{ margin:0 0 20px 0; padding:20px 22px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 8px 20px rgba(20,29,58,.06); }
    .analysis-card h3{ margin-top:0; }
    .expert-box{ margin-top:42px; padding:24px; background:#f7f8fd; border:1px solid var(--line); border-radius:14px; }
    .expert-box h2{ margin-top:0; }
    .tags-wrap{ display:flex; flex-wrap:wrap; gap:10px; margin-top:40px; padding-top:32px; border-top:1px solid var(--line); }
    .tags-title{ font-size:14px; color:var(--muted); font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
    .tag-chip{ padding:6px 14px; border-radius:8px; background:var(--accent-soft); color:var(--accent); font-size:13px; font-weight:500; }
    .materials-box{ margin-top:40px; padding:24px; background:var(--accent-soft); border-radius:12px; border-left:4px solid var(--accent); }
    .materials-box h3{ margin:0 0 12px 0; font-size:16px; color:var(--ink); text-transform:uppercase; letter-spacing:.08em; }
    .materials-box p{ margin:0 0 16px 0; color:var(--muted); font-size:15px; line-height:1.6; }
    .materials-list{ display:flex; flex-direction:column; gap:12px; }
    .materials-link{ display:inline-flex; align-items:center; gap:8px; color:var(--accent); font-weight:600; font-size:15px; padding:10px 16px; background:#fff; border-radius:8px; transition:transform .2s ease; }
    .materials-link:hover{ transform:translateX(3px); }
    footer{ background:#101428; color:rgba(235,237,252,.7); padding:28px 0; text-transform:uppercase; font-size:12px; letter-spacing:.18em; }
    .footer-inner{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
    @media (max-width: 680px){ nav{ display:none; } .menu-toggle{ display:flex; } .brand img{ width:220px; } .article-content{ padding:0 0 40px 0; } }
