/* Estilos de la pagina publica /nosotros (Nosotros).
   Todo el CSS esta scopeado bajo .fdc-nosotros para no afectar el resto del sitio.
   Usa las 3 superficies publicas (--pub-bg-*) definidas en welcome-blocks.css sobre
   [data-surface="public"]: --pub-bg-dark para los bloques y --pub-bg-blue para el CTA.
   Regla: .cursor/rules/public-pages-colors.mdc */
html{scroll-behavior:smooth;scroll-padding-top:90px}
.fdc-nosotros *{box-sizing:border-box}
.fdc-nosotros{
    --no-accent:#0066FF;
    --no-text:var(--pub-text-on-dark,#fff);
    --no-muted:var(--pub-text-on-dark-muted,#aebcd1);
    margin:0;
    background:var(--pub-bg-dark);
    color:var(--no-text);
    -webkit-font-smoothing:antialiased;
}
.fdc-nosotros a{color:inherit;text-decoration:none}
.fdc-nosotros img{display:block;max-width:100%;height:auto}
.fdc-nosotros button:focus-visible, .fdc-nosotros a:focus-visible{outline:3px solid #58adff;outline-offset:4px;border-radius:6px}

.fdc-nosotros .no-container{width:100%;max-width:1200px;margin:0 auto;padding:0 54px}

/* Sistema de fondos por bloque (equivalente al .landing-block de la home). */
.fdc-nosotros .no-block{
    position:relative;
    isolation:isolate;
    background:var(--block-bg,var(--pub-bg-dark));
}
.fdc-nosotros .no-block::before{
    content:'';
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:var(--block-glow,none);
}

/* Botones */
.fdc-nosotros .no-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:12px;
    background:var(--no-accent);color:#fff;border:0;border-radius:12px;
    padding:16px 26px;font-size:14px;font-weight:700;letter-spacing:.2px;
    box-shadow:0 16px 40px -18px var(--landing-glow);
    transition:transform .2s,background .2s,box-shadow .2s;
}
.fdc-nosotros .no-btn:hover{transform:translateY(-2px);background:#0052cc;box-shadow:0 22px 48px -18px var(--landing-glow)}
.fdc-nosotros .no-quiet{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:var(--no-muted);transition:color .2s}
.fdc-nosotros .no-quiet:hover{color:#fff}

/* Encabezados */
.fdc-nosotros .no-eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--no-accent);margin:0 0 20px;text-transform:uppercase}
.fdc-nosotros h1{font-size:clamp(42px,4.6vw,68px);line-height:1.03;letter-spacing:-2.5px;margin:0 0 24px;font-weight:800}
.fdc-nosotros h1 em{font-style:normal;color:#64a4ff}
.fdc-nosotros h2{font-size:clamp(30px,3.2vw,46px);line-height:1.08;letter-spacing:-1.6px;margin:0 0 22px;font-weight:800}
.fdc-nosotros h3{font-size:18px;letter-spacing:-.3px;margin:0 0 10px;font-weight:700}
.fdc-nosotros .no-description{font-size:18px;line-height:1.7;color:var(--no-muted);max-width:560px;margin:0 0 30px}
.fdc-nosotros .no-body{display:grid;gap:18px;color:var(--no-muted);font-size:15px;line-height:1.75;max-width:580px}
.fdc-nosotros .no-body strong{color:#fff}
.fdc-nosotros .no-subcopy{color:var(--no-muted);font-size:15px;line-height:1.7;max-width:620px;margin:-6px 0 0}

/* ── Hero ────────────────────────────────────────────────────────────────── */
.fdc-nosotros .no-block--hero{
    --block-bg:var(--pub-bg-dark);
    --block-glow:
        radial-gradient(ellipse 60% 60% at 82% 24%,var(--landing-glow),transparent 62%),
        radial-gradient(ellipse 50% 50% at 10% 92%,var(--landing-glow-soft),transparent 62%);
}
.fdc-nosotros .no-hero{padding:96px 0 84px}
.fdc-nosotros .no-hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.fdc-nosotros .no-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.fdc-nosotros .no-actions-center{justify-content:center}
.fdc-nosotros .no-stats{display:flex;gap:34px;flex-wrap:wrap;margin-top:42px}
.fdc-nosotros .no-stats div{display:flex;flex-direction:column;gap:4px}
.fdc-nosotros .no-stats strong{font-size:26px;font-weight:800;letter-spacing:-1px;color:#fff}
.fdc-nosotros .no-stats span{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#8697b1}

/* Collage de invitados (sin retrato, distinto del hero de la home) */
.fdc-nosotros .no-hero-visual{display:flex;flex-direction:column;align-items:center;gap:24px}
.fdc-nosotros .no-collage{
    display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
    width:100%;max-width:460px;padding-bottom:18px;
}
.fdc-nosotros .no-collage-item{
    margin:0;aspect-ratio:1;border-radius:16px;overflow:hidden;
    border:1px solid rgb(255 255 255/.12);background:var(--pub-bg-dark);
    box-shadow:0 24px 48px -32px rgb(0 0 0/.9);
    transition:transform .3s,border-color .3s;
}
.fdc-nosotros .no-collage-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.fdc-nosotros .no-collage-item:nth-child(2), .fdc-nosotros .no-collage-item:nth-child(5){transform:translateY(18px)}
.fdc-nosotros .no-collage:hover .no-collage-item{border-color:rgb(0 102 255/.4)}
.fdc-nosotros .no-collage:hover .no-collage-item img{transform:scale(1.05)}
.fdc-nosotros .no-collage-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:var(--no-muted);transition:color .2s}
.fdc-nosotros .no-collage-link:hover{color:#fff}

/* ── Secciones ───────────────────────────────────────────────────────────── */
.fdc-nosotros .no-section{padding:96px 0;position:relative}
.fdc-nosotros .no-split{display:grid;grid-template-columns:.92fr 1.08fr;gap:76px;align-items:center}
.fdc-nosotros .no-split-reverse{grid-template-columns:1.02fr .98fr}
.fdc-nosotros .no-block-visual{position:relative}
.fdc-nosotros .no-heading{max-width:720px;margin-bottom:44px}

/* Historia */
.fdc-nosotros .no-block--historia{
    --block-bg:var(--pub-bg-dark);
    --block-glow:radial-gradient(ellipse 65% 65% at 88% 16%,var(--landing-glow),transparent 66%);
}
.fdc-nosotros .no-historia-visual{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.fdc-nosotros .no-historia-visual img{
    width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;
    border:1px solid rgb(255 255 255/.09);box-shadow:0 24px 50px -28px rgb(0 0 0/.9);
}
.fdc-nosotros .no-historia-visual img:first-child{grid-row:span 2;aspect-ratio:auto;height:100%}

/* Filosofia */
.fdc-nosotros .no-block--filosofia{
    --block-bg:var(--pub-bg-dark);
    --block-glow:
        radial-gradient(ellipse 70% 70% at 85% 0%,var(--landing-glow),transparent 72%),
        radial-gradient(ellipse 55% 60% at 8% 100%,var(--landing-glow-soft),transparent 74%);
}
.fdc-nosotros .no-quote{
    margin:0 0 54px;padding:38px 44px;border-radius:20px;
    border:1px solid rgb(0 102 255/.32);
    background:linear-gradient(135deg,rgb(0 48 120/.42),rgb(7 18 39/.95));
    box-shadow:0 30px 70px -40px var(--landing-glow);
}
.fdc-nosotros .no-quote p{font-size:clamp(20px,2.1vw,28px);line-height:1.55;font-weight:500;color:#fff;margin:0}
.fdc-nosotros .no-quote strong, .fdc-nosotros .no-quote span{color:#64a4ff}
.fdc-nosotros .no-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fdc-nosotros .no-pillars article{
    padding:30px 28px;border-radius:16px;border:1px solid rgb(255 255 255/.09);
    background:rgb(255 255 255/.02);transition:border-color .25s,transform .25s;
}
.fdc-nosotros .no-pillars article:hover{border-color:rgb(0 102 255/.5);transform:translateY(-4px)}
.fdc-nosotros .no-pillars b{display:block;font-size:11px;letter-spacing:1.5px;color:var(--no-accent);margin-bottom:14px}
.fdc-nosotros .no-pillars p{color:var(--no-muted);font-size:14px;line-height:1.65;margin:0}

/* Valores */
.fdc-nosotros .no-block--valores{
    --block-bg:var(--pub-bg-dark);
    --block-glow:
        radial-gradient(ellipse 75% 70% at 12% 0%,var(--landing-glow),transparent 74%),
        radial-gradient(ellipse 45% 55% at 95% 100%,var(--landing-glow-soft),transparent 74%);
}
.fdc-nosotros .no-valores-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fdc-nosotros .no-valor{
    padding:32px 28px;border-radius:16px;border:1px solid rgb(255 255 255/.09);
    background:linear-gradient(180deg,rgb(255 255 255/.035),rgb(255 255 255/.01));
    transition:border-color .25s,transform .25s,box-shadow .25s;
}
.fdc-nosotros .no-valor:hover{border-color:rgb(0 102 255/.5);transform:translateY(-4px);box-shadow:0 26px 50px -34px var(--landing-glow)}
.fdc-nosotros .no-valor-icon{
    display:inline-flex;align-items:center;justify-content:center;
    width:48px;height:48px;border-radius:13px;margin-bottom:20px;
    color:#64a4ff;font-size:19px;
    background:rgb(0 102 255/.14);border:1px solid rgb(0 102 255/.3);
}
.fdc-nosotros .no-valor p{color:var(--no-muted);font-size:14px;line-height:1.65;margin:0}

/* Host */
.fdc-nosotros .no-block--host{
    --block-bg:var(--pub-bg-dark);
    --block-glow:radial-gradient(ellipse 60% 65% at 15% 80%,var(--landing-glow-soft),transparent 68%);
}
.fdc-nosotros .no-host-visual{display:flex;justify-content:center}
.fdc-nosotros .no-host-frame{
    position:relative;width:100%;max-width:330px;padding:3px;border-radius:26px;
    background:linear-gradient(135deg,var(--no-accent),#4f46e5);
    box-shadow:0 36px 80px -40px var(--landing-glow);
}
.fdc-nosotros .no-host-frame img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 14%;border-radius:24px}
.fdc-nosotros .no-socials{display:flex;gap:14px;margin-top:30px}
.fdc-nosotros .no-socials a{
    display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:13px;
    font-size:18px;color:#cdd9ec;
    background:rgb(255 255 255/.04);border:1px solid rgb(255 255 255/.12);
    transition:transform .2s,border-color .2s,color .2s,background .2s;
}
.fdc-nosotros .no-socials a:hover{transform:translateY(-3px);color:#fff;border-color:rgb(0 102 255/.6);background:rgb(0 102 255/.12)}

/* Cifras */
.fdc-nosotros .no-block--cifras{
    --block-bg:var(--pub-bg-dark);
    --block-glow:
        radial-gradient(ellipse 85% 65% at 50% 100%,var(--landing-glow),transparent 76%),
        radial-gradient(ellipse 50% 50% at 6% 0%,var(--landing-glow-soft),transparent 72%);
}
.fdc-nosotros .no-cifras-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.fdc-nosotros .no-cifra{
    padding:34px 26px;border-radius:16px;border:1px solid rgb(255 255 255/.09);
    background:rgb(255 255 255/.02);display:flex;flex-direction:column;gap:6px;
}
.fdc-nosotros .no-cifra strong{font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:-1.5px;color:#fff}
.fdc-nosotros .no-cifra span{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:#8697b1}
.fdc-nosotros .no-cifra-text strong{font-size:clamp(20px,2vw,26px);color:#64a4ff}

/* CTA — bloque protagonista (unico con azul pleno) */
.fdc-nosotros .no-block--cta{
    --block-bg:var(--pub-bg-blue);
    --block-glow:radial-gradient(ellipse 75% 95% at 50% 0%,rgb(255 255 255/.14),transparent 65%);
}
.fdc-nosotros .no-closing{text-align:center}
.fdc-nosotros .no-closing .no-container{display:flex;flex-direction:column;align-items:center}
.fdc-nosotros .no-closing h2{max-width:760px;color:#fff}
.fdc-nosotros .no-block--cta .no-eyebrow{color:rgb(255 255 255/.85)}
.fdc-nosotros .no-closing-copy{max-width:600px;margin:0 0 32px;color:rgb(255 255 255/.9);font-size:16px;line-height:1.75}
.fdc-nosotros .no-block--cta .no-btn{background:#fff;color:var(--landing-ink-900);box-shadow:0 18px 44px -20px rgb(0 0 0/.55)}
.fdc-nosotros .no-block--cta .no-btn:hover{background:#eef4ff;box-shadow:0 24px 52px -20px rgb(0 0 0/.6)}
.fdc-nosotros .no-block--cta .no-quiet{color:rgb(255 255 255/.85)}
.fdc-nosotros .no-block--cta .no-quiet:hover{color:#fff}

@media(max-width:1050px){
    .fdc-nosotros .no-container{padding:0 32px}
    .fdc-nosotros .no-hero-grid, .fdc-nosotros .no-split, .fdc-nosotros .no-split-reverse{gap:44px}
    .fdc-nosotros .no-pillars, .fdc-nosotros .no-valores-grid{grid-template-columns:repeat(2,1fr)}
    .fdc-nosotros .no-cifras-grid{grid-template-columns:repeat(2,1fr)}
    .fdc-nosotros .no-description{font-size:16px}
}
@media(max-width:820px){
    .fdc-nosotros .no-hero{padding:64px 0 56px}
    .fdc-nosotros .no-section{padding:70px 0}
    .fdc-nosotros .no-hero-grid, .fdc-nosotros .no-split, .fdc-nosotros .no-split-reverse{grid-template-columns:1fr}
    .fdc-nosotros .no-collage{max-width:400px;margin:0 auto}
    .fdc-nosotros .no-host-visual{order:2}
    .fdc-nosotros .no-quote{padding:28px 24px}
}
@media(max-width:560px){
    .fdc-nosotros .no-container{padding:0 22px}
    .fdc-nosotros .no-pillars, .fdc-nosotros .no-valores-grid{grid-template-columns:1fr}
    .fdc-nosotros .no-cifras-grid{grid-template-columns:1fr}
    .fdc-nosotros .no-actions{gap:16px}
    .fdc-nosotros .no-stats{gap:22px;margin-top:32px}
    .fdc-nosotros .no-collage{gap:10px}
}
@media(prefers-reduced-motion:reduce){
    .fdc-nosotros .no-btn, .fdc-nosotros .no-quiet, .fdc-nosotros .no-pillars article,
    .fdc-nosotros .no-valor, .fdc-nosotros .no-socials a, .fdc-nosotros .no-collage-item,
    .fdc-nosotros .no-collage-item img{transition:none}
    .fdc-nosotros .no-btn:hover, .fdc-nosotros .no-pillars article:hover,
    .fdc-nosotros .no-valor:hover, .fdc-nosotros .no-socials a:hover{transform:none}
    .fdc-nosotros .no-collage:hover .no-collage-item img{transform:none}
}
