:root{--full-height: 100vh;--header-height: 75px;--header-offset: 0px;--icon-size: 1.5em;--type-h1: 500 80px / 125% var(--font-family-mackinac);--type-h2: 400 60px / 130% var(--font-family-mackinac);--type-h3: 400 40px / 130% var(--font-family-mackinac);--type-h4: 400 24px / 130% var(--font-family-mackinac);--type-b1: 300 20px / 160% var(--font-family-graphik);--type-b2: 300 16px / 160% var(--font-family-graphik);--type-label: 400 20px / 160% var(--font-family-mackinac)}@media(max-width: 512px){:root{--type-h1: 500 30px / 126% var(--font-family-mackinac);--type-h2: 400 24px / 130% var(--font-family-mackinac);--type-h3: 400 24px / 130% var(--font-family-mackinac);--type-h4: 400 16px / 130% var(--font-family-mackinac);--type-b1: 300 14px / 160% var(--font-family-graphik);--type-b2: 300 14px / 160% var(--font-family-graphik);--type-label: 400 20px / 160% var(--font-family-mackinac)}}.block__hero{position:relative;overflow:hidden;height:min(130vw,100vh - var(--header-height) - var(--header-offset) - var(--spacing-md));max-height:1280px}.block__hero .hero__media{width:100%;height:100%}.block__hero .hero__media img,.block__hero .hero__media video{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.block__hero .hero__background.illustration{--illustration-offset: 256px;display:flex;justify-content:end;flex-direction:column;margin-top:calc(var(--section-spacing-block)*2 + var(--illustration-offset))}.block__hero .hero__background.illustration .hero__media{max-height:var(--responsive-desktop-small)}.block__hero .hero__background.illustration .hero__media>*{-o-object-position:top;object-position:top}@media(max-width: 512px){.block__hero .hero__background.illustration{--illustration-offset: 160px}}.block__hero .hero__background.vignette{--vignette-strength: 75%;inset:-1px;filter:brightness(var(--vignette-strength)) blur(0.25px)}.block__hero .hero__background.vignette::after{content:"";position:absolute;inset:0;box-shadow:0 0 200px rgba(0, 0, 0, calc(var(--vignette-strength) / 2)) inset}.block__hero .more-arrow{position:absolute;bottom:var(--section-spacing-block);left:50%;transform:translateY(50%);opacity:0;transition-timing-function:ease;transition-duration:500ms;transition-property:opacity}.block__hero .more-arrow.show{opacity:1}.block__hero:has(.hero__container .hero__logo){--section-spacing-block: var(--section-spacing-inline) !important}.block__hero .hero__container{display:flex;flex-direction:column;gap:calc(var(--section-spacing-inline)/2);justify-content:center;height:100%}.block__hero .hero__container:has(.hero__logo){gap:var(--spacing-sm)}@media(max-width: 768px){.block__hero .hero__container:has(.hero__logo){gap:var(--spacing-xs-sm)}}.block__hero .hero__container:has(.hero__logo) .more-arrow{display:none}.block__hero .hero__container:has(.hero__title.position-top){align-items:center;justify-content:start}.block__hero .hero__container .hero__media{border-radius:var(--border-radius-primary)}.block__hero .hero__container .hero__title{width:100%;max-width:18ch;font:var(--type-h1);font-size:clamp(30px,-20px + 9.765625vw,80px)}.block__hero .hero__container .hero__title .letter{opacity:0;transition:opacity 1000ms ease}.block__hero .hero__container .hero__title .letter.load{opacity:1}.block__hero .hero__container .hero__title.position-top{max-width:22ch;text-align:center}.block__hero .hero__container .hero__title.position-top.small{transform-origin:center}@media(max-width: 768px){.block__hero .hero__container .hero__title.position-top{max-width:18ch}}@media(width >= 768px){.block__hero .hero__container .hero__title.small{transform-origin:left;transform:scale(75%);max-width:22ch}}.block__hero .hero__container.color-light{--surface-bg: var(--color-black);--surface-fg: var(--color-surface-accent);color:var(--surface-fg)}.block__hero .hero__container.color-dark{--surface-bg: var(--color-surface-accent);--surface-fg: var(--color-black);color:var(--surface-fg)}.block__hero .hero__container:has(.hero__logo) .hero__title{font:var(--type-h3)}.block__hero .hero__container .hero__logo{width:14em}.block__hero .hero__container .hero__divider{width:100%;opacity:10%}@media(max-width: 512px){.block__hero .hero__container .hero__logo{width:10em}}@media(max-width: 768px){.block__hero .hero__container{justify-content:start}.block__hero .hero__container .more-arrow{display:none}}