/* Public service switcher matching the Sezam family website. */
.header{position:relative;z-index:30}
.ecosystem{position:relative;flex-shrink:0}
.ecosystem-toggle{padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left;min-height:44px}
.ecosystem-toggle .ecosystem-chevron{width:15px;height:15px;fill:none;stroke:#8b9bad;stroke-width:1.7;transition:transform .25s}
.ecosystem.is-open .ecosystem-chevron{transform:rotate(180deg)}
.ecosystem-toggle:focus-visible,.ecosystem-orbit a:focus-visible,.ecosystem-close:focus-visible{outline:3px solid #5a50f4;outline-offset:4px}
.ecosystem-orbit{--orbit-size:min(460px,calc(100vw - 40px));--radius:calc(var(--orbit-size) * .365);position:absolute;top:calc(100% + 18px);left:-20px;width:var(--orbit-size);height:var(--orbit-size);isolation:isolate;color:#0b2849;visibility:hidden;opacity:0;transform:translateY(-8px) scale(.97);transform-origin:24px 0;transition:opacity .22s,transform .32s,visibility .32s;pointer-events:none}
.ecosystem-orbit[hidden]{display:none}
.ecosystem-orbit::before{content:"";position:absolute;inset:0;border:1px solid #dce7ed;border-radius:50%;z-index:-1;background:radial-gradient(circle at 50% 42%,#fff 0%,#f5f8fa 72%,#f0f5f7 100%);box-shadow:0 16px 40px #09274724,inset 0 0 0 6px #ffffffb3}
.ecosystem-orbit::after{content:"";position:absolute;inset:8px;border:1px solid #e3eaee;border-radius:50%;pointer-events:none;z-index:-1}
.ecosystem.is-open .ecosystem-orbit{visibility:visible;opacity:1;transform:none;pointer-events:auto}
.ecosystem-service{position:absolute;left:50%;top:50%;width:68px;height:68px;margin:-34px 0 0 -34px;padding:5px 2px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1px;text-align:center;text-decoration:none;border:1px solid #dce7ed;border-radius:50%;background:#fff;box-shadow:0 8px 22px #09274714;opacity:0;transform:translate(0,0) scale(.3);transition:transform .46s cubic-bezier(.2,.75,.25,1),opacity .22s,border-color .2s,box-shadow .2s;transition-delay:calc(var(--i) * 13ms)}
.ecosystem.is-open .ecosystem-service{opacity:1;transform:translate(calc(var(--x) * var(--radius)),calc(var(--y) * var(--radius))) scale(1)}
.ecosystem-disc{display:flex;align-items:center;justify-content:center;width:35px;height:39px;transition:transform .2s}
.ecosystem-disc>img{display:block;width:32px;height:37px;object-fit:contain}
.ecosystem-name{font-size:8px;font-weight:800;line-height:1.15;text-transform:uppercase;white-space:nowrap}
.ecosystem-service small{font-size:7px;color:#8c723e;line-height:1}
.ecosystem-service.is-current{border:2px solid #75a89f;box-shadow:0 0 0 4px #1b977d0a}
.ecosystem-service.is-current::after{content:"✓";position:absolute;right:1px;top:0;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#198d7f;color:#fff;font-size:12px;line-height:1}
.ecosystem-service[href]:hover{border-color:#b99a5e;box-shadow:0 12px 24px #09274725}
.ecosystem-service[href]:hover .ecosystem-disc{transform:translateY(-2px)}
.ecosystem-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:146px;height:146px;border:1px solid #c7ab76;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-decoration:none;padding:10px;white-space:nowrap;background:#092747;color:#fff;box-shadow:0 0 0 5px #bca06b12,0 16px 30px #09274724;transition:box-shadow .2s,background .2s}
.ecosystem-hub>b{font-size:21px;letter-spacing:-.6px;line-height:1.2;color:#fff;font-weight:900}
.ecosystem-hub>span{font-size:12px;font-weight:600;color:#e3ce9a}
.ecosystem-hub:hover{background:#113759;box-shadow:0 0 0 7px #bca06b24,0 18px 34px #09274730}
.ecosystem-close{position:absolute;right:14px;top:14px;width:36px;height:36px;display:grid;place-items:center;padding:8px;border:1px solid #e0e8ed;border-radius:50%;background:#fff;color:#64758a;cursor:pointer;z-index:2;box-shadow:0 3px 12px #0927470d}
.ecosystem-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.ecosystem-close:hover{color:#0b2849;background:#f1f5f8}
@media(max-width:760px){.ecosystem-orbit{left:-4px;top:calc(100% + 19px)}.ecosystem-toggle .ecosystem-chevron{width:12px;height:12px;margin-left:-4px}.header{gap:12px}.header-login{min-width:0;flex-shrink:1}}
@media(max-width:480px){.ecosystem-service{width:58px;height:58px;margin:-29px 0 0 -29px;gap:1px;padding:4px 1px}.ecosystem-disc{width:28px;height:32px}.ecosystem-disc>img{width:27px;height:31px}.ecosystem-name{font-size:7px}.ecosystem-service small{font-size:6px}.ecosystem-hub{width:120px;height:120px;gap:6px}.ecosystem-hub>b{font-size:18px}.ecosystem-hub>span{font-size:10px}.ecosystem-close{right:6px;top:6px}}
@media(max-width:350px){.ecosystem-toggle .ecosystem-chevron{display:none}.ecosystem-service{width:49px;height:49px;margin:-24.5px 0 0 -24.5px}.ecosystem-disc{height:25px}.ecosystem-disc>img{height:24px;width:23px}.ecosystem-name{font-size:6px}.ecosystem-service small{font-size:5.5px}.ecosystem-hub{width:104px;height:104px}.ecosystem-hub>b{font-size:16px}.ecosystem-hub>span{font-size:9px}}
@media(max-height:540px) and (min-width:481px){.ecosystem-orbit{--orbit-size:360px;top:calc(100% + 8px)}.ecosystem-service{width:56px;height:56px;margin:-28px 0 0 -28px;padding:3px}.ecosystem-disc{height:30px}.ecosystem-disc>img{height:29px;width:26px}.ecosystem-name{font-size:7px}.ecosystem-service small{font-size:6px}.ecosystem-hub{width:116px;height:116px}.ecosystem-hub>b{font-size:17px}.ecosystem-hub>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.ecosystem-orbit,.ecosystem-service,.ecosystem-disc,.ecosystem-hub,.ecosystem-chevron{transition:none;transition-delay:0s}}
