/* TaxiNexo Design System 1.1 — capa visual y de confianza */
:root{
  --tn-navy-950:#061827;--tn-navy-900:#08263d;--tn-navy-800:#123b5d;
  --tn-yellow-500:#f5c842;--tn-yellow-600:#e8b82e;
  --tn-green-600:#087a55;--tn-red-600:#b42318;
  --tn-ink:#172333;--tn-muted:#5c6f82;--tn-line:#d9e4ec;
  --tn-surface:#ffffff;--tn-soft:#f5f8fb;--tn-focus:#1c79b8;
  --tn-radius-sm:10px;--tn-radius-md:16px;--tn-radius-lg:24px;
  --tn-shadow-sm:0 6px 18px rgba(6,24,39,.07);
  --tn-shadow-md:0 16px 38px rgba(6,24,39,.12);
  --tn-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
html{color-scheme:light;scroll-padding-top:92px}
body.tn-design-v11{font-family:var(--tn-font);color:var(--tn-ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.tn-design-v11 :where(a,button,input,select,textarea,summary){font:inherit}
body.tn-design-v11 :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--tn-focus)!important;outline-offset:3px!important}
body.tn-design-v11 :where(button,.btn,.calc-btn,.calc-whatsapp,.mini-cta,.float-cta){min-height:44px}
body.tn-design-v11 :where(input,select,textarea){font-size:16px}
body.tn-design-v11 :where(.card,.panel,.metric,.step,.destination,.area-card,.calc-shell,.module-result-box){border-color:var(--tn-line)!important;box-shadow:var(--tn-shadow-sm)}
body.tn-design-v11 :where(.card,.panel,.destination,.step,.calc-shell){border-radius:var(--tn-radius-lg)}
body.tn-design-v11 :where(.btn,.calc-btn,.calc-whatsapp,.mini-cta,.float-cta){border-radius:var(--tn-radius-md);font-weight:800;letter-spacing:.005em}
body.tn-design-v11 :where(.btn-primary,.btn.yellow,.calc-btn,.float-cta){background:var(--tn-yellow-500)!important;color:#1b1b1b!important;box-shadow:0 10px 24px rgba(232,184,46,.25)!important}
body.tn-design-v11 :where(.btn-primary,.btn.yellow,.calc-btn,.float-cta):hover{background:var(--tn-yellow-600)!important;transform:translateY(-1px)}
body.tn-design-v11 :where(.btn:not(.btn-primary):not(.yellow):not(.ghost):not(.secondary),.calc-whatsapp){background:var(--tn-navy-900)!important;color:#fff!important}
body.tn-design-v11 :where(.btn:not(.btn-primary):not(.yellow):not(.ghost):not(.secondary),.calc-whatsapp):hover{background:var(--tn-navy-800)!important;transform:translateY(-1px)}
body.tn-design-v11 :where(.topbar){background:var(--tn-navy-950)!important}
body.tn-design-v11 :where(.nav,.site-header.nav){border-bottom:1px solid var(--tn-line)!important}
body.tn-design-v11 :where(h1,h2,h3){text-wrap:balance}
body.tn-design-v11 :where(p,li){text-wrap:pretty}
body.tn-design-v11 :where(.hero h1,.hero-content h1){letter-spacing:-.035em}
body.tn-design-v11 :where(.hero p,.lead){max-width:68ch}
body.tn-design-v11 :where(.notice,.module-alert,.calc-warning,.calc-security){border-left-width:4px!important;border-radius:var(--tn-radius-md)!important}
body.tn-design-v11 :where(.status){font-weight:800}
.tn-skip-link{position:fixed;left:14px;top:12px;z-index:100000;transform:translateY(-180%);background:var(--tn-navy-950);color:#fff;padding:12px 16px;border-radius:12px;font-weight:800;box-shadow:var(--tn-shadow-md)}
.tn-skip-link:focus{transform:translateY(0)}
.tn-assurance{background:#fff;border-block:1px solid var(--tn-line)}
.tn-assurance__inner{width:min(1120px,calc(100% - 32px));margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.tn-assurance__item{display:flex;align-items:flex-start;gap:10px;padding:16px 18px;border-right:1px solid var(--tn-line)}
.tn-assurance__item:last-child{border-right:0}
.tn-assurance__icon{width:32px;height:32px;flex:0 0 32px;border-radius:50%;display:grid;place-items:center;background:#fff7d8;color:var(--tn-navy-950);font-weight:900}
.tn-assurance__item strong{display:block;color:var(--tn-navy-950);font-size:14px;line-height:1.25}
.tn-assurance__item span{display:block;margin-top:3px;color:var(--tn-muted);font-size:12px;line-height:1.35}
.tn-footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 18px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}
.tn-footer-links a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.tn-policy-note{margin:18px 0;padding:16px 18px;border:1px solid #ead58a;border-radius:var(--tn-radius-md);background:#fff9e5;color:#4a3a00;line-height:1.55}
.tn-page-shell{width:min(1040px,calc(100% - 32px));margin:0 auto}
.tn-page-hero{background:linear-gradient(135deg,var(--tn-navy-950),var(--tn-navy-800));color:#fff;padding:72px 0 58px}
.tn-page-hero .eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:var(--tn-yellow-500);color:#1d1d1d;font-weight:800;margin-bottom:14px}
.tn-page-hero h1{font-size:clamp(36px,6vw,62px);margin:0 0 14px;line-height:1.05}
.tn-page-hero p{font-size:clamp(17px,2vw,21px);max-width:70ch;margin:0;color:#e8f0f6}
.tn-content{padding:52px 0 72px;background:var(--tn-soft)}
.tn-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tn-content-card{background:#fff;border:1px solid var(--tn-line);border-radius:var(--tn-radius-lg);padding:24px;box-shadow:var(--tn-shadow-sm)}
.tn-content-card h2{margin-top:0;color:var(--tn-navy-950)}
.tn-content-card p:last-child{margin-bottom:0}
.tn-help-list{display:grid;gap:10px}
.tn-help-list a{display:flex;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--tn-line);border-radius:14px;background:#fff;color:var(--tn-navy-900);font-weight:800}
.tn-help-list a:hover{background:#f8fbfd}
@media(max-width:820px){
 .tn-assurance__inner{grid-template-columns:1fr 1fr}
 .tn-assurance__item:nth-child(2){border-right:0}
 .tn-assurance__item:nth-child(-n+2){border-bottom:1px solid var(--tn-line)}
 .tn-content-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
 .tn-assurance__inner{grid-template-columns:1fr}
 .tn-assurance__item{border-right:0;border-bottom:1px solid var(--tn-line)}
 .tn-assurance__item:last-child{border-bottom:0}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(prefers-contrast:more){body.tn-design-v11 :where(.card,.panel,.metric,.step,.destination,input,select,textarea){border-width:2px!important}}
