/* Alecon: movement supports hierarchy; content stays readable without JavaScript. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1);--motion-reveal:650ms;--motion-ui:240ms}
.affiliation-logo img{filter:grayscale(1);opacity:.75;transition:filter 240ms ease,opacity 240ms ease}
.affiliation-card:hover .affiliation-logo img,.affiliation-card:focus-within .affiliation-logo img{filter:grayscale(0);opacity:1}
@media(hover:none){.affiliation-logo img{filter:grayscale(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.affiliation-logo img{transition:none}}
.page-hero h1{overflow-wrap:anywhere}
#gallery-count{white-space:nowrap;flex-shrink:0}
.solution-reference{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:center;padding:28px;margin-top:40px;background:#fff;border-left:4px solid #55aaa4}.solution-reference img{width:100%;height:160px;object-fit:contain}.solution-reference h3{margin:0 0 10px}.solution-reference p{color:#465766}.solution-reference a{text-decoration:underline;color:#276e6a}@media(max-width:650px){.solution-reference{grid-template-columns:1fr}.solution-reference img{max-width:240px}}
.alecon-reveal{transition:opacity var(--motion-reveal) var(--motion-ease),transform var(--motion-reveal) var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}
.alecon-reveal.is-waiting{opacity:0;transform:translate3d(0,16px,0)}
.primary,.text-link,.source,.filter,.nav-links a,.carousel-arrow{transition:color var(--motion-ui) ease,background-color var(--motion-ui) ease,border-color var(--motion-ui) ease,transform var(--motion-ui) var(--motion-ease)}
.primary:hover{transform:translateY(-2px)}
.primary:active{transform:translateY(0)}
.text-link:hover,.source:hover{color:#28736e}
.card{overflow:hidden;transition:box-shadow 350ms var(--motion-ease),transform 350ms var(--motion-ease)}
.card.alecon-reveal{transition:opacity var(--motion-reveal) var(--motion-ease),transform var(--motion-reveal) var(--motion-ease),box-shadow 350ms var(--motion-ease);transition-delay:var(--reveal-delay,0ms)}
.card>img{transition:transform 700ms var(--motion-ease)}
.brand img[src*="logos-20260928/alecon.png"]{filter:brightness(0) invert(1);object-fit:contain;width:auto;height:64px}
.footer .brand img[src*="logos-20260928/alecon.png"]{height:100px}
.card-body{position:relative;background:inherit}
@media(hover:hover) and (pointer:fine){.card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #18203012}.card:hover>img{transform:scale(1.025)}}
.nav-links .dropdown-menu{display:grid;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity 220ms var(--motion-ease),transform 220ms var(--motion-ease),visibility 0s 220ms}
.nav-links .dropdown[data-open=true] .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0ms}
.nav-links .dropdown-menu a{transition:background-color 200ms ease,color 200ms ease}
.nav-links .dropdown>button{transition:color 200ms ease}
.nav-links .dropdown[data-open=true]>button{color:#55aaa4}
html:not(.alecon-motion-ready) .dropdown:hover .dropdown-menu,html:not(.alecon-motion-ready) .dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}
@media(max-width:1050px){.nav-links .dropdown-menu{top:var(--menu-top,120px);max-height:calc(100dvh - var(--menu-top,120px) - 20px);overflow-y:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.alecon-reveal,.alecon-reveal.is-waiting{opacity:1!important;transform:none!important;transition:none!important}.primary,.text-link,.source,.filter,.nav-links a,.carousel-arrow,.card,.card>img,.nav-links .dropdown-menu,.nav-links .dropdown>button{transition:none!important}.primary:hover,.card:hover,.card:hover>img{transform:none!important}}
