@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(fonts/montserrat-latin-500-normal.woff2) format('woff2');}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(fonts/montserrat-latin-600-normal.woff2) format('woff2');}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(fonts/montserrat-latin-700-normal.woff2) format('woff2');}
@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(fonts/montserrat-latin-800-normal.woff2) format('woff2');}
/* TuImportador.com — sistema visual. Negro + rojo, panda. (Estructura heredada de ZHAO) */
:root{
  --ink:#0B0B0D; --ink2:#141417; --ink3:#1D1D22; --line:#2A2A31;
  --navy:#1A1A20; --steel:#A9A9B3; --mut:#72727D; --pearl:#F1F1F4; --white:#fff;
  --acc:#E3242B; --acc2:#FF474D; --ok:#31C48D; --warn:#F5B742; --bad:#F0603C;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --sans:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --r:10px; --max:1280px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--ink);color:var(--pearl);font-family:var(--sans);
  font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.mono{font-family:var(--mono)}

/* ---- marca ---- */
.brand{display:flex;align-items:center;gap:11px;font-weight:700;letter-spacing:.16em;font-size:15px}
.brand .mk{width:26px;height:26px;position:relative;flex:0 0 26px}
.brand .mk::before,.brand .mk::after{content:"";position:absolute;width:8px;height:8px;border:2px solid var(--acc)}
.brand .mk::before{top:0;left:0;border-right:0;border-bottom:0}
.brand .mk::after{bottom:0;right:0;border-left:0;border-top:0}
.brand .mk i{position:absolute;inset:7px;background:var(--acc);opacity:.85;border-radius:1px}
.brand small{font-family:var(--mono);font-size:9px;letter-spacing:.2em;color:var(--mut);display:block;font-weight:500}

/* ---- nav ---- */
header.nav{position:sticky;top:0;z-index:50;background:rgba(10,14,20,.86);
  backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:62px;gap:24px}
.navlinks{display:flex;gap:26px;font-size:13px;letter-spacing:.04em;color:var(--steel);flex-wrap:wrap}
.navlinks a:hover,.navlinks a.on{color:var(--white)}
.navlinks a.on{box-shadow:0 2px 0 var(--acc)}

/* ---- tipografia ---- */
h1,h2,h3{margin:0;font-weight:640;letter-spacing:-.022em;line-height:1.1}
h1{font-size:clamp(38px,6.4vw,76px)}
h2{font-size:clamp(24px,3.1vw,38px)}
h3{font-size:19px;letter-spacing:-.01em}
.kicker{font-family:var(--mono);font-size:10.5px;letter-spacing:.26em;color:var(--acc);text-transform:uppercase}
.lead{color:var(--steel);font-size:17px;max-width:62ch}
.dim{color:var(--mut)}

/* ---- hero ---- */
.hero{position:relative;min-height:clamp(520px,78vh,760px);display:flex;align-items:flex-end;
  border-bottom:1px solid var(--line);overflow:hidden}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;
  filter:saturate(.72) contrast(1.06)}
.hero .bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,14,20,.55) 0%,rgba(10,14,20,.72) 42%,var(--ink) 100%)}
.hero .wrap{position:relative;padding-bottom:58px;padding-top:90px;width:100%}
.flow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--steel);
  display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.flow b{color:var(--acc);font-weight:500}

/* ---- botones ---- */
.btn{display:inline-flex;align-items:center;gap:9px;padding:12px 22px;border-radius:var(--r);
  font-size:13.5px;font-weight:600;letter-spacing:.03em;border:1px solid transparent;cursor:pointer;
  transition:.16s;font-family:var(--sans)}
.btn-p{background:var(--acc);color:#160A02}
.btn-p:hover{background:var(--acc2)}
.btn-g{border-color:var(--line);color:var(--pearl);background:transparent}
.btn-g:hover{border-color:var(--steel);background:var(--ink2)}
.btn:disabled{opacity:.45;cursor:not-allowed}

/* ---- superficies ---- */
.card{background:var(--ink2);border:1px solid var(--line);border-radius:var(--r)}
.pad{padding:22px}
.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
section{padding:78px 0}
.sechead{margin-bottom:34px}

/* ---- chips de procedencia (§5: nunca inventar) ---- */
.chip{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:9.5px;
  letter-spacing:.1em;padding:2px 7px;border-radius:2px;text-transform:uppercase;white-space:nowrap}
.chip::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.c-conf{background:rgba(49,196,141,.13);color:var(--ok)}
.c-plat{background:rgba(138,151,168,.14);color:var(--steel)}
.c-est {background:rgba(245,183,66,.13);color:var(--warn)}
.c-no  {background:rgba(240,96,60,.11);color:var(--bad)}

/* ---- codigo de proveedor ---- */
.code{font-family:var(--mono);font-size:15px;letter-spacing:.09em;color:var(--acc);font-weight:600}
.codebox{display:inline-flex;align-items:center;gap:8px;padding:5px 11px;border:1px dashed var(--line);
  border-radius:var(--r);background:rgba(255,106,26,.05)}

/* ---- score ---- */
.score{font-family:var(--mono);font-size:30px;font-weight:700;line-height:1}
.score small{font-size:12px;color:var(--mut);font-weight:400}
.bar{height:5px;background:var(--ink3);border-radius:3px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--acc);border-radius:3px}
.bar.g i{background:var(--ok)} .bar.y i{background:var(--warn)} .bar.r i{background:var(--bad)}

