@font-face{font-family:"Source Sans 3";font-weight:400;font-style:normal;font-display:swap;src:url("fonts/SourceSans3-400.ttf") format("truetype")}
@font-face{font-family:"Source Sans 3";font-weight:600;font-style:normal;font-display:swap;src:url("fonts/SourceSans3-600.ttf") format("truetype")}
.intro a{color:inherit;text-decoration-color:#b8b8c0;text-decoration-thickness:1px;text-underline-offset:4px}
.intro a:hover{text-decoration-color:currentColor}
.brand{gap:8px}
.brand-robots{position:relative;display:inline-block;flex:none;width:32px;height:38px}
.brand-robot{position:absolute;inset:0;display:block;width:32px;height:38px;object-fit:contain;opacity:0;transition:opacity .7s ease}
.brand-robot.is-visible{opacity:1}
.site-footer{max-width:none;margin:0;border-top:1px solid #e3e3df;background:#f6f6f3;padding:44px 24px 34px;font-family:var(--ui-font,"Source Sans 3",sans-serif);color:#5c5c63;text-align:center}
.site-footer .footer-inner{max-width:850px;margin:0 auto;display:grid;justify-items:center;gap:25px}
.site-footer .footer-personas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;width:min(100%,560px)}
.site-footer .footer-persona{display:flex;flex-direction:column;align-items:center;gap:8px;color:#343438;text-decoration:none;min-width:0;font-size:15px;font-weight:600;line-height:1.3}
.site-footer .footer-persona img{display:block;width:128px;max-width:100%;height:auto;aspect-ratio:128/152;object-fit:contain;transition:transform .18s ease}
.site-footer .footer-persona:hover img{transform:translateY(-4px) rotate(-2deg)}
.site-footer .footer-persona:hover span{text-decoration:underline;text-underline-offset:3px}
.site-footer .footer-persona span{max-width:170px;overflow-wrap:break-word}
.site-footer .footer-credit{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;font-size:16px;line-height:1.4;color:#5c5c63;margin:0}
.site-footer .footer-author{font-weight:600;color:#1b1b1f;text-decoration-color:#c9c8c2;text-decoration-thickness:1px;text-underline-offset:4px}
.site-footer .footer-author:hover{text-decoration-color:currentColor}
.site-footer .footer-badge{display:block;flex:none;width:28px;height:28px;border-radius:50%;box-shadow:0 0 0 1px #d7d5ce,0 2px 6px #0002;transition:transform .2s ease;margin-left:2px}
.site-footer .footer-badge img{display:block;width:28px;height:28px;border-radius:50%}
.site-footer .footer-badge:hover{transform:rotate(-8deg) scale(1.08)}
.site-footer .footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:9px 23px}
.site-footer .footer-nav a{font-size:15px;line-height:1.4;color:#5c5c63;text-decoration:none}
.site-footer .footer-nav a:hover{color:#1b1b1f;text-decoration:underline;text-underline-offset:3px}
.site-footer .footer-colophon{max-width:76ch;font-size:13px;line-height:1.65;font-weight:400;color:#79797e;margin:0;text-wrap:pretty}
@media(max-width:650px){.site-footer{padding:32px 18px 28px}.site-footer .footer-inner{gap:23px}.site-footer .footer-personas{gap:10px}.site-footer .footer-persona{font-size:13px}.site-footer .footer-persona img{width:102px}.site-footer .footer-nav{gap:10px 18px}.site-footer .footer-nav a{font-size:14px}.site-footer .footer-colophon{font-size:12px}}
@media(max-width:650px){header .brand{gap:6px;font-size:12px}.brand-robots,.brand-robot{width:27px;height:32px}}
@media(max-width:400px){header{gap:8px}header .brand{font-size:11px;gap:5px}header nav{gap:10px}header nav a{font-size:11px}}
@media(max-width:340px){header{height:auto;min-height:60px;flex-wrap:wrap;padding:10px 18px}header nav{flex-basis:100%;justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.brand-robot,.site-footer .footer-persona img,.site-footer .footer-badge{transition:none}.site-footer .footer-persona:hover img,.site-footer .footer-badge:hover{transform:none}}
