@layer reset,base,components,utilities;@layer reset{*,*:before,*:after{box-sizing:border-box}*{margin:0}:root{text-size-adjust:none}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;text-wrap:balance}button{all:unset;cursor:pointer;box-sizing:border-box;&:focus-visible{outline:revert}}p{text-wrap:pretty}a{color:inherit;text-decoration:none}.text-wrap{line-height:1.5;text-wrap:pretty;>*:first-child{margin-top:0}>*:last-child{margin-bottom:0}}}@layer base{@font-face{font-display:swap;font-family:Satoshi;font-style:normal;font-weight:900;src:url(/assets/fonts/Satoshi-Black.woff2) format("woff2")}@font-face{font-display:swap;font-family:Outfit;font-style:normal;font-weight:300;src:url(/assets/fonts/outfit-v11-latin-300.woff2) format("woff2")}@font-face{font-display:swap;font-family:Outfit;font-style:normal;font-weight:500;src:url(/assets/fonts/outfit-v11-latin-500.woff2) format("woff2")}}@layer base{:root{--font-headline: "Satoshi", sans-serif;--font-text: "Outfit", sans-serif;--rem: 1.1rem;--text-xs: .9rem;--text-sm: 1rem;--text-normal: 1.1rem;--text-lg: 1.75rem;--text-xl: 2rem;--color-text: rgba(255, 255, 255, .9);--color-blue-dark: oklch(.2 .02 232.31 / 1);--color-blue: rgba(25.021, 56.75, 72.545);--color-slate: rgba(84.457, 102.54, 117.48);--color-grey: rgba(122, 122, 131.84);--color-peach-lightest: rgba(239.99, 189.01, 157.6);--color-peach-light: rgba(252.8, 162.96, 110.94);--color-peach-medium: oklch(80% .15 50);--color-peach: rgba(245.16, 116.75, 28.868);--color-peach-bg: rgba(from var(--color-peach) r g b / .1);--color-github-sponsors: rgba(219.02, 96.736, 162.41);--spacing-section: 4rem;--spacing-x: 1.5em;--spacing-y: 1.5rem;--rounding: 3px;--shadow-color: var(--color-peach-light);--shadow: .2em .2em 0 var(--shadow-color);--shadow-hover: .4em .4em 0 var(--shadow-color);--content-width: 80rem;--max-text-width: 60ch;--focus-outline-color: currentColor;--focus-outline-offset: .2rem;--focus-outline-style: solid;--focus-outline-width: 2px;@media (min-width: 30rem){--text-xs: 1rem;--text-sm: 1.1rem;--text-normal: 1.25rem;--text-lg: 2.2rem;--text-xl: 2.6rem}@media (min-width: 47.5rem){--spacing-section: 6rem}@media (min-width: 75rem){--spacing-section: 8rem}}}@layer base{:root{color-scheme:dark;scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:6rem}::selection{background-color:var(--color-peach-light);color:var(--color-blue)}*:focus-visible{outline-color:var(--focus-outline-color);outline-offset:var(--focus-outline-offset);outline-style:var(--focus-outline-style);outline-width:var(--focus-outline-width)}@view-transition{navigation: auto;}body{font-family:var(--font-text);font-size:var(--text-normal);font-weight:300;line-height:1.5;background-color:var(--color-blue-dark);overflow-x:hidden;color:var(--color-text);display:flex;flex-direction:column;min-height:100svh}h1{font-size:var(--text-xl);font-family:var(--font-headline);line-height:1.1;font-weight:900;letter-spacing:-.025em;color:var(--color-peach-medium);margin-bottom:1em;&::selection,::selection{background-color:var(--color-blue);color:currentColor}}h2{font-size:var(--text-lg);font-family:var(--font-headline);color:var(--color-peach-medium);line-height:1.15;font-weight:900;margin-bottom:.25em}h1,h2,h3,h4,h5,h6{position:relative;margin-top:2em;vertical-align:baseline;&:first-of-type{margin-top:0}:where(&)+&{margin-top:1rem}.anchor-link{display:inline-block;vertical-align:baseline;text-decoration:none;&:before{display:inline-block;margin-left:-1.25em;margin-right:.5em;content:"#";font-size:.675em;color:var(--color-peach-light);opacity:.4;text-decoration:none;transition:opacity .4s}&:hover,&:focus-visible{&:before{opacity:1}}}}a{border-radius:var(--rounding)}em{font-style:normal;color:var(--color-peach-light)}iframe,video{--focus-outline-color: var(--color-peach);--focus-outline-offset: 4px;box-shadow:var(--shadow);border-radius:var(--rounding)}p:not(:last-child),ul:not(:last-child){margin-bottom:1.5em}main a{text-decoration:underline;text-decoration-color:var(--color-peach-light);text-underline-offset:.15em;transition:color .4s;&:hover,&:focus-visible{color:var(--color-peach-light)}}}@layer component{.button{--focus-outline-offset: -4px;--focus-outline-color: var(--color-blue-dark);--bg-color: var(--color-blue);padding:.5rem 1.25rem;background:var(--bg-color);border:2px solid var(--bg-color);box-shadow:var(--shadow);border-radius:var(--rounding);font-size:var(--text-sm);font-weight:700;text-decoration:none;color:#fff;transition:background .3s ease,box-shadow .3s ease;&:hover,&:focus-visible{color:var(--color-blue);--shadow: var(--shadow-hover);--bg-color: var(--color-peach)}&.-sponsors{--bg-color: var(--color-github-sponsors);--shadow-color: oklch(from var(--color-github-sponsors) .4 c h) !important;display:flex;gap:calc(var(--spacing-x) * .5);align-items:center;box-shadow:.2em .2em 0 var(--shadow-color);&:hover,&:focus-visible{--shadow: var(--shadow-hover);box-shadow:var(--shadow-hover);--bg-color: oklch(from var(--color-github-sponsors) calc(l - .1) c h)}svg{height:1.5rem;width:1.5rem}}}.button--secondary{background:transparent;border-color:var(--color-peach);color:var(--color-peach);&:hover,&:focus-visible{background:var(--color-peach);color:#fff}}}@layer component{.badges{display:flex;gap:.5rem;margin-bottom:1rem}.badge{display:inline-block;font-weight:700;background-color:oklch(from var(--color-peach-lightest) .2 c h);color:var(--color-peach-light);border:1px solid var(--color-peach-light);border-radius:var(--rounding);padding:.05em .375em;font-size:.875rem;&::selection{background-color:var(--color-blue);color:currentColor}}}@layer component{.tooltip{display:none;font-size:var(--text-xs);padding:0 .25em;border-radius:var(--rounding);background-color:var(--color-peach-light)}[data-tooltip]:hover>[popover]{display:block;--anchor-attr: attr(data-anchor);position-anchor:var(--anchor-name);top:calc(anchor(bottom) + .5em);justify-self:anchor-center}}@layer component{.header{position:sticky;top:0;z-index:100;background:rgba(from var(--color-blue-dark) r g b / .6);backdrop-filter:blur(20px)}.header .logo{display:flex;align-items:center;gap:calc(var(--spacing-x) * .5);font-family:var(--font-headline);color:var(--color-peach);font-weight:700;letter-spacing:-.05em;svg{height:1.5rem}.logo-full{display:none}@media (width > 36.25rem){.logo-icon{display:none}.logo-full{display:block}}}.header nav{display:flex;row-gap:var(--spacing-y);column-gap:var(--spacing-x);flex-wrap:wrap;justify-content:space-between;padding:1rem 0;width:100%}.header nav ul{display:flex;gap:1rem;justify-content:end;align-items:center;list-style:none;padding:0;margin:0 0 0 auto}@media (min-width: 600px){.header nav ul{justify-content:flex-start;max-width:var(--content-width);padding-inline:1.5rem}}.header nav li{margin:0;padding:0%}.header nav li a{font-family:var(--font-text);font-weight:500;color:var(--color-text);text-decoration:none;padding:.375rem .75rem;border-radius:.5rem;transition:all .3s ease;border:1px solid rgba(from var(--color-peach) r g b / .2);&:hover,&:focus-visible{color:var(--color-peach-light);background:#ffffff0d}&.active{color:var(--color-peach-light);background:var(--color-peach-bg)}}}@layer component{.footer{margin-top:auto;color:#fff;background-color:var(--color-blue-dark);@media (width > 30rem){.footer__inner{display:flex;align-items:start;justify-content:space-between}}a{text-decoration:none;transition:color .4s;&:hover,&:focus-visible{color:var(--color-peach)}}.social-icons{margin-bottom:var(--spacing-y);@media (width > 30rem){justify-content:start}}}.footer__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-x);font-size:var(--text-sm);@media (width > 30rem){flex:1 0 auto;flex-direction:column;gap:calc(var(--spacing-y) * .5)}}}@layer component{.about{position:relative;.about__inner{display:flex;flex-direction:column;gap:8rem;@media (width > 56rem){flex-direction:row}}.about__content{display:flex;flex-direction:column;justify-content:center;align-items:start}.about__image{flex:0 0 16rem;display:flex;flex-direction:column;align-items:start;@media (width > 56rem){margin-left:auto;transform:translateY(-4rem)}img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:1 / 1;border-radius:1rem;object-fit:cover;max-width:20rem;margin-inline:auto;transform:rotate(1deg);box-shadow:var(--shadow)}}.social-icons{margin-top:2rem}}}@layer component{.social-icons{display:flex;width:100%;gap:1.5rem;justify-content:center;a{text-decoration:none;transition:color .4s;&:hover,&:focus-visible{color:var(--color-peach)}}.tooltip{color:var(--color-blue)}svg{height:1.5rem;width:1.5rem}}}@layer component{.project-hero{display:grid;align-items:center;grid-template-columns:1fr;gap:calc(var(--spacing-x) * 2) calc(var(--spacing-y) * 2);@media (width > 60rem){grid-template-columns:1fr 1fr}}.project-hero__actions{display:flex;justify-content:center;gap:1rem}.video-container iframe,.video-container video{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--rounding);overflow:hidden;border:1px solid rgba(255,255,255,.1)}.packages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:var(--spacing-x) var(--spacing-y)}.package-card{display:flex;flex-direction:column;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:var(--rounding);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;.package-card__actions{display:flex;justify-content:end;align-items:end;margin-left:auto;margin-top:auto}.package-card__image{aspect-ratio:16 / 9;overflow:hidden;img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}}.package-card__content{display:flex;flex-direction:column;flex:1 0 auto;padding:var(--spacing-y) calc(var(--spacing-x) * .5);h3{font-family:var(--font-headline);font-weight:700;color:var(--color-peach-light);margin-bottom:.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}p{font-size:var(--text-sm)}}.package-card__actions{display:flex;gap:.75rem}}.talk-card{max-width:35rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:var(--rounding);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;&:hover,&:focus-visible{transform:translateY(-4px);box-shadow:0 10px 25px #0003}}@media (min-width: 760px){.talk-card{grid-template-columns:1fr 1fr;gap:0}}.talk-card__thumbnail{position:relative;overflow:hidden}.talk-card__thumbnail img{width:100%;height:100%;aspect-ratio:16 / 9;object-fit:cover;transition:transform .3s ease}.talk-card__content{padding:2rem}.talk-card__content h3{font-family:var(--font-headline);font-size:var(--text-lg);font-weight:700;color:var(--color-peach-light);margin-bottom:1rem}.talk-card__actions{display:flex;gap:1rem;flex-wrap:wrap}@media (max-width: 500px){.talk-card__actions{flex-direction:column}}}@layer component{.projects-grid{.marquee__track{display:flex;margin-top:.25em;gap:.25rem}img{position:relative;border:1px solid rgba(255 255 255 / .1);border-radius:var(--rounding);width:20vw}}.marquee{overflow-x:clip;.marquee__track{--speed: 10s;--width: calc(var(--nr-projects) * 20vw);--animation: marquee;width:var(--width);will-change:transform;animation:var(--animation) var(--speed) linear infinite;@media (prefers-reduced-motion: reduce){animation:none;text-shadow:none;width:auto;display:block;line-height:1.5;text-align:center;white-space:normal}&:nth-child(2){--animation: marquee-reverse}}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(calc(-100% + 100vw))}}@keyframes marquee-reverse{0%{transform:translate(calc(var(--width) * -1 + 100vw))}to{transform:translate(0)}}}@layer component{.articles{display:flex;flex-direction:column;gap:var(--spacing-y);.articles__intro{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:var(--spacing-y);.button{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--spacing-x) / 2);svg{display:inline-block}}}.articles__list{display:flex;flex-direction:column;gap:calc(var(--spacing-y) * 2)}.article{display:flex;flex-wrap:wrap;gap:calc(var(--spacing-y) * .25) var(--spacing-x);align-items:center;max-width:var(--max-text-width);text-decoration:none;.article__meta{display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:calc(var(--spacing-x) * .5) var(--spacing-x);opacity:.8;>div{display:flex;align-items:center;gap:calc(var(--spacing-x) / 4);svg{width:1em;height:1em}}}}}.article-page .article{max-width:var(--max-text-width);margin:0 auto;time{transform:translateY(-.5rem);margin-bottom:.5rem}.article__header{margin-bottom:calc(var(--spacing-y) * 1.5);h1{margin-bottom:.25em}}.article__meta{display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:calc(var(--spacing-x) * .5) var(--spacing-x);opacity:.8;>div{display:flex;align-items:center;gap:calc(var(--spacing-x) / 4);svg{width:1em;height:1em}}}}.phiki{--focus-outline-color: var(--color-peach-light);--focus-outline-offset: .25rem;font-size:var(--text-xs);background:#ffffff08;border:1px solid rgba(255,255,255,.1);padding-inline:var(--spacing-x);padding-block:var(--spacing-y);border-radius:var(--rounding);overflow-x:auto;margin-bottom:var(--spacing-y)}}@layer component{.partners{display:grid;padding-block:var(--spacing-y);grid-template-columns:repeat(1,1fr);gap:calc(var(--spacing-y) * .5) var(--spacing-x);font-size:var(--text-lg);a{text-decoration:none}}}@layer utilities{.rte{img{width:100%}}}@layer utilities{.container{container-type:inline-size}.wrapper{width:100%;margin-inline:auto;padding-inline:.75rem;max-width:var(--content-width);@media (min-width: 30rem){padding-inline:1.5rem}}.full-bleed{position:relative;width:100vw;margin-left:calc(50% - 50vw)}.section{padding-block:var(--spacing-section);+&{padding-top:0}}.intro{p{text-wrap:pretty;margin-bottom:0}&:has(.button){display:flex;flex-direction:column;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:var(--spacing-y);@media (width > 60rem){flex-direction:row}}}}@layer utilities{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.text-wrap{max-width:var(--max-text-width);text-wrap:pretty}.skip-link{--color: var(--color-peach);position:absolute;top:calc(var(--spacing-y) * .5);left:0;right:0;display:flex;gap:.5rem;margin-inline:auto;pointer-events:none;opacity:0;z-index:999;max-width:fit-content;border-radius:.5rem;outline-offset:2px;padding:.25rem .75rem;background-color:var(--color);font-size:var(--text-sm);font-weight:500;color:var(--color-blue-dark);&:focus-visible{opacity:1;pointer-events:all;outline:2px solid var(--color-blue-dark);box-shadow:0 0 0 6px var(--color)}}}
