/* CVMOTOR — formulario público */
:root{--c:#1f4e79;--c-txt:#fff;--c-ink:#1f4e79;--a:#f79009;--a-txt:#1b2330;--pie:#16324f;--pie-txt:#fff;--bg:#f3f5f8;--card:#fff;--txt:#1b2330;--mut:#5f6b7a;--brd:#d9dfe7;--ok:#14804f;--err:#b42318;--r:14px}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--txt);line-height:1.55;-webkit-font-smoothing:antialiased}
.wrap{max-width:880px;margin:0 auto;padding:0 16px}
.cab{background:var(--c);color:var(--c-txt);background-image:linear-gradient(135deg,rgba(255,255,255,.08),rgba(0,0,0,.2))}
.top{display:flex;align-items:center;gap:12px;padding:18px 0}
.top img{height:44px;max-width:170px;object-fit:contain;background:#fff;border-radius:8px;padding:4px 8px}
.top .emp{font-weight:700;font-size:17px;color:var(--c-txt);text-decoration:none}
.hero{padding:22px 0 74px}
.hero h1{margin:0 0 10px;font-size:clamp(26px,5vw,38px);line-height:1.15}
.hero p{margin:0;opacity:.93;max-width:660px;font-size:16px}
main{margin-top:-50px;padding-bottom:4px}
.card{background:var(--card);border-radius:var(--r);box-shadow:0 6px 24px rgba(16,24,40,.08);padding:26px;margin-bottom:20px}
@media (max-width:560px){.card{padding:18px}}
.urg{border-left:5px solid var(--a)}
.urg h2{margin:0 0 12px;font-size:17px}
.urg ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.urg li{display:flex;gap:10px;align-items:flex-start}
.urg li::before{content:"";flex:0 0 9px;height:9px;margin-top:8px;border-radius:50%;background:var(--a)}
.urg small{display:block;color:var(--mut)}
h2.sec{font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);margin:28px 0 12px;font-weight:600}
form > h2.sec:first-of-type{margin-top:0}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.grid{grid-template-columns:1fr}}
.f.full{grid-column:1/-1}
.lb{display:block;font-weight:600;font-size:14px;margin-bottom:6px}
.req{color:var(--err)}
input[type=text],input[type=email],input[type=tel],input[type=date],select,textarea{width:100%;font:inherit;font-size:15px;padding:11px 12px;border:1px solid var(--brd);border-radius:10px;background:#fff;color:var(--txt);transition:border-color .15s,box-shadow .15s}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--c);box-shadow:0 0 0 3px rgba(31,78,121,.15);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 18%,transparent)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1.5px solid var(--brd);border-radius:999px;cursor:pointer;font-size:14px;font-weight:500;background:#fff;transition:all .15s;user-select:none}
.chip span::before{content:"";width:14px;height:14px;border:1.5px solid var(--brd);border-radius:4px;transition:all .15s;flex:none}
.chip.radio span::before{border-radius:50%}
.chip input:checked+span{border-color:var(--c);color:var(--c-ink);background:color-mix(in srgb,var(--c) 9%,#fff)}
.chip input:checked+span::before{background:var(--c);border-color:var(--c);box-shadow:inset 0 0 0 2px #fff}
.chip input:focus-visible+span{outline:2px solid var(--c);outline-offset:2px}
.tag{font-style:normal;font-size:11px;font-weight:700;color:var(--a-txt);background:var(--a);border-radius:6px;padding:1px 6px}
.drop{display:block;position:relative;border:2px dashed var(--brd);border-radius:12px;padding:22px;text-align:center;cursor:pointer;transition:all .15s;background:#fafbfc}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.drop:hover,.drop.over{border-color:var(--c)}
.drop b{color:var(--c-ink)}
.drop small{display:block;color:var(--mut);margin-top:4px}
.drop.ok{border-style:solid;border-color:var(--ok);background:#f0faf4}
.drop.mal{border-style:solid;border-color:var(--err);background:#fef3f2}
.drop.mal b{color:var(--err)}
.cap{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-weight:600}
.cap input{width:110px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.acepto{display:flex;gap:10px;align-items:flex-start;margin-top:22px;font-size:13px;color:var(--mut);cursor:pointer}
.acepto input{margin-top:3px;width:17px;height:17px;flex:none;accent-color:var(--c)}
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:26px;font:inherit;font-weight:600;font-size:16px;padding:14px 26px;border:0;border-radius:10px;background:var(--c);color:var(--c-txt);cursor:pointer;transition:filter .15s}
.btn:hover{filter:brightness(1.1)}
.btn[disabled]{opacity:.7;cursor:wait}
.spin{width:18px;height:18px;border:2.5px solid color-mix(in srgb,currentColor 35%,transparent);border-top-color:currentColor;border-radius:50%;animation:g .8s linear infinite}
@keyframes g{to{transform:rotate(360deg)}}
.msg{padding:12px 16px;border-radius:10px;font-size:14px;margin-bottom:20px}
.msg.err{background:#fef3f2;color:var(--err);border:1px solid #fecdca}
.msg ul{margin:6px 0 0;padding-left:18px}
.gracias{text-align:center;padding:44px 22px}
.gracias .ic{width:64px;height:64px;border-radius:50%;background:#e7f6ee;color:var(--ok);display:grid;place-items:center;margin:0 auto 16px;font-size:32px}
.gracias h2{margin:0 0 8px}
.gracias p{color:var(--mut);max-width:520px;margin:0 auto}
.gracias .cod{margin-top:14px;color:var(--txt)}
.top .marca{display:inline-flex;text-decoration:none}

/* Pie del sitio con el color de la empresa */
.pie-sitio{margin-top:36px;background:var(--pie);color:var(--pie-txt);background-image:linear-gradient(135deg,rgba(255,255,255,.06),rgba(0,0,0,.22))}
.pie-in{display:grid;grid-template-columns:220px 1fr;gap:28px;padding-top:34px;padding-bottom:30px;align-items:start}
@media (max-width:700px){.pie-in{grid-template-columns:1fr;gap:20px}}
.pie-marca img{max-height:52px;max-width:190px;background:#fff;border-radius:8px;padding:5px 9px;display:block}
.pie-marca b{font-size:18px}
.pie-marca a{display:inline-block;margin-top:10px;color:inherit;opacity:.85;font-size:14px}
.pie-datos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px 20px}
.pie-datos li{display:flex;gap:10px;align-items:flex-start}
.pie-datos .ico{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,currentColor 15%,transparent);font-size:15px}
.pie-datos small{display:block;font-size:12px;opacity:.75}
.pie-datos a,.pie-datos span{color:inherit;text-decoration:none;font-weight:500;word-break:break-word}
.pie-datos a:hover{text-decoration:underline}
.pie-copy{background:rgba(0,0,0,.18);font-size:13px;padding:13px 0;text-align:center;color:inherit;opacity:.9}
.pie-redes{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.pie-redes a{margin:0!important;padding:5px 12px;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 35%,transparent);color:inherit;text-decoration:none;font-size:13px;font-weight:600;opacity:1!important}
.pie-redes a:hover{background:color-mix(in srgb,currentColor 14%,transparent)}
