/* ===================================================================
   Graphos Security — PREMIUM VISUAL LAYER
   Loaded after main.css + navbar.css to override template aesthetics
   =================================================================== */

/* ─── Enhanced Variables ─── */
:root{
  --trans:0.3s cubic-bezier(0.4,0,0.2,1);
  --glass:rgba(255,255,255,0.045);
  --glass-hover:rgba(255,255,255,0.09);
  --surface-elevated:rgba(40,0,70,0.5);
}

/* ─── Noise Texture Overlay ─── */
.noise-overlay{
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  opacity:0.025;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ─── Background Depth ─── */
body::before{
  background:
    radial-gradient(ellipse 80% 60% at 20% 10%,rgba(120,0,200,0.18) 0%,transparent 60%),
    radial-gradient(ellipse 60% 50% at 80% 80%,rgba(255,0,180,0.08) 0%,transparent 55%),
    radial-gradient(ellipse 50% 40% at 50% 50%,rgba(80,0,160,0.08) 0%,transparent 70%),
    var(--bg)!important;
  animation:bgDrift 25s ease-in-out infinite alternate!important;
}
@keyframes bgDrift{
  0%{filter:hue-rotate(0deg) brightness(1)}
  50%{filter:hue-rotate(8deg) brightness(1.02)}
  100%{filter:hue-rotate(-5deg) brightness(0.98)}
}

/* ─── Typography Upgrades ─── */
.text-gradient{animation:gradShift 10s ease infinite}
a:hover{color:var(--primary-light)}
:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--radius-sm)}
.hero-title{color:#fff;letter-spacing:-0.04em}
.section-eyebrow{padding-left:1rem;border-left:2px solid var(--primary)}

/* ─── Hero — Immersive ─── */
.hero{
  background:radial-gradient(ellipse 70% 50% at 30% 40%,rgba(120,0,200,0.18) 0%,transparent 70%);
  min-height:min(calc(100vh - var(--nav-h)),900px);
}
.hero-eyebrow{
  background:linear-gradient(90deg,rgba(180,0,255,0.12) 30%,rgba(255,0,204,0.15) 50%,rgba(180,0,255,0.12) 70%)!important;
  background-size:200% 100%!important;
  animation:eyebrowShimmer 4s ease infinite;
  box-shadow:0 0 15px rgba(180,0,255,0.12);
}
@keyframes eyebrowShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

.hero-stats{padding-top:2.5rem;margin-top:0.5rem}
.hero-ring,.ring{border:1px solid rgba(180,0,255,0.3)!important}
@keyframes ringPulse{0%,100%{transform:scale(1);opacity:0.5}50%{transform:scale(1.06);opacity:1}}

/* Floating badges */
.hero-floating-badge{
  position:absolute;display:flex;align-items:center;gap:0.6rem;
  padding:0.55rem 1rem;border-radius:999px;
  background:rgba(12,0,25,0.85);border:1px solid rgba(160,0,255,0.2);
  backdrop-filter:blur(16px);
  font-size:0.78rem;font-weight:600;color:var(--text);
  animation:badgeFloat 6s ease-in-out infinite;
  box-shadow:0 4px 24px rgba(0,0,0,0.4);
  white-space:nowrap;
}
.badge-top-left{top:12%;left:-5%;animation-delay:0s}
.badge-bottom-right{bottom:18%;right:-8%;animation-delay:-3s}
.badge-icon{display:flex;align-items:center;justify-content:center}
.badge-icon svg{width:18px;height:18px}
@keyframes badgeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* Scroll indicator */
.hero-scroll-indicator{
  position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:0.5rem;
}
.scroll-line{
  width:1px;height:40px;
  background:linear-gradient(to bottom,var(--primary),transparent);
  animation:scrollPulse 2s ease-in-out infinite;
}
@keyframes scrollPulse{0%,100%{opacity:0.3;transform:scaleY(0.6)}50%{opacity:1;transform:scaleY(1)}}

/* ─── Cards — Depth & Texture ─── */
.card,.product-card{
  box-shadow:0 2px 12px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.04);
  will-change:transform;
  transition:all 0.35s cubic-bezier(0.34,1.56,0.64,1);
}
.card:hover{transform:translateY(-6px)}
.product-card:hover{
  box-shadow:0 12px 50px rgba(120,0,255,0.25),0 0 0 1px rgba(180,0,255,0.25),inset 0 1px 0 rgba(255,255,255,0.06);
}
.glass-card{
  background:rgba(255,255,255,0.025)!important;
  border:1px solid rgba(160,0,255,0.12)!important;
  backdrop-filter:blur(14px) saturate(140%)!important;
  box-shadow:0 4px 20px rgba(0,0,0,0.25),inset 0 1px 0 rgba(255,255,255,0.03);
}
.product-image-placeholder{
  background:radial-gradient(ellipse at center,rgba(120,0,200,0.2) 0%,rgba(80,0,160,0.08) 40%,transparent 70%),
    linear-gradient(135deg,var(--bg-3),var(--bg-2))!important;
}
.about-stat-card{box-shadow:0 4px 16px rgba(0,0,0,0.2)}

