/* BAUCLEAR · base común (web, app y legal). Azul marino, crema, salvia y dorado. */
:root{color-scheme:light;--bg:#f3f1ec;--bg2:#ebe8e1;--card:#fbfaf7;--card2:#f1efe9;--line:#e3dfd6;--line2:#d2cdc2;--ink:#16233b;--ink2:#47505e;--mute:#7c838e;--navy:#16233b;--navy2:#24365a;
  --sage:#6e8a61;--sage2:#5b7650;--sageSoft:#e1e7da;--sagePanel:#e6eadf;--beige:#ece4d3;--beigeInk:#5f4b2d;--gold:#c8a669;
  --ok:#5b7650;--okSoft:#e1e7da;--warn:#8a6420;--warnSoft:#f1e7d1;--bad:#b4462d;--badSoft:#f6e0d8;
  --brand:#16233b;--brandSoft:rgba(22,35,59,.07);--r:16px;--safe:env(safe-area-inset-top,0px);--safeB:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}
html,body{margin:0}
body{font:16px/1.5 Outfit,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--navy)}
h1,h2,h3{font-family:Outfit,system-ui,sans-serif;line-height:1.1;margin:0 0 .4em;letter-spacing:-.01em;font-weight:600}
.wrap{width:100%;padding:0 clamp(16px,4vw,56px)}
[data-lang=es] [lang=en],[data-lang=en] [lang=es]{display:none!important}
header.top{position:sticky;top:0;z-index:30;background:rgba(243,241,236,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding-top:var(--safe)}
header.top .wrap{display:flex;align-items:center;gap:14px;min-height:62px}
.logo{display:flex;align-items:center;gap:12px;font:600 18px Outfit,sans-serif;letter-spacing:.24em;text-decoration:none;color:var(--ink)}
.logo svg,.logo img{width:24px;height:30px;flex:none}
.grow{flex:1}
.lang{display:inline-flex;border:1px solid var(--line2);border-radius:999px;padding:3px;background:var(--card)}
.lang button{border:0;background:none;font:600 13px Outfit,sans-serif;padding:6px 12px;border-radius:999px;color:var(--mute);cursor:pointer}
.lang button.on{background:var(--navy);color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;background:var(--navy);color:#fff;font:500 18px Outfit,sans-serif;box-shadow:0 4px 14px rgba(22,35,59,.16);padding:13px 22px;cursor:pointer;text-decoration:none;min-height:50px;transition:filter .12s,transform .08s}
.btn:hover{filter:brightness(1.12)}.btn:active{transform:scale(.98)}
.btn.orange,.btn.dark{background:var(--navy);color:#fff}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line2);box-shadow:none}
.btn.soft{background:var(--card);color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn.bad{background:var(--bad);color:#fff;box-shadow:none}
.btn.sm{padding:9px 14px;font-size:15px;min-height:40px;border-radius:10px}
.btn.wide{width:100%}
.btn[disabled]{opacity:.45;pointer-events:none}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 1px 6px rgba(22,35,59,.04);padding:clamp(16px,2vw,24px)}
.eyebrow{font:600 12px Outfit,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}
.ico{width:22px;height:22px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mute{color:var(--mute)}
footer{border-top:1px solid var(--line);padding:28px 0 calc(28px + var(--safeB));color:var(--mute);font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between}
footer a{color:var(--ink2)}
@media (max-width:600px){.logo{font-size:16px;letter-spacing:.2em}.hide-sm{display:none!important}}
