*{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#0a0a0b;--bg2:#101012;--panel:#17171a;--line:#37332a;--ink:#f5f1e6;--muted:#b6ae9d;--blue:#c9a227;--blue2:#e3c565;--light:#f7f2e6;--dark:#141310;--radius:14px}
html{scroll-behavior:smooth}
body{font-family:'Archivo',system-ui,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}
h1,h2,h3{font-family:'Sora',system-ui,sans-serif;line-height:1.15}
a{color:var(--blue2);text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
/* Header */
header{position:sticky;top:0;z-index:50;background:rgba(10,17,32,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
.header-in{display:flex;align-items:center;gap:22px;padding:13px 20px;max-width:1140px;margin:0 auto}
.logo{display:flex;align-items:center;gap:11px;color:var(--ink);font-family:'Sora',sans-serif;font-weight:800;letter-spacing:.5px;font-size:19px;white-space:nowrap}
.logo-mark{width:38px;height:38px;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--blue2));display:flex;align-items:center;justify-content:center;font-size:20px;color:#141310;flex:none}
.logo small{display:block;font-size:10px;letter-spacing:2.5px;color:var(--muted);font-weight:600}
nav.mainnav{display:flex;gap:4px;margin-left:auto}
nav.mainnav a{color:var(--ink);font-size:14.5px;font-weight:600;padding:9px 11px;border-radius:8px;white-space:nowrap}
nav.mainnav a:hover{background:var(--panel);color:#fff}
nav.mainnav a.active{background:var(--blue);color:#141310}
.header-actions{display:flex;gap:9px;align-items:center;flex:none}
.btn{display:inline-block;background:var(--blue);color:#141310;font-weight:700;padding:11px 20px;border-radius:10px;font-size:15px;border:0;cursor:pointer;font-family:'Archivo',sans-serif}
.btn:hover{background:#a8861c}
.btn.ghost{background:transparent;border:1.5px solid var(--blue2);color:var(--blue2)}
.btn.small{padding:9px 15px;font-size:14px}
.langbtn{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:8px 11px;font-weight:700;cursor:pointer;font-size:13px}
.burger{display:none;background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:8px 13px;font-size:19px;cursor:pointer}
.mobilenav{display:none;border-top:1px solid var(--line);padding:10px 20px 14px}
.mobilenav a{display:block;color:var(--ink);font-weight:600;padding:10px 6px;border-bottom:1px solid var(--line)}
.mobilenav.open{display:block}
/* Hero */
.hero{background:radial-gradient(900px 420px at 85% -60px,rgba(212,175,55,.20),transparent 60%),linear-gradient(180deg,#121110,#0a0a0b);padding:64px 0 54px;border-bottom:1px solid var(--line)}
.eyebrow{color:var(--blue2);font-weight:700;letter-spacing:2px;font-size:12.5px;text-transform:uppercase;margin-bottom:14px}
.hero h1{font-size:42px;max-width:720px;margin-bottom:16px}
.hero p.lead{color:var(--muted);font-size:18.5px;max-width:640px;margin-bottom:26px}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
.skyline{margin-top:40px;opacity:.9}
.skyline svg{width:100%;height:90px;display:block}
/* Page hero (subpages) */
.pagehero{background:linear-gradient(180deg,#121110,#0a0a0b);padding:44px 0 36px;border-bottom:1px solid var(--line)}
.crumbs{font-size:13.5px;color:var(--muted);margin-bottom:12px}
.crumbs a{color:var(--blue2)}
.pagehero h1{font-size:36px;margin-bottom:10px}
.pagehero p{color:var(--muted);font-size:17.5px;max-width:680px}
/* Sections */
section{padding:52px 0}
.sec-title{font-size:29px;margin-bottom:8px}
.sec-sub{color:var(--muted);margin-bottom:28px;max-width:680px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.card h3{font-size:20px;margin-bottom:9px}
.card p{color:var(--muted);font-size:15.5px;margin-bottom:14px}
.card .icon{font-size:27px;margin-bottom:13px}
.cardlink{font-weight:700;font-size:15px}
.light{background:var(--light);color:var(--dark)}
.light .sec-sub{color:#5c5546}
.light .card{background:#fff;border-color:#e3dcc8}
.light .card p{color:#5c5546}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:step}
.step{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.step b.num{display:flex;width:34px;height:34px;border-radius:50%;background:var(--blue);color:#141310;align-items:center;justify-content:center;font-family:'Sora';margin-bottom:11px}
.step h3{font-size:17px;margin-bottom:6px}
.step p{color:var(--muted);font-size:14.5px}
ul.check{list-style:none}
ul.check li{padding:9px 0 9px 30px;position:relative;border-bottom:1px solid var(--line);font-size:16px}
ul.check li:before{content:"✓";position:absolute;left:2px;color:var(--blue2);font-weight:800}
.light ul.check li{border-color:#e3dcc8}
.note{border-left:4px solid var(--blue);background:var(--panel);padding:18px 20px;border-radius:0 var(--radius) var(--radius) 0;color:var(--muted);font-size:15.5px}
table.cmp{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
table.cmp th,table.cmp td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:15.5px}
table.cmp th{font-family:'Sora';background:#121110}
table.cmp td{color:var(--muted)}
table.cmp td:first-child{color:var(--ink);font-weight:600}
/* Cards brands */
.brands{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.brand{background:#fff;color:#12235c;border-radius:8px;padding:10px 16px;font-weight:800;font-style:italic;font-size:17px;letter-spacing:.5px;display:flex;align-items:center;gap:7px}
.brand.mc{font-style:normal;color:#222}
.brand.mc .c1,.brand.mc .c2{width:21px;height:21px;border-radius:50%;display:inline-block}
.brand.mc .c1{background:#eb001b}
.brand.mc .c2{background:#f79e1b;margin-left:-13px;opacity:.9}
.brand.amex{background:#2e77bc;color:#fff;font-style:normal;font-size:14px}
.brand.disc{background:#fff;color:#f48120;font-style:normal}
/* Simulator / form */
.sim label,.cform label{display:block;font-weight:600;font-size:14.5px;margin:14px 0 6px}
.sim input[type=number],.cform input,.cform select,.cform textarea{width:100%;padding:12px;border-radius:9px;border:1px solid var(--line);background:#121110;color:var(--ink);font-size:15.5px;font-family:'Archivo'}
.light .cform input,.light .cform select,.light .cform textarea{background:#fff;color:var(--dark);border-color:#d8cfb4}
.sim .habit{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line);font-size:15px}
.sim .habit input{margin-top:4px;width:17px;height:17px}
.sim-result{margin-top:18px;background:#0c2a16;border:1px solid #1d5c33;padding:17px;border-radius:10px;font-size:16px}
.faq-item{border:1px solid var(--line);border-radius:10px;margin-bottom:11px;background:var(--panel)}
.faq-q{width:100%;text-align:left;background:none;border:0;color:var(--ink);font-family:'Sora';font-size:16.5px;font-weight:700;padding:17px 19px;cursor:pointer}
.faq-a{display:none;padding:0 19px 17px;color:var(--muted);font-size:15.5px}
.faq-item.open .faq-a{display:block}
.alert{display:none;margin-top:15px;background:#2a2107;border:1px solid #8a6d1a;color:#f5d67a;padding:15px 17px;border-radius:10px;font-size:15px}
.msgout{display:none;margin-top:16px}
.msgout textarea{width:100%;min-height:130px;padding:13px;border-radius:9px;border:1px solid var(--line);background:#121110;color:var(--ink);font-size:15px}
/* CTA band + footer */
.ctaband{background:linear-gradient(90deg,var(--blue),#8a6d1a);padding:42px 0;text-align:center}
.ctaband h2{font-size:27px;margin-bottom:9px}
.ctaband p{color:#f3e3ac;margin-bottom:19px}
.ctaband .btn{background:#fff;color:#0a0a0a}
footer{border-top:1px solid var(--line);padding:38px 0 28px;background:#070707}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;margin-bottom:24px}
footer h4{font-family:'Sora';font-size:15px;margin-bottom:11px}
footer a{display:block;color:var(--muted);font-size:14.5px;padding:3.5px 0}
footer p{color:var(--muted);font-size:14.5px;max-width:340px}
.foot-base{border-top:1px solid var(--line);padding-top:17px;color:var(--muted);font-size:13.5px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:900px){
 nav.mainnav{display:none}
 .burger{display:block;margin-left:auto}
 .header-actions{margin-left:0}
 .grid3,.grid2,.steps{grid-template-columns:1fr}
 .foot-grid{grid-template-columns:1fr}
 .hero h1{font-size:33px}
 .pagehero h1{font-size:29px}
}

.logo-img{height:46px;width:auto;display:block;border-radius:6px}
.hero-logo{width:250px;max-width:72vw;display:block;margin-bottom:26px;border-radius:12px}
.foot-logo{width:190px;max-width:60vw;display:block;margin-bottom:14px;border-radius:10px}
.logo small{letter-spacing:1.8px;font-size:9px}

.slider{position:relative;background:linear-gradient(180deg,#121110,#0a0a0b);border-bottom:1px solid var(--line);overflow:hidden}
.slide{display:none}
.slide.active{display:block;animation:slfade .6s ease}
@keyframes slfade{from{opacity:0}to{opacity:1}}
.slide-in{display:grid;grid-template-columns:1.08fr .92fr;gap:26px;align-items:end;padding-top:54px;min-height:478px}
.slide-txt{padding-bottom:66px}
.slide-txt h2{font-size:clamp(30px,4.6vw,50px);line-height:1.12;margin-bottom:16px}
.slide-txt p{color:var(--muted);font-size:17.5px;max-width:520px}
.slide-photo{position:relative;display:flex;justify-content:center;align-items:flex-end}
.slide-photo:before{content:"";position:absolute;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,.30),transparent 65%);bottom:36px;left:50%;transform:translateX(-50%)}
.slide-photo img{position:relative;height:468px;max-width:100%;object-fit:contain;filter:drop-shadow(0 18px 44px rgba(0,0,0,.55))}
.slider .dots{position:absolute;left:0;right:0;bottom:16px;display:flex;gap:8px;justify-content:center;z-index:3}
.slider .dot{width:10px;height:10px;border-radius:50%;background:#4a463c;border:0;cursor:pointer;padding:0}
.slider .dot.on{background:var(--blue)}
.slider .arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(20,19,16,.72);color:var(--blue2);border:1px solid var(--line);width:42px;height:42px;border-radius:50%;font-size:22px;cursor:pointer;z-index:3;line-height:1}
.slider .arrow.prev{left:14px}.slider .arrow.next{right:14px}
@media(max-width:860px){.slide-in{grid-template-columns:1fr;padding-top:38px;min-height:0}.slide-txt{padding-bottom:6px;text-align:center}.slide-txt p{margin:0 auto}.slide-txt .cta{justify-content:center}.slide-photo img{height:305px}.slider .arrow{display:none}}

/* Simulador legible */
.sim{background:#121110;color:#f5f1e6;border:1px solid #37332a;border-radius:16px;padding:26px;box-shadow:0 14px 34px rgba(20,15,0,.28)}
.sim-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.sim-label{font-size:17px;font-weight:700;color:#f5f1e6}
.sim-score{font-family:'Sora',sans-serif;font-size:46px;font-weight:800;color:#e3c565;line-height:1}
.sim input[type=range]{width:100%;margin:16px 0 4px;accent-color:#c9a227;height:32px;cursor:pointer;background:transparent;border:0;padding:0}
.sim-scale{display:flex;justify-content:space-between;color:#b6ae9d;font-size:13.5px}
.sim .habits{display:grid;gap:10px;margin-top:12px}
.sim .habits label{display:flex;gap:14px;align-items:center;background:#1b1a17;border:1.5px solid #37332a;border-radius:12px;padding:15px 16px;font-size:17px;font-weight:600;cursor:pointer;color:#f5f1e6;margin:0}
.sim .habits input{width:25px;height:25px;accent-color:#c9a227;flex:none;margin:0}
.sim .habits label:has(input:checked){border-color:#c9a227;background:#26200d}
.sim-result{margin-top:22px;background:#221a06;border:1.5px solid #c9a227;border-radius:12px;padding:20px 16px;text-align:center}
.sim-result .big{font-family:'Sora',sans-serif;font-size:36px;font-weight:800;color:#ffffff;line-height:1.15}
.sim-result .big .gold{color:#e3c565}
.sim-result .sub{color:#e3c565;font-size:17.5px;font-weight:700;margin-top:6px}
.sim-note{color:#b6ae9d;font-size:14.5px;margin-top:14px;text-align:center}

/* Fondo del slider */
.slider{background-image:url('fondo-slider.jpg');background-size:cover;background-position:center}
.slider:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,11,.84),rgba(10,10,11,.48) 55%,rgba(10,10,11,.18));z-index:0}
.slide{position:relative;z-index:1}

.foot-contact{margin-top:12px;line-height:1.9}
.foot-contact a{color:var(--blue2);font-weight:700}
.contact-card{text-align:left}
.contact-card .big-link{font-family:'Sora',sans-serif;font-size:21px;font-weight:800;color:var(--blue2)}