/* ─── Buttons — Premium feel ─── */
.btn{padding:0.75rem 1.8rem;border-radius:var(--radius-lg)}
.btn-primary{
  background:linear-gradient(135deg,var(--secondary) 0%,var(--primary) 50%,var(--accent) 100%)!important;
  box-shadow:0 4px 24px rgba(184,0,255,0.35)!important;
}
.btn-primary:hover{
  box-shadow:0 6px 32px rgba(184,0,255,0.5),0 0 60px rgba(255,0,204,0.15)!important;
  transform:translateY(-2px);
}
.btn::after{transition:left 0.75s cubic-bezier(0.25,0.46,0.45,0.94)}
.btn-secondary{background:rgba(180,0,255,0.06);backdrop-filter:blur(12px)}
.btn-lg{padding:1rem 2.5rem;font-size:1rem;border-radius:var(--radius-xl)}
.btn-xl{padding:1.15rem 3rem;font-size:1.05rem;border-radius:var(--radius-xl)}
.btn-cart{
  background:linear-gradient(135deg,var(--primary),var(--secondary))!important;
}

/* ─── Sections — Breathing room ─── */
.section{padding:6rem max(2rem,calc((100vw - 1400px)/2))}
.section-header{margin-bottom:3.5rem}
.products-grid{gap:1.75rem}
.featured-section{padding-top:6rem;padding-bottom:6rem}

/* ─── Features strip — Color variety ─── */
.feature-item:nth-child(1) .feature-icon{background:linear-gradient(135deg,rgba(180,0,255,0.2),rgba(120,0,255,0.2))}
.feature-item:nth-child(3) .feature-icon{background:linear-gradient(135deg,rgba(0,212,255,0.15),rgba(0,150,255,0.15))}
.feature-item:nth-child(5) .feature-icon{background:linear-gradient(135deg,rgba(255,170,0,0.15),rgba(255,120,0,0.15))}
.feature-item:nth-child(7) .feature-icon{background:linear-gradient(135deg,rgba(255,0,204,0.15),rgba(200,0,150,0.15))}
.feature-item:nth-child(3) .feature-icon svg{stroke:var(--cyan)}
.feature-item:nth-child(5) .feature-icon svg{stroke:var(--warning)}
.feature-item:nth-child(7) .feature-icon svg{stroke:var(--secondary)}

/* ─── Security cards — Color variety ─── */
.security-grid .card:nth-child(1) .security-icon{background:linear-gradient(135deg,rgba(180,0,255,0.2),rgba(120,0,255,0.15))}
.security-grid .card:nth-child(2) .security-icon{background:linear-gradient(135deg,rgba(0,212,255,0.18),rgba(0,150,255,0.12))}
.security-grid .card:nth-child(2) .security-icon svg{stroke:var(--cyan)}
.security-grid .card:nth-child(3) .security-icon{background:linear-gradient(135deg,rgba(255,0,204,0.15),rgba(200,0,150,0.1))}
.security-grid .card:nth-child(3) .security-icon svg{stroke:var(--secondary)}

/* ─── eSIM price card — Cyan accent ─── */


