/*
Theme Name: esimgo
Theme URI: https://esimgo.lt
Description: eSIM parduotuvės tema su WooCommerce integracija. Pritaikyta esimgo dizainui.
Author: esimgo
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
WC requires at least: 6.0
Text Domain: esimgo
*/


*{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#080812;--card:#12121f;--border:rgba(255,255,255,.06);--purple:#7c5bf5;--purple-dk:#6a4ae0;--green:#00d4aa;--text:#e0e0ea;--muted:#8888a0}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
h1,h2,h3,h4{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:#fff;font-weight:700}
a{color:inherit;text-decoration:none}
.container{width:min(90vw,1140px);margin:0 auto}
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 0;background:rgba(8,8,18,.85);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
nav .container{display:flex;align-items:center;justify-content:space-between}
.logo{font-size:1.4rem;font-weight:800;letter-spacing:-.02em}
.logo span{color:var(--purple)}
.nav{display:flex;gap:2rem;list-style:none}
.nav a{font-size:.9rem;color:var(--muted);transition:color .2s}
.nav a:hover{color:#fff}
.right{display:flex;align-items:center;gap:1.2rem}
.btn-sm{padding:.5rem 1.2rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}
.btn-sm:hover{background:rgba(255,255,255,.05)}
.cart{position:relative;cursor:pointer}
.cart svg{width:22px;height:22px;color:var(--muted)}
.cart-badge{position:absolute;top:-6px;right:-8px;width:18px;height:18px;background:var(--purple);color:#fff;font-size:.65rem;font-weight:700;border-radius:50%;display:none;align-items:center;justify-content:center}
.cart-badge.show{display:flex}
.burger{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:4px}
.burger span{width:20px;height:2px;background:#fff;border-radius:1px}
.hero{padding:12rem 0 6rem;text-align:center;position:relative;overflow:hidden}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}
.hero-glow{position:absolute;width:600px;height:600px;border-radius:50%;filter:blur(120px);pointer-events:none}
.hero-glow.g1{background:var(--purple);opacity:.1;top:-20%;left:-10%}
.hero-glow.g2{background:var(--green);opacity:.08;bottom:-20%;right:-10%}
.hero-orb{position:absolute;border-radius:50%;pointer-events:none;animation:float 8s ease-in-out infinite}
.hero-orb.o1{width:150px;height:150px;background:radial-gradient(circle,rgba(124,91,245,.2),rgba(124,91,245,.02));top:15%;left:10%;animation-delay:0s}
.hero-orb.o2{width:100px;height:100px;background:radial-gradient(circle,rgba(0,212,170,.18),rgba(0,212,170,.02));top:25%;right:12%;animation-delay:2s}
.hero-orb.o3{width:80px;height:80px;background:radial-gradient(circle,rgba(124,91,245,.15),rgba(124,91,245,.02));bottom:20%;left:20%;animation-delay:4s}
.hero-orb.o4{width:120px;height:120px;background:radial-gradient(circle,rgba(0,212,170,.15),rgba(0,212,170,.02));top:40%;right:8%;animation-delay:6s}
.hero-content{position:relative;z-index:1;max-width:700px;margin:0 auto}
.hero h1{font-size:clamp(3rem,6vw,5rem);line-height:1.05;letter-spacing:-.03em;margin-bottom:2rem}
.hero h1 em{font-style:normal;color:var(--purple)}
.hero p{font-size:1.1rem;color:var(--muted);max-width:520px;margin:0 auto 3rem;line-height:1.7}
.search-box{position:relative;max-width:480px;margin:0 auto 2rem}
.search-input{width:100%;padding:1.1rem 1.2rem 1.1rem 3rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0e0e18;color:#fff;font-size:1rem;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s}
.search-input:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(124,91,245,.15)}
.search-input::placeholder{color:var(--muted)}
.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--muted);font-size:1.1rem}
.search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#0e0e18;border:1px solid var(--border);border-radius:12px;max-height:300px;overflow-y:auto;display:none;z-index:10}
.search-results.open{display:block}
.search-result{padding:.7rem 1.2rem;cursor:pointer;display:flex;align-items:center;gap:.7rem;transition:background .15s}
.search-result:hover{background:rgba(124,91,245,.08)}
.search-result .flag{font-size:1.3rem}
.dest .flag{font-size:2rem;margin-bottom:.4rem}
.search-result .name{font-weight:600}
.search-result .price{font-size:.8rem;color:var(--muted);margin-left:auto}
.quick-links{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-bottom:2.5rem}
.quick-link{font-size:.82rem;padding:.5rem 1rem;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .2s}
.quick-link:hover{border-color:var(--purple);color:#fff}
.hero-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:4rem}
.btn{font-size:.95rem;font-weight:600;padding:.9rem 2.2rem;border-radius:12px;cursor:pointer;transition:all .25s;display:inline-flex;align-items:center;gap:.4rem}
.btn-primary{background:var(--purple);color:#fff;border:none}
.btn-primary:hover{background:var(--purple-dk);transform:translateY(-2px);box-shadow:0 8px 30px rgba(124,91,245,.3)}
.btn-secondary{background:transparent;color:#fff;border:1px solid var(--border)}
.btn-secondary:hover{border-color:rgba(255,255,255,.2)}
.hero-stats{display:flex;gap:4rem;justify-content:center;padding-top:3rem;border-top:1px solid var(--border)}
.stat{text-align:center}
.stat-num{font-size:2.2rem;font-weight:700;color:#fff}
.stat-num span{color:var(--purple)}
.stat-label{font-size:.82rem;color:var(--muted);margin-top:.3rem}
.explainer{padding:6rem 0}
.explainer-inner{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.explainer-phone{display:flex;align-items:center;justify-content:center}
.explainer-text .label{font-size:.75rem;font-weight:600;color:var(--green);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.8rem}
.explainer-text h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:1rem;line-height:1.2}
.explainer-text>p{color:var(--muted);max-width:440px;margin-bottom:2.5rem;line-height:1.7}
.steps{display:flex;flex-direction:column;gap:1.5rem}
.step{display:flex;gap:1.2rem}
.step-num{width:40px;height:40px;border-radius:10px;background:rgba(124,91,245,.1);border:1px solid rgba(124,91,245,.2);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--purple);font-size:.9rem;flex-shrink:0}
.step h4{font-size:1rem;margin-bottom:.2rem}
.step p{font-size:.88rem;color:var(--muted);line-height:1.5}
.section{padding:6rem 0}
.head{text-align:center;margin-bottom:3rem}
.head .label{font-size:.75rem;font-weight:600;color:var(--green);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.8rem}
.head h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:.8rem}
.head p{color:var(--muted);max-width:500px;margin:0 auto}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem;transition:all .3s}
.card:hover{border-color:rgba(124,91,245,.3);transform:translateY(-3px)}
.badge{display:inline-block;font-size:.68rem;font-weight:600;padding:.2rem .6rem;border-radius:6px;text-transform:uppercase;margin-bottom:1rem}
.badge.live{background:rgba(0,212,170,.1);color:var(--green)}
.badge.soon{background:rgba(255,183,77,.1);color:#ffb74d}
.card h3{font-size:1.25rem;margin-bottom:.5rem}
.card p{color:var(--muted);font-size:.9rem;line-height:1.6}
.card-price{font-size:1.5rem;font-weight:700;color:#fff;margin-top:1rem}
.card-price span{font-size:.8rem;font-weight:400;color:var(--muted)}
.card-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;font-size:.85rem;font-weight:600;color:var(--purple);transition:gap .2s}
.card:hover .card-link{gap:.7rem}
.tabs{display:flex;gap:.5rem;justify-content:center;margin-bottom:2.5rem}
.tab{padding:.5rem 1.3rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}
.tab.active{background:var(--purple);color:#fff;border-color:var(--purple)}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}
.plan{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem;transition:all .3s;position:relative}
.plan.featured{border-color:var(--purple)}
.feat-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);font-size:.7rem;font-weight:600;color:var(--purple);background:var(--bg);padding:.25rem .8rem;border-radius:20px;white-space:nowrap}
.plan h3{font-size:1.1rem;margin-bottom:.3rem}
.plan .sub{font-size:.8rem;color:var(--muted);margin-bottom:1rem}
.plan .price{font-size:2.2rem}
.plan .period{font-size:.78rem;color:var(--muted);margin-top:.15rem}
.plan-feat{list-style:none;margin:1.2rem 0}
.plan-feat li{padding:.5rem 0;font-size:.88rem;color:var(--muted);border-bottom:1px solid rgba(255,255,255,.04);display:flex;align-items:center;gap:.5rem}
.plan-feat li::before{content:'✓';color:var(--green);font-weight:700;font-size:.75rem}
.plan-btn{width:100%;padding:.8rem;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;margin-top:1.2rem}
.plan-btn.primary{background:var(--purple);color:#fff;border:none}
.plan-btn.primary:hover{background:var(--purple-dk);box-shadow:0 6px 20px rgba(124,91,245,.3)}
.plan-btn.outline{background:transparent;color:#fff;border:1px solid var(--border)}
.plan-btn.outline:hover{border-color:rgba(255,255,255,.2)}
.dgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.8rem}
.dest{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.2rem;text-align:center;cursor:pointer;transition:all .3s}
.dest:hover{border-color:rgba(124,91,245,.3);transform:translateY(-2px)}
.dest .flag{font-size:2rem;margin-bottom:.4rem}
.dest .name{font-size:.9rem;font-weight:600;color:#fff}
.dest .dp{font-size:.78rem;color:var(--muted);margin-top:.15rem}
.qr-cell{width:100%;aspect-ratio:1;background:transparent;border-radius:1px}
.qr-cell.on{background:#1a1a2e}
.show-more-btn{display:block;width:100%;margin-top:1.5rem;padding:.8rem;border-radius:10px;border:1px solid var(--border);background:transparent;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}
.show-more-btn:hover{border-color:var(--purple);background:rgba(124,91,245,.05)}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.feat{padding:1.3rem;border-radius:12px;transition:background .3s}
.feat:hover{background:var(--card)}
.feat .fi{font-size:1.4rem;margin-bottom:.7rem}
.feat h4{font-size:.95rem;margin-bottom:.3rem}
.feat p{font-size:.82rem;color:var(--muted);line-height:1.5}
.cta-box{background:linear-gradient(135deg,rgba(124,91,245,.1),rgba(0,212,170,.06));border:1px solid rgba(124,91,245,.2);border-radius:20px;padding:4rem 2rem;text-align:center}
.cta-box h2{font-size:clamp(1.6rem,2.5vw,2.2rem);margin-bottom:.7rem}
.cta-box p{color:var(--muted);max-width:450px;margin:0 auto 1.8rem;line-height:1.6}
footer{padding:4rem 0 2rem;border-top:1px solid var(--border)}
.fgrid2{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}
.fbrand p{color:var(--muted);font-size:.85rem;margin-top:.7rem}
.fcol h4{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#fff;margin-bottom:.8rem}
.fcol ul{list-style:none}
.fcol li{margin-bottom:.4rem}
.fcol a{color:var(--muted);font-size:.85rem;transition:color .2s}
.fcol a:hover{color:#fff}
.fbot{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border);text-align:center;color:var(--muted);font-size:.8rem}
.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:200;display:none;align-items:center;justify-content:center}
.modal-bg.open{display:flex}
/* ===== Popup (produkto modalas) ===== */
.modal-bg{padding:1.5rem}
.modal{background:#0e0e18;border:1px solid var(--border);border-radius:24px;padding:0;width:min(94vw,760px);max-height:92vh;overflow-y:auto;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.6)}
.modal-close{position:absolute;top:1.4rem;right:1.4rem;z-index:5;width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.15);border-radius:50%;color:#fff;font-size:1.4rem;cursor:pointer;line-height:1;transition:all .2s}
.modal-close:hover{background:rgba(0,0,0,.5);transform:rotate(90deg)}
.product-detail{background:transparent;border:none;border-radius:0;padding:0;margin:0}

/* Antraštė */
.product-header{display:flex;align-items:center;gap:1.5rem;padding:2.4rem 2.6rem;background:linear-gradient(135deg,rgba(124,91,245,.18),rgba(0,212,170,.07));border-bottom:1px solid var(--border)}
.product-header .flag{display:block;width:68px;height:auto;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.45)}
.product-header h2{font-size:1.75rem;line-height:1.15;margin:0}
.product-header .ph-sub{color:var(--muted);font-size:.9rem;margin:.4rem 0 0}

/* Bendras vidinis kūnas – vienodi kraštai visur */
.modal-body{padding:2rem 2.6rem 2.4rem}
.esimgo-desc{color:var(--muted);font-size:.95rem;line-height:1.7;margin:0 0 2rem}

/* Pasirinkimai */
.variant-group{margin-bottom:1.5rem}
.variant-group:last-of-type{margin-bottom:0}
.variant-group label{display:block;font-size:.72rem;font-weight:700;color:var(--muted);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.09em}
.variant-options{display:flex;gap:.55rem;flex-wrap:wrap}
.variant-opt{padding:.6rem 1.15rem;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,.03);color:var(--muted);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}
.variant-opt:hover{border-color:rgba(124,91,245,.45);color:#fff;transform:translateY(-1px)}
.variant-opt.active{background:var(--purple);color:#fff;border-color:var(--purple);box-shadow:0 4px 14px rgba(124,91,245,.35)}

/* Kaina */
.price-display{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 1.8rem;background:linear-gradient(135deg,rgba(124,91,245,.12),rgba(0,212,170,.06));border:1px solid rgba(124,91,245,.22);border-radius:16px;margin:2rem 0}
.price-big{font-size:2.6rem;font-weight:800;color:#fff;line-height:1}
.price-big span{font-size:1rem;font-weight:400;color:var(--muted)}
.price-per-day{font-size:.85rem;color:var(--muted);text-align:right;line-height:1.5}
.price-per-day strong{color:#fff;font-weight:600}

/* CTA */
.add-btn{width:100%;padding:1.15rem;background:var(--purple);color:#fff;border:none;border-radius:14px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .25s}
.add-btn:hover{background:var(--purple-dk);box-shadow:0 8px 30px rgba(124,91,245,.3);transform:translateY(-1px)}
.add-btn:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}
.trust-row{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-top:1.2rem;font-size:.8rem;color:var(--muted)}
.trust-row span{display:inline-flex;align-items:center;gap:.4rem}

/* Specifikacijos */
.specs{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}
.specs h4{font-size:.72rem;color:var(--muted);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.09em}
.specs-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.spec{padding:.9rem 1rem;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:12px;font-size:.95rem;color:#fff;font-weight:600}
.spec span{color:var(--muted);display:block;font-size:.72rem;font-weight:500;margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.05em}
.plans-table{margin:1.5rem 0;overflow-x:auto}
.plans-table table{width:100%;border-collapse:collapse;font-size:.85rem}
.plans-table thead{background:rgba(124,91,245,.1)}
.plans-table th{padding:.6rem .8rem;text-align:left;color:#fff;font-size:.75rem;text-transform:uppercase}
.plans-table td{padding:.5rem .8rem;border-bottom:1px solid rgba(255,255,255,.04)}
.plans-table tr:hover td{background:rgba(124,91,245,.05)}
.cart-modal{background:#0e0e18;border:1px solid var(--border);border-radius:16px;padding:2rem;width:min(90vw,420px);max-height:80vh;overflow-y:auto}
.cart-modal h3{margin-bottom:1.2rem}
.ci{display:flex;align-items:center;gap:.8rem;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.05)}
.ci-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:var(--card)}
.ci-info{flex:1}
.ci-info h4{font-size:.88rem}
.ci-info p{font-size:.75rem;color:var(--muted)}
.ci-rm{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1rem}
.ci-rm:hover{color:#ff6b6b}
.total{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 0;font-weight:600}
.total span:last-child{font-size:1.3rem;font-weight:800;color:#fff}
.checkout{width:100%;padding:.9rem;background:var(--purple);color:#fff;border:none;border-radius:10px;font-weight:700;font-size:.95rem;cursor:pointer;margin-top:.8rem;transition:all .2s}
.checkout:hover{background:var(--purple-dk)}
.empty{text-align:center;padding:2rem 0;color:var(--muted)}
@media(max-width:768px){
  .nav{display:none}
  .burger{display:flex}
  .nav.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:rgba(8,8,18,.95);padding:1.2rem;gap:.8rem;border-bottom:1px solid var(--border)}
  .hero{padding:7rem 0 3rem}
  .explainer-inner{grid-template-columns:1fr;gap:2rem}
  .explainer-phone{order:-1;margin-bottom:2rem}
  .stats{flex-wrap:wrap;gap:1.5rem}
  .cards,.plans,.fgrid2{grid-template-columns:1fr}
  .specs-grid{grid-template-columns:1fr}
  .hero-stats{flex-direction:column;align-items:center;gap:1.5rem}
}

/* Produkto popup — planų sąrašas */
.plan-list{display:flex;flex-direction:column;gap:.5rem;margin-top:1.2rem;max-height:50vh;overflow-y:auto}
.plan-row{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.02);text-decoration:none;transition:all .2s}
.plan-row:hover{border-color:var(--purple);background:rgba(124,91,245,.08);transform:translateX(2px)}
.plan-row-info{display:flex;flex-direction:column;gap:.15rem}
.plan-size{font-weight:700;color:#fff;font-size:1rem}
.plan-dur{font-size:.8rem;color:var(--muted)}
.plan-row-right{display:flex;align-items:center;gap:1rem}
.plan-price{font-weight:700;color:var(--purple);font-size:1.05rem}
.plan-buy{font-size:.8rem;color:var(--muted);white-space:nowrap}
.plan-row:hover .plan-buy{color:#fff}
