 .ozw2-services{
    --ozw2-navy: #071a2c;
    --ozw2-navy2:#0b2440;
    --ozw2-blue: #08a0ff;
    --ozw2-blue2:#1f6fff;

    --ozw2-card: rgba(255,255,255,.92);
    --ozw2-card2:#ffffff;
    --ozw2-textDark: #0d1b2a;
    --ozw2-mutedDark: rgba(13,27,42,.72);

    padding: clamp(24px, 3vw, 40px) 0;
    background:
      radial-gradient(900px 520px at 20% 10%, rgba(8,160,255,.18), transparent 62%),
      radial-gradient(900px 520px at 85% 20%, rgba(31,111,255,.14), transparent 60%),
      linear-gradient(180deg, var(--ozw2-navy), var(--ozw2-navy2));
  }

  .ozw2-wrap{ width:min(1220px, calc(100% - 40px)); margin:0 auto; }

  .ozw2-head{
    padding: clamp(18px, 2.4vw, 28px);
    border-bottom: 1px solid rgba(255,255,255,.14);
  }

  .ozw2-title{
    font-size: clamp(21px, 3vw, 30px);
    line-height: 1.10;
    color: #eef6ff;
    letter-spacing: -.2px;
  }

  .ozw2-sub{
    margin: 0;
    max-width: 92ch;
    color: rgba(238,246,255,.78);
    font-size: clamp(14px, 1.25vw, 16px);
    line-height: 1.7;
  }

  .ozw2-dyn,
  .ozw2-toprow{ transition: opacity .16s ease, transform .16s ease; }
  .ozw2-dyn.is-fading,
  .ozw2-toprow.is-fading{ opacity: .35; transform: translateY(3px); }

  .ozw2-toprow{
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    color: rgba(238,246,255,.70);
    font-size: 13px;
  }
  .ozw2-highlight{ display:flex; gap:10px; align-items:center; }
  .ozw2-dot{
    width: 7px; height: 7px; border-radius: 99px;
    background: rgba(8,160,255,.85);
    box-shadow: 0 0 0 6px rgba(8,160,255,.14);
  }

  .ozw2-tablist{
    display: flex;
    gap: 10px;
    padding: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .ozw2-tablist::-webkit-scrollbar{ display:none; }

  .ozw2-tab{
    flex: 0 0 auto;
    scroll-snap-align: start;
    appearance:none;
    border: 1px solid transparent;
    background: #24669d9e;
    color: rgb(255 255 255);
    border-radius: 14px;
    padding: 5px 5px;
    cursor:pointer;
    font-weight: 600;
    font-size: 13px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap: 5px;
    white-space: nowrap;
    transition: transform .12s ease, background .12s ease, border-color .12s ease, box-shadow .12s ease;
    min-width: 190px;
  }

  .ozw2-ico{
    width: 30px; height: 30px;
    border-radius: 12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.14);
    color: #e9f6ff;
    flex: 0 0 auto;
  }

  .ozw2-tab:hover{
    transform: translateY(-1px);
    border-color: rgba(8,160,255,.22);
    background: rgba(255,255,255,.10);
  }

  .ozw2-tab.is-active{
    background: linear-gradient(135deg, rgba(8,160,255,.28), rgba(255,255,255,.10));
    border-color: rgba(8,160,255,.45);
    box-shadow: 0 14px 40px rgba(0,0,0,.26);
  }

  @media (min-width: 1100px){
    .ozw2-tablist{
      overflow-x: visible;
      flex-wrap: wrap;
      scroll-snap-type: none;
    }
    .ozw2-tab{ min-width: 0; flex: 1 1 160px; }
  }

  .ozw2-panels{ margin-top: 14px; }
  .ozw2-panel.is-active{ animation: ozw2Fade .16s ease-out; }
  @keyframes ozw2Fade{ from{opacity:0; transform: translateY(4px);} to{opacity:1; transform: translateY(0);} }

  .ozw2-grid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }

  .ozw2-card{
    border-radius: 18px;
    background: linear-gradient(180deg, var(--ozw2-card), var(--ozw2-card2));
    border: 1px solid rgba(13,27,42,.10);
    box-shadow: 0 16px 50px rgba(0,0,0,.12);
    padding: 16px 16px 14px;
    position: relative;
    overflow: hidden;
    color: var(--ozw2-textDark);
    transition: transform .12s ease, box-shadow .12s ease;
  }

  .ozw2-card::before{
    content:"";
    position:absolute;
    top:-70px; right:-70px;
    width: 200px; height: 200px;
    background: radial-gradient(circle at 35% 35%, rgba(8,160,255,.20), transparent 62%);
    transform: rotate(18deg);
    pointer-events:none;
  }

  .ozw2-card:hover{
    transform: translateY(-2px);
    box-shadow: 0 22px 70px rgba(0,0,0,.16);
  }

  .ozw2-card h3{ margin:0 0 10px; font-size:16px; letter-spacing:.2px; }

  .ozw2-card p{
    margin: 0 0 10px;
    color: var(--ozw2-mutedDark);
    font-size: 14px;
    line-height: 1.62;
  }

  .ozw2-mini{
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid rgba(13,27,42,.10);
    color: rgba(13,27,42,.74) !important;
  }

  .ozw2-chips{ margin-top: 10px; display:flex; flex-wrap: wrap; gap: 8px; }

  .ozw2-chip{
    font-size: 12px;
    font-weight: 900;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(8,160,255,.28);
    background: rgba(8,160,255,.10);
    color: rgba(13,27,42,.85);
  }

  .ozw2-link{
    display:inline-flex;
    margin-top: 12px;
    font-weight: 950;
    text-decoration:none;
    color: #0b5ed7;
  }
  .ozw2-link:hover{ text-decoration: underline; text-underline-offset: 3px; }

  .ozw2-cta{ margin-top: 14px; }
  .ozw2-ctaBox{
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.16);
    background: linear-gradient(135deg, rgba(8,160,255,.20), rgba(255,255,255,.08));
    padding: 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: 14px;
  }
  .ozw2-ctaTitle{ margin:0 0 6px; color:#eef6ff; font-size: 18px; }
  .ozw2-ctaText{ margin:0; color: rgba(238,246,255,.78); font-size: 14px; line-height: 1.6; }
  .ozw2-ctaBtns{ display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }

  .ozw2-btn{
    display:inline-flex; align-items:center; justify-content:center;
    padding: 12px 16px;
    border-radius: 14px;
    font-weight: 950;
    font-size: 14px;
    text-decoration:none;
    border: 1px solid transparent;
    transition: transform .12s ease, border-color .12s ease, background .12s ease, box-shadow .12s ease;
    white-space: nowrap;
  }
  .ozw2-btnPrimary{
    background: linear-gradient(135deg, var(--ozw2-blue), var(--ozw2-blue2));
    color: #fff;
    box-shadow: 0 14px 40px rgba(0,0,0,.22);
  }
  .ozw2-btnPrimary:hover{ transform: translateY(-1px); }
  .ozw2-btnGhost{
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.18);
    color: #eef6ff;
  }
  .ozw2-btnGhost:hover{ transform: translateY(-1px); border-color: rgba(255,255,255,.28); }

  @media (max-width: 980px){
    .ozw2-grid{ grid-template-columns: 1fr; }
    .ozw2-ctaBox{ flex-direction: column; align-items:flex-start; }
    .ozw2-ctaBtns{ justify-content:flex-start; }
  }

  @media (prefers-reduced-motion: reduce){
    .ozw2-tab, .ozw2-card, .ozw2-btn, .ozw2-dyn, .ozw2-toprow{ transition: none; }
    .ozw2-panel.is-active{ animation: none; }
  }