/* ¿Quiénes somos? — estilos propios de la página */

/* 1. Introducción */
.qs-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
.qs-intro-copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.qs-intro-copy p{margin:0}
.qs-chips{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.qs-chips li{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;background:#e3f0fc;color:#0a3a78;font-family:var(--font-display);font-size:13px;line-height:18px;font-weight:600}
.qs-quote{position:relative;box-sizing:border-box;margin:0;padding:44px 40px 36px;border-radius:28px;background:#003060;color:#ffffff;overflow:hidden;box-shadow:var(--shadow-float)}
.qs-quote::after{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(closest-side,rgba(49,185,244,.28),rgba(35,137,205,0));pointer-events:none}
.qs-quote>*{position:relative;z-index:1}
.qs-quote-mark{display:block;color:#31b9f4;margin-bottom:14px}
.qs-quote-text{margin:0;font-family:var(--font-display);font-size:clamp(24px,3vw,32px);line-height:1.25;font-weight:600;letter-spacing:-.005em;text-wrap:balance}
.qs-quote-sub{margin:20px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.22);font-size:16px;line-height:25px;color:#ffffff;opacity:.88}

/* 2. Misión y visión */
.qs-mv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}
.qs-mv-cell{display:flex;min-width:0}
.qs-mv{flex:1;box-sizing:border-box;background:#ffffff;border:1px solid #d6e4f2;border-radius:24px;padding:40px 36px;display:flex;flex-direction:column;gap:12px;box-shadow:0 6px 24px rgba(0,48,96,.06);position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.qs-mv::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#31b9f4,#0061c4)}
.qs-mv:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,48,96,.14)}
.qs-mv-icon{width:56px;height:56px;border-radius:999px;background:#e3f0fc;color:#0a3a78;display:grid;place-items:center;margin-bottom:6px}
.qs-mv-kicker{margin:0;font-family:var(--font-display);font-size:12px;line-height:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#00758a}
.qs-mv-title{margin:0;font-family:var(--font-display);font-size:28px;line-height:36px;font-weight:700;color:#002557}
.qs-mv-text{margin:0;font-size:17px;line-height:27px;color:#173562}

/* 3. Valores */
.qs-val-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}
.qs-val-cell{display:flex;min-width:0}
.qs-val{flex:1;box-sizing:border-box;background:#ffffff;border:1px solid #d6e4f2;border-radius:24px;padding:32px 28px;display:flex;flex-direction:column;gap:8px;box-shadow:0 6px 24px rgba(0,48,96,.06);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.qs-val:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,48,96,.14)}
.qs-val-icon{width:52px;height:52px;border-radius:16px;background:#e3f0fc;color:#0061c4;display:grid;place-items:center;margin-bottom:10px}
.qs-val-title{margin:0;font-family:var(--font-display);font-size:20px;line-height:28px;font-weight:600;color:#002557}
.qs-val-text{margin:0;font-size:15px;line-height:23px;color:#173562}

/* 4. Qué nos hace diferentes */
.qs-diff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}
.qs-diff{box-sizing:border-box;display:flex;gap:20px;align-items:flex-start;background:#ffffff;border:1px solid #d6e4f2;border-radius:24px;padding:32px 28px;min-width:0;height:100%}
.qs-diff-cell{display:flex;min-width:0}
.qs-diff-cell .qs-diff{flex:1}
.qs-diff-num{flex:none;width:44px;height:44px;border-radius:999px;background:#003060;color:#ffffff;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:16px;box-shadow:0 0 0 6px #e3f0fc}
.qs-diff-body{min-width:0}
.qs-diff-title{margin:2px 0 8px;font-family:var(--font-display);font-size:19px;line-height:27px;font-weight:600;color:#002557}
.qs-diff-text{margin:0;font-size:15px;line-height:23px;color:#173562}

/* 5. Banda de cierre */
.qs-close{border-radius:28px;background:#003060;color:#ffffff;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;position:relative;overflow:hidden}
.qs-close::after{content:"";position:absolute;right:-100px;bottom:-140px;width:360px;height:360px;border-radius:50%;background:radial-gradient(closest-side,rgba(49,185,244,.22),rgba(35,137,205,0));pointer-events:none}
.qs-close>*{position:relative;z-index:1}
.qs-close-copy{max-width:560px}
.qs-close-label{margin:0 0 8px;font-family:var(--font-display);font-size:13px;line-height:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#9fdcf8}
.qs-close-title{margin:0 0 10px;font-family:var(--font-display);font-size:28px;line-height:36px;font-weight:600;color:#ffffff}
.qs-close-text{margin:0;font-size:17px;line-height:27px;color:#ffffff;opacity:.9}
.qs-close-actions{display:flex;flex-wrap:wrap;gap:14px}

/* Responsive */
@media (max-width:1000px){
  .qs-val-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .qs-intro{grid-template-columns:1fr;gap:40px}
  .qs-mv-grid,.qs-diff-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .qs-val-grid{grid-template-columns:1fr}
  .qs-quote{padding:36px 26px 30px}
  .qs-mv{padding:32px 24px 32px 28px}
  .qs-mv-title{font-size:24px;line-height:32px}
  .qs-diff{padding:26px 22px;gap:16px}
  .qs-close{padding:36px 24px}
  .qs-close-title{font-size:24px;line-height:32px}
  .qs-close-actions{width:100%}
  .qs-close-actions .np-btn{width:100%;justify-content:center;box-sizing:border-box}
}