/* ─── Crypto badges — Subtle glow ─── */
.crypto-badge{
  background:rgba(180,0,255,0.08)!important;
  border:1px solid rgba(180,0,255,0.15)!important;
  transition:all 0.3s;
}
.crypto-badge:hover{
  background:rgba(180,0,255,0.15)!important;
  border-color:rgba(180,0,255,0.3)!important;
  box-shadow:0 0 8px rgba(180,0,255,0.2);
}


/* ─── Toast — Glass look ─── */
.toast{
  background:rgba(10,0,20,0.95)!important;
  backdrop-filter:blur(24px)!important;
  box-shadow:0 8px 40px rgba(0,0,0,0.5),0 0 0 1px rgba(160,0,255,0.15)!important;
}

/* ─── Responsive tweaks ─── */
@media(max-width:1024px){
  .hero-floating-badge{display:none}
}
@media(max-width:768px){
  .hero{min-height:auto;padding:3rem 1.25rem}
  .section{padding:3.5rem 1.25rem}
  .hero-scroll-indicator{display:none}
  .section-header{margin-bottom:2.5rem}
  .products-grid{gap:1rem}
  .section-eyebrow{padding-left:0.75rem}
}
@media(max-width:480px){
  .section{padding:2.5rem 0.75rem}
  .hero{padding:2rem 1rem}
  .btn-lg{padding:0.85rem 1.8rem;font-size:0.92rem}
  .products-grid{gap:0.75rem}
  .noise-overlay{display:none}
}


/* ===================================================================
   OVERFLOW FIX — Prevent horizontal scroll on all devices
   =================================================================== */
html{overflow-x:hidden!important}
html,body{max-width:100vw}
#__wrapper,.page-wrapper{overflow-x:hidden}

/* Clip orbs properly */
.orb{
  position:fixed!important;
  overflow:hidden;
}

/* ─── HERO TEXT — Impactful, not template ─── */
.hero{overflow:hidden!important;max-width:100vw}

