/* =========================================================
   SOFIA — UCORP
   Hoja de estilos principal
   ========================================================= */
:root{
 --sofia-purple:#933BD1;--sofia-purple-dark:#7427ad;--sofia-purple-light:#f7effc;
 --sofia-green:#7CC893;--sofia-green-dark:#55aa74;--sofia-green-light:#eff9f2;
 --sofia-dark:#17151d;--sofia-text:#4c4955;--sofia-muted:#7e7a87;
 --sofia-border:#e9e7ed;--sofia-light:#f8f8fb;--sofia-white:#fff;
 --shadow-sm:0 12px 32px rgba(35,20,45,.08);--shadow-md:0 22px 60px rgba(35,20,45,.11);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--sofia-text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{text-decoration:none}img{max-width:100%;height:auto}section,header,footer{position:relative}.section-anchor{scroll-margin-top:90px}.container{position:relative;z-index:2}

/* NAVBAR */
.navbar-sofia{min-height:82px;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(23,21,29,.06);backdrop-filter:blur(15px);transition:.25s ease}.navbar-sofia.is-scrolled{box-shadow:0 8px 28px rgba(35,20,45,.06)}.navbar-sofia .container{min-height:82px}.logo-sofia{display:block;width:145px}.navbar-sofia .nav-link{position:relative;margin:0 5px;padding:10px 12px!important;color:#4c4955;font-size:14px;font-weight:600;transition:.2s}.navbar-sofia .nav-link:hover,.navbar-sofia .nav-link.active{color:var(--sofia-purple)}.navbar-sofia .nav-link:after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--sofia-purple);transform:scaleX(0);transition:.2s}.navbar-sofia .nav-link:hover:after,.navbar-sofia .nav-link.active:after{transform:scaleX(1)}.navbar-toggler{border:0;box-shadow:none!important}

/* BUTTONS */
.btn-sofia-primary,.btn-sofia-outline{display:inline-flex;align-items:center;justify-content:center;border-radius:11px;font-size:14px;font-weight:700;transition:.22s ease}.btn-sofia-primary{color:#fff!important;background:var(--sofia-purple);border:1px solid var(--sofia-purple);padding:11px 20px;box-shadow:0 9px 22px rgba(147,59,209,.20)}.btn-sofia-primary:hover{background:var(--sofia-purple-dark);border-color:var(--sofia-purple-dark);transform:translateY(-2px);box-shadow:0 13px 28px rgba(147,59,209,.26)}.btn-sofia-outline{color:#413b47;background:#fff;border:1px solid #ded9e4;padding:11px 20px}.btn-sofia-outline:hover{color:var(--sofia-purple);border-color:rgba(147,59,209,.45);background:var(--sofia-purple-light)}.btn-sofia-lg{min-height:52px;padding:13px 24px;font-size:15px}.btn-navbar{min-height:46px}

/* SHARED SECTION TYPOGRAPHY */
.section-space{padding:105px 0}.section-heading{max-width:760px;margin-bottom:44px}.section-kicker{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#67606e;font-size:13px;font-weight:650}.section-kicker>span{width:29px;height:29px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:var(--sofia-purple-light);color:var(--sofia-purple);font-size:13px}.section-title{max-width:760px;margin:0 0 16px;color:var(--sofia-dark);font-size:clamp(36px,3.3vw,50px);line-height:1.12;letter-spacing:-1.6px;font-weight:750}.section-lead{max-width:680px;margin:0;color:#716b77;font-size:16px;line-height:1.75}

/* HERO */
.hero-sofia{padding-top:82px;overflow:hidden;background:radial-gradient(circle at 93% 17%,rgba(124,200,147,.15),transparent 28%),radial-gradient(circle at 4% 88%,rgba(147,59,209,.09),transparent 30%),linear-gradient(180deg,#fff 0%,#fdfcff 100%)}.hero-container{min-height:650px;padding-top:52px;padding-bottom:52px;display:flex;align-items:center}.hero-container>.row{width:100%}.hero-content{position:relative;z-index:5;max-width:590px}.hero-kicker{margin-bottom:17px}.hero-title{margin:0;color:var(--sofia-dark);font-size:clamp(44px,4.25vw,67px);line-height:1.04;letter-spacing:-2.7px;font-weight:780}.hero-title span{display:block;color:var(--sofia-purple)}.hero-description{max-width:555px;margin:23px 0 0;color:#686370;font-size:17px;line-height:1.7}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-features{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;margin-top:24px}.hero-feature{display:inline-flex;align-items:center;gap:7px;color:#625d68;font-size:12px;font-weight:650;white-space:nowrap}.hero-feature i{width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--sofia-green-light);color:var(--sofia-green-dark);font-size:12px;font-weight:800}.hero-feature span{display:inline;color:inherit;background:none;width:auto;height:auto;font-size:inherit;font-weight:inherit}.hero-visual{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}.software-window{position:relative;z-index:3;width:100%;max-width:610px;background:#fff;border:1px solid rgba(30,25,35,.08);border-radius:18px;box-shadow:var(--shadow-md);overflow:hidden;transform:perspective(1200px) rotateY(-2deg) rotateX(1deg)}.software-window-header{height:48px;display:flex;align-items:center;padding:0 16px;border-bottom:1px solid #efedf2;background:#fbfafc}.window-dots{display:flex;gap:5px}.window-dots span{width:8px;height:8px;border-radius:50%;background:#ddd9e1}.window-dots span:first-child{background:#ff8078}.window-dots span:nth-child(2){background:#ffc766}.window-dots span:nth-child(3){background:var(--sofia-green)}.window-address{margin:auto;transform:translateX(-20px);padding:5px 20px;border-radius:6px;background:#f2f0f4;color:#99949e;font-size:9px}.software-window-body{display:flex;min-height:405px}.software-sidebar{width:65px;flex:0 0 65px;padding:16px 11px;background:#faf9fb;border-right:1px solid #eeecf0}.software-mini-logo{width:39px;height:39px;margin:0 auto 24px;display:flex;align-items:center;justify-content:center}.software-mini-logo img{max-width:35px;max-height:35px;object-fit:contain}.sidebar-item{width:38px;height:38px;margin:9px auto;display:flex;align-items:center;justify-content:center;border-radius:9px;color:#a5a0aa;font-size:15px}.sidebar-item.active{background:var(--sofia-purple-light);color:var(--sofia-purple)}.software-dashboard{flex:1;min-width:0;padding:24px}.dashboard-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dashboard-small{color:#a29da7;font-size:9px;text-transform:uppercase;letter-spacing:.6px}.dashboard-top h3{margin:3px 0 0;color:#29252e;font-size:17px;font-weight:700}.dashboard-user{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--sofia-green-light);color:var(--sofia-green-dark)}.dashboard-card{min-height:115px;padding:14px;border:1px solid #eeecf0;border-radius:11px;background:#fff}.dashboard-card-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;border-radius:7px;font-size:12px}.dashboard-card-icon.purple{background:var(--sofia-purple-light);color:var(--sofia-purple)}.dashboard-card-icon.green{background:var(--sofia-green-light);color:var(--sofia-green-dark)}.dashboard-card>span{display:block;color:#97929c;font-size:9px}.dashboard-card strong{display:block;margin-top:2px;color:#322e36;font-size:16px}.dashboard-card small{display:block;margin-top:4px;color:var(--sofia-green-dark);font-size:8px}.dashboard-chart{margin-top:16px;padding:16px;border:1px solid #eeecf0;border-radius:12px}.dashboard-chart-header{display:flex;justify-content:space-between;align-items:flex-start}.dashboard-chart-header span{display:block;color:#aaa5ae;font-size:8px}.dashboard-chart-header strong{display:block;color:#4b4650;font-size:10px}.chart-period{padding:5px 8px;background:#f7f6f8;border-radius:5px}.fake-chart{height:100px;margin-top:15px;display:flex;align-items:flex-end}.chart-line{width:100%;height:100%;display:flex;align-items:flex-end;gap:12px;padding-top:10px;border-bottom:1px solid #eeeaf0;background:repeating-linear-gradient(to bottom,transparent,transparent 31px,#f4f2f5 32px)}.chart-line span{flex:1;max-width:26px;margin:0 auto;background:linear-gradient(180deg,var(--sofia-purple),rgba(147,59,209,.45));border-radius:5px 5px 1px 1px}.floating-card{position:absolute;z-index:5;display:flex;align-items:center;gap:10px;padding:12px 15px;background:rgba(255,255,255,.97);border:1px solid rgba(40,30,45,.08);border-radius:12px;box-shadow:0 15px 40px rgba(35,20,45,.13)}.floating-card span{display:block;color:#99949e;font-size:8px}.floating-card strong{display:block;color:#3b3640;font-size:10px}.floating-card-one{left:-20px;bottom:58px}.floating-card-two{right:-5px;top:65px}.floating-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:var(--sofia-purple-light);color:var(--sofia-purple)}.floating-status{width:11px;height:11px;border-radius:50%;background:var(--sofia-green);box-shadow:0 0 0 5px rgba(124,200,147,.16)}

/* TRUST */
.trust-bar{padding:23px 0;border-top:1px solid #efedf1;border-bottom:1px solid #efedf1;background:#fff}.trust-content{display:flex;align-items:center;justify-content:center;gap:45px}.trust-label{color:#a19ca6;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px}.trust-items{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:38px}.trust-items div{display:flex;align-items:center;gap:7px;color:#6d6872;font-size:12px;font-weight:600}.trust-items i{color:var(--sofia-purple);font-size:15px}

/* PROBLEMS */
.problem-section{background:#fff}.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mini-card{height:100%;padding:25px;border:1px solid var(--sofia-border);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(35,20,45,.035);transition:.22s}.mini-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}.mini-icon,.solution-icon,.experience-icon{display:flex;align-items:center;justify-content:center}.mini-icon{width:40px;height:40px;margin-bottom:17px;border-radius:11px}.mini-icon.purple{background:var(--sofia-purple-light);color:var(--sofia-purple)}.mini-icon.green{background:var(--sofia-green-light);color:var(--sofia-green-dark)}.mini-card h3{margin:0 0 9px;color:var(--sofia-dark);font-size:18px;font-weight:720}.mini-card p{margin:0;color:#77717e;font-size:13px;line-height:1.65}

/* SOLUTIONS */
.solutions-section{background:#faf9fc}.solution-card{position:relative;height:100%;min-height:300px;padding:29px;border:1px solid var(--sofia-border);border-radius:19px;background:#fff;transition:.22s;overflow:hidden}.solution-card:hover{transform:translateY(-4px);border-color:rgba(147,59,209,.22);box-shadow:var(--shadow-sm)}.solution-number{position:absolute;right:24px;top:22px;color:#c3bec8;font-size:12px;font-weight:700}.solution-icon{width:45px;height:45px;margin-bottom:24px;border-radius:13px;background:var(--sofia-purple-light);color:var(--sofia-purple);font-size:19px}.solution-card:nth-child(even) .solution-icon{background:var(--sofia-green-light);color:var(--sofia-green-dark)}.solution-card h3{margin:0 0 12px;color:var(--sofia-dark);font-size:22px;font-weight:730}.solution-card p{min-height:70px;margin:0 0 22px;color:#746e7a;font-size:13px;line-height:1.7}.solution-link{color:#5b5561;font-size:12px;font-weight:700}.solution-link i{margin-left:4px;color:var(--sofia-purple)}

/* METHODOLOGY */
.methodology-section{background:#fff}.process-wrap{position:relative}.process-line{position:absolute;z-index:0;left:9%;right:9%;top:31px;height:1px;background:linear-gradient(90deg,var(--sofia-purple-light),rgba(147,59,209,.35),var(--sofia-green-light))}.process-card{position:relative;z-index:1;height:100%;padding:0 13px;background:#fff}.process-card>span{width:38px;height:38px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;border:1px solid rgba(147,59,209,.22);border-radius:50%;background:#fff;color:var(--sofia-purple);font-size:11px;font-weight:800}.process-card>i{display:block;margin-bottom:10px;color:var(--sofia-green-dark);font-size:18px}.process-card h3{margin:0 0 8px;color:var(--sofia-dark);font-size:19px;font-weight:720}.process-card p{margin:0;color:#77717e;font-size:12px;line-height:1.65}

/* EXPERIENCE */
.experience-section{background:#faf9fc}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.experience-card{display:flex;gap:17px;height:100%;padding:23px;border:1px solid var(--sofia-border);border-radius:17px;background:#fff}.experience-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:var(--sofia-green-light);color:var(--sofia-green-dark);font-size:17px}.experience-card span{display:block;margin-bottom:5px;color:#96909b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.35px}.experience-card h3{margin:0 0 8px;color:var(--sofia-dark);font-size:17px;font-weight:720;line-height:1.3}.experience-card p{margin:0;color:#77717e;font-size:12px;line-height:1.6}

/* ABOUT */
.about-section{background:#fff}.about-panel{position:relative;padding:65px 70px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#211b28 0%,#30213a 62%,#26332c 100%);box-shadow:var(--shadow-md)}.about-panel:after{content:"";position:absolute;width:360px;height:360px;right:-110px;top:-140px;border-radius:50%;background:rgba(124,200,147,.10)}.light-kicker{color:#d9d1de}.light-kicker>span{background:rgba(255,255,255,.1);color:#d7a8f6}.about-panel h2{margin:0 0 17px;color:#fff;font-size:46px;line-height:1.12;letter-spacing:-1.5px;font-weight:750}.about-panel p{max-width:650px;margin:0;color:#d3ccd7;font-size:15px;line-height:1.75}.about-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.about-tags span{padding:7px 12px;border:1px solid rgba(255,255,255,.14);border-radius:100px;background:rgba(255,255,255,.07);color:#eee8f1;font-size:11px;font-weight:650}.about-visual{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center}.about-logo-ring{width:180px;height:180px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:rgba(255,255,255,.08)}.about-logo-ring img{width:105px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.15))}.about-stat{margin-top:22px;text-align:center}.about-stat strong{display:block;color:#fff;font-size:18px}.about-stat span{display:block;margin-top:3px;color:#cfc7d2;font-size:11px}

/* FAQ */
.faq-section{background:#faf9fc}.sofia-accordion{border:1px solid var(--sofia-border);border-radius:17px;overflow:hidden;background:#fff}.sofia-accordion .accordion-item{border:0;border-bottom:1px solid var(--sofia-border)}.sofia-accordion .accordion-item:last-child{border-bottom:0}.sofia-accordion .accordion-button{padding:20px 22px;background:#fff;color:#403a46;font-size:14px;font-weight:650;box-shadow:none}.sofia-accordion .accordion-button:not(.collapsed){color:var(--sofia-purple);background:var(--sofia-purple-light)}.sofia-accordion .accordion-button:focus{box-shadow:none}.sofia-accordion .accordion-body{padding:19px 22px;color:#706a76;font-size:13px;line-height:1.7}

/* CONTACT */
.contact-section{background:#fff}.contact-panel{overflow:hidden;border:1px solid var(--sofia-border);border-radius:26px;background:#fff;box-shadow:var(--shadow-md)}.contact-copy{height:100%;padding:55px 48px;background:linear-gradient(145deg,#251d2c,#392443);color:#fff}.contact-copy h2{margin:0 0 14px;color:#fff;font-size:40px;line-height:1.12;letter-spacing:-1.3px;font-weight:750}.contact-copy>p{margin:0;color:#d4cdd7;font-size:14px;line-height:1.7}.contact-points{display:grid;gap:12px;margin-top:28px}.contact-points div{display:flex;align-items:center;gap:10px;color:#eee8f0;font-size:13px}.contact-points i{color:var(--sofia-green);font-size:17px}.contact-form-wrap{height:100%;padding:50px;background:#fff}.form-label{margin-bottom:7px;color:#514b58;font-size:11px;font-weight:750}.sofia-input{min-height:48px;padding:11px 13px;border:1px solid #e1dde5;border-radius:10px;color:#3f3945;font-size:13px;box-shadow:none!important}.sofia-input::placeholder{color:#aaa4ae}.sofia-input:focus{border-color:rgba(147,59,209,.65);box-shadow:0 0 0 3px rgba(147,59,209,.08)!important}textarea.sofia-input{min-height:110px;resize:vertical}.form-note{color:#938d98;font-size:10px;line-height:1.4}

/* FOOTER CTA */
.footer-cta{padding:0 0 85px;background:#fff}.footer-cta-card{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:38px 44px;border:1px solid rgba(147,59,209,.15);border-radius:22px;background:linear-gradient(100deg,#fbf7fe,#f6fbf8)}.footer-cta-kicker{display:block;margin-bottom:8px;color:var(--sofia-purple);font-size:11px;font-weight:750}.footer-cta-card h2{margin:0 0 8px;color:var(--sofia-dark);font-size:28px;font-weight:750;letter-spacing:-.7px}.footer-cta-card p{margin:0;color:#77717e;font-size:13px}.footer-cta-button{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;padding:13px 20px;border-radius:11px;background:var(--sofia-purple);color:#fff!important;font-size:13px;font-weight:750}.footer-cta-button:hover{background:var(--sofia-purple-dark)}

/* FOOTER */
.footer-sofia{padding:60px 0 25px;background:#f8f7fa;border-top:1px solid var(--sofia-border)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.25fr;gap:48px}.footer-logo{width:125px;margin-bottom:15px}.footer-brand p{max-width:390px;margin:0;color:#77717e;font-size:12px;line-height:1.7}.footer-brand-by{display:block;margin-top:14px;color:#9a949f;font-size:10px;font-weight:650}.footer-column h3{margin:0 0 15px;color:#342f39;font-size:14px;font-weight:750}.footer-column a{display:block;width:max-content;max-width:100%;margin-bottom:10px;color:#77717e;font-size:11px;font-weight:600;transition:.2s}.footer-column a:hover{color:var(--sofia-purple)}.footer-contact p{margin:13px 0 0;color:#9a949f;font-size:10px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:20px;border-top:1px solid #e6e2e8;color:#9a949f;font-size:9px}.footer-bottom a{color:#77717e}.footer-bottom a:hover{color:var(--sofia-purple)}

/* RESPONSIVE */
@media(max-width:1199.98px){.section-space{padding:90px 0}.hero-title{font-size:52px}.software-window{transform:none}.floating-card-one{left:0}.about-panel{padding:58px 50px}}
@media(max-width:991.98px){.navbar-sofia,.navbar-sofia .container{min-height:72px}.logo-sofia{width:125px}.navbar-collapse{margin-top:10px;padding:14px;background:#fff;border:1px solid var(--sofia-border);border-radius:13px;box-shadow:var(--shadow-sm)}.navbar-sofia .nav-link{padding:10px 6px!important}.navbar-sofia .nav-link:after{display:none}.navbar-sofia .btn-navbar{width:100%;margin-top:7px}.hero-sofia{padding-top:72px}.hero-container{padding-top:70px;padding-bottom:70px}.hero-content{max-width:760px;margin:auto;text-align:center}.hero-title{font-size:clamp(43px,7vw,60px)}.hero-description{margin-left:auto;margin-right:auto}.hero-actions,.hero-features{justify-content:center}.hero-visual{min-height:500px;margin-top:22px}.software-window{max-width:700px}.trust-content{flex-direction:column;gap:16px}.problem-grid,.experience-grid{grid-template-columns:1fr 1fr}.process-line{display:none}.process-card{padding:20px;border:1px solid var(--sofia-border);border-radius:16px;background:#fff}.about-panel{padding:50px 38px}.about-visual{margin-top:10px}.contact-copy,.contact-form-wrap{padding:42px}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-contact{grid-column:1/-1}.footer-cta-card{align-items:flex-start;flex-direction:column}}
@media(max-width:767.98px){.section-space{padding:75px 0}.section-title{font-size:38px}.section-lead{font-size:15px}.problem-grid,.experience-grid{grid-template-columns:1fr}.solution-card{min-height:auto}.solution-card p{min-height:0}.about-panel{border-radius:22px}.about-panel h2{font-size:38px}.contact-panel{border-radius:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:auto}.footer-bottom{flex-direction:column}.footer-cta{padding-bottom:65px}.footer-cta-card{padding:32px}}
@media(max-width:575.98px){.hero-container{padding-top:52px;padding-bottom:48px}.hero-title{font-size:39px;letter-spacing:-1.7px}.hero-description{font-size:15px;line-height:1.65}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.hero-features{flex-direction:column;align-items:flex-start;gap:10px;width:max-content;max-width:100%;margin-left:auto;margin-right:auto}.hero-visual{min-height:auto;padding-top:25px;padding-bottom:55px}.software-window{border-radius:14px}.software-window-body{min-height:320px}.software-sidebar{width:46px;flex-basis:46px;padding:12px 5px}.software-mini-logo{width:30px;height:30px}.sidebar-item{width:30px;height:30px}.software-dashboard{padding:12px}.dashboard-top h3{font-size:12px}.dashboard-card{min-height:88px;padding:8px}.dashboard-card-icon{width:22px;height:22px;margin-bottom:5px}.dashboard-card strong{font-size:11px}.dashboard-card small{display:none}.dashboard-chart{padding:10px}.fake-chart{height:70px}.chart-line{gap:6px}.floating-card-one{left:5px;bottom:7px}.floating-card-two{display:none}.trust-items{gap:15px 20px}.section-title{font-size:34px;letter-spacing:-1.2px}.mini-card,.solution-card,.experience-card{padding:22px}.about-panel{padding:38px 24px}.about-panel h2{font-size:34px}.about-logo-ring{width:145px;height:145px}.about-logo-ring img{width:82px}.contact-copy,.contact-form-wrap{padding:34px 22px}.contact-copy h2{font-size:34px}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-contact{grid-column:auto}.footer-cta-card{padding:27px 23px}.footer-cta-card h2{font-size:24px}.footer-cta-button{width:100%;justify-content:center}}


/* === SOFIA: REFUERZO DE IDENTIDAD VISUAL === */
.btn-sofia-primary{background:linear-gradient(135deg,var(--sofia-purple),#b84ee6);border-color:transparent}
.hero-sofia{background:radial-gradient(circle at 87% 22%,rgba(124,200,147,.22),transparent 30%),radial-gradient(circle at 12% 82%,rgba(147,59,209,.15),transparent 34%),linear-gradient(135deg,#fff 0%,#fdf9ff 48%,#f7fff9 100%)}
.hero-orb{position:absolute;border-radius:50%;pointer-events:none}.hero-orb-purple{width:360px;height:360px;left:-170px;bottom:-190px;background:rgba(147,59,209,.09)}.hero-orb-green{width:320px;height:320px;right:-130px;top:120px;background:rgba(124,200,147,.10)}
.software-window{border-color:rgba(147,59,209,.14);box-shadow:0 28px 70px rgba(71,35,92,.15)}
.trust-bar{background:linear-gradient(90deg,#fcf8ff,#fff 48%,#f7fcf9)}
.problem-section{background:linear-gradient(180deg,#fff,#fdfaff)}.mini-card{position:relative;overflow:hidden}.mini-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--sofia-purple),var(--sofia-green));opacity:.7}
.solutions-section{background:radial-gradient(circle at 12% 20%,rgba(147,59,209,.07),transparent 25%),radial-gradient(circle at 88% 80%,rgba(124,200,147,.08),transparent 27%),#faf9fc}.solution-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--sofia-purple),#bd58e8,var(--sofia-green));opacity:.72}
.methodology-section{background:linear-gradient(180deg,#fff,#fbfffc)}.experience-section{background:radial-gradient(circle at 92% 12%,rgba(124,200,147,.10),transparent 28%),linear-gradient(180deg,#faf9fc,#fff)}.experience-card{transition:.22s}.experience-card:hover{transform:translateY(-3px);border-color:rgba(124,200,147,.38);box-shadow:var(--shadow-sm)}
.about-panel{background:radial-gradient(circle at 88% 20%,rgba(124,200,147,.20),transparent 26%),radial-gradient(circle at 15% 90%,rgba(147,59,209,.28),transparent 32%),linear-gradient(135deg,#211727,#3d1f50 55%,#23372b)}
.faq-section{background:linear-gradient(135deg,#fbf8fd,#f9fcfa)}.contact-copy{background:radial-gradient(circle at 15% 15%,rgba(147,59,209,.30),transparent 32%),radial-gradient(circle at 90% 90%,rgba(124,200,147,.20),transparent 30%),linear-gradient(145deg,#211827,#3a2145)}
.footer-sofia{background:linear-gradient(135deg,#f8f5fa,#fbfafc 55%,#f5fbf7)}.footer-legal-links{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.footer-legal-links a{color:#77717e}.footer-legal-links a:hover{color:var(--sofia-purple)}
/* PRIVACIDAD */
.privacy-hero{padding:150px 0 70px;overflow:hidden;background:radial-gradient(circle at 85% 20%,rgba(124,200,147,.18),transparent 28%),radial-gradient(circle at 10% 85%,rgba(147,59,209,.13),transparent 30%),linear-gradient(135deg,#fff,#fbf7fe 58%,#f7fcf9)}
.privacy-section{padding:70px 0 100px;background:#fff}.privacy-card{max-width:960px;margin:auto;padding:48px 52px;border:1px solid var(--sofia-border);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}
.privacy-card h2{margin:0 0 16px;color:var(--sofia-dark);font-size:25px;font-weight:750}.privacy-card h2:not(:first-child){margin-top:38px}.privacy-card p{margin:0;color:#6f6975;font-size:15px;line-height:1.85}
.privacy-company{display:flex;align-items:center;gap:12px;margin-bottom:30px;padding:15px 18px;border:1px solid rgba(147,59,209,.12);border-radius:14px;background:linear-gradient(90deg,var(--sofia-purple-light),#f5fbf7);color:#5f5865;font-size:13px}.privacy-company i{color:var(--sofia-purple);font-size:18px}
@media(max-width:767.98px){.privacy-hero{padding:125px 0 55px}.privacy-section{padding:50px 0 75px}.privacy-card{padding:34px 26px;border-radius:19px}}

/* =========================================================
   SOFIA — HERO MOBILE FINAL
   ========================================================= */
@media (max-width:575.98px){
    .hero-sofia{padding-top:72px;text-align:center}
    .hero-container{min-height:auto;padding-top:46px;padding-bottom:48px}
    .hero-container>.row{width:100%;margin-left:0;margin-right:0}
    .hero-container>.row>[class*="col-"]{padding-left:12px;padding-right:12px}
    .hero-content{width:100%;max-width:540px;margin:0 auto;padding:0;text-align:center}
    .hero-kicker{width:auto;display:inline-flex;align-items:center;justify-content:center;gap:9px;margin:0 auto 22px;font-size:13px;text-align:left}
    .hero-kicker>span{flex:0 0 auto}
    .hero-title{width:100%;max-width:500px;margin:0 auto;padding:0;font-size:clamp(36px,9.3vw,42px);line-height:1.08;letter-spacing:-1.5px;text-align:center;overflow-wrap:normal;word-break:normal}
    .hero-title span{display:block;color:var(--sofia-purple);text-align:center}
    .hero-description{width:100%;max-width:500px;margin:24px auto 0;padding:0;color:#686370;font-size:15px;line-height:1.7;text-align:center}
    .hero-actions{width:100%;max-width:500px;margin:28px auto 0;display:flex;flex-direction:column;align-items:stretch;gap:12px}
    .hero-actions .btn{width:100%;min-height:54px;margin:0}
    .hero-features{width:auto;max-width:280px;margin:27px auto 0;display:flex;flex-direction:column;align-items:flex-start;gap:11px}
    .hero-feature{width:auto;display:flex;align-items:center;justify-content:flex-start;gap:8px;font-size:12px;text-align:left;white-space:normal}
    .hero-feature i{flex:0 0 19px}
    .hero-visual{width:100%;min-height:auto;margin:40px auto 0;padding:0 0 50px;display:flex;justify-content:center}
    .software-window{width:100%;max-width:520px;margin:0 auto;transform:none}
}
@media (max-width:390px){
    .hero-container{padding-top:40px}
    .hero-kicker{font-size:12px;gap:7px}
    .hero-title{font-size:34px;line-height:1.09;letter-spacing:-1.2px}
    .hero-description{font-size:14px;line-height:1.65}
    .hero-actions{margin-top:25px}
}

/* =========================================================
   SOFIA — IDENTIDAD VISUAL V2
   Paleta oficial: #933BD1 / #280241 / #76C893
   Capa final de identidad. Mantiene estructura y responsive.
   ========================================================= */

:root{
  --sofia-purple:#933BD1;
  --sofia-purple-dark:#280241;
  --sofia-purple-light:#F5EAFB;
  --sofia-green:#76C893;
  --sofia-green-dark:#4FA66E;
  --sofia-green-light:#EAF8EF;
  --sofia-dark:#280241;
  --sofia-text:#493D50;
  --sofia-muted:#786D7E;
  --sofia-border:#E7DCEC;
  --sofia-light:#FAF7FC;
  --sofia-white:#fff;
  --shadow-sm:0 12px 32px rgba(40,2,65,.08);
  --shadow-md:0 24px 62px rgba(40,2,65,.14);
}

/* NAVBAR */
.navbar-sofia{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(40,2,65,.07);
}
.navbar-sofia.is-scrolled{box-shadow:0 10px 30px rgba(40,2,65,.08)}
.navbar-sofia .nav-link{color:#55485D}
.navbar-sofia .nav-link:hover,.navbar-sofia .nav-link.active{color:var(--sofia-purple)}
.navbar-sofia .nav-link:after{background:linear-gradient(90deg,var(--sofia-purple),var(--sofia-green))}

/* BOTONES */
.btn-sofia-primary{
  background:linear-gradient(135deg,#7D27B8 0%,var(--sofia-purple) 52%,#B94CE1 100%);
  border-color:transparent;
  box-shadow:0 12px 28px rgba(147,59,209,.28);
}
.btn-sofia-primary:hover{
  background:linear-gradient(135deg,var(--sofia-purple-dark),#7022A2 58%,var(--sofia-purple));
  border-color:transparent;
  box-shadow:0 16px 34px rgba(147,59,209,.34);
}
.btn-sofia-outline{color:var(--sofia-purple-dark);border-color:rgba(147,59,209,.22)}
.btn-sofia-outline:hover{background:var(--sofia-purple-light);border-color:rgba(147,59,209,.42)}

/* TITULOS */
.section-kicker{color:#69566F}
.section-kicker>span{background:var(--sofia-purple-light);color:var(--sofia-purple)}
.section-title{color:var(--sofia-purple-dark)}
.section-lead{color:#716678}

/* HERO */
.hero-sofia{
  isolation:isolate;
  background:
    radial-gradient(circle at 88% 24%,rgba(118,200,147,.34) 0%,rgba(118,200,147,.13) 22%,transparent 43%),
    radial-gradient(circle at 8% 86%,rgba(147,59,209,.25) 0%,rgba(147,59,209,.08) 27%,transparent 48%),
    linear-gradient(135deg,#fff 0%,#FBF5FF 48%,#F2FBF5 100%);
}
.hero-orb-purple{background:rgba(147,59,209,.14)}
.hero-orb-green{background:rgba(118,200,147,.16)}
.hero-title{color:#17121A}
.hero-title span{
  color:var(--sofia-purple);
  background:linear-gradient(90deg,#7925B4,var(--sofia-purple) 52%,#B343DA);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.hero-kicker{color:#5D4D64;font-weight:700}
.hero-description{color:#665C6C}
.hero-feature i{background:var(--sofia-green-light);color:var(--sofia-green-dark)}
.software-window{
  border-color:rgba(147,59,209,.18);
  box-shadow:0 34px 82px rgba(40,2,65,.18);
}
.sidebar-item.active,.dashboard-card-icon.purple,.floating-icon{
  background:var(--sofia-purple-light);color:var(--sofia-purple)
}
.dashboard-user,.dashboard-card-icon.green{
  background:var(--sofia-green-light);color:var(--sofia-green-dark)
}
.chart-line span{background:linear-gradient(180deg,#7E28B9,var(--sofia-purple) 48%,#C777E5)}
.floating-status{background:var(--sofia-green);box-shadow:0 0 0 5px rgba(118,200,147,.18)}

/* TRUST */
.trust-bar{
  border-color:rgba(147,59,209,.10);
  background:linear-gradient(90deg,rgba(147,59,209,.09),#fff 46%,rgba(118,200,147,.12));
}
.trust-label{color:#796C80;font-weight:700}
.trust-items div{color:#55485C}
.trust-items i{color:var(--sofia-purple)}

/* PROBLEMAS */
.problem-section{
  background:
    radial-gradient(circle at 2% 45%,rgba(147,59,209,.09),transparent 23%),
    #fff;
}
.mini-card{
  border-color:rgba(147,59,209,.14);
  background:linear-gradient(145deg,#fff,#FCF8FE);
}
.mini-card:before{
  width:4px;
  opacity:1;
  background:linear-gradient(180deg,var(--sofia-purple),var(--sofia-green));
}
.mini-card h3{color:var(--sofia-purple-dark)}

/* SOLUCIONES — sección principal de marca */
.solutions-section{
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 16%,rgba(147,59,209,.38),transparent 30%),
    radial-gradient(circle at 94% 88%,rgba(118,200,147,.20),transparent 28%),
    linear-gradient(135deg,#1C012C 0%,var(--sofia-purple-dark) 48%,#351047 100%);
}
.solutions-section .section-kicker,
.solutions-section .section-title,
.solutions-section .section-lead{color:#fff}
.solutions-section .section-kicker>span{
  color:#fff;
  background:rgba(255,255,255,.12);
}
.solutions-section .section-lead{opacity:.78}
.solution-card{
  border-color:rgba(255,255,255,.15);
  background:rgba(255,255,255,.97);
  box-shadow:0 18px 44px rgba(0,0,0,.15);
}
.solution-card:before{
  height:4px;
  opacity:1;
  background:linear-gradient(90deg,var(--sofia-purple),#C15BE5,var(--sofia-green));
}
.solution-card:hover{
  border-color:rgba(118,200,147,.55);
  box-shadow:0 24px 54px rgba(0,0,0,.20);
}
.solution-number{color:rgba(147,59,209,.72)}
.solution-card h3{color:var(--sofia-purple-dark)}
.solution-link{color:var(--sofia-purple-dark)}

/* METODOLOGIA */
.methodology-section{
  background:
    radial-gradient(circle at 92% 15%,rgba(118,200,147,.11),transparent 26%),
    linear-gradient(180deg,#fff,#FBF8FD);
}
.process-card>span{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--sofia-purple),#B44DDA);
  box-shadow:0 8px 18px rgba(147,59,209,.20);
}
.process-card>i{color:var(--sofia-green-dark)}
.process-card h3{color:var(--sofia-purple-dark)}

/* EXPERIENCIA */
.experience-section{
  background:
    radial-gradient(circle at 94% 10%,rgba(118,200,147,.17),transparent 28%),
    radial-gradient(circle at 5% 92%,rgba(147,59,209,.13),transparent 30%),
    linear-gradient(135deg,#F7EEFC,#FCFAFD 52%,#F1FAF4);
}
.experience-card{
  border-color:rgba(147,59,209,.14);
  background:rgba(255,255,255,.94);
}
.experience-card:hover{
  border-color:rgba(147,59,209,.35);
  box-shadow:0 18px 40px rgba(40,2,65,.10);
}
.experience-icon{
  color:#fff;
  background:linear-gradient(135deg,var(--sofia-purple),#B64DDB);
}
.experience-card:nth-child(even) .experience-icon{
  color:#fff;
  background:linear-gradient(135deg,#4EA76D,var(--sofia-green));
}
.experience-card h3{color:var(--sofia-purple-dark)}

/* SOFIA + UCORP */
.about-panel{
  background:
    radial-gradient(circle at 84% 18%,rgba(118,200,147,.27),transparent 26%),
    radial-gradient(circle at 10% 92%,rgba(147,59,209,.42),transparent 34%),
    linear-gradient(135deg,#190128 0%,var(--sofia-purple-dark) 50%,#3A104B 100%);
  box-shadow:0 28px 70px rgba(40,2,65,.22);
}
.light-kicker{color:#E3C9F1}
.light-kicker>span{background:rgba(255,255,255,.11);color:#fff}
.about-tags span{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.09)}
.about-logo-ring{
  border-color:rgba(118,200,147,.38);
  background:rgba(255,255,255,.09);
  box-shadow:inset 0 0 0 11px rgba(255,255,255,.025);
}

/* FAQ */
.faq-section{
  background:
    radial-gradient(circle at 12% 10%,rgba(147,59,209,.10),transparent 25%),
    linear-gradient(135deg,#FBF6FE,#F4FBF6);
}
.sofia-accordion{
  border-color:rgba(147,59,209,.15);
  box-shadow:0 14px 36px rgba(40,2,65,.07);
}
.sofia-accordion .accordion-button:not(.collapsed){
  color:var(--sofia-purple-dark);
  background:linear-gradient(90deg,var(--sofia-purple-light),var(--sofia-green-light));
}

/* CONTACTO */
.contact-section{
  background:
    radial-gradient(circle at 94% 12%,rgba(147,59,209,.09),transparent 25%),
    #fff;
}
.contact-panel{border-color:rgba(147,59,209,.15);box-shadow:0 24px 60px rgba(40,2,65,.13)}
.contact-copy{
  background:
    radial-gradient(circle at 13% 14%,rgba(147,59,209,.42),transparent 34%),
    radial-gradient(circle at 92% 90%,rgba(118,200,147,.28),transparent 31%),
    linear-gradient(145deg,#180126,var(--sofia-purple-dark) 55%,#371046);
}
.contact-points i{color:var(--sofia-green)}
.sofia-input:focus{
  border-color:rgba(147,59,209,.70);
  box-shadow:0 0 0 4px rgba(147,59,209,.10)!important;
}

/* CTA PRE-FOOTER */
.footer-cta-card{
  border-color:rgba(147,59,209,.17);
  background:
    radial-gradient(circle at 7% 50%,rgba(147,59,209,.16),transparent 30%),
    radial-gradient(circle at 94% 50%,rgba(118,200,147,.22),transparent 29%),
    linear-gradient(100deg,#F7ECFC,#FCFAFD 52%,#ECF8F0);
  box-shadow:0 16px 40px rgba(40,2,65,.08);
}
.footer-cta-card h2{color:var(--sofia-purple-dark)}
.footer-cta-button{
  background:linear-gradient(135deg,#7D27B8,var(--sofia-purple) 55%,#B64CDF);
  box-shadow:0 10px 24px rgba(147,59,209,.23);
}
.footer-cta-button:hover{background:var(--sofia-purple-dark)}

/* FOOTER OSCURO DE MARCA */
.footer-sofia{
  color:rgba(255,255,255,.74);
  border-top:0;
  background:
    radial-gradient(circle at 92% 15%,rgba(118,200,147,.17),transparent 25%),
    linear-gradient(135deg,#170124 0%,var(--sofia-purple-dark) 58%,#351043 100%);
}
.footer-brand p,.footer-brand-by,.footer-contact p{color:rgba(255,255,255,.60)}
.footer-column h3{color:#fff}
.footer-column a,.footer-bottom a,.footer-legal-links a{color:rgba(255,255,255,.70)}
.footer-column a:hover,.footer-bottom a:hover{color:#fff}
.footer-legal-links a:hover{color:var(--sofia-green)}
.footer-bottom{
  border-top-color:rgba(255,255,255,.12);
  color:rgba(255,255,255,.50);
}

/* PRIVACIDAD */
.privacy-hero{
  background:
    radial-gradient(circle at 86% 20%,rgba(118,200,147,.30),transparent 29%),
    radial-gradient(circle at 9% 86%,rgba(147,59,209,.21),transparent 31%),
    linear-gradient(135deg,#fff,#F9F0FD 58%,#EFF9F3);
}
.privacy-card{border-color:rgba(147,59,209,.15);box-shadow:0 18px 46px rgba(40,2,65,.09)}
.privacy-card h2{color:var(--sofia-purple-dark)}
.privacy-company{
  border-color:rgba(147,59,209,.17);
  background:linear-gradient(90deg,var(--sofia-purple-light),var(--sofia-green-light));
}

/* MOBILE: conserva las correcciones de estructura del hero */
@media(max-width:575.98px){
  .hero-sofia{
    background:
      radial-gradient(circle at 96% 24%,rgba(118,200,147,.28),transparent 37%),
      radial-gradient(circle at 4% 88%,rgba(147,59,209,.20),transparent 40%),
      linear-gradient(145deg,#fff,#FBF5FE 58%,#F2FAF5);
  }
  .solutions-section{
    background:
      radial-gradient(circle at 14% 7%,rgba(147,59,209,.34),transparent 25%),
      radial-gradient(circle at 92% 96%,rgba(118,200,147,.18),transparent 26%),
      linear-gradient(145deg,#1B012A,var(--sofia-purple-dark) 62%,#321040);
  }
  .solution-card{box-shadow:0 14px 34px rgba(0,0,0,.13)}
  .about-panel,.contact-copy{border-radius:22px}
}

/* =========================================================
   FIX MOBILE — HERO A TODO EL ANCHO
   ========================================================= */
@media (max-width: 575.98px){

    html,
    body{
        width:100%;
        max-width:100%;
        margin:0;
        padding:0;
        overflow-x:hidden;
    }

    .hero-sofia{
        width:100%;
        max-width:none;
        margin-left:0;
        margin-right:0;
        overflow:hidden;
    }

    .hero-container{
        width:100%;
        max-width:100%;
        margin-left:auto;
        margin-right:auto;
        box-sizing:border-box;
    }

    .hero-container > .row{
        width:auto;
        margin-left:-12px;
        margin-right:-12px;
    }

    .hero-container > .row > [class*="col-"]{
        box-sizing:border-box;
    }
}
