/* Integration/accessibility only: visual system belongs to Tadeo's supplied HTML. */
.source-ribbon{max-width:100%;overflow:hidden;margin-top:24px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.kv-met-a>div{min-width:0}
.source-track{display:flex;width:max-content}
.source-ribbon{cursor:grab;touch-action:pan-y;user-select:none}
.source-ribbon.is-dragging,.source-ribbon.is-dragging a{cursor:grabbing}
.source-ribbon.is-dragging .source-track{animation-play-state:paused!important}
.source-logos{display:flex;align-items:center;gap:48px;list-style:none;margin:0;padding:16px 48px 16px 0;flex-shrink:0}
.source-logos a{display:flex;align-items:center;gap:12px;color:inherit;font-size:21px;font-weight:600;white-space:nowrap;min-height:56px}
.source-logos img{object-fit:contain}
.source-monogram{font-size:15px;display:grid;place-items:center;width:40px;height:40px;border:1px solid currentColor;border-radius:8px}
.source-note{font-size:12px;opacity:.75;margin-top:12px}
.source-modal-open{overflow:hidden}
.access-modal-open{overflow:hidden}
.access-dialog form{display:grid;gap:16px;margin-top:24px}
.access-dialog label{display:grid;gap:8px;color:#47425C;font-size:14px;font-weight:500}
.access-dialog input:not([type="checkbox"]),.access-dialog textarea{box-sizing:border-box;width:100%;min-width:0;padding:12px;border:1px solid #D8D5E3;border-radius:10px;font-family:inherit;font-size:16px;line-height:1.4;color:#1C1B2E;background:#fff}
.access-dialog textarea{resize:vertical}
.access-dialog .access-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.5}
.access-consent input{margin-top:3px;accent-color:#5B2BB0}
.access-dialog .access-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.access-dialog button.source-krevo{border:0;cursor:pointer;justify-self:start}
.access-dialog button:disabled{cursor:default;opacity:.75}
.access-dialog [role="status"]{margin:0;font-size:14px}
.source-actions button.source-krevo{border:0;cursor:pointer}
.source-modal-open .source-track{animation-play-state:paused!important}
.source-dialog{box-sizing:border-box;width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #E6E4EE;border-radius:24px;padding:36px;color:#1C1B2E;background:white;font-family:'Schibsted Grotesk',Arial,sans-serif;box-shadow:0 24px 90px #1c1b2e40}
.source-dialog::backdrop{background:#1c1b2e99;backdrop-filter:blur(5px)}
.source-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:#F7F6FB;color:#1C1B2E;font-size:28px;cursor:pointer}
.source-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#5B2BB0;margin:0 40px 20px 0}
.source-dialog h2{font-size:28px;font-weight:600;line-height:1.2;margin:16px 0 24px;letter-spacing:-.6px}
.source-dialog h3{font-size:15px;margin:22px 0 8px}
.source-dialog p{font-size:15px;line-height:1.65;color:#4A4760}
.source-dialog .source-limit{font-size:12px;padding:14px;background:#F7F6FB;border-radius:10px}
.source-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin-top:18px}
.source-krevo{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:100%;min-height:48px;padding:12px 20px;background:#1C1B2E;color:white;border-radius:999px;text-decoration:none;text-align:center;font:600 15px/1.4 'Schibsted Grotesk',Arial,sans-serif}
.source-official{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;color:#50349b;text-decoration:underline;text-underline-offset:4px;font:500 14px/1.4 'Schibsted Grotesk',Arial,sans-serif}
.source-dialog :focus-visible,.source-logos a:focus-visible{outline:3px solid #635BFF;outline-offset:3px}
.source-identity img{object-fit:contain;max-width:220px;max-height:64px;width:auto;height:auto}
.source-identity img[src^="data:image/x-icon"]{width:24px;height:24px}
.source-logos img.source-hd{width:132px;height:40px;object-fit:contain;padding:6px;border-radius:6px;background:#fff;opacity:1}
.source-identity img.source-hd{width:220px;height:auto;max-height:80px;object-fit:contain}
.source-identity img.source-banxico{background:#1c1b2e;padding:10px;border-radius:6px}
.source-logos img.source-banxico{width:176px;height:60px;object-fit:contain;background:#1c1b2e;padding:8px}
.source-logos img.source-imss{width:46px;height:56px}
.source-identity img.source-imss{width:62px;height:auto;max-height:80px;background:white;padding:10px;border-radius:6px}
.source-logos img.source-eia{width:172px;height:42px;object-fit:contain;padding:6px}
.source-logos img.source-freightos{width:176px;height:40px;background:transparent;padding:6px}
.source-identity img.source-freightos{background:#1c1b2e;padding:12px;border-radius:6px}
.source-logos img.source-cenace{width:120px;height:28px;background:#fff;padding:3px 5px}
.source-identity img.source-cenace{background:#1c1b2e;padding:12px;border-radius:6px}
/* Wordmarks already name the institution; keep their text label accessible only. */
.source-logos a>span:last-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.source-logos a{position:relative;justify-content:center;width:176px;min-height:64px}
.source-monogram{font-size:30px;letter-spacing:.04em;width:auto;height:auto;border:0;border-radius:0;opacity:.8}
.source-name{font-size:21px;font-weight:500;letter-spacing:0;opacity:.8}
.source-logos a:hover img,.source-logos a:focus-visible img,.source-logos a:hover .source-monogram{opacity:1}
.source-logos{gap:36px;padding:12px 36px 12px 0}
.source-logos a{width:auto;min-width:44px;min-height:44px}
.source-logos img.source-hd{width:auto;max-width:150px;height:28px;padding:0;background:transparent;border-radius:0}
.source-logos img.source-banxico{width:144px;height:28px;padding:0}
.source-logos img.source-imss{width:25px;height:30px;padding:0;background:#fff;border-radius:2px}
.source-logos img.source-eia{width:150px;height:28px;padding:3px 5px;background:#fff;border-radius:2px}
.source-logos img.source-freightos{width:132px;height:28px;padding:0}
.source-name,.source-monogram{font-size:16px}
.source-logos img.source-bls{width:34px;height:30px;padding:0;background:#fff;border-radius:2px}
.source-logos img.source-hd:not(.source-banxico):not(.source-imss):not(.source-bls):not(.source-eia):not(.source-freightos){background:#fff;padding:3px 5px;border-radius:2px}
/* Oct 8: verified logos only; names remain accessible but never add captions. */
.source-logos a{gap:0;min-width:44px;min-height:44px;font-size:14px;font-weight:400}
.source-logos a>.source-name{display:none}
.source-logos a:not(:has(img))>.source-name{display:inline;font-size:16px;opacity:1}
.source-logos img.source-hd{max-width:172px;height:34px}
.source-logos img.source-banxico{width:164px;height:34px}
.source-logos img.source-imss{width:29px;height:34px}
.source-logos img.source-eia{width:172px;height:34px}
.source-logos img.source-bls{width:38px;height:34px}
.source-logos img.source-hd,.source-logos img.source-hd:not(.source-banxico):not(.source-imss):not(.source-bls):not(.source-eia):not(.source-freightos){background:transparent;padding:0;border-radius:0}
.source-logos img.source-hd.source-inegi{background:#fff;padding:3px 5px;border-radius:2px}
@media(max-width:600px){.source-dialog{padding:26px 22px}.source-dialog h2{font-size:24px}.source-official{font-size:14px}}
@media(prefers-reduced-motion:no-preference){.source-track.is-looping{animation:sources-slide var(--source-duration,28s) linear infinite}.source-ribbon:hover .source-track{animation-play-state:paused}@keyframes sources-slide{to{transform:translateX(-50%)}}}
@media(prefers-reduced-motion:reduce){.source-ribbon{overflow-x:auto;mask-image:none}.source-logos[aria-hidden]{display:none}}
.website-motion {position:fixed;right:16px;bottom:16px;z-index:100;padding:10px 16px;border:1px solid #E6E4EE;border-radius:999px;background:#fff;color:#1C1B2E;font:500 12px 'Schibsted Grotesk',Arial,sans-serif;cursor:pointer;min-height:44px;box-shadow:0 3px 16px #1c1b2e12}
.website-motion:focus-visible{outline:3px solid #2444AE;outline-offset:3px}
/* Demo disclosure must remain visible on phones too. */
@media(max-width:720px){.kv-app-tag{display:inline-flex;font-size:9px;white-space:nowrap}}
.animations-paused *, .animations-paused *::before, .animations-paused *::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.website-motion{display:none}}
@media print{.website-motion{display:none}}
.landing-menu-toggle{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:10px;border:1px solid #DEDBE8;border-radius:50%;background:#fff;color:#1C1B2E;cursor:pointer}
.landing-menu-toggle:focus-visible,#landingMenu a:focus-visible{outline:3px solid #635BFF;outline-offset:3px}
#landingMenu{position:fixed;inset:80px 24px auto auto;margin:0;width:280px;max-width:calc(100vw - 40px);padding:12px;border:1px solid #DEDBE8;border-radius:16px;background:#fff;color:#1C1B2E;box-shadow:0 16px 48px #1c1b2e24;font:500 16px 'Schibsted Grotesk',Arial,sans-serif}
#landingMenu a{display:block;padding:14px 16px;border-radius:8px;color:inherit;text-decoration:none}
#landingMenu a:hover{background:#F5F0FA}
@media(max-width:720px){#landingMenu{top:76px;right:20px}}