.hero-title{
  font-size:clamp(2.2rem,6vw,4.5rem)!important;
  font-weight:900!important;
  line-height:1.05!important;
  letter-spacing:-0.035em!important;
  color:#fff!important;
  margin-bottom:1.5rem!important;
}
.hero-title .text-gradient{
  background:linear-gradient(135deg,#d44dff 0%,#ff00cc 40%,#ff4da6 100%)!important;
  -webkit-background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  background-clip:text!important;
}

/* Remove the glitch effect — cliche on security sites */
.hero-title .glitch{animation:none!important}
.hero-title .glitch::before,.hero-title .glitch::after{display:none!important}

.hero-subtitle,.hero-sub{
  font-size:clamp(0.95rem,2.2vw,1.15rem)!important;
  color:rgba(240,230,255,0.65)!important;
  line-height:1.75!important;
  max-width:540px!important;
  margin-bottom:2.5rem!important;
  font-weight:400!important;
}

.hero-eyebrow{
  font-size:0.7rem!important;
  letter-spacing:0.18em!important;
  padding:0.45rem 1.15rem!important;
  margin-bottom:1.75rem!important;
  border:1px solid rgba(180,0,255,0.2)!important;
}

/* Hero CTA buttons — mobile stack */
.hero-cta,.hero-ctas{
  gap:0.85rem!important;
  margin-bottom:3rem!important;
}

/* Hero stats — cleaner */
.stat-item{text-align:center}
.stat-number{
  font-size:clamp(1.4rem,3vw,1.8rem)!important;
  font-weight:800!important;
  display:block!important;
}
.stat-label{
  font-size:0.72rem!important;
  text-transform:uppercase!important;
  letter-spacing:0.08em!important;
  color:rgba(153,102,187,0.8)!important;
  margin-top:0.2rem!important;
  display:block!important;
}
.hero-stats{
  gap:2.5rem!important;
  padding-top:2.5rem!important;
  border-top:1px solid rgba(160,0,255,0.12)!important;
}

/* ─── MOBILE HERO — Perfect ─── */
@media(max-width:768px){
  .hero{
    padding:2.5rem 1.5rem!important;
    text-align:center!important;
    min-height:auto!important;
  }
  .hero-container{flex-direction:column}
  .hero-content{max-width:100%;text-align:center}
  .hero-title{font-size:clamp(1.75rem,7vw,2.5rem)!important;margin-bottom:1rem!important}
  .hero-subtitle,.hero-sub{
    text-align:center!important;
    margin-left:auto!important;margin-right:auto!important;
    font-size:0.92rem!important;
    margin-bottom:2rem!important;
  }
  .hero-eyebrow{
    justify-content:center!important;
    font-size:0.62rem!important;
    padding:0.4rem 0.9rem!important;
    margin-bottom:1.25rem!important;
    display:inline-flex!important;
  }
  /* Center the eyebrow */
  .hero-content{display:flex;flex-direction:column;align-items:center}

  .hero-cta,.hero-ctas{
    flex-direction:column!important;
    width:100%!important;
    align-items:stretch!important;
  }
  .hero-cta .btn,.hero-ctas .btn{
    width:100%!important;
    justify-content:center!important;
    padding:0.9rem 1.5rem!important;
    font-size:0.95rem!important;
  }
  .hero-stats{
    justify-content:center!important;
    gap:1.75rem!important;
    padding-top:2rem!important;
  }
  .stat-divider{display:none!important}
  .stat-number{font-size:1.3rem!important}
  .stat-label{font-size:0.65rem!important}

  /* Hide visual elements on mobile */
  .hero-visual,.hero-rings,.hero-floating-badge{display:none!important}
  .hero-scroll-indicator{display:none!important}

  /* Fix orbs on mobile */
  .orb{opacity:0.4!important}
  .orb-1{left:-200px!important;top:-200px!important}
  .orb-2{right:-200px!important}
}

@media(max-width:480px){
  .hero{padding:2rem 1rem!important}
  .hero-title{font-size:1.6rem!important}
  .hero-subtitle,.hero-sub{font-size:0.85rem!important;margin-bottom:1.75rem!important}
  .hero-eyebrow{font-size:0.58rem!important;padding:0.35rem 0.75rem!important}
  .hero-cta .btn,.hero-ctas .btn{padding:0.8rem 1.25rem!important;font-size:0.9rem!important}
  .hero-stats{gap:1.25rem!important}
  .stat-number{font-size:1.15rem!important}
  .stat-label{font-size:0.6rem!important}
}

@media(max-width:360px){
  .hero{padding:1.75rem 0.75rem!important}
  .hero-title{font-size:1.4rem!important}
  .hero-subtitle,.hero-sub{font-size:0.82rem!important}
  .hero-cta .btn,.hero-ctas .btn{padding:0.75rem 1rem!important;font-size:0.85rem!important}
}


/* ===================================================================
   FOOTER — Premium Redesign
   =================================================================== */

.footer{
  position:relative;
  background:rgba(4,0,10,0.97)!important;
  border-top:none!important;
  padding:0!important;
  overflow:hidden;
}
.footer-glow{
  position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(180,0,255,0.4),rgba(255,0,204,0.3),rgba(0,212,255,0.2),transparent);
}
.footer-inner{
  padding:4rem max(2rem,calc((100vw - 1400px)/2)) 2rem;
  position:relative;
}
.footer-grid{
  display:grid!important;
  grid-template-columns:1.8fr 1fr 1fr 1fr!important;
  gap:3rem!important;
  margin-bottom:0!important;
}

/* Brand column */
.footer-brand{display:flex;flex-direction:column;gap:0}
.footer-brand .nav-logo{margin-bottom:1.25rem}
.footer-brand .nav-logo-img{height:38px}
.footer-tagline{
  font-size:0.85rem;
  color:rgba(153,102,187,0.7);
  line-height:1.7;
  max-width:300px;
  margin-bottom:1.5rem;
}
.footer-trust{display:flex;flex-direction:column;gap:0.5rem}
.footer-trust-item{
  display:flex;align-items:center;gap:0.5rem;
  font-size:0.78rem;
  color:rgba(0,255,170,0.7);
  font-weight:500;
}
.footer-trust-item svg{flex-shrink:0;opacity:0.8}

