/* Start custom CSS for section, class: .elementor-element-975504e */*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --cps-red:       #CC2229;
      --cps-red-dark:  #8B1A1A;
      --cps-blue:      #1A3A8F;
      --cps-blue-link: #1A5FB4;
      --cps-cyan-soft: #4DD9FF;
      --cps-white:     #FFFFFF;
      --cps-offwhite:  #F4F7FC;
      --cps-border:    #DDE3EF;
      --cps-text:      #1C1C1C;
      --cps-muted:     #5A6478;
      --radius-md:     10px;
      --radius-lg:     14px;
      --font-body:     'DM Sans', 'Segoe UI', sans-serif;
      --font-display:  'Playfair Display', Georgia, serif;
    }

    body {
      font-family: var(--font-body);
      background: var(--cps-offwhite);
      color: var(--cps-text);
      font-size: 15px;
      line-height: 1.6;
    }

    a { text-decoration: none !important; transition: color 0.15s; color: inherit !important; }
    a:hover { text-decoration: none !important; }
    svg { display: block; flex-shrink: 0; }

    /* ── HERO ── */
    #cps-hero {
      position: relative;
      background: linear-gradient(135deg, #0A1628 0%, #0D2855 30%, #0B3070 52%, #0F4A8A 72%, #1560A8 86%, #1D7CC4 100%);
      overflow: hidden;
      padding: 4rem 2rem 3.5rem;
      text-align: center;
    }

    #cps-hero::after {
      content: '';
      position: absolute; inset: 0;
      background-image:
        linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
      background-size: 48px 48px;
      pointer-events: none; z-index: 1;
    }

    .cps-orb { position: absolute; border-radius: 50%; pointer-events: none; }
    .orb-tl { width:380px;height:380px;top:-100px;left:-100px;background:radial-gradient(circle,rgba(0,120,255,0.22) 0%,transparent 65%); }
    .orb-br { width:300px;height:300px;bottom:-80px;right:-60px;background:radial-gradient(circle,rgba(0,191,255,0.18) 0%,transparent 65%); }
    .orb-tr { width:220px;height:220px;top:30px;right:28%;background:radial-gradient(circle,rgba(29,124,196,0.28) 0%,transparent 60%); }

    .hero-inner { position: relative; z-index: 2; }

    @keyframes fadeUp {
      from { opacity:0; transform:translateY(16px); }
      to   { opacity:1; transform:translateY(0); }
    }

    .hero-icons {
      display: flex; justify-content: center; gap: 1.25rem;
      margin-bottom: 1.75rem; animation: fadeUp 0.6s ease both;
    }

    .hero-icon-box {
      width:58px;height:58px;border-radius:16px;
      background:rgba(255,255,255,0.07);
      border:1px solid rgba(0,191,255,0.30);
      display:flex;align-items:center;justify-content:center;
      box-shadow:0 0 24px rgba(0,191,255,0.20),inset 0 1px 0 rgba(255,255,255,0.08);
      transition:transform 0.2s,box-shadow 0.2s;
    }
    .hero-icon-box:hover { transform:translateY(-4px); }
    .hero-icon-box svg { width:24px;height:24px;stroke:#4DD9FF;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }

    .hero-badge {
      display:inline-block;
      background:rgba(0,191,255,0.12);border:1px solid rgba(0,191,255,0.28);
      color:var(--cps-cyan-soft);font-size:11px;letter-spacing:1.8px;
      text-transform:uppercase;padding:5px 16px;border-radius:40px;
      margin-bottom:0.9rem;animation:fadeUp 0.6s 0.1s ease both;
    }

    .hero-title {
      font-family:var(--font-display);color:#fff !important;
      font-size:42px;font-weight:600;letter-spacing:-0.5px;
      margin-bottom:0.5rem;
      text-shadow:0 2px 24px rgba(0,0,0,0.30);
      animation:fadeUp 0.6s 0.2s ease both;
    }

    .hero-sub {
      color:rgba(255,255,255,0.62);font-size:14.5px;
      margin-bottom:0;animation:fadeUp 0.6s 0.3s ease both;
    }

    /* ── RED STRIP ── */
    #cps-strip { height:4px;background:linear-gradient(90deg,var(--cps-red-dark) 0%,var(--cps-red) 50%,var(--cps-red-dark) 100%); }

    /* ── LAYOUT ── */
    .cps-section { max-width:1020px;margin:0 auto;padding:2.5rem 1.5rem; }
    .cps-section.no-top { padding-top:0; }

    /* ── CARD ── */
    .cps-card {
      background:var(--cps-white);border:1px solid var(--cps-border);
      border-radius:var(--radius-lg);padding:2rem 1.75rem;
      box-shadow:0 4px 20px rgba(26,58,143,0.07);
    }

    .card-title {
      font-size:18px;font-weight:600;color:var(--cps-blue);
      margin-bottom:1.5rem;display:flex;align-items:center;gap:10px;
    }
    .card-title::after {
      content:'';flex:1;height:2px;
      background:linear-gradient(90deg,var(--cps-red),transparent);border-radius:2px;
    }
    .card-title-dot { width:9px;height:9px;border-radius:50%;background:var(--cps-red);flex-shrink:0; }

    /* ── SECTION TITLE ── */
    .section-title {
      font-family:var(--font-display);font-size:22px;font-weight:600;
      color:var(--cps-blue);text-align:center;margin-bottom:1.5rem;position:relative;
    }
    .section-title span { background:var(--cps-offwhite);padding:0 14px;position:relative;z-index:1; }
    .section-title::before {
      content:'';position:absolute;top:52%;left:0;right:0;height:1px;
      background:linear-gradient(90deg,transparent,var(--cps-border),transparent);
    }

    /* ── BODY TEXT ── */
    .body-text p {
      font-size:14.5px;color:var(--cps-muted);line-height:1.85;margin-bottom:1.1rem;
    }
    .body-text p:last-child { margin-bottom:0; }

    /* ── BULLET LIST ── */
    .body-text ul {
      list-style: none;
      padding: 0;
      margin: 0.5rem 0 1.1rem 0;
    }
    .body-text ul li {
      font-size:14.5px;color:var(--cps-muted);line-height:1.85;
      padding: 0.25rem 0 0.25rem 1.5rem;
      position: relative;
    }
    .body-text ul li::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0.72rem;
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--cps-red);
    }

    .tagline-box {
      margin-top:1.5rem;padding:1.1rem 1.35rem;
      border-left:4px solid var(--cps-red);
      background:linear-gradient(90deg,rgba(204,34,41,0.05),transparent);
      border-radius:0 var(--radius-md) var(--radius-md) 0;
    }
    .tagline-box p {
      font-size:15px;font-weight:700;color:var(--cps-blue);
      font-style:italic;margin-bottom:0 !important;
    }

    /* ── TWO-COL ── */
    .two-col { display:grid;grid-template-columns:1fr 1fr;gap:1.25rem; }

    /* ── MODE CARD ── */
    .mode-card {
      background:var(--cps-offwhite);border:1px solid var(--cps-border);
      border-top:3px solid var(--cps-red);
      border-radius:var(--radius-md);padding:1.25rem 1.25rem 1.25rem 1.1rem;
    }
    .mode-icon {
      width:38px;height:38px;border-radius:10px;
      background:linear-gradient(135deg,var(--cps-red-dark),var(--cps-red));
      display:flex;align-items:center;justify-content:center;margin-bottom:0.85rem;
    }
    .mode-icon svg { width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }

    .mode-label { font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--cps-red);margin-bottom:4px; }
    .mode-card h3 { font-size:15px;font-weight:600;color:var(--cps-blue);margin-bottom:0.5rem; }
    .mode-card p { font-size:13.5px;color:var(--cps-muted);line-height:1.7; }
    .mode-card p a { color:var(--cps-blue-link) !important; }
    .mode-card p a:hover { text-decoration:underline !important; }

    .modes-note {
      margin-top:1.25rem;font-size:14.5px;color:var(--cps-muted);line-height:1.8;
      padding:1.1rem 1.35rem;
      background:linear-gradient(90deg,rgba(26,58,143,0.04),transparent);
      border-left:3px solid var(--cps-blue);
      border-radius:0 var(--radius-md) var(--radius-md) 0;
    }

    /* ── CTA BANNER ── */
    .cta-banner {
      background:linear-gradient(135deg,#0D2855 0%,#0F4A8A 60%,#1560A8 100%);
      border-radius:var(--radius-lg);padding:2.5rem 2rem;
      text-align:center;position:relative;overflow:hidden;
    }
    .cta-banner::before {
      content:'';position:absolute;inset:0;
      background-image:
        linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);
      background-size:36px 36px;pointer-events:none;
    }
    .cta-inner { position:relative;z-index:1; }
    .cta-banner p {
      font-size:14.5px;color:rgba(255,255,255,0.75);
      max-width:600px;margin:0 auto 1.6rem;line-height:1.8;
    }
    .cta-btn {
      display:inline-flex;align-items:center;gap:8px;
      background:linear-gradient(135deg,var(--cps-red-dark),var(--cps-red));
      color:#fff !important;font-size:14px;font-weight:600;
      padding:12px 28px;border-radius:var(--radius-md);
      box-shadow:0 4px 16px rgba(204,34,41,0.35);
      transition:opacity 0.18s,box-shadow 0.18s;
    }
    .cta-btn:hover { opacity:0.88;color:#fff !important;box-shadow:0 6px 22px rgba(204,34,41,0.45); }
    .cta-btn svg { width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round; }

    /* ── RESPONSIVE ── */
    @media (max-width:720px) {
      .two-col { grid-template-columns:1fr; }
      .cps-section { padding:1.5rem 1rem; }
    }
    @media (max-width:600px) { .hero-title { font-size:30px; } }
    @media (max-width:420px) { #cps-hero { padding:3rem 1rem 2.5rem; } }/* End custom CSS */