/* roulang page: index */
:root {
      --ink: #172333;
      --muted: #667386;
      --blue: #1769aa;
      --blue-deep: #0c477c;
      --cyan: #21a8b8;
      --sky: #eaf6fb;
      --paper: #ffffff;
      --mist: #f5f8fb;
      --line: #dce6ef;
      --gold: #f1b84b;
      --radius: 14px;
      --shadow: 0 14px 34px rgba(25, 65, 96, .10);
      --shadow-hover: 0 20px 40px rgba(25, 65, 96, .16);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--mist);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
      font-size: 16px;
      line-height: 1.75;
    }
    a { color: inherit; text-decoration: none; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
    img { display: block; max-width: 100%; }
    button, input { font: inherit; }
    button:focus-visible, a:focus-visible, input:focus-visible { outline: 3px solid rgba(33,168,184,.35); outline-offset: 3px; }
    .container { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
    .site-header {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(255,255,255,.96);
      border-bottom: 1px solid var(--line);
      box-shadow: 0 4px 20px rgba(32,66,92,.05);
    }
    .topbar { min-height: 76px; display: flex; align-items: center; gap: 28px; }
    .brand {
      display: inline-flex;
      align-items: center;
      gap: 11px;
      min-width: 205px;
      font-size: 21px;
      font-weight: 800;
      letter-spacing: .02em;
      color: var(--blue-deep);
    }
    .brand-mark {
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border-radius: 11px;
      color: #fff;
      background: var(--blue);
      font-weight: 900;
      box-shadow: 0 6px 14px rgba(23,105,170,.22);
    }
    .main-nav { display: flex; align-items: center; gap: 7px; }
    .main-nav a {
      padding: 10px 15px;
      color: var(--muted);
      border-radius: 9px;
      font-weight: 600;
    }
    .main-nav a:hover, .main-nav a.active { color: var(--blue-deep); background: var(--sky); }
    .header-tools { margin-left: auto; display: flex; align-items: center; gap: 11px; }
    .search-box {
      display: flex;
      align-items: center;
      gap: 8px;
      height: 42px;
      width: 205px;
      padding: 0 13px;
      border: 1px solid var(--line);
      border-radius: 9px;
      background: #fff;
      color: var(--muted);
    }
    .search-box input { width: 100%; border: 0; outline: 0; color: var(--ink); background: transparent; }
    .version {
      padding: 7px 11px;
      color: var(--blue-deep);
      border: 1px solid #c9e2ed;
      border-radius: 8px;
      background: #f4fbfd;
      font-size: 13px;
      font-weight: 700;
    }
    .menu-toggle { display: none; border: 0; background: transparent; color: var(--blue-deep); font-size: 25px; cursor: pointer; }

    .hero {
      position: relative;
      min-height: 520px;
      display: flex;
      align-items: center;
      overflow: hidden;
      color: #fff;
      background: #0c477c url("https://images.unsplash.com/photo-1550745165-9bc0b252726f?auto=format&fit=crop&w=1800&q=88") center/cover no-repeat;
    }
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(6, 46, 80, .76);
    }
    .hero-inner { position: relative; z-index: 1; padding: 76px 0; }
    .hero-copy { max-width: 760px; }
    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 18px;
      color: #bdeff2;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
    }
    .eyebrow::before { content: ""; width: 26px; height: 2px; background: var(--cyan); }
    h1, h2, h3, p { margin-top: 0; }
    h1 {
      max-width: 760px;
      margin-bottom: 20px;
      font-size: clamp(38px, 5vw, 68px);
      line-height: 1.12;
      letter-spacing: 0;
    }
    .hero-copy p { max-width: 720px; margin-bottom: 28px; color: #e1f1f8; font-size: 18px; }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
    .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 46px;
      padding: 10px 19px;
      border: 1px solid transparent;
      border-radius: 9px;
      font-weight: 750;
      cursor: pointer;
      transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .button:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(10,58,93,.18); }
    .button-primary { color: #fff; background: var(--cyan); }
    .button-primary:hover { background: #15919f; }
    .button-light { color: var(--blue-deep); background: #fff; }
    .button-outline { color: #fff; border-color: rgba(255,255,255,.55); background: transparent; }
    .button-outline:hover { background: rgba(255,255,255,.12); }
    .trust-line { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 27px; color: #cbe2ec; font-size: 14px; }
    .trust-line span::before { content: "✓"; margin-right: 7px; color: #75e0db; font-weight: 900; }

    .section { padding: 82px 0; background: var(--paper); }
    .section-alt { background: var(--mist); }
    .section-dark { color: #fff; background: #102f4b; }
    .section-head { max-width: 730px; margin-bottom: 34px; }
    .section-kicker { margin-bottom: 10px; color: var(--blue); font-size: 13px; font-weight: 800; letter-spacing: .08em; }
    h2 { margin-bottom: 13px; font-size: clamp(28px, 3.5vw, 42px); line-height: 1.22; }
    .section-head p { margin-bottom: 0; color: var(--muted); font-size: 16px; }
    .section-dark .section-head p { color: #b8cad8; }
    .grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 17px; }
    .card {
      padding: 25px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: #fff;
      box-shadow: var(--shadow);
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .card:hover { transform: translateY(-4px); border-color: #b9dbe7; box-shadow: var(--shadow-hover); }
    .icon-box {
      width: 45px; height: 45px; display: grid; place-items: center;
      margin-bottom: 17px; border-radius: 10px; color: var(--blue-deep);
      background: var(--sky); font-size: 21px; font-weight: 800;
    }
    .card h3 { margin-bottom: 9px; font-size: 20px; line-height: 1.35; }
    .card p { margin-bottom: 0; color: var(--muted); font-size: 14px; }
    .calendar-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 24px; align-items: stretch; }
    .calendar-feature { min-height: 290px; padding: 31px; color: #fff; border-radius: var(--radius); background: #1769aa; box-shadow: var(--shadow); }
    .calendar-feature h3 { max-width: 460px; font-size: 28px; line-height: 1.3; }
    .calendar-feature p { max-width: 540px; color: #d8eff6; }
    .calendar-meta { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 30px; }
    .badge { display: inline-flex; padding: 5px 10px; border-radius: 99px; color: var(--blue-deep); background: #dff4f6; font-size: 12px; font-weight: 800; }
    .schedule-list { padding: 5px 22px; border-left: 3px solid #b8dbe5; }
    .schedule-item { display: grid; grid-template-columns: 78px 1fr; gap: 16px; padding: 15px 0; border-bottom: 1px solid var(--line); }
    .schedule-item:last-child { border-bottom: 0; }
    .schedule-date { color: var(--blue); font-weight: 800; }
    .schedule-item strong { display: block; margin-bottom: 3px; }
    .schedule-item span { color: var(--muted); font-size: 13px; }
    .topic-card { position: relative; min-height: 218px; overflow: hidden; padding: 0; border: 0; color: #fff; background: #123f63; }
    .topic-card img { width: 100%; height: 100%; min-height: 218px; object-fit: cover; opacity: .66; transition: transform .4s ease; }
    .topic-card:hover img { transform: scale(1.06); }
    .topic-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 23px; background: linear-gradient(transparent 20%, rgba(5,32,56,.9)); }
    .topic-overlay h3 { margin-bottom: 5px; font-size: 21px; }
    .topic-overlay p { margin: 0; color: #d8ebf0; font-size: 13px; }
    .insight-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 30px; align-items: center; }
    .quote-panel { padding: 34px; border-left: 4px solid var(--cyan); background: #eef8fa; }
    .quote-panel strong { display: block; margin-bottom: 13px; color: var(--blue-deep); font-size: 20px; line-height: 1.45; }
    .quote-panel p { margin: 0; color: var(--muted); }
    .number-list { display: grid; gap: 15px; }
    .number-item { display: grid; grid-template-columns: 44px 1fr; gap: 14px; align-items: start; }
    .number { color: var(--cyan); font-size: 25px; font-weight: 800; line-height: 1.2; }
    .number-item strong { display: block; margin-bottom: 4px; }
    .number-item p { margin: 0; color: var(--muted); font-size: 14px; }
    .news-list { border-top: 1px solid var(--line); }
    .news-row { display: grid; grid-template-columns: 115px 1fr 90px; gap: 18px; align-items: center; padding: 20px 0; border-bottom: 1px solid var(--line); }
    .news-row time { color: var(--blue); font-size: 13px; font-weight: 800; }
    .news-row strong { font-size: 17px; }
    .news-row p { margin: 4px 0 0; color: var(--muted); font-size: 13px; }
    .news-type { justify-self: end; padding: 4px 9px; color: var(--muted); border: 1px solid var(--line); border-radius: 6px; font-size: 12px; }
    .media-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 20px; }
    .media-main { position: relative; min-height: 300px; overflow: hidden; border-radius: var(--radius); color: #fff; background: #163e60; }
    .media-main img { width: 100%; height: 100%; min-height: 300px; object-fit: cover; opacity: .68; }
    .media-main-content { position: absolute; inset: auto 0 0; padding: 28px; background: linear-gradient(transparent, rgba(4,25,43,.9)); }
    .media-main-content h3 { max-width: 520px; font-size: 27px; }
    .media-main-content p { margin: 0; color: #d7eaf1; }
    .media-side { display: grid; gap: 20px; }
    .media-side .card { display: flex; align-items: flex-start; gap: 15px; padding: 21px; }
    .media-side .icon-box { flex: 0 0 40px; width: 40px; height: 40px; margin: 0; font-size: 16px; }
    .media-side h3 { margin-bottom: 5px; font-size: 17px; }
    .analytics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
    .metric { padding: 24px; border-top: 3px solid var(--cyan); background: #173e5d; }
    .metric strong { display: block; margin-bottom: 8px; color: #fff; font-size: 33px; line-height: 1; }
    .metric span { color: #b9cfdd; font-size: 13px; }
    .protection-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
    .protection-list { display: grid; gap: 12px; }
    .protection-item { display: flex; gap: 13px; padding: 17px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
    .check { color: var(--cyan); font-weight: 900; font-size: 18px; }
    .protection-item strong { display: block; margin-bottom: 3px; }
    .protection-item span { color: var(--muted); font-size: 13px; }
    .notice { padding: 25px; border-radius: var(--radius); background: #eaf6fb; }
    .notice h3 { margin-bottom: 10px; color: var(--blue-deep); }
    .notice p { margin-bottom: 0; color: var(--muted); font-size: 14px; }
    .subscribe { padding: 52px 0; background: #dff2f5; }
    .subscribe-inner { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
    .subscribe h2 { margin-bottom: 8px; font-size: 31px; }
    .subscribe p { margin: 0; color: var(--muted); }
    .subscribe-form { display: flex; min-width: 390px; gap: 8px; }
    .subscribe-form input { min-width: 0; flex: 1; height: 46px; padding: 0 14px; border: 1px solid #c2dce4; border-radius: 8px; background: #fff; }
    .site-footer { padding: 48px 0 24px; color: #b8cbd7; background: #0d293f; }
    .footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 30px; padding-bottom: 38px; }
    .footer-brand { color: #fff; }
    .footer-brand p { max-width: 330px; margin-top: 16px; color: #a9bfcd; font-size: 14px; }
    .footer-title { margin-bottom: 13px; color: #fff; font-weight: 750; }
    .footer-links { display: grid; gap: 8px; font-size: 14px; }
    .footer-links a:hover { color: #76d8dc; }
    .copyright { display: flex; justify-content: space-between; gap: 20px; padding-top: 21px; border-top: 1px solid rgba(214,239,248,.14); color: #8da7b6; font-size: 13px; }

    @media (max-width: 1024px) {
      .topbar { gap: 14px; }
      .brand { min-width: 185px; }
      .search-box { width: 170px; }
      .grid-4, .analytics-grid { grid-template-columns: repeat(2, 1fr); }
      .calendar-layout, .insight-layout, .media-grid, .protection-layout { grid-template-columns: 1fr; }
    }
    @media (max-width: 768px) {
      .container { width: min(100% - 30px, 620px); }
      .topbar { min-height: 66px; }
      .brand { min-width: 0; font-size: 18px; }
      .header-tools { display: none; }
      .menu-toggle { display: block; margin-left: auto; }
      .main-nav { display: none; position: absolute; top: 66px; left: 0; right: 0; padding: 10px 15px 15px; flex-direction: column; align-items: stretch; background: #fff; border-bottom: 1px solid var(--line); box-shadow: 0 12px 20px rgba(25,65,96,.1); }
      .main-nav.is-open { display: flex; }
      .main-nav a { padding: 12px 14px; }
      .hero { min-height: 570px; }
      .hero-inner { padding: 65px 0; }
      h1 { font-size: 42px; }
      .section { padding: 62px 0; }
      .grid-3, .grid-4, .analytics-grid { grid-template-columns: 1fr; }
      .news-row { grid-template-columns: 1fr; gap: 5px; }
      .news-type { justify-self: start; }
      .subscribe-inner { display: block; }
      .subscribe-form { min-width: 0; margin-top: 22px; }
      .footer-grid { grid-template-columns: repeat(2, 1fr); }
      .copyright { display: block; }
      .copyright span { display: block; margin-top: 7px; }
    }
    @media (max-width: 520px) {
      .hero-actions { display: grid; }
      .hero-actions .button { width: 100%; }
      .trust-line { display: grid; gap: 7px; }
      .calendar-feature, .card, .notice { padding: 21px; }
      .schedule-item { grid-template-columns: 65px 1fr; gap: 10px; }
      .subscribe-form { display: grid; }
      .subscribe-form .button { width: 100%; }
      .footer-grid { grid-template-columns: 1fr; }
    }

/* roulang page: category1 */
:root{
 --ink:#172333;--muted:#667386;--blue:#1769aa;--blue-deep:#0c477c;--cyan:#21a8b8;
 --sky:#eaf6fb;--paper:#fff;--mist:#f5f8fb;--line:#dce6ef;--gold:#f1b84b;
 --radius:14px;--shadow:0 14px 34px rgba(25,65,96,.10);--shadow-hover:0 20px 40px rgba(25,65,96,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--mist);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{font-weight:800;letter-spacing:-.025em}
h1{font-size:clamp(36px,5vw,64px);line-height:1.12;margin-bottom:20px}
h2{font-size:clamp(28px,3vw,40px);line-height:1.25;margin-bottom:14px}
h3{font-size:20px;line-height:1.4;margin-bottom:9px}
a{color:inherit;text-decoration:none;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease}
img{display:block;max-width:100%}
button,input{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(33,168,184,.35);outline-offset:3px}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 4px 20px rgba(32,66,92,.05)}
.topbar{min-height:76px;display:flex;align-items:center;gap:28px}
.brand{display:inline-flex;align-items:center;gap:11px;min-width:205px;font-size:21px;font-weight:800;letter-spacing:.02em;color:var(--blue-deep)}
.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#fff;background:var(--blue);font-weight:900;box-shadow:0 6px 14px rgba(23,105,170,.22)}
.main-nav{display:flex;align-items:center;gap:7px}
.main-nav a{padding:10px 15px;color:var(--muted);border-radius:9px;font-weight:600}
.main-nav a:hover,.main-nav a.active{color:var(--blue-deep);background:var(--sky)}
.header-tools{margin-left:auto;display:flex;align-items:center;gap:11px}
.search-box{display:flex;align-items:center;gap:8px;height:42px;width:205px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted)}
.search-box input{width:100%;border:0;outline:0;color:var(--ink);background:transparent}
.lang-tag{padding:7px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px;font-weight:700}
.menu-toggle{display:none;border:0;background:transparent;color:var(--blue-deep);font-size:25px;cursor:pointer}
.hero-category{padding:78px 0 82px;background:#fff;border-bottom:1px solid var(--line)}
.hero-layout{display:grid;grid-template-columns:5fr 7fr;gap:52px;align-items:center}
.hero-copy{padding:18px 0 10px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em}
.eyebrow:before{content:"";width:27px;height:2px;background:var(--cyan)}
.hero-copy p{max-width:580px;margin-bottom:28px;color:var(--muted);font-size:18px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 19px;border:1px solid transparent;border-radius:9px;font-weight:750;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(10,58,93,.18)}
.button-primary{color:#fff;background:var(--blue)}
.button-primary:hover{background:var(--blue-deep)}
.button-soft{color:var(--blue-deep);background:var(--sky);border-color:#cde7ee}
.hero-visual{position:relative;min-height:405px;margin-right:-34px;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-hover);transform:skewY(-2deg)}
.hero-visual img{width:100%;height:405px;object-fit:cover;transform:skewY(2deg) scale(1.04)}
.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(12,71,124,.18),rgba(12,71,124,.72))}
.hero-panel{position:absolute;z-index:2;right:28px;bottom:26px;width:240px;padding:19px;border:1px solid rgba(255,255,255,.28);border-radius:13px;color:#fff;background:rgba(10,48,80,.78);backdrop-filter:blur(8px);transform:skewY(2deg)}
.hero-panel strong{display:block;font-size:28px;line-height:1.2}
.hero-panel span{color:#d7edf3;font-size:13px}
.section{padding:78px 0;background:var(--paper)}
.section-alt{background:var(--mist)}
.section-dark{color:#fff;background:#102f4b}
.section-head{max-width:730px;margin-bottom:34px}
.section-kicker{margin-bottom:10px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em}
.section-head p{margin-bottom:0;color:var(--muted)}
.section-dark .section-kicker{color:#8ce1e5}
.section-dark .section-head p{color:#b8cad8}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.card{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.card:hover{transform:translateY(-4px);border-color:#b9dbe7;box-shadow:var(--shadow-hover)}
.card p{margin-bottom:0;color:var(--muted);font-size:14px}
.icon-box{width:44px;height:44px;display:grid;place-items:center;margin-bottom:18px;border-radius:12px;color:var(--blue-deep);background:var(--sky);font-size:20px;font-weight:800}
.badge{display:inline-flex;padding:5px 10px;border-radius:99px;color:var(--blue-deep);background:#dff4f6;font-size:12px;font-weight:800}
.topic-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.feature-card{min-height:280px;padding:30px;border-radius:var(--radius);color:#fff;background:linear-gradient(135deg,#1769aa,#0c477c);box-shadow:var(--shadow)}
.feature-card p{max-width:580px;color:#d8eff6}
.feature-card h3{font-size:28px;max-width:550px}
.topic-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.topic-link{display:flex;flex-direction:column;justify-content:space-between;min-height:132px;padding:20px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(25,65,96,.06)}
.topic-link:hover{border-color:#9fd3df;background:#f9fdff;transform:translateY(-3px)}
.topic-link span{color:var(--blue);font-size:13px;font-weight:800}
.topic-link strong{font-size:18px}
.number-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.number-item{padding:25px 22px;border-left:3px solid var(--cyan);background:#fff}
.number-item strong{display:block;color:var(--blue-deep);font-size:35px;line-height:1.2}
.number-item span{color:var(--muted);font-size:14px}
.split-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.timeline{border-left:2px solid #c9e1e8}
.timeline-item{position:relative;padding:0 0 26px 28px}
.timeline-item:before{content:"";position:absolute;left:-8px;top:7px;width:14px;height:14px;border:3px solid var(--cyan);border-radius:50%;background:#fff}
.timeline-item:last-child{padding-bottom:0}
.timeline-item strong{display:block;margin-bottom:4px;color:var(--blue-deep)}
.timeline-item p{margin:0;color:var(--muted);font-size:14px}
.insight-list{display:grid;gap:13px}
.insight-row{display:grid;grid-template-columns:105px 1fr auto;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}
.insight-row:last-child{border-bottom:0}
.insight-row time{color:var(--blue);font-size:13px;font-weight:800}
.insight-row h3{margin:0;font-size:17px}
.insight-row p{margin:3px 0 0;color:var(--muted);font-size:13px}
.arrow{color:var(--blue);font-size:20px}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.faq-item{padding:22px 24px;border:1px solid var(--line);border-radius:12px;background:#fff}
.faq-item h3{margin-bottom:8px;font-size:17px}
.faq-item p{margin:0;color:var(--muted);font-size:14px}
.cta-band{padding:42px;border-radius:17px;color:#fff;background:#1769aa;display:flex;justify-content:space-between;align-items:center;gap:25px;box-shadow:var(--shadow)}
.cta-band h2{margin-bottom:7px;font-size:30px}
.cta-band p{margin:0;color:#d8eff6}
.site-footer{padding:58px 0 20px;color:#c1d1dd;background:#102f4b}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:35px;padding-bottom:38px}
.footer-brand{margin-bottom:16px;color:#fff}
.footer-grid p{max-width:290px;color:#aebfcd;font-size:14px}
.footer-title{margin-bottom:13px;color:#fff;font-weight:800}
.footer-links{display:grid;gap:8px}
.footer-links a{color:#aebfcd;font-size:14px}
.footer-links a:hover{color:#8ce1e5}
.copyright{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);color:#8ea5b5;font-size:12px}
@media(max-width:1024px){
 .hero-layout{gap:30px}.hero-visual{margin-right:0}.grid-4{grid-template-columns:repeat(2,1fr)}
 .footer-grid{grid-template-columns:1.3fr repeat(3,1fr);gap:22px}
}
@media(max-width:768px){
 .container{width:min(100% - 30px,620px)}
 .topbar{min-height:68px;gap:12px}.brand{min-width:0;font-size:18px}.main-nav{display:none;position:absolute;left:15px;right:15px;top:68px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}
 .main-nav.open{display:flex}.main-nav a{padding:12px 14px}.header-tools{margin-left:auto}.search-box{width:150px}.lang-tag{display:none}.menu-toggle{display:block}
 .hero-category{padding:52px 0 58px}.hero-layout{grid-template-columns:1fr}.hero-copy{padding:0}.hero-visual{min-height:300px}.hero-visual img{height:300px}.hero-panel{right:16px;bottom:16px}
 .section{padding:58px 0}.grid-3,.topic-grid,.split-layout{grid-template-columns:1fr}.number-list{grid-template-columns:1fr}.topic-list,.faq-grid{grid-template-columns:repeat(2,1fr)}
 .insight-row{grid-template-columns:82px 1fr}.insight-row .arrow{display:none}.cta-band{padding:30px;display:block}.cta-band .button{margin-top:20px}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-grid>div:first-child{grid-column:1/-1}.copyright{display:block}.copyright span{display:block;margin-top:5px}
}
@media(max-width:520px){
 h1{font-size:36px}.hero-copy p{font-size:16px}.search-box{width:125px}.topic-list,.faq-grid,.grid-4{grid-template-columns:1fr}.hero-panel{width:210px}.section-head{margin-bottom:25px}.insight-row{grid-template-columns:1fr;gap:3px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}
}
