/* ===== assets/css/storedPublic/landing.css ===== */
:root{
  --ls-bg:#FFFFFF;
  --ls-surface:#F3F5F9;
  --ls-primary:#0B3B8C;
  --ls-primary-dark:#082C69;
  --ls-primary-soft:#E7EDF8;
  --ls-text:#111827;
  --ls-muted:#5B6577;
  --ls-border:#E4E8EF;
  --ls-radius:14px;
  --ls-shadow:0 1px 2px rgba(17,24,39,.06), 0 12px 32px -18px rgba(17,24,39,.28);
}

body{color:var(--ls-text);}
.ls h1,.ls h2,.ls h3{letter-spacing:-.02em;font-weight:800;}
.ls .text-muted-ls{color:var(--ls-muted)!important;}
.ls section{scroll-margin-top:80px;}

/* HERO */
.ls-hero{background:var(--ls-surface);border-bottom:1px solid var(--ls-border);}
.ls-badge{display:inline-block;background:var(--ls-primary-soft);color:var(--ls-primary);
  font-size:.78rem;font-weight:700;padding:.35rem .85rem;border-radius:999px;}
.ls-hero h1{font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.08;}
.ls-hero-img-wrap{position:relative;}
.ls-hero-img-wrap::before{content:"";position:absolute;inset:-16px;border-radius:24px;background:var(--ls-primary-soft);}
.ls-hero-img{position:relative;width:100%;border-radius:16px;border:1px solid var(--ls-border);
  box-shadow:var(--ls-shadow);object-fit:cover;}

/* BOTONES */
.ls-btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:10px;
  padding:.85rem 1.6rem;font-size:.95rem;font-weight:700;text-decoration:none;
  transition:transform .18s ease, background-color .18s ease;}
.ls-btn:hover{transform:translateY(-2px);}
.ls-btn-primary{background:var(--ls-primary);color:#fff;box-shadow:0 24px 60px -28px rgba(11,59,140,.55);}
.ls-btn-primary:hover{background:var(--ls-primary-dark);color:#fff;}
.ls-btn-outline{background:#fff;color:var(--ls-text);border:1px solid var(--ls-border);}
.ls-btn-light{background:#fff;color:var(--ls-primary);box-shadow:var(--ls-shadow);}
.ls-btn-light:hover{color:var(--ls-primary-dark);}

/* TARJETAS */
.ls-card{background:#fff;border:1px solid var(--ls-border);border-radius:var(--ls-radius);
  padding:1.5rem;box-shadow:var(--ls-shadow);height:100%;transition:transform .2s ease,border-color .2s ease;}
a.ls-card{text-decoration:none;color:inherit;display:block;}
a.ls-card:hover{transform:translateY(-4px);border-color:var(--ls-primary);}
a.ls-card:hover h3{color:var(--ls-primary);}
.ls-card h3{font-size:1rem;font-weight:700;margin:0;}
.ls-icon{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;
  background:var(--ls-primary-soft);color:var(--ls-primary);font-size:1.15rem;}
.ls-icon-solid{background:var(--ls-primary);color:#fff;}

/* SECCIONES */
.ls-section{padding:4.5rem 0;}
.ls-surface{background:var(--ls-surface);border-top:1px solid var(--ls-border);border-bottom:1px solid var(--ls-border);}
.ls-eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--ls-muted);}
.ls-brand{font-size:1.3rem;font-weight:800;color:rgba(91,101,119,.7);}

/* CONTACTO */
.ls-contact{background:var(--ls-primary);color:#fff;padding:4.5rem 0;}
.ls-contact p{color:rgba(255,255,255,.82);}
.ls-contact-box{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);
  border-radius:18px;padding:1.75rem;}
.ls-contact-box li{display:flex;align-items:center;gap:.75rem;padding:.55rem 0;}