/* Columns */
.footer-col h5{
  font-size:0.68rem!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:0.18em!important;
  color:rgba(212,77,255,0.6)!important;
  margin-bottom:1.25rem!important;
  padding-bottom:0.75rem;
  border-bottom:1px solid rgba(160,0,255,0.08);
}
.footer-links{display:flex;flex-direction:column;gap:0.65rem}
.footer-links a{
  font-size:0.85rem!important;
  color:rgba(240,230,255,0.45)!important;
  transition:all 0.3s!important;
  text-decoration:none;
  position:relative;
  padding-left:0;
}
.footer-links a:hover{
  color:rgba(240,230,255,0.9)!important;
  padding-left:0.5rem;
}

/* Crypto items */
.footer-crypto{display:flex;flex-direction:column;gap:0.5rem}
.footer-crypto-item{
  display:flex;align-items:center;gap:0.6rem;
  font-size:0.82rem;
  color:rgba(240,230,255,0.4);
  transition:color 0.3s;
}
.footer-crypto-item:hover{color:rgba(240,230,255,0.85)}
.crypto-icon-sm{
  width:28px;height:28px;
  display:flex;align-items:center;justify-content:center;
  border-radius:8px;
  background:rgba(180,0,255,0.08);
  border:1px solid rgba(160,0,255,0.12);
  font-size:0.85rem;font-weight:700;
  color:var(--primary-light);
  flex-shrink:0;
  transition:all 0.3s;
}
.footer-crypto-item:hover .crypto-icon-sm{
  background:rgba(180,0,255,0.15);
  border-color:rgba(180,0,255,0.3);
  box-shadow:0 0 10px rgba(180,0,255,0.2);
}

/* Separator */
.footer-separator{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(160,0,255,0.12),transparent);
  margin:3rem 0 1.5rem;
}

/* Bottom bar */
.footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  border-top:none!important;
  padding-top:0!important;
  margin-top:0!important;
}
.footer-copy{
  font-size:0.75rem!important;
  color:rgba(90,58,119,0.6)!important;
}
.footer-bottom-links{
  display:flex;align-items:center;gap:0.75rem;
}
.footer-bottom-links a{
  font-size:0.75rem;
  color:rgba(90,58,119,0.5);
  text-decoration:none;
  transition:color 0.3s;
}
.footer-bottom-links a:hover{color:var(--primary-light)}
.footer-dot{
  color:rgba(90,58,119,0.3);
  font-size:0.6rem;
}

/* ─── Footer Mobile ─── */
@media(max-width:1024px){
  .footer-grid{grid-template-columns:1fr 1fr!important;gap:2.5rem!important}
}
@media(max-width:768px){
  .footer-inner{padding:3rem 1.25rem 1.5rem}
  .footer-grid{grid-template-columns:1fr!important;gap:2rem!important}
  .footer-tagline{max-width:100%}
  .footer-trust{flex-direction:row;gap:1.25rem;flex-wrap:wrap}
  .footer-crypto{flex-direction:row;flex-wrap:wrap;gap:0.5rem}
  .footer-crypto-item{
    padding:0.4rem 0.75rem;
    background:rgba(180,0,255,0.05);
    border:1px solid rgba(160,0,255,0.08);
    border-radius:8px;
    font-size:0.78rem;
  }
  .crypto-icon-sm{width:24px;height:24px;font-size:0.75rem}
  .footer-separator{margin:2rem 0 1.25rem}
  .footer-bottom{
    flex-direction:column!important;
    align-items:center!important;
    text-align:center;
    gap:0.75rem;
  }
}
@media(max-width:480px){
  .footer-inner{padding:2.5rem 1rem 1.25rem}
  .footer-grid{gap:1.5rem!important}
  .footer-brand .nav-logo-img{height:32px}
  .footer-tagline{font-size:0.8rem}
  .footer-col h5{font-size:0.62rem!important;margin-bottom:0.75rem!important;padding-bottom:0.5rem}
  .footer-links a{font-size:0.8rem!important}
  .footer-links{gap:0.5rem}
  .footer-copy{font-size:0.7rem!important}
  .footer-bottom-links a{font-size:0.7rem}
}