/* ---- tablas ---- */
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--mut);
  text-transform:uppercase;padding:10px 12px;border-bottom:1px solid var(--line);font-weight:500}
td{padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}
tr:hover td{background:var(--ink2)}
.num{font-family:var(--mono);text-align:right}
.scroll{overflow-x:auto}

/* ---- fuentes en vivo ---- */
.src{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;
  border:1px solid var(--line);border-radius:var(--r);background:var(--ink2);font-size:13px}
.src .st{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--mut)}
.src.busy .st{color:var(--acc)}
.src.done .st{color:var(--ok)}
.src.off{opacity:.5}
@keyframes pulse{0%,100%{opacity:.35}50%{opacity:1}}
.src.busy .st{animation:pulse 1.1s infinite}

/* ---- dropzone ---- */
.drop{border:1.5px dashed var(--line);border-radius:var(--r);padding:52px 24px;text-align:center;
  background:var(--ink2);cursor:pointer;transition:.18s}
.drop:hover,.drop.over{border-color:var(--acc);background:rgba(255,106,26,.045)}
.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:24px;flex-wrap:wrap}
.tab{padding:11px 20px;font-size:13px;color:var(--steel);cursor:pointer;border-bottom:2px solid transparent;
  background:none;border-top:0;border-left:0;border-right:0;font-family:var(--sans)}
.tab.on{color:var(--white);border-bottom-color:var(--acc)}

/* ---- formularios ---- */
input,select,textarea{width:100%;background:var(--ink);border:1px solid var(--line);color:var(--pearl);
  padding:11px 13px;border-radius:var(--r);font-size:14px;font-family:var(--sans)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--acc)}
label{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--mut);
  text-transform:uppercase;margin-bottom:6px}
.field{margin-bottom:16px}

/* ---- estados kanban ---- */
.state{font-family:var(--mono);font-size:10px;letter-spacing:.09em;padding:3px 9px;border-radius:2px;
  background:var(--ink3);color:var(--steel);text-transform:uppercase}
.state.nuevo{background:rgba(255,106,26,.15);color:var(--acc)}
.state.confirmado,.state.pagado{background:rgba(49,196,141,.14);color:var(--ok)}
.state.perdido{background:rgba(240,96,60,.12);color:var(--bad)}

/* ---- avisos ---- */
.note{border-left:2px solid var(--acc);padding:12px 16px;background:var(--ink2);font-size:13.5px;color:var(--steel)}
.note.warn{border-color:var(--warn)}
.blur{filter:blur(7px);user-select:none;pointer-events:none}
footer{border-top:1px solid var(--line);padding:36px 0;color:var(--mut);font-size:12.5px}
.rowb{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sep{height:1px;background:var(--line);margin:22px 0}
.hide{display:none}
@media(max-width:640px){ .wrap{padding:0 18px} section{padding:52px 0} .pad{padding:16px} }

/* ---- galeria de planta ---- */
.gal{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.gal figure{margin:0;position:relative;overflow:hidden;border-radius:var(--r);background:var(--ink2)}
.gal img{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .5s ease,filter .5s ease;
  filter:saturate(.82) contrast(1.04)}
.gal figure:hover img{transform:scale(1.06);filter:saturate(1) contrast(1.04)}
.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 11px 9px;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--pearl);
  background:linear-gradient(180deg,transparent,rgba(10,14,20,.9));opacity:0;transition:opacity .3s}
