*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:#fff;color:#111;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6,.font-head{font-family:'Sora',sans-serif;}
:root{--brand:#1E90C3;--brand-mid:#2aaae0;--brand-dark:#155e86;--brand-deeper:#0d3f5a;--brand-light:#e8f5fc;--deep:#06131d;}
.container{max-width:1280px;margin:0 auto;padding:0 1.5rem;}
.btn-primary{display:inline-block;background:var(--brand);color:#fff;font-family:'Sora',sans-serif;font-weight:700;padding:.75rem 1.75rem;border-radius:10px;border:none;cursor:pointer;transition:all .2s;text-decoration:none;font-size:.9rem;}
.btn-primary:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:0 8px 24px rgba(30,144,195,.3);}
.btn-white{display:inline-block;background:#fff;color:var(--brand);font-family:'Sora',sans-serif;font-weight:700;padding:.75rem 1.75rem;border-radius:10px;border:none;cursor:pointer;transition:all .2s;text-decoration:none;font-size:.9rem;}
.btn-white:hover{background:#f0f9ff;}
.btn-outline{display:inline-block;border:1.5px solid rgba(255,255,255,.3);color:#fff;font-family:'Sora',sans-serif;font-weight:700;padding:.75rem 1.75rem;border-radius:10px;cursor:pointer;transition:all .2s;text-decoration:none;font-size:.9rem;background:transparent;}
.btn-outline:hover{background:rgba(255,255,255,.1);}
.section-label{font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--brand);}
.glass{background:rgba(255,255,255,.07);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.13);}
.hero-bg{position:relative;background:var(--deep);overflow:hidden;}
.hero-worldmap{position:absolute;inset:0;background-image:url('https://upload.wikimedia.org/wikipedia/commons/8/80/World_map_-_low_resolution.svg');background-size:90% auto;background-position:center;background-repeat:no-repeat;opacity:.07;filter:invert(1) brightness(2) sepia(1) saturate(3) hue-rotate(185deg);}
.hero-gradient{position:absolute;inset:0;background:radial-gradient(ellipse at 25% 50%,rgba(30,144,195,.22) 0%,transparent 55%),radial-gradient(ellipse at 80% 80%,rgba(13,63,90,.5) 0%,transparent 50%),linear-gradient(135deg,#06131d 0%,#091f2f 45%,#0d3f5a 100%);}
.hero-grid{position:absolute;inset:0;opacity:.025;background-image:linear-gradient(rgba(255,255,255,1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,1) 1px,transparent 1px);background-size:44px 44px;}
.hero-orb-1{position:absolute;top:-60px;left:80px;width:300px;height:300px;background:var(--brand);border-radius:50%;opacity:.08;filter:blur(60px);}
.hero-orb-2{position:absolute;bottom:-40px;right:260px;width:200px;height:200px;background:var(--brand-mid);border-radius:50%;opacity:.07;filter:blur(50px);}
.hero-photo{position:absolute;right:0;top:0;bottom:0;width:44%;overflow:hidden;}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;opacity:.55;}
.hero-photo-fade{position:absolute;inset:0;background:linear-gradient(to right,#06131d 0%,rgba(6,19,29,.65) 35%,rgba(6,19,29,.1) 85%);}
.hero-photo-bottom{position:absolute;bottom:0;left:0;right:0;height:180px;background:linear-gradient(to top,#06131d,transparent);}
.plan-card{background:#fff;border-radius:18px;border:1.5px solid #f0f0f0;overflow:hidden;transition:all .25s;}
.plan-card:hover{border-color:var(--brand);transform:translateY(-5px);box-shadow:0 16px 48px rgba(30,144,195,.15);}
.form-input{width:100%;border:1.5px solid #e5e7eb;border-radius:10px;padding:.75rem 1rem;font-family:'DM Sans',sans-serif;font-size:.875rem;outline:none;transition:border-color .2s;background:#fff;}
.form-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(30,144,195,.1);}
.form-label{font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:500;color:#374151;display:block;margin-bottom:6px;}
.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;border-radius:10px;padding:12px 16px;font-size:.875rem;margin-bottom:1rem;}
.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:10px;padding:12px 16px;font-size:.875rem;margin-bottom:1rem;}
.chip{background:rgba(255,255,255,.06);border:.5px solid rgba(255,255,255,.12);border-radius:10px;padding:6px 12px;display:inline-flex;align-items:center;gap:6px;transition:all .2s;text-decoration:none;flex-shrink:0;}
.chip:hover{background:rgba(30,144,195,.15);border-color:rgba(30,144,195,.4);}
.float-badge{border-radius:12px;padding:8px 12px;display:flex;align-items:center;gap:8px;white-space:nowrap;position:absolute;}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.float-1{animation:floatY 4s ease-in-out infinite;}
.float-2{animation:floatY 4s ease-in-out infinite;animation-delay:2s;}
.phone-wrap{width:150px;background:linear-gradient(180deg,#1a1a2e,#16213e);border-radius:28px;border:3px solid rgba(255,255,255,.1);overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,.8),0 0 60px rgba(30,144,195,.15);}
.phone-screen{background:linear-gradient(180deg,#081e2e,#0d3f5a);padding:10px;}
.status-badge{font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:20px;display:inline-block;}
.badge-active{background:#dcfce7;color:#166534;}
.badge-pending{background:#fef9c3;color:#854d0e;}
.badge-failed{background:#fee2e2;color:#991b1b;}
.badge-delivered{background:#dbeafe;color:#1e40af;}
@media(max-width:768px){
  .hero-photo{display:none;}
  .hero-grid-2col{grid-template-columns:1fr!important;}
  .hide-mobile{display:none!important;}
}

/* ===== GLOBAL MOBILE FIXES ===== */
@media(max-width:768px){
  /* Prevent iOS input zoom */
  input,select,textarea{font-size:16px !important;}

  /* Stack all grids on mobile */
  div[style*="grid-template-columns:1fr 360px"],
  div[style*="grid-template-columns:1fr 320px"],
  div[style*="grid-template-columns:1fr 340px"],
  div[style*="grid-template-columns:2fr 1fr"],
  div[style*="grid-template-columns:320px 1fr"]{
    grid-template-columns:1fr !important;
  }

  /* Container padding */
  .container{
    padding-left:1rem !important;
    padding-right:1rem !important;
  }

  /* Hero section */
  .hero-section .container > div{
    grid-template-columns:1fr !important;
  }
  .hero-section .container > div > div:last-child{
    display:none !important;
  }

  /* Hide desktop-only elements */
  .hide-mobile{display:none !important;}
  .show-mobile{display:block !important;}

  /* Full width buttons on mobile */
  section .btn-primary, section a.btn-primary{
    display:block;
    text-align:center;
    width:100%;
    box-sizing:border-box;
  }

  /* Checkout specific */
  .checkout-grid{grid-template-columns:1fr !important;}
  .checkout-grid > div:last-child{order:-1;}
  .name-grid{grid-template-columns:1fr !important;}

  /* Shop cards */
  div[style*="grid-template-columns:repeat(auto-fill"]{
    grid-template-columns:repeat(2,1fr) !important;
  }

  /* Country page plan cards */
  div[style*="grid-template-columns:auto 1fr auto auto"]{
    grid-template-columns:auto 1fr !important;
  }
  div[style*="grid-template-columns:auto 1fr auto auto"] > div:nth-child(3),
  div[style*="grid-template-columns:auto 1fr auto auto"] > div:nth-child(4){
    grid-column:2;
  }

  /* Typography */
  h1{font-size:2rem !important;}
  h2{font-size:1.6rem !important;}
}
