@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}@media (max-width: 479px){html{font-size:14px}}body{font-family:Spline Sans Mono,monospace;font-size:1rem;font-weight:400;line-height:1.5;color:#1f2937;background-color:#f9fafb;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{font-weight:700}ol,ul{list-style:none}h1{font-size:2.25rem;line-height:1.2}h2{font-size:1.875rem;line-height:1.2}h3{font-size:1.5rem;line-height:1.2}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{line-height:1.75;color:#6b7280}strong{font-weight:700}em{font-style:italic}code{font-family:Spline Sans Mono,monospace;font-size:.875rem;background-color:#e5e7eb;padding:.125rem .25rem;border-radius:.25rem}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width: 1024px){.container{padding:0 2rem}}.section{padding:4rem 0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.layout{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}.header{position:fixed;top:0;left:0;right:0;z-index:100;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;transition:background .3s cubic-bezier(0,0,.2,1),border-color .3s cubic-bezier(0,0,.2,1),backdrop-filter .3s cubic-bezier(0,0,.2,1);border-bottom:1px solid transparent;overflow:hidden}.header--scrolled{background:#ffffffe0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#00000014}.header__left{display:flex;align-items:center;gap:1rem;width:42%;min-width:0;flex-shrink:0}.header__logo{display:flex;align-items:center;flex-shrink:0}.header__logo img{width:32px;height:32px;display:block}.header__marquee{overflow:hidden;flex:1;min-width:0;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%)}.header__marquee-track{display:flex;width:max-content;animation:header-marquee 20s linear infinite}.header__marquee-track span{font-family:Spline Sans Mono,monospace;font-size:.75rem;color:#00000073;white-space:nowrap;padding-right:.5rem}.header__time{display:flex;align-items:center;gap:5px;font-family:Spline Sans Mono,monospace;font-size:.75rem;color:#00000080;white-space:nowrap;flex-shrink:0}.header__time svg{width:13px;height:13px;flex-shrink:0;opacity:.55}@media (max-width: 479px){.header__time{display:none}}.header__nav{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}@media (max-width: 479px){.header__nav{gap:.5rem}}.header__nav-link{font-family:Spline Sans Mono,monospace;font-size:.75rem;color:#000000bf;white-space:nowrap;transition:color .15s cubic-bezier(0,0,.2,1);letter-spacing:.02em}.header__nav-link:hover,.header__nav-link.active{color:#000}@media (max-width: 479px){.header__nav-link{font-size:.65rem}}@keyframes header-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.nav__list{display:flex;gap:2rem;align-items:center}.nav__link{font-size:1rem;font-weight:500;color:#1f2937;transition:color .3s cubic-bezier(0,0,.2,1)}.nav__link:hover,.nav__link.active{color:#3b82f6}.footer{background:#fff;padding:clamp(1.5rem,3vw,2rem) clamp(1.25rem,4vw,3rem) clamp(1.5rem,3vw,2rem)}.footer__inner{max-width:1200px;margin:0 auto;display:flex;align-items:stretch;gap:clamp(1.5rem,3vw,3rem)}@media (max-width: 479px){.footer__inner{flex-direction:column}}.footer__card{flex:1.65;border-radius:1rem;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,3vw,2.5rem);min-height:200px}.footer__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.footer__card-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:1rem;max-width:300px;flex-shrink:0}@media (max-width: 479px){.footer__card-content{max-width:100%}}.footer__heading{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(1.4rem,2.8vw,2.1rem);letter-spacing:-.02em;line-height:1.1;color:#000}.footer__subtext{font-family:Spline Sans Mono,monospace;font-size:clamp(.625rem,.85vw,.75rem);line-height:1.75;color:#0000008c}.footer__cta{display:inline-flex;align-items:center;font-family:Spline Sans Mono,monospace;font-size:.875rem;padding:.7rem 1.4rem;border-radius:9999px;background:#000;color:#fff;text-decoration:none;width:fit-content;transition:box-shadow .3s cubic-bezier(0,0,.2,1)}.footer__cta:hover{box-shadow:0 6px 20px #0000004d}.footer__illustration{position:relative;z-index:1;flex-shrink:0;width:clamp(110px,16vw,200px);align-self:flex-start}.footer__illustration img{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}@media (max-width: 479px){.footer__illustration{width:120px}}.footer__right{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:.25rem 0}.footer__nav{display:flex;gap:clamp(2rem,5vw,4rem)}.footer__nav-col{display:flex;flex-direction:column;gap:1rem}.footer__nav-link{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.05vw,.875rem);color:#000000b3;text-decoration:none;transition:color .15s cubic-bezier(0,0,.2,1)}.footer__nav-link:hover{color:#000}.footer__copy{font-family:Spline Sans Mono,monospace;font-size:.75rem;color:#0000004d;margin-top:auto;padding-top:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.5rem;border:none;border-radius:.375rem;font-family:Spline Sans Mono,monospace;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease-in-out;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.5rem;border:none;border-radius:.375rem;font-family:Spline Sans Mono,monospace;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease-in-out;text-decoration:none}.btn--primary:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background-color:#3b82f6;color:#f9fafb}.btn--primary:hover:not(:disabled){background-color:#0b63f3;transform:translateY(-2px)}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--secondary{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.5rem;border:none;border-radius:.375rem;font-family:Spline Sans Mono,monospace;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease-in-out;text-decoration:none}.btn--secondary:disabled{opacity:.5;cursor:not-allowed}.btn--secondary{background-color:transparent;border:2px solid #3b82f6;color:#3b82f6}.btn--secondary:hover:not(:disabled){background-color:#3b82f6;color:#f9fafb}.btn--ghost{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.5rem;border:none;border-radius:.375rem;font-family:Spline Sans Mono,monospace;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease-in-out;text-decoration:none}.btn--ghost:disabled{opacity:.5;cursor:not-allowed}.btn--ghost{background-color:transparent;color:#1f2937}.btn--ghost:hover:not(:disabled){background-color:#e5e7eb}.hero{position:relative;min-height:100svh}@media (max-width: 479px){.hero{min-height:50vh}}.hero{display:flex;align-items:center;justify-content:center;overflow:hidden}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:20%;background:linear-gradient(to bottom,transparent,#ffffff);z-index:2;pointer-events:none}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero__video{width:100%;height:100%;object-fit:cover;object-position:center}.hero__content{position:relative;z-index:1;width:100%;max-width:1440px;padding:0 clamp(1.25rem,4vw,3.5rem);padding-top:60px;will-change:opacity}.hero__greeting{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.2vw,.875rem);letter-spacing:.08em;color:#000000a6;margin-bottom:clamp(.5rem,2vw,1.5rem);will-change:opacity,transform}.hero__title-block{width:fit-content;margin-bottom:clamp(1.5rem,3vw,3rem);will-change:transform}.hero__title{font-family:Spline Sans Mono,monospace;font-weight:800;font-size:clamp(2.5rem,8.5vw,9rem);line-height:.9;letter-spacing:-.03em;color:#000;will-change:opacity,transform}@media (max-width: 479px){.hero__title{font-size:clamp(2rem,12vw,2.5rem)}}.hero__location{display:block;width:100%;text-align:right;font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);letter-spacing:.12em;color:#0009;margin-top:clamp(.25rem,1vw,.5rem);will-change:opacity,transform}.hero__description{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.9375rem);line-height:1.75;text-align:center;color:#0000008c;max-width:580px;margin:0 auto clamp(1.5rem,3vw,3rem);will-change:opacity,transform}@media (max-width: 479px){.hero__description br{display:none}}.hero__cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;will-change:opacity,transform}.hero__btn{display:inline-flex;align-items:center;gap:.25rem;font-family:Spline Sans Mono,monospace;font-size:.875rem;font-weight:400;padding:.875rem 1.75rem;border-radius:9999px;border:none;cursor:pointer;transition:box-shadow .3s cubic-bezier(0,0,.2,1);will-change:transform}.hero__btn svg{flex-shrink:0}.hero__btn--dark{background:#000;color:#fff}.hero__btn--dark:hover{box-shadow:0 8px 24px #00000040}.hero__btn--light{background:#ffffffd1;color:#000;border:1px solid rgba(0,0,0,.1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.hero__btn--light:hover{background:#fffffff5;box-shadow:0 8px 24px #0000001a}@media (max-width: 479px){.hero__btn{font-size:.75rem;padding:.75rem 1.25rem}}.work-carousel{padding:2rem 0;overflow:hidden;background:#fff}.work-carousel__header{padding:0 clamp(1.25rem,4vw,3.5rem);margin-bottom:clamp(1.5rem,3vw,3rem)}.work-carousel__viewport{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%)}.work-carousel__track{display:flex;gap:clamp(1rem,2vw,2rem);width:max-content;animation:work-scroll 28s linear infinite}.work-carousel__track:hover{animation-play-state:paused}.work-carousel__card{flex-shrink:0;width:clamp(260px,26vw,400px);aspect-ratio:16/10;border-radius:1rem;overflow:hidden;background:#e5e7eb;box-shadow:0 10px 15px -3px #0000001a;cursor:pointer;transition:box-shadow .3s cubic-bezier(0,0,.2,1)}.work-carousel__card:hover{box-shadow:0 25px 50px -12px #00000040}.work-carousel__card img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block;pointer-events:none;transition:transform .6s cubic-bezier(0,0,.2,1)}.work-carousel__card:hover img{transform:scale(1.03)}@keyframes work-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.things{background:#fff;padding:2rem clamp(1.25rem,5vw,4rem);max-width:1440px;margin:0 auto}.things__intro{margin-bottom:clamp(3rem,5vw,5rem)}.things__title{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(2rem,4.5vw,3.5rem);letter-spacing:-.02em;line-height:1.1;color:#000;margin-bottom:1rem}.things__subtitle{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);line-height:1.75;color:#00000073}@media (max-width: 479px){.things__subtitle br{display:none}}.things__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.5rem,2.5vw,3rem)}@media (max-width: 479px){.things__grid{grid-template-columns:1fr}}.things__card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:1rem;padding:0 clamp(1.5rem,3vw,3rem) clamp(1.5rem,3vw,3rem);cursor:pointer;transition:box-shadow .3s cubic-bezier(0,0,.2,1),border-color .3s cubic-bezier(0,0,.2,1)}.things__card:hover{box-shadow:0 20px 25px -5px #0000001a;border-color:#0000001f}.things__image-wrap{width:100%;border-radius:.75rem;overflow:hidden}.things__image-wrap img{display:block;width:100%;height:auto;object-fit:cover;transition:transform .5s cubic-bezier(0,0,.2,1);pointer-events:none}.things__card:hover .things__image-wrap img{transform:scale(1.03)}.things__info{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;padding-top:.5rem;border-top:1px solid rgba(0,0,0,.07)}.things__name{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(1.125rem,1.8vw,1.5rem);color:#000;letter-spacing:-.01em}.things__tags{font-family:Spline Sans Mono,monospace;font-size:.75rem;color:#0006;font-style:italic}.tib{position:relative;overflow:hidden;padding:2rem clamp(1.25rem,5vw,4rem)}.tib__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;opacity:.55}.tib:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1}.tib:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#ffffff 0%,transparent 10%,transparent 90%,#ffffff 100%);z-index:2;pointer-events:none}.tib__content{position:relative;z-index:3;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(3rem,5vw,4rem)}.tib__header{display:flex;flex-direction:column;gap:.5rem}.tib__title{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.03em;line-height:1.05;color:#000}.tib__subtitle{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);color:#0000008c;line-height:1.75}.tib__fan-wrap{width:100%;height:clamp(200px,30vw,220px);position:relative}.tib__fan{position:absolute;top:0;right:0;bottom:0;left:0}.tib__fan-item{position:absolute;bottom:0;width:clamp(120px,17vw,210px);transform-origin:bottom center}.tib__fan-item img{display:block;width:100%;height:auto;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a;pointer-events:none;-webkit-user-select:none;user-select:none}.tib__skills{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(2rem,4vw,4rem);border-top:1px solid rgba(0,0,0,.1);padding-top:clamp(2rem,3vw,3rem)}@media (min-width: 768px) and (max-width: 1023px){.tib__skills{grid-template-columns:1fr 1fr}}@media (max-width: 479px){.tib__skills{grid-template-columns:1fr}}.tib__skill-col{display:flex;flex-direction:column;gap:1.5rem}.tib__skill-head{display:flex;align-items:center;gap:.5rem}.tib__skill-icon{display:flex;align-items:center;color:#00000073;flex-shrink:0}.tib__skill-title{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(.875rem,1.1vw,1rem);color:#000;letter-spacing:-.01em}.tib__skill-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.tib__skill-list li{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1vw,.875rem);color:#0009;line-height:1.5}.who-am-i{background:#fff}.who-am-i__inner{max-width:1200px;margin:0 auto;padding:2rem clamp(1.25rem,5vw,3.5rem)}.who-am-i__header{margin-bottom:clamp(3rem,5vw,5rem)}.who-am-i__title{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(2.25rem,5vw,4rem);letter-spacing:-.02em;line-height:1.05;color:#000;margin-bottom:.5rem}.who-am-i__subtitle{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);color:#00000073;line-height:1.5}.who-am-i__row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center;margin-bottom:clamp(3rem,6vw,6rem)}.who-am-i__row:last-child{margin-bottom:0}@media (max-width: 479px){.who-am-i__row{grid-template-columns:1fr}}.who-am-i__col--image img{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}@media (max-width: 479px){.who-am-i__col--image{order:-1}}.who-am-i__col--text p{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);line-height:1.75;color:#000000a6}.who-am-i__col--text p+p{margin-top:1.5rem}.about{padding:4rem 2rem;max-width:800px;margin:0 auto}.about__title{font-size:1.875rem;margin-bottom:1.5rem}.about__content{display:flex;flex-direction:column;gap:1.5rem}.projects{padding:4rem 2rem;max-width:1200px;margin:0 auto}.projects__title{font-size:1.875rem;margin-bottom:3rem;text-align:center}.projects__grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1rem}@media (min-width: 768px) and (max-width: 1023px){.projects__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.projects__grid{grid-template-columns:repeat(3,1fr)}}.projects__card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;will-change:transform}.projects__card-title{font-size:1.25rem;margin-bottom:.5rem}.projects__card-description{color:#6b7280;font-size:.875rem;line-height:1.75}.contact__hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:50vh;padding:120px clamp(1.25rem,4vw,3.5rem) clamp(3rem,5vw,4rem);overflow:hidden}@media (max-width: 479px){.contact__hero{min-height:40vh;padding-top:100px}}.contact__hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.contact__hero-video{width:100%;height:100%;object-fit:cover;object-position:center}.contact__hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:20%;background:linear-gradient(to bottom,transparent,#ffffff);z-index:2;pointer-events:none}.contact__hero-content{position:relative;z-index:1;text-align:center;max-width:700px}.contact__title{font-family:Spline Sans Mono,monospace;font-weight:800;font-size:clamp(3rem,10vw,8rem);line-height:.95;letter-spacing:-.03em;color:#000;margin-bottom:clamp(1rem,2vw,2rem)}@media (max-width: 479px){.contact__title{font-size:clamp(2.5rem,14vw,3.5rem)}}.contact__subtitle{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);line-height:1.75;color:#0000008c}@media (max-width: 479px){.contact__subtitle br{display:none}}.contact__body{padding:clamp(3rem,5vw,4rem) clamp(1.25rem,4vw,3.5rem);background-color:#fff}.contact__body-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,5vw,4rem);align-items:start}@media (max-width: 767px){.contact__body-inner{grid-template-columns:1fr}}.contact__info{display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,3rem)}.contact__label{display:block;font-family:Spline Sans Mono,monospace;font-size:.75rem;letter-spacing:.1em;color:#00000073;margin-bottom:.5rem}.contact__email{font-family:Spline Sans Mono,monospace;font-weight:700;font-size:clamp(1.25rem,2.5vw,1.5rem);color:#000;text-decoration:none;transition:opacity .15s cubic-bezier(0,0,.2,1)}.contact__email:hover{opacity:.7}.contact__social-links{display:flex;gap:1.5rem;flex-wrap:wrap}.contact__social-link{font-family:Spline Sans Mono,monospace;font-size:clamp(.875rem,1.1vw,1rem);color:#000;text-decoration:none;transition:opacity .15s cubic-bezier(0,0,.2,1)}.contact__social-link:hover{opacity:.6}.contact__blurb{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1vw,.875rem);line-height:1.75;color:#0000008c;max-width:420px}.contact__form{background:#f5f5f5;border-radius:1rem;padding:clamp(2rem,3vw,3rem);display:flex;flex-direction:column;gap:clamp(1rem,2vw,1.5rem)}.contact__field{display:flex;flex-direction:column}.contact__field-label{font-family:Spline Sans Mono,monospace;font-size:.75rem;letter-spacing:.1em;color:#00000080;margin-bottom:.5rem}.contact__input,.contact__textarea{font-family:Spline Sans Mono,monospace;font-size:.875rem;color:#000;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.15);padding:.5rem 0;outline:none;transition:border-color .15s cubic-bezier(0,0,.2,1);resize:none}.contact__input::placeholder,.contact__textarea::placeholder{color:#0000004d}.contact__input:focus,.contact__textarea:focus{border-bottom-color:#000}.contact__textarea{min-height:100px}.contact__submit{font-family:Spline Sans Mono,monospace;font-size:.875rem;font-weight:500;width:100%;padding:1rem 2rem;border-radius:9999px;border:none;background:#1a1a1a;color:#fff;cursor:pointer;transition:box-shadow .3s cubic-bezier(0,0,.2,1);margin-top:.5rem}.contact__submit:hover:not(:disabled){box-shadow:0 8px 24px #0003}.contact__submit:disabled{opacity:.6;cursor:not-allowed}.contact__status{font-family:Spline Sans Mono,monospace;font-size:.75rem;margin-top:.25rem}.contact__status--success{color:#10b981}.contact__status--error{color:#ef4444}.playground{width:100%}.playground__hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:50vh;padding:120px clamp(1.25rem,4vw,3.5rem) clamp(3rem,5vw,4rem);overflow:hidden}@media (max-width: 479px){.playground__hero{min-height:40vh;padding-top:100px}}.playground__hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.playground__hero-video{width:100%;height:100%;object-fit:cover;object-position:center}.playground__hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:20%;background:linear-gradient(to bottom,transparent,#ffffff);z-index:2;pointer-events:none}.playground__hero-content{position:relative;z-index:1;text-align:center;max-width:700px}.playground__title{font-family:Spline Sans Mono,monospace;font-weight:800;font-size:clamp(3rem,10vw,7rem);line-height:.95;letter-spacing:-.03em;color:#000;margin-bottom:clamp(1rem,2vw,2rem)}@media (max-width: 479px){.playground__title{font-size:clamp(2.5rem,14vw,3.5rem)}}.playground__body{padding:clamp(3rem,5vw,4rem) clamp(1.25rem,4vw,3.5rem);background-color:#fff;margin:0 auto}.playground__description{font-family:Spline Sans Mono,monospace;font-size:clamp(.75rem,1.1vw,.875rem);line-height:1.75;color:#0000008c;max-width:420px;margin-bottom:clamp(2rem,4vw,4rem)}.playground__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(1rem,2vw,1.5rem)}@media (max-width: 767px){.playground__grid{grid-template-columns:1fr}}.playground__card{cursor:pointer}.playground__card--half{grid-column:span 3}@media (max-width: 767px){.playground__card--half{grid-column:span 1}}.playground__card--third{grid-column:span 2}@media (max-width: 767px){.playground__card--third{grid-column:span 1}}.playground__card--full{grid-column:span 6}@media (max-width: 767px){.playground__card--full{grid-column:span 1}}.playground__card-thumb{width:100%;aspect-ratio:4/3;background:#f0f0f0;border-radius:1rem;transition:box-shadow .3s cubic-bezier(0,0,.2,1)}.playground__card-thumb--tall{aspect-ratio:3/2}.playground__card:hover .playground__card-thumb{box-shadow:0 8px 30px #00000014}
