.scroll-in-logo-grid-container .logo-grid-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:16px;color:var(--text)}.scroll-in-logo-grid-container .logo-grid-subtitle{text-align:center;font-size:1.2rem;color:var(--muted);max-width:700px;margin:0 auto 50px;line-height:1.5}.logo-grid{display:grid;grid-template-columns:repeat(var(--columns, 4),1fr);gap:1px;background:var(--line);border:1px solid var(--line);max-width:1200px;margin:0 auto}.logo-grid .logo-item{min-height:150px;opacity:0;transition:transform .3s ease,opacity .3s ease}.logo-grid .logo-item.slide-up{transform:translateY(50px)}.logo-grid .logo-item.slide-up.animate{transform:translateY(0);opacity:1}.logo-grid .logo-item.slide-left{transform:translate(50px)}.logo-grid .logo-item.slide-left.animate{transform:translate(0);opacity:1}.logo-grid .logo-item.slide-right{transform:translate(-50px)}.logo-grid .logo-item.slide-right.animate{transform:translate(0);opacity:1}.logo-grid .logo-item.fade{transform:scale(.95)}.logo-grid .logo-item.fade.animate{transform:scale(1);opacity:1}.logo-card{position:relative;background:var(--cell-bg);border-radius:0;padding:30px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;transition:background-color .3s}.logo-card:hover{background:var(--cell-bg-hover)}.logo-card:hover .logo-name{opacity:1}.logo-card:hover img{transform:scale(1.05)}.logo-card img{max-width:70%;max-height:70px;object-fit:contain;margin-bottom:15px;transition:transform .3s,filter .3s}.logo-card .logo-name{opacity:0;font-family:Fragment Mono,SF Mono,monospace;font-size:.625rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;transition:opacity .3s;text-align:center;position:absolute;color:var(--muted);bottom:.6em}.logo-carousel{max-width:100%;margin:0 auto;padding:0 20px;display:none;position:relative}.logo-carousel .logo-name{opacity:1;font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--muted);margin-top:12px;width:100%}.logo-carousel .carousel-container{overflow:hidden;width:100%;max-width:300px;margin:0 auto}.logo-carousel .carousel-track{display:flex;transition:transform .5s ease;width:100%}.logo-carousel .carousel-item{min-width:100%;flex:0 0 100%;padding:20px}.logo-carousel .carousel-item .logo-card{margin:0 auto;max-width:100%;height:150px;border:1px solid var(--line)}.logo-carousel .carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:transparent;color:var(--text);width:40px;height:40px;border-radius:0;border:1px solid var(--line-strong);font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:background-color .3s,color .3s}.logo-carousel .carousel-nav:hover{background:var(--text);color:var(--bg)}.logo-carousel .carousel-nav.prev{left:0}.logo-carousel .carousel-nav.next{right:0}.logo-carousel .carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:20px}.logo-carousel .carousel-dots .carousel-dot{width:8px;height:8px;border-radius:0;border:none;background-color:#333;cursor:pointer;padding:0;transition:background-color .3s,transform .3s}.logo-carousel .carousel-dots .carousel-dot.active{background:var(--text)}.logo-carousel .carousel-dots .carousel-dot:hover:not(.active){background-color:#555}.desktop-view{display:grid}.mobile-view{display:none}@media (max-width: 768px){.scroll-in-logo-grid-container .logo-grid-title{font-size:2rem}.scroll-in-logo-grid-container .logo-grid-subtitle{font-size:1rem;margin-bottom:30px}.desktop-view{display:none!important}.mobile-view{display:block!important}.logo-carousel .carousel-item .logo-card{padding:20px 15px}.logo-carousel .carousel-item .logo-card img{max-height:60px}}@media (max-width: 480px){.logo-carousel .carousel-nav{width:32px;height:32px;font-size:16px}.logo-carousel .carousel-container{max-width:250px}.logo-carousel .carousel-item .logo-card{height:130px;padding:15px}.logo-carousel .carousel-item .logo-card img{max-height:50px}}:root[data-theme=dark] img.mono-dark{filter:invert(1) brightness(1.7)}:root[data-theme=dark] .logo-card:hover img.mono-dark{filter:invert(1) brightness(2)}:root[data-theme=light] img.mono-light{filter:invert(1) brightness(.4)}:root[data-theme=light] .logo-card:hover img.mono-light{filter:invert(1) brightness(.6)}:root,:root[data-theme=dark]{--bg: #050505;--bg-rgb: 5 5 5;--surface: #0a0a0a;--surface-raised: #101010;--line: rgba(255, 255, 255, .14);--line-strong: rgba(255, 255, 255, .45);--text: #f4f4f4;--text-rgb: 244 244 244;--muted: #9a9a9a;--cell-bg: #070707;--cell-bg-hover: #101010}:root[data-theme=light]{--bg: #f6f6f4;--bg-rgb: 246 246 244;--surface: #ffffff;--surface-raised: #efeeec;--line: rgba(0, 0, 0, .16);--line-strong: rgba(0, 0, 0, .48);--text: #0b0b0b;--text-rgb: 11 11 11;--muted: #5a5a57;--cell-bg: #fbfbf9;--cell-bg-hover: #efeeec}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth;color-scheme:dark}:root[data-theme=light]{color-scheme:light}body{background-color:var(--bg);color:var(--text);font-family:Archivo,Helvetica Neue,sans-serif;font-weight:300;overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .25s ease,color .25s ease}::selection{background:var(--text);color:var(--bg)}.landing:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}@media (min-width: 768px){.container{padding:0 2rem}}@media (min-width: 1024px){.container{padding:0 3rem}}.fade-in-up{animation:fadeInUp .6s ease-out forwards;opacity:0}.fade-in{animation:fadeIn .6s ease-out forwards;opacity:0}.delay-200{animation-delay:.2s}.delay-400{animation-delay:.4s}.delay-600{animation-delay:.6s}.gradient-text{color:transparent;-webkit-text-stroke:1px var(--text)}@media (max-width: 767px){.gradient-text{-webkit-text-stroke:.75px var(--text)}}.gradient-button{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;display:inline-block;background:transparent;border:1px solid var(--line-strong);border-radius:0;padding:.875rem 1.75rem;color:var(--text);cursor:pointer;text-decoration:none;transition:all .25s ease}.gradient-button:hover,.gradient-button.primary{background:var(--text);color:var(--bg);border-color:var(--text)}.gradient-button.primary:hover{background:transparent;color:var(--text);border-color:var(--line-strong)}.gradient-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:0;padding:2rem;transition:border-color .25s ease,transform .25s ease}.gradient-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.gradient-feature{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:0;padding:1.5rem;display:flex;gap:1.5rem;margin-bottom:1.5rem;transition:border-color .25s ease}.gradient-feature:hover{border-color:var(--line-strong)}.gradient-icon{width:72px;height:72px;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--text)}.gradient-icon svg{width:30px;height:30px}.text-button{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;background:none;border:none;border-bottom:1px solid var(--line-strong);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;padding:0 0 .25rem;margin-top:1.25rem;text-decoration:none;transition:border-color .25s}.text-button .arrow{margin-left:.5rem;transition:transform .25s}.text-button:hover{border-color:var(--text)}.text-button:hover .arrow{transform:translate(4px)}.section-kicker{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;display:block;color:var(--muted);margin-bottom:1rem}.section-kicker:before{content:"";display:inline-block;width:2rem;height:1px;background:var(--line-strong);vertical-align:middle;margin-right:.75rem}.section-title{font-size:2.5rem;font-weight:600;font-stretch:115%;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05;margin-bottom:3rem;color:var(--text)}@media (min-width: 768px){.section-title{font-size:3.25rem}}.navbar{position:fixed;top:0;left:0;width:100%;z-index:50;padding:1.25rem 0;transition:all .25s}.navbar.scrolled{padding:.8rem 0;background-color:rgb(var(--bg-rgb)/.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navbar .navbar-content{display:flex;justify-content:space-between;align-items:center}.navbar .logo{display:flex;justify-content:center;align-items:center;gap:.75rem;color:var(--text)}.navbar .logo .logo-text{font-size:1.125rem;font-weight:600;font-stretch:115%;text-transform:uppercase;letter-spacing:.14em;color:var(--text)}.navbar .nav-links{display:none}@media (min-width: 768px){.navbar .nav-links{display:flex;align-items:center;gap:2.5rem}}.navbar .nav-link{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;position:relative;padding-bottom:.25rem;transition:color .25s}.navbar .nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--text);transition:width .25s}.navbar .nav-link:hover{color:var(--text)}.navbar .nav-link:hover:after{width:100%}.navbar .menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid var(--line-strong);border-radius:0;color:var(--text);cursor:pointer;transition:all .25s ease}.navbar .menu-toggle:hover{background:var(--text);color:var(--bg)}@media (min-width: 768px){.navbar .menu-toggle{display:none}}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--bg);display:flex;align-items:center;opacity:0;pointer-events:none;transition:opacity .25s ease}.mobile-menu.open{opacity:1;pointer-events:auto}@media (min-width: 768px){.mobile-menu{display:none}}.mobile-menu .mobile-menu-links{width:100%;padding:0 2rem;display:flex;flex-direction:column}.mobile-menu .mobile-link{display:flex;align-items:baseline;gap:1rem;padding:1.375rem 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;font-size:1.625rem;font-weight:600;font-stretch:115%;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1}.mobile-menu .mobile-link:first-child{border-top:1px solid var(--line)}.mobile-menu .mobile-link-index{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.mobile-menu .mobile-cta{margin-top:2.5rem;text-align:center;padding:1.125rem 2.5rem}.hero-section{height:100vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero-section:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:30%;z-index:1;pointer-events:none;background:linear-gradient(to bottom,transparent,var(--bg))}.hero-section .hero-content{text-align:center;position:relative;z-index:2}.hero-section .hero-eyebrow{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;display:block;color:var(--muted);margin-bottom:1.5rem;letter-spacing:.26em}.hero-section .hero-title{font-size:clamp(1.7rem,7vw,2rem);font-weight:200;font-stretch:120%;text-transform:uppercase;margin-bottom:1.75rem;line-height:1.1;letter-spacing:.02em}@media (min-width: 768px){.hero-section .hero-title{font-size:3rem}}@media (min-width: 1024px){.hero-section .hero-title{font-size:4rem}}.hero-section .hero-title .gradient-text{display:inline-block;white-space:nowrap}.hero-section .hero-description{font-size:1.0625rem;font-weight:300;color:var(--muted);max-width:36rem;margin:0 auto 2.75rem;line-height:1.7}@media (min-width: 768px){.hero-section .hero-description{font-size:1.1875rem}}.hero-section .hero-button{padding:1.125rem 2.5rem}.hero-section .scroll-hint{position:absolute;left:50%;bottom:2.4vh;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:.7rem;color:var(--muted);font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.6rem;letter-spacing:.3em;animation:scrollHintFade 4.5s ease-in-out infinite}.hero-section .scroll-hint .scroll-hint-line{width:1px;height:34px;background:linear-gradient(var(--muted),transparent)}@keyframes scrollHintFade{0%,to{opacity:.35}50%{opacity:.85}}@media (prefers-reduced-motion: reduce){.hero-section .scroll-hint{animation:none}}.hero-section .hero-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.aurora-ribbon-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.services-section{padding:5rem 0;border-top:1px solid var(--line)}@media (min-width: 768px){.services-section{padding:7rem 0}}.services-section .services-list{display:flex;flex-direction:column;gap:2.5rem}@media (min-width: 768px){.services-section .services-list{gap:3rem}}.services-section .service-card{opacity:0}.services-section .service-card.slide-in.left{transform:translate(-50px)}.services-section .service-card.slide-in.right{transform:translate(50px)}.services-section .service-card.slide-in.slide-in-visible{animation:slideInLeft .5s ease-out forwards}.services-section .service-card.slide-in.slide-in-visible.right{animation:slideInRight .5s ease-out forwards}.services-section .service-content{display:flex;flex-direction:column}@media (min-width: 768px){.services-section .service-content{flex-direction:row;align-items:center;gap:3rem}}.services-section .service-icon-container{margin-bottom:2rem;display:flex;justify-content:center}@media (min-width: 768px){.services-section .service-icon-container{margin-bottom:0;width:25%}}.services-section .service-text{flex:1}.services-section .service-title{font-size:1.625rem;font-weight:600;font-stretch:110%;margin-bottom:.75rem;color:var(--text);letter-spacing:-.01em}.services-section .service-subtitle{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}.services-section .service-description{color:var(--muted);line-height:1.7}.services-section .service-links{display:flex;flex-wrap:wrap;gap:.5rem 2rem}.services-section .service-links .text-button{margin-top:1.25rem}.services-view-all{margin-top:3rem}@media (min-width: 768px){.services-view-all{margin-top:3.5rem}}.technologies-section{padding:5rem 0;border-top:1px solid var(--line)}@media (min-width: 768px){.technologies-section{padding:7rem 0}}.work-section{padding:5rem 0;border-top:1px solid var(--line)}@media (min-width: 768px){.work-section{padding:7rem 0}}.work-section .work-note{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);max-width:38rem;margin:-1.5rem 0 3rem;line-height:1.9}.work-section .work-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 992px){.work-section .work-grid{grid-template-columns:repeat(3,1fr)}}.work-section .work-card{display:flex;flex-direction:column;text-decoration:none;color:inherit}.work-section .work-readmore{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--text);margin-top:1.5rem;display:inline-flex;align-items:center}.work-section .work-readmore .arrow{margin-left:.4rem;transition:transform .25s}.work-section .work-card:hover .work-readmore .arrow{transform:translate(4px)}.work-section .work-sector{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}.work-section .work-title{font-size:1.375rem;font-weight:600;font-stretch:110%;margin-bottom:.75rem;color:var(--text);letter-spacing:-.01em}.work-section .work-description{color:var(--muted);font-size:.9375rem;line-height:1.7;flex:1}.work-section .work-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.work-section .work-tag{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.625rem;border:1px solid var(--line);padding:.3rem .6rem;color:var(--muted)}.about-section{padding:5rem 0;border-top:1px solid var(--line)}@media (min-width: 768px){.about-section{padding:7rem 0}}.about-section .about-content{display:grid;grid-template-columns:1fr;gap:3rem}@media (min-width: 992px){.about-section .about-content{grid-template-columns:1fr 1fr;gap:4rem}}.about-section .about-description{font-size:1.125rem;color:var(--muted);line-height:1.7;margin-bottom:3rem}.about-section .feature-icon-container{width:56px;height:56px;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text)}.about-section .feature-icon-container svg{width:24px;height:24px}.about-section .feature-title{font-size:1.125rem;font-weight:600;font-stretch:110%;margin-bottom:.5rem;color:var(--text)}.about-section .feature-description{color:var(--muted);font-size:.9375rem;line-height:1.7}.about-section .cta-card{height:100%;display:flex;flex-direction:column;justify-content:center}.about-section .cta-card .card-inner{padding:1rem;text-align:center}.about-section .cta-card .cta-title{font-size:1.75rem;font-weight:600;font-stretch:115%;text-transform:uppercase;margin-bottom:1rem;color:var(--text)}.about-section .cta-card .cta-description{color:var(--muted);margin-bottom:2rem;font-size:1.0625rem;line-height:1.7}.email-card{padding:1.5rem;margin-top:0}.email-card .contact-label{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--text);margin-bottom:1rem;margin-top:0;display:flex;align-items:center;justify-content:center;gap:.5rem}.email-card .contact-label .mail-icon{flex-shrink:0;width:16px;height:16px}.email-card .email-copy-container{font-family:Fragment Mono,SF Mono,monospace;font-size:1rem;margin-top:0;display:flex;align-items:center;gap:.5rem;color:var(--muted);cursor:pointer;transition:color .25s ease;justify-content:center}.email-card .email-copy-container:hover{color:var(--text)}.email-card .email-copy-container:hover svg{transform:translateY(-2px)}.email-card .email-copy-container svg{transition:transform .25s ease}.faq-section{padding:5rem 0;border-top:1px solid var(--line)}@media (min-width: 768px){.faq-section{padding:7rem 0}}.faq-section .faq-list{max-width:44rem}.faq-section .faq-item{border-top:1px solid var(--line);padding:1.75rem 0}.faq-section .faq-item:last-child{border-bottom:1px solid var(--line)}.faq-section .faq-question{font-size:1.0625rem;font-weight:600;font-stretch:110%;color:var(--text);margin-bottom:.6rem;letter-spacing:-.005em}.faq-section .faq-answer{color:var(--muted);line-height:1.7}.contact-section{padding:5rem 0}@media (min-width: 768px){.contact-section{padding:7rem 0}}.contact-section .contact-content{text-align:center;max-width:40rem;margin:0 auto}.contact-section .contact-description{color:var(--muted);font-size:1.125rem;margin-bottom:2.5rem;line-height:1.7}.contact-section .email-card{max-width:400px;margin:0 auto}.contact-section .section-kicker:before{display:none}.gradient-footer{padding:2.5rem 0;margin-top:3rem;border-top:1px solid var(--line)}@media (min-width: 768px){.gradient-footer{padding:3rem 0;margin-top:4rem}}.gradient-footer .footer-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}@media (min-width: 768px){.gradient-footer .footer-content{flex-direction:row;justify-content:center;gap:2.5rem}}.gradient-footer .footer-logo{color:var(--text);display:flex;align-items:center}.gradient-footer .footer-contact{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:flex;flex-direction:row;justify-content:center;text-align:center}.gradient-footer .footer-contact a{color:var(--text);display:flex;align-items:center;transition:opacity .25s}.gradient-footer .footer-contact a:hover{opacity:.6}.gradient-footer .footer-copyright{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.logo-icon{display:flex;align-items:center}.logo-icon svg{display:block}.logo-icon img{display:block;max-width:48px;filter:brightness(0) invert(1)}@media (max-width: 768px){.gradient-card{padding:1.5rem}.gradient-feature{flex-direction:column;align-items:flex-start}.gradient-feature .feature-icon-container{margin-bottom:1rem}.section-title{font-size:2.25rem}}::-webkit-scrollbar{width:8px;background-color:var(--bg)}::-webkit-scrollbar-thumb{background:#333}::-webkit-scrollbar-thumb:hover{background:#555}::-webkit-scrollbar-track{background-color:var(--bg)}.custom-message .ant-message-notice-content{font-family:Fragment Mono,SF Mono,monospace!important;font-size:.8125rem!important;background:var(--surface)!important;border:1px solid var(--line-strong)!important;border-radius:0!important;box-shadow:none!important;color:var(--text)!important;padding:12px 20px!important}.custom-message .ant-message-notice-content .anticon{color:var(--text)!important}.ant-message{top:auto!important;bottom:30px!important}.case-study-page{position:relative;min-height:100vh;display:flex;flex-direction:column}.case-study-page .hero-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.case-study-page .cs-nav{border-bottom:1px solid var(--line);padding:1.25rem 0}.case-study-page .cs-nav .container{display:flex;align-items:center;justify-content:space-between}.case-study-page .cs-nav .logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text)}.case-study-page .cs-nav .logo .logo-text{font-size:1.125rem;font-weight:600;font-stretch:115%;text-transform:uppercase;letter-spacing:.14em;color:var(--text)}.case-study-page .cs-nav .cs-back{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .25s}.case-study-page .cs-nav .cs-back:hover{color:var(--text)}.case-study-page .cs-main{flex:1;width:100%;min-width:0;max-width:760px;padding-top:4rem;padding-bottom:5rem}.case-study-page .cs-title{font-size:2.25rem;font-weight:600;font-stretch:112%;line-height:1.08;letter-spacing:-.015em;color:var(--text);margin:1rem 0 1.25rem}@media (min-width: 768px){.case-study-page .cs-title{font-size:3rem}}.case-study-page .cs-summary{font-size:1.15rem;font-weight:300;line-height:1.6;color:var(--muted);margin-bottom:1.75rem}.case-study-page .work-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 3.5rem}.case-study-page .work-tag{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.625rem;border:1px solid var(--line);padding:.3rem .6rem;color:var(--muted)}.case-study-page .cs-block{border-top:1px solid var(--line);padding-top:2.5rem;margin-bottom:2.5rem}.case-study-page .cs-h2{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}.case-study-page .cs-body{font-size:1.0625rem;line-height:1.75;color:rgb(var(--text-rgb)/.86)}.case-study-page .cs-list{list-style:none;display:flex;flex-direction:column;gap:1rem}.case-study-page .cs-list li{position:relative;padding-left:1.5rem;font-size:1.0625rem;line-height:1.7;color:rgb(var(--text-rgb)/.86)}.case-study-page .cs-list li:before{content:"";position:absolute;left:0;top:.7em;width:.6rem;height:1px;background:var(--line-strong)}.case-study-page .cs-list li a{color:var(--text);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-strong)}.case-study-page .cs-list li a:hover{text-decoration-color:var(--text)}.case-study-page .cs-cta{margin-top:3.5rem;text-align:center}.case-study-page .cs-cta .cs-cta-title{font-size:1.5rem;font-weight:600;font-stretch:110%;color:var(--text);margin-bottom:.75rem}.case-study-page .cs-cta .cs-cta-text{color:var(--muted);max-width:42ch;margin:0 auto 1.75rem;line-height:1.7}.case-study-page .cs-disclaimer{font-family:Fragment Mono,SF Mono,monospace;font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:2rem}.case-study-page .cs-footer{border-top:1px solid var(--line);padding:2rem 0;margin-top:auto}.case-study-page .cs-footer .container{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:center}.case-study-page .cs-footer span,.case-study-page .cs-footer a{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-decoration:none}.case-study-page .cs-footer a:hover{color:var(--text)}.cs-breadcrumb{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.625rem;margin-bottom:1.25rem}.cs-breadcrumb a{color:var(--muted);text-decoration:none}.cs-breadcrumb a:hover{color:var(--text)}.cs-breadcrumb span{color:var(--line-strong);margin:0 .4rem}.post-meta{font-family:Fragment Mono,SF Mono,monospace;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.6875rem;color:var(--muted);margin-bottom:2.5rem}.blog-index .post-list{list-style:none;border-top:1px solid var(--line);margin-top:1rem}.blog-index .post-row{border-bottom:1px solid var(--line)}.blog-index .post-link{display:block;padding:2rem 0;text-decoration:none;color:inherit;transition:padding-left .25s ease}.blog-index .post-link:hover{padding-left:.5rem}.blog-index .post-link:hover .work-readmore .arrow{transform:translate(4px)}.blog-index .post-row-head{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.75rem;font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.625rem;color:var(--muted)}.blog-index .post-row-title{font-size:1.5rem;font-weight:600;font-stretch:110%;letter-spacing:-.01em;line-height:1.15;color:var(--text);margin-bottom:.6rem}@media (min-width: 768px){.blog-index .post-row-title{font-size:1.75rem}}.blog-index .post-row-desc{color:var(--muted);line-height:1.65;max-width:62ch;margin-bottom:1.1rem}.prose{color:rgb(var(--text-rgb)/.9);font-size:1.0625rem;line-height:1.75}.prose h2,.prose h3{color:var(--text);font-weight:600;font-stretch:110%;letter-spacing:-.01em;line-height:1.2}.prose h2 a,.prose h3 a{color:inherit;text-decoration:none}.prose h2{font-size:1.6rem;margin:2.75rem 0 1rem;padding-top:2.25rem;border-top:1px solid var(--line)}.prose h3{font-size:1.25rem;margin:2rem 0 .75rem}.prose p{margin:0 0 1.25rem}.prose ul,.prose ol{margin:0 0 1.5rem;padding-left:1.4rem}.prose ul li,.prose ol li{margin-bottom:.6rem;padding-left:.3rem}.prose strong{color:var(--text);font-weight:600}.prose a{color:var(--text);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-strong)}.prose a:hover{text-decoration-color:var(--text)}.prose blockquote{margin:1.75rem 0;padding:.25rem 0 .25rem 1.5rem;border-left:2px solid var(--line-strong);color:var(--text);font-size:1.15rem;line-height:1.6}.prose pre{font-family:Fragment Mono,SF Mono,monospace;font-size:.8rem;line-height:1.5;color:rgb(var(--text-rgb)/.82);background:#ffffff08;border:1px solid var(--line);border-radius:0;padding:1.4rem 1.5rem;margin:1.75rem 0;overflow-x:auto;white-space:pre}.prose p em{color:var(--muted);font-size:.9375rem}.prose .table-wrap{overflow-x:auto;margin:1.75rem 0;-webkit-overflow-scrolling:touch}.prose table{width:100%;min-width:480px;border-collapse:collapse;margin:0;font-size:.9375rem}.prose table th,.prose table td{border:1px solid var(--line);padding:.65rem .9rem;text-align:left;vertical-align:top}.prose table th{font-family:Fragment Mono,SF Mono,monospace;font-size:.6875rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:.625rem;color:var(--text);background:#ffffff08}.prose table td{color:var(--muted);line-height:1.55}.prose hr{border:0;border-top:1px solid var(--line);margin:2.5rem 0}.related{margin-top:4rem;border-top:1px solid var(--line);padding-top:2rem}.related .related-list{list-style:none}.related .related-list li{padding:1.1rem 0;border-bottom:1px solid var(--line)}.related .related-list li a{display:block;color:var(--text);text-decoration:none;font-size:1.125rem;font-weight:600;font-stretch:110%}.related .related-list li a:hover{text-decoration:underline;text-underline-offset:3px}.related .related-desc{display:block;color:var(--muted);font-size:.9375rem;line-height:1.55;margin-top:.35rem}.prose .diagram{display:block;margin:2.25rem auto;max-width:660px;text-align:center}.prose .diagram img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px}.prose .diagram-cap{display:block;margin-top:.85rem;font-family:Fragment Mono,SF Mono,monospace;font-size:.78rem;line-height:1.5;color:var(--muted);text-align:center}.prose p:has(>.diagram){margin:0}.theme-toggle{position:fixed;right:1.25rem;bottom:1.25rem;z-index:200;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;color:var(--text);background-color:rgb(var(--bg-rgb)/.7);border:1px solid var(--line-strong);border-radius:50%;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease}.theme-toggle:hover{border-color:var(--text);transform:translateY(-2px)}.theme-toggle:focus-visible{outline:1px solid var(--text);outline-offset:2px}.theme-toggle .theme-toggle-icon{display:inline-flex;align-items:center;justify-content:center}@media (min-width: 768px){.theme-toggle{right:1.75rem;bottom:1.75rem}}