.gal figure:hover figcaption{opacity:1}
@media(max-width:980px){.gal{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.gal{grid-template-columns:repeat(2,1fr)}}

/* ---- hero de marca ---- */
.hero{min-height:100vh;min-height:100svh;align-items:center}
.hero .wrap{padding-bottom:0;padding-top:0}
.hero-in{animation:rise .9s cubic-bezier(.16,.84,.32,1) both}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
/* ideograma de fondo */
.hero .han{position:absolute;right:4vw;top:50%;transform:translateY(-50%);
  font-size:min(62vh,44vw);line-height:1;color:var(--acc);opacity:.075;
  pointer-events:none;user-select:none;font-weight:500}
@media(max-width:900px){.hero .han{right:-8vw;opacity:.055}}
/* corchetes de escaneo, el motivo del logo, enmarcando la pantalla */
.hero .br{position:absolute;width:52px;height:52px;border:2px solid var(--acc);opacity:.55;
  pointer-events:none;animation:scanin 1.1s .25s cubic-bezier(.16,.84,.32,1) both}
.hero .br.tl{top:26px;left:26px;border-right:0;border-bottom:0}
.hero .br.tr{top:26px;right:26px;border-left:0;border-bottom:0}
.hero .br.bl{bottom:26px;left:26px;border-right:0;border-top:0}
.hero .br.br2{bottom:26px;right:26px;border-left:0;border-top:0}
@keyframes scanin{from{opacity:0;transform:scale(1.5)}to{opacity:.55;transform:none}}
/* logotipo grande */
.wordmark{display:flex;align-items:center;gap:clamp(12px,1.8vw,20px)}
.mkbig{position:relative;width:clamp(34px,4.4vw,52px);height:clamp(34px,4.4vw,52px);flex:0 0 auto}
.mkbig::before,.mkbig::after{content:"";position:absolute;width:34%;height:34%;border:3px solid var(--acc)}
.mkbig::before{top:0;left:0;border-right:0;border-bottom:0}
.mkbig::after{bottom:0;right:0;border-left:0;border-top:0}
.mkbig i{position:absolute;inset:26%;background:var(--acc)}
.wm{font-size:clamp(46px,8.2vw,104px);font-weight:700;letter-spacing:.14em;line-height:1;
  color:var(--white);text-shadow:0 2px 40px rgba(0,0,0,.5)}
@media(prefers-reduced-motion:reduce){.hero-in,.hero .br{animation:none}}
@media(max-width:640px){.hero .br{width:32px;height:32px;top:16px;left:16px}
  .hero .br.tr{right:16px;left:auto}.hero .br.bl{bottom:16px;top:auto}
  .hero .br.br2{bottom:16px;right:16px;top:auto;left:auto}}

/* ================= TuImportador.com ================= */
h1,h2,h3{font-weight:800;letter-spacing:-.02em}
.logo{font-weight:800;font-size:21px;letter-spacing:-.02em;white-space:nowrap}
.logo b{color:var(--acc)} .logo small{display:block;font-size:8.5px;letter-spacing:.42em;color:var(--steel);font-weight:600;margin-top:-2px}
.btn-p{background:var(--acc)!important;border-color:var(--acc)!important;color:#fff!important;border-radius:999px}
.btn-p:hover{background:var(--acc2)!important}
.ti-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:var(--ink)}
.ti-hero .art{position:absolute;inset:0 0 0 38%;background:url(img/ti_hero.jpg) center/cover no-repeat}
.ti-hero .art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(11,11,13,.55) 30%,rgba(11,11,13,0) 60%),linear-gradient(0deg,var(--ink) 0%,rgba(11,11,13,0) 30%)}
.ti-hero .wrap{position:relative;padding:72px 28px 64px;min-height:clamp(480px,70vh,660px);display:flex;flex-direction:column;justify-content:center}
.ti-hero h1{font-size:clamp(38px,5.6vw,70px);line-height:1.02;max-width:12ch}
.ti-hero h1 em{font-style:normal;color:var(--acc);display:block;text-transform:uppercase}
.ti-hero .sub{font-size:19px;font-weight:600;margin:22px 0 4px}
.ti-hero .swash{width:170px;height:4px;background:var(--acc);border-radius:4px;transform:rotate(-2deg);margin:6px 0 28px}
.steps5{display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:var(--ink2);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.steps5 > div{padding:22px 20px;border-right:1px solid var(--line)} .steps5 > div:last-child{border-right:0}
.steps5 .n{width:30px;height:30px;border-radius:50%;background:var(--acc);color:#fff;font-weight:800;display:grid;place-items:center;font-size:15px}
.steps5 h4{margin:12px 0 6px;font-size:14px;letter-spacing:.02em;text-transform:uppercase}
.steps5 p{margin:0;color:var(--steel);font-size:13.5px;line-height:1.45}
.trust{display:flex;flex-wrap:wrap;gap:14px 34px;align-items:center;justify-content:space-between;padding:26px 0;color:var(--steel);font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.trust span::before{content:"✓";color:var(--acc);margin-right:8px;font-weight:800}
.flags{display:inline-flex;gap:10px;align-items:center;background:var(--ink3);border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600}
.wa-fab{position:fixed;right:20px;bottom:20px;z-index:60;background:#25D366;color:#fff;border-radius:999px;padding:13px 18px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.35)}
/* chat */
.chat{max-width:760px;margin:0 auto;display:flex;flex-direction:column;height:calc(100vh - 62px);height:calc(100dvh - 62px)}
.chat-head{display:flex;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}
.chat-head img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--acc)}
.chat-log{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px}
.bub{max-width:82%;padding:11px 15px;border-radius:18px;white-space:pre-wrap;font-size:15px;line-height:1.45;word-wrap:break-word}
.bub.a{background:var(--ink3);border:1px solid var(--line);border-bottom-left-radius:6px;align-self:flex-start}
.bub.u{background:var(--acc);color:#fff;border-bottom-right-radius:6px;align-self:flex-end}
.bub img{max-width:220px;border-radius:12px;margin-bottom:6px}
.bub.typing{color:var(--mut);font-style:italic}
.chat-in{display:flex;gap:8px;padding:12px 12px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--ink)}
.chat-in textarea{flex:1;resize:none;height:46px;max-height:120px;border-radius:23px;padding:12px 16px;background:var(--ink2);border:1px solid var(--line);color:var(--pearl);font:inherit}
.chat-in .ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--ink3);border:1px solid var(--line);cursor:pointer;flex:0 0 46px;font-size:20px;color:var(--pearl)}
.chat-in .send{background:var(--acc);border-color:var(--acc)}
.chips{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 10px}
.chips button{background:var(--ink2);border:1px solid var(--line);color:var(--pearl);border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;cursor:pointer}
@media (max-width:860px){
  .steps5{grid-template-columns:1fr}
  .steps5 > div{border-right:0;border-bottom:1px solid var(--line)}
  .ti-hero .art{inset:0;opacity:.45}
  .ti-hero .wrap{padding:56px 16px 48px}
  .wrap{padding:0 16px}
}
.ti-hero .flags{align-self:flex-start}
.ti-hero .art{inset:0 0 0 44%}
.ti-hero .art::after{background:linear-gradient(90deg,var(--ink) 0%,rgba(11,11,13,.35) 18%,rgba(11,11,13,0) 45%),linear-gradient(0deg,var(--ink) 0%,rgba(11,11,13,0) 30%)}
@media (max-width:860px){ .ti-hero .art{inset:0} .navlinks .dim{display:none} .logo{font-size:18px} }

