.elementor-1741 .elementor-element.elementor-element-2c4d7a9 > .elementor-background-overlay{background-color:#304771;opacity:0.65;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1741 .elementor-element.elementor-element-2c4d7a9:not(.elementor-motion-effects-element-type-background), .elementor-1741 .elementor-element.elementor-element-2c4d7a9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1741 .elementor-element.elementor-element-2c4d7a9{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:60px 0px 60px 0px;}.elementor-1741 .elementor-element.elementor-element-8454e97{padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(min-width:1025px){.elementor-1741 .elementor-element.elementor-element-2c4d7a9:not(.elementor-motion-effects-element-type-background), .elementor-1741 .elementor-element.elementor-element-2c4d7a9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}/* Start custom CSS for html, class: .elementor-element-8341d9c */:root{
    --ink:#0B1E38;
    --navy:#0E2A4D;
    --paper:#F3F6FA;
    --paper-card:#FFFFFF;
    --signal:#1B4FA0;
    --signal-dim:#DCE7F7;
    --alert:#D6472C;
    --alert-dim:#FBE3DE;
    --mist:#C7D2E0;
    --mist-line: rgba(14,42,77,0.12);
    --dark:#0B1E38;
    --dark-card:#132C4E;
    --text-muted:#54627A;
    --radius:14px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--paper);
    color:var(--navy);
    font-family:'Inter', sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.display{
    font-family:'Inter', sans-serif;
    font-weight:800;
    letter-spacing:-0.015em;
    color:var(--navy);
    margin:0;
  }
  .mono{
    font-family:'IBM Plex Mono', monospace;
    letter-spacing:0.02em;
  }
  a{color:inherit;}
  .wrap{
    max-width:1120px;
    margin:0 auto;
    padding:0 32px;
  }
  @media (max-width:640px){
    .wrap{padding:0 20px;}
  }

  /* HERO */
  .hero{
    padding:64px 0 40px;
  }
  .eyebrow{
    display:inline-flex; align-items:center; gap:8px;
    font-family:'IBM Plex Mono', monospace;
    font-size:12.5px; letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--signal);
    background:var(--signal-dim);
    padding:6px 12px;
    border-radius:100px;
    margin-bottom:22px;
  }
  .eyebrow .dot{
    width:6px;height:6px;border-radius:50%;
    background:var(--signal);
    animation:pulse 2.2s infinite;
  }
  @keyframes pulse{
    0%,100%{opacity:1;} 50%{opacity:.25;}
  }
  .hero h1{
    font-size:clamp(34px, 5.2vw, 58px);
    line-height:1.06;
    font-weight:700;
    max-width:820px;
  }
  .hero h1 em{
    font-style:normal;
    color:var(--signal);
  }
  .hero p.lead{
    max-width:600px;
    font-size:18px;
    line-height:1.6;
    color:var(--text-muted);
    margin-top:22px;
  }
  .hero-ctas{
    display:flex; gap:14px; margin-top:34px; flex-wrap:wrap;
  }
  .btn-primary{
    background:var(--navy); color:#fff;
    padding:14px 24px; border-radius:100px;
    font-weight:600; font-size:15px;
    text-decoration:none;
    display:inline-flex; align-items:center; gap:8px;
    transition:transform .15s ease, background .15s ease;
  }
  .btn-primary:hover{background:var(--signal); transform:translateY(-1px);}
  .btn-ghost{
    padding:14px 22px; border-radius:100px;
    font-weight:600; font-size:15px;
    text-decoration:none;
    border:1px solid var(--mist);
    color:var(--navy);
    transition:border-color .15s ease, background .15s ease;
  }
  .btn-ghost:hover{border-color:var(--navy); background:#fff;}

  /* SIGNATURE DIAGRAM */
  .diagram-shell{
    margin-top:64px;
    background:var(--dark);
    border-radius:20px;
    padding:6px;
  }
  .diagram-inner{
    background:linear-gradient(180deg, #121A32 0%, #0E1528 100%);
    border-radius:16px;
    padding:36px 28px 30px;
    overflow:hidden;
  }
  .diagram-label-row{
    display:flex; justify-content:space-between; align-items:center;
    margin-bottom:18px; flex-wrap:wrap; gap:10px;
  }
  .diagram-title{
    color:#fff; font-size:14px; font-weight:600;
    font-family:'IBM Plex Mono', monospace;
    letter-spacing:0.03em;
  }
  .legend{
    display:flex; gap:18px; font-size:12.5px; color:#8AA0C7;
    font-family:'IBM Plex Mono', monospace;
  }
  .legend span{display:inline-flex; align-items:center; gap:6px;}
  .swatch{width:9px;height:9px;border-radius:2px;}
  .sw-gateway{background:#5B6B85;}
  .sw-avanan{background:var(--signal);}
  .sw-catch{background:var(--alert);}

  svg text{font-family:'IBM Plex Mono', monospace;}

  .flow-row{display:flex; flex-direction:column; gap:8px;}
  .flow-caption{
    color:#7C8CAE; font-size:12.5px; margin-top:14px; line-height:1.55;
    max-width:640px;
  }

  /* PROBLEM SECTION */
  section{padding:96px 0;}
  .section-head{
    max-width:640px;
    margin-bottom:52px;
  }
  .section-head .eyebrow{margin-bottom:18px;}
  .section-head h2{
    font-size:clamp(28px, 3.6vw, 40px);
    font-weight:600;
    line-height:1.15;
  }
  .section-head p{
    color:var(--text-muted);
    font-size:16.5px;
    line-height:1.6;
    margin-top:16px;
  }

  .problem-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:1px;
    background:var(--mist-line);
    border:1px solid var(--mist-line);
    border-radius:16px;
    overflow:hidden;
  }
  @media (max-width:820px){
    .problem-grid{grid-template-columns:1fr;}
  }
  .problem-card{
    background:var(--paper-card);
    padding:32px 28px;
  }
  .problem-card .num{
    font-family:'IBM Plex Mono', monospace;
    color:var(--alert);
    font-size:13px;
    display:block;
    margin-bottom:14px;
  }
  .problem-card h3{
    font-size:19px; font-weight:600; margin-bottom:10px;
  }
  .problem-card p{
    color:var(--text-muted); font-size:14.5px; line-height:1.6; margin:0;
  }

  /* HOW IT WORKS */
  .how-section{background:var(--dark); color:#fff;}
  .how-section .section-head p{color:#93A3C2;}
  .how-section .eyebrow{background:rgba(46,94,255,0.18); color:#8FAEFF;}

  .steps{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:28px;
    margin-top:52px;
  }
  @media (max-width:820px){
    .steps{grid-template-columns:1fr;}
  }
  .step{
    background:var(--dark-card);
    border:1px solid rgba(255,255,255,0.06);
    border-radius:16px;
    padding:28px 26px;
  }
  .step .step-index{
    font-family:'IBM Plex Mono', monospace;
    color:var(--signal);
    font-size:13px;
    display:block;
    margin-bottom:16px;
  }
  .step h3{
    color:#fff; font-size:18px; font-weight:600; margin-bottom:10px;
  }
  .step p{
    color:#93A3C2; font-size:14.5px; line-height:1.6; margin:0;
  }

  /* THREAT GRID */
  .threat-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:16px;
    margin-top:52px;
  }
  @media (max-width:820px){
    .threat-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:560px){
    .threat-grid{grid-template-columns:1fr;}
  }
  .threat-card{
    border:1px solid var(--mist-line);
    border-radius:14px;
    padding:24px;
    background:var(--paper-card);
    transition:border-color .15s ease, transform .15s ease;
  }
  .threat-card:hover{border-color:var(--signal); transform:translateY(-2px);}
  .threat-icon{
    width:38px; height:38px; border-radius:10px;
    background:var(--signal-dim);
    display:flex; align-items:center; justify-content:center;
    margin-bottom:16px;
  }
  .threat-icon svg{width:19px; height:19px;}
  .threat-card h3{font-size:16px; font-weight:600; margin-bottom:8px;}
  .threat-card p{color:var(--text-muted); font-size:14px; line-height:1.55; margin:0;}

  /* COMPARISON */
  .compare{
    border:1px solid var(--mist-line);
    border-radius:16px;
    overflow:hidden;
    background:var(--paper-card);
  }
  table{width:100%; border-collapse:collapse;}
  thead th{
    text-align:left;
    font-family:'IBM Plex Mono', monospace;
    font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--text-muted);
    padding:18px 24px;
    border-bottom:1px solid var(--mist-line);
  }
  thead th:not(:first-child){
    text-align:center;
  }
  tbody td{
    padding:18px 24px;
    font-size:14.5px;
    border-bottom:1px solid var(--mist-line);
    vertical-align:middle;
  }
  tbody tr:last-child td{border-bottom:none;}
  tbody td:first-child{color:var(--navy); font-weight:500;}
  tbody td:not(:first-child){text-align:center;}
  .yes{color:var(--signal); font-weight:700;}
  .no{color:var(--text-muted);}
  .col-avanan{background:var(--signal-dim);}

  /* CTA */
  .cta-section{
    background:var(--navy);
    color:#fff;
    border-radius:24px;
    padding:64px 48px;
    margin:0 auto;
    max-width:1120px;
    text-align:center;
  }
  @media (max-width:640px){
    .cta-section{padding:48px 28px;}
  }
  .cta-section h2{
    color:#fff; font-size:clamp(26px,4vw,38px); font-weight:600;
    max-width:600px; margin:0 auto;
  }
  .cta-section p{
    color:#AEBBD6; margin-top:16px; font-size:16px;
  }
  .cta-buttons{
    display:flex; justify-content:center; gap:14px; margin-top:32px; flex-wrap:wrap;
  }
  .btn-white{
    background:#fff; color:var(--navy);
    padding:14px 26px; border-radius:100px;
    font-weight:600; font-size:15px; text-decoration:none;
    transition:transform .15s ease;
  }
  .btn-white:hover{transform:translateY(-1px);}
  .btn-outline{
    padding:14px 24px; border-radius:100px;
    font-weight:600; font-size:15px; text-decoration:none;
    border:1px solid rgba(255,255,255,0.3); color:#fff;
  }

  @media (prefers-reduced-motion: reduce){
    *{animation:none !important; transition:none !important;}
  }/* End custom CSS */