*,*:before,*:after{box-sizing:border-box;overflow-wrap:inherit;-webkit-text-size-adjust:inherit;-moz-text-size-adjust:inherit;text-size-adjust:inherit;-webkit-hyphens:inherit;hyphens:inherit;hyphenate-limit-chars:inherit}:root{--hue: 210;--color-white: oklch(99% .01 var(--hue));--color-whiter: oklch(100% .018 var(--hue));--color-text: oklch(30% .2 var(--hue));--curve-aspect-ratio: calc(1668 / 305 * var(--curve-scale-y));--header-max-width: 720px;--easing-ease-out: cubic-bezier(.165, .84, .44, 1);--easing-spring: linear( 0, .037, .153 3.6%, 1.001 13.2%, 1.142 16%, 1.209 19%, 1.215 20.8%, 1.199 22.9%, 1.008 33%, .973, .955 39.2%, .957 43.3%, .998 53.3%, 1.009 59.1%, .998 78.9%, 1 );--animation-delay-initial: 0s;--animation-delay-header: calc(var(--animation-delay-initial) + .2s);--animation-delay-contact-link: calc(var(--animation-delay-initial) + .4s);--animation-delay-decorations: calc(var(--animation-delay-initial) + .5s)}html,body{width:100%}html{font-size:clamp(16px,min(1.5svw,2.5svh),22px);line-height:1.5;color-scheme:light only;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;overflow-wrap:anywhere}@supports (hyphenate-limit-chars: 10 6 4){html{-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:10 6 4}}body{font-family:Barlow,sans-serif;font-weight:400;min-height:100svh;margin:0;display:flex;align-items:safe center;background:linear-gradient(to bottom right in oklab,var(--color-white),40%,var(--color-whiter));color:var(--color-text)}.app{width:1600px;max-width:100%;display:flex;gap:min(4rem,3svh);padding:min(5rem,16svmin) min(2.5rem,9svmin);margin:0 auto}@media (width < 1200px){html{--curve-scale-y: .85}.app{flex-flow:column nowrap;justify-content:flex-start;align-items:stretch;max-width:var(--header-max-width)}}@media (width >= 1200px){html{--curve-scale-y: .85}.app{flex-flow:row nowrap;justify-content:space-evenly;align-items:center}header{flex:0 1 var(--header-max-width)}.contact-link{flex:0 0 auto}}@media (width >= 1800px){html{--curve-scale-y: .75}}@media (width < 1200px) and (orientation: landscape){.contact-link{align-self:flex-start}}@media (width < 1200px) and (orientation: portrait){.lead{max-width:none!important;text-wrap:auto!important}}@media (width < 700px) and (orientation: portrait){html{--curve-scale-y: 1}}@keyframes text-scale-in{0%{transform:scale(.95);opacity:0}to{transform:none;opacity:1}}header{animation:text-scale-in 1s var(--easing-spring) var(--animation-delay-header) backwards}h1{font-family:Bitter,serif;font-size:2.5rem;line-height:1.2;font-weight:400;text-wrap:balance;margin:0}h2{font-size:1.5rem;line-height:1.2;font-weight:400;text-wrap:balance;margin:.5em 0}strong{font-weight:700;text-shadow:0 0 90px oklch(65% .15 var(--hue) / 30%)}p{margin:1rem 0}.lead{font-size:1.18181818rem;line-height:1.6;text-wrap:balance;max-width:48ch;contain:paint}.contact-link{max-width:var(--header-max-width);border-radius:.6em;border:none;padding:.85em 1.5em;background:linear-gradient(to bottom in oklch,oklch(92% .05 var(--hue)),oklch(90% .05 var(--hue)));font-size:1.2rem;line-height:1.2;font-weight:700;font-family:inherit;text-align:center;cursor:pointer;text-decoration:none;color:color-mix(in oklab,var(--color-text),oklch(0% 0 var(--hue)) 22%);box-shadow:inset 0 -18px 54px -32px oklch(55% .5 var(--hue) / 60%);text-shadow:0 0 2px var(--color-white);transform:none;transition:box-shadow .2s ease-in-out,transform .75s var(--easing-spring),filter .2s ease-out;animation:text-scale-in 1s var(--easing-spring) var(--animation-delay-contact-link) backwards;contain:paint}.contact-link:hover,.contact-link:focus-visible{box-shadow:inset 0 -18px 54px -32px oklch(50% .8 var(--hue) / 100%);transform:scale(1.03)}.contact-link:active{box-shadow:inset 0 -18px 54px -32px oklch(50% .8 var(--hue) / 100%);transform:scale(1.01);transition-duration:.07s;transition-timing-function:ease-out;filter:brightness(.95) saturate(1.3)}@keyframes animation-group-in{0%{opacity:0}to{opacity:1}}@keyframes curve-slide-in{0%{transform:translateY(10%) scaleY(var(--curve-scale-y)) scaleY(0)}to{transform:translateY(0) scaleY(var(--curve-scale-y))}}.decorations{--decorations-base-animation-duration: 2s;position:fixed;bottom:0;left:0;right:0;width:100%;animation:animation-group-in var(--decorations-base-animation-duration) var(--easing-ease-out) var(--animation-delay-decorations) both;pointer-events:none;z-index:-1}.curve{position:absolute;bottom:0;animation:inherit;animation-name:curve-slide-in;transform-origin:bottom center}
