/* IM Solutions — hoja compartida (hub + pilares). Sin violeta (exclusivo de /im-ai). */
:root{
  --negro:#0B0816; --negro-2:#100B1E;
  --ciruela:#3A1F3D; --ciruela-2:#2A1730;
  --oro:#C9A227; --oro-soft:#E0C463;
  --texto:#E7E3F2; --muteado:#938AC0;
  --linea:rgba(147,138,192,.16);
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:72px; --s9:112px;
  --titulo:'Poppins',system-ui,sans-serif;
  --cuerpo:'Inter',system-ui,sans-serif;
  --radio:18px; --max:1200px;
  --gutter:clamp(20px, 4.5vw, 56px);
}
*{box-sizing:border-box;margin:0;padding:0;min-width:0}
html{scroll-behavior:smooth}
body{font-family:var(--cuerpo);background:var(--negro);color:var(--texto);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(900px 600px at 78% -8%, rgba(201,162,39,.10), transparent 60%),
             radial-gradient(700px 500px at 8% 18%, rgba(58,31,61,.55), transparent 55%)}
h1,h2,h3{font-family:var(--titulo);line-height:1.12;letter-spacing:-.015em;overflow-wrap:break-word}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
::selection{background:var(--oro);color:var(--negro)}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.oro{color:var(--oro)}
.muteado{color:var(--muteado)}

header{position:sticky;top:0;z-index:100;background:rgba(11,8,22,.78);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--linea)}
.nav{display:flex;align-items:center;gap:var(--s5);height:76px}
.brand{display:flex;align-items:center;gap:16px;color:var(--texto)}
.brand .logo{height:32px;width:auto;color:var(--texto)}
.unit{display:flex;align-items:baseline;gap:5px;line-height:1;padding-left:16px;border-left:1px solid var(--linea);font-family:var(--titulo)}
.unit b{font-weight:700;font-size:19px;letter-spacing:.01em;color:var(--texto)}
.unit em{font-style:normal;font-weight:300;font-size:19px;letter-spacing:.08em;color:var(--oro-soft)}
.nav-links{display:none;margin-left:auto;gap:var(--s6);align-items:center}
.nav-links a{color:var(--muteado);font-size:15px;transition:color .2s;padding:10px 4px}
.nav-links a:hover{color:var(--texto)}
.nav-cta{margin-left:auto}
@media(min-width:880px){.nav-links{display:flex}.nav-cta{margin-left:0}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);font-family:var(--titulo);font-weight:600;font-size:15px;min-height:44px;padding:0 var(--s5);border-radius:999px;cursor:pointer;border:1px solid transparent;transition:transform .15s ease, box-shadow .2s ease, background .2s}
.btn-oro{background:linear-gradient(180deg,var(--oro-soft),var(--oro));color:#1c1505;box-shadow:0 8px 26px rgba(201,162,39,.28)}
.btn-oro:hover{transform:translateY(-1px);box-shadow:0 12px 34px rgba(201,162,39,.4)}
.btn-ghost{background:transparent;color:var(--texto);border-color:var(--linea)}
.btn-ghost:hover{border-color:var(--muteado)}
:focus-visible{outline:3px solid #fff;outline-offset:3px;border-radius:6px;box-shadow:0 0 0 6px rgba(224,196,99,.35)}

section{padding:var(--s8) 0}
@media(min-width:880px){section{padding:var(--s9) 0}}
.eyebrow{font-family:var(--titulo);font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--oro);margin-bottom:var(--s4)}
.sec-head{margin-bottom:var(--s7);max-width:62ch}
.sec-head h2{font-size:clamp(1.7rem,4.2vw,2.6rem);font-weight:700;margin-bottom:var(--s4)}
.sec-head p{color:var(--muteado);font-size:1.06rem;max-width:60ch}

.hero{padding-top:var(--s7)}
.hero h1{font-size:clamp(2.1rem,5vw,3.4rem);font-weight:700;margin-bottom:var(--s5);max-width:16ch}
.hero p.sub{font-size:clamp(1.02rem,2vw,1.2rem);color:var(--muteado);max-width:52ch;margin-bottom:var(--s7)}
.hero p.sub strong{color:var(--texto);font-weight:500}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center}

.grid-2{display:grid;gap:var(--s5)}
@media(min-width:680px){.grid-2{grid-template-columns:1fr 1fr}}
.pain{background:var(--negro-2);border:1px solid var(--linea);border-radius:var(--radio);padding:var(--s6);position:relative;overflow:hidden}
.pain::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ciruela)}
.pain h3{font-size:1.18rem;font-weight:600;margin-bottom:var(--s2)}
.pain p{color:var(--muteado);font-size:.97rem}
.pain .cost{display:block;margin-top:var(--s3);color:var(--oro);font-size:.9rem;font-family:var(--titulo);font-weight:500}

