.osmosis-header-space { height: 106px; }
.osmosis-page { --oi-ink:#17354d; --oi-blue:#176d9e; --oi-sky:#d7eef8; --oi-line:#dce7ed; color:var(--oi-ink); background:#fff; }
main.osmosis-page h1, main.osmosis-page h2, main.osmosis-page h3 { letter-spacing:-.035em; }
main.osmosis-page h2 { font-size:clamp(1.8rem,3vw,2.5rem); line-height:1.18; margin-bottom:24px; }
main.osmosis-page h3 { font-size:1.23rem; line-height:1.35; }
.osmosis-page p, .osmosis-page li { line-height:1.7; }
.osmosis-page a:not(.btn) { color:var(--oi-blue); }
.osmosis-page a:focus-visible, .osmosis-page summary:focus-visible { outline:3px solid #37a4d7; outline-offset:5px; }
.osmosis-page section[id] { scroll-margin-top:110px; }
.osmosis-page .btn-primary { background:#127aa9; border-color:#127aa9; border-radius:5px; padding:14px 22px; font-weight:600; box-shadow:none; }
.osmosis-page .btn-primary:hover { background:#0b5a80; border-color:#0b5a80; }
.osmosis-page .osmosis-kicker { color:var(--oi-blue); font-size:.73rem; font-weight:700; letter-spacing:.14em; margin:0 0 16px; }
.osmosis-page .osmosis-section { padding-top:82px; padding-bottom:82px; }
.osmosis-page .osmosis-band { background:#f3f7fa; }
.osmosis-page .osmosis-hero { position:relative; isolation:isolate; overflow:hidden; min-height:248px; height:248px; display:flex; align-items:center; background:#09263f; color:#fff; }
.osmosis-page .osmosis-hero__media { position:absolute; inset:0; z-index:-2; }
.osmosis-page .osmosis-hero__media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.osmosis-page .osmosis-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(5,27,47,.95),rgba(5,27,47,.84) 28%,rgba(5,27,47,.3) 65%,rgba(5,27,47,.05)); }
.osmosis-page .osmosis-hero__content { padding-top:30px; padding-bottom:30px; }
.osmosis-page .osmosis-eyebrow { font-size:.71rem; font-weight:600; letter-spacing:.15em; color:#9ed2ed; margin-bottom:22px; }
.osmosis-page .osmosis-hero h1 { color:#fff; font-size:2.5rem; line-height:1.15; margin-bottom:14px; max-width:620px; }
.osmosis-page .osmosis-hero h1 span { font-size:.75em; line-height:1.18; display:inline-block; margin-top:11px; font-weight:400; }
.osmosis-page .osmosis-hero__description { max-width:740px; color:#e0eaf0; font-size:1rem; }
.osmosis-page .osmosis-actions { display:flex; align-items:center; flex-wrap:wrap; gap:26px; margin-top:30px; }
.osmosis-page .osmosis-actions .btn { display:inline-flex; align-items:center; gap:30px; background:#fff; border-color:#fff; color:#123e59; }
.osmosis-page .osmosis-actions .btn:hover { background:#d9edf7; border-color:#d9edf7; color:#123e59; }
.osmosis-page a.osmosis-hero__secondary { color:#fff; font-size:.9rem; border-bottom:1px solid #9fb5c5; padding:8px 0; text-decoration:none; }
.osmosis-page .osmosis-hero__secondary span { margin-left:14px; }
.osmosis-page .osmosis-hero__applications { display:flex; gap:16px; margin-top:34px; font-size:.73rem; color:#c2d9e8; }
.osmosis-page .osmosis-hero__applications span+span { padding-left:16px; border-left:1px solid #70899c; }
.osmosis-page .osmosis-hero__caption { position:absolute; bottom:12px; right:22px; color:#d0dce5; font-size:.58rem; background:rgba(4,24,40,.55); padding:3px 8px; border-radius:3px; }
.osmosis-page .osmosis-topics { border-bottom:1px solid var(--oi-line); background:#fff; }
.osmosis-page .osmosis-topics .container { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-top:23px; padding-bottom:23px; }
.osmosis-page .osmosis-topics__label { font-size:.63rem; letter-spacing:.12em; color:#688093; white-space:nowrap; }
.osmosis-page .osmosis-topics a { font-size:.81rem; font-weight:600; white-space:nowrap; text-decoration:none; }
.osmosis-page .osmosis-topics a:hover { text-decoration:underline; }
.osmosis-page .osmosis-intro { display:grid; grid-template-columns:1.3fr 1fr; gap:70px; align-items:center; }
.osmosis-page .osmosis-intro__question { font-size:1rem!important; letter-spacing:0!important; margin-top:24px; font-weight:600; }
.osmosis-page .osmosis-intro p:not(.osmosis-kicker) { font-size:.94rem; color:#536a7a; }
.osmosis-page .osmosis-separation { background:linear-gradient(140deg,#eef7fb,#e4f0f7); border-radius:12px; padding:30px; position:relative; }
.osmosis-page .osmosis-separation__icon { display:inline-flex; align-items:center; justify-content:center; color:var(--oi-blue); width:42px; height:42px; background:#fff; border-radius:50%; font-size:20px; margin-bottom:15px; }
.osmosis-page .osmosis-separation__title { font-size:1.6rem; line-height:1.2!important; letter-spacing:-.04em; margin-bottom:25px; }
.osmosis-page .osmosis-flow { text-align:center; font-size:.76rem; }
.osmosis-page .osmosis-flow>span { display:block; margin:7px 0; }
.osmosis-page .osmosis-flow>strong { display:block; background:#1a628b; border-radius:6px; padding:13px; color:white; }
.osmosis-page .osmosis-flow>div { display:grid; grid-template-columns:1fr 1fr; gap:15px; padding-top:18px; }
.osmosis-page .osmosis-flow>div>span { background:#fff; padding:15px 9px; border-radius:6px; font-weight:600; }
.osmosis-page .osmosis-flow i { display:block; color:#359ac4; font-size:17px; margin-bottom:9px; }
.osmosis-page .osmosis-flow small { display:block; font-size:.67rem; font-weight:400; color:#607587; margin-top:9px; }
.osmosis-page .osmosis-process__label { margin:55px 0 18px; font-size:.66rem; color:#6c8496; letter-spacing:.13em; }
.osmosis-page .osmosis-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; list-style:none; padding:0; margin:0; }
.osmosis-page .osmosis-process li { border-top:2px solid #aed3e7; padding:18px 0 0; }
.osmosis-page .osmosis-process strong { font-size:.85rem; }
.osmosis-page .osmosis-process span { display:block; margin-top:11px; color:#637a8b; font-size:.82rem; }
.osmosis-page .osmosis-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.osmosis-page .osmosis-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.osmosis-page .osmosis-card { padding:30px; border-radius:10px; background:#fff; border:1px solid #e0e9ef; }
.osmosis-page .osmosis-application { display:flex; flex-direction:column; padding:32px; margin-top:18px; }
.osmosis-page .osmosis-application__icon { width:52px; height:52px; display:grid; place-items:center; background:#eef6fb; color:#1b739e; border-radius:12px; font-size:23px; margin-bottom:25px; }
.osmosis-page .osmosis-application h3 { font-size:1.45rem; margin-bottom:15px; }
.osmosis-page .osmosis-application p { font-size:.88rem; color:#627786; flex:1; }
.osmosis-page .osmosis-application a { padding-top:16px; margin-top:10px; border-top:1px solid #e5edf1; font-size:.8rem; font-weight:600; }
.osmosis-page .osmosis-benefit { background:#f0f7fa; border-radius:10px; padding:28px 30px; margin-bottom:26px; }
.osmosis-page .osmosis-benefit--consider { background:#f4f5f6; }
.osmosis-page .osmosis-benefit h3 { font-size:1.08rem; margin-bottom:18px; }
.osmosis-page .osmosis-benefit i { margin-right:8px; color:#288cb3; }
.osmosis-page .osmosis-benefit ul { margin:0; padding-left:19px; font-size:.9rem; color:#526b7b; }
.osmosis-page .osmosis-benefit li { margin-bottom:10px; }
.osmosis-page .osmosis-products { grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:30px; }
.osmosis-page .osmosis-product { border:1px solid #e0e8ed; border-radius:10px; overflow:hidden; background:#fff; transition:box-shadow .2s,border-color .2s; }
.osmosis-page .osmosis-product:hover { border-color:#a9c9dd; box-shadow:0 12px 24px rgba(15,50,75,.06); }
.osmosis-page .osmosis-product__image { display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; padding:23px; background:#fff; overflow:hidden; }
.osmosis-page .osmosis-product__image img { display:block; width:100%; height:100%; object-fit:contain; }
.osmosis-page .osmosis-product__body { padding:22px; border-top:1px solid #edf2f5; }
.osmosis-page .osmosis-product__label { display:block; font-size:.57rem; letter-spacing:.1em; color:#748b9c; margin-bottom:12px; }
.osmosis-page .osmosis-product h3 { font-size:1.05rem; line-height:1.4; min-height:3em; }
.osmosis-page .osmosis-product h3 a, .osmosis-page .osmosis-article h3 a { color:var(--oi-ink); text-decoration:none; }
.osmosis-page .osmosis-product h3 a:hover, .osmosis-page .osmosis-article h3 a:hover { color:var(--oi-blue); }
.osmosis-page .osmosis-product__link { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:.75rem; margin-top:20px; }
.osmosis-page #preguntas-osmosis { display:grid; grid-template-columns:.85fr 1.2fr; gap:70px; }
.osmosis-page .osmosis-faq-intro>p:not(.osmosis-kicker) { color:#657b8a; font-size:.92rem; }
.osmosis-page .osmosis-faq-intro>a { display:inline-block; margin-top:16px; font-size:.85rem; }
.osmosis-page details { border-bottom:1px solid var(--oi-line); padding:21px 0; }
.osmosis-page details:first-child { border-top:1px solid var(--oi-line); }
.osmosis-page summary { font-weight:600; cursor:pointer; font-size:.92rem; list-style:none; position:relative; padding-right:30px; }
.osmosis-page summary::-webkit-details-marker { display:none; }
.osmosis-page summary::after { content:"+"; position:absolute; right:2px; font-size:23px; color:#2d85ac; top:-5px; font-weight:400; }
.osmosis-page details[open] summary::after { content:"−"; }
.osmosis-page details p { color:#637887; font-size:.86rem; margin:15px 0 0; }
.osmosis-page .osmosis-quote-section { background:#103850; color:#fff; }
.osmosis-page .osmosis-quote-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:65px; align-items:start; }
.osmosis-page .osmosis-quote-intro .osmosis-kicker { color:#89c8e6; }
.osmosis-page .osmosis-quote-intro h2 { color:white; font-size:clamp(2rem,3.3vw,2.8rem); }
.osmosis-page .osmosis-quote-intro>p:not(.osmosis-kicker) { color:#bdd0de; font-size:.9rem; }
.osmosis-page .osmosis-quote-intro ol { list-style:none; padding:0; margin:30px 0 0; }
.osmosis-page .osmosis-quote-intro li { display:flex; gap:17px; padding:17px 0; border-top:1px solid #34596e; }
.osmosis-page .osmosis-quote-intro li>span { color:#8fc6df; font-size:.75rem; padding-top:3px; }
.osmosis-page .osmosis-quote-intro strong { font-size:.88rem; }
.osmosis-page .osmosis-quote-intro li p { font-size:.8rem; color:#bdd0de; margin:6px 0 0; }
.osmosis-page .osmosis-quote-panel { background:#fff; color:var(--oi-ink); padding:32px; border-radius:12px; }
.osmosis-page .osmosis-quote-panel__step { color:#3e809f; font-size:.61rem; letter-spacing:.12em; margin-bottom:12px; }
.osmosis-page .osmosis-quote-panel h3 { font-size:1.5rem; margin-bottom:10px; }
.osmosis-page .osmosis-quote-panel>.small { color:#718797; margin-bottom:25px; }
.osmosis-page .osmosis-quote-panel .osmosis-grid { gap:19px; }
.osmosis-page label { display:block; font-size:.75rem; font-weight:600; margin-bottom:9px; line-height:1.5; }
.osmosis-page .form-control { background:#f8fafc; border:1px solid #d9e4eb; border-radius:5px; color:#294b62; font-size:.81rem; height:44px; min-width:0; }
.osmosis-page .form-control:focus { background:#fff; border-color:#389bc5; box-shadow:0 0 0 3px rgba(56,155,197,.12); }
.osmosis-page #osmosis-unit { max-width:78px; margin-left:7px; }
.osmosis-page #osmosis-quote>div:last-child { grid-column:1/-1; margin-top:5px; }
.osmosis-page #osmosis-quote button { width:100%; font-size:.85rem; }
.osmosis-page #osmosis-quote-status { color:#387b96; margin-bottom:0; }
.osmosis-page .osmosis-articles { grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr)); margin-top:30px; }
.osmosis-page .osmosis-article { border:1px solid var(--oi-line); border-radius:10px; overflow:hidden; background:#fff; }
.osmosis-page .osmosis-article__image { display:block; aspect-ratio:16/9; overflow:hidden; background:#eff4f7; }
.osmosis-page .osmosis-article__image img { width:100%; height:100%; object-fit:contain; display:block; }
.osmosis-page .osmosis-article>div { padding:26px; }
.osmosis-page .osmosis-article h3 { font-size:1.23rem; }
.osmosis-page .osmosis-sources { border-top:1px solid var(--oi-line); padding-top:30px; padding-bottom:35px; font-size:.75rem; color:#6b8191; }
.osmosis-page .osmosis-sources h2 { font-size:.87rem; letter-spacing:0; margin-bottom:12px; }
@media(max-width:1199px) {
.osmosis-page .osmosis-intro, .osmosis-page #preguntas-osmosis, .osmosis-page .osmosis-quote-layout { gap:35px; }
.osmosis-page .osmosis-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
.osmosis-page .osmosis-product__image { aspect-ratio:4/3; }
.osmosis-page .osmosis-product h3 { min-height:auto; }
.osmosis-page .osmosis-topics .container { gap:16px; flex-wrap:wrap; }
}
@media(max-width:767px) {
.osmosis-header-space { height:85px; }
.osmosis-page .osmosis-section { padding-top:48px; padding-bottom:48px; }
.osmosis-page .osmosis-hero { min-height:264px; height:264px; display:flex; }
.osmosis-page .osmosis-hero__media { height:100%; }
.osmosis-page .osmosis-hero__media img { object-position:70% center; }
.osmosis-page .osmosis-hero::before { background:linear-gradient(90deg,rgba(9,38,63,.95),rgba(9,38,63,.72)); }
.osmosis-page .osmosis-hero__content { padding-top:25px; padding-bottom:25px; }
.osmosis-page .osmosis-eyebrow { font-size:.58rem; letter-spacing:.1em; margin-bottom:16px; }
.osmosis-page .osmosis-hero h1 { font-size:1.75rem; margin-bottom:14px; }
.osmosis-page .osmosis-hero h1 span { font-size:.7em; max-width:300px; margin-top:9px; }
.osmosis-page .osmosis-hero__description { font-size:.88rem; }
.osmosis-page .osmosis-actions { gap:18px; margin-top:23px; }
.osmosis-page .osmosis-actions .btn { padding:12px 17px; font-size:.8rem; gap:16px; }
.osmosis-page a.osmosis-hero__secondary { font-size:.78rem; }
.osmosis-page .osmosis-hero__applications { margin-top:25px; font-size:.67rem; }
.osmosis-page .osmosis-hero__caption { top:12px; bottom:auto; right:12px; font-size:.52rem; }
.osmosis-page .osmosis-topics .container { gap:15px 22px; padding-top:18px; padding-bottom:18px; }
.osmosis-page .osmosis-topics__label { width:100%; font-size:.56rem; }
.osmosis-page .osmosis-topics a { font-size:.73rem; }
.osmosis-page .osmosis-intro, .osmosis-page .osmosis-grid, .osmosis-page .osmosis-two, .osmosis-page #preguntas-osmosis, .osmosis-page .osmosis-quote-layout { grid-template-columns:1fr; gap:24px; }
.osmosis-page .osmosis-process { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.osmosis-page .osmosis-separation { padding:25px; }
.osmosis-page .osmosis-process__label { margin-top:35px; font-size:.57rem; }
.osmosis-page .osmosis-card { padding:25px; }
.osmosis-page .osmosis-application { margin-top:0; }
.osmosis-page .osmosis-application__icon { margin-bottom:18px; }
.osmosis-page .osmosis-benefit { margin-bottom:0; padding:25px; }
.osmosis-page #seleccion-osmosis>.osmosis-grid { margin-bottom:26px; }
.osmosis-page .osmosis-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.osmosis-page .osmosis-product__image { padding:12px; aspect-ratio:1/1; }
.osmosis-page .osmosis-product__body { padding:15px; }
.osmosis-page .osmosis-product__label { font-size:.48rem; line-height:1.5; margin-bottom:8px; }
.osmosis-page .osmosis-product h3 { font-size:.85rem; }
.osmosis-page .osmosis-product__link { font-size:.66rem; gap:6px; margin-top:14px; }
.osmosis-page .osmosis-quote-intro h2 { font-size:2rem; }
.osmosis-page .osmosis-quote-panel { padding:24px 20px; }
.osmosis-page .osmosis-quote-panel .osmosis-two { grid-template-columns:1fr; gap:17px; }
.osmosis-page .btn { white-space:normal; }
.osmosis-page .osmosis-articles { grid-template-columns:1fr; }
.osmosis-page .osmosis-sources { padding-top:25px; padding-bottom:25px; }
}
@media(prefers-reduced-motion:reduce) { .osmosis-product { transition:none; } }
/* La nueva cabecera reserva su propia altura para el menú fijo. */
#pageContent #top.osmosis-top-spacer { padding-top:0!important; }

.osmosis-page .osmosis-breadcrumbs { display:flex; flex-wrap:wrap; gap:12px; list-style:none; padding:0; margin:18px 0 0; font-size:.7rem; text-transform:uppercase; color:#d4e6f0; }
.osmosis-page .osmosis-breadcrumbs li+li::before { content:"›"; margin-right:12px; }
.osmosis-page .osmosis-breadcrumbs a { color:#fff; }
.osmosis-page .osmosis-intro-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:25px; font-size:.85rem; }
