
  :root{
    --ink:        #F5E7CF;
    --ink-2:      #E0CBA4;
    --muted:      #B8925C;
    --line:       rgba(216,172,103,.16);
    --bg:         #070707;
    --bg-2:       #0E0C0A;
    --bg-3:       #15110D;
    --brand:      #D6A15A;
    --brand-2:    #F0C787;
    --brand-soft: rgba(214,161,90,.24);
    --coral:      #B97A33;
    --coral-2:    #E9B774;
    --mint:       #C99A59;
    --gold:       #F1C57D;
    --violet:     #8E6734;
    --navy:       #060606;
    --navy-2:     #120F0C;
    --radius:     14px;
    --radius-lg:  22px;
    --shadow-sm:  0 2px 8px rgba(0,0,0,.28);
    --shadow:     0 14px 38px -16px rgba(0,0,0,.45);
    --shadow-lg:  0 30px 80px -30px rgba(0,0,0,.65);
  }

  *{ box-sizing: border-box; }
  html,body{ margin:0; padding:0; }
  body{
    font-family: 'Inter', system-ui, sans-serif;
    color: var(--ink);
    background: var(--bg);
    -webkit-font-smoothing: antialiased;
    line-height: 1.55;
    overflow-x: hidden;
  }
  h1,h2,h3,h4{
    font-family: 'Sora', 'Inter', sans-serif;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin: 0 0 .4em;
    font-weight: 700;
  }
  h1{ font-size: clamp(38px, 4.4vw, 60px); line-height: 1.05; font-weight: 800;}
  h2{ font-size: clamp(28px, 2.6vw, 38px); line-height: 1.1; }
  h3{ font-size: 20px; line-height: 1.25; }
  p { margin: 0 0 1em; color: var(--ink-2); }
  a { color: inherit; text-decoration: none; }

  .wrap{ max-width: 1240px; margin: 0 auto; padding: 0 32px; }
  .hero-grid > *,
  .feat > *,
  .about-grid > *,
  .contact-grid > *,
  .services-3 > *,
  .fraud-grid > *,
  .values > *{
    min-width: 0;
  }

  /* ---------- TOP NAV ---------- */
  .nav{
    position: sticky; top:0; z-index: 50;
    background: rgba(255,255,255,.85);
    backdrop-filter: saturate(180%) blur(10px);
    border-bottom: 1px solid rgba(226,234,246,.7);
  }
  /* align nav inner to the wrap content edge already; remove default extra padding */
  .nav-inner{
    display:flex; align-items:center; gap: 32px;
    height: 76px;
    position: relative;
  }
  .nav-inner .nav-links{
    position: absolute; left: 50%; top: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
  }
  .nav-inner .lang-switch{ margin-left: auto !important; }
  .logo{
    display:flex; align-items:center; gap:10px;
    font-family:'Sora'; font-weight: 800; font-size: 20px; color: var(--ink);
    letter-spacing:-0.01em;
    min-width: 0;
    flex: 0 1 auto;
  }
  .logo img{ height: 42px; width:auto; display:block; }
  .logo .wordmark{ display:flex; flex-direction:column; line-height:1; gap:3px; }
  .logo .wordmark .name{ font-size: 18px; letter-spacing: .14em; font-weight:700;}
  .logo .wordmark .sub{ font-size: 9px; letter-spacing: .28em; color: var(--muted); font-weight:600;}
  .nav-links{ display:flex; gap: 32px; align-items:center;}
  .nav-links a{
    font-size: 14px; font-weight: 500; color: var(--ink-2);
    transition: color .15s;
  }
  .nav-links a:hover{ color: var(--brand); }
  .nav-links a.active{ color: var(--brand); font-weight:600;}

  /* ---------- BUTTONS ---------- */
  .btn{
    display:inline-flex; align-items:center; gap:8px;
    padding: 13px 22px; border-radius: 999px;
    font-family:'Sora'; font-weight:600; font-size:14px;
    border: none; cursor: pointer; transition: transform .15s, box-shadow .15s, background .2s;
    white-space: nowrap;
  }
  .btn-coral{
    background: linear-gradient(180deg, var(--coral-2), var(--coral));
    color:#fff;
    box-shadow: 0 10px 22px -8px rgba(255,106,85,.55);
  }
  .btn-coral:hover{ transform: translateY(-1px); box-shadow: 0 14px 28px -8px rgba(255,106,85,.6); }
  .btn-ghost{
    background: transparent; color: var(--ink);
    border: 1.5px solid var(--line);
  }
  .btn-ghost:hover{ border-color: var(--brand); color: var(--brand); }
  .btn-blue{
    background: var(--brand); color:#fff;
    box-shadow: 0 8px 18px -6px rgba(43,107,255,.55);
  }
  .btn-blue:hover{ transform: translateY(-1px); }

  .arrow{ width:14px; height:14px; }

  /* ---------- HERO ---------- */
  .hero{
    position: relative;
    padding: 64px 0 96px;
    background:
      radial-gradient(900px 500px at 90% 10%, rgba(191,211,255,.55), transparent 60%),
      radial-gradient(700px 400px at 0% 80%, rgba(255,200,189,.25), transparent 60%),
      #fff;
    overflow:hidden;
  }
  .hero-grid{
    display:grid; grid-template-columns: 0.9fr 1.4fr; gap: 24px; align-items: center;
  }
  .eyebrow{
    display:inline-flex; align-items:center; gap:8px;
    padding: 6px 14px; border-radius: 999px;
    background: #fff; border:1px solid var(--line);
    font-size: 12px; font-weight:600; color: var(--ink-2);
    letter-spacing: .04em; text-transform: uppercase;
    box-shadow: var(--shadow-sm);
    margin-bottom: 20px;
  }
  .eyebrow > span:last-child{
    min-width: 0;
  }
  .eyebrow .dot{ width:6px; height:6px; border-radius:50%; background: var(--mint);
    box-shadow: 0 0 0 4px rgba(41,211,154,.18);
    animation: pulse 2s infinite;
  }
  @keyframes pulse{ 50%{ box-shadow: 0 0 0 8px rgba(41,211,154,0);} }
  .hero h1 .accent{ color: var(--brand); }
  .hero h1 .accent-coral{ color: var(--coral); }
  .hero-sub{
    font-size: 18px; color: var(--muted); max-width: 520px; margin: 18px 0 28px;
  }
  .hero-cta{ display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
  .hero-meta{
    display:flex; gap: 28px; margin-top: 36px; flex-wrap:wrap;
  }
  .hero-meta .stat .num{
    font-family:'Sora'; font-weight:700; font-size: 28px; color: var(--ink);
    letter-spacing: -0.02em;
  }
  .hero-meta .stat .lbl{ font-size: 12px; color: var(--muted);
    text-transform: uppercase; letter-spacing: .08em; font-weight:600; }

  /* hero illustration shell — sized 1.5× the original 560px target */
  .hero-vis{
    position: relative; aspect-ratio: 1/1; width: 100%;
    max-width: 840px; margin-left: auto; margin-right: -40px;
  }
  @media (max-width: 1100px){
    .hero-vis{ margin-right: 0; max-width: 640px;}
  }
  .hero-vis svg{ width: 100%; height: 100%; display:block; overflow: visible; }
  .phone{
    position:absolute; right: -10%; bottom: -8%;
    width: 38%;
    filter: drop-shadow(0 30px 40px rgba(14,42,85,.18));
  }

  /* ---------- WAVE DIVIDERS ---------- */
  .wave{ display:block; width:100%; height: 80px; }
  .panel-sky{ background: var(--bg-2); }
  .panel-sky-2{ background: var(--bg-3); }

  /* ---------- SECTION GENERAL ---------- */
  section{ padding: 96px 0; position: relative;}
  .sec-head{ max-width: 720px; margin: 0 auto 56px; text-align: center; }
  .sec-head h2{ margin-bottom: 14px; }
  .sec-head .eyebrow{ margin-bottom: 18px; }
  .sec-head p{ color: var(--muted); font-size: 17px;}

  /* ---------- SERVICE CARDS (3 over-blocks) ---------- */
  .services-3{
    display:grid; grid-template-columns: repeat(3,1fr); gap: 24px;
  }
  .svc{
    background:#fff; border-radius: var(--radius-lg);
    padding: 32px; border:1px solid var(--line);
    box-shadow: var(--shadow-sm);
    position:relative; overflow:hidden;
    transition: transform .25s, box-shadow .25s;
  }
  .svc:hover{ transform: translateY(-4px); box-shadow: var(--shadow); }
  .svc-icon{
    width: 60px; height: 60px; border-radius: 18px;
    display:flex; align-items:center; justify-content:center;
    margin-bottom: 22px; position:relative;
  }
  .svc-icon.blue{ background: linear-gradient(160deg, #3D7BFF, #1E50C8); color:#fff;
    box-shadow: 0 12px 22px -10px rgba(43,107,255,.6); }
  .svc-icon.gold{ background: linear-gradient(160deg, #FFD15C, #F2A60E); color:#fff;
    box-shadow: 0 12px 22px -10px rgba(242,166,14,.55); }
  .svc-icon.coral{ background: linear-gradient(160deg, #FF8B78, #E94B33); color:#fff;
    box-shadow: 0 12px 22px -10px rgba(233,75,51,.55); }
  .svc h3{ margin-bottom: 10px; }
  .svc p{ font-size: 14.5px; color: var(--muted); }
  .svc .more{
    display:inline-flex; align-items:center; gap:6px;
    color: var(--brand); font-weight:600; font-size: 14px; margin-top: 10px;
  }

  /* ---------- A2P / P2P / IPRN — alternating product blocks ---------- */
  .feat{
    display:grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items:center;
  }
  .feat.reverse{ direction: rtl;}
  .feat.reverse > *{ direction: ltr;}
  .feat .copy h2 .accent{ color: var(--brand); }
  .feat .copy ul{
    list-style: none; padding:0; margin: 18px 0 28px;
  }
  .feat .copy li{
    display:flex; gap: 12px; align-items:flex-start;
    padding: 10px 0; border-bottom: 1px dashed var(--line);
    color: var(--ink-2); font-size: 15px;
  }
  .feat .copy li:last-child{ border:none;}
  .check{
    flex-shrink:0; width: 22px; height: 22px; border-radius:50%;
    background: rgba(41,211,154,.15); color: var(--mint);
    display:flex; align-items:center; justify-content:center; margin-top: 2px;
  }
  .feat .visual{
    aspect-ratio: 5/4;
    border-radius: var(--radius-lg);
    background: linear-gradient(160deg, #fff 0%, #EAF1FE 100%);
    border:1px solid var(--line);
    box-shadow: var(--shadow);
    padding: 28px;
    position: relative; overflow: hidden;
    display:flex; align-items:center; justify-content:center;
  }

  /* SMS thread mock */
  .sms-thread{ width: 100%; max-width: 320px; }
  .sms{
    padding: 12px 16px; border-radius: 18px; max-width: 78%; margin-bottom: 10px;
    font-size: 13px; line-height: 1.4;
    box-shadow: var(--shadow-sm);
    animation: smsIn .6s both;
  }
  .sms.in{ background:#fff; color: var(--ink); border-bottom-left-radius: 6px;}
  .sms.out{ background: var(--brand); color:#fff;
    margin-left: auto; border-bottom-right-radius: 6px;
  }
  .sms.otp{ font-family: 'Sora'; font-weight:700; letter-spacing:.4em; font-size:18px; text-align:center;}
  .sms .tag{
    display:inline-block; font-size: 10px; font-weight:700;
    background: rgba(255,255,255,.25); padding: 2px 6px; border-radius: 6px;
    margin-bottom:4px; letter-spacing:.05em;
  }
  @keyframes smsIn{ from{opacity:0; transform: translateY(8px);} to{opacity:1;}}

  /* P2P routing diagram */
  .route{
    width: 100%; height: 100%;
    display:grid; place-items:center;
  }

  /* IPRN dial pad */
  .dialpad{
    background:#fff; border-radius: 22px; padding: 22px;
    box-shadow: var(--shadow); width: 80%; max-width: 280px;
    border:1px solid var(--line);
  }
  .dial-display{
    background: var(--bg-2); border-radius: 12px; padding: 14px;
    font-family:'Sora'; font-weight:700; color: var(--ink);
    text-align:center; font-size: 22px; letter-spacing:.06em;
    margin-bottom: 14px;
  }
  .dial-display .country{ display:block; font-size: 11px; color: var(--muted); font-weight:600; letter-spacing: .12em;
    margin-bottom:4px; text-transform:uppercase;}
  .dial-grid{ display:grid; grid-template-columns: repeat(3,1fr); gap: 8px;}
  .dial-key{
    aspect-ratio:1; border-radius: 12px; background: var(--bg-2);
    display:flex; align-items:center; justify-content:center;
    font-family:'Sora'; font-weight: 700; color: var(--ink); font-size:18px;
    transition: background .2s;
  }
  .dial-key.active{ background: var(--brand); color:#fff; transform: scale(1.04);}

  /* ---------- ANTI-FRAUD GRID ---------- */
  .fraud-grid{
    display:grid; grid-template-columns: repeat(3,1fr); gap: 22px;
  }
  .fcard{
    background:#fff; border:1px solid var(--line); border-radius: var(--radius-lg);
    padding: 28px; box-shadow: var(--shadow-sm);
    transition: transform .2s, box-shadow .2s, border-color .2s;
  }
  .fcard:hover{ transform: translateY(-3px); border-color: var(--brand-soft); box-shadow: var(--shadow);}
  .fcard .ic{
    width: 44px; height: 44px; border-radius: 12px;
    background: var(--bg-2); color: var(--brand);
    display:flex; align-items:center; justify-content:center;
    margin-bottom: 18px;
  }
  .fcard h3{ font-size: 17px; margin-bottom: 8px;}
  .fcard p{ font-size: 14px; color: var(--muted); margin:0;}

  /* ---------- ABOUT / VALUES (3 isometric cards) ---------- */
  .about-grid{ display:grid; grid-template-columns: 380px 1fr; gap: 64px; align-items: start;}
  .values{
    display:grid; grid-template-columns: repeat(3,1fr); gap: 22px; margin-top: 40px;
  }
  .value{
    background:#fff; border-radius: var(--radius-lg);
    padding: 28px; border:1px solid var(--line); box-shadow: var(--shadow-sm);
    text-align:left;
  }
  .iso{
    display:block;
    width: 64px; height: 64px; margin: 0 auto 18px;
    filter: drop-shadow(0 10px 18px rgba(214,161,90,.24));
  }
  .iso-chip{
    display:block;
    margin-left:auto;
    margin-right:auto;
  }
  .value h3{ font-size: 16px; margin-bottom: 6px; }
  .value p{ font-size: 13.5px; color: var(--muted); margin:0;}

  /* ---------- CONTACT / Let's Talk ---------- */
  .contact{
    background:
      radial-gradient(1200px 500px at 50% -20%, rgba(43,107,255,.4), transparent 60%),
      linear-gradient(180deg, var(--navy) 0%, #0A1F46 100%);
    color:#fff;
    border-radius: 28px 28px 0 0;
    margin-top: 40px;
    overflow:hidden;
    position:relative;
  }
  .contact h2{ color:#fff;}
  .contact .speech{
    position:absolute; left: 36px; top: -36px;
    width: 80px; height: 64px; background: var(--brand);
    border-radius: 14px;
    box-shadow: 0 14px 30px -8px rgba(43,107,255,.6);
  }
  .contact .speech::after{
    content:""; position:absolute; bottom: -10px; left: 18px;
    width: 0; height: 0;
    border-left: 0 solid transparent;
    border-right: 18px solid transparent;
    border-top: 14px solid var(--brand);
  }
  .contact .speech::before{
    content:""; position:absolute; inset: 14px 16px;
    background:
      linear-gradient(#fff,#fff) 0 0/100% 4px no-repeat,
      linear-gradient(#fff,#fff) 0 12px/70% 4px no-repeat,
      linear-gradient(#fff,#fff) 0 24px/85% 4px no-repeat;
    opacity:.95;
  }
  .contact-grid{
    display:grid; grid-template-columns: 1fr 1.1fr; gap: 56px;
    padding: 80px 0 72px;
    align-items:start;
  }
  .contact-grid p{ color: rgba(255,255,255,.75); }
  .form{
    background: rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    border-radius: 20px;
    padding: 28px;
    backdrop-filter: blur(6px);
  }
  .form-row{ display:grid; grid-template-columns: 1fr 1fr; gap: 14px; }
  .field{
    background:#fff; border-radius: 12px; padding: 14px 16px;
    border: none; width:100%; font-family: inherit; color: var(--ink);
    margin-bottom: 14px; font-size: 14px;
    box-shadow: var(--shadow-sm);
  }
  textarea.field{ min-height: 110px; resize: vertical;}
  .form-foot{ display:flex; justify-content: space-between; align-items:center; margin-top: 6px; gap:14px; flex-wrap:wrap;}
  .form-status{
    width:100%; margin: 12px 0 0; font-size: 13px;
    color: rgba(255,255,255,.78);
  }
  .form-status.ok{ color: #86F0C7; }
  .form-status.error{ color: #FFB1A5; }
  .check-line{ display:flex; gap:10px; align-items:center; font-size: 13px; color: rgba(255,255,255,.8);}
  .checkbox{
    width:18px; height:18px; border-radius:5px; background: var(--brand);
    display:inline-flex; align-items:center; justify-content:center; color:#fff;
  }
  .inquiry-paths{
    display:grid; grid-template-columns: 1fr; gap: 14px; margin-top: 28px;
  }
  .ipath{
    display:flex; gap:14px; align-items:center;
    background: rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
    padding: 16px 18px; border-radius: 14px;
    transition: background .2s, transform .2s;
    cursor: pointer;
  }
  .ipath:hover{ background: rgba(255,255,255,.1); transform: translateY(-2px);}
  .ipath .ic{
    width: 40px; height: 40px; border-radius: 10px; background: var(--brand); color:#fff;
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
  }
  .ipath .ic.coral{ background: var(--coral);}
  .ipath .ic.mint{ background: var(--mint);}
  .ipath h4{ color:#fff; margin: 0 0 2px; font-size: 15px;}
  .ipath span{ font-size: 13px; color: rgba(255,255,255,.65);}

  /* ---------- FOOTER ---------- */
  footer{
    background: var(--navy);
    color: rgba(255,255,255,.7);
    padding: 50px 0 30px;
  }
  .foot-grid{
    display:grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 40px;
    margin-bottom: 40px;
  }
  footer h5{
    color:#fff; font-family:'Sora'; font-weight:600; font-size: 13px;
    text-transform: uppercase; letter-spacing:.1em; margin: 0 0 16px;
  }
  footer ul{ list-style:none; padding:0; margin:0; display:grid; gap:10px;}
  footer a{ color: rgba(255,255,255,.65); font-size: 14px; transition: color .15s;}
  footer a:hover{ color:#fff; }
  .foot-bottom{
    display:flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(255,255,255,.12); padding-top: 24px;
    font-size: 12.5px; color: rgba(255,255,255,.5);
  }

  /* ---------- HERO GLOBE ANIMATION ---------- */
  .globe-stage{ position: relative; width: 100%; aspect-ratio: 1/1; }
  .orbit{ position:absolute; inset:0; }
  .pin{
    position:absolute; width: 36px; height: 36px; border-radius: 50%;
    transform: translate(-50%,-50%);
    display:flex; align-items:center; justify-content:center;
    color:#fff; font-weight:700; font-size: 12px;
    box-shadow: 0 10px 22px -6px rgba(14,42,85,.4);
    border: 3px solid #fff;
  }
  .pin.blue   { background: var(--brand); }
  .pin.coral  { background: var(--coral); }
  .pin.gold   { background: var(--gold); color: var(--ink);}
  .pin.mint   { background: var(--mint); }
  .pin.violet { background: var(--violet); }

  .float-bub{
    position:absolute; transform: translate(-50%,-50%);
    background:#fff; border-radius: 12px;
    padding: 6px 10px; font-size: 11px; font-weight:600; color: var(--ink);
    box-shadow: var(--shadow);
    display:flex; align-items:center; gap:6px;
    border:1px solid var(--line);
    white-space: nowrap;
  }
  .float-bub.coral{ background: var(--coral); color:#fff; border-color: var(--coral);}
  .float-bub.gold{ background: var(--gold); color: var(--ink); border-color: var(--gold);}
  .float-bub .ic{ width: 14px; height: 14px; }

  /* language switch */
  .lang-switch{
    display:flex; padding: 4px; background: var(--bg-2);
    border-radius: 999px; gap: 2px;
    margin-left: auto; margin-right: 16px;
  }
  .lang-btn{
    border:none; background: transparent; cursor:pointer;
    padding: 6px 12px; border-radius: 999px;
    font-family:'Sora'; font-weight:600; font-size: 12px; color: var(--muted);
    letter-spacing: .06em;
    transition: background .2s, color .2s;
  }
  .lang-btn.active{ background:#fff; color: var(--ink); box-shadow: var(--shadow-sm);}
  .lang-btn:hover:not(.active){ color: var(--ink); }

  @media (max-width: 960px){
    h1{ font-size: clamp(36px, 7vw, 52px); }
    h2{ font-size: clamp(27px, 5vw, 36px); }
    .wrap{ padding: 0 24px; }
    .nav-links{ display:none;}
    .nav-inner{ gap: 18px; height: 72px; }
    .hero{
      padding: 48px 0 70px;
    }
    .hero-grid,
    .feat,
    .about-grid,
    .contact-grid{
      grid-template-columns: 1fr;
      gap: 42px;
    }
    .hero-grid > div:first-child{
      max-width: 720px;
      width: 100%;
      margin: 0 auto;
      text-align: center;
    }
    .hero-sub{
      margin-left: auto;
      margin-right: auto;
      max-width: 620px;
    }
    .hero-cta,
    .hero-meta{
      justify-content: center;
    }
    .hero-vis{
      width: min(100%, 520px);
      max-width: 520px;
      margin: 8px auto 0;
    }
    .phone{
      right: 2%;
      bottom: -2%;
      width: 34%;
    }
    .feat.reverse{ direction: ltr; }
    .feat .visual{
      min-height: 320px;
      max-width: 640px;
      width: 100%;
      margin: 0 auto;
    }
    .services-3,
    .fraud-grid,
    .values{
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .about-grid > div:nth-child(2) > p{
      margin-top: 0 !important;
    }
    #iprn .wrap > div[style*="repeat(4"]{
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      margin-top: 52px !important;
    }
    .contact{
      margin-top: 24px;
      border-radius: 24px 24px 0 0;
    }
    .contact-grid{
      padding: 68px 0 58px;
    }
  }

  @media (max-width: 640px){
    h1{
      font-size: clamp(34px, 10vw, 42px);
      line-height: 1.08;
    }
    h2{
      font-size: clamp(26px, 8vw, 32px);
      line-height: 1.16;
    }
    h3{ font-size: 18px; }
    p{ line-height: 1.62; }
    .wrap{ padding: 0 20px; }
    section{ padding: 64px 0;}
    .nav-inner{
      height: 68px;
      gap: 10px;
    }
    .logo .wordmark .name{
      font-size: 16px;
      letter-spacing: .12em;
    }
    .logo .wordmark .sub{
      font-size: 8px;
      letter-spacing: .22em;
    }
    .lang-switch{
      margin-left: auto !important;
      margin-right: 2px;
      padding: 3px;
    }
    .lang-btn{
      padding: 6px 9px;
      font-size: 11px;
    }
    .nav .btn-blue{
      width: 44px;
      height: 44px;
      padding: 0;
      justify-content: center;
      flex: 0 0 auto;
    }
    .nav .btn-blue span{
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
    }
    .nav .btn-blue .arrow{
      width: 18px;
      height: 18px;
    }
    .hero{
      padding: 36px 0 54px;
      background:
        radial-gradient(520px 300px at 90% 6%, rgba(191,211,255,.5), transparent 62%),
        radial-gradient(420px 260px at 0% 84%, rgba(255,200,189,.23), transparent 64%),
        #fff;
    }
    .hero-grid{
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 28px;
      width: 100%;
      max-width: 100%;
    }
    .eyebrow{
      max-width: 100%;
      padding: 6px 12px;
      font-size: 10.5px;
      letter-spacing: .035em;
      white-space: normal;
    }
    .eyebrow > span:last-child{
      overflow-wrap: anywhere;
    }
    .hero h1{
      font-size: clamp(30px, 8.6vw, 34px);
      max-width: 100%;
      overflow-wrap: break-word;
      text-wrap: balance;
    }
    .hero-sub{
      font-size: 16px;
      margin-top: 16px;
      margin-bottom: 24px;
      max-width: 100%;
    }
    .hero-cta{
      align-items: stretch;
      width: 100%;
    }
    .hero-cta .btn{
      flex: 1 1 100%;
      justify-content: center;
      min-height: 48px;
      max-width: 100%;
    }
    .hero-meta{
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 22px 16px;
      margin-top: 32px;
      text-align: center;
      width: 100%;
      max-width: 100%;
    }
    .hero-meta .stat .num{
      font-size: 26px;
    }
    .hero-meta .stat .lbl{
      font-size: 11px;
      letter-spacing: .07em;
    }
    .hero-vis{
      width: min(100%, 360px);
      max-width: calc(100vw - 40px);
      margin-top: 4px;
    }
    .hero-vis svg{
      overflow: hidden;
    }
    .pin{
      width: 30px;
      height: 30px;
      border-width: 2px;
      font-size: 10px;
    }
    .float-bub{
      padding: 5px 8px;
      font-size: 9.5px;
      border-radius: 10px;
      gap: 4px;
      max-width: 126px;
    }
    .float-bub .ic{
      width: 12px;
      height: 12px;
      flex: 0 0 auto;
    }
    .hero-vis > .float-bub:last-of-type{ left: 20% !important; top: 16% !important; }
    .wave{ height: 46px; }
    .sec-head{
      margin-bottom: 34px;
      text-align: left;
    }
    .sec-head .eyebrow{
      margin-bottom: 14px;
    }
    .sec-head p{
      font-size: 15.5px;
    }
    .services-3,
    .fraud-grid,
    .values,
    .foot-grid{
      grid-template-columns: 1fr;
    }
    .svc,
    .fcard,
    .value{
      padding: 24px;
      border-radius: 16px;
    }
    .svc-icon{
      width: 52px;
      height: 52px;
      border-radius: 15px;
      margin-bottom: 18px;
    }
    .feat{
      gap: 30px;
    }
    .feat .copy li{
      font-size: 14.5px;
      gap: 10px;
    }
    .feat .visual{
      aspect-ratio: auto;
      min-height: 270px;
      padding: 20px;
      border-radius: 18px;
    }
    .sms-thread{
      max-width: 300px;
    }
    .sms{
      max-width: 86%;
    }
    .dialpad{
      width: 100%;
      max-width: 280px;
      padding: 18px;
      border-radius: 18px;
    }
    .dial-display{
      font-size: 18px;
      word-break: break-word;
    }
    #iprn .wrap > div[style*="repeat(4"]{
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 24px 16px !important;
      margin-top: 42px !important;
    }
    #iprn .wrap > div[style*="repeat(4"] > div > div:first-child{
      font-size: 32px !important;
    }
    #iprn .wrap > div[style*="repeat(4"] > div > div:last-child{
      font-size: 11px !important;
      letter-spacing: .06em !important;
    }
    .about-grid{
      gap: 24px;
    }
    .contact{
      margin-left: -20px;
      margin-right: -20px;
      border-radius: 22px 22px 0 0;
    }
    .contact .wrap{
      padding: 0 20px;
    }
    .contact .speech{
      left: 24px;
      width: 62px;
      height: 50px;
      border-radius: 12px;
    }
    .contact-grid{
      gap: 28px;
      padding: 62px 0 44px;
    }
    .form{
      padding: 20px;
      border-radius: 18px;
    }
    .form-row{
      grid-template-columns: 1fr;
      gap: 0;
    }
    .field{
      min-width: 0;
      font-size: 16px;
    }
    .form-foot{
      align-items: stretch;
    }
    .form-foot .btn{
      width: 100%;
      justify-content: center;
    }
    .check-line{
      align-items: flex-start;
    }
    .checkbox{
      flex: 0 0 auto;
      margin-top: 2px;
    }
    .foot-grid{
      gap: 28px;
      margin-bottom: 30px;
    }
    .foot-bottom{
      display: grid;
      gap: 8px;
    }
  }

  @media (max-width: 380px){
    .wrap{ padding: 0 16px; }
    .hero-grid > div:first-child{
      max-width: calc(100vw - 32px);
    }
    .logo .wordmark .name{ font-size: 14px; }
    .logo .wordmark .sub{ display:none; }
    .nav-inner{ gap: 8px; }
    .lang-btn{ padding: 5px 8px; }
    .nav .btn-blue{
      width: 40px;
      height: 40px;
    }
    .contact{
      margin-left: -16px;
      margin-right: -16px;
    }
    .contact .wrap{
      padding: 0 16px;
    }
    .hero-vis{ width: min(100%, 328px); }
    .float-bub{
      max-width: 112px;
      font-size: 9px;
    }
    #iprn .wrap > div[style*="repeat(4"]{
      grid-template-columns: 1fr !important;
    }
  }

  /* ---------- GOLD / DARK THEME OVERRIDES ---------- */
  body{
    background:
      radial-gradient(1200px 600px at 50% -10%, rgba(214,161,90,.07), transparent 55%),
      radial-gradient(900px 520px at 50% 120%, rgba(214,161,90,.06), transparent 60%),
      var(--bg);
    color: var(--ink);
  }
  .nav{
    background: rgba(6,6,6,.88);
    border-bottom: 1px solid rgba(214,161,90,.12);
  }
  .brand-logo{display:flex; align-items:center;}
  .brand-logo img{
    display:block;
    width: min(190px, 100%);
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 8px 20px rgba(214,161,90,.15));
  }
  .footer-logo img{ width: min(220px, 100%); height: auto; }
  .nav-links a{ color: var(--ink-2); }

  .wave{ display:none !important; }
  .hero{ padding-bottom: 74px; }
  section + section{ border-top: 0; }
  .hero{
    background:
      radial-gradient(1000px 540px at 85% 8%, rgba(214,161,90,.13), transparent 58%),
      radial-gradient(760px 420px at 8% 88%, rgba(214,161,90,.10), transparent 56%),
      linear-gradient(180deg, #060606 0%, #0A0908 100%);
  }
  h1,h2,h3,h4,h5{ color: var(--ink); }
  p{ color: var(--ink-2); }
  .hero-sub, .sec-head p, .svc p, .fcard p, .value p, .feat .copy li, .feat .copy p{ color: var(--ink-2); }
  .eyebrow{
    background: rgba(255,255,255,.02);
    border-color: rgba(214,161,90,.18);
    color: var(--brand-2);
  }
  .eyebrow .dot{
  background: #3DDC84;
  box-shadow: 0 0 0 4px rgba(61,220,132,.18);
}
  .hero h1 .accent,
  .hero h1 .accent-coral,
  .feat .copy h2 .accent,
  .more,
  .nav-links a.active,
  .nav-links a:hover{ color: var(--gold); }
  .btn-coral,
  .btn-blue{
    background: linear-gradient(180deg, #F0C785 0%, #B77A34 100%);
    color: #120D07;
    box-shadow: 0 10px 24px -10px rgba(214,161,90,.45);
  }
  .btn-ghost{
    color: var(--ink);
    border-color: rgba(214,161,90,.22);
    background: rgba(255,255,255,.02);
  }
  .btn-ghost:hover{ border-color: var(--gold); color: var(--gold); }
  .panel-sky, .panel-sky-2, section{ background-color: transparent; }
  .svc, .fcard, .value, .form, .ipath, .feat .visual, .dialpad{
    background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
    border-color: rgba(214,161,90,.14);
    box-shadow: 0 20px 40px -28px rgba(0,0,0,.75);
  }
  .contact{ background:
      radial-gradient(1200px 500px at 50% -20%, rgba(214,161,90,.22), transparent 60%),
      linear-gradient(180deg, #060606 0%, #0A0908 100%);
  }
  .field{
    background: rgba(255,255,255,.04);
    color: var(--ink);
    border: 1px solid rgba(214,161,90,.14);
  }
  .field::placeholder{ color: #b8a07a; }
  .lang-switch{ background: rgba(255,255,255,.03); border: 1px solid rgba(214,161,90,.14); }
  .lang-btn.active{ background: rgba(214,161,90,.12); color: var(--gold); box-shadow: none; }
  .lang-btn:hover:not(.active){ color: var(--gold); }
  .sms.in, .dial-display, .fcard .ic{ background: rgba(214,161,90,.10); color: var(--ink); border: 1px solid rgba(214,161,90,.14); }
  .sms.out{ background: linear-gradient(180deg, #E8B773 0%, #B77A34 100%); color: #120D07; }
  .float-bub{
    background: rgba(10,10,10,.85);
    color: var(--gold);
    border-color: rgba(214,161,90,.20);
    box-shadow: 0 12px 26px rgba(0,0,0,.45);
  }
  .float-bub .ic{ stroke: var(--gold) !important; }
  .pin.blue, .pin.coral, .pin.gold, .pin.mint, .pin.violet{
    background: linear-gradient(180deg, #F0C785 0%, #B77A34 100%);
    color: #120D07;
    border-color: rgba(255,244,227,.92);
  }
  .svc-icon.blue, .svc-icon.gold, .svc-icon.coral,
  .checkbox, .ipath .ic, .ipath .ic.coral, .ipath .ic.mint{
    background: linear-gradient(180deg, #F0C785 0%, #B77A34 100%);
    color: #120D07;
    box-shadow: 0 12px 22px -10px rgba(214,161,90,.40);
  }
  .hero-meta .stat .num{ color: var(--gold); }
  .hero-meta .stat .lbl{ color: var(--muted); }
  .globe-stage, #globe{ filter: saturate(.85); }
  footer{ background: #050505; }
  .foot-bottom{ border-top-color: rgba(214,161,90,.12); }
  @media (max-width: 640px){
    .brand-logo img{ width: 130px; height: auto; }
    .footer-logo img{ width: 170px; height: auto; }
    .nav-inner{ align-items: center; }
  }


  .bulk-card-title{ color:#8A663A !important; }
  .bulk-card-sub{ color:#9B7647 !important; }
  .bulk-country-row, .bulk-country-row span{ color:#8A663A !important; }
  .bulk-country-row{ font-weight: 500; }



  /* ---------- Requested layout refinements ---------- */
  .contact .speech{ display:none !important; }

  @media (min-width: 961px){
    .contact-grid{
      grid-template-columns: 1fr 1.1fr;
      grid-template-areas:
        "intro intro"
        "paths form";
      row-gap: 28px;
      align-items:start;
      padding-top: 74px;
    }
    .contact-intro{ grid-area: intro; max-width: 980px; }
    .contact-intro p{ max-width: 980px !important; font-size: 17px; }
    .contact-left{ grid-area: paths; }
    .contact-left .inquiry-paths{ margin-top: 0; }
    .contact-grid > .form{ grid-area: form; margin-top: 0; }
  }

  @media (max-width: 640px){
    .value{
      display: grid;
      grid-template-columns: 44px 1fr;
      gap: 10px 14px;
      align-items: center;
    }
    .value .iso{
      width: 40px;
      height: 40px;
      margin: 0;
      grid-column: 1;
      grid-row: 1;
    }
    .value .iso-chip{
      margin: 0;
    }
    .value h3{
      grid-column: 2;
      grid-row: 1;
      margin: 0;
      font-size: 17px;
    }
    .value p{
      grid-column: 2;
      grid-row: 2;
    }
    .feat .copy > .btn.btn-coral{
      width: 100%;
      justify-content: center;
      min-height: 48px;
    }
    footer{ padding: 36px 0 24px; }
    .foot-grid{
      grid-template-columns: 1.15fr .85fr !important;
      gap: 24px 24px;
      align-items:start;
    }
    .foot-grid > div:first-child{
      grid-column: 1 / -1;
    }
    .foot-grid > div:nth-child(2),
    .foot-grid > div:nth-child(3){
      min-width: 0;
    }
    footer h5{ margin-bottom: 12px; }
    footer ul{ gap: 8px; }
  }

  @media (max-width: 380px){
    .foot-grid{ grid-template-columns: 1fr 1fr !important; gap: 22px 18px; }
  }

  /* ---------- Final visual refinements requested ---------- */
  #contact{ background: transparent !important; }
  .contact{
    background: transparent !important;
    margin-top: 0;
    border-radius: 0;
  }

  .hero-vis{ aspect-ratio: 1 / 1; }
  .hero-vis svg{ overflow: visible; }
  #globe{ transform-box: fill-box; transform-origin: center; }
  #ring{ transform-box: fill-box; transform-origin: center; }
  #ring circle{
    r: 210px;
    stroke-linecap: round;
    stroke-dasharray: 6 14;
    opacity: .58;
  }
  #arcs path{ stroke-linecap: round; }
  #arcs #arc1, #arcs #arc5{ stroke: #D6A15A; }
  #arcs #arc2{ stroke: #B8925C; }
  #arcs #arc3{ stroke: #E9B774; }
  #arcs #arc4{ stroke: #F0C785; }

  #iprn .visual{
    min-height: 560px;
    padding: 34px 28px;
    overflow: hidden;
  }
  #iprn .dialpad{
    width: min(100%, 300px);
    max-width: 300px;
    margin: auto;
    transform: scale(.88);
    transform-origin: center center;
  }

  @media (max-width: 640px){
    .hero-vis{ width: min(100%, 350px); }
    #ring circle{ r: 204px; }
    .pin{ transform: translate(-50%,-50%) scale(.92); }
    #iprn .visual{
      min-height: 500px;
      padding: 24px 18px;
    }
    #iprn .dialpad{
      width: min(100%, 280px);
      transform: scale(.86);
    }
  }


  /* ---------- Final requested refinements v5 ---------- */
  #p2p > .wrap > .section-eyebrow{
    margin-bottom: 24px;
  }
  #p2p .feat.reverse .copy > .eyebrow{
    display: none;
  }
  .contact > .wrap{
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }
  @media (max-width: 640px){
    #contact .contact > .wrap{
      padding-left: 20px !important;
      padding-right: 20px !important;
    }
  }

  #contact .contact-intro .eyebrow{
    margin-bottom: 20px;
  }

  #iprn .visual{
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #iprn .dialpad{
    margin: 0 !important;
  }


  /* Contact intro colors aligned with /about section */
  #contact .contact-intro .eyebrow{
    background: rgba(255,255,255,.02) !important;
    border-color: rgba(214,161,90,.18) !important;
    color: var(--brand-2) !important;
  }
  #contact .contact-intro h2{ color: var(--ink) !important; }
  #contact .contact-intro p{ color: var(--ink-2) !important; }

  /* Hero planet orbit: one clean rotating dashed ring with country labels */
  #arcs,
  #packets{
    display: none !important;
  }
  .country-orbit{
    position: absolute;
    left: 50%;
    top: 50%;
    width: 68%;
    aspect-ratio: 1 / 1;
    transform: translate(-50%, -50%);
    transform-origin: center;
    pointer-events: none;
  }
  .country-orbit .orbit-ring{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
  }
  .country-orbit .orbit-ring circle{
    fill: none;
    stroke: rgba(214,161,90,.78);
    stroke-width: 0.55px;
    stroke-linecap: butt;
    stroke-dasharray: 7 6;
  }
  .country-orbit .pin{
    position: absolute;
    transform-origin: center;
  }
  @media (max-width: 640px){
    .country-orbit{ width: 72%; }
  }


  /* ---------- Accessibility refinements ---------- */
  .sr-only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
  }
  a:focus-visible,
  button:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible{
    outline:2px solid var(--gold);
    outline-offset:3px;
  }
  .nav-links a{
    display:inline-flex;
    align-items:center;
    min-height:40px;
  }
  footer a{
    display:inline-flex;
    align-items:center;
    min-height:24px;
  }
  .ipath h3{ color:#fff; margin: 0 0 2px; font-size: 15px;}
  .bulk-card-sub,
  .bulk-country-row,
  .bulk-country-row span,
  [data-i18n="bulk.d.live"]{
    color:#6F4E25 !important;
  }