.sol-grid{display:grid;gap:var(--s5)}
@media(min-width:880px){.sol-grid{grid-template-columns:repeat(3,1fr)}}
.sol{background:linear-gradient(180deg,var(--ciruela-2),var(--negro-2));border:1px solid var(--linea);border-radius:var(--radio);padding:var(--s6)}
.sol .ico{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;margin-bottom:var(--s5);background:rgba(201,162,39,.14);border:1px solid rgba(201,162,39,.4);color:var(--oro-soft)}
.sol .ico svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}
.sol h3{font-size:1.2rem;font-weight:600;margin-bottom:var(--s3)}
.sol p{color:var(--muteado);font-size:.97rem}
.sol ul{list-style:none;margin-top:var(--s4);display:flex;flex-direction:column;gap:var(--s2)}
.sol li{display:flex;gap:var(--s3);font-size:.92rem;color:var(--texto)}
.sol li::before{content:"—";color:var(--oro-soft);flex:0 0 auto}
.sol .mas{display:inline-flex;margin-top:var(--s5);color:var(--oro);font-family:var(--titulo);font-weight:600;font-size:.95rem}

.principios{display:grid;gap:var(--s5)}
@media(min-width:680px){.principios{grid-template-columns:1fr 1fr}}
.principio{display:flex;gap:var(--s4);padding:var(--s5);border-radius:14px;background:var(--negro-2);border:1px solid var(--linea)}
.principio .num{font-family:var(--titulo);font-weight:700;font-size:1.3rem;color:var(--oro);line-height:1.2;flex:0 0 auto}
.principio h3{font-size:1.05rem;font-weight:600;margin-bottom:6px}
.principio p{color:var(--muteado);font-size:.95rem}

.confianza{display:grid;gap:var(--s7);align-items:center}
@media(min-width:880px){.confianza{grid-template-columns:1fr 1fr}}
.firma{background:linear-gradient(180deg,var(--ciruela-2),var(--negro-2));border:1px solid var(--linea);border-radius:var(--radio);padding:var(--s7)}
.firma p{color:var(--muteado);margin-bottom:var(--s4)}
.firma .nombre{font-family:var(--titulo);font-weight:600;color:var(--texto);font-size:1.05rem}

/* Formulario consultivo */
.form-panel{background:linear-gradient(180deg,var(--ciruela),var(--ciruela-2));border:1px solid rgba(201,162,39,.3);border-radius:28px;padding:clamp(28px,5vw,56px)}
#lead-form{display:grid;gap:var(--s4);max-width:560px}
#lead-form input,#lead-form select,#lead-form textarea{
  font-family:var(--cuerpo);font-size:15px;color:var(--texto);background:rgba(11,8,22,.6);
  border:1px solid var(--linea);border-radius:12px;padding:14px 16px;width:100%;min-height:48px}
#lead-form textarea{min-height:96px;resize:vertical}
#lead-form input::placeholder,#lead-form textarea::placeholder{color:var(--muteado)}
#lead-form select:invalid{color:var(--muteado)}
#lead-form input:focus,#lead-form select:focus,#lead-form textarea:focus{outline:none;border-color:var(--oro-soft);box-shadow:0 0 0 3px rgba(201,162,39,.2)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;gap:var(--s3);align-items:flex-start;font-size:.9rem;color:var(--muteado)}
.consent input{width:auto;min-height:auto;margin-top:3px}
.consent a{color:var(--oro-soft);text-decoration:underline}
.form-msg{min-height:1.2em;font-size:.95rem;color:var(--oro-soft)}
.form-alt{margin-top:var(--s4);font-size:.92rem;color:var(--muteado)}
.form-alt a{color:var(--oro-soft);font-family:var(--titulo);font-weight:500}

footer{border-top:1px solid var(--linea);padding:var(--s8) 0 var(--s7)}
.foot-grid{display:flex;flex-wrap:wrap;gap:var(--s6);justify-content:space-between;align-items:flex-start}
footer .brand .logo{height:28px;opacity:.95}
footer .desc{color:var(--muteado);font-size:.92rem;max-width:34ch;margin-top:var(--s4)}
.foot-contact a{color:var(--texto);font-family:var(--titulo);font-weight:500}
.foot-contact span{display:block;color:var(--muteado);font-size:.9rem;margin-top:var(--s2)}
.foot-bottom{margin-top:var(--s7);padding-top:var(--s5);border-top:1px solid var(--linea);color:var(--muteado);font-size:.85rem;display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:space-between}
#privacidad{margin-top:var(--s7);padding-top:var(--s6);border-top:1px solid var(--linea)}
#privacidad h3{font-size:1.05rem;font-weight:600;margin-bottom:var(--s3)}
#privacidad p{color:var(--muteado);font-size:.88rem;max-width:80ch;margin-bottom:var(--s2)}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease, transform .7s ease}
.reveal.in{opacity:1;transform:none}
.skip-link{position:absolute;top:-100%;left:var(--s4);z-index:9999;background:var(--oro);color:#1c1505;font-family:var(--titulo);font-weight:600;font-size:15px;padding:12px 20px;border-radius:0 0 8px 8px;transition:top .15s ease}
.skip-link:focus{top:0}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.btn-oro:hover{transform:none}}
