/* Shared structural styles scoped to public navigation and footer. */
/* Reserve the launch bar before its deferred script runs. */
:root{--launch-height:62px}
html:has(script[src^="/launch-notice.js"]) body{padding-top:var(--launch-height)}
html:has(script[src^="/launch-notice.js"]) header{top:var(--launch-height)!important}
@media(max-width:600px){:root{--launch-height:56.5px}}
/* The message and actions are readable on first paint; keep the decorative beam. */
.hero h1 .l,.hero .hero-bottom{opacity:1!important;animation:none!important;filter:none!important;transform:none!important}
.hero-lead,.hero-cta,.hero .strip{opacity:1!important;transform:none!important;transition:none!important}
header.opp-public-header{display:block;position:sticky;top:0;z-index:50;padding:0;background:#081a2a;border-bottom:1px solid #315061;color:#edf6fa;font-family:Poppins,Arial,sans-serif}
header.opp-public-header .nav{width:100%;max-width:1600px;min-height:76px;height:auto;margin:0 auto;padding:12px clamp(18px,3.5vw,58px);display:flex;align-items:center;gap:20px}
header.opp-public-header .brand{margin-right:auto;flex:0 0 auto}header.opp-public-header .brand img{width:168px;height:44px;max-width:36vw;object-fit:contain;filter:brightness(0) invert(1)}
header.opp-public-header .menu{display:flex;align-items:center;gap:clamp(9px,1.15vw,19px)}header.opp-public-header a{text-decoration:none}header.opp-public-header .menu a{font-size:11px;white-space:nowrap;color:#edf6fa}header.opp-public-header a[aria-current=page]{color:#62c9e7;font-weight:700}
header.opp-public-header .login{background:#1f6588;color:#fff;font-size:11px;white-space:nowrap;padding:11px 15px;border-radius:5px}
header.opp-public-header .burger{display:none;border:1px solid #476777;border-radius:6px;background:transparent;color:#fff;padding:7px 11px;font-size:22px;cursor:pointer}
header.opp-public-header .mobile[hidden]{display:none!important}header.opp-public-header .mobile.open{display:grid;gap:14px;padding:22px;background:#0d2638;color:#fff}header.opp-public-header .mobile a{font-size:13px;color:#edf6fa}
.opp-public-footer{background:#0a1622;color:#d8e4ea;padding:46px clamp(22px,5vw,78px) 26px;font-family:Poppins,Arial,sans-serif}.opp-public-footer .opp-footer-grid{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.opp-public-footer h4{font-size:11px;color:#8aafc2;letter-spacing:1px;margin:0 0 14px}.opp-public-footer a{display:block;font-size:12px;text-decoration:none;margin:8px 0;color:#c8d7df}.opp-public-footer img{width:180px;height:52px;object-fit:contain;filter:brightness(0) invert(1)}.opp-public-footer p{font-size:12px;color:#c8d7df}.opp-public-footer .opp-footer-bottom{max-width:1440px;margin:26px auto 0;padding-top:18px;border-top:1px solid #284354;font-size:10px;color:#93adbb}.opp-public-footer .opp-footer-legal{display:flex;gap:18px;flex-wrap:wrap}.opp-public-footer .opp-footer-legal a{font-size:10px}
.opp-form-status{font-size:12px;margin-top:16px;padding:13px;border:1px solid #3c728a;border-radius:8px;line-height:1.6}.opp-demo-entry{display:block;text-align:center;padding:13px 16px;border:1px solid #4f9cbb;border-radius:7px;margin-top:16px;color:#8bddf0!important;font-weight:600;font-size:12px;background:#16384b}
@media(max-width:1180px){header.opp-public-header .menu{display:none!important}header.opp-public-header .burger{display:block!important}header.opp-public-header .nav{gap:12px}}@media(max-width:650px){.opp-public-footer .opp-footer-grid{grid-template-columns:1fr}.opp-public-footer{padding:35px 22px}.opp-public-footer .opp-footer-legal{display:block}header.opp-public-header .nav{padding:12px 16px}header.opp-public-header .login{padding:10px;font-size:10px}}
header.opp-public-header,header.opp-public-header *,footer.opp-public-footer,footer.opp-public-footer *{box-sizing:border-box}

header.opp-public-header .mobile.open{max-height:calc(100dvh - var(--launch-height,60px) - 90px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}header.opp-public-header .mobile a{flex-shrink:0}

/* Keep the original shield coloured, with only the two I letters accented. */
html body header .opp-brand-lockup,footer .opp-brand-lockup{display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;color:#f7fbfd}
html body header .opp-brand-lockup img.opp-brand-shield,footer.opp-public-footer .opp-brand-lockup img.opp-brand-shield{width:36px!important;height:40px!important;max-width:none!important;object-fit:contain!important;filter:none!important;margin:0!important}
.opp-brand-name{font-family:Poppins,Arial,sans-serif;font-size:18px;font-weight:700;letter-spacing:-.07em;line-height:1}
.opp-brand-ii{color:#27c5ed}
html body header.opp-over-light .opp-brand-name{color:#101820}
html body header.opp-over-light .opp-brand-ii{color:#007eae}
.opp-public-footer .opp-footer-brand{width:max-content;max-width:100%;text-align:center;justify-self:start}
.opp-public-footer .opp-footer-brand>a{display:flex;justify-content:center;margin:0}
.opp-public-footer .opp-footer-brand p{margin:12px 0 0;text-align:center}
body.acuerdos #producto .access-explanation,body.acuerdos #producto .access-explanation h3{color:#0c1d28}
body.acuerdos #producto .trust-copy p{color:#365466}
body.acuerdos #producto .access-explanation .eyebrow{color:#176383}
