/* Interactive brand sphere in the website header. */
.sidebar-brand .brand-caption strong{display:block;width:132px;height:35px;font-size:0;background:url('assets/brands/tls.svg') left center/contain no-repeat}
.sphere-brand[data-brand="T.L.S."] img{max-height:28px;}
header { overflow: visible; }
.brand-orbit { position: relative; flex: 0 0 110px; height: 80px; z-index: 45; }
.brand-orbit-panel { position: absolute; width: 300px; height: 332px; left: -95px; top: -112px; transform: scale(.27); transform-origin: 50% 50%; border-radius: 32px; background: transparent; transition: transform .5s cubic-bezier(.2,.8,.2,1), background .35s, box-shadow .35s, top .5s; }
.brand-orbit:hover .brand-orbit-panel,.brand-orbit:focus-within .brand-orbit-panel { transform: scale(1); top: 0; background: #fff; box-shadow: 0 24px 70px #183b5330,0 0 0 1px #dce7eb; }
.brand-sphere { position: relative; width: 300px; height: 280px; touch-action: pan-y; cursor: grab; border-radius: 50%; outline: none; isolation: isolate; }
.brand-sphere:focus-visible { outline: 2px solid #48799a; outline-offset: -7px; }
.brand-sphere::before { content: ''; position: absolute; inset: 29px; border-radius: 50%; background: radial-gradient(circle at 33% 26%,#fff0 30%,#d6e6ed45 85%); box-shadow: inset -10px -10px 28px #244c6310; }
.sphere-brand { position: absolute; left: 50%; top: 50%; width: 79px; height: 30px; display: flex; align-items: center; justify-content: center; border-radius: 7px; will-change: transform; }
.sphere-brand img { display: block; width: 100%; max-height: 26px; object-fit: contain; pointer-events: none; user-select: none; }
.sphere-brand img { filter: brightness(0) saturate(100%) invert(21%) sepia(22%) saturate(985%) hue-rotate(157deg) brightness(91%) contrast(91%); }
.sphere-brand[data-brand="Uniview"] img { height: 34px; max-height: 34px; }
.sphere-brand[data-brand="Unibrave"] img { max-height: 22px; }
.sphere-brand.is-featured { background: linear-gradient(135deg,#fff,#e2eff0); outline: 1px solid #9cbcb980; box-shadow: 0 3px 12px #23485120,0 0 15px #b4dbc047; }
.sphere-brand.is-featured img { width: 88%; }
.sphere-wordmark { color:#284858; font:italic 700 12px/1 Arial,sans-serif; letter-spacing:-.35px; white-space:nowrap; }
.sphere-brand.is-featured { animation:brand-magic-glow 4.8s ease-in-out infinite; animation-delay:var(--magic-delay,0s); }
.sphere-brand.is-featured::before { content:''; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(110deg,transparent 25%,#ffffffd9 48%,transparent 70%); background-size:250% 100%; animation:brand-magic-sheen 6s ease-in-out infinite; animation-delay:var(--magic-delay,0s); }
.sphere-brand.is-featured::after { content:'✦'; position:absolute; right:-3px; top:-6px; font:12px/1 Arial,sans-serif; color:#d2eddb; text-shadow:0 0 5px #5c9ca7,0 0 10px #fff; pointer-events:none; animation:brand-magic-star 3.8s ease-in-out infinite; animation-delay:var(--magic-delay,0s); }
@keyframes brand-magic-glow { 0%,100%{box-shadow:0 3px 10px #23485115,0 0 5px #a4d8cb20} 50%{box-shadow:0 3px 12px #23485125,0 0 17px #99d8c566,inset 0 0 6px #ffffffad} }
@keyframes brand-magic-sheen { 0%,25%{background-position:160% 0;opacity:0} 40%{opacity:.7} 65%,100%{background-position:-80% 0;opacity:0} }
@keyframes brand-magic-star { 0%,100%{opacity:.1;transform:scale(.5) rotate(-15deg)} 50%{opacity:.95;transform:scale(1.1) rotate(25deg)} }
@media(prefers-reduced-motion:reduce) { .sphere-brand.is-featured,.sphere-brand.is-featured::before,.sphere-brand.is-featured::after{animation:none}.sphere-brand.is-featured::before{display:none} }
.sphere-brand.is-highlighted { background: #ffffffec; box-shadow: 0 4px 18px #183b5324; outline: 1px solid #bfd2db; }
.brand-orbit-caption { text-align: center; opacity: 0; transition: opacity .25s; font-size: 12px; color: #193b51; pointer-events: none; }
.brand-orbit-caption strong,.brand-orbit-caption span { display: block; }
.brand-orbit-caption span { margin-top: 5px; font-size: 10px; color: #728592; }
.brand-orbit:hover .brand-orbit-caption,.brand-orbit:focus-within .brand-orbit-caption { opacity: 1; }
@media(max-width:1000px) { .brand-orbit { margin-right:auto; } }
@media(max-width:650px) { .brand-orbit { flex-basis:80px;height:70px; } .brand-orbit-panel { left:-110px; } .brand-orbit:hover .brand-orbit-panel,.brand-orbit:focus-within .brand-orbit-panel { left:-10px;top:0;transform:scale(.9);transform-origin:top left; } }
@media(prefers-reduced-motion:reduce) { .brand-orbit-panel { transition:none; } }
