/* Visa detail pages. Same tokens as index.html (dark single-theme). */
:root{
  --canvas:#0d1020; --canvas2:#11152a; --card:#161b30; --card2:#1d2340; --line:#262d4a;
  --ash:#aeb3c8; --ivory:#eef0f7; --orange:#f5a12a; --orange2:#ffc366; --ink:#0d1020;
  --ok:#3fcf8e; --warn:#f5a12a; --no:#ef6b6b;
  --display:"Archivo",system-ui,sans-serif; --body:"Inter",system-ui,sans-serif; --mono:"JetBrains Mono",ui-monospace,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--canvas);color:var(--ivory);font:400 16px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:8px}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.08;text-wrap:balance}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);font-weight:600}
.btn{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 28px;border-radius:40px;font:500 16px var(--body);border:0;cursor:pointer;transition:transform .15s ease,box-shadow .2s,background .2s;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn-primary{background:linear-gradient(180deg,var(--orange2),var(--orange));color:var(--ink);box-shadow:0 10px 30px -10px rgba(245,161,42,.6),inset 0 1px 0 rgba(255,255,255,.5)}
.btn-ghost{border:1px solid rgba(238,240,247,.35);color:var(--ivory);background:rgba(255,255,255,.03)}
.btn-ghost:hover{background:rgba(255,255,255,.08)}

/* nav */
nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(13,16,32,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:14px}
nav .logo img{height:36px;display:block}
.right{display:flex;align-items:center;gap:10px}
.back{color:var(--ash);font-size:15px;padding:8px 14px;border-radius:40px}
.back:hover{color:var(--ivory);background:rgba(255,255,255,.05)}
.lang{display:flex;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:40px;padding:3px}
.lang button{border:0;background:none;color:var(--ash);font:600 12px var(--body);letter-spacing:.06em;padding:8px 11px;border-radius:30px;cursor:pointer}
.lang button[aria-pressed=true]{background:var(--ivory);color:var(--ink)}
nav .btn{height:44px;padding:0 20px;font-size:15px}

/* hero */
.hero{padding:88px 0 72px;background:radial-gradient(900px 520px at 85% 0%,rgba(245,161,42,.14),transparent 60%),radial-gradient(800px 600px at 0% 100%,rgba(64,92,210,.22),transparent 60%)}
.hero .grid{display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:end}
.code{font:700 clamp(96px,16vw,200px)/.85 var(--display);font-stretch:125%;background:linear-gradient(180deg,var(--orange2),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.02em}
.hero h1{font-size:clamp(30px,4vw,50px);margin:14px 0 18px}
.hero p{color:var(--ash);font-size:clamp(16px,1.6vw,19px);max-width:620px}
.switch{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}
.switch a{font:600 13px var(--mono);letter-spacing:.06em;padding:9px 16px;border-radius:40px;border:1px solid var(--line);color:var(--ash)}
.switch a:hover{color:var(--ivory);border-color:#3a4370}
.switch a[aria-current=page]{background:rgba(245,161,42,.14);border-color:rgba(245,161,42,.5);color:var(--orange2)}

/* sections */
section{padding:84px 0;border-top:1px solid var(--line)}
.head{max-width:720px;margin-bottom:40px}
.head h2{font-size:clamp(28px,3.6vw,44px);margin-top:12px}
.head p{color:var(--ash);font-size:17px;margin-top:14px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.card{background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:20px;padding:28px;min-width:0}
.card h3{font-size:20px;margin-bottom:10px}
.card p{color:var(--ash);font-size:15px}

.places{display:flex;flex-wrap:wrap;gap:10px}
.place{display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:16px;background:var(--canvas2);border:1px solid var(--line);font-weight:500}
.place i{width:8px;height:8px;border-radius:50%;background:var(--orange);flex:none}
.note{margin-top:22px;color:var(--ash);font-size:14px;max-width:760px}

.work{display:grid;gap:12px}
.wrow{display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:start;padding:24px 28px;border-radius:18px;background:var(--canvas2);border:1px solid var(--line)}
.wrow h3{font-size:19px;margin-bottom:6px}
.wrow p{color:var(--ash);font-size:15px}
.pill{display:inline-flex;align-items:center;gap:8px;font:600 12px var(--body);letter-spacing:.04em;padding:7px 12px;border-radius:30px;justify-self:start;white-space:nowrap}
.pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pill.ok{color:var(--ok);background:rgba(63,207,142,.1)}
.pill.auth{color:var(--warn);background:rgba(245,161,42,.1)}
.pill.no{color:var(--no);background:rgba(239,107,107,.1)}

/* J-1 variants */
.variants{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.variant{background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:16px;min-width:0}
.variant h3{font-size:24px}
.variant .tagline{color:var(--orange2);font-size:14px;font-weight:500;margin-top:-8px}
.variant dl{display:grid;gap:14px}
.variant dt{font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#7f86a6}
.variant dd{color:var(--ash);font-size:15px;margin-top:4px}

.alert{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:26px 28px;border-radius:18px;border:1px solid rgba(245,161,42,.35);background:rgba(245,161,42,.06);margin-top:28px}
.alert .ic{width:44px;height:44px;border-radius:12px;background:rgba(245,161,42,.14);display:grid;place-items:center;color:var(--orange)}
.alert p{color:var(--ivory);font-size:15px}

.cta-box{background:radial-gradient(700px 400px at 90% 0%,rgba(245,161,42,.2),transparent 60%),linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:28px;padding:56px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.cta-box h2{font-size:clamp(28px,3.4vw,42px);max-width:620px}
.cta-box p{color:var(--ash);margin-top:12px;max-width:560px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}

footer{border-top:1px solid var(--line);padding:48px 0 40px}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px}
.foot img{height:34px}
.foot a{color:var(--ash);font-size:15px;display:block;margin-top:8px}
.foot a:hover{color:var(--ivory)}
.legal{margin-top:36px;font-size:12px;color:#7f849a;line-height:1.6;max-width:920px}

.wa{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:60;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.35)}

@media (max-width:860px){
  .hero{padding:56px 0 48px}
  .hero .grid{grid-template-columns:1fr;gap:12px}
  .wrow{grid-template-columns:1fr;gap:12px;padding:22px}
  .cta-box{padding:32px 24px}
  section{padding:64px 0}
  .variants{grid-template-columns:1fr}
}
@media (max-width:560px){
  .wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
  nav .btn,.back span{display:none}
  .cards{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
