/* roulang page: index */
:root {
      --ink: #172b3a;
      --muted: #627486;
      --soft: #edf3f8;
      --paper: #f5f8fc;
      --white: #fff;
      --line: #dce6ee;
      --blue: #176d93;
      --blue-deep: #104b68;
      --teal: #148b83;
      --coral: #df765c;
      --lime: #d8edaa;
      --radius: 8px;
      --shadow: 0 14px 38px rgba(26, 57, 78, .09);
      --shadow-hover: 0 20px 46px rgba(26, 57, 78, .15);
      --container: 1180px;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; scroll-padding-top: 88px; }
    body {
      margin: 0;
      background: var(--paper);
      color: var(--ink);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
      font-size: 16px;
      line-height: 1.7;
      -webkit-font-smoothing: antialiased;
    }
    a { color: inherit; text-decoration: none; }
    img { display: block; max-width: 100%; }
    button, input { font: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid rgba(20,139,131,.4); outline-offset: 3px; }
    .container { width: min(var(--container), calc(100% - 48px)); margin-inline: auto; }
    .site-header {
      position: sticky; top: 0; z-index: 30;
      background: rgba(255,255,255,.94);
      border-bottom: 1px solid rgba(220,230,238,.9);
      backdrop-filter: blur(14px);
    }
    .nav-wrap { min-height: 76px; display: flex; align-items: center; gap: 30px; }
    .brand { display: inline-flex; align-items: center; gap: 11px; font-weight: 800; font-size: 17px; white-space: nowrap; }
    .brand-mark {
      width: 38px; height: 38px; border-radius: 8px; display: grid; place-items: center;
      background: var(--blue); color: white; box-shadow: 0 6px 14px rgba(23,109,147,.22);
    }
    .brand-mark svg { width: 18px; height: 18px; }
    .nav-links { display: flex; align-items: center; gap: 6px; margin-left: auto; }
    .nav-link { padding: 9px 13px; border-radius: 6px; color: #536778; font-size: 14px; font-weight: 650; transition: .2s ease; }
    .nav-link:hover, .nav-link.active { color: var(--blue-deep); background: #eaf3f7; }
    .phase-chip { display: inline-flex; align-items: center; gap: 7px; margin-left: 5px; padding: 7px 11px; border: 1px solid #d5e9e4; border-radius: 6px; color: #27736c; background: #f2faf7; font-size: 12px; font-weight: 700; }
    .phase-dot { width: 7px; height: 7px; border-radius: 50%; background: #3baa83; box-shadow: 0 0 0 4px rgba(59,170,131,.12); }
    .nav-action { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 0 15px; border-radius: 6px; background: var(--blue); color: white; font-size: 13px; font-weight: 750; transition: .2s ease; }
    .nav-action:hover { background: var(--blue-deep); transform: translateY(-1px); }
    .menu-toggle { display: none; border: 1px solid var(--line); background: white; color: var(--ink); border-radius: 6px; width: 42px; height: 42px; cursor: pointer; }
    .menu-toggle svg { width: 20px; height: 20px; margin: auto; }
    .hero { position: relative; overflow: hidden; min-height: 530px; display: flex; align-items: flex-end; background: #193847; }
    .hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 45%; }
    .hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,29,41,.88) 0%, rgba(10,29,41,.58) 46%, rgba(10,29,41,.12) 100%), linear-gradient(0deg, rgba(10,29,41,.42), transparent 62%); }
    .hero-inner { position: relative; z-index: 1; width: min(var(--container), calc(100% - 48px)); margin: 0 auto; padding: 76px 0 72px; color: white; }
    .hero-label { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 16px; color: #d1e7e8; font-size: 13px; font-weight: 700; }
    .hero-label::before { content: ""; width: 24px; height: 2px; background: #7fc8b5; }
    h1 { max-width: 820px; margin: 0; font-size: clamp(38px, 5vw, 62px); line-height: 1.16; font-weight: 780; }
    .hero-copy { max-width: 720px; margin: 20px 0 26px; color: rgba(255,255,255,.82); font-size: 17px; line-height: 1.85; }
    .hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
    .btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 0 20px; border: 1px solid transparent; border-radius: 6px; cursor: pointer; font-weight: 750; transition: .2s ease; }
    .btn svg { width: 17px; height: 17px; }
    .btn-primary { background: var(--teal); color: white; }
    .btn-primary:hover { background: #0f746e; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(20,139,131,.25); }
    .btn-light { color: white; border-color: rgba(255,255,255,.5); background: rgba(255,255,255,.08); }
    .btn-light:hover { background: rgba(255,255,255,.18); }
    .hero-note { display: flex; align-items: center; gap: 10px; margin-top: 24px; color: rgba(255,255,255,.75); font-size: 13px; }
    .hero-note span { width: 6px; height: 6px; border-radius: 50%; background: #9dd1a2; }
    .section { padding: 76px 0; }
    .section-white { background: white; }
    .section-soft { background: #edf3f7; }
    .section-dark { background: #173847; color: white; }
    .section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 32px; }
    .section-kicker { display: block; margin-bottom: 8px; color: var(--teal); font-size: 12px; font-weight: 800; letter-spacing: .08em; }
    .section-dark .section-kicker { color: #91d5c5; }
    h2 { margin: 0; font-size: 30px; line-height: 1.3; font-weight: 760; }
    .section-intro { max-width: 690px; margin: 11px 0 0; color: var(--muted); }
    .section-dark .section-intro { color: #c2d3d8; }
    .text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--blue); font-size: 14px; font-weight: 750; white-space: nowrap; }
    .text-link:hover { color: var(--teal); }
    .text-link svg { width: 16px; height: 16px; }
    .metric-strip { display: grid; grid-template-columns: repeat(4, 1fr); background: white; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); overflow: hidden; }
    .metric { padding: 25px 28px; border-right: 1px solid var(--line); }
    .metric:last-child { border-right: 0; }
    .metric-value { display: block; font-size: 26px; line-height: 1.2; font-weight: 800; color: var(--blue-deep); }
    .metric-label { display: block; margin-top: 7px; color: var(--muted); font-size: 13px; }
    .split-layout { display: grid; grid-template-columns: .88fr 1.12fr; gap: 58px; align-items: center; }
    .poster-frame { position: relative; min-height: 380px; overflow: hidden; border-radius: var(--radius); background: #d7e1e8; box-shadow: var(--shadow); }
    .poster-frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
    .poster-caption { position: absolute; inset: auto 0 0; padding: 52px 24px 23px; color: white; background: linear-gradient(transparent, rgba(9,28,39,.82)); }
    .poster-caption strong { display: block; font-size: 20px; }
    .poster-caption span { color: rgba(255,255,255,.75); font-size: 13px; }
    .feature-list { display: grid; gap: 17px; margin-top: 25px; }
    .feature-row { display: grid; grid-template-columns: 42px 1fr; gap: 14px; align-items: start; }
    .feature-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 7px; color: var(--blue); background: #e9f3f7; }
    .feature-icon svg { width: 19px; height: 19px; }
    .feature-row h3 { margin: 0 0 3px; font-size: 16px; }
    .feature-row p { margin: 0; color: var(--muted); font-size: 14px; }
    .countdown-band { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 24px; padding: 29px 32px; color: white; background: var(--blue-deep); border-radius: var(--radius); }
    .countdown-band h2 { font-size: 22px; }
    .countdown-band p { margin: 6px 0 0; color: #c6dce3; font-size: 14px; }
    .countdown { display: flex; gap: 10px; }
    .time-box { min-width: 68px; padding: 9px 10px; text-align: center; border: 1px solid rgba(255,255,255,.19); border-radius: 6px; background: rgba(255,255,255,.08); }
    .time-box strong { display: block; font-size: 22px; line-height: 1.1; }
    .time-box span { color: #c8dce2; font-size: 11px; }
    .feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
    .feature-card { padding: 25px; background: white; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 8px 22px rgba(26,57,78,.045); transition: .22s ease; }
    .feature-card:hover, .content-card:hover, .perk-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-hover); }
    .card-index { display: inline-block; margin-bottom: 16px; color: var(--coral); font-size: 12px; font-weight: 800; }
    .feature-card h3, .perk-card h3, .content-card h3 { margin: 0 0 8px; font-size: 18px; line-height: 1.45; }
    .feature-card p, .perk-card p, .content-card p { margin: 0; color: var(--muted); font-size: 14px; }
    .perk-grid { display: grid; grid-template-columns: 1.2fr .8fr .8fr; gap: 16px; align-items: stretch; }
    .perk-card { min-height: 210px; padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); background: white; transition: .22s ease; }
    .perk-card:first-child { color: white; border-color: transparent; background: var(--teal); }
    .perk-card:first-child p { color: rgba(255,255,255,.82); }
    .perk-tag { display: inline-block; margin-bottom: 16px; padding: 4px 9px; border-radius: 4px; color: var(--blue-deep); background: #e9f2f5; font-size: 11px; font-weight: 800; }
    .perk-card:first-child .perk-tag { color: #164f50; background: #c7eee1; }
    .steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; counter-reset: steps; }
    .step { position: relative; padding: 8px 26px 8px 0; counter-increment: steps; }
    .step:not(:last-child)::after { content: ""; position: absolute; top: 22px; left: 43px; right: 15px; border-top: 1px dashed #a8bbc4; }
    .step-number { position: relative; z-index: 1; width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 18px; border: 1px solid #b7d7d8; border-radius: 50%; color: var(--blue-deep); background: white; font-size: 14px; font-weight: 800; }
    .step-number::before { content: "0" counter(steps); }
    .step h3 { margin: 0 0 7px; font-size: 16px; }
    .step p { margin: 0; color: var(--muted); font-size: 13px; }
    .reward-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 40px; align-items: center; }
    .reward-visual { min-height: 260px; overflow: hidden; border-radius: var(--radius); background: #d4e3e2; }
    .reward-visual img { width: 100%; height: 260px; object-fit: cover; }
    .reward-list { display: grid; gap: 0; }
    .reward-item { display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 16px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
    .reward-item:last-child { border-bottom: 0; }
    .reward-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 7px; color: #183e4d; background: var(--lime); }
    .reward-icon svg { width: 18px; height: 18px; }
    .reward-item h3 { margin: 0; font-size: 16px; }
    .reward-item p { margin: 3px 0 0; color: #c1d2d8; font-size: 13px; }
    .reward-item em { color: #9bd8c9; font-style: normal; font-size: 13px; font-weight: 700; white-space: nowrap; }
    .topic-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .topic-item { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 21px 22px; border: 1px solid var(--line); border-radius: var(--radius); background: white; transition: .2s ease; }
    .topic-item:hover { border-color: #9ac5cd; background: #f7fbfc; }
    .topic-item strong { display: block; font-size: 16px; }
    .topic-item span { display: block; margin-top: 3px; color: var(--muted); font-size: 13px; }
    .topic-arrow { flex: none; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: #eaf3f7; }
    .topic-arrow svg { width: 16px; height: 16px; }
    .comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .compare-panel { padding: 27px; border-radius: var(--radius); background: white; border: 1px solid var(--line); }
    .compare-panel.highlight { border-color: #abd7d2; background: #f2faf8; }
    .compare-panel h3 { margin: 0 0 17px; font-size: 18px; }
    .compare-list { display: grid; gap: 12px; }
    .compare-line { display: flex; align-items: flex-start; gap: 10px; color: #536778; font-size: 14px; }
    .compare-line svg { flex: none; width: 17px; height: 17px; margin-top: 3px; color: var(--teal); }
    .editorial-grid { display: grid; grid-template-columns: 1.3fr .85fr .85fr; gap: 16px; }
    .content-card { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: white; transition: .22s ease; }
    .content-card img { width: 100%; height: 190px; object-fit: cover; }
    .content-card:first-child img { height: 230px; }
    .content-body { padding: 20px; }
    .content-meta { display: flex; align-items: center; gap: 8px; margin-bottom: 9px; color: var(--teal); font-size: 11px; font-weight: 800; }
    .content-meta::before { content: ""; width: 16px; height: 1px; background: currentColor; }
    .content-card h3 { font-size: 17px; }
    .content-card p { margin-top: 7px; }
    .quote-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 50px; align-items: center; }
    .quote-score { padding: 27px; border-left: 3px solid #8bc7b8; background: rgba(255,255,255,.07); }
    .quote-score strong { display: block; color: #d6edb2; font-size: 35px; line-height: 1.1; }
    .quote-score span { display: block; margin-top: 8px; color: #c1d2d8; font-size: 13px; }
    .quote-copy { margin: 0; color: #eef5f5; font-size: 22px; line-height: 1.65; }
    .quote-attribution { margin-top: 17px; color: #9fc0c8; font-size: 13px; }
    .trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; }
    .trust-item { display: flex; gap: 14px; padding: 21px; border: 1px solid var(--line); border-radius: var(--radius); background: white; }
    .trust-item .feature-icon { flex: none; }
    .trust-item h3 { margin: 0 0 5px; font-size: 15px; }
    .trust-item p { margin: 0; color: var(--muted); font-size: 13px; }
    .faq-list { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
    details.faq { padding: 19px 21px; border: 1px solid var(--line); border-radius: var(--radius); background: white; }
    details.faq summary { position: relative; padding-right: 28px; cursor: pointer; list-style: none; font-size: 15px; font-weight: 750; }
    details.faq summary::-webkit-details-marker { display: none; }
    details.faq summary::after { content: "+"; position: absolute; right: 0; top: -3px; color: var(--teal); font-size: 23px; font-weight: 400; }
    details.faq[open] summary::after { content: "−"; }
    details.faq p { margin: 12px 0 0; color: var(--muted); font-size: 14px; }
    .signup-band { display: grid; grid-template-columns: 1fr minmax(280px, .8fr); align-items: center; gap: 40px; padding: 36px 40px; color: white; border-radius: var(--radius); background: var(--blue-deep); }
    .signup-band h2 { font-size: 25px; }
    .signup-band p { max-width: 620px; margin: 10px 0 0; color: #c7dbe1; font-size: 14px; }
    .signup-form { display: flex; gap: 9px; }
    .signup-form input { width: 100%; min-width: 0; height: 48px; padding: 0 14px; border: 1px solid rgba(255,255,255,.28); border-radius: 6px; color: white; background: rgba(255,255,255,.1); }
    .signup-form input::placeholder { color: #c1d3d8; }
    .signup-form button { flex: none; min-height: 48px; padding: 0 16px; border: 0; border-radius: 6px; color: #173847; background: #d8edaa; font-weight: 800; cursor: pointer; transition: .2s; }
    .signup-form button:hover { background: #c6e28d; }
    .form-note { margin-top: 8px; color: #b7cdd4; font-size: 11px; }
    .site-footer { padding: 38px 0 24px; background: #102d3a; color: #d3e0e4; }
    .footer-top { display: flex; justify-content: space-between; gap: 35px; padding-bottom: 27px; border-bottom: 1px solid rgba(255,255,255,.14); }
    .footer-brand { max-width: 420px; }
    .footer-brand .brand { color: white; }
    .footer-brand p { margin: 13px 0 0; color: #a9c0c8; font-size: 13px; }
    .footer-links { display: flex; align-items: flex-start; gap: 34px; }
    .footer-links a { color: #c6d6db; font-size: 13px; transition: color .2s; }
    .footer-links a:hover { color: white; }
    .footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 18px; color: #8fa9b2; font-size: 11px; }
    .mobile-panel { display: none; }
    @media (max-width: 1024px) {
      .nav-wrap { gap: 18px; }
      .phase-chip { display: none; }
      .split-layout { gap: 38px; }
      .editorial-grid { grid-template-columns: 1fr 1fr; }
      .content-card:first-child { grid-column: 1 / -1; }
      .content-card:first-child img { height: 270px; }
      .trust-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 768px) {
      .container { width: min(100% - 36px, var(--container)); }
      .nav-wrap { min-height: 68px; }
      .brand { font-size: 15px; }
      .nav-links, .nav-action { display: none; }
      .menu-toggle { display: block; margin-left: auto; }
      .mobile-panel { display: none; padding: 4px 18px 17px; border-top: 1px solid var(--line); background: white; }
      .mobile-panel.open { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
      .mobile-panel .nav-link { padding: 10px 12px; }
      .hero { min-height: 510px; }
      .hero-inner { width: min(100% - 36px, var(--container)); padding: 60px 0 54px; }
      h1 { font-size: 42px; }
      .hero-copy { font-size: 15px; }
      .section { padding: 58px 0; }
      .section-head { align-items: flex-start; flex-direction: column; gap: 12px; margin-bottom: 25px; }
      h2 { font-size: 26px; }
      .metric-strip { grid-template-columns: 1fr 1fr; }
      .metric:nth-child(2) { border-right: 0; }
      .metric:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
      .split-layout, .reward-layout, .quote-layout { grid-template-columns: 1fr; gap: 30px; }
      .poster-frame { min-height: 300px; }
      .countdown-band { grid-template-columns: 1fr; }
      .feature-grid { grid-template-columns: 1fr 1fr; }
      .perk-grid { grid-template-columns: 1fr 1fr; }
      .perk-card:first-child { grid-column: 1 / -1; }
      .steps { grid-template-columns: 1fr 1fr; row-gap: 28px; }
      .step:nth-child(2)::after { display: none; }
      .reward-visual, .reward-visual img { height: 240px; min-height: 240px; }
      .comparison { grid-template-columns: 1fr; }
      .signup-band { grid-template-columns: 1fr; gap: 22px; padding: 30px; }
      .footer-top { flex-direction: column; }
      .footer-links { flex-wrap: wrap; gap: 18px 25px; }
    }
    @media (max-width: 520px) {
      .container { width: calc(100% - 32px); }
      .brand { gap: 8px; font-size: 14px; }
      .brand-mark { width: 34px; height: 34px; }
      .hero { min-height: 540px; }
      .hero-image { object-position: 58% center; }
      .hero::after { background: linear-gradient(90deg, rgba(10,29,41,.82), rgba(10,29,41,.45)), linear-gradient(0deg, rgba(10,29,41,.55), transparent 70%); }
      .hero-inner { width: calc(100% - 32px); padding: 54px 0 45px; }
      h1 { font-size: 36px; }
      .hero-copy { margin: 16px 0 22px; font-size: 14px; }
      .btn { min-height: 45px; padding: 0 15px; font-size: 14px; }
      .section { padding: 48px 0; }
      h2 { font-size: 23px; }
      .metric { padding: 19px 17px; }
      .metric-value { font-size: 23px; }
      .countdown-band { padding: 23px 19px; }
      .countdown { gap: 6px; }
      .time-box { min-width: 0; flex: 1; padding: 9px 5px; }
      .time-box strong { font-size: 19px; }
      .feature-grid, .perk-grid, .topic-grid, .editorial-grid, .trust-grid, .faq-list { grid-template-columns: 1fr; }
      .perk-card:first-child, .content-card:first-child { grid-column: auto; }
      .content-card:first-child img, .content-card img { height: 205px; }
      .steps { grid-template-columns: 1fr; gap: 20px; }
      .step { display: grid; grid-template-columns: 44px 1fr; column-gap: 14px; padding: 0; }
      .step-number { grid-row: span 2; margin: 0; }
      .step:not(:last-child)::after { top: 48px; bottom: -20px; left: 21px; right: auto; height: auto; border-top: 0; border-left: 1px dashed #a8bbc4; }
      .step h3 { align-self: end; }
      .step p { align-self: start; }
      .reward-item { grid-template-columns: 42px 1fr; gap: 12px; }
      .reward-item em { grid-column: 2; }
      .quote-copy { font-size: 19px; }
      .signup-band { padding: 25px 20px; }
      .signup-band h2 { font-size: 22px; }
      .signup-form { flex-direction: column; }
      .signup-form button { width: 100%; }
      .footer-bottom { flex-direction: column; gap: 6px; }
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
    }

/* roulang page: category1 */
:root{
 --ink:#172b3a;--muted:#627486;--soft:#edf3f8;--paper:#f5f8fc;--white:#fff;
 --line:#dce6ee;--blue:#176d93;--blue-deep:#104b68;--teal:#148b83;
 --coral:#df765c;--lime:#d8edaa;--radius:8px;
 --shadow:0 14px 38px rgba(26,57,78,.09);
 --shadow-hover:0 20px 46px rgba(26,57,78,.15);--container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%}
button,input{font:inherit} button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(20,139,131,.4);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(220,230,238,.9);backdrop-filter:blur(14px)}
.nav-wrap{min-height:76px;display:flex;align-items:center;gap:30px}
.brand{display:inline-flex;align-items:center;gap:11px;font-weight:800;font-size:17px;white-space:nowrap}
.brand-mark{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;background:var(--blue);color:#fff;box-shadow:0 6px 14px rgba(23,109,147,.22)}
.brand-mark svg{width:18px;height:18px}
.nav-links{display:flex;align-items:center;gap:6px;margin-left:auto}
.nav-link{padding:9px 13px;border-radius:6px;color:#536778;font-size:14px;font-weight:650;transition:.2s ease}
.nav-link:hover,.nav-link.active{color:var(--blue-deep);background:#eaf3f7}
.phase-chip{display:inline-flex;align-items:center;gap:7px;margin-left:5px;padding:7px 11px;border:1px solid #d5e9e4;border-radius:6px;color:#27736c;background:#f2faf7;font-size:12px;font-weight:700}
.phase-dot{width:7px;height:7px;border-radius:50%;background:#3da88e;box-shadow:0 0 0 4px rgba(61,168,142,.12)}
.nav-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border-radius:6px;background:var(--blue);color:#fff;font-size:13px;font-weight:750;transition:.2s ease}
.nav-action:hover{background:var(--blue-deep);transform:translateY(-1px)}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:6px;width:42px;height:42px;cursor:pointer}
.menu-toggle svg{width:20px;height:20px;margin:auto}
.page-hero{padding:78px 0 70px;background:#eaf3f7;border-bottom:1px solid var(--line)}
.eyebrow,.section-kicker{display:block;margin-bottom:9px;color:var(--teal);font-size:12px;font-weight:800;letter-spacing:.08em}
.page-hero h1{max-width:780px;margin:0;font-size:clamp(34px,5vw,60px);line-height:1.16;letter-spacing:0}
.page-hero p{max-width:720px;margin:20px 0 0;color:var(--muted);font-size:17px;line-height:1.85}
.hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:27px}
.badge{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #cfe1e9;border-radius:6px;background:#fff;color:var(--blue-deep);font-size:13px;font-weight:700}
.badge i{width:7px;height:7px;border-radius:50%;background:var(--teal)}
.section{padding:76px 0}.section-white{background:#fff}.section-soft{background:#edf3f7}.section-dark{background:#173847;color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}
.section-intro{max-width:680px;margin:11px 0 0;color:var(--muted)}
.section-dark .section-intro{color:#c2d3d8}
.topic-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:stretch}
.topic-main{padding:32px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.topic-main h2{margin:0 0 10px;font-size:28px;line-height:1.3}
.topic-main p{margin:0;color:var(--muted)}
.topic-points{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}
.topic-point{padding:18px;background:#f5f8fc;border:1px solid var(--line);border-radius:7px}
.topic-point strong{display:block;margin-bottom:4px;color:var(--blue-deep);font-size:15px}
.topic-point span{color:var(--muted);font-size:13px}
.side-note{padding:30px;background:#173847;color:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}
.side-note h3{margin:0 0 12px;font-size:22px}
.side-note p{margin:0;color:#c2d3d8}
.side-note ul{margin:24px 0 0;padding:0;list-style:none;display:grid;gap:13px}
.side-note li{display:flex;gap:10px;align-items:flex-start;color:#e2eef0;font-size:14px}
.side-note li:before{content:"✓";color:#9bd4c4;font-weight:800}
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.category-card{min-height:190px;padding:25px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 22px rgba(26,57,78,.045);transition:.22s ease}
.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:#b8d5df}
.category-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:18px;border-radius:7px;background:#e9f3f7;color:var(--blue)}
.category-icon svg{width:20px;height:20px}
.category-card h3{margin:0 0 6px;font-size:18px}
.category-card p{margin:0;color:var(--muted);font-size:14px}
.category-card .count{display:block;margin-top:17px;color:var(--teal);font-size:12px;font-weight:800}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.compare-item{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.compare-item.featured{border:2px solid var(--teal);box-shadow:var(--shadow)}
.compare-label{display:inline-block;margin-bottom:12px;padding:5px 9px;border-radius:5px;background:#e6f5f0;color:#19766d;font-size:12px;font-weight:800}
.compare-item h3{margin:0 0 8px;font-size:21px}
.compare-item p{margin:0;color:var(--muted);font-size:14px}
.compare-list{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}
.compare-list li{display:flex;gap:9px;color:#496071;font-size:14px}
.compare-list li:before{content:"";width:7px;height:7px;flex:0 0 7px;margin-top:9px;border-radius:50%;background:var(--coral)}
.timeline{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.timeline:before{content:"";position:absolute;top:18px;left:8%;right:8%;height:1px;background:#b8d0da}
.milestone{position:relative;z-index:1}
.milestone-dot{width:36px;height:36px;display:grid;place-items:center;margin-bottom:17px;border:6px solid #edf3f7;border-radius:50%;background:var(--teal);color:#fff;font-size:12px;font-weight:800}
.milestone h3{margin:0 0 6px;font-size:16px}
.milestone p{margin:0;color:var(--muted);font-size:13px}
.content-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.content-item{display:flex;justify-content:space-between;gap:18px;padding:19px 20px;border-bottom:1px solid var(--line);background:#fff}
.content-item:hover{background:#f7fbfc}
.content-item strong{display:block;font-size:15px}.content-item span{color:var(--muted);font-size:13px}
.content-tag{flex:0 0 auto;height:max-content;padding:4px 8px;border-radius:5px;background:#edf3f8;color:var(--blue);font-size:11px;font-weight:800}
.assurance{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.assurance-card{padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);background:rgba(255,255,255,.06)}
.assurance-card strong{display:block;margin-bottom:7px;color:#fff;font-size:17px}.assurance-card p{margin:0;color:#bed0d6;font-size:14px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.faq{padding:21px 23px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.faq h3{margin:0 0 8px;font-size:16px}.faq p{margin:0;color:var(--muted);font-size:14px}
.cta{padding:52px 0;background:#dcefe9}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.cta h2{margin:0;font-size:30px;line-height:1.3}.cta p{margin:10px 0 0;color:#55716f}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 20px;border:1px solid transparent;border-radius:6px;cursor:pointer;font-weight:750;transition:.2s ease}
.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:#0f746e;transform:translateY(-2px);box-shadow:0 10px 22px rgba(20,139,131,.25)}
.site-footer{padding:46px 0 23px;background:#fff;border-top:1px solid var(--line)}
.footer-top{display:flex;justify-content:space-between;gap:35px}.footer-brand p{max-width:360px;margin:16px 0 0;color:var(--muted);font-size:14px}
.footer-links{display:flex;align-items:flex-start;gap:22px;color:#536778;font-size:14px}.footer-links a:hover{color:var(--teal)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:39px;padding-top:18px;border-top:1px solid var(--line);color:#81909c;font-size:12px}
@media(max-width:900px){.nav-action{display:none}.topic-layout{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:repeat(2,1fr);gap:28px}.timeline:before{display:none}}
@media(max-width:700px){.container{width:min(var(--container),calc(100% - 32px))}.nav-wrap{min-height:68px}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;left:16px;right:16px;top:74px;align-items:stretch;flex-direction:column;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.nav-links.open{display:flex}.phase-chip{margin:4px 0 0}.page-hero{padding:56px 0 52px}.page-hero p{font-size:15px}.section{padding:55px 0}.section-head{display:block}.section-head .text-link{margin-top:15px}.topic-points,.compare,.content-list,.faq-grid{grid-template-columns:1fr}.category-grid,.assurance{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.cta-inner,.footer-top,.footer-bottom{display:block}.cta h2{font-size:25px}.cta .btn{margin-top:22px}.footer-links{flex-wrap:wrap;margin-top:25px}.footer-bottom span{display:block;margin-top:8px}}
@media(max-width:420px){.brand{font-size:14px}.brand-mark{width:34px;height:34px}.hero-meta{display:grid}.badge{width:max-content}.topic-main,.side-note{padding:23px}}