/* ===================================================================
   eSIM PAGE — Premium Polish
   =================================================================== */
.esim-hero{background:radial-gradient(ellipse 60% 50% at 50% 60%,rgba(120,0,200,0.15) 0%,transparent 70%)!important;text-align:center}
.esim-hero h1{font-size:clamp(2.5rem,8vw,5rem)!important;font-weight:900!important;letter-spacing:-0.04em!important;line-height:1.05!important;color:#fff!important}
.esim-hero p{color:rgba(240,230,255,0.55)!important;font-size:clamp(0.9rem,2vw,1.05rem)!important;line-height:1.7!important;max-width:550px!important;margin:1rem auto 0!important}
.esim-hero-badge{background:rgba(255,255,255,0.03)!important;border:1px solid rgba(160,0,255,0.15)!important;backdrop-filter:blur(8px);font-size:0.78rem!important;padding:0.45rem 1rem!important;transition:all 0.3s}
.esim-hero-badge:hover{background:rgba(180,0,255,0.08)!important;border-color:rgba(180,0,255,0.3)!important}

.how-steps{background:rgba(18,0,35,0.4)!important;border:1px solid rgba(160,0,255,0.08)!important;border-radius:16px!important;overflow:hidden}
.how-step{padding:2rem 1.25rem!important;border-right:1px solid rgba(160,0,255,0.06);transition:background 0.3s}
.how-step:last-child{border-right:none}
.how-step:hover{background:rgba(180,0,255,0.03)}
.how-step-num{width:40px!important;height:40px!important;font-size:1rem!important;box-shadow:0 4px 16px rgba(184,0,255,0.25)!important}
.how-step-icon svg{width:28px;height:28px;stroke:rgba(212,77,255,0.5)}
.how-step h4{font-size:0.95rem!important}
.how-step p{font-size:0.78rem!important;color:rgba(153,102,187,0.6)!important}
.how-step:not(:last-child)::after{color:rgba(180,0,255,0.25)!important;font-size:1.2rem!important}

.esim-steps-bar{background:rgba(14,0,28,0.7)!important;border:1px solid rgba(160,0,255,0.1)!important;border-radius:14px!important;backdrop-filter:blur(12px)}
.esim-step-tab{padding:1rem 0.75rem!important;font-size:0.8rem!important;border-right:1px solid rgba(160,0,255,0.06)!important;transition:all 0.3s!important}
.esim-step-tab:last-child{border-right:none!important}
.esim-step-tab.active{background:rgba(180,0,255,0.08)!important}
.esim-step-tab .step-number{width:26px!important;height:26px!important;font-size:0.72rem!important;border:1.5px solid rgba(160,0,255,0.2)!important}
.esim-step-tab.active .step-number{border-color:var(--primary)!important;background:var(--primary)!important;box-shadow:0 0 10px rgba(184,0,255,0.3)!important}

.app-card{border-radius:14px!important;border:1px solid rgba(160,0,255,0.08)!important;background:rgba(14,0,28,0.6)!important;backdrop-filter:blur(8px);padding:1.25rem 0.75rem!important;gap:0.6rem!important;transition:all 0.3s cubic-bezier(0.34,1.56,0.64,1)!important}
.app-card:hover{border-color:rgba(180,0,255,0.25)!important;background:rgba(180,0,255,0.06)!important;transform:translateY(-4px)!important;box-shadow:0 8px 24px rgba(100,0,200,0.15)!important}
.app-card.selected{border-color:var(--primary)!important;background:rgba(180,0,255,0.1)!important;box-shadow:0 0 20px rgba(184,0,255,0.2)!important}
.app-name{font-size:0.78rem!important;font-weight:500!important;color:rgba(240,230,255,0.7)}
.app-card:hover .app-name{color:#fff}

.app-initial{width:38px!important;height:38px!important;border-radius:10px!important;background:linear-gradient(135deg,rgba(180,0,255,0.15),rgba(120,0,255,0.1))!important;border:1px solid rgba(160,0,255,0.15)!important;color:var(--primary-light)!important;font-size:0.95rem!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all 0.3s}
.app-card:hover .app-initial{background:linear-gradient(135deg,rgba(180,0,255,0.25),rgba(120,0,255,0.15))!important;border-color:rgba(180,0,255,0.3)!important;box-shadow:0 0 12px rgba(184,0,255,0.15)}

.country-card{border-radius:10px!important;border:1px solid rgba(160,0,255,0.08)!important;background:rgba(14,0,28,0.5)!important;transition:all 0.25s!important}
.country-card:hover{border-color:rgba(180,0,255,0.2)!important;background:rgba(180,0,255,0.05)!important}
.country-card.selected{border-color:var(--primary)!important;background:rgba(180,0,255,0.08)!important}

.qty-option{border-radius:14px!important;border:1px solid rgba(160,0,255,0.08)!important;background:rgba(14,0,28,0.5)!important;transition:all 0.3s!important}
.qty-option:hover{border-color:rgba(180,0,255,0.2)!important}
.qty-option.selected{border-color:var(--primary)!important;background:rgba(180,0,255,0.08)!important;box-shadow:0 0 16px rgba(184,0,255,0.15)!important}

.esim-order-summary{background:rgba(14,0,28,0.7)!important;border:1px solid rgba(160,0,255,0.1)!important;backdrop-filter:blur(16px)!important;border-radius:16px!important;padding:1.75rem!important}

.esim-crypto-card{border-radius:12px!important;border:1px solid rgba(160,0,255,0.08)!important;background:rgba(14,0,28,0.5)!important;transition:all 0.25s!important}
.esim-crypto-card:hover{border-color:rgba(180,0,255,0.2)!important;background:rgba(180,0,255,0.05)!important}
.esim-crypto-card.selected{border-color:var(--primary)!important;background:rgba(180,0,255,0.1)!important;box-shadow:0 0 16px rgba(184,0,255,0.15)!important}
.esim-crypto-card .ci{font-size:1.4rem!important;color:var(--primary-light)}

.esim-info-box{background:rgba(180,0,255,0.04)!important;border:1px solid rgba(180,0,255,0.1)!important;border-radius:12px!important}
.xmr-recommend-banner{background:rgba(0,255,170,0.04)!important;border:1px solid rgba(0,255,170,0.12)!important;border-radius:12px!important}
.guarantee-box{background:rgba(255,170,0,0.04)!important;border:1px solid rgba(255,170,0,0.12)!important;border-radius:12px!important}
.summary-badge{background:rgba(255,255,255,0.02)!important;border:1px solid rgba(160,0,255,0.08)!important;border-radius:10px!important}

.faq-section{background:radial-gradient(ellipse 50% 30% at 50% 20%,rgba(120,0,200,0.08) 0%,transparent 70%)}
.faq-item{border-radius:12px!important;border:1px solid rgba(160,0,255,0.08)!important;background:rgba(14,0,28,0.5)!important;backdrop-filter:blur(8px);transition:all 0.3s!important}
.faq-item:hover{border-color:rgba(160,0,255,0.15)!important}
.faq-item.open{border-color:rgba(180,0,255,0.2)!important;background:rgba(180,0,255,0.03)!important}
.faq-question{font-weight:500!important;color:rgba(240,230,255,0.7)!important}
.faq-item.open .faq-question{color:var(--primary-light)!important}
.faq-answer{color:rgba(153,102,187,0.6)!important;font-size:0.85rem!important}
.panel-btn-row .btn{border-radius:12px!important}

@media(max-width:768px){
  .esim-hero{padding:2.5rem 1.25rem!important;min-height:auto!important}
  .esim-hero h1{font-size:clamp(2rem,7vw,3rem)!important}
  .how-steps{border-radius:12px!important}
  .how-step{border-right:none!important;border-bottom:1px solid rgba(160,0,255,0.06)}
  .how-step:last-child{border-bottom:none}
  .esim-steps-bar{border-radius:12px!important}
  .app-card{padding:1rem 0.5rem!important}
  .app-initial{width:34px!important;height:34px!important;font-size:0.85rem!important;border-radius:8px!important}
  .faq-section{padding:2.5rem 1.25rem!important}
  .esim-order-summary{padding:1.25rem!important;border-radius:12px!important}
}
@media(max-width:480px){
  .esim-hero{padding:2rem 1rem!important}
  .esim-hero h1{font-size:1.8rem!important}
  .how-step{padding:1.25rem 0.75rem!important}
  .app-initial{width:30px!important;height:30px!important;font-size:0.8rem!important}
  .app-card{padding:0.85rem 0.4rem!important;gap:0.4rem!important;border-radius:10px!important}
  .app-name{font-size:0.7rem!important}
  .faq-section{padding:2rem 0.75rem!important}
}




/* ===================================================================
   eSIM PRICE CARD — iOS Glassmorphism
   =================================================================== */
.esim-price-card{
  position:relative;
  border-radius:24px!important;
  overflow:hidden!important;
}

/* Subtle static gradient border — no animation */
.esim-price-glow{
  position:absolute!important;inset:0!important;
  background:linear-gradient(145deg,rgba(180,0,255,0.2),rgba(255,0,204,0.08),rgba(0,212,255,0.05))!important;
  border-radius:inherit!important;
  z-index:0!important;
  filter:none!important;
  animation:none!important;
}
.esim-price-glow::after{display:none!important}

.esim-price-inner{
  position:relative!important;z-index:1!important;
  margin:1px!important;
  background:rgba(20,0,40,0.55)!important;
  backdrop-filter:blur(40px) saturate(180%)!important;
  -webkit-backdrop-filter:blur(40px) saturate(180%)!important;
  border-radius:23px!important;
  border:1px solid rgba(255,255,255,0.08)!important;
  padding:3rem 2.5rem!important;
  text-align:center!important;
}

/* Top edge highlight — iOS glass effect */
.esim-price-inner::before{
  content:'';position:absolute;
  top:0;left:10%;right:10%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);
  border-radius:1px;
}

/* Inner subtle glow */
.esim-price-inner::after{
  content:'';position:absolute;
  top:-30%;left:20%;right:20%;height:60%;
  background:radial-gradient(ellipse,rgba(180,0,255,0.06) 0%,transparent 70%);
  pointer-events:none;
}

.esim-price-tag{
  font-size:0.7rem!important;font-weight:600!important;
  text-transform:uppercase!important;letter-spacing:0.18em!important;
  color:rgba(200,160,255,0.5)!important;
  margin-bottom:0.75rem!important;display:block;
}

.esim-price-amount{
  font-size:clamp(2.8rem,5vw,3.5rem)!important;
  font-weight:900!important;font-family:var(--font-title)!important;
  margin-bottom:0.3rem!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:none!important;
  text-shadow:0 0 40px rgba(180,0,255,0.3);
  line-height:1.1;
}

.esim-price-period{
  font-size:0.8rem!important;
  color:rgba(200,160,255,0.4)!important;
  margin-bottom:2.5rem!important;
}

/* Feature rows */
.esim-price-features{
  display:flex!important;flex-direction:column!important;
  gap:0.85rem!important;text-align:left!important;
}
.esim-feature-row{
  display:flex!important;align-items:center!important;gap:0.7rem!important;
  font-size:0.88rem!important;color:rgba(240,230,255,0.7)!important;
  font-weight:500;
}
.esim-check{
  display:flex!important;align-items:center;justify-content:center;
  flex-shrink:0;color:rgba(0,255,170,0.7)!important;
}
.esim-check svg{width:14px!important;height:14px!important}

/* Hover — subtle lift */
.esim-price-card{transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1)}
.esim-price-card:hover{transform:translateY(-4px)}
.esim-price-card:hover .esim-price-inner{
  border-color:rgba(255,255,255,0.12)!important;
}

/* Mobile */
@media(max-width:768px){
  .esim-price-card{border-radius:20px!important}
  .esim-price-inner{padding:2.5rem 2rem!important;border-radius:19px!important}
  .esim-price-amount{font-size:2.5rem!important}
}
@media(max-width:480px){
  .esim-price-card{border-radius:18px!important}
  .esim-price-inner{padding:2rem 1.5rem!important;border-radius:17px!important}
  .esim-price-amount{font-size:2.2rem!important}
  .esim-feature-row{font-size:0.82rem!important}
}
