*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}@media(prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}:root{--color-10: oklch(10% .0028 60.5);--color-30: oklch(from var(--color-10) 30% c h);--color-90: oklch(from var(--color-10) 98% c h);--color-100: oklch(from var(--color-10) 100% c h);--color-accent: oklch(92% .2 97.5);--color-accent-lighter: oklch(from var(--color-accent) 94% c h);--spacing-xs: 4px;--spacing-s: 8px;--spacing-m: 16px;--spacing-l: 32px;--spacing-xl: 48px;--shadow-s: inset 0 1px 2px oklch(100% 0 0 / .2), 0 1px 2px oklch(0% 0 0 / .2), 2px 4px 6px oklch(0% 0 0 / .1);--shadow-m: inset 0 2px 4px oklch(100% 0 0 / .2), 0 2px 4px oklch(0% 0 0 / .2), 4px 6px 8px oklch(0% 0 0 / .1);view-transition-name:root}@view-transition{navigation:auto}html{scroll-behavior:smooth}body{font-family:var(--font-family-base);font-size:1.0625rem;line-height:1.7;background:var(--color-90);color:var(--color-10);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-family:var(--font-family-heading);font-size:clamp(2.25rem,8vw + 1rem,4.5rem);line-height:1.15;letter-spacing:-.02em;margin-bottom:var(--spacing-l)}h2{font-family:var(--font-family-heading);font-size:clamp(1.75rem,5vw + .5rem,3rem);line-height:1.25;letter-spacing:-.01em;margin:var(--spacing-xl) 0 var(--spacing-l) 0}h3{font-size:clamp(1.25rem,3vw + .25rem,1.75rem);line-height:1.35;letter-spacing:-.005em;margin:var(--spacing-m) 0 var(--spacing-m) 0}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);font-weight:700;text-align:center;text-wrap:balance}p{margin:0 0 var(--spacing-m) 0;text-wrap:pretty}a{color:var(--color-10);text-decoration:none;&:hover{color:var(--color-30)}}.btn,button{all:unset;display:inline-block;margin:var(--spacing-s) 0;background:var(--color-accent);padding:var(--spacing-s) var(--spacing-m);color:var(--color-10);border-radius:var(--spacing-xs);font:var(--font-family-base);cursor:pointer;box-shadow:var(--shadow-s);&:hover{background:var(--color-accent-lighter);color:var(--color-10);transition:.3s ease-in-out;box-shadow:var(--shadow-m)}}header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:100;padding:var(--spacing-m);border-bottom:1px solid oklch(from var(--color-10) l c h / .1);background-color:oklch(from var(--color-90) l c h / .95);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000000d;view-transition-name:none;nav{max-width:1200px;margin:0 auto;padding:0 var(--spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl);.logo{font:700 1.25rem/1.2em var(--font-family-heading);white-space:pre-line;transition:all .3s ease;position:relative;&:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-accent);transition:width .3s ease}&:hover{color:var(--color-10);transform:translateY(-1px);&:after{width:100%}}}.nav-list{position:fixed;top:0;left:0;width:80%;max-width:320px;height:100vh;background:var(--color-90);padding:calc(var(--spacing-m) * 2 + 48px + var(--spacing-m)) var(--spacing-m) var(--spacing-m);list-style:none;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs);transform:translate(-100%);transition:transform .2s cubic-bezier(.4,0,.2,1);box-shadow:2px 0 12px #0000001a;z-index:2;overflow-y:auto;li{a{display:block;padding:var(--spacing-m);font-size:1rem;font-weight:500;transition:background-color .2s ease,color .2s ease}}@media(min-width:768px){position:static;width:auto;max-width:none;height:auto;padding:0;flex-direction:row;gap:var(--spacing-l);transform:none;box-shadow:none;background:transparent;overflow:visible;li{a{display:inline;padding:0;font-size:.9375rem;border-radius:0;position:relative;&:hover{background-color:transparent;color:var(--color-accent);&:after{width:100%}}}}}}.menu-button{padding:var(--spacing-s);display:flex;align-items:center;justify-content:center;background:transparent;box-shadow:none;border-radius:var(--spacing-xs);transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;cursor:pointer;z-index:2;@media(min-width:768px){display:none}.icon-hamburger,.icon-close{position:absolute;transition:opacity .2s ease,transform .2s ease}.icon-close{opacity:0;transform:rotate(90deg)}&[aria-expanded=true]{.icon-hamburger{opacity:0;transform:rotate(-90deg)}.icon-close{opacity:1;transform:rotate(0)}}&:hover{background:oklch(from var(--color-accent) l c h / .2)}}}}.nav-backdrop[data-astro-cid-3ef6ksr2]{position:fixed;inset:0;background:#0003;opacity:0;height:100vh;pointer-events:none;transition:opacity .2s ease;z-index:1;@media(min-width:768px){display:none}}header[data-astro-cid-3ef6ksr2][data-menu-open=true]{.nav-list{transform:translate(0)}.nav-backdrop{opacity:1;pointer-events:auto}}footer[data-astro-cid-sz7xmlte]{background:var(--color-10);color:var(--color-90);padding:var(--spacing-xl) 0 var(--spacing-l);margin-top:var(--spacing-xl);view-transition-name:footer;.footer-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-l);display:grid;gap:var(--spacing-xl);grid-template-columns:1fr;@media(min-width:640px){grid-template-columns:repeat(2,1fr)}@media(min-width:1024px){grid-template-columns:repeat(4,1fr);gap:var(--spacing-l)}}.footer-section{h4{font-size:1.125rem;margin:0 0 var(--spacing-m) 0;color:var(--color-accent);text-align:left}address{font-style:normal;p{margin:0 0 var(--spacing-s) 0;font-size:.9375rem}}ul{list-style:none;padding:0;margin:0;li{margin-bottom:var(--spacing-s);font-size:.9375rem}}a{color:var(--color-90);text-decoration:none;transition:color .2s ease;&:hover{color:var(--color-accent)}}}.social-links{display:flex;gap:var(--spacing-m);a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:oklch(from var(--color-10) calc(l + .1) c h);transition:all .2s ease;&:hover{background:var(--color-accent);color:var(--color-10);transform:translateY(-2px)}svg{width:20px;height:20px}}}.footer-bottom{max-width:1200px;margin:var(--spacing-xl) auto 0;padding:var(--spacing-l) var(--spacing-l) 0;border-top:1px solid oklch(from var(--color-10) calc(l + .2) c h);text-align:center;p{margin:0;font-size:.875rem;opacity:.8}}}body{display:grid;grid-template-rows:auto 1fr auto;min-height:100vh}
