.site-footer{border-top:1px solid var(--border);background:var(--bg);color:var(--text);margin-top:auto;padding:36px 0 41px}.site-footer__inner{grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);align-items:start;gap:36px 45px;display:grid}@media (max-width:900px){.site-footer__inner{grid-template-columns:1fr 1fr;grid-template-areas:"brand aside""cols cols"}.site-footer__brand{grid-area:brand}.site-footer__aside{grid-area:aside;justify-self:end}.site-footer__cols{grid-area:cols}}@media (max-width:560px){.site-footer__inner{grid-template-columns:1fr;grid-template-areas:"brand""cols""aside"}.site-footer__aside{justify-self:stretch;align-items:center}}.site-footer__brand{padding-top:3px}.site-footer__logo{font-family:var(--heading);letter-spacing:1px;align-items:baseline;font-size:49px;font-weight:700;text-decoration:none;transition:opacity .2s;display:inline-flex}.site-footer__logo:hover{opacity:.85}.site-footer__logo:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.site-footer__logo-accent{color:var(--accent);transition:color .2s}.site-footer__logo:hover .site-footer__logo-accent{color:var(--accent-hover)}.site-footer__logo-rest,.site-footer__logo-dot{color:var(--text)}.site-footer__cols{grid-template-columns:repeat(3,minmax(0,1fr));justify-self:center;gap:23px 36px;width:100%;max-width:756px;display:grid}@media (max-width:560px){.site-footer__cols{grid-template-columns:1fr 1fr;justify-self:stretch;max-width:none}.site-footer__col:last-child{grid-column:1/-1}}.site-footer__col{min-width:0}.site-footer__list{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.site-footer__link,.site-footer__link--active{font-size:16px;text-decoration:none;transition:color .2s}.site-footer__link{color:var(--text)}.site-footer__link:hover{color:var(--accent-text)}.site-footer__link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-footer__link--active{color:var(--accent-text);font-weight:600}.site-footer__link--active:hover{color:var(--accent-text-hover)}.site-footer__link--active:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-footer__aside{flex-direction:column;align-items:flex-end;gap:18px;min-width:0;display:flex}@media (max-width:560px){.site-footer__aside{text-align:center;align-items:center}}.site-footer__copyright{color:var(--text-secondary);max-width:288px;margin:0;font-size:15px;line-height:1.4}@media (max-width:560px){.site-footer__copyright{max-width:none}}.site-footer__link--button{font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-size:16px}

.layout:has(.layout-intro){--intro-logo-from:calc(50vh - (12px + .525 * clamp(27px, 7vw, 50px)))}@media (min-width:768px){.layout:has(.layout-intro){--intro-logo-from:calc(50vh - (54px + .525 * clamp(41px, 5vw + 18px, 91px)))}}.layout-intro{z-index:50;background:var(--bg);pointer-events:none;opacity:0;visibility:hidden;animation:.65s cubic-bezier(.33,1,.68,1) .35s both intro-overlay;position:fixed;inset:0}@keyframes intro-overlay{0%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}.layout:has(.layout-intro) .site-header{z-index:61}.layout:has(.layout-intro) .site-header__logo-heading{animation:.65s cubic-bezier(.33,1,.68,1) .35s both intro-logo}@keyframes intro-logo{0%{transform:translate3d(0, var(--intro-logo-from), 0)}to{transform:translate(0,0)}}:is(.layout:has(.layout-intro) .site-header__top-bar-left,.layout:has(.layout-intro) .site-header__icons,.layout:has(.layout-intro) .site-header__burger,.layout:has(.layout-intro) .site-header__nav-rail){animation:.5s .45s both intro-fade}@keyframes intro-fade{0%{opacity:0}to{opacity:1}}.layout:has(.layout-intro) .home-hero{animation:.65s cubic-bezier(.33,1,.68,1) .35s both intro-hero}@keyframes intro-hero{0%{transform:translateY(-42vh)}to{transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){.layout-intro{display:none}:is(.layout:has(.layout-intro) .site-header__logo-heading,.layout:has(.layout-intro) .site-header__top-bar-left,.layout:has(.layout-intro) .site-header__icons,.layout:has(.layout-intro) .site-header__burger,.layout:has(.layout-intro) .site-header__nav-rail,.layout:has(.layout-intro) .home-hero){animation:none}}