/* burbuja de chat */
.tic{position:fixed;right:20px;bottom:20px;z-index:80;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:var(--sans)}
.tic-btn{display:flex;align-items:center;gap:10px;background:var(--acc);color:#fff;border:0;border-radius:999px;padding:6px 18px 6px 6px;font:inherit;font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.45)}
.tic-btn img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #fff}
.tic-btn[hidden],.tic-panel[hidden],.tic-teaser[hidden]{display:none}
.tic-teaser{position:relative;max-width:270px;background:#fff;color:#111;border-radius:16px 16px 4px 16px;padding:14px 30px 14px 16px;box-shadow:0 10px 30px rgba(0,0,0,.4);font-size:14px;line-height:1.4;display:flex;flex-direction:column;gap:4px}
.tic-x{position:absolute;top:4px;right:6px;background:none;border:0;font-size:20px;color:#666;cursor:pointer}
.tic-panel{width:390px;height:min(640px,calc(100vh - 110px));background:var(--ink);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px rgba(0,0,0,.55)}
.tic-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 10px 8px 16px;background:var(--acc);color:#fff;font-weight:700;font-size:14px}
.tic-bar button{background:none;border:0;color:#fff;font-size:24px;cursor:pointer;line-height:1}
.tic-panel iframe{flex:1;border:0;width:100%;background:var(--ink)}
.tic-wa{background:#25D366;color:#fff;border-radius:999px;padding:10px 16px;font-weight:700;font-size:14px;box-shadow:0 8px 24px rgba(0,0,0,.35)}
@media (max-width:700px){ .tic{right:12px;bottom:12px} .tic-btn span{display:none} .tic-btn{padding:6px}
  .tic-panel{position:fixed;inset:0;width:auto;height:auto;border-radius:0} }

.ferr{color:var(--bad);font-size:12.5px;margin-top:5px}
.field input,.field select,.field textarea{font-size:16px}  /* 16px: iOS no hace zoom al tocar el campo */
.gate-btn{display:inline-block;margin-top:10px;background:var(--acc);color:#fff;border-radius:999px;padding:10px 18px;font-weight:700;text-decoration:none}
.bub.op{border-color:var(--acc)} .bub .who{display:block;font-size:11.5px;font-weight:700;color:var(--acc);margin-bottom:3px}
/* bandeja del equipo */
.inbox{display:grid;grid-template-columns:340px 1fr;gap:0;height:calc(100vh - 62px);height:calc(100dvh - 62px);padding:0!important;max-width:none}
.inbox-list{border-right:1px solid var(--line);overflow-y:auto}
.inbox-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:10px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--ink);z-index:2}
.inbox-tabs a{font-size:12.5px;padding:6px 10px;border-radius:999px;color:var(--steel)} .inbox-tabs a.on{background:var(--acc);color:#fff} .inbox-tabs b{font-weight:800}
.inbox-item{display:block;padding:12px 14px;border-bottom:1px solid var(--line)} .inbox-item:hover,.inbox-item.on{background:var(--ink2)}
.inbox-conv{display:flex;flex-direction:column;min-width:0}
.inbox-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--line)}
.inbox-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.inbox-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}
.inbox-msgs .bub img{max-width:200px}
@media (max-width:860px){ .inbox{grid-template-columns:1fr;height:auto} .inbox-list{max-height:45vh;border-right:0;border-bottom:1px solid var(--line)} .inbox-conv{min-height:70vh} }
.inbox-conv,.inbox-list{padding:0!important;margin:0}
.bub img.qfoto{display:block;width:100%;max-width:260px;border-radius:12px;margin:6px 0 4px;background:#fff}
.oauth-b{justify-content:center;gap:10px;width:100%;border-radius:999px;background:#fff!important;color:#111!important;border-color:#fff!important;font-weight:700}
.chat-in textarea,.chat-in input{font-size:16px}
label.opt{font-family:var(--sans)!important;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;color:var(--pearl)!important}

/* TuImportador 1.4 — mejora del sistema existente, sin sustituir rutas ni marca. */
:root { --ink:#0b0c10; --ink2:#14161c; --ink3:#1e2129; --line:#30343e; --steel:#c2c5cf; --mut:#a2a7b4; --acc:#e52332; --acc2:#f33443; --r:16px; --max:1280px; }
body {font-size:16px; line-height:1.6;}
[hidden] {display:none!important;}
:focus-visible {outline:3px solid #ff7680; outline-offset:4px;}
input:focus-visible,select:focus-visible,textarea:focus-visible {outline:2px solid #ff7680; outline-offset:2px;}
html {scroll-behavior:smooth; scroll-padding-top:90px;}
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
p {overflow-wrap:break-word;}
.grid > *, .rowb > *, .wrap {min-width:0;}
.g2 {grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));}
.g3 {grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));}
header.nav {background:rgba(11,12,16,.95);}
header.nav .wrap {min-height:76px;height:auto;padding-top:12px;padding-bottom:12px;gap:20px;}
.logo {font-size:24px;}
.logo small {font-size:10px;letter-spacing:.24em;color:var(--steel);margin-top:2px;}
.navlinks {align-items:center;font-size:14px;gap:24px;letter-spacing:0;}
.navlinks .dim {display:inline-flex;}
.navlinks a:not(.btn) {min-height:44px;align-items:center;display:inline-flex;}
.btn {font-size:14px;min-height:46px;letter-spacing:0;padding:12px 22px;border-radius:12px;font-weight:700;justify-content:center;}
.btn-p {border-radius:12px;box-shadow:0 6px 24px rgba(229,35,50,.14);}
.btn-p:hover {transform:translateY(-1px);}
.kicker {font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.14em;}
label {font-family:var(--sans);font-size:14px;letter-spacing:0;text-transform:none;color:var(--steel);font-weight:600;}
input,select,textarea {font-size:16px;min-height:46px;}
input[type=checkbox],input[type=radio] {min-height:0;accent-color:var(--acc);}
.note,.ferr {font-size:14px;}
.chip {font-size:12px;letter-spacing:.02em;border-radius:6px;padding:4px 8px;white-space:normal;}
th {font-family:var(--sans);font-size:12px;letter-spacing:.04em;font-weight:700;padding:14px 16px;}
table {font-size:14px;}
td {padding:14px 16px;}
.card {box-shadow:0 4px 20px rgba(0,0,0,.08);}
.ti-hero {background:var(--ink);}
.ti-hero .art {inset:22px 22px 22px 47%;border-radius:22px;background-position:50% center;}
.ti-hero .art::after {background:linear-gradient(90deg,var(--ink),rgba(11,12,16,.2) 25%,transparent 50%),linear-gradient(0deg,rgba(11,12,16,.95),transparent 36%);}
.ti-hero .wrap {min-height:650px;padding:64px 28px 56px;display:flex;justify-content:center;}
.hero-copy {max-width:555px;position:relative;}
.hero-eyebrow {color:var(--steel);font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:16px;}
.ti-hero .flags {background:transparent;border:0;padding:0;gap:18px;font-size:14px;margin-bottom:28px;}
.ti-hero h1 {font-size:clamp(42px,4.7vw,64px);line-height:1.08;max-width:none;letter-spacing:-.045em;}
.ti-hero h1 em {text-transform:none;color:#ff4b59;}
.ti-hero .sub {font-size:20px;margin:25px 0 9px;line-height:1.5;}
.hero-description {font-size:16px;line-height:1.7;color:var(--steel);max-width:42ch;margin:0 0 25px;}
.hero-actions {display:flex;gap:12px;flex-wrap:wrap;}
.hero-actions .btn {min-height:50px;}
.hero-micro {font-size:13px;color:var(--steel);margin:16px 0 0;}
.hero-caption {position:absolute;bottom:48px;right:46px;width:40%;display:flex;flex-direction:column;gap:4px;}
.hero-caption span {font-size:12px;color:#e1e3e8;letter-spacing:.07em;text-transform:uppercase;}
.hero-caption strong {font-size:16px;max-width:32ch;line-height:1.5;}
.how-section {padding:60px 0 0;}
.section-heading {display:flex;justify-content:space-between;align-items:end;gap:28px;margin:0 0 28px;}
.section-heading h2 {font-size:clamp(26px,3vw,36px);line-height:1.2;margin-top:12px;}
.section-heading > p {font-size:14px;color:var(--steel);margin:0;}
.steps5 {border-radius:18px;background:var(--ink2);}
.steps5 > div {padding:24px 20px 28px;}
.steps5 .n {font-family:var(--mono);background:none;color:#ff6672;font-size:20px;width:auto;height:auto;display:block;border-radius:0;margin-bottom:26px;}
.steps5 h3 {font-size:17px;margin-bottom:10px;line-height:1.3;}
.steps5 p {font-size:14px;line-height:1.65;}
.trust {font-size:12px;text-transform:none;letter-spacing:0;padding:24px 0;gap:16px;justify-content:space-around;border-bottom:1px solid var(--line);}
.trust span::before {color:#ff6672;}
.benefits-section {padding:64px 0 72px;}
.benefit-grid .card {background:none;border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:none;padding:4px 24px 12px;}
.benefit-grid .card:first-child {padding-left:0;border-left:0;}
.benefit-number {font-size:12px;color:#ff6672;letter-spacing:.07em;font-weight:700;margin-bottom:20px;}
.benefit-grid h3 {font-size:20px;line-height:1.4;max-width:23ch;}
.benefit-grid p {font-size:15px;line-height:1.75;color:var(--steel);margin:12px 0 0;}
.buying-details {margin-top:36px;border-top:1px solid var(--line);}
.buying-details details {border-bottom:1px solid var(--line);padding:18px 0;}
.buying-details summary {font-size:16px;font-weight:600;cursor:pointer;}
.buying-details details p {font-size:15px;line-height:1.75;color:var(--steel);max-width:90ch;margin-bottom:0;}
.section-cta {margin:36px 0 48px;display:flex;justify-content:space-between;align-items:center;gap:24px;}
.section-cta div {display:flex;flex-direction:column;gap:5px;}
.section-cta strong {font-size:20px;}
.section-cta span {font-size:14px;color:var(--steel);}
.partner-card {background:linear-gradient(115deg,#28141b,#15171d 60%);border-color:#63303a;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:36px;}
.partner-card h2 {font-size:32px;line-height:1.2;margin:12px 0;}
.partner-card p {font-size:15px;color:var(--steel);max-width:65ch;margin-bottom:0;}
.partner-card .btn {flex-shrink:0;}
footer {font-size:13px;padding:30px 0 90px;}
.footer-team {text-decoration:underline;}
.tic-btn {background:#e52332;padding:6px 20px 6px 6px;border:1px solid #ff6570;}
.tic-panel {width:440px;height:min(720px,calc(100dvh - 100px));border-radius:20px;border-color:#484b57;}
.tic-bar {background:var(--ink2);border-bottom:1px solid var(--line);padding:12px 12px 12px 18px;}
.tic-bar button,.tic-x {min-width:36px;min-height:36px;}
.tic-teaser {max-width:290px;padding-right:42px;}
.chat {max-width:860px;height:calc(100dvh - 76px);}
.chat-head {padding:16px 20px;background:var(--ink2);}
.chat-head img {width:46px;height:46px;}
.chat-head strong {font-size:15px;}
.chat-head .dim {font-size:13px!important;}
.chat-title {flex:1;min-width:0;}
.chat-help {background:none;border:1px solid var(--line);color:var(--steel);border-radius:9px;font:inherit;font-size:12px;padding:8px;cursor:pointer;}
.chat-progress {display:flex;gap:7px;padding:10px 20px;border-bottom:1px solid var(--line);font-size:12px;color:var(--mut);}
.chat-progress span {flex:1;display:flex;align-items:center;gap:6px;}
.chat-progress i {font-style:normal;font-family:var(--mono);}
.chat-progress .active {color:#ff6975;}
.chat-progress .done {color:var(--pearl);}
.chat-log {padding:22px 20px;gap:14px;}
.bub {font-size:15px;line-height:1.65;max-width:88%;padding:14px 17px;}
.bub.a {background:var(--ink2);}
.bub.u {background:#b7192b;border:1px solid #d12c3e;}
.bub .who {font-size:12px;color:#ff6975;}
.bub.typing {font-size:14px;color:var(--steel);}
.chat-in {padding:14px 16px calc(14px + env(safe-area-inset-bottom));}
.chat-in textarea {border-radius:12px;min-width:0;}
.chat-in .ic {border-radius:12px;}
.chat-note {font-size:12px;color:var(--mut);text-align:center;padding:0 16px 10px;background:var(--ink);}
.chat-notice {font-size:13px;padding:10px 16px;background:#39221d;color:#ffe0cf;}
.chat-notice button {font:inherit;background:transparent;border:1px solid #986858;border-radius:6px;color:inherit;margin-left:8px;padding:4px 10px;cursor:pointer;}
.chips {gap:8px;}
.chips button {font-size:14px;min-height:42px;border-radius:10px;}
.quote-set {width:100%;align-self:stretch;display:grid;gap:12px;}
.quote-card {background:var(--ink2);border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.quote-card.recommended {border-color:#ac3742;}
.quote-photo {width:100%;height:160px;object-fit:contain;background:#fff;padding:10px;}
.quote-no-photo {height:90px;display:grid;place-items:center;background:var(--ink3);color:var(--steel);font-size:13px;}
.quote-body {padding:16px;}
.quote-top {display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:14px;margin-bottom:8px;}
.quote-tag {color:#ff7b85;font-size:12px;}
.quote-total {font-size:24px;font-weight:800;letter-spacing:-.02em;}
.quote-unit {font-size:14px;color:var(--steel);margin:4px 0 10px;}
.quote-meta {font-size:13px;color:var(--steel);display:flex;flex-wrap:wrap;gap:8px 16px;}
.quote-caption {font-size:12px;color:var(--mut);margin:12px 0;}
.quote-card .btn {width:100%;}
.inbox {height:calc(100dvh - 76px);grid-template-columns:350px 1fr;}
.inbox-tabs a {font-size:13px;min-height:40px;}
.inbox-item {padding:16px;}
.inbox-head {background:var(--ink2);padding:16px 20px;}
.inbox-msgs {padding:20px;}
.legal h3 {margin-top:28px;}
.legal p,.legal li {line-height:1.8;}
.staff-ui .navlinks {gap:18px;flex-wrap:nowrap;overflow-x:auto;}
.staff-ui header.nav .wrap {gap:24px;}
.staff-ui .navlinks a {white-space:nowrap;flex-shrink:0;}
@media(min-width:1000px) {.page-pedido .quote-set {grid-template-columns:repeat(3,minmax(0,1fr));}.page-pedido .quote-set.single {grid-template-columns:1fr;}}
@media(max-width:980px) {.hero-copy{max-width:49%;}.hero-caption{right:30px;}.ti-hero h1{font-size:48px;}.hero-description{font-size:15px;}.steps5{grid-template-columns:repeat(3,1fr);}.steps5 > div{border-bottom:1px solid var(--line);}.steps5 > div:last-child{border-bottom:0;}.steps5 > div:nth-child(3){border-right:0;}.partner-card{padding:28px;}.staff-ui header.nav .wrap{flex-wrap:wrap;gap:6px;}.staff-ui .navlinks{width:100%;}.inbox{height:calc(100dvh - 120px);}}
@media(max-width:700px) {.wrap{padding:0 20px;}header.nav .wrap{min-height:68px;padding:10px 20px;gap:12px;}.logo{font-size:19px;}.logo small{font-size:9px;letter-spacing:.18em;}.navlinks{gap:12px;font-size:13px;}.navlinks .btn{padding:8px 12px!important;font-size:12px;min-height:40px;}.navlinks .dim{display:inline-flex;}.hero-copy{max-width:100%;}.ti-hero .wrap{padding:38px 20px 290px;min-height:780px;}.ti-hero .art{inset:auto 12px 12px;height:320px;border-radius:16px;opacity:1;background-position:50% 48%;}.ti-hero .art::after{background:linear-gradient(180deg,var(--ink),transparent 28%,rgba(11,12,16,.55));}.ti-hero .flags{margin-bottom:22px;font-size:13px;}.ti-hero h1{font-size:clamp(40px,11vw,54px);}.ti-hero .sub{font-size:18px;margin-top:20px;}.hero-description{font-size:15px;max-width:43ch;}.hero-caption{bottom:32px;right:32px;left:32px;width:auto;}.hero-caption strong{font-size:14px;}.hero-micro{font-size:12px;}.how-section{padding-top:36px;}.section-heading{display:block;}.section-heading > p{margin-top:14px;}.steps5{grid-template-columns:1fr;}.steps5 > div{padding:22px;display:grid;grid-template-columns:36px 1fr;column-gap:12px;border-right:0;}.steps5 .n{grid-row:1/3;margin:0;}.steps5 h3{margin-bottom:5px;}.trust{justify-content:flex-start;gap:12px 22px;}.benefits-section{padding:40px 0;}.benefit-grid .card,.benefit-grid .card:first-child{border-left:0;border-bottom:1px solid var(--line);padding:0 0 22px;}.benefit-number{margin-bottom:10px;}.benefit-grid h3{max-width:none;}.section-cta,.partner-card{flex-direction:column;align-items:flex-start;gap:20px;}.partner-card{padding:24px;}.partner-card h2{font-size:28px;}.tic{right:12px;bottom:12px;}.tic-btn span{display:block;font-size:13px;}.tic-btn{padding:5px 14px 5px 5px;}.tic-btn img{width:36px;height:36px;}.tic-panel{inset:0;width:auto;height:100dvh;border-radius:0;}.chat{height:calc(100dvh - 68px);}.chat-head{padding:12px;gap:8px;}.chat-head strong{font-size:14px;}.chat-help{max-width:85px;line-height:1.35;}.chat-progress{padding:10px 12px;gap:4px;font-size:11px;}.chat-log{padding:16px 12px;}.bub{max-width:94%;font-size:14px;}.inbox{display:block;height:auto;}.inbox-list{max-height:40dvh;}.inbox-conv{height:70dvh;min-height:500px;}.inbox-head{padding:14px;}.staff-ui .logo{font-size:20px;}.footer-team{min-height:44px;display:inline-flex;align-items:center;}}
@media(max-width:380px) {.logo{font-size:17px;}.navlinks{gap:8px;}.hero-actions .btn{padding:11px 16px;}.chat-head img{width:36px;height:36px;}}
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto;}*,*::before,*::after{animation:none!important;transition:none!important;}}

@media(max-width:700px) {.public-ui .navlinks{flex-wrap:nowrap;}.page-home .navlinks .btn{display:none;}.ti-hero .wrap{padding-bottom:350px;}}

/* 1.5 (fusion): vuelve la promesa del banner del cliente; el texto de la foto no tapa el logo de la laptop */
.ti-hero h1 em.claim{display:block;text-transform:uppercase;color:var(--acc);font-size:.8em;line-height:1.05;margin-top:.12em}
.hero-caption{bottom:auto!important;top:28px}
@media(max-width:700px){.hero-caption{top:auto;bottom:auto!important;display:none}}
/* 1.5: el panda (mascota) entero: la imagen se alinea a la izquierda dentro del recuadro y el degradado no le tapa la cara */
.ti-hero .art{background-position:0% 50%!important}
.ti-hero .art::after{background:linear-gradient(90deg,rgba(11,12,16,.45) 0%,transparent 10%),linear-gradient(0deg,rgba(11,12,16,.85),transparent 30%)!important}
@media(max-width:700px){.ti-hero .art{background-position:0% 45%!important}}

/* 1.5.2: importación directa B2B, no solo IA */
.hero-strip{list-style:none;padding:0;margin:14px 0 22px;display:flex;flex-wrap:wrap;gap:8px}
.hero-strip li{font-size:13px;font-weight:600;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.04);color:#e9eaee}
.hero-strip li:nth-child(3){border-color:var(--acc);color:#fff}
.hero-description strong{color:#fff}
.import-section{padding:56px 0 20px}
.import-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:26px}
.import-grid>div{padding:26px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.import-grid>div:nth-child(3n){border-right:0} .import-grid>div:nth-child(n+4){border-bottom:0}
.import-grid h3{font-size:17px;margin:0 0 8px;display:flex;gap:10px;align-items:center}
.import-grid h3::before{content:"✓";color:var(--acc);font-weight:800}
.import-grid p{margin:0;color:var(--steel);font-size:14px;line-height:1.55}
@media(max-width:860px){.import-grid{grid-template-columns:1fr}.import-grid>div{border-right:0!important;border-bottom:1px solid var(--line)!important}.import-grid>div:last-child{border-bottom:0!important}}
@media(max-width:700px){.hero-strip li{font-size:12px;padding:5px 10px}.import-section{padding:36px 0 10px}}

/* 1.5.3: escala (desde un lapiz hasta un camion) */
.scale-section{padding:40px 0 0}
.scale-band{display:flex;gap:32px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:30px 32px;border-radius:18px;background:linear-gradient(120deg,rgba(227,36,43,.16),rgba(227,36,43,.04) 60%);border:1px solid rgba(227,36,43,.35)}
.scale-band h2{margin:8px 0 6px;font-size:clamp(26px,3.2vw,36px)} .scale-band p{margin:0;color:#e9eaee;font-size:17px}
.scale-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;max-width:600px}
.scale-list li{font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;background:rgba(0,0,0,.35);border:1px solid var(--line)}
@media(max-width:700px){.scale-band{padding:22px}.scale-list li{font-size:13px}}

.scale-band{align-items:flex-start}
.scale-groups{display:flex;flex-direction:column;gap:16px;max-width:640px}
.scale-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#c9cbd2;margin-bottom:8px;font-weight:700}
.scale-list.big li{border-color:rgba(227,36,43,.6);background:rgba(227,36,43,.12)}
@media(min-width:861px){.scale-band{flex-wrap:nowrap;gap:40px}.scale-band>div:first-child{flex:0 0 330px}.scale-groups{flex:1;max-width:none}}
.scale-groups .scale-list{max-width:none}
