/* roulang page: index */
:root {
      --brand: #155EEF;
      --brand-2: #00A88B;
      --brand-3: #6D5DFB;
      --ink: #11243D;
      --muted: #667085;
      --soft: #F5F8FF;
      --soft-2: #EFFAF7;
      --paper: #FFFFFF;
      --line: rgba(17, 36, 61, .10);
      --line-strong: rgba(17, 36, 61, .16);
      --shadow-sm: 0 10px 28px rgba(16, 45, 91, .08);
      --shadow-md: 0 18px 56px rgba(16, 45, 91, .14);
      --shadow-lg: 0 26px 80px rgba(17, 36, 61, .18);
      --radius-sm: 14px;
      --radius: 22px;
      --radius-lg: 30px;
      --radius-xl: 40px;
      --header-h: 76px;
      --gradient: linear-gradient(135deg, #155EEF 0%, #00A88B 52%, #6D5DFB 100%);
      --gradient-soft: radial-gradient(circle at 18% 10%, rgba(21, 94, 239, .18), transparent 34%), radial-gradient(circle at 88% 20%, rgba(0, 168, 139, .18), transparent 30%), linear-gradient(180deg, #F7FAFF 0%, #FFFFFF 76%);
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
      text-size-adjust: 100%;
    }

    body {
      margin: 0;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
      color: var(--ink);
      background: var(--gradient-soft);
      line-height: 1.72;
      overflow-x: hidden;
    }

    a {
      color: inherit;
      text-decoration: none;
      transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
    }

    a:hover {
      color: var(--brand);
    }

    img, svg {
      max-width: 100%;
      display: block;
    }

    button, input, textarea, select {
      font: inherit;
    }

    button {
      border: 0;
    }

    ::selection {
      color: #fff;
      background: var(--brand);
    }

    .container {
      max-width: 1180px;
    }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 1030;
      background: rgba(255, 255, 255, .86);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid var(--line);
    }

    .brand-mark {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-weight: 900;
      letter-spacing: -.02em;
      color: var(--ink);
      white-space: nowrap;
    }

    .brand-icon {
      width: 40px;
      height: 40px;
      display: grid;
      place-items: center;
      border-radius: 14px;
      color: #fff;
      background: var(--gradient);
      box-shadow: 0 12px 28px rgba(21, 94, 239, .24);
      font-size: 18px;
    }

    .navbar {
      min-height: var(--header-h);
      padding: 12px 0;
    }

    .navbar-nav {
      gap: 8px;
    }

    .nav-link {
      color: var(--muted);
      font-weight: 750;
      padding: 10px 14px !important;
      border-radius: 999px;
    }

    .nav-link:hover,
    .nav-link:focus {
      color: var(--brand);
      background: rgba(21, 94, 239, .08);
    }

    .nav-link.active {
      color: #fff !important;
      background: var(--ink);
      box-shadow: 0 10px 22px rgba(17, 36, 61, .16);
    }

    .nav-search {
      position: relative;
      min-width: 260px;
    }

    .nav-search input {
      width: 100%;
      height: 44px;
      border-radius: 999px;
      border: 1px solid var(--line);
      background: #fff;
      padding: 0 44px 0 42px;
      color: var(--ink);
      outline: none;
      box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
      transition: border-color .2s ease, box-shadow .2s ease;
    }

    .nav-search input:focus {
      border-color: rgba(21, 94, 239, .42);
      box-shadow: 0 0 0 4px rgba(21, 94, 239, .10);
    }

    .nav-search .search-dot {
      position: absolute;
      left: 16px;
      top: 50%;
      width: 14px;
      height: 14px;
      border: 2px solid var(--brand);
      border-radius: 50%;
      transform: translateY(-50%);
    }

    .nav-search .search-dot::after {
      content: "";
      position: absolute;
      width: 7px;
      height: 2px;
      right: -6px;
      bottom: -3px;
      background: var(--brand);
      transform: rotate(45deg);
      border-radius: 999px;
    }

    .navbar-toggler {
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 9px 11px;
      box-shadow: none !important;
      background: #fff;
    }

    .btn-brand,
    .btn-ghost,
    .btn-dark-soft {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      border-radius: 999px;
      font-weight: 850;
      padding: 12px 20px;
      min-height: 46px;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
    }

    .btn-brand {
      color: #fff !important;
      background: var(--gradient);
      box-shadow: 0 14px 34px rgba(21, 94, 239, .26);
    }

    .btn-brand:hover,
    .btn-brand:focus {
      transform: translateY(-2px);
      box-shadow: 0 20px 44px rgba(21, 94, 239, .32);
    }

    .btn-ghost {
      color: var(--ink);
      background: #fff;
      border: 1px solid var(--line);
      box-shadow: var(--shadow-sm);
    }

    .btn-ghost:hover,
    .btn-ghost:focus {
      border-color: rgba(21, 94, 239, .24);
      background: #F7FAFF;
      transform: translateY(-2px);
    }

    .btn-dark-soft {
      color: #fff !important;
      background: #10243E;
      box-shadow: 0 14px 32px rgba(16, 36, 62, .22);
    }

    .btn-dark-soft:hover,
    .btn-dark-soft:focus {
      background: #173354;
      transform: translateY(-2px);
    }

    .section {
      padding: 84px 0;
      position: relative;
    }

    .section-tight {
      padding: 58px 0;
    }

    .section-title-row {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 24px;
      margin-bottom: 30px;
    }

    .section-kicker {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 7px 12px;
      border-radius: 999px;
      color: var(--brand);
      background: rgba(21, 94, 239, .09);
      border: 1px solid rgba(21, 94, 239, .12);
      font-size: 13px;
      font-weight: 900;
      margin-bottom: 12px;
    }

    .section-kicker::before {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 999px;
      background: var(--brand-2);
      box-shadow: 0 0 0 5px rgba(0, 168, 139, .14);
    }

    h1, h2, h3, h4, p {
      margin-top: 0;
    }

    h1 {
      font-size: clamp(42px, 6vw, 76px);
      line-height: 1.04;
      letter-spacing: -.06em;
      font-weight: 950;
      margin-bottom: 20px;
    }

    h2 {
      font-size: clamp(30px, 4vw, 48px);
      line-height: 1.12;
      letter-spacing: -.04em;
      font-weight: 930;
      margin-bottom: 12px;
    }

    h3 {
      font-size: 22px;
      line-height: 1.32;
      font-weight: 900;
      margin-bottom: 10px;
    }

    .lead {
      color: #42526B;
      font-size: 18px;
      line-height: 1.9;
      margin-bottom: 0;
    }

    .muted {
      color: var(--muted);
    }

    .badge-data {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      border-radius: 999px;
      padding: 8px 12px;
      background: rgba(255, 255, 255, .76);
      color: #234260;
      border: 1px solid rgba(255, 255, 255, .54);
      box-shadow: 0 10px 28px rgba(21, 94, 239, .10);
      font-weight: 850;
      font-size: 13px;
      white-space: nowrap;
    }

    .badge-data strong {
      color: var(--brand);
    }

    .hero {
      padding: 56px 0 42px;
    }

    .hero-bento {
      display: grid;
      grid-template-columns: 1.55fr .9fr;
      grid-template-rows: auto auto;
      gap: 18px;
    }

    .bento-card {
      position: relative;
      overflow: hidden;
      border-radius: var(--radius-xl);
      border: 1px solid rgba(255,255,255,.66);
      background: rgba(255, 255, 255, .78);
      box-shadow: var(--shadow-md);
    }

    .bento-main {
      min-height: 466px;
      padding: clamp(30px, 5vw, 58px);
      background:
        radial-gradient(circle at 80% 18%, rgba(0, 168, 139, .22), transparent 26%),
        radial-gradient(circle at 12% 20%, rgba(21, 94, 239, .20), transparent 28%),
        linear-gradient(140deg, rgba(255,255,255,.88), rgba(245,248,255,.72));
    }

    .bento-main::after {
      content: "";
      position: absolute;
      right: -90px;
      bottom: -110px;
      width: 320px;
      height: 320px;
      border-radius: 46px;
      background: linear-gradient(135deg, rgba(21,94,239,.14), rgba(0,168,139,.18));
      transform: rotate(18deg);
    }

    .hero-content {
      position: relative;
      z-index: 1;
      max-width: 760px;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin: 28px 0 26px;
    }

    .hero-data {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .mini-card {
      min-height: 224px;
      padding: 26px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .mini-card.gradient {
      color: #fff;
      background: linear-gradient(135deg, #132B48, #155EEF 58%, #00A88B);
    }

    .mini-card.gradient .muted,
    .mini-card.gradient p {
      color: rgba(255,255,255,.78);
    }

    .mini-card.light {
      background:
        radial-gradient(circle at 85% 8%, rgba(109, 93, 251, .18), transparent 30%),
        #fff;
    }

    .mini-number {
      font-size: 42px;
      line-height: 1;
      font-weight: 950;
      letter-spacing: -.04em;
    }

    .cta-ribbon {
      grid-column: 1 / -1;
      padding: 20px 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      color: #fff;
      background: linear-gradient(135deg, #0E2138, #173354 58%, #0B9B84);
      border-radius: var(--radius-lg);
      box-shadow: var(--shadow-lg);
    }

    .cta-ribbon p {
      margin: 0;
      color: rgba(255,255,255,.78);
    }

    .cta-ribbon strong {
      color: #fff;
    }

    .matrix-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 16px;
    }

    .feature-card,
    .deal-card,
    .info-panel,
    .form-panel,
    .faq-card,
    .segment-card,
    .update-card {
      border: 1px solid var(--line);
      background: rgba(255, 255, 255, .86);
      border-radius: var(--radius);
      box-shadow: var(--shadow-sm);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .feature-card:hover,
    .deal-card:hover,
    .segment-card:hover,
    .update-card:hover {
      transform: translateY(-5px);
      box-shadow: var(--shadow-md);
      border-color: rgba(21, 94, 239, .22);
    }

    .feature-card {
      padding: 24px;
      min-height: 226px;
    }

    .feature-icon {
      width: 48px;
      height: 48px;
      display: grid;
      place-items: center;
      border-radius: 16px;
      background: linear-gradient(135deg, rgba(21,94,239,.12), rgba(0,168,139,.13));
      color: var(--brand);
      font-weight: 950;
      margin-bottom: 18px;
    }

    .commission-strip {
      margin-top: 18px;
      padding: 18px;
      border-radius: var(--radius);
      background: #10243E;
      color: #fff;
      display: grid;
      grid-template-columns: 1.1fr repeat(3, .8fr);
      gap: 12px;
      align-items: center;
      box-shadow: var(--shadow-md);
    }

    .commission-strip p {
      color: rgba(255,255,255,.72);
      margin-bottom: 0;
    }

    .commission-item {
      border-left: 1px solid rgba(255,255,255,.14);
      padding-left: 16px;
    }

    .commission-item strong {
      display: block;
      font-size: 22px;
      line-height: 1.1;
    }

    .deal-layout {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 16px;
      align-items: stretch;
    }

    .deal-card {
      padding: 24px;
      position: relative;
      overflow: hidden;
    }

    .deal-card::before {
      content: "";
      position: absolute;
      inset: 0 0 auto;
      height: 5px;
      background: var(--gradient);
      opacity: .9;
    }

    .deal-meta {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin: 16px 0;
      padding: 12px;
      border-radius: 16px;
      background: #F7FAFF;
      border: 1px solid var(--line);
    }

    .deal-meta span {
      display: block;
      color: var(--muted);
      font-size: 12px;
      font-weight: 800;
    }

    .deal-meta strong {
      display: block;
      color: var(--ink);
      font-size: 19px;
      font-weight: 950;
    }

    .progress {
      height: 10px;
      border-radius: 999px;
      background: #E7EDF7;
      overflow: hidden;
    }

    .progress-bar {
      background: var(--gradient);
      border-radius: 999px;
    }

    .comparison-box {
      margin-top: 20px;
      display: grid;
      grid-template-columns: .95fr 1.05fr;
      gap: 16px;
    }

    .compare-card {
      padding: 24px;
      border-radius: var(--radius);
      border: 1px solid var(--line);
      background: #fff;
    }

    .compare-card.highlight {
      color: #fff;
      border-color: transparent;
      background: linear-gradient(135deg, #155EEF, #00A88B);
      box-shadow: var(--shadow-md);
    }

    .compare-list {
      list-style: none;
      padding: 0;
      margin: 16px 0 0;
      display: grid;
      gap: 10px;
    }

    .compare-list li {
      display: flex;
      gap: 10px;
      align-items: flex-start;
      color: #506176;
    }

    .highlight .compare-list li {
      color: rgba(255,255,255,.82);
    }

    .check {
      flex: 0 0 auto;
      width: 22px;
      height: 22px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      color: #fff;
      background: var(--brand-2);
      font-size: 12px;
      font-weight: 950;
      margin-top: 2px;
    }

    .news-wrap {
      display: grid;
      grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
      gap: 20px;
      align-items: start;
    }

    .news-list {
      border: 1px solid var(--line);
      background: #fff;
      border-radius: var(--radius-lg);
      box-shadow: var(--shadow-sm);
      overflow: hidden;
    }

    .news-item {
      display: grid;
      grid-template-columns: 112px 1fr auto;
      gap: 16px;
      align-items: center;
      padding: 20px 22px;
      border-bottom: 1px solid var(--line);
    }

    .news-item:last-child {
      border-bottom: 0;
    }

    .news-item:hover {
      background: #F8FBFF;
    }

    .news-date {
      color: var(--brand);
      font-weight: 950;
      letter-spacing: -.02em;
    }

    .news-title {
      font-weight: 900;
      color: var(--ink);
      margin-bottom: 3px;
    }

    .news-desc {
      color: var(--muted);
      font-size: 14px;
      margin: 0;
    }

    .arrow {
      width: 36px;
      height: 36px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      color: var(--brand);
      background: rgba(21, 94, 239, .08);
      font-weight: 950;
      transition: transform .2s ease, background .2s ease;
    }

    .news-item:hover .arrow {
      transform: translateX(4px);
      background: rgba(21, 94, 239, .14);
    }

    .recommend-panel {
      padding: 24px;
      border-radius: var(--radius-lg);
      background: linear-gradient(180deg, #10243E, #173354);
      color: #fff;
      box-shadow: var(--shadow-md);
      position: sticky;
      top: calc(var(--header-h) + 20px);
    }

    .recommend-panel p {
      color: rgba(255,255,255,.72);
    }

    .recommend-links {
      display: grid;
      gap: 12px;
      margin-top: 18px;
    }

    .recommend-links a {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      padding: 14px;
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 16px;
      color: #fff;
      background: rgba(255,255,255,.06);
    }

    .recommend-links a:hover {
      background: rgba(255,255,255,.12);
      transform: translateY(-2px);
    }

    .nested-section {
      margin-top: 34px;
      padding-top: 8px;
    }

    .media-scroll {
      display: flex;
      gap: 14px;
      overflow-x: auto;
      padding: 4px 4px 16px;
      scroll-snap-type: x mandatory;
    }

    .media-scroll::-webkit-scrollbar {
      height: 8px;
    }

    .media-scroll::-webkit-scrollbar-thumb {
      background: rgba(21,94,239,.22);
      border-radius: 999px;
    }

    .media-card {
      flex: 0 0 280px;
      scroll-snap-align: start;
      padding: 20px;
      border-radius: var(--radius);
      border: 1px solid var(--line);
      background: #fff;
      box-shadow: var(--shadow-sm);
    }

    .media-type {
      display: inline-flex;
      padding: 6px 10px;
      border-radius: 999px;
      background: var(--soft-2);
      color: #007864;
      font-size: 12px;
      font-weight: 900;
      margin-bottom: 12px;
    }

    .entry-shell {
      border-radius: var(--radius-xl);
      padding: clamp(22px, 4vw, 36px);
      background:
        radial-gradient(circle at 88% 4%, rgba(0,168,139,.18), transparent 34%),
        radial-gradient(circle at 10% 14%, rgba(21,94,239,.18), transparent 30%),
        rgba(255,255,255,.72);
      border: 1px solid rgba(255,255,255,.68);
      box-shadow: var(--shadow-md);
    }

    .segments-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
    }

    .segment-card {
      padding: 20px;
      background: #fff;
    }

    .segment-card strong {
      display: block;
      font-size: 18px;
      margin-bottom: 6px;
    }

    .segment-card p {
      color: var(--muted);
      margin-bottom: 0;
      font-size: 14px;
    }

    .timeline {
      position: relative;
      display: grid;
      gap: 14px;
    }

    .timeline::before {
      content: "";
      position: absolute;
      left: 15px;
      top: 12px;
      bottom: 12px;
      width: 2px;
      background: linear-gradient(180deg, var(--brand), var(--brand-2));
      opacity: .28;
    }

    .timeline-item {
      position: relative;
      padding: 0 0 0 48px;
    }

    .timeline-dot {
      position: absolute;
      left: 6px;
      top: 6px;
      width: 20px;
      height: 20px;
      border-radius: 999px;
      background: #fff;
      border: 5px solid var(--brand);
      box-shadow: 0 0 0 6px rgba(21,94,239,.10);
    }

    .update-grid {
      display: grid;
      grid-template-columns: .9fr 1.1fr;
      gap: 16px;
    }

    .update-card {
      padding: 22px;
      background: #fff;
    }

    .update-row {
      display: flex;
      gap: 12px;
      padding: 14px 0;
      border-bottom: 1px solid var(--line);
    }

    .update-row:last-child {
      border-bottom: 0;
      padding-bottom: 0;
    }

    .version-pill {
      flex: 0 0 auto;
      padding: 5px 10px;
      border-radius: 999px;
      color: var(--brand);
      background: rgba(21,94,239,.08);
      font-weight: 950;
      font-size: 12px;
      height: fit-content;
    }

    .faq-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }

    .faq-card {
      padding: 22px;
      background: #fff;
    }

    .faq-card h3 {
      font-size: 18px;
      margin-bottom: 8px;
    }

    .faq-card p {
      color: var(--muted);
      margin-bottom: 0;
    }

    .form-grid {
      display: grid;
      grid-template-columns: .88fr 1.12fr;
      gap: 20px;
      align-items: stretch;
      margin-top: 30px;
    }

    .form-panel {
      padding: 26px;
      background: #fff;
    }

    .form-label {
      font-weight: 850;
      color: var(--ink);
      margin-bottom: 7px;
    }

    .form-control,
    .form-select {
      border-radius: 16px;
      border: 1px solid var(--line-strong);
      min-height: 50px;
      padding: 12px 14px;
      color: var(--ink);
      box-shadow: none !important;
    }

    .form-control:focus,
    .form-select:focus {
      border-color: rgba(21, 94, 239, .46);
      box-shadow: 0 0 0 4px rgba(21, 94, 239, .10) !important;
    }

    textarea.form-control {
      min-height: 112px;
      resize: vertical;
    }

    .entry-benefit {
      padding: 26px;
      border-radius: var(--radius);
      color: #fff;
      background: linear-gradient(135deg, #10243E, #155EEF 62%, #00A88B);
      box-shadow: var(--shadow-md);
    }

    .entry-benefit p,
    .entry-benefit li {
      color: rgba(255,255,255,.78);
    }

    .benefit-list {
      list-style: none;
      padding: 0;
      margin: 18px 0 0;
      display: grid;
      gap: 12px;
    }

    .benefit-list li {
      display: flex;
      gap: 10px;
      align-items: flex-start;
    }

    .form-note {
      margin-top: 14px;
      color: var(--muted);
      font-size: 14px;
    }

    .success-tip {
      display: none;
      margin-top: 14px;
      padding: 12px 14px;
      border-radius: 14px;
      color: #006B59;
      background: rgba(0,168,139,.10);
      border: 1px solid rgba(0,168,139,.18);
      font-weight: 800;
    }

    .site-footer {
      padding: 48px 0 34px;
      color: rgba(255,255,255,.78);
      background:
        radial-gradient(circle at 12% 0%, rgba(21,94,239,.28), transparent 32%),
        linear-gradient(180deg, #0E2138, #091726);
    }

    .footer-grid {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 28px;
      align-items: start;
    }

    .footer-brand {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      color: #fff;
      font-weight: 950;
      font-size: 20px;
      margin-bottom: 12px;
    }

    .footer-links {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: flex-end;
    }

    .footer-links a {
      padding: 9px 12px;
      border-radius: 999px;
      color: rgba(255,255,255,.76);
      background: rgba(255,255,255,.06);
      border: 1px solid rgba(255,255,255,.10);
    }

    .footer-links a:hover {
      color: #fff;
      background: rgba(255,255,255,.12);
    }

    .footer-bottom {
      margin-top: 28px;
      padding-top: 22px;
      border-top: 1px solid rgba(255,255,255,.10);
      display: flex;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
      font-size: 14px;
    }

    .float-cta {
      position: fixed;
      right: 22px;
      bottom: 22px;
      z-index: 1020;
      display: none;
      align-items: center;
      gap: 10px;
      padding: 12px 16px;
      border-radius: 999px;
      color: #fff;
      background: var(--gradient);
      box-shadow: 0 18px 44px rgba(21, 94, 239, .30);
      font-weight: 900;
    }

    .float-cta:hover {
      color: #fff;
      transform: translateY(-2px);
    }

    @media (max-width: 1199.98px) {
      .nav-search {
        min-width: 210px;
      }

      .matrix-grid,
      .segments-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .hero-bento {
        grid-template-columns: 1fr .78fr;
      }
    }

    @media (max-width: 991.98px) {
      :root {
        --header-h: 68px;
      }

      .navbar-collapse {
        margin-top: 14px;
        padding: 16px;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        background: #fff;
        box-shadow: var(--shadow-md);
      }

      .nav-search {
        min-width: 100%;
        margin: 12px 0;
      }

      .header-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
      }

      .hero-bento,
      .news-wrap,
      .comparison-box,
      .update-grid,
      .form-grid {
        grid-template-columns: 1fr;
      }

      .recommend-panel {
        position: relative;
        top: auto;
      }

      .commission-strip {
        grid-template-columns: 1fr 1fr;
      }

      .commission-item {
        border-left: 0;
        padding-left: 0;
        padding-top: 12px;
        border-top: 1px solid rgba(255,255,255,.14);
      }

      .deal-layout {
        grid-template-columns: 1fr;
      }

      .section {
        padding: 68px 0;
      }
    }

    @media (max-width: 767.98px) {
      .hero {
        padding-top: 34px;
      }

      .bento-main,
      .mini-card {
        border-radius: 28px;
      }

      .cta-ribbon {
        flex-direction: column;
        align-items: flex-start;
      }

      .section-title-row {
        display: block;
      }

      .lead {
        font-size: 16px;
      }

      .matrix-grid,
      .segments-grid,
      .faq-grid {
        grid-template-columns: 1fr;
      }

      .news-item {
        grid-template-columns: 1fr auto;
      }

      .news-date {
        grid-column: 1 / -1;
      }

      .footer-grid {
        grid-template-columns: 1fr;
      }

      .footer-links {
        justify-content: flex-start;
      }

      .float-cta {
        display: inline-flex;
      }
    }

    @media (max-width: 520px) {
      .container {
        padding-left: 18px;
        padding-right: 18px;
      }

      h1 {
        font-size: 39px;
      }

      h2 {
        font-size: 30px;
      }

      .hero-actions,
      .header-actions {
        grid-template-columns: 1fr !important;
      }

      .hero-actions .btn-brand,
      .hero-actions .btn-ghost,
      .header-actions .btn-brand,
      .header-actions .btn-ghost {
        width: 100%;
      }

      .commission-strip {
        grid-template-columns: 1fr;
      }

      .deal-meta {
        grid-template-columns: 1fr;
      }

      .media-card {
        flex-basis: 246px;
      }

      .footer-bottom {
        display: block;
      }
    }

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
