/* SOS Caja — Phase 01 only; all selectors namespaced to avoid touching Home or Rifa. */
.sosca2{--s2-ink:#291953;--s2-deep:#30215e;--s2-purple:#673cb0;--s2-gold:#f6cc70;--s2-muted:#655a7b;color:var(--s2-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5;width:100vw;max-width:none;position:relative;left:50%;transform:translateX(-50%);box-sizing:border-box;overflow:hidden;background:#fff}
.sosca2 *, .sosca2 *::before,.sosca2 *::after{box-sizing:border-box}
.sosca2 .sosca2-inner{width:min(1260px,calc(100% - 84px));margin-inline:auto}
.sosca2 .sosca2-hero{position:relative;background:radial-gradient(circle at 4% 3%,#f8f2ff 0,#f8f2ff 21%,transparent 45%),linear-gradient(108deg,#fcfaff 0%,#fff 58%,#f3eaff 100%);padding-top:52px}
.sosca2 .sosca2-hero-grid{display:grid;grid-template-columns: .92fr 1.08fr;align-items:center;gap:34px;min-height:548px}
.sosca2 .sosca2-copy{padding:36px 0 60px;position:relative;z-index:1}
.sosca2 .sosca2-topline{display:flex;align-items:center;gap:24px;justify-content:space-between;max-width:550px}
.sosca2 .sosca2-kicker{font-size:11px;letter-spacing:.17em;font-weight:800;color:var(--s2-purple)}
.sosca2 .sosca2-langs{display:flex;align-items:center;border:1px solid #e6dcf4;border-radius:24px;gap:3px;background:#fff;padding:3px}
.sosca2 .sosca2-langs button{border:0;border-radius:18px;padding:5px 9px;font-size:11px;line-height:1;background:transparent;color:var(--s2-purple);font-weight:700;cursor:pointer}
.sosca2 .sosca2-langs button.active{background:#efe6fb}
.sosca2 h1{font-family:Georgia,'Times New Roman',serif;color:var(--s2-deep);font-size:clamp(46px,5.4vw,80px);line-height:1.03;font-weight:500;letter-spacing:-.06em;margin:29px 0 13px;max-width:640px}
.sosca2 .sosca2-lead{font-size:clamp(21px,2.15vw,28px);font-family:Georgia,'Times New Roman',serif;font-style:italic;color:var(--s2-purple);line-height:1.32;margin:0 0 24px}
.sosca2 .sosca2-intro{font-size:17px;max-width:490px;color:#534b64;line-height:1.75;margin:0 0 25px}
.sosca2 .sosca2-primary{display:inline-flex;align-items:center;justify-content:center;gap:22px;text-decoration:none!important;background:var(--s2-purple);border-radius:9px;padding:15px 23px;color:#fff!important;font-weight:700;font-size:13px;box-shadow:0 7px 20px #4d258c2e;transition:transform .2s,background .2s}
.sosca2 .sosca2-primary:hover{background:#4a257f;transform:translateY(-2px)}
.sosca2 .sosca2-pillar{font-size:12px;color:#8d7b9b;margin:21px 0 0}
.sosca2 .sosca2-pillar span{color:#d7a94d}
.sosca2 .sosca2-photo{position:relative;margin:0;min-height:492px;align-self:stretch;display:flex;align-items:stretch;padding:0;}
.sosca2 .sosca2-photo:before{content:'';position:absolute;inset:13% -24px -12px 30px;border-radius:48% 52% 14px 20px;background:#e6d9fb;z-index:0}
.sosca2 .sosca2-photo img{object-fit:cover;object-position:center center;width:100%;height:100%;min-height:492px;border-radius:180px 18px 18px 18px;position:relative;z-index:1;box-shadow:0 18px 65px #3c19591f}
.sosca2 .sosca2-photo figcaption{position:absolute;z-index:2;bottom:18px;right:16px;left:auto;font-size:11px;max-width:220px;background:#ffffffeb;border-radius:7px;padding:8px 10px;color:#554963;box-shadow:0 5px 18px #22153324}
.sosca2 .sosca2-traits{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:0;width:min(1210px,calc(100% - 84px));margin: -37px auto 0;background:#fff;box-shadow:0 13px 48px #40235b13;border:1px solid #eee7f3;border-radius:18px;overflow:hidden}
.sosca2 .sosca2-trait{padding:26px 25px;display:flex;gap:15px;align-items:center;min-height:118px}
.sosca2 .sosca2-trait+.sosca2-trait{border-left:1px solid #efeaf3}
.sosca2 .sosca2-trait .sosca2-symbol{font-size:32px;line-height:1;width:49px;height:49px;min-width:49px;display:flex;justify-content:center;align-items:center;border-radius:50%;background:#f1ebff;color:var(--s2-purple)}
.sosca2 .sosca2-trait:nth-child(2) .sosca2-symbol{background:#fff4d9;color:#aa7e21}
.sosca2 .sosca2-trait h2{font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:800;line-height:1.2;margin:0 0 6px;color:var(--s2-deep)}
.sosca2 .sosca2-trait p{font-size:12px;color:var(--s2-muted);line-height:1.45;margin:0}
.sosca2 .sosca2-phase1-end{background:#fff;padding:70px 0 76px;scroll-margin-top:120px}
.sosca2 .sosca2-one-line{display:grid;grid-template-columns:.94fr 1.06fr;gap:65px;align-items:center;border-top:1px solid #ece6f4;padding-top:32px}
.sosca2 .sosca2-one-line h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:clamp(29px,3vw,42px);line-height:1.12;margin:0;color:var(--s2-deep)}
.sosca2 .sosca2-one-line p{color:#645c70;font-size:14px;line-height:1.7;max-width:570px;margin:0}
.sosca2 .sosca2-en[hidden],.sosca2 .sosca2-es[hidden]{display:none!important}
@media(max-width:950px){.sosca2 .sosca2-inner{width:min(100% - 36px,720px)}.sosca2 .sosca2-hero{padding-top:10px}.sosca2 .sosca2-hero-grid{grid-template-columns:1fr;gap:18px}.sosca2 .sosca2-copy{padding:34px 0 0}.sosca2 .sosca2-photo{min-height:390px}.sosca2 .sosca2-photo img{min-height:390px;max-height:460px;border-radius:28px}.sosca2 .sosca2-photo:before{inset:8% -6px -10px 14px;border-radius:28px}.sosca2 .sosca2-traits{width:min(100% - 36px,720px);margin:17px auto 0}.sosca2 .sosca2-trait{padding:18px 12px;gap:9px}.sosca2 .sosca2-trait .sosca2-symbol{min-width:35px;width:35px;height:35px;font-size:24px}.sosca2 .sosca2-one-line{gap:30px}}
@media(max-width:630px){.sosca2 h1{font-size:50px;max-width:400px;margin-top:26px}.sosca2 .sosca2-intro{font-size:15px}.sosca2 .sosca2-topline{gap:10px}.sosca2 .sosca2-kicker{font-size:9px;letter-spacing:.12em}.sosca2 .sosca2-traits{grid-template-columns:1fr}.sosca2 .sosca2-trait{padding:15px 22px;min-height:auto}.sosca2 .sosca2-trait+.sosca2-trait{border-left:0;border-top:1px solid #eee6f4}.sosca2 .sosca2-photo{min-height:315px}.sosca2 .sosca2-photo img{min-height:315px;max-height:375px}.sosca2 .sosca2-photo figcaption{font-size:9px}.sosca2 .sosca2-phase1-end{padding:44px 0 54px}.sosca2 .sosca2-one-line{grid-template-columns:1fr;gap:12px}.sosca2 .sosca2-one-line h2{font-size:33px}}
