* { box-sizing: border-box; margin: 0; padding: 0; }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;
      color: #1f2937;
      background: #ffffff;
      line-height: 1.6;
    }
    a { text-decoration: none; color: inherit; }
    .container { width: min(1200px, calc(100% - 32px)); margin: 0 auto; }
    header {
      background: transparent;
      color: #fff;
      padding: 14px 0;
      box-shadow: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 100;
      transition: background 0.25s ease, box-shadow 0.25s ease, backdrop-filter 0.25s ease;
    }
    header.is-sticky {
      background: rgba(12, 14, 18, 0.72);
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.22);
      backdrop-filter: blur(10px);
    }
    body.about-page header {
      background: rgba(255, 255, 255, 0.98);
      color: #1f2937;
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
      backdrop-filter: blur(10px);
    }
    body.about-page header.is-sticky {
      background: rgba(255, 255, 255, 0.98);
      color: #1f2937;
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    }
    body.faq-page header,
    body.faq-page header.is-sticky,
    body.privacy-page header,
    body.privacy-page header.is-sticky,
    body.risk-page header,
    body.risk-page header.is-sticky {
      background: rgba(255, 255, 255, 0.98);
      color: #1f2937;
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
      backdrop-filter: blur(10px);
    }
    .nav {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      flex-wrap: wrap;
      min-height: 56px;
    }
    .logo-area {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      min-width: 260px;
    }
    .brand-home,
    .footer-brand-link {
      display: inline-block;
    }
    .footer-brand-link {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 12px;
    }
    .footer-brand-link .logo-image {
      width: 44px;
      height: 44px;
      flex: 0 0 44px;
    }
    .footer-brand-link .logo-wordmark {
      height: 36px;
    }
    .logo-box {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: 0;
    }
    .logo-image {
      width: 44px;
      height: 44px;
      display: block;
      object-fit: contain;
      flex: 0 0 44px;
    }
    .logo-text {
      display: flex;
      flex-direction: column;
      gap: 6px;
    }
    .logo-wordmark {
      height: 36px;
      width: auto;
      display: block;
      object-fit: contain;
    }
    .menu {
      display: flex;
      gap: 28px;
      font-size: 17px;
      font-weight: 500;
      background: transparent;
    }
    .menu a {
      opacity: 0.95;
      background: transparent;
      border: 0;
      padding: 0;
      border-radius: 0;
    }
    body.about-page .menu a {
      color: #1f2937;
      opacity: 0.82;
    }
    body.about-page .menu a:hover {
      opacity: 1;
    }
    .menu a:hover {
      opacity: 1;
      background: transparent;
    }
    .hero {
      position: relative;
      padding: 108px 0 82px;
      background:
        linear-gradient(90deg, rgba(8, 18, 38, 0.84) 0%, rgba(8, 18, 38, 0.72) 36%, rgba(8, 18, 38, 0.48) 60%, rgba(8, 18, 38, 0.24) 100%),
        url("images/hero-bg.png?v=202609041940") 62% center/cover no-repeat;
      background-color: #0b1730;
      overflow: hidden;
    }
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0)),
        radial-gradient(circle at 74% 34%, rgba(255, 166, 0, 0.12), transparent 22%),
        linear-gradient(0deg, rgba(3, 10, 22, 0.18), rgba(3, 10, 22, 0.18));
      pointer-events: none;
    }
    .hero-wrap {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: 1fr 1.05fr;
      gap: 28px;
      align-items: center;
      min-height: 640px;
    }
    .hero-copy {
      color: #fff;
      max-width: 520px;
    }
    .hero h1 {
      font-size: 58px;
      line-height: 1.12;
      margin-bottom: 18px;
      color: #ffffff;
      letter-spacing: 1px;
    }
    .hero p {
      font-size: 18px;
      color: rgba(255, 255, 255, 0.8);
      margin-bottom: 10px;
      max-width: 680px;
    }
    .hero-subtext {
      font-size: 28px;
      color: rgba(255, 255, 255, 0.9);
      margin-bottom: 10px;
    }
    .hero-note {
      font-size: 17px;
      color: rgba(255, 255, 255, 0.68);
      margin-bottom: 30px;
    }
    .hero-actions {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
    }
    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 13px 24px;
      border-radius: 12px;
      font-size: 16px;
      font-weight: 700;
      transition: 0.2s ease;
    }
    .btn-primary {
      background: linear-gradient(180deg, #ffb14a 0%, #ff8a1f 100%);
      color: #fff;
      box-shadow: 0 10px 24px rgba(255, 138, 31, 0.3);
    }
    .btn-primary:hover { filter: brightness(0.96); }
    .btn-secondary {
      border: 1px solid rgba(255, 173, 87, 0.72);
      background: rgba(255, 255, 255, 0.03);
      color: #ffd39e;
    }
    .btn-secondary:hover { border-color: #ffb45a; }
    .hero-visual {
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .hero-side-image {
      width: min(660px, 100%);
      height: auto;
      display: block;
      filter: drop-shadow(0 24px 36px rgba(0, 0, 0, 0.35));
      transition: transform 0.35s ease, filter 0.35s ease;
      transform: translateY(0) scale(1);
      transform-origin: center center;
      will-change: transform;
    }
    .hero-visual:hover .hero-side-image {
      transform: translateY(-10px) scale(1.02);
      filter: drop-shadow(0 30px 42px rgba(0, 0, 0, 0.42));
    }
    .card {
      background: #fff;
      border-radius: 20px;
      box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
    }
    .video-modal {
      position: fixed;
      inset: 0;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 24px;
      background: rgba(6, 11, 22, 0.72);
      z-index: 1000;
    }
    .video-modal.is-open {
      display: flex;
    }
    .video-dialog {
      position: relative;
      width: min(860px, 92vw);
      background: #0f172a;
      border-radius: 18px;
      box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
      overflow: hidden;
    }
    .video-close {
      position: absolute;
      top: 12px;
      right: 12px;
      width: 38px;
      height: 38px;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.18);
      color: #fff;
      font-size: 22px;
      cursor: pointer;
      z-index: 2;
    }
    .video-player {
      display: block;
      width: 100%;
      max-height: 72vh;
      background: #000;
    }
    .up { color: #d7261e; font-weight: 700; }
    .down { color: #16a34a; font-weight: 700; }
    section { padding: 56px 0; }
    .section-title {
      font-size: 32px;
      margin-bottom: 12px;
      color: #111827;
    }
    .section-desc {
      color: #6b7280;
      margin-bottom: 28px;
    }
    .feature-section {
      padding-top: 68px;
      padding-bottom: 68px;
      background: #fff;
    }
    .feature-section.alt {
      background: #fff;
    }
    .feature-wrap {
      display: grid;
      grid-template-columns: 1.05fr 0.95fr;
      gap: 52px;
      align-items: center;
    }
    .feature-media {
      perspective: 1200px;
    }
    .feature-media img {
      width: 100%;
      display: block;
      transition: transform 0.35s ease, box-shadow 0.35s ease, filter 0.35s ease;
      transform: translateY(0) scale(1);
      transform-origin: center center;
      will-change: transform;
      border-radius: 18px;
    }
    .feature-media:hover img {
      transform: translateY(-8px) scale(1.025);
      filter: saturate(1.04);
      box-shadow: 0 26px 50px rgba(15, 23, 42, 0.16);
    }
    .feature-copy h2 {
      font-size: 52px;
      line-height: 1.18;
      margin-bottom: 28px;
      color: #111827;
    }
    .feature-copy h2 .highlight {
      color: #2386e9;
    }
    .feature-wrap.reverse {
      grid-template-columns: 0.95fr 1.05fr;
    }
    .feature-block + .feature-block {
      margin-top: 26px;
    }
    .feature-block h3 {
      font-size: 20px;
      margin-bottom: 10px;
      color: #111827;
    }
    .feature-block p {
      font-size: 16px;
      line-height: 1.9;
      color: #374151;
    }
    .testimonial-section {
      padding: 72px 0;
      background: #fff;
    }
    .testimonial-head {
      text-align: center;
      margin-bottom: 38px;
    }
    .testimonial-head h2 {
      font-size: 42px;
      color: #111827;
      margin-bottom: 12px;
    }
    .testimonial-head p {
      color: #6b7280;
      font-size: 16px;
    }
    .testimonial-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
    .testimonial-card {
      background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
      border: 1px solid #edf2f7;
      border-radius: 22px;
      padding: 28px;
      box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .testimonial-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 18px 40px rgba(15, 23, 42, 0.1);
    }
    .stars {
      color: #ff9f1a;
      letter-spacing: 2px;
      margin-bottom: 14px;
      font-size: 18px;
    }
    .testimonial-text {
      color: #374151;
      font-size: 15px;
      line-height: 1.9;
      margin-bottom: 20px;
    }
    .testimonial-user {
      display: flex;
      align-items: center;
      gap: 14px;
    }
    .testimonial-avatar {
      width: 48px;
      height: 48px;
      border-radius: 50%;
      display: block;
      object-fit: cover;
      flex: 0 0 48px;
      box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12);
    }
    .testimonial-meta strong {
      display: block;
      color: #111827;
      font-size: 16px;
      margin-bottom: 4px;
    }
    .testimonial-meta span {
      color: #9ca3af;
      font-size: 14px;
    }
    body.about-page .menu a[href="/about/"] {
      color: #ffd39e;
      opacity: 1;
    }
    .about-page {
      background: #ffffff;
    }
    .about-main {
      padding-top: 0;
      padding-bottom: 44px;
    }
    .about-hero {
      position: relative;
      padding: 78px 0 82px;
      background: #ffffff;
      color: #222;
      overflow: hidden;
    }
    .about-hero-wrap {
      position: relative;
      z-index: 1;
      display: block;
    }
    .about-hero-copy h1 {
      margin: 0;
      font-size: clamp(48px, 5vw, 72px);
      line-height: 1.08;
      color: #1f2937;
      font-weight: 800;
      letter-spacing: -0.03em;
      max-width: 760px;
    }
    .about-hero-subtitle {
      display: block;
      margin-top: 20px;
      font-size: 30px;
      line-height: 1.2;
      color: #b3b3b3;
      font-weight: 500;
      letter-spacing: 0;
    }
    .about-hero-copy p {
      margin: 46px 0 0;
      color: #30363f;
      font-size: 18px;
      line-height: 2.05;
      max-width: 980px;
    }
    .about-overview,
    .about-history,
    .about-business,
    .about-grid-section {
      padding: 72px 0;
      background: #fff;
    }
    .about-overview-wrap,
    .about-grid-wrap {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
      align-items: stretch;
    }
    .about-overview-media,
    .about-copy-card,
    .about-info,
    .business-card,
    .timeline-card {
      padding: 28px;
    }
    .about-overview-badge,
    .section-kicker {
      display: inline-flex;
      align-items: center;
      padding: 7px 12px;
      border-radius: 999px;
      background: rgba(115, 88, 255, 0.1);
      color: #7358ff;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 1px;
      margin-bottom: 14px;
    }
    .about-overview-media h2,
    .about-info h3,
    .business-card h3,
    .timeline-card span,
    .section-head h2 {
      color: #1d2341;
    }
    .about-overview-media h2 {
      margin: 0 0 12px;
      font-size: 34px;
      line-height: 1.2;
    }
    .about-overview-media p,
    .about-copy-card p,
    .about-info p,
    .business-card p,
    .timeline-card p {
      margin: 0;
      color: #677089;
      line-height: 1.85;
      font-size: 15px;
    }
    .about-overview-copy {
      display: grid;
      gap: 24px;
    }
    .about-copy-card h3,
    .about-info h3,
    .business-card h3 {
      margin: 0 0 10px;
      font-size: 22px;
    }
    .section-head {
      text-align: center;
      margin-bottom: 28px;
    }
    .section-head h2 {
      margin: 0;
      font-size: 42px;
    }
    .section-head p {
      margin: 10px auto 0;
      color: #6b7280;
      font-size: 16px;
      max-width: 760px;
      line-height: 1.9;
    }
    .timeline-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 18px;
    }
    .timeline-card span {
      display: inline-block;
      margin-bottom: 10px;
      font-size: 22px;
      font-weight: 800;
      color: #7358ff;
    }
    .timeline-card p { font-size: 15px; }
    .business-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 18px;
    }
    .about-grid-wrap {
      grid-template-columns: repeat(4, 1fr);
    }
    .about-info { display: grid; align-content: start; }
    .about-info h3 { margin-top: 0; }
    .about-info p { margin-top: 0; }
    .privacy-page {
      background: #ffffff;
    }
    .risk-page {
      background: #ffffff;
    }
    .privacy-main {
      padding-top: 0;
      padding-bottom: 44px;
    }
    .privacy-hero {
      position: relative;
      padding: 84px 0 24px;
      background: transparent;
      color: #111827;
      overflow: hidden;
    }
    .privacy-hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,255,255,0.78)),
        repeating-linear-gradient(90deg, transparent 0, transparent 84px, rgba(229,233,242,0.45) 84px, rgba(229,233,242,0.45) 85px),
        repeating-linear-gradient(0deg, transparent 0, transparent 84px, rgba(229,233,242,0.28) 84px, rgba(229,233,242,0.28) 85px);
      opacity: 0.75;
      pointer-events: none;
    }
    .privacy-hero-wrap {
      position: relative;
      z-index: 1;
      display: block;
    }
    .privacy-hero-copy h1 {
      margin: 0;
      font-size: clamp(48px, 5vw, 72px);
      line-height: 1.1;
      color: #1f2937;
      letter-spacing: -0.03em;
    }
    .privacy-hero-subtitle {
      display: block;
      margin-top: 20px;
      font-size: 30px;
      line-height: 1.2;
      color: #b3b3b3;
      font-weight: 500;
    }
    .privacy-hero-copy p {
      margin: 46px 0 0;
      color: #30363f;
      font-size: 18px;
      line-height: 2.05;
      max-width: 980px;
    }
    .privacy-hero-meta {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      margin-top: 22px;
    }
    .privacy-hero-meta span {
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,0.96);
      border: 1px solid #e7ecf5;
      font-size: 13px;
      color: #6b7280;
    }
    .privacy-article {
      max-width: 980px;
      padding: 42px 0 12px;
      color: #1f2937;
    }
    .privacy-article h2 {
      margin: 0;
      padding-top: 28px;
      font-size: 18px;
      line-height: 1.4;
      color: #111827;
      font-weight: 700;
    }
    .privacy-article p {
      margin: 12px 0 0;
      color: #4b5563;
      font-size: 16px;
      line-height: 2;
      text-align: justify;
      text-indent: 2em;
    }
    .privacy-article strong {
      color: #111827;
    }
    body.about-page .menu a[href="/about/"] {
      color: #ffd39e;
      opacity: 1;
    }
    body.risk-page .menu a[href="/risk/"] {
      color: #7358ff;
      opacity: 1;
    }
    .faq-page {
      background: #ffffff;
    }
    .faq-main {
      padding-top: 0;
      padding-bottom: 44px;
    }
    .faq-hero--compact {
      padding: 110px 0 28px;
      background:
        radial-gradient(circle at 12% 18%, rgba(98, 173, 255, 0.20), transparent 24%),
        radial-gradient(circle at 84% 24%, rgba(255, 180, 88, 0.16), transparent 22%),
        linear-gradient(110deg, #081126 0%, #10264f 46%, #173d79 100%);
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .faq-hero--compact::before,
    .faq-hero--compact::after {
      content: "";
      position: absolute;
      pointer-events: none;
    }
    .faq-hero--compact::before {
      inset: 0;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0) 42%),
        repeating-linear-gradient(90deg, transparent 0, transparent 84px, rgba(255,255,255,0.05) 84px, rgba(255,255,255,0.05) 85px),
        repeating-linear-gradient(0deg, transparent 0, transparent 84px, rgba(255,255,255,0.035) 84px, rgba(255,255,255,0.035) 85px);
      opacity: 0.55;
    }
    .faq-hero--compact::after {
      width: 440px;
      height: 220px;
      right: -28px;
      bottom: -22px;
      border-radius: 40px;
      background:
        radial-gradient(circle at 28% 58%, rgba(255,177,74,0.24), transparent 58%),
        linear-gradient(135deg, rgba(255,255,255,0.14), rgba(255,255,255,0.02));
      transform: rotate(-8deg);
      filter: blur(2px);
    }
    .faq-hero-inner--left {
      max-width: 860px;
    }
    .faq-hero-inner h1,
    .faq-hero-inner p {
      color: #fff;
    }
    .faq-hero-inner h1 {
      margin: 0;
      font-size: clamp(34px, 4vw, 50px);
      line-height: 1.18;
    }
    .faq-hero-inner p {
      margin: 12px 0 0;
      font-size: 16px;
      line-height: 1.9;
      color: rgba(255,255,255,0.8);
      max-width: 760px;
    }
    .eyebrow {
      margin: 0 0 10px;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 2px;
      color: rgba(255,255,255,0.72);
    }
    .faq-search-box {
      display: flex;
      gap: 12px;
      margin-top: 22px;
      max-width: 760px;
    }
    .faq-search-box input {
      flex: 1;
      min-height: 58px;
      padding: 0 18px;
      border-radius: 18px;
      border: 1px solid #e5e9f5;
      font-size: 16px;
    }
    .faq-search-box button {
      min-width: 112px;
      border: none;
      border-radius: 18px;
      background: linear-gradient(135deg, #7358ff 0%, #dc5bf7 100%);
      color: #fff;
      font-size: 15px;
      font-weight: 700;
      cursor: pointer;
    }
    .faq-search-box button:hover {
      filter: brightness(1.03);
    }
    .faq-search-status {
      margin-top: 10px;
      min-height: 20px;
      color: rgba(255,255,255,0.78);
      font-size: 14px;
    }
    .faq-hot-tags {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      margin-top: 18px;
      color: rgba(255,255,255,0.78);
      font-size: 14px;
    }
    .faq-hot-tags a {
      padding: 8px 14px;
      border-radius: 999px;
      background: rgba(255,255,255,0.96);
      color: #6d4af4;
      text-decoration: none;
      border: 1px solid rgba(255,255,255,0.3);
    }
    .faq-layout {
      display: grid;
      grid-template-columns: 260px minmax(0, 1fr);
      gap: 28px;
      align-items: start;
    }
    .faq-sidebar {
      position: sticky;
      top: 110px;
      padding: 22px;
      border-radius: 24px;
      background: #fff;
      border: 1px solid #edf0fb;
      box-shadow: 0 16px 38px rgba(115, 120, 156, 0.1);
    }
    .faq-sidebar a {
      display: block;
      margin-bottom: 10px;
      text-decoration: none;
      color: #6b728a;
      font-size: 15px;
      line-height: 1.6;
    }
    .faq-sidebar a:last-child {
      margin-bottom: 0;
    }
    .faq-content {
      display: grid;
      gap: 20px;
    }
    .faq-section {
      padding: 28px 30px;
      border-radius: 28px;
      background: #fff;
      border: 1px solid #edf0fb;
      box-shadow: 0 16px 40px rgba(118, 122, 156, 0.1);
      scroll-margin-top: 120px;
      transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
    }
    .faq-section.is-search-match {
      border-color: rgba(115, 88, 255, 0.45);
      box-shadow: 0 20px 44px rgba(115, 88, 255, 0.14);
      transform: translateY(-2px);
    }
    .faq-section-head h2 {
      margin: 0 0 12px;
      font-size: 24px;
      color: #1d2341;
    }
    .faq-section-head p {
      margin: 0 0 18px;
      color: #677089;
      font-size: 14px;
      line-height: 1.9;
    }
    .faq-list {
      display: grid;
      gap: 16px;
    }
    .faq-item {
      border-radius: 24px;
      background: #fff;
      border: 1px solid #edf0fb;
      box-shadow: 0 14px 34px rgba(118, 123, 158, 0.09);
      overflow: hidden;
      transition: transform 0.24s ease, box-shadow 0.24s ease, background 0.24s ease, border-color 0.24s ease;
    }
    .faq-item.is-match {
      border-color: rgba(115, 88, 255, 0.45);
      box-shadow: 0 18px 40px rgba(115, 88, 255, 0.12);
    }
    .faq-item:hover {
      transform: translateY(-4px);
      background: linear-gradient(135deg, rgba(245, 240, 255, 0.98) 0%, rgba(237, 232, 255, 0.98) 100%);
      border-color: rgba(198, 184, 255, 0.55);
      box-shadow: 0 18px 40px rgba(116, 104, 205, 0.16);
    }
    .faq-item summary {
      padding: 22px 26px;
      cursor: pointer;
      list-style: none;
      font-size: 18px;
      font-weight: 700;
      color: #1d2341;
    }
    .faq-item summary::-webkit-details-marker {
      display: none;
    }
    .faq-item p {
      margin: 0;
      padding: 0 26px 24px;
      color: #646d86;
      font-size: 15px;
      line-height: 1.85;
    }
    .faq-item code {
      background: #f4f6fb;
      padding: 2px 6px;
      border-radius: 6px;
      font-size: 0.95em;
    }
    body.faq-page .menu a[href="/faq/"] {
      color: #ffd39e;
      opacity: 1;
    }
    .faq-question {
      width: 100%;
      border: 0;
      background: #fff;
      padding: 22px 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      font-size: 18px;
      font-weight: 700;
      color: #111827;
      cursor: pointer;
      text-align: left;
    }
    .faq-icon {
      flex: 0 0 auto;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      background: #f3f7fd;
      color: #2386e9;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      line-height: 1;
      transition: transform 0.25s ease;
    }
    .faq-item.is-open .faq-icon {
      transform: rotate(45deg);
    }
    .faq-answer {
      display: none;
      padding: 0 24px 22px;
      color: #4b5563;
      font-size: 15px;
      line-height: 1.9;
    }
    .faq-item.is-open .faq-answer {
      display: block;
    }
    .bottom-cta {
      padding: 48px 0 76px;
      background: #fff;
    }
    .bottom-cta-box {
      background: linear-gradient(135deg, #0f1f3d 0%, #13284c 55%, #1a3d6d 100%);
      border-radius: 28px;
      padding: 42px 40px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      color: #fff;
      overflow: hidden;
      position: relative;
    }
    .bottom-cta-box::before {
      content: "";
      position: absolute;
      right: -40px;
      top: -40px;
      width: 220px;
      height: 220px;
      background: radial-gradient(circle, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0) 72%);
    }
    .bottom-cta-copy,
    .bottom-cta-actions {
      position: relative;
      z-index: 1;
    }
    .bottom-cta-copy h2 {
      font-size: 34px;
      margin-bottom: 10px;
    }
    .bottom-cta-copy p {
      font-size: 16px;
      color: rgba(255,255,255,0.8);
    }
    .bottom-cta-actions {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
    }
    .site-footer {
      background: #0f172a;
      color: rgba(255, 255, 255, 0.78);
      padding: 56px 0 28px;
    }
    .footer-top {
      display: grid;
      grid-template-columns: 1.2fr 0.8fr 0.8fr 1fr;
      gap: 28px;
      padding-bottom: 32px;
      border-bottom: 1px solid rgba(255,255,255,0.08);
    }
    .footer-brand h3 {
      color: #fff;
      font-size: 28px;
      margin-bottom: 8px;
      letter-spacing: 2px;
      line-height: 1.1;
    }
    .footer-brand h3::after {
      content: "";
      display: block;
      width: 42px;
      height: 2px;
      margin-top: 9px;
      background: linear-gradient(90deg, rgba(255,255,255,0.82), rgba(255,255,255,0.14));
      border-radius: 999px;
    }
    .footer-brand p {
      color: rgba(255,255,255,0.66);
      line-height: 1.9;
      font-size: 15px;
      max-width: 340px;
    }
    .footer-col h4 {
      color: #fff;
      font-size: 17px;
      margin-bottom: 14px;
    }
    .footer-links {
      display: grid;
      gap: 10px;
    }
    .footer-links a,
    .footer-links span {
      color: rgba(255,255,255,0.7);
      font-size: 14px;
    }
    .footer-links a:hover {
      color: #fff;
    }
    .footer-bottom {
      padding-top: 22px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      flex-wrap: wrap;
      font-size: 13px;
      color: rgba(255,255,255,0.5);
    }
    .download-page {
      background: #ffffff;
    }
    .download-hero {
      position: relative;
      padding: 108px 0 72px;
      min-height: 640px;
      background:
        linear-gradient(180deg, rgba(24, 27, 35, 0.18), rgba(24, 27, 35, 0.18)),
        url("images/download/download-hero-main.png?v=202609042035") center 36%/contain no-repeat;
      background-color: rgb(53, 55, 65);
      color: #fff;
      overflow: hidden;
    }
    .download-hero-wrap {
      position: relative;
      z-index: 1;
      display: block;
    }
    .download-hero-copy {
      max-width: 860px;
      margin: 0 auto 26px;
      text-align: center;
    }
    .download-hero-copy h1 {
      font-size: 48px;
      line-height: 1.15;
      margin-bottom: 18px;
    }
    .download-hero-copy p {
      color: rgba(255,255,255,0.82);
      font-size: 18px;
      line-height: 1.9;
      max-width: 860px;
      margin: 0 auto;
    }
    .download-meta {
      margin-top: 18px;
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
      justify-content: center;
    }
    .download-meta span {
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,0.08);
      border: 1px solid rgba(255,255,255,0.12);
      font-size: 14px;
      color: rgba(255,255,255,0.9);
    }
    .download-showcase {
      display: block;
      width: min(1200px, 100%);
      margin: 8px auto 0;
      height: auto;
      object-fit: contain;
      transition: transform 0.35s ease, filter 0.35s ease;
      transform: translateY(0) scale(1);
      transform-origin: center center;
      will-change: transform;
    }
    .download-hero:hover .download-showcase {
      transform: translateY(-8px) scale(1.015);
      filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.14));
    }
    .download-panel {
      background: #ffffff;
      border: 1px solid #f3f4f6;
      border-radius: 0;
      padding: 0;
      backdrop-filter: none;
      box-shadow: none;
      margin-top: 28px;
      margin-bottom: 72px;
      position: relative;
      z-index: 2;
    }
    .download-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 0;
    }
    .download-card {
      background: #ffffff;
      padding: 28px 22px 30px;
      text-align: center;
      border-right: 1px solid #f3f4f6;
      transition: background 0.25s ease;
      display: flex;
      flex-direction: column;
      height: 100%;
    }
    .download-card:last-child {
      border-right: 0;
    }
    .download-card:hover {
      background: #fffefc;
      transform: none;
      box-shadow: none;
    }
    .download-card h3 {
      font-size: 18px;
      font-weight: 500;
      color: #c86d29;
      margin-bottom: 18px;
    }
    .download-card p {
      display: block;
      color: #8a6a4f;
      font-size: 13px;
      line-height: 1.8;
      min-height: 44px;
      margin: 0 0 16px;
    }
    .download-card .btn {
      min-width: 180px;
      padding: 11px 20px;
      border-radius: 0;
      background: linear-gradient(180deg, #fffaf4 0%, #fff2e2 100%);
      color: #c86d29;
      border: 1px solid #d49362;
      box-shadow: none;
      margin-top: auto;
      transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
    }
    .download-card .btn-secondary,
    .download-card .btn-primary {
      background: linear-gradient(180deg, #fffaf4 0%, #fff2e2 100%);
      color: #c86d29;
      border: 1px solid #d49362;
    }
    .download-card .btn:hover {
      background: linear-gradient(180deg, #e59b58 0%, #c97533 100%);
      color: #fff;
      border-color: #c97533;
      filter: none;
    }
    .download-section {
      padding: 72px 0;
      background: #ffffff;
    }
    .download-feature {
      padding: 84px 0 32px;
      background: #ffffff;
    }
    .download-feature-wrap {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 72px;
      align-items: center;
    }
    .download-feature-media {
      perspective: 1200px;
    }
    .download-feature-media img {
      width: 86%;
      display: block;
      margin: 0 auto;
      border-radius: 12px;
      box-shadow: none;
      transition: transform 0.35s ease, filter 0.35s ease, box-shadow 0.35s ease;
      transform: translateY(0) scale(1);
      transform-origin: center center;
      will-change: transform;
    }
    .download-feature-media:hover img {
      transform: translateY(-8px) scale(1.02);
      filter: saturate(1.03);
      box-shadow: 0 18px 34px rgba(15, 23, 42, 0.1);
    }
    .download-feature-copy h2 {
      font-size: 50px;
      line-height: 1.2;
      color: #1f2f6b;
      margin-bottom: 22px;
    }
    .download-feature-copy p {
      font-size: 18px;
      line-height: 1.9;
      color: #8d6e4b;
      margin-bottom: 8px;
    }
    .download-section.alt {
      background: #ffffff;
    }
    .download-title {
      text-align: center;
      margin-bottom: 36px;
    }
    .download-title h2 {
      font-size: 40px;
      color: #111827;
      margin-bottom: 12px;
    }
    .download-title p {
      font-size: 16px;
      color: #6b7280;
    }
    .steps-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
    .step-card {
      background: #ffffff;
      border: 1px solid #f3f4f6;
      border-radius: 20px;
      padding: 28px;
      box-shadow: none;
    }
    .step-no {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: linear-gradient(180deg, #ffb14a 0%, #ff8a1f 100%);
      color: #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      margin-bottom: 16px;
    }
    .step-card h3 {
      font-size: 20px;
      margin-bottom: 10px;
      color: #111827;
    }
    .step-card p {
      color: #4b5563;
      line-height: 1.9;
      font-size: 15px;
    }
    .specs-wrap {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
    }
    .spec-card {
      background: #fff;
      border: 1px solid #edf2f7;
      border-radius: 20px;
      padding: 28px;
      box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
    }
    .spec-card h3 {
      font-size: 22px;
      margin-bottom: 18px;
      color: #111827;
    }
    .spec-list {
      display: grid;
      gap: 14px;
    }
    .spec-item {
      display: flex;
      justify-content: space-between;
      gap: 14px;
      padding-bottom: 12px;
      border-bottom: 1px dashed #e5e7eb;
      font-size: 15px;
    }
    .spec-item span:first-child {
      color: #6b7280;
    }
    .spec-item strong {
      color: #111827;
      text-align: right;
    }
    .grid-3 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px;
    }
    .card {
      padding: 24px;
    }
    .card h3 {
      font-size: 22px;
      margin-bottom: 10px;
      color: #111827;
    }
    .card p {
      color: #6b7280;
      font-size: 15px;
    }
    .news-list {
      display: grid;
      gap: 16px;
    }
    .news-item {
      padding: 18px 20px;
      border-radius: 16px;
      background: #fff;
      box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
    }
    .news-item h4 {
      font-size: 18px;
      margin-bottom: 8px;
    }
    .news-item span {
      color: #9ca3af;
      font-size: 14px;
    }
    .cta {
      background: linear-gradient(135deg, #111827, #1f2937);
      color: #fff;
      border-radius: 24px;
      padding: 40px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      flex-wrap: wrap;
    }
    footer {
      padding: 28px 0 40px;
      color: #6b7280;
      font-size: 14px;
      text-align: center;
    }
    @media (max-width: 900px) {
      .hero-wrap, .grid-3, .feature-wrap, .testimonial-grid, .download-hero-wrap, .steps-grid, .specs-wrap, .download-feature-wrap {
        grid-template-columns: 1fr;
      }
      .hero-wrap {
        min-height: auto;
      }
      .hero-copy {
        max-width: none;
      }
      .hero h1 {
        font-size: 42px;
      }
      .hero-subtext {
        font-size: 22px;
      }
      .feature-copy h2 {
        font-size: 38px;
      }
    }
    @media (max-width: 640px) {
      .logo-area {
        min-width: auto;
        width: 100%;
      }
      .logo-box {
        padding: 7px 12px 9px;
        gap: 10px;
      }
      .logo-image {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
      }
      .menu {
        gap: 12px;
        font-size: 14px;
        flex-wrap: wrap;
      }
      .download-hero {
        padding: 72px 0 52px;
        min-height: auto;
        background-size: cover;
      }
      .download-hero-copy h1 {
        font-size: 34px;
      }
      .download-hero-copy p {
        font-size: 15px;
      }
      .download-showcase {
        width: 100%;
      }
      .download-grid {
        grid-template-columns: 1fr;
      }
      .download-card {
        border-right: 0;
        border-bottom: 1px solid #f0f2f5;
      }
      .download-card:last-child {
        border-bottom: 0;
      }
      .download-card .btn {
        min-width: 0;
        width: 100%;
      }
      .download-feature {
        padding: 56px 0 20px;
      }
      .download-feature-copy h2 {
        font-size: 32px;
      }
      .download-feature-copy p {
        font-size: 16px;
      }
      .download-section {
        padding: 56px 0;
      }
      .download-title h2 {
        font-size: 30px;
      }
      .hero {
        padding-top: 64px;
        padding-bottom: 64px;
      }
      .hero h1 {
        font-size: 32px;
      }
      .hero-subtext {
        font-size: 18px;
      }
      .hero-note,
      .hero p {
        font-size: 15px;
      }
      .section-title {
        font-size: 26px;
      }
      .feature-section {
        padding-top: 52px;
        padding-bottom: 52px;
      }
      .feature-wrap {
        gap: 28px;
      }
      .feature-copy h2 {
        font-size: 30px;
        margin-bottom: 20px;
      }
      .testimonial-section {
        padding: 56px 0;
      }
      .testimonial-head h2 {
        font-size: 30px;
      }
      .about-hero-wrap,
      .about-overview-wrap,
      .about-grid-wrap,
      .timeline-grid,
      .business-grid,
      .privacy-hero-wrap,
      .faq-layout {
        grid-template-columns: 1fr;
      }
      .faq-sidebar {
        position: static;
      }
      .about-hero,
      .faq-hero--compact,
      .privacy-hero {
        padding: 94px 0 44px;
      }
      .about-hero-copy h1,
      .faq-hero--compact h1,
      .privacy-hero-copy h1 {
        font-size: 34px;
      }
      .about-hero-subtitle {
        font-size: 22px;
        margin-top: 14px;
      }
      .about-hero-copy p,
      .faq-hero--compact p,
      .privacy-hero-copy p {
        font-size: 15px;
      }
      .about-overview,
      .about-history,
      .about-business,
      .about-grid-section,
      .faq-section {
        padding: 56px 0;
      }
      .section-head h2,
      .faq-head h2 {
        font-size: 30px;
      }
      .about-overview-media,
      .about-copy-card,
      .about-info,
      .business-card,
      .timeline-card,
      .faq-section {
        padding: 22px 20px;
        border-radius: 22px;
      }
      .privacy-article {
        padding: 24px 0 0;
      }
      .privacy-article h2 {
        font-size: 17px;
        padding-top: 22px;
      }
      .privacy-article p {
        font-size: 15px;
        text-indent: 2em;
      }
      .faq-search-box,
      .faq-hot-tags,
      .about-hero-actions,
      .bottom-cta-actions,
      .privacy-hero-meta {
        flex-direction: column;
      }
      .faq-search-box button {
        width: 100%;
      }
      .faq-item summary {
        font-size: 16px;
        padding: 18px 18px;
      }
      .faq-item p {
        padding: 0 18px 18px;
      }
      .footer-top {
        grid-template-columns: 1fr;
        gap: 22px;
      }
      .feature-block h3 {
        font-size: 18px;
      }
      .feature-block p {
        font-size: 15px;
        line-height: 1.8;
      }
      .cta {
        padding: 28px;
      }
      .hero-side-image {
        width: 100%;
      }
      .feature-media:hover img,
      .hero-visual:hover .hero-side-image,
      .download-feature-media:hover img,
      .download-hero:hover .download-showcase {
        transform: none;
      }
    }
